bazel: incompatible_config_setting_private_default_visibility
Visibility on config_setting
isn’t historically enforced. This is purely for legacy reasons. There’s no philosophical reason to distinguish them.
This flag, in conjunction with --incompatible_enforce_config_setting_visibility
(https://github.com/bazelbuild/bazel/issues/12932), removes that distinction.
Values:
--incompatible_config_setting_private_default_visibility=off
: if--incompatible_enforce_config_setting_visibility=off
, every config_setting is visible to every target, regardless of visibility settings. Else, everyconfig_setting
without an explicitvisibility
setting is//visibility:public
(ignoring package visibility defaults)--incompatible_config_setting_private_default_visibility=on
: if--incompatible_enforce_config_setting_visibility=off
, every config_setting is visible to every target, regardless of visibility settings. Else,config_setting
follows the same visibility rules as all other targets.
Incompatibility error:
ERROR: myapp/BUILD:4:1: in config_setting rule //myapp:my_config: target 'myapp:my_config' is not visible from target '//some:other_target. Check the visibility declaration of the former target if you think the dependency is legitimate
Migration:
Treat all config_setting
s as if they follow standard visibility logic at https://docs.bazel.build/versions/master/visibility.html: have them set visibility explicitly if they’ll be used anywhere outside their own package. The ultimate goal of this migration is to fully enforce that expectation.
About this issue
- Original URL
- State: open
- Created 3 years ago
- Comments: 19 (19 by maintainers)
Commits related to this issue
- Roll forward config_setting visibility enforcement behind a flag. This was rolled back in https://github.com/bazelbuild/bazel/commit/36d228bd792f4332c7486c4e5f9c78e4b55f4b06 because of depot breakag... — committed to bazelbuild/bazel by gregestren 3 years ago
- Roll forward config_setting visibility enforcement behind a flag. This was rolled back in https://github.com/bazelbuild/bazel/commit/36d228bd792f4332c7486c4e5f9c78e4b55f4b06 because of depot breakag... — committed to gregestren/bazel by gregestren 3 years ago
- Roll forward config_setting visibility enforcement behind a flag. This was rolled back in https://github.com/bazelbuild/bazel/commit/36d228bd792f4332c7486c4e5f9c78e4b55f4b06 because of depot breakag... — committed to bazelbuild/bazel by gregestren 3 years ago
- Adjust semantics for config_setting visibility migration. Today, config_setting_visibility is completely ignored. This also means for select() -> alias -> config_setting, the alias visibility is igno... — committed to bazelbuild/bazel by gregestren 2 years ago
- Adjust semantics for config_setting visibility migration. Today, config_setting_visibility is completely ignored. This also means for select() -> alias -> config_setting, the alias visibility is igno... — committed to aiuto/bazel by gregestren 2 years ago
- Ensure compatibility with strict config_setting visibility https://github.com/bazelbuild/bazel/issues/12932 https://github.com/bazelbuild/bazel/issues/12933 — committed to bazelbuild/rules_go by fmeum 2 years ago
- Ensure compatibility with incompatible flags close to flipping https://github.com/bazelbuild/bazel/issues/8195 https://github.com/bazelbuild/bazel/issues/12932 https://github.com/bazelbuild/bazel/iss... — committed to bazelbuild/rules_go by fmeum 2 years ago
- Ensure compatibility with incompatible flags close to flipping https://github.com/bazelbuild/bazel/issues/8195 https://github.com/bazelbuild/bazel/issues/12932 https://github.com/bazelbuild/bazel/iss... — committed to bazelbuild/rules_go by fmeum 2 years ago
- Ensure compatibility with incompatible flags close to flipping (#3319) https://github.com/bazelbuild/bazel/issues/8195 https://github.com/bazelbuild/bazel/issues/12932 https://github.com/bazelbuild... — committed to bazelbuild/rules_go by fmeum 2 years ago
- Fix config_setting visibility failure on bazel CI See https://github.com/bazelbuild/bazel/issues/12933. Repro: `$ USE_BAZEL_VERSION=a05276fea75d47370b363125a074c38cb2badc74 bazelisk build --nobu... — committed to gregestren/rules_pkg by gregestren 2 years ago
- Bazel 6.0: Fix config_setting visibility failure on bazel CI See bazelbuild/bazel#12933. Repro: $ USE_BAZEL_VERSION=a05276fea75d47370b363125a074c38cb2badc74 bazelisk build --nobuild --incompatible... — committed to gregestren/rules_haskell by gregestren 2 years ago
- Bazel 6.0: Fix config_setting visibility failure on bazel CI See bazelbuild/bazel#12933. Repro: $ USE_BAZEL_VERSION=a05276fea75d47370b363125a074c38cb2badc74 bazelisk build --nobuild --incompatibl... — committed to gregestren/rules_kotlin by gregestren 2 years ago
- Bazel 6.0: Fix config_setting visibility failure on bazel CI See bazelbuild/bazel#12933. Repro: $ USE_BAZEL_VERSION=a05276fea75d47370b363125a074c38cb2badc74 bazelisk build --nobuild --incompatible... — committed to gregestren/upb by gregestren 2 years ago
- Bazel 6.0: Fix config_setting visibility failure on bazel CI (#627) * Fix config_setting visibility failure on bazel CI See https://github.com/bazelbuild/bazel/issues/12933. Repro: `$ USE_BAZEL... — committed to bazelbuild/rules_pkg by gregestren 2 years ago
- Bazel 6.0: Fix config_setting visibility failure on bazel CI (#853) See bazelbuild/bazel#12933. Repro: $ USE_BAZEL_VERSION=a05276fea75d47370b363125a074c38cb2badc74 bazelisk build --nobuild --incom... — committed to bazelbuild/rules_kotlin by gregestren 2 years ago
- Update config_setting visibility. For https://github.com/bazelbuild/bazel/issues/12933. — committed to gregestren/examples by gregestren 2 years ago
- Update config_setting visibility in support of --incompatible_config_setting_private_default_visibility. See https://github.com/protocolbuffers/upb/pull/870. For https://github.com/bazelbuild/bazel/... — committed to protocolbuffers/upb by protobuf-github-bot 2 years ago
- Update rules_pkg to 0.8 Resolves config_setting visibility failures from https://github.com/bazelbuild/bazel/issues/12933: ``` ERROR: /var/lib/buildkite-agent/builds/bk-docker-zr2k/bazel-downstre... — committed to gregestren/stardoc by gregestren 2 years ago
- Update config_setting visibility. (#261) For https://github.com/bazelbuild/bazel/issues/12933. — committed to bazelbuild/examples by gregestren 2 years ago
- Update rules_pkg to 0.8 (#140) Resolves config_setting visibility failures from https://github.com/bazelbuild/bazel/issues/12933: ``` ERROR: /var/lib/buildkite-agent/builds/bk-docker-zr2k/bazel-d... — committed to bazelbuild/stardoc by gregestren 2 years ago
For tracking: cc @meteorcloudy
Failures: https://buildkite.com/bazel/bazelisk-plus-incompatible-flags/builds/1341
To fix: