meson-python 0.17.0__tar.gz → 0.17.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (212) hide show
  1. {meson_python-0.17.0 → meson_python-0.17.1}/.github/workflows/tests.yml +4 -1
  2. {meson_python-0.17.0 → meson_python-0.17.1}/CHANGELOG.rst +8 -0
  3. {meson_python-0.17.0 → meson_python-0.17.1}/PKG-INFO +29 -28
  4. {meson_python-0.17.0 → meson_python-0.17.1}/meson.build +1 -1
  5. {meson_python-0.17.0 → meson_python-0.17.1}/mesonpy/__init__.py +3 -3
  6. {meson_python-0.17.0 → meson_python-0.17.1}/pyproject.toml +1 -0
  7. {meson_python-0.17.0 → meson_python-0.17.1}/tests/conftest.py +7 -0
  8. {meson_python-0.17.0 → meson_python-0.17.1}/tests/test_metadata.py +2 -0
  9. {meson_python-0.17.0 → meson_python-0.17.1}/tests/test_sdist.py +37 -28
  10. {meson_python-0.17.0 → meson_python-0.17.1}/.cirrus.yml +0 -0
  11. {meson_python-0.17.0 → meson_python-0.17.1}/.github/workflows/docs.yml +0 -0
  12. {meson_python-0.17.0 → meson_python-0.17.1}/.gitignore +0 -0
  13. {meson_python-0.17.0 → meson_python-0.17.1}/.mailmap +0 -0
  14. {meson_python-0.17.0 → meson_python-0.17.1}/.pre-commit-config.yaml +0 -0
  15. {meson_python-0.17.0 → meson_python-0.17.1}/.readthedocs.yaml +0 -0
  16. {meson_python-0.17.0 → meson_python-0.17.1}/LICENSE +0 -0
  17. {meson_python-0.17.0 → meson_python-0.17.1}/LICENSES/MIT.txt +0 -0
  18. {meson_python-0.17.0 → meson_python-0.17.1}/README.rst +0 -0
  19. {meson_python-0.17.0 → meson_python-0.17.1}/RELEASE.rst +0 -0
  20. {meson_python-0.17.0 → meson_python-0.17.1}/ci/alpine-3.docker +0 -0
  21. {meson_python-0.17.0 → meson_python-0.17.1}/ci/archlinux.docker +0 -0
  22. {meson_python-0.17.0 → meson_python-0.17.1}/ci/debian-11.docker +0 -0
  23. {meson_python-0.17.0 → meson_python-0.17.1}/ci/debian-12.docker +0 -0
  24. {meson_python-0.17.0 → meson_python-0.17.1}/ci/debian-unstable.docker +0 -0
  25. {meson_python-0.17.0 → meson_python-0.17.1}/ci/fedora-37.docker +0 -0
  26. {meson_python-0.17.0 → meson_python-0.17.1}/ci/manylinux.docker +0 -0
  27. {meson_python-0.17.0 → meson_python-0.17.1}/ci/miniconda.docker +0 -0
  28. {meson_python-0.17.0 → meson_python-0.17.1}/ci/opensuse-15.docker +0 -0
  29. {meson_python-0.17.0 → meson_python-0.17.1}/codecov.yml +0 -0
  30. {meson_python-0.17.0 → meson_python-0.17.1}/docs/about.rst +0 -0
  31. {meson_python-0.17.0 → meson_python-0.17.1}/docs/conf.py +0 -0
  32. {meson_python-0.17.0 → meson_python-0.17.1}/docs/examples/spam/meson.build +0 -0
  33. {meson_python-0.17.0 → meson_python-0.17.1}/docs/examples/spam/pyproject.toml +0 -0
  34. {meson_python-0.17.0 → meson_python-0.17.1}/docs/examples/spam/src/__init__.py +0 -0
  35. {meson_python-0.17.0 → meson_python-0.17.1}/docs/examples/spam/src/spammodule.c +0 -0
  36. {meson_python-0.17.0 → meson_python-0.17.1}/docs/explanations/default-options.rst +0 -0
  37. {meson_python-0.17.0 → meson_python-0.17.1}/docs/explanations/design-old.rst +0 -0
  38. {meson_python-0.17.0 → meson_python-0.17.1}/docs/how-to-guides/config-settings.rst +0 -0
  39. {meson_python-0.17.0 → meson_python-0.17.1}/docs/how-to-guides/debug-builds.rst +0 -0
  40. {meson_python-0.17.0 → meson_python-0.17.1}/docs/how-to-guides/editable-installs.rst +0 -0
  41. {meson_python-0.17.0 → meson_python-0.17.1}/docs/how-to-guides/meson-args.rst +0 -0
  42. {meson_python-0.17.0 → meson_python-0.17.1}/docs/how-to-guides/sdist.rst +0 -0
  43. {meson_python-0.17.0 → meson_python-0.17.1}/docs/index.rst +0 -0
  44. {meson_python-0.17.0 → meson_python-0.17.1}/docs/projects-using-meson-python.rst +0 -0
  45. {meson_python-0.17.0 → meson_python-0.17.1}/docs/reference/config-settings.rst +0 -0
  46. {meson_python-0.17.0 → meson_python-0.17.1}/docs/reference/environment-variables.rst +0 -0
  47. {meson_python-0.17.0 → meson_python-0.17.1}/docs/reference/limitations.rst +0 -0
  48. {meson_python-0.17.0 → meson_python-0.17.1}/docs/reference/meson-compatibility.rst +0 -0
  49. {meson_python-0.17.0 → meson_python-0.17.1}/docs/reference/pyproject-settings.rst +0 -0
  50. {meson_python-0.17.0 → meson_python-0.17.1}/docs/spelling_wordlist.txt +0 -0
  51. {meson_python-0.17.0 → meson_python-0.17.1}/docs/spelling_wordlist.txt.license +0 -0
  52. {meson_python-0.17.0 → meson_python-0.17.1}/docs/static/css/contributors.css +0 -0
  53. {meson_python-0.17.0 → meson_python-0.17.1}/docs/tutorials/introduction.rst +0 -0
  54. {meson_python-0.17.0 → meson_python-0.17.1}/mesonpy/_compat.py +0 -0
  55. {meson_python-0.17.0 → meson_python-0.17.1}/mesonpy/_editable.py +0 -0
  56. {meson_python-0.17.0 → meson_python-0.17.1}/mesonpy/_rpath.py +0 -0
  57. {meson_python-0.17.0 → meson_python-0.17.1}/mesonpy/_tags.py +0 -0
  58. {meson_python-0.17.0 → meson_python-0.17.1}/mesonpy/_util.py +0 -0
  59. {meson_python-0.17.0 → meson_python-0.17.1}/mesonpy/_wheelfile.py +0 -0
  60. {meson_python-0.17.0 → meson_python-0.17.1}/noxfile.py +0 -0
  61. {meson_python-0.17.0 → meson_python-0.17.1}/tests/__init__.py +0 -0
  62. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/complex/complex/__init__.py +0 -0
  63. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/complex/complex/more/__init__.py +0 -0
  64. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/complex/complex/more/baz.pyx +0 -0
  65. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/complex/complex/more/meson.build +0 -0
  66. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/complex/complex/namespace/bar.py +0 -0
  67. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/complex/complex/namespace/foo.py +0 -0
  68. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/complex/extension.c +0 -0
  69. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/complex/foo.py +0 -0
  70. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/complex/meson.build +0 -0
  71. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/complex/move.py +0 -0
  72. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/complex/pyproject.toml +0 -0
  73. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/complex/test.pyx +0 -0
  74. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/configure-data/configure_data.py.in +0 -0
  75. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/configure-data/meson.build +0 -0
  76. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/configure-data/pyproject.toml +0 -0
  77. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/custom-target-dir/codegen.py +0 -0
  78. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/custom-target-dir/meson.build +0 -0
  79. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/custom-target-dir/pyproject.toml +0 -0
  80. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/detect-compiler/detect_compiler.c +0 -0
  81. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/detect-compiler/meson.build +0 -0
  82. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/detect-compiler/pyproject.toml +0 -0
  83. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/dist-script/meson.build +0 -0
  84. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/dist-script/pyproject.toml +0 -0
  85. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/dynamic-version/meson.build +0 -0
  86. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/dynamic-version/pyproject.toml +0 -0
  87. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/encoding/meson.build +0 -0
  88. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/encoding/pyproject.toml +0 -0
  89. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/encoding//343/203/206/343/202/271/343/203/210.py" +0 -0
  90. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/executable/example.c +0 -0
  91. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/executable/meson.build +0 -0
  92. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/executable/pyproject.toml +0 -0
  93. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/executable-bit/example-script.py +0 -0
  94. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/executable-bit/example.c +0 -0
  95. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/executable-bit/executable_module.py +0 -0
  96. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/executable-bit/meson.build +0 -0
  97. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/executable-bit/pyproject.toml +0 -0
  98. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/full-metadata/LICENSE +0 -0
  99. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/full-metadata/README.md +0 -0
  100. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/full-metadata/meson.build +0 -0
  101. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/full-metadata/pyproject.toml +0 -0
  102. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/generated-files/example-script.py +0 -0
  103. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/generated-files/example.c +0 -0
  104. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/generated-files/executable_module.py +0 -0
  105. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/generated-files/generate_version.py +0 -0
  106. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/generated-files/meson.build +0 -0
  107. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/generated-files/pyproject.toml +0 -0
  108. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/imports-itself-during-build/meson.build +0 -0
  109. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/imports-itself-during-build/plat.c +0 -0
  110. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/imports-itself-during-build/pure.py +0 -0
  111. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/imports-itself-during-build/pyproject.toml +0 -0
  112. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/install-subdir/meson.build +0 -0
  113. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/install-subdir/nested/deep/deep.py +0 -0
  114. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/install-subdir/nested/deep/excluded.py +0 -0
  115. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/install-subdir/nested/nested.py +0 -0
  116. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/install-subdir/pyproject.toml +0 -0
  117. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/install-subdir/strip/excluded.py +0 -0
  118. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/install-subdir/strip/module.py +0 -0
  119. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/install-subdir/subdir/__init__.py +0 -0
  120. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/install-subdir/subdir/excluded/__init__.py +0 -0
  121. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/install-subdir/subdir/excluded.py +0 -0
  122. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/install-subdir/subdir/test.py +0 -0
  123. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/library/example.c +0 -0
  124. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/library/examplelib.c +0 -0
  125. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/library/examplelib.h +0 -0
  126. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/library/meson.build +0 -0
  127. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/library/pyproject.toml +0 -0
  128. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/license-file/meson.build +0 -0
  129. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/license-file/pyproject.toml +0 -0
  130. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/license-file/something/LICENSE.custom +0 -0
  131. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/limited-api/meson.build +0 -0
  132. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/limited-api/meson.options +0 -0
  133. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/limited-api/module.c +0 -0
  134. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/limited-api/pyproject.toml +0 -0
  135. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/link-against-local-lib/examplemod.c +0 -0
  136. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/link-against-local-lib/lib/examplelib.c +0 -0
  137. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/link-against-local-lib/lib/examplelib.h +0 -0
  138. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/link-against-local-lib/lib/meson.build +0 -0
  139. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/link-against-local-lib/meson.build +0 -0
  140. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/link-against-local-lib/pyproject.toml +0 -0
  141. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/long-path/meson.build +0 -0
  142. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/long-path/pyproject.toml +0 -0
  143. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/missing-dynamic-version/meson.build +0 -0
  144. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/missing-dynamic-version/pyproject.toml +0 -0
  145. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/missing-meson-version/meson.build +0 -0
  146. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/missing-meson-version/pyproject.toml +0 -0
  147. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/missing-version/meson.build +0 -0
  148. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/missing-version/pyproject.toml +0 -0
  149. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/module-types/file.py +0 -0
  150. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/module-types/meson.build +0 -0
  151. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/module-types/namespace/data.py +0 -0
  152. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/module-types/native.c +0 -0
  153. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/module-types/package/__init__.py +0 -0
  154. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/module-types/pyproject.toml +0 -0
  155. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/pure/meson.build +0 -0
  156. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/pure/pure.py +0 -0
  157. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/pure/pyproject.toml +0 -0
  158. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/purelib-and-platlib/meson.build +0 -0
  159. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/purelib-and-platlib/plat.c +0 -0
  160. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/purelib-and-platlib/pure.py +0 -0
  161. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/purelib-and-platlib/pyproject.toml +0 -0
  162. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/purelib-platlib-split/meson.build +0 -0
  163. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/purelib-platlib-split/plat.py +0 -0
  164. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/purelib-platlib-split/pure.py +0 -0
  165. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/purelib-platlib-split/pyproject.toml +0 -0
  166. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/scipy-like/meson.build +0 -0
  167. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/scipy-like/mypkg/__init__.py +0 -0
  168. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/scipy-like/mypkg/cy_extmod.pyx +0 -0
  169. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/scipy-like/mypkg/extmod.c +0 -0
  170. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/scipy-like/mypkg/meson.build +0 -0
  171. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/scipy-like/mypkg/submod/__init__.py +0 -0
  172. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/scipy-like/mypkg/submod/unknown_filetype.npq +0 -0
  173. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/scipy-like/pyproject.toml +0 -0
  174. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/scipy-like/tools/generate_config.py +0 -0
  175. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/simple/__init__.py +0 -0
  176. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/simple/data.txt +0 -0
  177. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/simple/data.txt.license +0 -0
  178. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/simple/meson.build +0 -0
  179. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/simple/pyproject.toml +0 -0
  180. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/simple/test.py +0 -0
  181. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/subdirs/meson.build +0 -0
  182. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/subdirs/pyproject.toml +0 -0
  183. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/subdirs/subdirs/__init__.py +0 -0
  184. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/subdirs/subdirs/a/__init__.py +0 -0
  185. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/subdirs/subdirs/a/b/c.py +0 -0
  186. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/subdirs/subdirs/b/c.py +0 -0
  187. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/subproject/meson.build +0 -0
  188. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/subproject/pyproject.toml +0 -0
  189. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/subproject/subproject.py +0 -0
  190. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/subproject/subprojects/dep/dep.py +0 -0
  191. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/subproject/subprojects/dep/meson.build +0 -0
  192. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/unknown-user-args-meson-args/pyproject.toml +0 -0
  193. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/unknown-user-args-top-level/pyproject.toml +0 -0
  194. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/unsupported-python-version/meson.build +0 -0
  195. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/unsupported-python-version/pyproject.toml +0 -0
  196. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/user-args/meson.build +0 -0
  197. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/user-args/pure.py +0 -0
  198. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/user-args/pyproject.toml +0 -0
  199. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/vendored-meson/meson.build +0 -0
  200. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/vendored-meson/meson_options.txt +0 -0
  201. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/vendored-meson/pyproject.toml +0 -0
  202. {meson_python-0.17.0 → meson_python-0.17.1}/tests/packages/vendored-meson/third-party/meson.py +0 -0
  203. {meson_python-0.17.0 → meson_python-0.17.1}/tests/test_consistency.py +0 -0
  204. {meson_python-0.17.0 → meson_python-0.17.1}/tests/test_editable.py +0 -0
  205. {meson_python-0.17.0 → meson_python-0.17.1}/tests/test_examples.py +0 -0
  206. {meson_python-0.17.0 → meson_python-0.17.1}/tests/test_options.py +0 -0
  207. {meson_python-0.17.0 → meson_python-0.17.1}/tests/test_output.py +0 -0
  208. {meson_python-0.17.0 → meson_python-0.17.1}/tests/test_pep517.py +0 -0
  209. {meson_python-0.17.0 → meson_python-0.17.1}/tests/test_project.py +0 -0
  210. {meson_python-0.17.0 → meson_python-0.17.1}/tests/test_tags.py +0 -0
  211. {meson_python-0.17.0 → meson_python-0.17.1}/tests/test_wheel.py +0 -0
  212. {meson_python-0.17.0 → meson_python-0.17.1}/tests/test_wheelfile.py +0 -0
@@ -95,10 +95,13 @@ jobs:
95
95
  - os: windows-latest
96
96
  python: '3.12'
97
97
  meson: '@git+https://github.com/mesonbuild/meson.git'
98
- # Test with oldest supported pyproject-metadata
98
+ # Test with older supported pyproject-metadata
99
99
  - os: ubuntu-latest
100
100
  python: '3.12'
101
101
  pyproject_metadata: '==0.7.1'
102
+ - os: ubuntu-latest
103
+ python: '3.12'
104
+ pyproject_metadata: '==0.8.0'
102
105
 
103
106
  steps:
104
107
  - name: Checkout
@@ -11,6 +11,14 @@
11
11
  Changelog
12
12
  +++++++++
13
13
 
14
+ 0.17.1
15
+ ======
16
+
17
+ - Update tests to work with newly released ``pyproject-metadata`` 0.9.0.
18
+ - Fix tests to work when not executed in a git work tree.
19
+
20
+ Daniele Nicolodi --- 23-10-2024.
21
+
14
22
  0.17.0
15
23
  ======
16
24
 
@@ -1,58 +1,59 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: meson-python
3
- Version: 0.17.0
3
+ Version: 0.17.1
4
4
  Summary: Meson Python build backend (PEP 517)
5
5
  Keywords: meson,build,backend,pep517,package
6
- Home-page: https://github.com/mesonbuild/meson-python
7
6
  Maintainer-Email: Ralf Gommers <ralf.gommers@gmail.com>, Daniele Nicolodi <daniele@grinta.net>, Henry Schreiner <HenrySchreinerIII@gmail.com>, Thomas Li <47963215+lithomas1@users.noreply.github.com>
8
7
  License: Copyright © 2022 the meson-python contributors
9
- Copyright © 2021 Quansight Labs and Filipe Laíns
10
-
11
- Permission is hereby granted, free of charge, to any person obtaining a
12
- copy of this software and associated documentation files (the "Software"),
13
- to deal in the Software without restriction, including without limitation
14
- the rights to use, copy, modify, merge, publish, distribute, sublicense,
15
- and/or sell copies of the Software, and to permit persons to whom the
16
- Software is furnished to do so, subject to the following conditions:
17
-
18
- The above copyright notice and this permission notice (including the next
19
- paragraph) shall be included in all copies or substantial portions of the
20
- Software.
21
-
22
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
23
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
24
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
25
- THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
26
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
27
- FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
28
- DEALINGS IN THE SOFTWARE.
8
+ Copyright © 2021 Quansight Labs and Filipe Laíns
9
+
10
+ Permission is hereby granted, free of charge, to any person obtaining a
11
+ copy of this software and associated documentation files (the "Software"),
12
+ to deal in the Software without restriction, including without limitation
13
+ the rights to use, copy, modify, merge, publish, distribute, sublicense,
14
+ and/or sell copies of the Software, and to permit persons to whom the
15
+ Software is furnished to do so, subject to the following conditions:
16
+
17
+ The above copyright notice and this permission notice (including the next
18
+ paragraph) shall be included in all copies or substantial portions of the
19
+ Software.
20
+
21
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
22
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
23
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
24
+ THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
25
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
26
+ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
27
+ DEALINGS IN THE SOFTWARE.
28
+
29
29
  Classifier: Development Status :: 5 - Production/Stable
30
30
  Classifier: Programming Language :: Python
31
31
  Classifier: Topic :: Software Development :: Build Tools
32
- Project-URL: Homepage, https://github.com/mesonbuild/meson-python
33
- Project-URL: Repository, https://github.com/mesonbuild/meson-python
34
- Project-URL: Documentation, https://mesonbuild.com/meson-python/
35
- Project-URL: Changelog, https://mesonbuild.com/meson-python/changelog.html
32
+ Project-URL: homepage, https://github.com/mesonbuild/meson-python
33
+ Project-URL: repository, https://github.com/mesonbuild/meson-python
34
+ Project-URL: documentation, https://mesonbuild.com/meson-python/
35
+ Project-URL: changelog, https://mesonbuild.com/meson-python/changelog.html
36
36
  Requires-Python: >=3.7
37
37
  Requires-Dist: meson>=0.63.3; python_version < "3.12"
38
38
  Requires-Dist: meson>=1.2.3; python_version >= "3.12"
39
39
  Requires-Dist: packaging>=19.0
40
40
  Requires-Dist: pyproject-metadata>=0.7.1
41
41
  Requires-Dist: tomli>=1.0.0; python_version < "3.11"
42
+ Provides-Extra: test
42
43
  Requires-Dist: build; extra == "test"
44
+ Requires-Dist: packaging>=23.1; extra == "test"
43
45
  Requires-Dist: pytest>=6.0; extra == "test"
44
46
  Requires-Dist: pytest-cov[toml]; extra == "test"
45
47
  Requires-Dist: pytest-mock; extra == "test"
46
48
  Requires-Dist: cython>=3.0.3; extra == "test"
47
49
  Requires-Dist: wheel; extra == "test"
48
50
  Requires-Dist: typing-extensions>=3.7.4; python_version < "3.11" and extra == "test"
51
+ Provides-Extra: docs
49
52
  Requires-Dist: furo>=2023.5.20; extra == "docs"
50
53
  Requires-Dist: sphinx~=6.2; extra == "docs"
51
54
  Requires-Dist: sphinx-copybutton>=0.5.0; extra == "docs"
52
55
  Requires-Dist: sphinx-design>=0.1.0; extra == "docs"
53
56
  Requires-Dist: sphinxext-opengraph>=0.7.0; extra == "docs"
54
- Provides-Extra: test
55
- Provides-Extra: docs
56
57
  Description-Content-Type: text/x-rst
57
58
 
58
59
  .. SPDX-FileCopyrightText: 2021 The meson-python developers
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # SPDX-License-Identifier: MIT
4
4
 
5
- project('meson-python', version: '0.17.0')
5
+ project('meson-python', version: '0.17.1')
6
6
 
7
7
  py = import('python').find_installation()
8
8
 
@@ -65,7 +65,7 @@ if typing.TYPE_CHECKING: # pragma: no cover
65
65
  MesonArgs = Mapping[MesonArgsKeys, List[str]]
66
66
 
67
67
 
68
- __version__ = '0.17.0.dev0'
68
+ __version__ = '0.17.1'
69
69
 
70
70
 
71
71
  _NINJA_REQUIRED_VERSION = '1.8.2'
@@ -246,7 +246,7 @@ class Metadata(pyproject_metadata.StandardMetadata):
246
246
  return name
247
247
 
248
248
  @classmethod
249
- def from_pyproject(
249
+ def from_pyproject( # type: ignore[override]
250
250
  cls,
251
251
  data: Mapping[str, Any],
252
252
  project_dir: Path = os.path.curdir,
@@ -367,7 +367,7 @@ class _WheelBuilder():
367
367
  @property
368
368
  def _license_file(self) -> Optional[pathlib.Path]:
369
369
  license_ = self._metadata.license
370
- if license_:
370
+ if license_ and isinstance(license_, pyproject_metadata.License):
371
371
  return license_.file
372
372
  return None
373
373
 
@@ -47,6 +47,7 @@ dynamic = [
47
47
  [project.optional-dependencies]
48
48
  test = [
49
49
  'build',
50
+ 'packaging >= 23.1',
50
51
  'pytest >= 6.0',
51
52
  'pytest-cov[toml]',
52
53
  'pytest-mock',
@@ -16,6 +16,7 @@ import warnings
16
16
 
17
17
  from venv import EnvBuilder
18
18
 
19
+ import packaging.metadata
19
20
  import packaging.version
20
21
  import pytest
21
22
 
@@ -24,6 +25,12 @@ import mesonpy
24
25
  from mesonpy._util import chdir
25
26
 
26
27
 
28
+ def metadata(data):
29
+ meta, other = packaging.metadata.parse_email(data)
30
+ assert not other
31
+ return meta
32
+
33
+
27
34
  def adjust_packaging_platform_tag(platform: str) -> str:
28
35
  if platform.startswith(('manylinux', 'musllinux')):
29
36
  # The packaging module generates overly specific platforms tags on
@@ -53,6 +53,8 @@ def test_missing_version(package_missing_version):
53
53
  re.escape('Required "project.version" field is missing'),
54
54
  # pyproject-metatadata 0.8.0 and later
55
55
  re.escape('Field "project.version" missing and "version" not specified in "project.dynamic"'),
56
+ # pyproject-metatadata 0.9.0 and later
57
+ re.escape('Field "project.version" missing and \'version\' not specified in "project.dynamic"'),
56
58
  ))
57
59
  with pytest.raises(pyproject_metadata.ConfigurationError, match=match):
58
60
  Metadata.from_pyproject(pyproject, pathlib.Path())
@@ -2,54 +2,66 @@
2
2
  #
3
3
  # SPDX-License-Identifier: MIT
4
4
 
5
- import os
6
5
  import pathlib
7
- import re
8
6
  import stat
9
7
  import sys
10
8
  import tarfile
11
9
  import textwrap
12
10
  import time
13
11
 
12
+ from itertools import chain
13
+
14
14
  import pytest
15
15
 
16
16
  import mesonpy
17
17
 
18
- from .conftest import in_git_repo_context
18
+ from .conftest import in_git_repo_context, metadata
19
19
 
20
20
 
21
21
  def test_no_pep621(sdist_library):
22
22
  with tarfile.open(sdist_library, 'r:gz') as sdist:
23
- sdist_pkg_info = sdist.extractfile('library-1.0.0/PKG-INFO').read().decode()
23
+ sdist_pkg_info = sdist.extractfile('library-1.0.0/PKG-INFO').read()
24
24
 
25
- assert sdist_pkg_info == textwrap.dedent('''\
25
+ assert metadata(sdist_pkg_info) == metadata(textwrap.dedent('''\
26
26
  Metadata-Version: 2.1
27
27
  Name: library
28
28
  Version: 1.0.0
29
- ''')
29
+ '''))
30
30
 
31
31
 
32
32
  def test_pep621(sdist_full_metadata):
33
33
  with tarfile.open(sdist_full_metadata, 'r:gz') as sdist:
34
- sdist_pkg_info = sdist.extractfile('full_metadata-1.2.3/PKG-INFO').read().decode()
34
+ sdist_pkg_info = sdist.extractfile('full_metadata-1.2.3/PKG-INFO').read()
35
+
36
+ meta = metadata(sdist_pkg_info)
37
+
38
+ # pyproject-metadata prior to 0.8.0 uses spaces to join keywords
39
+ meta['keywords'] = list(chain(*(v.split(' ') for v in meta['keywords'])))
40
+
41
+ # pyproject-metadata prior to 0.9.0 strips trailing newlines
42
+ meta['license'] = meta['license'].rstrip()
35
43
 
36
- metadata = re.escape(textwrap.dedent('''\
44
+ # pyproject-metadata 0.9.0 and later does not emit Home-Page
45
+ meta.pop('home_page', None)
46
+ # nor normalizes Project-URL keys
47
+ meta['project_urls'] = {k.lower(): v for k, v in meta['project_urls'].items()}
48
+
49
+ assert meta == metadata(textwrap.dedent('''\
37
50
  Metadata-Version: 2.1
38
51
  Name: full-metadata
39
52
  Version: 1.2.3
40
53
  Summary: Some package with all of the PEP 621 metadata
41
- Keywords: full metadata
42
- Home-page: https://example.com
54
+ Keywords: full,metadata
43
55
  Author: Jane Doe
44
56
  Author-Email: Unknown <jhon.doe@example.com>
45
57
  Maintainer-Email: Jane Doe <jane.doe@example.com>
46
58
  License: some license
47
59
  Classifier: Development Status :: 4 - Beta
48
60
  Classifier: Programming Language :: Python
49
- Project-URL: Homepage, https://example.com
50
- Project-URL: Documentation, https://readthedocs.org
51
- Project-URL: Repository, https://github.com/mesonbuild/meson-python
52
- Project-URL: Changelog, https://github.com/mesonbuild/meson-python/blob/master/CHANGELOG.rst
61
+ Project-URL: homepage, https://example.com
62
+ Project-URL: documentation, https://readthedocs.org
63
+ Project-URL: repository, https://github.com/mesonbuild/meson-python
64
+ Project-URL: changelog, https://github.com/mesonbuild/meson-python/blob/master/CHANGELOG.rst
53
65
  Requires-Python: >=3.7
54
66
  Requires-Dist: a
55
67
  Requires-Dist: b>1
@@ -70,20 +82,16 @@ def test_pep621(sdist_full_metadata):
70
82
  An example package with all of the PEP 621 metadata!
71
83
  '''))
72
84
 
73
- # pyproject-metadata 0.8.0 and later uses a comma to separate keywords
74
- expr = metadata.replace(r'Keywords:\ full\ metadata', r'Keywords:\ full[ ,]metadata')
75
- assert re.fullmatch(expr, sdist_pkg_info)
76
-
77
85
 
78
86
  def test_dynamic_version(sdist_dynamic_version):
79
87
  with tarfile.open(sdist_dynamic_version, 'r:gz') as sdist:
80
- sdist_pkg_info = sdist.extractfile('dynamic_version-1.0.0/PKG-INFO').read().decode()
88
+ sdist_pkg_info = sdist.extractfile('dynamic_version-1.0.0/PKG-INFO').read()
81
89
 
82
- assert sdist_pkg_info == textwrap.dedent('''\
90
+ assert metadata(sdist_pkg_info) == metadata(textwrap.dedent('''\
83
91
  Metadata-Version: 2.1
84
92
  Name: dynamic-version
85
93
  Version: 1.0.0
86
- ''')
94
+ '''))
87
95
 
88
96
 
89
97
  def test_contents(sdist_library):
@@ -135,7 +143,7 @@ def test_contents_unstaged(package_pure, tmp_path):
135
143
  try:
136
144
  pathlib.Path('pure.py').write_text(new)
137
145
  pathlib.Path('other.py').touch()
138
- sdist_path = mesonpy.build_sdist(os.fspath(tmp_path))
146
+ sdist_path = mesonpy.build_sdist(tmp_path)
139
147
  finally:
140
148
  pathlib.Path('pure.py').write_text(old)
141
149
  pathlib.Path('other.py').unlink()
@@ -209,12 +217,13 @@ def test_long_path(sdist_long_path):
209
217
 
210
218
 
211
219
  def test_reproducible(package_pure, tmp_path):
212
- t1 = time.time()
213
- sdist_path_a = mesonpy.build_sdist(tmp_path / 'a')
214
- t2 = time.time()
215
- # Ensure that the two sdists are build at least one second apart.
216
- time.sleep(max(t1 + 1.0 - t2, 0.0))
217
- sdist_path_b = mesonpy.build_sdist(tmp_path / 'b')
220
+ with in_git_repo_context():
221
+ t1 = time.time()
222
+ sdist_path_a = mesonpy.build_sdist(tmp_path / 'a')
223
+ t2 = time.time()
224
+ # Ensure that the two sdists are build at least one second apart.
225
+ time.sleep(max(t1 + 1.0 - t2, 0.0))
226
+ sdist_path_b = mesonpy.build_sdist(tmp_path / 'b')
218
227
 
219
228
  assert sdist_path_a == sdist_path_b
220
229
  assert tmp_path.joinpath('a', sdist_path_a).read_bytes() == tmp_path.joinpath('b', sdist_path_b).read_bytes()
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes