bazelbuild / bazelbuild/bazel

Figure out a plan to stabilize isolated extension usages

Open
#20,186 13 comments 3 reactions 0 assignees View on GitHub
area-Bzlmod P2 team-ExternalDeps type: process
Dominant language
Java
Stars
25.8k
Forks
4.6k
Avg merge
2d 20h
Merged PRs (30d)
72

Description

Isolated extension usages (`use_extension(..., isolate=True)`) are currently guarded behind the flag `--experimental_isolated_extension_usages`.

This feature is useful in particular as it allows an extension to easily generate repos scoped to a single user module. However, it is a rather big departure in the mental model of module extensions, as it essentially allows an extension to be evaluated "multiple times" (small print -- big simplification, etc etc); certain extensions that may rely on being "used" by its hosting module might break under this model; and the ID of an extension is not just ".bzl file label + extension name" anymore.

To stabilize this feature, we should evaluate other solutions to the "user-module-scoped repos" problem, and think about ways to mitigate the downsides of isolated extension usages (documentation? intentional limitations?).

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.