-
-
Notifications
You must be signed in to change notification settings - Fork 14.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
protobuf: 24.4 -> 25.3 #264902
protobuf: 24.4 -> 25.3 #264902
Conversation
I think we should wait until 23.11 is out before doing this update.
Indeed, this pin would result in many packages to have multiple version of abseil in their closures. On paper abseil supports that, but even if it doesn't cause any build failures it would still be a waste of resources, imho. |
Fine by me !
The right thing to do would be to bump the default version of abseil to a more recent one right ? |
671d121
to
21f54e4
Compare
21f54e4
to
6ed5385
Compare
6ed5385
to
b06c4b1
Compare
@tobim in the end I bumped the default abseil version. |
b06c4b1
to
01154d5
Compare
|
|
It would be more convenient if we could add protobuf3_25 without bumping the default so that folks don't have to wait to use it. |
Thank you! C.f. #272493 |
01154d5
to
8489a80
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So the README says that
- the
cpp
(.../pyext
) backend is "legacy" and advises to use the μpb backend, - mentions that
While upb offers a C API, the C API & ABI are not stable. For this reason, upb is not generally offered as a C library for direct consumption, and there are no releases. https://github.com/protocolbuffers/protobuf/tree/main/upb
Did we ever have any ABI compatibility guarantees with cpp
? I'm wondering if we could do any tricks for tensorflow like build it with the older protobuf but link the newer one, and also maybe use nixpkgs-pytools to rename its references to the old protobuf python module? (only relevant until we update tf to 2.15?)
cb67b01
to
d481450
Compare
d481450
to
9a5023b
Compare
In order to enable bumping the default protobuf version from protobuf_24 to protobuf_25, we address the build failure of pythonPackages.protobuf against that version. Protobuf's python package is moving away from cpp backend in favor of a µpb backend. (See: https://github.com/protocolbuffers/protobuf/tree/main/upb) The work on that seems to have lead to the introduction of a broken test in "minimal_test.py": protocolbuffers/protobuf@501ecec I suspect that this is not an issue on the nixpkgs packaging end but rather that this file is uncovered code upstream. I don't know enough about Bazel to be sure, but it looks like that file is not part of their protobuf/python/BUILD.bazel file. (I wanted to prove that in protocolbuffers/protobuf#16888 but couldn't trigger upstream's CI) So for now let's just skip that file. Note that protobuf_26.tests.pythonProtobuf is still broken. This is due to the fact that upstream removed support for building the library directly from the GitHub repo. (See: protocolbuffers/protobuf#15708) Conda packaging is also currently struggling with this: conda-forge/protobuf-feedstock#215 Related: NixOS#264902
@ofborg build protobuf.tests |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it's safe to merge now. This won't go into the release but into the unstable
RE: ofborg Hypothesis doesn't depend on protobuf and so is broken independently:
|
Description of changes
Addprotobuf
v25.2.Note: I had to manually set the abseil version to a more recent one (202308) instead of the default one (202301).
Maybe it should be consider to bump the default
abseil-cpp
to a newer version.Changelog: https://github.com/protocolbuffers/protobuf/releases/tag/v25.2
cc @tobim @jonringer
Things done
nix.conf
? (See Nix manual)sandbox = relaxed
sandbox = true
nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD"
. Note: all changes have to be committed, also see nixpkgs-review usage./result/bin/
)