Skip to content

Remove "Experimental" from the docs of rule extension and aspect APIs - #32184

Closed
fmeum wants to merge 1 commit into
bazelbuild:masterfrom
fmeum:ccr-1b457606-ibddgj
Closed

fmeum wants to merge 1 commit into
bazelbuild:masterfrom
fmeum:ccr-1b457606-ibddgj

Conversation

@fmeum

@fmeum fmeum commented Oct 28, 2026 •

Copy link
Copy Markdown
Collaborator

Description

Drops the "Experimental" label from the documentation of:

  • the rule extension APIs: initializer, parent, extendable and subrules of rule(), subrules of aspect(), ctx.super() and the Subrule type
  • the aspect propagation APIs: propagation_predicate of aspect() and passing functions to its attr_aspects and toolchains_aspects parameters

Also fixes a few typos in the touched doc strings.

Motivation

The rule extension APIs are only allowlist-restricted when --experimental_rule_extension_api is false. That flag has defaulted to true in Bazel since 80d8e42 (Bazel 8). The aspect propagation APIs aren't gated by any flag or allowlist. The docs shouldn't present any of them as experimental anymore.

Build API Changes

No

Checklist

  • I have added tests for the new use cases (if any).
  • I have updated the documentation (if applicable).

Release Notes

RELNOTES: None

Since `--experimental_rule_extension_api` was flipped to true in Bazel 8
(80d8e42), `initializer`, `parent` and
`subrules` of `rule()` as well as `subrules` of `aspect()` are no longer
restricted to an allowlist and rulesets such as rules_java rely on them.
This also covers `extendable`, `ctx.super()` and the `Subrule` type, which
belong to the same APIs.

The `propagation_predicate` parameter of `aspect()` and passing functions
to its `attr_aspects` and `toolchains_aspects` parameters aren't gated by
any flag or allowlist either.
@fmeum
fmeum marked this pull request as ready for review October 28, 2026 09:42
@fmeum
fmeum requested a review from meisterT October 28, 2026 09:42
@github-actions github-actions Bot added awaiting-review PR is awaiting review from an assigned reviewer team-Rules-API API for writing rules/aspects: providers, runfiles, actions, artifacts labels Oct 28, 2026
@fmeum
fmeum requested a review from brandjon October 28, 2026 09:42
@meisterT meisterT added copybara:import Trigger copybara to import the PR and removed awaiting-review PR is awaiting review from an assigned reviewer labels Oct 28, 2026
@fmeum

fmeum commented Oct 28, 2026

Copy link
Copy Markdown
Collaborator Author

@bazel-io fork 10.0.0

@fmeum

fmeum commented Oct 28, 2026

Copy link
Copy Markdown
Collaborator Author

@bazel-io fork 9.4.0

@copybara-service copybara-service Bot closed this in 7caeb78 Nov 3, 2026
iancha1992 pushed a commit to iancha1992/bazel that referenced this pull request Nov 3, 2026
…ect APIs (bazelbuild#32184) (bazelbuild#32360)

### Description

Drops the "Experimental" label from the documentation of:

* the rule extension APIs: `initializer`, `parent`, `extendable` and
`subrules` of `rule()`, `subrules` of `aspect()`, `ctx.super()` and the
`Subrule` type
* the aspect propagation APIs: `propagation_predicate` of `aspect()` and
passing functions to its `attr_aspects` and `toolchains_aspects`
parameters

Also fixes a few typos in the touched doc strings.

### Motivation

The rule extension APIs are only allowlist-restricted when
`--experimental_rule_extension_api` is false. That flag has defaulted to
true in Bazel since 80d8e42 (Bazel 8).
The aspect propagation APIs aren't gated by any flag or allowlist. The
docs shouldn't present any of them as experimental anymore.

### Build API Changes

No

### Checklist

- [ ] I have added tests for the new use cases (if any).
- [x] I have updated the documentation (if applicable).

### Release Notes

RELNOTES: None

Closes bazelbuild#32184


COPYBARA_INTEGRATE_REVIEW=bazelbuild#32184
from fmeum:ccr-1b457606-ibddgj 4eab7b5
PiperOrigin-RevId: 1012630346
Change-Id: I7248842cbb465408a9b88805512ee381ce83867f

Commit
bazelbuild@7caeb78

Co-authored-by: Fabian Meumertzheim <fabian@buildbuddy.io>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

copybara:import Trigger copybara to import the PR team-Rules-API API for writing rules/aspects: providers, runfiles, actions, artifacts

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants