- Add support for editable installs.
- Adjust the default build options passed to ``meson setup``.
- Make sure that the directory where the wheel or sdist build artifacts are
created exists. Fixes building with PDM.
- Fix the specification of the C++ compiler for cross-compilation with
``$ARCHFLAGS`` on macOS.
- Pass the ``--reconfigure`` option to ``meson setup`` if and only if the
specified build directory exists and is a valid Meson build directory.
- Pass the ``--no-rebuild`` option to ``meson install``.
- Allow to select the files to be included in the wheel via Meson install tags
passing the ``--tags`` option to ``meson install`` via ``pyproject.toml`` or
config settings.
- Do not use the ``meson compile`` indirection to build the project, except on
Windows, where it is required to setup the Visual Studio environment.
- Do not add ``ninja`` to the build dependencies if ``$NINJA`` is set but it
does not point to a ``ninja`` executable with the required minimum version.
- Verify at run time that Meson satisfies the minimum required version.
- Place native and cross files in the build directory instead of in the
source directory.
- Drop the ``typing-extensions`` package dependency.
- Add dependency on ``setuptools`` on Python 3.12 and later. This fixes build
error due to Meson depending on the ``distutils`` standard library module
removed in Python 3.12.
- Bump the required ``pyproject-metadata`` version to 0.7.1.
- Allows some more cross-compilation setups by not checking extension modules
filename suffixes against the suffixes accepted by the current interpreter.
- Raise an error when a file that would be installed by Meson cannot be mapped
to a wheel location.
- Raise an error when a package is split between ``platlib`` and ``purelib``.
- Do not generate a warning when ``pyproject.toml`` does not contain a
``project`` section and Python package metadata is derived from ``meson.build``.
- Improve reporting of ``pyproject.toml`` validation errors.
- Fix validation of tool specific options in ``pyproject.toml``. In
particular, allows to specify an incomplete set of options in the
``tool.meson-python.args`` table.