Skip to content

Bump Bundle Support pin so stale installs receive tm/gems - #30

Merged
dayglojesus merged 1 commit into
mainfrom
fix/issue-29-bundle-support-pin
Jun 11, 2026
Merged

Bump Bundle Support pin so stale installs receive tm/gems#30
dayglojesus merged 1 commit into
mainfrom
fix/issue-29-bundle-support-pin

Conversation

@dayglojesus

Copy link
Copy Markdown
Collaborator

Summary

Fixes #29. Two one-line changes: the Bundle Support pin in MandatoryBundles.h moves from 8ca9ddb0 to 686adb59, and the embedded copy's .sha marker follows.

Why a pin bump fixes a LoadError: mandatory bundles are only ever copied out of the app, and the copy is skipped while installedSHA equals the pin (BundleRegistry.mm, alreadyAtPinnedSHA). tm/gems.rb landed in the embedded copy on 2026-06-08 without a pin change, so installs from earlier builds never received it — while the auto-updating Markdown (GitHub) bundle now requires it (redcarpet.rb:17). Evidence from the affected machine in #29: Bundle Support frozen at 2026-05-25, Markdown (GitHub) updated 2026-06-11.

The drifted content is now actually upstream (bundle-support.tmbundle#3: tm/gems + tests; #4: the Markdown (GitHub) default-bundle promotion from #23). The new pin both delivers it and heals every stale install: the SHA mismatch triggers a fresh copy on next launch.

Testing

  • bin/fetch_embedded_bundles.sh at the new pin reproduces the embedded content byte-for-byte (only .sha changes)
  • ninja BundlesManager/test green; full app builds
  • Live stale-install rehearsal: a registry at installedSHA 8ca9ddb0 re-copied on launch (686adb59, fresh installedAt), and the GFM preview pipeline (redcarpet.rbtm/gems → shared store → redcarpet+rouge) renders through the refreshed managed copy
  • ruby gems_test.rb under system Ruby 2.6: 7 runs, 19 assertions, 0 failures

Fixes #29: the GitHub Markdown preview died with a LoadError on
machines whose managed Bundle Support predates 2026-06-08. tm/gems.rb
landed only in the app's embedded copy back then — the pin never
changed, and mandatory bundles are re-copied from the app only when
the pin changes (BundleRegistry.mm alreadyAtPinnedSHA). Meanwhile
Markdown (GitHub) auto-updates and now requires tm/gems.

The library (and the Markdown (GitHub) default-bundle promotion from
#23, which had the same drift) is now actually upstream:
bundle-support.tmbundle#3 and #4. This pin bump delivers it: on next
launch the SHA mismatch triggers a fresh copy from the embedded
bundle, healing every stale install.

Verified: refetching at the new pin reproduces the embedded content
byte-for-byte; a stale registry (installedSHA 8ca9ddb0) re-copied on
launch and the GFM preview pipeline renders through the refreshed
managed copy.
@dayglojesus
dayglojesus merged commit cbac065 into main Jun 11, 2026
2 checks passed
This was referenced Jun 11, 2026
@dayglojesus
dayglojesus deleted the fix/issue-29-bundle-support-pin branch August 21, 2026 02:52
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.

Github Markdown Preview broken

1 participant