diff --git a/backend/src/hatchling/builders/wheel.py b/backend/src/hatchling/builders/wheel.py index 50628c53d..79a4940b0 100644 --- a/backend/src/hatchling/builders/wheel.py +++ b/backend/src/hatchling/builders/wheel.py @@ -402,7 +402,7 @@ def strict_naming(self) -> bool: @property def macos_max_compat(self) -> bool: if self.__macos_max_compat is None: - macos_max_compat = self.target_config.get('macos-max-compat', True) + macos_max_compat = self.target_config.get('macos-max-compat', False) if not isinstance(macos_max_compat, bool): message = f'Field `tool.hatch.build.targets.{self.plugin_name}.macos-max-compat` must be a boolean' raise TypeError(message) diff --git a/docs/plugins/builder/wheel.md b/docs/plugins/builder/wheel.md index d27b182b6..5dd64d7e7 100644 --- a/docs/plugins/builder/wheel.md +++ b/docs/plugins/builder/wheel.md @@ -21,7 +21,7 @@ The builder plugin name is `wheel`. | `shared-scripts` | | A mapping similar to the [forced inclusion](../../config/build.md#forced-inclusion) option corresponding to the `scripts` subdirectory within the standard [data directory](https://packaging.python.org/en/latest/specifications/binary-distribution-format/#the-data-directory) that will be installed in a given Python environment, usually under `Scripts` on Windows or `bin` otherwise, and would normally be available on PATH | | `extra-metadata` | | A mapping similar to the [forced inclusion](../../config/build.md#forced-inclusion) option corresponding to extra [metadata](https://peps.python.org/pep-0427/#the-dist-info-directory) that will be shipped in a directory named `extra_metadata` | | `strict-naming` | `true` | Whether or not file names should contain the normalized version of the project name | -| `macos-max-compat` | `true` | Whether or not on macOS, when build hooks have set the `infer_tag` [build data](#build-data), the wheel name should signal broad support rather than specific versions for newer SDK versions.

Note: The default will become `false`, and this option eventually removed, sometime after consumers like pip start supporting these newer SDK versions. | +| `macos-max-compat` | `false` | Whether or not on macOS, when build hooks have set the `infer_tag` [build data](#build-data), the wheel name should signal broad support rather than specific versions for newer SDK versions.

Note: This option will eventually be removed. | | `bypass-selection` | `false` | Whether or not to suppress the error when one has not defined any file selection options and all heuristics have failed to determine what to ship | ## Versions diff --git a/tests/backend/builders/test_wheel.py b/tests/backend/builders/test_wheel.py index 2dc5e2881..0c2a2d890 100644 --- a/tests/backend/builders/test_wheel.py +++ b/tests/backend/builders/test_wheel.py @@ -602,13 +602,13 @@ class TestMacOSMaxCompat: def test_default(self, isolation): builder = WheelBuilder(str(isolation)) - assert builder.config.macos_max_compat is builder.config.macos_max_compat is True + assert builder.config.macos_max_compat is builder.config.macos_max_compat is False def test_correct(self, isolation): - config = {'tool': {'hatch': {'build': {'targets': {'wheel': {'macos-max-compat': False}}}}}} + config = {'tool': {'hatch': {'build': {'targets': {'wheel': {'macos-max-compat': True}}}}}} builder = WheelBuilder(str(isolation), config=config) - assert builder.config.macos_max_compat is False + assert builder.config.macos_max_compat is True def test_not_boolean(self, isolation): config = {'tool': {'hatch': {'build': {'targets': {'wheel': {'macos-max-compat': 9000}}}}}}