Repository navigation
Improve Bazel support: Switch to Bzlmod - #4584
Merged
Merged
Conversation
Signed-off-by: Vertexwahn <julian.amann@tum.de>
nlohmann
requested changes
Jan 6, 2025
Signed-off-by: Vertexwahn <julian.amann@tum.de>
nlohmann
requested changes
Jan 6, 2025
Signed-off-by: Vertexwahn <julian.amann@tum.de>
Signed-off-by: Vertexwahn <julian.amann@tum.de>
Owner
|
One question: In #4560, I added an overview for the package managers like this:
Most packages have a single string ("package", "formula", "port") to quickly communicate what to do for "their" package manager. Is there something like this for Bazel? |
Contributor
Author
|
Yes three is "nlohmann_json" in the Bazel Central Registry https://registry.bazel.build/modules/nlohmann_json -> so add |
Owner
|
Thanks! |
nlohmann
added a commit
that referenced
this pull request
Jan 7, 2025
Signed-off-by: Niels Lohmann <mail@nlohmann.me>
codenut
pushed a commit
to codenut/json
that referenced
this pull request
Jan 9, 2025
* Improve Bazel support: Switch to Bzlmod Signed-off-by: Vertexwahn <julian.amann@tum.de> * Update documentation Signed-off-by: Vertexwahn <julian.amann@tum.de> * Fix spelling Signed-off-by: Vertexwahn <julian.amann@tum.de> * Fix snippet filename error Signed-off-by: Vertexwahn <julian.amann@tum.de> --------- Signed-off-by: Vertexwahn <julian.amann@tum.de>
slowriot
pushed a commit
to slowriot/json
that referenced
this pull request
Jan 10, 2025
* Improve Bazel support: Switch to Bzlmod Signed-off-by: Vertexwahn <julian.amann@tum.de> * Update documentation Signed-off-by: Vertexwahn <julian.amann@tum.de> * Fix spelling Signed-off-by: Vertexwahn <julian.amann@tum.de> * Fix snippet filename error Signed-off-by: Vertexwahn <julian.amann@tum.de> --------- Signed-off-by: Vertexwahn <julian.amann@tum.de>
nlohmann
added a commit
that referenced
this pull request
Sep 24, 2026
* Add missing headers to BUILD.bazel and make its generator reproduce it The "json" cc_library did not list three headers that the library includes: - detail/meta/logic.hpp (added in #5016, included by from_json.hpp) - detail/input/number_parse.hpp (added in #5283, included by lexer.hpp) - detail/input/string_scan.hpp (added in #5283, included by lexer.hpp and serializer.hpp) Bazel's sandbox only exposes declared headers, so any target depending on @nlohmann_json//:json and including <nlohmann/json.hpp> failed with "'nlohmann/detail/meta/logic.hpp' file not found". The file could not simply be regenerated, because the generator behind "make BUILD.bazel" was stale: it wrote only the "json" cc_library and dropped the load() statements, the license block, and the "singleheader-json" target that were added by hand in #4584. The generator now emits the complete file, so its output differs from the previous BUILD.bazel only by the three headers. It also resolves the glob against the project root instead of the working directory and sorts the list explicitly. "make BUILD.bazel" is now phony: in a fresh checkout, BUILD.bazel is not older than the headers, so make considered it up to date, and a removed header would never trigger a rebuild. "make check-amalgamation" also checks that BUILD.bazel is up to date. Signed-off-by: Niels Lohmann <mail@nlohmann.me> * Check in CI that BUILD.bazel is up to date The "Check amalgamation" workflow now also regenerates BUILD.bazel, so a pull request that adds, renames, or removes a header without updating the Bazel header list fails, and the attached amalgamation.patch contains the fix. The failure comment and the contribution guidelines mention the new check, and the comment now links to the existing "Amalgamate the source code" section instead of the "Files to change" anchor that was removed in #4560. Signed-off-by: Niels Lohmann <mail@nlohmann.me> --------- Signed-off-by: Niels Lohmann <mail@nlohmann.me>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

This PR only affects the Bazel build. Switched from traditional WORKSPACE approach to Bzlmod.
Background: Due to the shortcomings of WORKSPACE, Bzlmod is going to replace the legacy WORKSPACE system. The WORKSPACE file will be disabled by default in Bazel 8 (late 2024) and will be removed in Bazel 9 (late 2025). Therefore, this PR.