Meson 互換性

meson-python は Meson と密に統合して Python ホイールと sdist を生成します。したがって、正しい操作は Meson によって実装された機能に依存します。 meson-python はできるだけ古い Meson リリースとの互換性を維持するように努めています。ただし、一部の機能はより新しい Meson バージョンでのみ利用できます。

0.64.0

Meson 0.64.0 以降が必要です。

1.1.0

Meson 1.1.0 以降では、exclude_files および exclude_directories 引数が Meson install_subdir() および同様のインストール関数でサポートされます。以前のバージョンの Meson では、これらの引数は効果がありません。

1.2.0

Meson 1.2.0 以降では、一部またはすべてのサブプロジェクトによってインストールされたファイルを Python ホイールに含めないように meson install に渡すことができる --skip-subprojects オプションがサポートされます。

1.2.3

Meson 1.2.3 以降では、Python 3.12 以降がサポートされます。バージョン 1.2.3 以降、Meson は Python 3.12 で標準ライブラリから削除された distutils モジュールに依存しなくなりました。Python 3.12 にインストールすると、meson-python は Meson 1.2.3 以降に依存します。

1.3.0

拡張モジュールの限定された API の Python のコンパイルには、Meson 1.3.0 以降が必要です。

デフォルトのビルドフロントエンドは、ビルド依存関係がインストールされる分離された Python 環境でビルドパッケージを構築します。ほとんどの場合、依存関係バージョン制約をパッケージまたはビルド依存関係が明確に宣言しない限り、ビルド依存関係の最新バージョンがインストールされます。ただし、パッケージが特定の Meson バージョンと組み合わせて実装された機能だけを使用する場合、バージョン要件を pyproject.toml で明確に宣言することを推奨します。たとえば

[build-system]
build-backend = 'mesonpy'
requires = [
  'meson-python',
  'meson >= 1.1.0',
]