From 507ca5522786ba5892ea06bfccfb4399cd92e906 Mon Sep 17 00:00:00 2001 From: Mitchell Hashimoto Date: Tue, 28 Jan 2025 16:58:54 -0800 Subject: [PATCH] v1.0.1 - WIP --- docs/install/release-notes/1-1-0.mdx | 502 ++++++++++++++++++ docs/nav.json | 5 + .../linear-corrected_blending.png | Bin 0 -> 17515 bytes .../1-1-0-release-notes/linear_blending.png | Bin 0 -> 17232 bytes public/1-1-0-release-notes/p3_blending.png | Bin 0 -> 17919 bytes public/1-1-0-release-notes/srgb_blending.png | Bin 0 -> 17727 bytes 6 files changed, 507 insertions(+) create mode 100644 docs/install/release-notes/1-1-0.mdx create mode 100644 public/1-1-0-release-notes/linear-corrected_blending.png create mode 100644 public/1-1-0-release-notes/linear_blending.png create mode 100644 public/1-1-0-release-notes/p3_blending.png create mode 100644 public/1-1-0-release-notes/srgb_blending.png diff --git a/docs/install/release-notes/1-1-0.mdx b/docs/install/release-notes/1-1-0.mdx new file mode 100644 index 00000000..8b7193b8 --- /dev/null +++ b/docs/install/release-notes/1-1-0.mdx @@ -0,0 +1,502 @@ +--- +title: Ghostty 1.1.0 +description: |- + Release notes for Ghostty 1.1.0, released on January 31, 2025. +--- + +Ghostty 1.1.0 features **1 month of work** with changes from +**84 contributors** over **564 commits.** The focus of this release +remains on critical bug fixes and quality of life improvements based +on feedback from the initial 1.0 release. + +## Security + +- [GHSA-98wc-794w-gjx3](https://github.com/ghostty-org/ghostty/security/advisories/GHSA-98wc-794w-gjx3). + Fixed an issue where Ghostty would leak some file descriptors to the + running shell or command. + +## Highlights + +### Server Side Decorations (SSD) on Linux + +PR: +[#4630](https://github.com/ghostty-org/ghostty/pull/4630), +[#4723](https://github.com/ghostty-org/ghostty/pull/4723), +[#5124](https://github.com/ghostty-org/ghostty/pull/5124) + +On Linux in particular, window decorations have a wide variety of +styles and behaviors. Ghostty's previous behavior was to always use +client-side decorations (CSD), which made Ghostty look and feel too +much like a "Gnome" application. In particular, Ghostty looked out of +place on popular desktop environments like KDE Plasma. + +Ghostty 1.1 on Linux now supports server-side decorations (SSD) for +compositors that support it. This allows Ghostty to look and feel more +like a native application on a wider variety of desktop environments. + +The `window-decoration` configuration option now has a new value `auto` +which will use SSD if the compositor supports it and prefers it. A value +of `server` will force SSD (if available). A value of `client` will force +client-side decorations. And a value of `none` will disable decorations +entirely. + +SSD is only supported on Wayland. Ghostty uses the +[KDE Server Decoration](https://wayland.app/protocols/kde-server-decoration) +protocol. Despite the name, this protocol is supported on almost every +major Wayland compositor, not just KDE. For X11, we could not find a +well-supported protocol for SSD, so we continue to use CSD. + +### Input Method Editor (IME) Improvements + +PR: +[#3567](https://github.com/ghostty-org/ghostty/pull/3567), +[#4332](https://github.com/ghostty-org/ghostty/pull/4332), +[#4539](https://github.com/ghostty-org/ghostty/issues/4539), +[#4854](https://github.com/ghostty-org/ghostty/pull/4854), +[#4933](https://github.com/ghostty-org/ghostty/pull/4933), +[#4999](https://github.com/ghostty-org/ghostty/pull/4999) + +For both macOS and Linux, we've tested IME with the following +paradigms: CJK (Chinese, Japanese, Korean), dead keys (such as +accented characters), emoji, Unicode hex input, and more and +have massively improved the reliability and consistency of IME +input. + +On Linux, we've tested both `fcitx` and `ibus` under both X11 and +Wayland. We also tested multiple versions of each (in particular +versions that are common in LTS distributions). We found a bug in +ibus 1.5.29 that caused deadkey input to become "stuck" and worked +around it. + +On macOS, we've ensured in particular that the AquaSKK and macSKK +Japanese language input methods work out of the box, although we've +also tested other IMEs and found them to work well as well. + +### "Performable" Keybindings + +PR: +[#4328](https://github.com/ghostty-org/ghostty/pull/4328) + +Keybinds support a new `performable:` prefix. This prefix indicates that +the keybind should only consume the input if the action is performed. + +For example, the keybind below will only consume `ctrl+c` if there is +text able to be copied. Otherwise, `ctrl+c` will be passed to the shell +(typically causing an interrupt signal). + +``` +keybind = performable:ctrl+c=copy_to_clipboard +``` + + +Not all actions support `performable:`. Namely, many actions are always +performed (e.g. `text`, `new_tab`, etc.). The performable prefix only +applies to actions that have a meaningful "perform" state. + + +### macOS: Alpha Blending Improvements + +PR: +[#4913](https://github.com/ghostty-org/ghostty/pull/4913), +[#5401](https://github.com/ghostty-org/ghostty/pull/5401) + +Alpha blending is the process of determining the result when a semi-transparent +foreground color is placed in front of a background color. This affects the +edges of text, and any images (displayed with Kitty Graphic Protocol) which +have transparency in them. + +Before, this was performed by blending colors in the sRGB color space, which +causes darkening around the edges of text when the foreground and background +colors are different highly saturated colors. With Ghostty 1.1 on macOS, alpha +blending is now performed in the P3 color space by default, which reduces the +darkening issue thanks to the wider gamut and matches the appearance of native +macOS applications like Terminal.app and TextEdit. + +Additionally, a configuration, `alpha-blending`, has been added to control this. +The default is `native`, which has been described, but two more options are +available: + +- `linear` performs blending in a linear color space, which is technically +correct but has downsides like dark text seeming too thin and light text +seeming too thick. +- `linear-corrected` is like `linear` but applies a correction step to text +which makes it appear extremely close to `native`, but without _any_ darkening +problems. + +Below you can compare (from left to right) the old blending, the new `native` +blending, `linear` blending, and `linear-corrected` blending. You may have to +zoom in to see the differences correctly. + +

+ + + + +

+ +This is currently only available on macOS, but work is underway which should +bring it to Linux as well in the future. + +### macOS: Quick Terminal Improvements + +PR: +[#4049](https://github.com/ghostty-org/ghostty/pull/4049), +[#4501](https://github.com/ghostty-org/ghostty/pull/4501), +[#4999](https://github.com/ghostty-org/ghostty/pull/4999), +[#5361](https://github.com/ghostty-org/ghostty/pull/5361) + +The quick terminal now works with native fullscreen windows, +space changes while the quick terminal is open, IME widgets, left/right +docks, and more. + +A new configuration `quick-terminal-space-behavior` has been added to +control how the quick terminal reacts to changing macOS spaces while it +is open. The default behavior is to follow the active space (`move`). +You can also set it to `remain` to stay on the space it was opened on. + +## Full List + +[Full list of closed issues on GitHub](https://github.com/ghostty-org/ghostty/milestone/3?closed=1). + +In each section, we try to sort improvements before bug fixes. + +- Add the new `performable:` prefix to keybindings to only consume + the input if the action is performed. See + ["Performable" Keybindings](#%22performable%22-keybindings). + [#4328](https://github.com/ghostty-org/ghostty/pull/4328) +- `shell-integration-features` now sets the proper environment variables + even when `shell-integration` is disabled. This is useful for environments + that manually source shell integration. + [#5046](https://github.com/ghostty-org/ghostty/pull/5046) +- A new keybinding action `copy_url_to_clipboard` is available to copy + the URL (if any) under the cursor to the clipboard. + [#4633](https://github.com/ghostty-org/ghostty/pull/4633) +- A new keybinding action `close_tab` can be used to close the tab and + all splits within the tab. This works on both macOS and GTK builds. + [#4331](https://github.com/ghostty-org/ghostty/pull/4331) +- IPv6 URLs are now automatically turned into hyperlinks. + [#4743](https://github.com/ghostty-org/ghostty/issues/4743) +- Filepaths without an explicit `file://` protocol can now be clicked + like any other hyperlink. + [#4713](https://github.com/ghostty-org/ghostty/issues/4713) +- New configuration `split-divider-color` to explicitly set the divider + color for splits. If this is not set, the previous default behavior of + automatically determining the color based on your terminal background + color is used. + [#4236](https://github.com/ghostty-org/ghostty/issues/4326) +- The `palette` configuration option now allows binary, octal, and hexadecimal + keys. + [#4298](https://github.com/ghostty-org/ghostty/issues/4298) +- `goto_split` keybind parameter `top` and `bottom` have been renamed to + `up` and `down`, respectively. The old names are still supported for + backwards compatibility. + [#3427](https://github.com/ghostty-org/ghostty/pull/3427) +- bash: use `\w` instead of `$PWD` for abbreviated titles. + [#4656](https://github.com/ghostty-org/ghostty/pull/4656) +- bash: drop dependency on `sed`, which significantly reduces + per-prompt overhead + [#5141](https://github.com/ghostty-org/ghostty/pull/5141), + [#5142](https://github.com/ghostty-org/ghostty/pull/5142) +- fish: fix sudo integration + [#5276](https://github.com/ghostty-org/ghostty/pull/5276) +- Fix scenario where CPU would spin at 100% if `wait-after-command` was enabled. + [#4884](https://github.com/ghostty-org/ghostty/pull/4884) +- Fix a possible memory corruption race condition when the renderer grid + size and terminal grid size mismatched. + [#5265](https://github.com/ghostty-org/ghostty/pull/5265) +- Triple-click-and-drag now works when the triple click starts from a + blank line. + [#5068](https://github.com/ghostty-org/ghostty/pull/5068) +- vt: Fix incorrect alpha blending for Kitty image protocol. + [#5189](https://github.com/ghostty-org/ghostty/pull/5189) +- vt: More robust and correct handling of mixed semicolon and colon + usage in SGR sequences. Practically, fixes some styling within the + Kakoune editor. + [#5022](https://github.com/ghostty-org/ghostty/pull/5022) +- The `cursor-invert-fg-bg` option now works well with the invert VT sequence. + [#4777](https://github.com/ghostty-org/ghostty/issues/4777) +- Remove `VTE_VERSION` from environment prior to executing shell. This + fixes issues where VTE's shell integration would mistakingly think Ghostty + was libvte-based. + [#4710](https://github.com/ghostty-org/ghostty/issues/4710) +- Fix an issue that didn't allow an initial window size smaller than + `640x480` + [#4688](https://github.com/ghostty-org/ghostty/issues/4688) +- vt: ConEmu OSC `9;4` parsing better matches ConEmu logic, fixing an + issue with some versions of systemd. + [#4727](https://github.com/ghostty-org/ghostty/issues/4727) +- The `unbind` keybind action now also unbinds any matching physical + mapping. + [#4703](https://github.com/ghostty-org/ghostty/issues/4703) +- Non-existent `config-file` now properly shows an error when `theme` + is also set. + [#4509](https://github.com/ghostty-org/ghostty/issues/4509) +- vt: ConEmu OSC `9;1`, `9;2`, `9;3`, `9;5` are now parsed and ignored so they + don't conflict with OSC 9 desktop notifications. + [#4644](https://github.com/ghostty-org/ghostty/issues/4644), + [#4327](https://github.com/ghostty-org/ghostty/issues/4327), + [#4948](https://github.com/ghostty-org/ghostty/issues/4948), + [#4447](https://github.com/ghostty-org/ghostty/issues/4447) +- Inspector: Memory values now specify units rather than raw bytes + [#4549](https://github.com/ghostty-org/ghostty/issues/4549) +- Fix control sequence (e.g. `ctrl+c`) encoding in legacy mode for + various keyboard layouts such as Russian. + [#4518](https://github.com/ghostty-org/ghostty/issues/4518) +- vt: Kitty graphics protocol temporary files must be named according to + the specification. + [#4451](https://github.com/ghostty-org/ghostty/issues/4451) +- The default file limit (`RLIMIT_NOFILE`) is restored for the executed + shell or command. + [#4241](https://github.com/ghostty-org/ghostty/issues/4241) +- Multiple `font-feature` values can be comma-separated. Previously, + you had to repeat `font-feature` multiple times. This is still supported. + [#3128](https://github.com/ghostty-org/ghostty/issues/3128) +- vt: CSI intermediate bytes are now validated for all supported CSI + sequences. + [#3122](https://github.com/ghostty-org/ghostty/issues/3122) +- Selected text no longer remains after a `clear_screen` keybinding. + [#3414](https://github.com/ghostty-org/ghostty/issues/3414) +- Tilde (`~`) in filepaths now expands to the user's home directory + in path-typed configuration values. + [#3328](https://github.com/ghostty-org/ghostty/issues/3328) +- Cache data now respects `XDG_CACHE_HOME`. + [#3458](https://github.com/ghostty-org/ghostty/pull/3458) +- Default configuration file will now be created even if the parent + directories do not exist. + [#4295](https://github.com/ghostty-org/ghostty/pull/4295) +- Inspector: Font size now shows fractional values. + [#4371](https://github.com/ghostty-org/ghostty/pull/4371) + +### macOS + +- macOS: Consistent and correct alpha blending for correct colors. + Options for matching Apple-style alpha blending as well as an + experimental "linear" blending mode that we think produces better + results for certain foreground/background color combinations. + See [macOS Alpha Blending Improvements](#macos-alpha-blending-improvements). + [#4913](https://github.com/ghostty-org/ghostty/pull/4913) +- macOS: New config option `quick-terminal-space-behavior` to configure + how the quick terminal reacts to changing macOS spaces while it is open. + The default behavior is to follow the active space (remain open). + [#4049](https://github.com/ghostty-org/ghostty/pull/4049) +- macOS: Selection clipboard is now supported. The `copy-on-select` option + now defaults to true for macOS. A new "Paste Selection" menu item is + available on macOS. This behavior matches Terminal.app. + [#4733](https://github.com/ghostty-org/ghostty/pull/4733) +- macOS: A very short delay has been introduced for the default window + title to prevent a FOUC ("flash of unknown content") for new surfaces. + [#4799](https://github.com/ghostty-org/ghostty/pull/4799) +- macOS: `font-thicken` now accepts an optional numeric value to adjust + the thickening factor. + [#4531](https://github.com/ghostty-org/ghostty/issues/4531) +- macOS: Explicit Ghostty keybindings now take priority over + system keybindings (e.g. `cmd+h` can now be bound). + [#4591](https://github.com/ghostty-org/ghostty/issues/4591) +- macOS: Non-boolean `font-feature` values such as `cv02 = 2` are now + supported. + [#3128](https://github.com/ghostty-org/ghostty/issues/3128) +- macOS: Cache data now uses macOS system APIs to store data in the + OS-configured cache directory (typically `~/Library/Caches`). + [#3458](https://github.com/ghostty-org/ghostty/pull/3458) +- macOS: Autohide the dock if the quick terminal would overlap with it. + [#5361](https://github.com/ghostty-org/ghostty/pull/5361) +- macOS: Fix zombie processes leaking when the shell or command exits + before the containing UI is closed. + [#4554](https://github.com/ghostty-org/ghostty/pull/4554) +- macOS: Hyperlinks in the top-left no loner appear hovered when + command is held anywhere outside the window. + [#5252](https://github.com/ghostty-org/ghostty/pull/5252) +- macOS: When `macos-titlebar-style = hidden`, the titlebar area + can no longer be used to drag the window. You must now use option+drag + (standard macOS bindings) in the resize area. + [#2523](https://github.com/ghostty-org/ghostty/pull/2523) +- macOS: Closing a tab with Stage Manager enabled no longer causes + Ghostty to lose focus. + [#5108](https://github.com/ghostty-org/ghostty/pull/5108) +- macOS: Fix "background flash" for new and resized terminals. + [#5083](https://github.com/ghostty-org/ghostty/pull/5083) +- macOS: Filepaths are shell escaped when files, URLs, are pasted. + [#5036](https://github.com/ghostty-org/ghostty/pull/5036) +- macOS: Quick terminal no longer covers IME widget. + [#4999](https://github.com/ghostty-org/ghostty/pull/4999) +- macOS: Text can now be dragged onto the terminal. + [#4932](https://github.com/ghostty-org/ghostty/pull/4932) +- macOS: IME window position is now correct when `window-padding` is set. + [#4933](https://github.com/ghostty-org/ghostty/pull/4933) +- macOS: Pasting multiple files now separates their path by a space + instead of a newline. + [#4956](https://github.com/ghostty-org/ghostty/pull/4956) +- macOS: `toggle_visibility` no longer separates tabs from their parent + window. + [#4329](https://github.com/ghostty-org/ghostty/pull/4329) +- macOS: Control-characters such as `ctrl+h` now work as expected for + input method editors (IME). + [#4854](https://github.com/ghostty-org/ghostty/pull/4854) +- macOS: Fix crash when `window-step-resize` was used in conjunction with + an overly large initial window size. + [#4801](https://github.com/ghostty-org/ghostty/pull/4801) +- macOS: Quick terminal now properly overlays native fullscreen windows. + [#4049](https://github.com/ghostty-org/ghostty/pull/4049) +- macOS: Add strings for more macOS system permission requests that can + be triggered by child processes (e.g. Bluetooh access). + [#4668](https://github.com/ghostty-org/ghostty/issues/4668) +- macOS: `new_tab` keybinding without any windows creates a new window. + [#4691](https://github.com/ghostty-org/ghostty/issues/4691) +- macOS: Fix a retain cycle that prevented the `NSWindow` from being + released when closed. + [#4689](https://github.com/ghostty-org/ghostty/issues/4689) +- macOS: Preedit text no longer disappears when a modifier key is pressed. + [#4634](https://github.com/ghostty-org/ghostty/issues/4634) +- macOS: AquaSKK/macSKK Japanese language input methods now work. + [#4539](https://github.com/ghostty-org/ghostty/issues/4539) +- macOS: Quick terminal now appears in the correct location with certain + multi-monitor configurations. + [#4501](https://github.com/ghostty-org/ghostty/issues/4501) +- macOS: `command+` release events are now properly encoded for + the Kitty keyboard protocol. + [#4591](https://github.com/ghostty-org/ghostty/issues/4591) +- macOS: `cmd+period` and other keybinds can now be bound. + [#4591](https://github.com/ghostty-org/ghostty/issues/4591) +- macOS: Window borders with dark mode now match macOS styling. + [#4308](https://github.com/ghostty-org/ghostty/issues/4308) +- macOS: Auto-update no longer defaults to on. On first run, Ghostty will + ask for your permission to check for updates. The `auto-update` option + can still be used to configure this. + [#4433](https://github.com/ghostty-org/ghostty/issues/4433) +- macOS: New configurations `window-position-x` and `window-position-y` + can be used to set the initial window position. + [#3929](https://github.com/ghostty-org/ghostty/issues/3929) +- macOS: `macos-titlebar-style = hidden` restores properly after exiting + non-native fullscreen. + [#3535](https://github.com/ghostty-org/ghostty/issues/3535) + +### Linux (GTK) + +- GTK: Support for server-side decorations (SSD) has been added. + This utilizes the existing `window-decoration` configuration option. + The new value is `auto` which will use SSD if the compositor supports + it and preferes it. A value of `server` will force SSD (if available). + A value of `client` will force client-side decorations. And a value + of `none` will disable decorations entirely. + See [Server Side Decorations (SSD) on Linux](#server-side-decorations-(ssd)-on-linux). + [#4630](https://github.com/ghostty-org/ghostty/pull/4630) +- GTK(X11): `background-blur` is now supported for any window manager + that respects the `_KDE_NET_WM_BLUR_BEHIND_REGION` atom. + [#4403](https://github.com/ghostty-org/ghostty/issues/4403) +- GTK(Wayland): `background-blur` is now supported for any compositor + supporting the `org_kde_kwin_blur_manager` protocol (namely, KDE). + [#4403](https://github.com/ghostty-org/ghostty/issues/4403) +- GTK: Add new configuration `app-notifications` to control what toasts + are shown. + [#4460](https://github.com/ghostty-org/ghostty/pull/4460) +- GTK: Multiple `custom-shader` values are now supported (matching macOS) + [#5037](https://github.com/ghostty-org/ghostty/pull/5037) +- GTK: A new configuration option `gtk-titlebar-hide-when-maximized` + (default false) added to hide the titlebar when the window is maximized + (not fullscreen). + [#3381](https://github.com/ghostty-org/ghostty/pull/3381) +- GTK: Ghostty can now be pinned in the dock or task manager for + supported desktop environments. + [#4930](https://github.com/ghostty-org/ghostty/pull/4930) +- GTK: Dropping files and selected text now works and matches + macOS. + [#4211](https://github.com/ghostty-org/ghostty/pull/4211) +- "Open in Ghostty" shortcut for Nautilus is now available + [#4816](https://github.com/ghostty-org/ghostty/pull/4816) + + +- GTK: Fix slow startup times when XDG desktop portal is not available. + [#5064](https://github.com/ghostty-org/ghostty/pull/5064) +- GTK: `fcitx` and `ibus` under both X11 and Wayland work. + [#4332](https://github.com/ghostty-org/ghostty/pull/4332) +- GTK: Workaround bug in `ibus` 1.5.29 that caused deadkey input to + become "stuck." + [#3567](https://github.com/ghostty-org/ghostty/pull/3567) +- GTK(X11): When a new window is initially maximized, the `_NET_WM_STATE` + atom is properly set so the titlebar properly reflects the maximized + state. + [#4646](https://github.com/ghostty-org/ghostty/pull/4646) +- GTK: `last_tab` keybind action works + [#5004](https://github.com/ghostty-org/ghostty/pull/5004) +- GTK: The titlebar is automatically hidden when the window is fullscreen + (and restored when the window exits fullscreen). + [#5008](https://github.com/ghostty-org/ghostty/pull/5008) +- GTK: Mouse no longer appears when the title changes and + `mouse-hide-while-typing` is set. + [#3345](https://github.com/ghostty-org/ghostty/pull/3345) +- GTK: Fix segfault that would happen with older libadwaita versions + when `ctrl+d` was used to exit a window. + [#4971](https://github.com/ghostty-org/ghostty/pull/4971) +- GTK: Ensure close confirmation appears in more scenarios such as + pressing the "X" in the tab bar. + [#4234](https://github.com/ghostty-org/ghostty/pull/4234) +- GTK: OpenGL debug logging is now disabled by default for release + builds but can be configured to be turned back on. + [#4662](https://github.com/ghostty-org/ghostty/pull/4662) +- GTK: Windows with libadwaita enabled can now be sized smaller than + 482x322. + [#4836](https://github.com/ghostty-org/ghostty/pull/4836) +- GTK: Fix a handful of cases where compile-time version checks were + done instead of runtime, disabling behavior when we shouldn't have. + [#4783](https://github.com/ghostty-org/ghostty/issues/4783) +- GTK: `window-title-font-family` now works (previously this was macOS-only) + [#4560](https://github.com/ghostty-org/ghostty/issues/4560) +- GTK: Menu separator colors now match the system theme. + [#4421](https://github.com/ghostty-org/ghostty/issues/4421) +- GTK: Fix issues with fractional scaling. The terminal should now appear + crisp on GTK displays with fractional scaling. + [#4255](https://github.com/ghostty-org/ghostty/issues/4255) +- GTK: A new configuration `gtk-custom-css` allows loading custom CSS + to theme GTK elements. + [#4200](https://github.com/ghostty-org/ghostty/issues/4200) +- GTK: `focus-follows-mouse` works properly with `goto_split` keybindings. + [#3229](https://github.com/ghostty-org/ghostty/issues/3229) +- GTK: Use `gtk-xft-dpi` for font scaling on Wayland (previously + we only used the value for X11). This allows the Gnome "Large Text" + setting to work properly. + [#4424](https://github.com/ghostty-org/ghostty/pull/4424) +- GTK: `ctrl+insert` and `shift+insert` bindings have been added as + secondary defaults for `copy` and `paste`, respectively. + [#2870](https://github.com/ghostty-org/ghostty/pull/2870) +- GTK: Paste preview text is now monospace. + [#4227](https://github.com/ghostty-org/ghostty/pull/4227) + +### Changes for Package Maintainers + + +All of the build changes are minor and should not impact previously +functional builds. Feel free to ignore these changes unless you're +simply curious about them. + + +- Build: `-Dstrip` can be used to control binary stripping. Previously, + we automatically stripped release binaries. This can now be configured. + [#3945](https://github.com/ghostty-org/ghostty/issues/3945) +- Build: `-Dsentry` can be used to explicitly enable or disable Sentry. + Linux builds by default have Sentry disabled. macOS builds by default + have Sentry enabled. Sentry only collects crash logs locally, it does + not transmit them via the network. + [#3934](https://github.com/ghostty-org/ghostty/issues/3934) +- Build: Terminfo/Termcap sources are no longer installed by default. + Note the _compiled_ version is still properly installed so the terminfo + is available. Build flags `-Demit-terminfo` and `-Demit-termcap` can be + used to emit the source files. + [#5311](https://github.com/ghostty-org/ghostty/pull/5311) +- Build: Fix incorrect libadwaita pkg-config name. + [#4818](https://github.com/ghostty-org/ghostty/pull/4818) + +## Roadmap + +We plan to release a version 1.1.1 to address some additional bugs that +didn't quite make the 1.1.0 release. We don't expect this release to happen +quickly unless any critical issues or regressions are raised. Therefore, +we recommend all package managers to upgrade to 1.1.0 as quickly as possible. + +The focus for the next release will be to continue to resolve some issues +with certain keyboard layouts along with some fundamental issues with +`window-step-resize` on macOS. Additional unplanned functionality may +be introduced if unexpected contributors appear (thank you!). + +We're reaching general wide-scale stability since our initial 1.0 release. +I expect soon we'll move to even longer release cycles (months long) to +allow the development team to focus on larger, more impactful features. diff --git a/docs/nav.json b/docs/nav.json index 2f3177c1..f7d1932e 100644 --- a/docs/nav.json +++ b/docs/nav.json @@ -40,6 +40,11 @@ "path": "/", "title": "Overview" }, + { + "type": "link", + "path": "/1-1-0", + "title": "1.1.0" + }, { "type": "link", "path": "/1-0-1", diff --git a/public/1-1-0-release-notes/linear-corrected_blending.png b/public/1-1-0-release-notes/linear-corrected_blending.png new file mode 100644 index 0000000000000000000000000000000000000000..f9d1e79d54561b9720ee8679e659832a0ce8d02d GIT binary patch literal 17515 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