-
Notifications
You must be signed in to change notification settings - Fork 1.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: add v4.25.3, v5.26.0 #21622
Conversation
🤖 Beep Boop! This pull request is making changes to 'recipes/protobuf//'. 👋 @Hopobcn you might be interested. 😉 |
I detected other pull requests that are modifying protobuf/all recipe:
This message is automatically generated by https://github.com/ericLemanissier/conan-center-conflicting-prs so don't hesitate to report issues/improvements there. |
1e55975
to
e03e962
Compare
e03e962
to
b0e6e09
Compare
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This reverts commit 7f03206.
This comment has been minimized.
This comment has been minimized.
recipes/protobuf/all/conanfile.py
Outdated
os.unlink(os.path.join(self.package_folder, self._cmake_install_base_path, "protobuf-targets-{}.cmake".format(str(self.settings.build_type).lower()))) | ||
rename(self, os.path.join(self.package_folder, self._cmake_install_base_path, "protobuf-config.cmake"), | ||
os.path.join(self.package_folder, self._cmake_install_base_path, "protobuf-generate.cmake")) | ||
if Version(self.version) < "3.22.0": |
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.
What's the proposal of this change? I see the same protobuf-generate.cmake
being installed with 4.25.3:
-- Up-to-date: /Users/uilian/.conan/data/protobuf/4.25.3/_/_/package/799e25793bb4a51e590a0065a670b4676d489bda/lib/cmake/protobuf
-- Installing: /Users/uilian/.conan/data/protobuf/4.25.3/_/_/package/799e25793bb4a51e590a0065a670b4676d489bda/lib/cmake/protobuf/protobuf-module.cmake
-- Installing: /Users/uilian/.conan/data/protobuf/4.25.3/_/_/package/799e25793bb4a51e590a0065a670b4676d489bda/lib/cmake/protobuf/protobuf-generate.cmake
-- Installing: /Users/uilian/.conan/data/protobuf/4.25.3/_/_/package/799e25793bb4a51e590a0065a670b4676d489bda/lib/cmake/protobuf/protobuf-options.cmake
-- Installing: /Users/uilian/.conan/data/protobuf/4.25.3/_/_/package/799e25793bb4a51e590a0065a670b4676d489bda/lib/cmake/protobuf/protobuf-config.cmake
-- Installing: /Users/uilian/.conan/data/protobuf/4.25.3/_/_/package/799e25793bb4a51e590a0065a670b4676d489bda/lib/cmake/protobuf/protobuf-config-version.cmake
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 don't know why @toge saw a need for the if/else based on the version, but packaging protobuf-config.cmake
is prohibited by the linter.
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.
but packaging protobuf-config.cmake is prohibited by the linter.
We can skip it from the linter or hooks. Please, revert this change.
This comment has been minimized.
This comment has been minimized.
Is there any movement on this issue? Would be really nice to get this through to allow #21593 to move forward :) |
@NoneOfUrBusiness12 Yes, it's under review. Please, take a look past conversation in this PR (few days/hours). Plus, you can customize your Github to notify about any change in this pull request. |
It's a valid error from the linter, though. We should not be including a
`protobuf-config.cmake` file in the package that could get picked up by
`find_package(protobuf CONFIG)`.
|
@valgur My question is why changing from protobuf-generate to protobuf-protoc now. |
This comment has been minimized.
This comment has been minimized.
Conan v1 pipeline ✔️All green in build 24 (
Conan v2 pipeline ✔️
All green in build 24 (
|
@valgur Please, revert the test package and keep simplified as before. We applied a specific PR just to simplify that part of this recipe. |
See the discussion at that simplifying PR for details. It fixed the CI
limitation for build context requirements, everything else was mostly a
consequence of that. There was no binary blob to remove from the test, that
might be a security concern.
Conan basically breaks all of the exported CMake functionality of the
project by default, so it is the responsibility of Conan to also ensure
that it is still working as intended. It’s not a functional test for the
project itself but more of a ”linkage” test for CMake functions.
The hacky workaround for macOS is also highly relevant because it will crop
up in all Conan v2 recipes using protobuf. It’s better to find a suitable
fix here than in the downstream recipes. I have already been bitten by this
on CCI.
…On Mon, May 20, 2024, 09:54 Martin Valgur ***@***.***> wrote:
No
On Mon, May 20, 2024, 09:15 Uilian Ries ***@***.***> wrote:
> @valgur <https://github.com/valgur> Please, revert the test package and
> keep simplified as before. We applied a specific PR just to simplify that
> part of this recipe.
>
> —
> Reply to this email directly, view it on GitHub
> <#21622 (comment)>,
> or unsubscribe
> <https://github.com/notifications/unsubscribe-auth/AANSD4CMAH6HBE4JA46PSMLZDGIHBAVCNFSM6AAAAABAIARYPOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCMJZG42DCOJZGU>
> .
> You are receiving this because you were mentioned.Message ID:
> ***@***.***>
>
|
@valgur @RubenRBS @uilianries Any further progress in this PR? It would be great to have progress in this issue to be able to upgrade GRPC. The latest available GRPC version currently has two high severity CVEs. |
Close as superseded by #24154
The upstream project does mostly 3 things in their provided CMake configuration:
(1) is taken care of I can see why the logic in the recipe was confusing - for earlier versions of protobuf, the macro logic was in In order to test the post-conditions of (2) and (3), we've added additional logic in the test https://github.com/conan-io/conan-center-index/blob/master/recipes/protobuf/all/test_package/CMakeLists.txt#L24-L30
From these, we are satisfied that we are protected against regressions - especially considering that we do not alter the
I'm not sure this is actually happening.
Of course, if one forces a cmake project in the test_package to execute an executable from the host context in the test_package, this would be an issue - don't think it's worth it if the executable is already run via So given this, I'm not sure whether this is a widespread issue. We are more concerned about the users and whether they experience this, rather than CI. For CI we know how to address this transparently without altering the recipes. If this becomes a widespread issue for users, we can provide advise or prioritise a fix in the Client. I would advise that if a PR claims to add new versions, that it adds new versions rather than try to add changes that were already discarded in earlier discussions. By all means, ensuring the test package is robust is a good thing, which can be handled separately to the changes in the recipe. |
@saschasc - new versions of protobuf are already available. We will consider PRs to add new versions of gRPC, but bear in mind that we will try to coordinate also updating consumers of gRPC (like google-cloud-cpp), to avoid version conflicts. I have a feeling finding a version of |
Continues directly from