← Back to issue list

ci: re-enable macOS smoke tests without Homebrew libgit2

View original Github issue

Metadata

Project
charmcraft
Number
#2907
Type
pull request
State
open
Author
Omjaiswal26
Labels
—
Created
Updated
Closed
—

Current evaluation

Re-enables macOS smoke tests by using pygit2's vendored libgit2 instead of Homebrew's. Under active review with unresolved permissions issue; author proposing a fix in craft-providers.

Suggested action: keep open

Reason: PR is under active development with 4 unresolved review comments. Reviewer @lengau flagged a permissions issue ('chmod didn't fix it'), and the author is proposing a solution involving uid/gid mapping in craft-providers. CI still fails on macos-smoke-test, confirming the issue is not yet resolved.

Evaluated by: mr-cal-bot

Impact: 45 Quick Win: 11 Complexity: 30 Confidence: 70 Actionability: 35

Issue body

## Summary - Re-enable `macos-smoke-test` on `macos-14` / `macos-14-large` without Homebrew `libgit2@1.7`, using the pygit2 wheel's vendored libgit2. - Stop installing Homebrew libgit2 in `install-macos-build-deps`. - Run `uv lock` after `charmcraft init` so the machine-profile (uv plugin) pack can succeed. Fixes #2605 ## Test plan - [x] Local: `make setup` on Apple Silicon (no Homebrew libgit2) - [x] Local: pygit2 imports with vendored `.dylibs` - [x] Local: Multipass `init` + `uv lock` + `pack` → `*.charm` - [x] Local: pre-commit / prettier on changed files - [x] Local: `make test-fast` (3 pre-existing `platforms-multi-base` failures on Apple Silicon; unrelated) - [ ] CI: `macos-smoke-test` passes on `macos-14` and `macos-14-large` --- - [x] I've followed the [contribution guidelines](https://github.com/canonical/charmcraft/blob/main/CONTRIBUTING.md). - [x] I've signed the [CLA](http://www.ubuntu.com/legal/contributors/). - [ ] I've successfully run `make lint && make test`. *(N/A — CI/Makefile smoke re-enable; verified with local Multipass pack, pre-commit, and `make test-fast`)* - [ ] I've added or updated any relevant documentation. - [ ] In documents I changed, I [added a meta description](https://canonical-starflow.readthedocs-hosted.com/how-to/add-a-page-meta-description/) if one was missing. - [ ] I've updated the relevant release notes.

Evaluation history

Date Model Scores Action Summary
qwen/qwen3.6-35b-a3b
Impact: 45
Quick Win: 11
Complexity: 30
Confidence: 70
Actionability: 35
keep open Re-enables macOS smoke tests by using pygit2's vendored libgit2 instead of Homebrew's. Under active review with unresolved permissions issue; author proposing a fix in craft-providers.
qwen/qwen3.6-35b-a3b
Impact: 40
Quick Win: 11
Complexity: 30
Confidence: 75
Actionability: 40
keep open Re-enables macOS smoke tests using pygit2's vendored libgit2 instead of Homebrew libgit2. Has 4 unresolved review comments and failing macOS CI checks.
qwen/qwen3.6-35b-a3b
Impact: 55
Quick Win: 11
Complexity: 35
Confidence: 75
Actionability: 30
needs review Re-enables macOS smoke tests without Homebrew libgit2, using pygit2's vendored libgit2 instead. CI failing on macOS smoke tests and lint; 4 unresolved review comments; maintainer flagged a permissions issue.
qwen/qwen3.6-35b-a3b
Impact: 55
Quick Win: 14
Complexity: 25
Confidence: 75
Actionability: 35
needs review Re-enables macOS smoke tests by removing Homebrew libgit2 dependency and using pygit2's vendored libgit2. Has 4 unresolved review comments and a failing lint check.
~deepseek/deepseek-pro-latest
Impact: 45
Quick Win: 7
Complexity: 35
Confidence: 70
Actionability: 25
keep open Re-enables macOS smoke tests on macos-14/macos-14-large, drops Homebrew libgit2 install, adds uv lock after init. Failing lint/files, OSV-scanner, and macos-26-intel smoke; 5 unresolved review comments.
~deepseek/deepseek-pro-latest
Impact: 35
Quick Win: 7
Complexity: 45
Confidence: 50
Actionability: 35
keep open Re-enables macOS smoke tests on macos-14/macos-14-large, drops Homebrew libgit2 install, adds uv lock after init; has 5 unresolved review comments.
~deepseek/deepseek-pro-latest
Impact: 45
Quick Win: 10
Complexity: 35
Confidence: 55
Actionability: 35
keep open Re-enables macOS smoke tests on macos-14/macos-14-large, drops Homebrew libgit2 install, adds uv lock after init; 5 unresolved review comments remain.
~deepseek/deepseek-pro-latest
Impact: 45
Quick Win: 7
Complexity: 45
Confidence: 60
Actionability: 30
keep open Re-enables macOS smoke tests on macos-14/macos-14-large without Homebrew libgit2, drops libgit2 from install-macos-build-deps, adds uv lock after init. CI failing on macOS smoke, lint, OSV-scanner; 5 unresolved review comments.
~deepseek/deepseek-pro-latest
Impact: 40
Quick Win: 4
Complexity: 45
Confidence: 78
Actionability: 20
keep open Re-enables macOS smoke tests on macos-14/macos-14-large without Homebrew libgit2, drops libgit2 from install-macos-build-deps, adds uv lock after init. CI failing on macOS smoke, lint, OSV-scanner; 5 unresolved review comments.
~deepseek/deepseek-pro-latest
Impact: 40
Quick Win: 7
Complexity: 40
Confidence: 55
Actionability: 30
keep open Re-enables macOS smoke tests on macos-14/macos-14-large using pygit2 vendored libgit2, removes Homebrew libgit2 install, adds uv lock after init. CI failing: macos-smoke-test, lint/files, OSV-scanner; 3 unresolved review comments.
stealth/space-bunny-alpha
Impact: 45
Quick Win: 20
Complexity: 35
Confidence: 82
Actionability: 70
needs review Re-enables macOS smoke tests on macOS 14 runners using pygit2’s vendored libgit2, removes Homebrew libgit2 setup, and runs uv lock before packing; awaiting review and macOS CI validation.
stealth/space-bunny-alpha
Impact: 40
Quick Win: 15
Complexity: 30
Confidence: 74
Actionability: 52
needs review Re-enables the commented-out macos-smoke-test job on macos-14/macos-14-large, drops Homebrew libgit2 from install-macos-build-deps in favour of pygit2's vendored libgit2, and adds `uv lock` after `charmcraft init`. Fixes #2605; no CI run yet.
stealth/space-bunny-alpha
Impact: 32
Quick Win: 9
Complexity: 22
Confidence: 76
Actionability: 35
needs review CI-only PR re-enabling the macos-smoke-test job in .github/workflows/tests.yaml (dropping Homebrew libgit2@1.7 in favour of pygit2 wheels) plus a matching Makefile change; macos smoke jobs, lint/files, zizmor and OSV-scanner currently failing.
qwen/qwen3.8-27b
Impact: 50
Quick Win: 18
Complexity: 20
Confidence: 70
Actionability: 45
keep open Re-enables macos-smoke-test on macos-14/macos-14-large using pygit2's vendored libgit2, drops Homebrew libgit2 from install-macos-build-deps, adds uv lock after init. Fresh PR; 5 CI checks failing incl. the re-enabled macOS job; 7 unresolved review comments.
qwen/qwen3.8-27b
Impact: 45
Quick Win: 27
Complexity: 20
Confidence: 78
Actionability: 75
needs review Re-enables the macos-smoke-test CI job on macos-14/macos-14-large using pygit2's vendored libgit2 instead of Homebrew libgit2@1.7, removes brew libgit2 from install-macos-build-deps, and adds uv lock after charmcraft init. Fixes #2605. Fresh PR, CLA passing, no failing checks, awaiting first review.
qwen/qwen3.8-27b
Impact: 45
Quick Win: 20
Complexity: 25
Confidence: 72
Actionability: 60
needs review Re-enables macOS smoke tests on macos-14/14-large by dropping Homebrew libgit2@1.7 in favor of pygit2 wheel's vendored libgit2, and adds a uv lock step for machine-profile packs. Fixes #2605. Fresh, unreviewed, CI only CLA-validated so far.

Update history

Date Change
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
created

Related work

Related issues

Issue Project State Summary Similarity
#2605 Re-enable MacOS tests charmcraft open macOS CI (macos-smoke-test) is commented out since PR #2606 because Homebrew's libgit2@1.7 disappeared. A maintainer-endorsed proposal to drop brew libgit2 and use pygit2 wheels is in progress via PR #2907.
83%
#2606 ci: disable macos tests charmcraft merged Merged PR #2606 (commit df2c6233) temporarily disabled macOS CI tests while issue #2605 investigated the missing Homebrew libgit2 dependency.
72%