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}}}}}}