Skip to content

Update Bzlmod dependency to mboworks_bzl 0.8.0 - #913

Merged
helly25 merged 1 commit into
bazel-contrib:renovate/mboworks_bzl-0.xfrom
helly25:chore/bzl-0.8.0
Oct 18, 2026
Merged

helly25 merged 1 commit into
bazel-contrib:renovate/mboworks_bzl-0.xfrom
helly25:chore/bzl-0.8.0

Conversation

@helly25

@helly25 helly25 commented Oct 18, 2026

Copy link
Copy Markdown
Collaborator

Update the Bzlmod dependency to mboworks_bzl 0.8.0, matching the WORKSPACE archives updated by #912. Together these changes align every bzl version reference with the published release.

AG;DR

Signed-off-by: helly25 <6420169+helly25@users.noreply.github.com>
@helly25
helly25 merged commit 7f852e4 into bazel-contrib:renovate/mboworks_bzl-0.x Oct 18, 2026
@helly25
helly25 deleted the chore/bzl-0.8.0 branch October 18, 2026 20:47
helly25 added a commit that referenced this pull request Oct 18, 2026
Update all mboworks_bzl dependency declarations to the published 0.8.0
release. This isolates the dependency upgrade from the version-selector
functionality in #911.

## AG;DR

- Upgrade MODULE.bazel from 0.5.1 to 0.8.0 using BCR resolution.
- Upgrade WORKSPACE and toolchain/deps.bzl from the 0.7.0 archive to the
published 0.8.0 archive and checksum.
- The MODULE.bazel change was incorporated through #913. No temporary
Git or archive overrides are needed.
- Merge this PR into master before synchronizing #911. This PR contains
no selector functionality changes.
- All 100 GitHub checks passed on the combined head `7f852e4`, including
the required-check gate.

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [mboworks_bzl](https://redirect.github.com/mboworks/bzl) |
http_archive | minor | `0.7.0` → `0.8.0` |

---

### Release Notes

<details>
<summary>mboworks/bzl (mboworks_bzl)</summary>

###
[`v0.8.0`](https://redirect.github.com/mboworks/bzl/blob/HEAD/CHANGELOG.md#080)

[Compare
Source](https://redirect.github.com/mboworks/bzl/compare/0.7.0...0.8.0)

- Add `versions.normalize_tuple` and `versions.normalize_string` for
grouping
  interleaved version suffixes with configurable string separators.

- Add `runfiles.key(ctx, file)` for constructing runtime lookup keys
from Bazel files.

- Add stable version sorting, predicate filtering, earliest/latest
selection with data-preserving
  keys and caller-controlled prerelease filtering in every mode.

- Automate README installation-version preparation and reject stale
release references
  during validation and release publication.

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/bazel-contrib/toolchains_llvm).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4xNjQuMSIsInVwZGF0ZWRJblZlciI6IjQ0LjE2NC4xIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbXX0=-->

---------

Signed-off-by: helly25 <6420169+helly25@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Marcus Boerger <marcus.boerger@gmail.com>
helly25 added a commit that referenced this pull request Oct 20, 2026
…e control (#911)

Cleanup of expression-based LLVM and linker version selectors using bzl
0.8.0, with independent `llvm_version_allow_prereleases` and
`linker_version_allow_prereleases` controls. This clean redo supersedes
the closed #909.

Mainly we are using the advanced/generalized bzl 0.8.0 functionality.

NOTE: The two `*_allow_prereleases` are incompatible changes. They
replace the old magic allowance by referencing in requirements.

## AG;DR

- Share requirement parsing, SemVer comparisons, projection constants,
filtering, and first/latest selection through bzl. Restrict candidates
to compatible artifacts before selecting and preserve the chosen
artifact alongside its version.
- Both public prerelease flags default to false. Requirements always
apply; exact pins remain authoritative. The generic `allow_prereleases`
parameter exists only in internal resolver code and tests.
- Use the same environment selector expansion for LLVM and catalogued
linkers, including mold. Feature overrides inherit the flags
independently; linker-only changes preserve LLVM archive sharing.
- Replace `_version_string` with bzl `normalize_string`; existing
distribution goldens remain unchanged.
- Resolve bzl 0.8.0 directly from BCR in all four module roots, with no
temporary overrides. Both WORKSPACE declarations use the published
release archive. bazelbuild/bazel-central-registry#11173 is merged; the
release dependency is satisfied.
- Validation at synchronized head `c71ba5c`: all 45 toolchain tests
passed in Bzlmod (Bazel 9.3.0) and all 45 passed in WORKSPACE mode
(Bazel 8.8.1). All 14 Python wrapper tests and 11 distribution-script
tests passed; Trunk buildifier/prettier checks passed. The three
integration module graphs were previously validated at `1e1ea62` and
were not rerun for this sync.
- Remove the redundant distribution-version wrapper; both production
callers use the existing parser directly.
- Move all three LLVM distribution golden-output writers and their
fixtures into `llvm_distributions_test.bzl`. Production code exposes one
internal-only `testing` struct with eight helper references; existing
test targets and golden files are unchanged.
- Tests cover selector parity, prerelease pins, platform compatibility,
environment fallbacks and errors, and independent feature-override
policies. The complete bzl 0.8.0 dependency upgrade merged into master
via #912 (including #913). This branch is synchronized with upstream
master `6ceed3a`, including the dylib-linked tool wrapper fix (#914) and
LLVM 23.1.4 catalogue update (#915). The prerelease golden conflict was
resolved by preserving all expanded selector cases and updating only the
catalogue-driven expectations to 23.1.4; synthetic fixtures are
unchanged. Its diff against master contains only the selector
functionality, tests, and documentation, plus removal of an obsolete
dependency comment.

---------

Signed-off-by: helly25 <6420169+helly25@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant