fix(cmake): Bump yaml-cpp and ANTLR4 versions to resolve CMake deprecation errror. - #794
fix(cmake): Bump yaml-cpp and ANTLR4 versions to resolve CMake deprecation errror.#794Bill-hbrhbr wants to merge 2 commits into
yaml-cpp and ANTLR4 versions to resolve CMake deprecation errror.#794Conversation
WalkthroughThis pull request updates the reference to the Changes
Possibly related PRs
Suggested reviewers
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Actionable comments posted: 0
🧹 Nitpick comments (1)
deps-tasks.yml (1)
432-433: YAML-CPP Version Bump VerificationThe updated dependency details for
yaml-cppon these lines are now using the new commit hash (c2680200486572baf8221ba052ef50b58ecd816e) and corresponding download URL. This change aligns with the PR objective to resolve the CMake deprecation issue by updating to a newer version of the library.Please ensure that these new values remain consistent with the submodule references and any related documentation in the project.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (3)
components/core/submodules/yaml-cpp(1 hunks)deps-tasks.yml(1 hunks)docs/src/dev-guide/components-core/index.md(1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms (1)
- GitHub Check: lint-check (macos-latest)
🔇 Additional comments (2)
docs/src/dev-guide/components-core/index.md (1)
45-45: Confirm YAML-CPP version update is consistent.The update to the dependency reference now shows the commit hash
c268020, which aligns with the intended version bump to resolve the CMake deprecation error. Please ensure that all associated documentation and dependency references (e.g., indeps-tasks.yml) are updated accordingly.components/core/submodules/yaml-cpp (1)
1-1: Submodule Commit Update Looks CorrectThe updated submodule commit reference to
c2680200486572baf8221ba052ef50b58ecd816eseems appropriate and in line with the PR objective of resolving the CMake deprecation error. Please ensure that all references to this commit in dependency configurations and documentation (such as indeps-tasks.ymland the dev guide) are updated accordingly, and that your test builds confirm the resolution of the deprecation issue.
yaml-cpp version to resolve CMake deprecation errror.yaml-cpp and ANTLR4 versions to resolve CMake deprecation errror.
…dependencies (fixes y-scope#795). CMake v4 removed compatibility with `cmake_minimum_required` below v3.5, breaking yaml-cpp, libarchive, and the googletest that ANTLR's test build fetches. CLP previously capped this by pinning CMake below v4, which has since become actively harmful: the install script fails outright wherever CMake v4+ is the system package, since it only installs the pinned version when no `cmake` is already present. The version check now accepts v4+, while the pipx install keeps its `<4` bound so no environment changes which CMake it builds with. Separately, libstdc++ 15 stopped transitively including <cstdint>, so yaml-cpp 0.7.0 fails to compile under GCC 15. The yaml-cpp upgrade addresses both that and its CMake v4 incompatibility. Also upgrades libarchive (3.5.1/3.8.0 -> 3.8.9), mongo-cxx-driver (r4.1.1 -> r4.4.1, the only release carrying an upstream mongo-c-driver fix that CMake v4.4 requires), SQLite3 (3.36.0 -> 3.53.4), Catch2, Microsoft.GSL, nlohmann_json, simdjson, utfcpp, zlib, and date. libarchive is now built from source on centos-stream-9 too, so all four distro scripts agree on one version. None of these required changes to CLP's own source. Supersedes y-scope#794, which first diagnosed the CMake v4 problem, and y-scope#2453, which surfaced it again on Ubuntu 26.04. Co-authored-by: Bingran Hu <bingran.hu@yscope.com> Co-authored-by: Artem Zuikov <chertus@gmail.com> Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
…dependencies (fixes y-scope#795). CMake v4 removed compatibility with `cmake_minimum_required` below v3.5, breaking yaml-cpp, libarchive, and the googletest that ANTLR's test build fetches. CLP previously capped this by pinning CMake below v4, which has since become actively harmful: the install script fails outright wherever CMake v4+ is the system package, since it only installs the pinned version when no `cmake` is already present. The version check now accepts v4+, while the pipx install keeps its `<4` bound so no environment changes which CMake it builds with. Separately, libstdc++ 15 stopped transitively including <cstdint>, so yaml-cpp 0.7.0 fails to compile under GCC 15. The yaml-cpp upgrade addresses both that and its CMake v4 incompatibility. Also upgrades libarchive (3.5.1/3.8.0 -> 3.8.9), mongo-cxx-driver (r4.1.1 -> r4.4.1, the only release carrying an upstream mongo-c-driver fix that CMake v4.4 requires), SQLite3 (3.36.0 -> 3.53.4), Catch2, Microsoft.GSL, nlohmann_json, simdjson, utfcpp, zlib, and date. libarchive is now built from source on centos-stream-9 too, so all four distro scripts agree on one version. None of these required changes to CLP's own source. Supersedes y-scope#794, which first diagnosed the CMake v4 problem, and y-scope#2453, which surfaced it again on Ubuntu 26.04. Co-authored-by: Bingran Hu <bingran.hu@yscope.com> Co-authored-by: Artem Zuikov <chertus@gmail.com> Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
…dependencies (fixes y-scope#795). CMake v4 removed compatibility with `cmake_minimum_required` below v3.5, breaking yaml-cpp, libarchive, and the googletest that ANTLR's test build fetches. CLP previously capped this by pinning CMake below v4, which has since become actively harmful: the install script fails outright wherever CMake v4+ is the system package, since it only installs the pinned version when no `cmake` is already present. The version check now accepts v4+, while the pipx install keeps its `<4` bound so no environment changes which CMake it builds with. Separately, libstdc++ 15 stopped transitively including <cstdint>, so yaml-cpp 0.7.0 fails to compile under GCC 15. The yaml-cpp upgrade addresses both that and its CMake v4 incompatibility. Also upgrades libarchive (3.5.1/3.8.0 -> 3.8.9), mongo-cxx-driver (r4.1.1 -> r4.4.1, the only release carrying an upstream mongo-c-driver fix that CMake v4.4 requires), SQLite3 (3.36.0 -> 3.53.4), Catch2, Microsoft.GSL, nlohmann_json, simdjson, utfcpp, zlib, and date. libarchive is now built from source on centos-stream-9 too, so all four distro scripts agree on one version. None of these required changes to CLP's own source. Supersedes y-scope#794, which first diagnosed the CMake v4 problem, and y-scope#2453, which surfaced it again on Ubuntu 26.04. Co-authored-by: Bingran Hu <bingran.hu@yscope.com> Co-authored-by: Artem Zuikov <chertus@gmail.com> Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
…dependencies (fixes y-scope#795). CMake v4 removed compatibility with `cmake_minimum_required` below v3.5, breaking yaml-cpp, libarchive, and the googletest that ANTLR's test build fetches. CLP previously capped this by pinning CMake below v4, which has since become actively harmful: the install script fails outright wherever CMake v4+ is the system package, since it only installs the pinned version when no `cmake` is already present. The version check now accepts v4+, while the pipx install keeps its `<4` bound so no environment changes which CMake it builds with. Separately, libstdc++ 15 stopped transitively including <cstdint>, so yaml-cpp 0.7.0 fails to compile under GCC 15. The yaml-cpp upgrade addresses both that and its CMake v4 incompatibility. Also upgrades libarchive (3.5.1/3.8.0 -> 3.8.9), mongo-cxx-driver (r4.1.1 -> r4.4.1, the only release carrying an upstream mongo-c-driver fix that CMake v4.4 requires), SQLite3 (3.36.0 -> 3.53.4), Catch2, Microsoft.GSL, nlohmann_json, simdjson, utfcpp, zlib, and date. libarchive is now built from source on centos-stream-9 too, so all four distro scripts agree on one version. None of these required changes to CLP's own source. Supersedes y-scope#794, which first diagnosed the CMake v4 problem, and y-scope#2453, which surfaced it again on Ubuntu 26.04. Co-authored-by: Bingran Hu <bingran.hu@yscope.com> Co-authored-by: Artem Zuikov <chertus@gmail.com> Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Description
The CMake 3.27 release issues a deprecation warning against projects using CMake versions before 3.5, and CMake 4.0 release turns this into an error. This would create issues when using the newer machines to compile CLP.
Same issues occur with
Antlr4, which is a 3rdparty lib. It is already being addressed here: antlr/antlr4#4808For
yaml-cpp, the issue is addressed here: jbeder/yaml-cpp#1351Checklist
breaking change.
Validation performed
Summary by CodeRabbit
Chores
Documentation