← Back to issue list

fix(hotfix/2.7): bump protobuf to 4.25.8 for setuptools without pkg_resources

View original Github issue

Metadata

Project
charmcraft
Number
#2938
Type
pull request
State
closed
Author
lengau
Labels
—
Created
Updated
Closed

Current evaluation

Closed as superseded during a stack rebuild; #2938 carried the same protobuf 4.25.8 bump as #2934 and was replaced by a fresh PR with no content change.

Resolution: closed superseded

Reason: The maintainer closed it while rebuilding the stack, noting that it was replaced by a fresh PR on the same branch and commit with no content change. PR #2938 also identified #2934 as the earlier PR containing the identical protobuf 4.25.8 bump.

Evaluated by: mr-cal-bot

No scores available.

Issue body

## Summary Stacked on #2932. After the rustc bump, `snap-build` gets past `maturin` and fails on `protobuf`: ``` ModuleNotFoundError: No module named 'pkg_resources' ERROR: Failed to build 'protobuf' when getting requirements to build wheel ``` The snap builds everything from source (`PIP_NO_BINARY: ":all:"`), so pip also creates protobuf's isolated build environment. protobuf 3.20.3's `setup.py` imports `pkg_resources`, which setuptools removed in 81; current setuptools is 84, so that sdist cannot build. pip also ignores constraints files for build-isolation, so the build environment cannot be pinned from the repo. protobuf 3.20.3 -> 4.25.8 is API compatible: the 4.x line of that era is a re-versioning of the 3.20 code, and `macaroonbakery` (the only consumer) just requires `protobuf >=3.20.0`. Verified locally that the 4.25.8 sdist builds fully on Python 3.10 with setuptools 84. The pure-python `protobuf-3.20.3-py2.py3-none-any.whl` could be pulled in with `PIP_ONLY_BINARY: protobuf` to keep the old version, but that ships the slower pure-Python implementation to avoid a version bump, so it was rejected. > [!NOTE] > Replaces #2934, whose base branch was removed when the two windows-build PRs > were merged into #2931. Same branch, same commit. ## Test plan CI: `snap-build` completes the `charmcraft` part with `protobuf` compiled from source, which unblocks `snap-tests`. > [!WARNING] > Generated by an automated agent, not a human. 🤖 **BEEP BOOP I'M A TOASTER** _Model:_ `step-5-preview-free` _Harness:_ opencode CLI

Evaluation history

Date Model Scores Action Summary
minimax/minimax-m3.1-flash:free — closed superseded Closed as superseded during a stack rebuild; #2938 carried the same protobuf 4.25.8 bump as #2934 and was replaced by a fresh PR with no content change.

Update history

Date Change
updated
closed
created

Related work

  • Duplicate Of: charmcraft#2934 (confidence 100%)

    Earlier PR for the same protobuf 4.25.8 change; #2938 stated that it replaced #2934 using the same branch and commit.

  • Related To: charmcraft#2932 (confidence 90%)

    The PR on which #2938 was stacked.

Related issues

Issue Project State Summary Similarity
#2942 fix(hotfix/2.7): bump protobuf to 4.25.8 for setuptools without pkg_resources charmcraft closed Protobuf 4.25.8 hotfix PR #2942 was closed unmerged after its stacked base PR #2941 merged; no protobuf version bump landed.
94%
#2934 fix(hotfix/2.7): bump protobuf to 4.25.8 for setuptools without pkg_resources charmcraft closed PR #2934 proposed bumping protobuf 3.20.3→4.25.8 to unblock source builds under setuptools 84, but was closed without a merge or recorded follow-up.
92%
#6012 build(deps): bump protobuf from 6.33.4 to 6.33.5 snapcraft closed Superseded by merged PR canonical/snapcraft#6011, which updated protobuf to 6.33.5 as part of a CVE hotfix.
71%