Releases: scikit-build/scikit-build-core
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
Version 0.10.3
This release fixes an issue on Windows systems with non-utf-8 default encodings
for Python <3.14 when reading gitignores with special characters.
What's Changed
Fixes:
Full Changelog: v0.10.2...v0.10.3
v0.10.2
This release fixes a regression with 0.10 where a manually included file in an
sdist would get included twice, affecting some tools (like uv).
What's Changed
Fixes:
New Contributors
Full Changelog: v0.10.1...v0.10.2
Version 0.10.1
This is a quick fix release with two patches for specific situations.
What's Changed
Fixes:
- Fix crash when building inside a submodule by @ausbin in #854
cmake.minimum-version
logic issue by @henryiii in #853
New Contributors
Full Changelog: v0.10.0...v0.10.1
Version 0.10.0
This version adds auto CMake version discovery, opt-in auto minimum-version, rebuild on failure support, quite a few new override options greatly expanding the static config options for builds, more powerful regexs, and more.
Also see the announcement post.
What's Changed
New features:
- Auto CMake version by @henryiii in #804
- Auto minimum-version by @henryiii in #798
- Add
fail
setting to instant-fail build by @henryiii in #824 - Add messages config for failure/success by @henryiii in #825
- New color system for message config by @henryiii in #842
- Add
if.abi-flags
(for free-threaded) by @henryiii in #819 - Adding
if.system-cmake
andif.cmake-wheel
by @henryiii in #826 - Add
if.from-sdist
for overrides by @henryiii in #812 - Add
if.failed
(retry) by @henryiii in #820 - Add
if.scikit-build-version
by @henryiii in #851 - Packages can also be specified via a table by @henryiii in #841
- Move
cmake.targets
andcmake.verbose
tobuild.targets
andbuild.verbose
by @henryiii in #793 - Support multipart regex using
result=
by @henryiii in #818 - Add
remove=
postprocess to regex by @henryiii in #828
Fixes:
- Warn if cmake/ninja in build system requirements by @henryiii in #803
- Detect manual generator setting for
get_requires_*
by @henryiii in #840 - Support nested and local gitignores by @henryiii in #827
Tests:
- Fix
test_cmake_config
ifCMAKE_GENERATOR
is already set by @lorepirri in #847
Internal:
- Pull out overrides to separate file by @henryiii in #821
- Nicer error/warning printer by @henryiii in #813
- Speed up CI for format job by @henryiii in #814
- Avoid old wheel warning in CI test job by @henryiii in #849
Documentation:
- Fix typo in projects list by @jcfr in #797
- Add disclaimer by @henryiii in #805
- Add pointer to itk by @thewtex in #817
- Add projects list by @henryiii in #788
- Examples nox job should use local copy of scikit-build-core by @henryiii in #810
- Expand defs and move schema by @henryiii in #795
- Hide deprecated options in README by @henryiii in #792
- Move overrides to page, expand by @henryiii in #815
- Use modern cmake/ninja version setting in Fortran example by @henryiii in #809
New Contributors
- @lorepirri made their first contribution in #847
Full Changelog: v0.9.8...v0.10.0