Releases: scikit-build/scikit-build-core
Version 0.11.5
This release speeds up large directories (more directory changes/optimization planned for 0.12), and adds a warning about 3.13.4 being broken on Windows.
Fixes:
- Improve
.gitignore
iteration speed by @silversquirl in #1103 - Warn on 3.13.4 on Windows by @henryiii in #1104
- Add debug logging explaining why a file is included/excluded by @henryiii in #1110
Documentation:
New Contributors
- @mabruzzo made their first contribution in #1096
- @silversquirl made their first contribution in #1103
Full Changelog: v0.11.4...v0.11.5
Version 0.11.4
This release improves support for GraalPy and fixes a few other minor issues.
Fixes:
- Typo in license-files by @henryiii in #1084
- Fix dynamic-metadata iteration (only affected GraalPy) by @henryiii in #1092
- Better abiflags implementation, uses ABIFLAGS on 3.14+, supports GraalPy by @henryiii in #1092
- File API
commandFragments
is optional by @henryiii in #1092 - Add
python -m scikit_build_core
printout and a few CLI issues by @henryiii in #1091 - Add some platform info to logging by @henryiii in #1094
Internal:
- Explicit mypy ignores by @henryiii in #1087
- Adjust typing to be ready for next mypy release by @henryiii in #1088
Documentation:
Full Changelog: v0.11.3...v0.11.4
Version 0.11.3
This release fixes some fields in the expanded supported dynamic-metadata fields from 0.11.2. It also now is tested on Python 3.14, including adding color to --help
on the experimental commands (now documented).
Fixes:
CI and testing:
- Officially support Python 3.14, color help @henryiii in #1074
- Remove no-wheel based on virtualenv version by @henryiii in #1071
- Work when
CMAKE_GENERATOR
is set by @henryiii in #1066 - Try a workaround for packit
propose-downstream
by @LecrisUT in #1067 - Update coverage a bit by @henryiii in #1073
Documentation:
- Generate config value reference by @LecrisUT in #1052
- Update and fix projects list by @henryiii in #1075
- Document CLI utilities by @henryiii in #1080
New Contributors
Full Changelog: v0.11.2...v0.11.3
Version 0.11.2
This release allows dynamic-metadata to reference other fields, which enables a new plugin, "template", and enables the fancy readme plugin to include the version. There are also a few fixes; Python_EXECUTABLE
is now a proper CMake path, and using a renamed option from the command line or environment variable no longer triggers an error when the min required version is from before that was introduced.
What's Changed
Features:
- Add template dynamic-metadata plugin and support requesting other fields by @henryiii in #1047
- Parse the CMake file-api during configuration by @LecrisUT in #1016
- Add a couple of build commands by @henryiii in #1055
Fixes:
- Make sure all paths are CMake paths by @henryiii in #1063
- Support overriding renamed options by @henryiii in #1054
CI and testing:
- Add Windows ARM by @henryiii in #1046
- Add more tests of package traversal by @vyasr in #906
- A few better ids by @henryiii in #1058
Docs:
- Fix community meeting link by @jcfr in #1049
- Add a field metadata to the setting fields by @LecrisUT in #1051
- Document how to deal with dynamic linking by @LecrisUT in #1022
- Fix typo in macOS repair wheel tool name by @burgholzer in #1042
Full Changelog: v0.11.1...v0.11.2
Version 0.11.1
This release contains two small fixes for edge case issues.
What's Changed
Fixes:
- Bump pyproject-metadata to handle form feeds on Python < 3.12.8 by @henryiii in #1014
- Increase timeout on CI by @henryiii in #1019
CI and testing:
- Ignore deprecation message from cattrs on Python 3.14 alphas by @LecrisUT in #1020
- Add more integration tests in Fedora by @LecrisUT in #800
- Restore example builds for Windows/macOS by @henryiii in #1025
Internal:
- Remove leftover Python 3.7 checks by @LecrisUT in #1011
- Bump pytest version and include pytest-xdist by @henryiii in #1008
- Bump to ruff 0.10, work around bug by @henryiii in #1015
Docs:
- Clarify verbosity options by @LecrisUT in #1018
- Fix incorrect configuration example by @buddly27 in #1023
- Fix incorrect name (
PYBIND11_NEWPYTHON
->PYBIND11_FINDPYTHON
) by @henryiii in #1021
New Contributors
Full Changelog: v0.11.0...v0.11.1
Version 0.11.0
This version adds support for PEP 639 (license expressions) and updates the default METADATA version 2.2. Support for Python 3.7 has been removed. You can use build.requires
to inject build requirements using overrides.
What's Changed
Features:
- Update vendored pyproject-metadata (PEP 639 support) by @henryiii in #917
- 0.11+ default to metadata 2.2 by @henryiii in #986
- Rework CMake search path settings and add
cmake.root
by @LecrisUT in #880 SKBUILD_SABI_VERSION
by @henryiii in #962- Support TOML lists in
cmake.define
by @alexreinking in #921 - Add new field
build.requires
by @LecrisUT in #992 - Drop python<=3.7 support by @kloczek in #769
- Setuptools plugin: pyproject-toml only config support by @henryiii in #975
- Setuptools plugin: error for
cmake_install_target
by @henryiii in #976
Fixes:
- Lock during experimental
editable.rebuild
by @hauntsaninja in #968 - Add known wheels for armv7l by @mayeut in #960
- Ignore
build-dir
automatically by @henryiii in #916 - Longer timeout on Windows by @henryiii in #974
path_to_module
should handle hidden files (e.g..clang-tidy
) correctly by @tae-jun in #987- Timeout checking cmake/ninja by @henryiii in #973
Internal:
- Add a
format
module that is used in the expansion ofpyproject.toml
by @LecrisUT in #998 - Bump Ruff to 0.8.0 by @AlexWaygood in #949
- Add citation by @henryiii in #945
- Vendor updates by @henryiii in #918
CI and testing:
- Correct the function prototype defined in the stub file in
simplest_c
example by @LinZhihao-723 in #937 - Synchronize with Fedora downstream by @LecrisUT in #884
- Fix RTD builds when last git tag is more than 50 commits behind by @agriyakhetarpal in #1001
- Tighten up permissions a bit by @henryiii in #983
tmt
tests improvements by @LecrisUT in #899- Update deployment a bit by @henryiii in #922
- Use astral-sh/setup-uv instead by @henryiii in #923
- Simpler noxfile by @henryiii in #924
- Test on Linux ARM & Python 3.14 alphas by @henryiii in #1003
- Support for parallel testing by @henryiii in #1004
Docs:
sphinx-apidoc
changed its mind by @LecrisUT in #996- Fix Google meet reference to use updated link by @jcfr in #931
- Clarify docs for activating stable ABI by @eirrgang in #940
- Consistently use backticks to reference Python module components by @jcfr in #956
- Fix instructions to check if
Development.SABIModule
was requested by @jcfr in #957 - Add some notes and warnings about cross-compilation by @henryiii in #985
- Add sphinx-tippy by @LecrisUT in #1000
- Correct the order of entry-points and CMake variables by @njzjz in #948
- Quickstart updates by @henryiii in #939
- Some restructuring by @LecrisUT in #997
New Contributors
- @LinZhihao-723 made their first contribution in #937
- @eirrgang made their first contribution in #940
- @AlexWaygood made their first contribution in #949
- @mayeut made their first contribution in #960
- @hauntsaninja made their first contribution in #968
- @kloczek made their first contribution in #769
- @tae-jun made their first contribution in #987
- @agriyakhetarpal made their first contribution in #1001
Full Changelog: v0.10.7...v0.11.0
Version 0.10.7
This version has three fixes related to advanced usages of overrides.
What's Changed
Fixes:
- Avoid modifying the input dict by @henryiii in #903
- Avoid providing prepare-metadata methods if
failed
in overrides by @henryiii in #904 - Support negative envvar values correctly by @henryiii in #907
Full Changelog: v0.10.6...v0.10.7
Version 0.10.6
This version has several fixes; the new remove
key in 0.10 had a mistake making it unusable, this has been fixed along with the matching issue in the tests. Editable installs failed if there was a folder matching an extension name. Multiplexed paths were not supported for plugins, now they are. The downstream nox job is also now a bit better.
What's Changed
Fixes:
- Use correct settings key to remove parts of the version in regex metadata plugin by @philippjh in #887
- Support multiplexed path by @henryiii in #896
- Editable subpackage by @henryiii in #895
- Only strip Release and MinSizeRel builds by default by @henryiii in #898
- Typo in debug message by @LecrisUT in #892
Docs:
CI and testing:
New Contributors
- @philippjh made their first contribution in #887
Full Changelog: v0.10.5...v0.10.6
Version 0.10.5
This version fixes an issue rebuilding if you have a build-dir
set and are using isolated build environments. The cache is now correctly cleared if this occurs. An issue with a certain style of gitignore was also fixed.
What's Changed
Fixes:
- Automatically refresh the cache when required by @henryiii in #870
sdist.exclude
takes precedence over.gitignore
by @alexreinking in #872
New Contributors
- @alexreinking made their first contribution in #872
Full Changelog: v0.10.4...v0.10.5
Version 0.10.4
This version fixes the logic for handling the sysconfig variables on Windows for the values that used to be only provided on UNIX. This mostly affects targeting the Stable ABI on Python 3.13. Editable install rebuilds now work if you have a wheel.install-dir
set, too.
What's Changed
Fixes:
- Windows 3.13 stable ABI by @LecrisUT in #865
- Editable installs now respect the value of
wheel.install-dir
by @psalvaggio in #867
Docs:
New Contributors
- @psalvaggio made their first contribution in #867
Full Changelog: v0.10.3...v0.10.4