Decouple GitKit: restore the libgit2 fork (fixes red main), keep the sqlite3 layering - #59
Merged
Merged
Conversation
This reverts commit 409438d.
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
odrobnik
added a commit
that referenced
this pull request
Jun 10, 2026
Replaces the odrobnik/libgit2 fork with Cocoanetics/GitKit from: "1.9.4" (second attempt; supersedes the #59 decouple). Safe now: GitKit#2 fixed the feature-define dialect mismatch that broke stash (and silently disabled TLS/NTLM/iconv) — the matrix had used libgit2-main's post-#6994 names against the v1.9.4 release source; the 1.9.4 tag is re-pointed to the fixed build. SwiftGit/GitCommand/CLibgit2Shim consume the CGitKit product. Verified against the published tag: full SwiftGit suite 155/155 incl. all 7 stash tests; CI green on all 5 platforms. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
#58 bundled two changes: the sqlite3 toolchain layering (good, and now required
— SQLiteKit dropped the old
Sqlite3Shellproduct) and the GitKit swap (libgit2fork → Cocoanetics/GitKit's 1.9.4). The GitKit swap regressed
git_stash_apply:on libgit2 1.9.4 it no longer writes the working tree, so
GitClientStashTests(apply / pop / branch) fail on macOS + Linux. That landed red because #58 was
merged before its CI was confirmed green.
This reverts only the GitKit-swap commit (restores the
odrobnik/libgit2fork, whose
git_stash_applyworks) and keeps the entire sqlite3 layering. All155 SwiftGit tests pass locally with the fork (stash included).
GitKit and a proper libgit2-1.9.4 stash fix (the SAFE checkout strategy is a
no-op — libgit2's
normalize_apply_optionsdoesn't default it, and SAFE'spost-merge index baseline still skips the write; needs a deeper look or an
upstream report) will be a separate, focused PR — not bundled with unrelated
work next time.
Restores SwiftPorts
mainto green.Co-Authored-By: Claude Opus 4.8 (1M context) noreply@anthropic.com