Skip to content

Conversation

@mbernson
Copy link
Owner

@mbernson mbernson commented Mar 1, 2024

  • Restructure to a standard Swift package structure.
  • Rename Clibgit2 import to libgit2.
  • Update tests to use the latest versions of Nimble and Quick.

To do:

  • Fork libgit2 to the SwiftGit2 organisation, so we can add the Package.swift manifest there.
  • Compile LibSSH2 and OpenSSL as XCFrameworks, and add them as dependencies.

mbernson added 2 commits March 1, 2024 22:18
- Restructure to a standard Swift package structure.
- Rename `Clibgit2` import to `libgit2`.
- Update tests to use the latest versions of Nimble and Quick.

To do:
- Fork libgit2 to the SwiftGit2 organisation, so we can add the
  Package.swift manifest there.
- Compile LibSSH2 and OpenSSL as XCFrameworks, and add them as
  dependencies.
@mbernson mbernson force-pushed the swift-package-manager branch from d444499 to 9c85a90 Compare March 2, 2024 09:11
@mbernson mbernson force-pushed the swift-package-manager branch from 573d871 to f693cdb Compare October 18, 2024 09:34
@mbernson mbernson force-pushed the swift-package-manager branch from 53e8947 to ca3d5ab Compare November 19, 2024 12:54
hannesa2 and others added 13 commits December 6, 2024 08:19
Update the URL for the test that clones a repository. The repo `github.com/libgit2/libgit2.github.com.git` is over 5GB in size when checked out.
Using github.com/libgit2/TestGitRepository.git instead, which is way smaller.
An enum named `SwiftGit2` was used as a namespace before. But that makes it impossible to refer to a fully qualified type name such as `SwiftGit2.Tag`.
Use the setup-xcode GitHub Action, which is more reliable than calling `xcode-select` manually.
A compilation error was caused by the zlib dependency that is bundled
with libgit2. This particular version of zlib fails to compile on
Clang 17 with the error "Expected identifier or '('".
This problem was fixed in libgit2 v1.9.0 in which they updated zlib.

However, libgit2 v1.9.0 introduced a new compilation issue:
an unterminated multiline comment, which is fixed in this
commit which is not part of any libgit2 release yet:
libgit2/libgit2@2fa13ad

When I check out the libgit2 submodule at that commit
(and remove a reference to a deprecated constant from SwiftGit2) it is solved.

Changes in this commit:

* Updates libgit2 to 2fa13adf09c8dd1f334f57023390043ea3f71cb2, this is
  needed to fix the compilation issues.
* Removes reference to deprecated constant `GIT_OBJECT_REF_DELTA`, which
  wasn't being used in SwiftGit2.
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.

4 participants