Closed coryan closed 1 year ago
Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe
) and found it was in an excellent condition.
Thanks for this @coryan!
W.r.t to protobuf, looking at some of the issues (e.g. https://github.com/googleapis/google-cloud-cpp/issues/8145), it says that it needs protobuf >3.19.3; however we're at 3.21.12 already[^1] - does that change anything?
[^1]: We've had no problems with migrating to newer protobufs recently; I've been waiting for 3.22 for a while, but it seems it's getting a bit delayed (originally I heard it was supposed to arrive Nov' 22).
Thanks for this @coryan!
W.r.t to protobuf, looking at some of the issues (e.g. googleapis/google-cloud-cpp#8145), it says that it needs protobuf >3.19.3; however we're at 3.21.12 already1 - does that change anything?
It is a sad, sad story. We thought it only affected macOS, the fixes are in. But it also affects Windows, and I cannot find any fixes for that. I will need to send new patches.
- We've had no problems with migrating to newer protobufs recently; I've been waiting for 3.22 for a while, but it seems it's getting a bit delayed (originally I heard it was supposed to arrive Nov' 22). ↩
Things are moving. There are two release candidates for v22.0. The latest is v22.0-rc2. However, it will not be 3.22, but 4.22. That is a new major release for C++ with some breaking changes. And it is known to break gRPC. I am not sure how the upgrades will need to proceed.
But it also affects Windows, and I cannot find any fixes for that. I will need to send new patches.
OK good to know thanks. If the patches aren't too big we can already carry them in conda-forge (within reason).
That is a new major release for C++ with some breaking changes.
Breaking ABI and/or API? The former is a given (what we've been dealing with so far; just recompile), the latter would be harder to deal with, because it'll possibly need source adaptation).
The latest is v22.0-rc2. However, it will not be 3.22, but 4.22.
The 4 might just be for the python release, at least that's how it's been since 3.21.0. The tag is the same for 3.22.0, 4.22.0 & 22.0:
commit fa7a079c1136b2850e0227675c0379e8fde5c560 (HEAD, tag: v4.22.0-rc2, tag: v3.22.0-rc2, tag: v22.0-rc2)
Author: Protobuf Team Bot <protobuf-team-bot@google.com>
Date: Thu Feb 2 11:44:51 2023 -0800
Updating version.json and repo version numbers to: 22.0-rc2
This broke our bot in creative ways when it was rolled out, but my request to distinguish the tag patterns was rejected.
But it also affects Windows, and I cannot find any fixes for that. I will need to send new patches.
OK good to know thanks. If the patches aren't too big we can already carry them in conda-forge (within reason).
I will share a link to the patches as soon as they get exported. I think they amount to 12 lines changed across 4 files.
That is a new major release for C++ with some breaking changes.
Breaking ABI and/or API? The former is a given (what we've been dealing with so far; just recompile), the latter would be harder to deal with, because it'll possibly need source adaptation).
Both. You can see a partial list of changes in the v22.0-rc1 Release Notes. Notable ones that I think affect Conda:
protoc
plugins changed. That means grpc
and anything downstream may need changes (same errors without changes).The 4 might just be for the python release, at least that's how it's been since 3.21.0.
See the release notes, they explicitly call out breaking changes to C++ and Ruby.
The 4 might just be for the python release, at least that's how it's been since 3.21.0.
See the release notes, they explicitly call out breaking changes to C++ and Ruby.
Yeah, and I just found https://github.com/protocolbuffers/protobuf/blob/main/version.json, which notes the major versions.
By default
google-cloud-cpp
only builds the most commonly used libraries. When building from source that can save some time, but for package managers this leaves out many important features.Checklist
0
(if the version changed)Fixes #115
I had to leave out a few libraries (
google/cloud/asset
,google/cloud/channel
, andgoogle/cloud/storagetransfer
). The proto files for these libraries use enum value names (e.g.DOMAIN
) which are also defined as macros in the system libraries or in the C++ standard library. With all but the latest version of Protobuf this is not a problem. With older versions it can be a problem with some compilers and C++ standard libraries (the list seems really hard to nail down).