Skip to content

Bump the Bundle Support and Source pins - #49

Merged
dayglojesus merged 1 commit into
mainfrom
fix/bump-bundle-pins
Aug 25, 2026
Merged

Bump the Bundle Support and Source pins#49
dayglojesus merged 1 commit into
mainfrom
fix/bump-bundle-pins

Conversation

@dayglojesus

Copy link
Copy Markdown
Collaborator

Both embedded copies predated fixes that are already on their repos' main. Managed/Bundles shadows the app's SharedSupport only when the user has a managed copy — a fresh install was running the stale ones.

Bundle Support 686adb59bda1fda1:

  • 1536a19 Fix the shelltokenize regexp for Ruby 1.9+
  • 8ed07d3 modernize File.exists? and ERB.new calls (thanks @mattneub)

shelltokenize.rb failed to parse under the system Ruby, so require "shelltokenize" raised SyntaxError and broke every command that required it, whatever shebang it carried:

lib/shelltokenize.rb:75: invalid multibyte escape: /[^\w_\-\+=\/\x7F-\xFF]/

Source 2c873f83678a8db1:

  • 751aa5e Replace ruby18 shebangs with the system ruby

Text and Themes are already pinned at their current main, so fetch_embedded_bundles.sh skips them.

src/default.rave is picked up because the script materializes the whole tarball and its sibling src/find_app.cc was already tracked. It exists at the old pin too — it just was never committed.

Verified

  • After re-vendoring: shelltokenize.rb parses, no ruby18/ruby20 and no -K anywhere under Applications/TextMate/support/Bundles, ruby -c clean across every embedded .rb.
  • bin/fetch_embedded_bundles.sh is idempotent — a second run reports [skip] for all four and leaves the tree clean.
  • App builds, and the built .app ships the fixed copies.

Refs #45

Both embedded copies predated fixes that are already on their repos'
main, and Managed/Bundles takes precedence over the app's SharedSupport
only if the user has a managed copy — a fresh install ran the stale ones.

Bundle Support 686adb59 -> bda1fda1 picks up:
  1536a19 Fix the shelltokenize regexp for Ruby 1.9+
  8ed07d3 modernize File.exists? and ERB.new calls  (thanks @mattneub)

shelltokenize.rb failed to parse at all under the system Ruby, which
broke every command that required it, whatever shebang it carried:

    lib/shelltokenize.rb:75: invalid multibyte escape: /[^\w_\-\+=\/\x7F-\xFF]/

Source 2c873f83 -> 678a8db1 picks up:
  751aa5e Replace ruby18 shebangs with the system ruby

Text and Themes are already pinned at their current main, so
fetch_embedded_bundles.sh skips them.

src/default.rave comes along because the script materializes the whole
tarball and its sibling src/find_app.cc was already tracked.

Verified after re-vendoring: shelltokenize parses, no ruby18/ruby20 and
no -K anywhere under the embedded bundles, and ruby -c is clean across
every embedded .rb.
@dayglojesus
dayglojesus merged commit e6bc4ee into main Aug 25, 2026
2 checks passed
@dayglojesus
dayglojesus deleted the fix/bump-bundle-pins branch August 27, 2026 03:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant