Commit Graph

15577 Commits

Author SHA1 Message Date
Mitchell Hashimoto
029bcf2d39 gtk4-layer-shell: version from build.zig.zon, reenable ubsan (#9122)
added version read from build.zig.zon
didn't get any ubsan error locally with zig 0.15.1 (related to
https://github.com/ghostty-org/ghostty/issues/5744#issuecomment-2719313984)
2025-10-10 08:45:32 -07:00
Mitchell Hashimoto
e0ee10e902 macos: re-enable real update check 2025-10-10 08:44:25 -07:00
Mitchell Hashimoto
9dac88248f macos: ax for update info 2025-10-10 08:38:50 -07:00
Mitchell Hashimoto
47f3c94640 macos: many more unit tests for update work 2025-10-10 08:34:45 -07:00
Mitchell Hashimoto
6993947a3a macOS: Make a lot of things more robust 2025-10-10 08:27:30 -07:00
Mitchell Hashimoto
ba8eae027e macos: fixed width for downloading/extracting, better padding 2025-10-10 07:19:25 -07:00
Ēriks Remess
82a5c177fe gtk4-layer-shell: reenable ubsan 2025-10-10 14:40:56 +03:00
Ēriks Remess
ce47a85bf7 gtk4-layer-shell: version from build.zig.zon 2025-10-10 14:40:42 +03:00
Mitchell Hashimoto
dbe42d9353 deps: update z2d to v0.9.0 (#9110)
Release notes at:
 https://github.com/vancluever/z2d/blob/v0.9.0/CHANGELOG.md

This release brings our Zig 0.15.x branch into main, now that Ghostty is
on it too.

Additionally, this adds major speedups to the default path (filling with
a solid color using the default operator).
2025-10-09 17:39:07 -07:00
Mitchell Hashimoto
f124bb4975 macos: Fallback to standard driver when no unobtrusive targets exist 2025-10-09 17:38:24 -07:00
Chris Marchesi
36b3c1fa47 deps: update z2d to v0.9.0
Release notes at:
 https://github.com/vancluever/z2d/blob/v0.9.0/CHANGELOG.md

This release brings our Zig 0.15.x branch into main, now that Ghostty is
on it too.

Additionally, this adds major speedups to the default path (filling with a
solid color using the default operator).
2025-10-09 12:48:52 -07:00
Mitchell Hashimoto
f2c7f4ec0f Get app_version from build.zig.zon .version (#9101)
Reads .version from build.zig.zon and passes it to Config.
2025-10-09 11:11:18 -07:00
Mitchell Hashimoto
d0f800c5fb docs: Update build requirements for macOS (#9095)
Adds the Metal Toolchain as a required Xcode component for building
Ghostty. Also updates the notes about Xcode 26 now that it and Tahoe are
out of Beta.
2025-10-09 11:08:19 -07:00
Mitchell Hashimoto
6e5e726bc2 ci: fix typo (#9097) 2025-10-09 11:08:01 -07:00
Mitchell Hashimoto
f2e5b8fb2d macos: setup the standard sparkle driver for no-window scenario
If there are no windows, we use the standard sparkle driver to drive
the standard window-based update UI.
2025-10-09 08:57:48 -07:00
Mitchell Hashimoto
bbf875216f macos: fix driver for retry to trigger update check again 2025-10-09 08:51:33 -07:00
Ēriks Remess
402c492d94 set minimum required zig version from build.zig.zon in tests and dockerfile 2025-10-09 17:07:58 +03:00
Ēriks Remess
ea5ea5f98e set minimum required zig version from build.zig.zon 2025-10-09 16:47:27 +03:00
Ēriks Remess
f4b051a84c use app_version from build.zig.zon 2025-10-09 16:02:40 +03:00
Mitchell Hashimoto
a2fbaec613 macos: do not build updaters into iOS 2025-10-08 22:18:36 -07:00
Mitchell Hashimoto
49eb65df77 macos: show release notes link 2025-10-08 22:05:03 -07:00
Mitchell Hashimoto
abab6899f9 macos: better update descriptions 2025-10-08 21:45:48 -07:00
Mitchell Hashimoto
bce49a0843 macos: hook up our new update controller 2025-10-08 21:41:18 -07:00
Mitchell Hashimoto
b4ab1cc1ed macos: clean up the permission request 2025-10-08 21:21:27 -07:00
Mitchell Hashimoto
9e17255ca9 macos: "OK" should dismiss error 2025-10-08 21:16:07 -07:00
Mitchell Hashimoto
95a9e63401 macos: not found state dismisses on click, after 5s 2025-10-08 21:13:34 -07:00
Mitchell Hashimoto
a55de09944 macos: update simulator to test various scenarios in UI 2025-10-08 21:09:06 -07:00
Mitchell Hashimoto
59829f5359 Sparkle user driver, drives updates to the view model. 2025-10-08 21:03:04 -07:00
Mitchell Hashimoto
3b2ef4c216 build(deps): bump softprops/action-gh-release from 2.3.4 to 2.4.0 (#9079)
Bumps
[softprops/action-gh-release](https://github.com/softprops/action-gh-release)
from 2.3.4 to 2.4.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/softprops/action-gh-release/releases">softprops/action-gh-release's
releases</a>.</em></p>
<blockquote>
<h2>v2.4.0</h2>
<!-- raw HTML omitted -->
<h2>What's Changed</h2>
<h3>Exciting New Features 🎉</h3>
<ul>
<li>feat(action): respect working_directory for files globs by <a
href="https://github.com/stephenway"><code>@​stephenway</code></a> in <a
href="https://redirect.github.com/softprops/action-gh-release/pull/667">softprops/action-gh-release#667</a></li>
</ul>
<h3>Other Changes 🔄</h3>
<ul>
<li>chore(deps): bump the npm group with 2 updates by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/softprops/action-gh-release/pull/668">softprops/action-gh-release#668</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/softprops/action-gh-release/compare/v2.3.4...v2.4.0">https://github.com/softprops/action-gh-release/compare/v2.3.4...v2.4.0</a></p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md">softprops/action-gh-release's
changelog</a>.</em></p>
<blockquote>
<h2>2.4.0</h2>
<h2>What's Changed</h2>
<h3>Exciting New Features 🎉</h3>
<ul>
<li>feat(action): respect working_directory for files globs by <a
href="https://github.com/stephenway"><code>@​stephenway</code></a> in <a
href="https://redirect.github.com/softprops/action-gh-release/pull/667">softprops/action-gh-release#667</a></li>
</ul>
<h2>2.3.4</h2>
<h2>What's Changed</h2>
<h3>Bug fixes 🐛</h3>
<ul>
<li>fix(action): handle 422 already_exists race condition by <a
href="https://github.com/stephenway"><code>@​stephenway</code></a> in <a
href="https://redirect.github.com/softprops/action-gh-release/pull/665">softprops/action-gh-release#665</a></li>
</ul>
<h3>Other Changes 🔄</h3>
<ul>
<li>dependency updates</li>
</ul>
<h2>2.3.3</h2>
<h2>What's Changed</h2>
<h3>Exciting New Features 🎉</h3>
<ul>
<li>feat: add input option <code>overwrite_files</code> by <a
href="https://github.com/asfernandes"><code>@​asfernandes</code></a> in
<a
href="https://redirect.github.com/softprops/action-gh-release/pull/343">softprops/action-gh-release#343</a></li>
</ul>
<h3>Other Changes 🔄</h3>
<ul>
<li>dependency updates</li>
</ul>
<h2>2.3.2</h2>
<ul>
<li>fix: revert fs <code>readableWebStream</code> change</li>
</ul>
<h2>2.3.1</h2>
<h3>Bug fixes 🐛</h3>
<ul>
<li>fix: fix file closing issue by <a
href="https://github.com/WailGree"><code>@​WailGree</code></a> in <a
href="https://redirect.github.com/softprops/action-gh-release/pull/629">softprops/action-gh-release#629</a></li>
</ul>
<h2>2.3.0</h2>
<ul>
<li>Migrate from jest to vitest</li>
<li>Replace <code>mime</code> with <code>mime-types</code></li>
<li>Bump to use node 24</li>
<li>Dependency updates</li>
</ul>
<h2>2.2.2</h2>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="aec2ec56f9"><code>aec2ec5</code></a>
release 2.4.0</li>
<li><a
href="4db716b167"><code>4db716b</code></a>
feat: respect working_directory for files globs; add input and tests (<a
href="https://redirect.github.com/softprops/action-gh-release/issues/667">#667</a>)</li>
<li><a
href="14820f2cee"><code>14820f2</code></a>
chore(deps): bump the npm group with 2 updates (<a
href="https://redirect.github.com/softprops/action-gh-release/issues/668">#668</a>)</li>
<li>See full diff in <a
href="62c96d0c4e...aec2ec56f9">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=softprops/action-gh-release&package-manager=github_actions&previous-version=2.3.4&new-version=2.4.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>
2025-10-08 20:17:50 -07:00
Mitchell Hashimoto
beaac8db8b build(deps): bump hustcer/milestone-action from 2.9 to 2.11 (#9094)
Bumps
[hustcer/milestone-action](https://github.com/hustcer/milestone-action)
from 2.9 to 2.11.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/hustcer/milestone-action/releases">hustcer/milestone-action's
releases</a>.</em></p>
<blockquote>
<h2>v2.11</h2>
<h2>[2.11] - 2025-10-08</h2>
<h3>Bug Fixes</h3>
<ul>
<li>Fall back to the earliest-created milestone if no due_on set for
milestones (<a
href="https://redirect.github.com/hustcer/milestone-action/issues/145">#145</a>)</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/hustcer/milestone-action/compare/v2.10...v2.11">https://github.com/hustcer/milestone-action/compare/v2.10...v2.11</a></p>
<h2>v2.10</h2>
<h2>[2.10] - 2025-10-07</h2>
<h3>Features</h3>
<ul>
<li>Try to inherit milestone from closing issues (<a
href="https://redirect.github.com/hustcer/milestone-action/issues/129">#129</a>)</li>
</ul>
<h3>Miscellaneous Tasks</h3>
<ul>
<li>Export guess-milestone-for-pr custom command (<a
href="https://redirect.github.com/hustcer/milestone-action/issues/124">#124</a>)</li>
</ul>
<h3>Deps</h3>
<ul>
<li>Upgrade Nu to v0.107 (<a
href="https://redirect.github.com/hustcer/milestone-action/issues/120">#120</a>)</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/hustcer/milestone-action/compare/v2.9...v2.10">https://github.com/hustcer/milestone-action/compare/v2.9...v2.10</a></p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/hustcer/milestone-action/blob/main/CHANGELOG.md">hustcer/milestone-action's
changelog</a>.</em></p>
<blockquote>
<h1>Changelog</h1>
<p>All notable changes to this project will be documented in this
file.</p>
<h2>[2.11] - 2025-10-08</h2>
<h3>Bug Fixes</h3>
<ul>
<li>Fall back to the earliest-created milestone if no due_on set for
milestones (<a
href="https://redirect.github.com/hustcer/milestone-action/issues/145">#145</a>)</li>
</ul>
<h2>[2.10] - 2025-10-07</h2>
<h3>Features</h3>
<ul>
<li>Try to inherit milestone from closing issues (<a
href="https://redirect.github.com/hustcer/milestone-action/issues/129">#129</a>)</li>
</ul>
<h3>Miscellaneous Tasks</h3>
<ul>
<li>Export <code>guess-milestone-for-pr</code> custom command (<a
href="https://redirect.github.com/hustcer/milestone-action/issues/124">#124</a>)</li>
</ul>
<h3>Deps</h3>
<ul>
<li>Upgrade Nu to v0.107 (<a
href="https://redirect.github.com/hustcer/milestone-action/issues/120">#120</a>)</li>
</ul>
<h2>[2.9] - 2025-07-26</h2>
<h3>Bug Fixes</h3>
<ul>
<li>Fix getting Nu binary path for Nushell 0.106</li>
</ul>
<h3>Deps</h3>
<ul>
<li>Upgrade Nu to 0.106 and pin <code>hustcer/setup-nu</code> to v3.20
(<a
href="https://redirect.github.com/hustcer/milestone-action/issues/118">#118</a>)</li>
</ul>
<h2>[2.8] - 2025-06-11</h2>
<h3>Miscellaneous Tasks</h3>
<ul>
<li>Upgrade <code>Nu</code> to 0.105 and pin
<code>hustcer/setup-nu</code> to v3.19 (<a
href="https://redirect.github.com/hustcer/milestone-action/issues/117">#117</a>)</li>
</ul>
<h2>[2.7] - 2025-03-22</h2>
<h3>Features</h3>
<ul>
<li>Add DeepSeek Code review support by
<code>hustcer/deepseek-review</code></li>
</ul>
<h3>Deps</h3>
<ul>
<li>Upgrade <code>Nu</code> to <strong>v0.103</strong> (<a
href="https://redirect.github.com/hustcer/milestone-action/issues/114">#114</a>)</li>
<li>Upgrade <code>Nu</code> to v0.102 (<a
href="https://redirect.github.com/hustcer/milestone-action/issues/113">#113</a>)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="bff2091b54"><code>bff2091</code></a>
ci skip</li>
<li><a
href="2c7baeca62"><code>2c7baec</code></a>
fix: Improve int number checking</li>
<li><a
href="efffe97cbe"><code>efffe97</code></a>
Bump to 2.11</li>
<li><a
href="837250188c"><code>8372501</code></a>
fix: Fall back to the earliest-created milestone if no due_on set for
milesto...</li>
<li><a
href="dc568606da"><code>dc56860</code></a>
chore: Code formatting by prettier</li>
<li><a
href="92e0e50802"><code>92e0e50</code></a>
ci skip</li>
<li><a
href="69cb97509e"><code>69cb975</code></a>
Bump to v2.10 (<a
href="https://redirect.github.com/hustcer/milestone-action/issues/142">#142</a>)</li>
<li><a
href="ddb9b7cb59"><code>ddb9b7c</code></a>
fix: Fix query-pr-closing-issues command execution error</li>
<li><a
href="76d2b550e8"><code>76d2b55</code></a>
feat: Try to inherit milestone from closing issues (<a
href="https://redirect.github.com/hustcer/milestone-action/issues/128">#128</a>)
(<a
href="https://redirect.github.com/hustcer/milestone-action/issues/129">#129</a>)</li>
<li><a
href="78368de40a"><code>78368de</code></a>
chore: Export guess-milestone-for-pr custom command (<a
href="https://redirect.github.com/hustcer/milestone-action/issues/124">#124</a>)</li>
<li>Additional commits viewable in <a
href="b57a7e52e9...bff2091b54">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=hustcer/milestone-action&package-manager=github_actions&previous-version=2.9&new-version=2.11)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>
2025-10-08 20:17:35 -07:00
Zhizhen He
dfb32022d4 ci: fix typo 2025-10-09 10:52:52 +08:00
Mike Akers
e8ebc6f405 docs: Update build requirements for macOS
Adds the Metal Toolchain as a required Xcode component for building
Ghostty. Also updates the notes about Xcode 26 now that it and Tahoe are
out of Beta.
2025-10-08 21:05:04 -04:00
dependabot[bot]
5bebd10b7f build(deps): bump hustcer/milestone-action from 2.9 to 2.11
Bumps [hustcer/milestone-action](https://github.com/hustcer/milestone-action) from 2.9 to 2.11.
- [Release notes](https://github.com/hustcer/milestone-action/releases)
- [Changelog](https://github.com/hustcer/milestone-action/blob/main/CHANGELOG.md)
- [Commits](b57a7e52e9...bff2091b54)

---
updated-dependencies:
- dependency-name: hustcer/milestone-action
  dependency-version: '2.11'
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-09 00:06:42 +00:00
Mitchell Hashimoto
f975ac8019 macOS: only show the update overlay if window doesn't support it 2025-10-08 15:39:56 -07:00
Mitchell Hashimoto
81e3ff90a3 macOS: Show update information as an overlay 2025-10-08 13:29:39 -07:00
Mitchell Hashimoto
fc347a6040 macOS: Move update view model over to App scope 2025-10-08 12:50:09 -07:00
Mitchell Hashimoto
09ba5a27a2 macOS: Unobtrusive update views 2025-10-08 12:50:09 -07:00
dependabot[bot]
b56808f138 build(deps): bump softprops/action-gh-release from 2.3.4 to 2.4.0
Bumps [softprops/action-gh-release](https://github.com/softprops/action-gh-release) from 2.3.4 to 2.4.0.
- [Release notes](https://github.com/softprops/action-gh-release/releases)
- [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md)
- [Commits](62c96d0c4e...aec2ec56f9)

---
updated-dependencies:
- dependency-name: softprops/action-gh-release
  dependency-version: 2.4.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-08 00:07:23 +00:00
Ravi Chandra
e70ae28fa3 terminal: add semi-colon character to word boundary list 2025-10-07 18:16:06 +13:00
Mitchell Hashimoto
67ece53423 lib-vt: begin paste utilities exports starting with safe paste (#9068) 2025-10-06 21:13:54 -07:00
Mitchell Hashimoto
bf9f025aec lib-vt: begin paste utilities exports starting with safe paste 2025-10-06 21:09:28 -07:00
Mitchell Hashimoto
5ece02fa76 lib-vt: split header to be more consumable (#9067)
No functionality changes. This just splits our header up.

Mostly driven by AI, hand reviewed:
https://ampcode.com/threads/T-c3f3e668-448b-4aec-9bac-a230b1d2b3c0
2025-10-06 21:06:27 -07:00
Mitchell Hashimoto
725203d494 lib-vt: split header to be more consumable 2025-10-06 20:48:49 -07:00
Jeffrey C. Ollie
3d1977ca43 osc: parse additional OSC 133 options (#9059)
OSC 133;A can have:

- special_key
- click_events

OSC 133;C can have:

- cmdline
- cmdline_url

Notably, they are in use by `fish`. Not sure what other shells currently
use these options.

Note that the options are only parsed. Nothing further is done with them
at this point.
2025-10-06 16:01:34 -05:00
Jeffrey C. Ollie
323dc54d46 fix custom-shader writergate breakage (#9061)
Fixes: #9060
2025-10-06 15:17:45 -05:00
Jeffrey C. Ollie
f72bbb5038 fix custom-shader writergate breakage
Fixes: #9060
2025-10-06 15:03:25 -05:00
Jeffrey C. Ollie
debdf6bf03 osc: parse additional OSC 133 options
OSC 133;A can have:

- special_key
- click_events

OSC 133;C can have:

- cmdline
- cmdline_url

Notably, they are in use by `fish`. Not sure what other shells currently
use these options.

Note that the options are only parsed. Nothing further is done with them
at this point.
2025-10-06 14:52:09 -05:00
Mitchell Hashimoto
39d3af469e update to the latest zf (#9051) 2025-10-06 11:42:13 -07:00
Mitchell Hashimoto
16026f3023 apprt/gtk: only close with no windows active if close delay is off (#9053)
Fixes #9052
2025-10-06 09:19:33 -07:00
Mitchell Hashimoto
e1e5bfc096 apprt/gtk: only close with no windows active if close delay is off
Fixes #9052
2025-10-06 09:17:16 -07:00