8000 revert: change default bootstrap back to system_python (#2968) · benjaminp/rules_python@95fb54a · GitHub
[go: up one dir, main page]

Skip to content

Commit 95fb54a

Browse files
authored
revert: change default bootstrap back to system_python (bazel-contrib#2968)
Switch the default bootstrap back to system_python, per maintainer discussion. The main reason is downstream consumers are unlikely to be fully ready for the usage of raw symlinks (declare_symlink artifacts). APIs to detect them aren't available until Bazel 8, which makes it difficult for packaging rules, such as rules_pkg, bazel-lib, or tar rules. This reverts the core part of commit 9f3512f
1 parent cb1c382 commit 95fb54a

File tree

3 files changed

+2
-19
lines changed

3 files changed

+2
-19
lines changed

CHANGELOG.md

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -55,14 +55,6 @@ END_UNRELEASED_TEMPLATE
5555
{#v0-0-0-changed}
5656
### Changed
5757

58-
* If using the (deprecated) autodetecting/runtime_env toolchain, then the Python
59-
version specified at build-time *must* match the Python version used at
60-
runtime (the {obj}`--@rules_python//python/config_settings:python_version`
61-
flag and the {attr}`python_version` attribute control the build-time version
62-
for a target). If they don't match, dependencies won't be importable. (Such a
63-
misconfiguration was unlikely to work to begin with; this is called out as an
64-
FYI).
65-
* (rules) {obj}`--bootstrap_impl=script` is the default for non-Windows.
6658
* (rules) On Windows, {obj}`--bootstrap_impl=system_python` is forced. This
6759
allows setting `--bootstrap_impl=script` in bazelrc for mixed-platform
6860
environments.

docs/api/rules_python/python/config_settings/index.md

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -245,12 +245,8 @@ Values:
245245
::::{bzl:flag} bootstrap_impl
246246
Determine how programs implement their startup process.
247247

248-
The default for this depends on the platform:
249-
* Windows: `system_python` (**always** used)
250-
* Other: `script`
251-
252248
Values:
253-
* `system_python`: Use a bootstrap that requires a system Python available
249+
* `system_python`: (default) Use a bootstrap that requires a system Python available
254250
in order to start programs. This requires
255251
{obj}`PyRuntimeInfo.bootstrap_template` to be a Python program.
256252
* `script`: Use a bootstrap that uses an arbitrary executable script (usually a
@@ -273,11 +269,6 @@ instead.
273269
:::{versionadded} 0.33.0
274270
:::
275271

276-
:::{versionchanged} VERSION_NEXT_FEATURE
277-
* The default for non-Windows changed from `system_python` to `script`.
278-
* On Windows, the value is forced to `system_python`.
279-
:::
280-
281272
::::
282273

283274
::::{bzl:flag} current_config

python/config_settings/BUILD.bazel

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ string_flag(
9090

9191
rp_string_flag(
9292
name = "bootstrap_impl",
93-
build_setting_default = BootstrapImplFlag.SCRIPT,
93+
build_setting_default = BootstrapImplFlag.SYSTEM_PYTHON,
9494
override = select({
9595
# Windows doesn't yet support bootstrap=script, so force disable it
9696
":_is_windows": BootstrapImplFlag.SYSTEM_PYTHON,

0 commit comments

Comments
 (0)
0