Add meson Python build backend#31809
Conversation
|
Hi @adamjstewart! I noticed that the following package(s) don't yet have maintainers:
Are you interested in adopting any of these package(s)? If so, simply add the following to the package class: maintainers = ['adamjstewart']If not, could you contact the developers of this package and see if they are interested? You can quickly see who has worked on a package with $ spack blame py-mesonThank you for your help! Please don't add maintainers without their consent. You don't have to be a Spack expert or package developer in order to be a "maintainer," it just gives us a list of users willing to review PRs or debug issues relating to this package. A package can have multiple maintainers; just add a list of GitHub handles of anyone who wants to volunteer. |
|
@spackbot fix style |
|
Let me see if I can fix that for you! |
|
I was able to run spack style --fix==> Running style checks on spack
selected: isort, mypy, black, flake8
==> Modified files
var/spack/repos/builtin/packages/py-meson-python/package.py
var/spack/repos/builtin/packages/py-meson/package.py
var/spack/repos/builtin/packages/py-pyproject-metadata/package.py
==> Bootstrapping py-black from pre-built binaries
==> Bootstrapping py-black@:21 %gcc target=x86_64 from sources
==> Bootstrapping clingo from pre-built binaries
==> Fetching https://mirror.spack.io/bootstrap/github-actions/v0.2/build_cache/linux-centos7-x86_64-gcc-10.2.1-clingo-bootstrap-spack-dtwevigmwgke4g6ee5byktpmzmrp2kvx.spec.json
==> Fetching https://mirror.spack.io/bootstrap/github-actions/v0.2/build_cache/linux-centos7-x86_64/gcc-10.2.1/clingo-bootstrap-spack/linux-centos7-x86_64-gcc-10.2.1-clingo-bootstrap-spack-dtwevigmwgke4g6ee5byktpmzmrp2kvx.spack
==> Installing "clingo-bootstrap@spack%[email protected]~docs~ipo+python+static_libstdcpp build_type=Release arch=linux-centos7-x86_64" from a buildcache
==> Bootstrapping patchelf from pre-built binaries
==> Bootstrapping [email protected]:0.13.99 %gcc target=x86_64 from sources
==> Waiting for patchelf-0.13.1-lfwjnfm4uicf4quipjouw3kj6huqqrve
�[1F�[J==> Installing patchelf-0.13.1-lfwjnfm4uicf4quipjouw3kj6huqqrve
==> No binary for patchelf-0.13.1-lfwjnfm4uicf4quipjouw3kj6huqqrve found: installing from source
==> Fetching https://mirror.spack.io/_source-cache/archive/08/08c0237e89be74d61ddf8f6ff218439cdd62af572d568fb38913b53e222831de.tar.gz
==> No patches needed for patchelf
==> patchelf: Executing phase: 'autoreconf'
==> patchelf: Executing phase: 'configure'
==> patchelf: Executing phase: 'build'
==> patchelf: Executing phase: 'install'
==> patchelf: Successfully installed patchelf-0.13.1-lfwjnfm4uicf4quipjouw3kj6huqqrve
Fetch: 0.07s. Build: 9.63s. Total: 9.70s.
[+] /root/.spack/bootstrap/store/linux-debian11-x86_64/gcc-10.2.1/patchelf-0.13.1-lfwjnfm4uicf4quipjouw3kj6huqqrve
[+] /usr/local (external python-3.7-cjyzigw56dhtha22xu3ujpopyrv5nbxr)
==> Waiting for py-pip-22.1.2-kr5xkjbz6tmntfcv7ulonntiusqoxlh4
�[1F�[J==> Installing py-pip-22.1.2-kr5xkjbz6tmntfcv7ulonntiusqoxlh4
==> No binary for py-pip-22.1.2-kr5xkjbz6tmntfcv7ulonntiusqoxlh4 found: installing from source
==> Fetching https://files.pythonhosted.org/packages/py3/p/pip/pip-22.1.2-py3-none-any.whl
==> No patches needed for py-pip
==> py-pip: Executing phase: 'install'
==> py-pip: Successfully installed py-pip-22.1.2-kr5xkjbz6tmntfcv7ulonntiusqoxlh4
Fetch: 0.73s. Build: 4.19s. Total: 4.92s.
[+] /root/.spack/bootstrap/store/linux-debian11-x86_64/gcc-10.2.1/py-pip-22.1.2-kr5xkjbz6tmntfcv7ulonntiusqoxlh4
==> Waiting for py-setuptools-63.0.0-cl4y4lxxjoogapallcx7ghp7dbg3kvmy
�[1F�[J==> Installing py-setuptools-63.0.0-cl4y4lxxjoogapallcx7ghp7dbg3kvmy
==> No binary for py-setuptools-63.0.0-cl4y4lxxjoogapallcx7ghp7dbg3kvmy found: installing from source
==> Fetching https://files.pythonhosted.org/packages/py3/s/setuptools/setuptools-63.0.0-py3-none-any.whl
==> No patches needed for py-setuptools
==> py-setuptools: Executing phase: 'install'
==> py-setuptools: Successfully installed py-setuptools-63.0.0-cl4y4lxxjoogapallcx7ghp7dbg3kvmy
Fetch: 0.70s. Build: 1.27s. Total: 1.97s.
[+] /root/.spack/bootstrap/store/linux-debian11-x86_64/gcc-10.2.1/py-setuptools-63.0.0-cl4y4lxxjoogapallcx7ghp7dbg3kvmy
==> Waiting for py-wheel-0.37.1-eeqayivcywlyfxs7ou2cprtx364gah3n
�[1F�[J==> Installing py-wheel-0.37.1-eeqayivcywlyfxs7ou2cprtx364gah3n
==> No binary for py-wheel-0.37.1-eeqayivcywlyfxs7ou2cprtx364gah3n found: installing from source
==> Fetching https://files.pythonhosted.org/packages/py2.py3/w/wheel/wheel-0.37.1-py2.py3-none-any.whl
==> No patches needed for py-wheel
==> py-wheel: Executing phase: 'install'
==> py-wheel: Successfully installed py-wheel-0.37.1-eeqayivcywlyfxs7ou2cprtx364gah3n
Fetch: 0.70s. Build: 0.63s. Total: 1.33s.
[+] /root/.spack/bootstrap/store/linux-debian11-x86_64/gcc-10.2.1/py-wheel-0.37.1-eeqayivcywlyfxs7ou2cprtx364gah3n
==> Waiting for py-typed-ast-1.4.3-ohz3cf5v4exctirwo3dbbdnd5sty5cwo
�[1F�[J==> Installing py-typed-ast-1.4.3-ohz3cf5v4exctirwo3dbbdnd5sty5cwo
==> No binary for py-typed-ast-1.4.3-ohz3cf5v4exctirwo3dbbdnd5sty5cwo found: installing from source
==> Fetching https://mirror.spack.io/_source-cache/archive/fb/fb1bbeac803adea29cedd70781399c99138358c26d05fcbd23c13016b7f5ec65.tar.gz
==> No patches needed for py-typed-ast
==> py-typed-ast: Executing phase: 'install'
==> py-typed-ast: Successfully installed py-typed-ast-1.4.3-ohz3cf5v4exctirwo3dbbdnd5sty5cwo
Fetch: 0.57s. Build: 14.18s. Total: 14.76s.
[+] /root/.spack/bootstrap/store/linux-debian11-x86_64/gcc-10.2.1/py-typed-ast-1.4.3-ohz3cf5v4exctirwo3dbbdnd5sty5cwo
==> Waiting for py-pyparsing-3.0.6-gjrsccn4jdg2nvjvi3qu4otlhbnssuby
�[1F�[J==> Installing py-pyparsing-3.0.6-gjrsccn4jdg2nvjvi3qu4otlhbnssuby
==> No binary for py-pyparsing-3.0.6-gjrsccn4jdg2nvjvi3qu4otlhbnssuby found: installing from source
==> Fetching https://mirror.spack.io/_source-cache/archive/d9/d9bdec0013ef1eb5a84ab39a3b3868911598afa494f5faa038647101504e2b81.tar.gz
==> No patches needed for py-pyparsing
==> py-pyparsing: Executing phase: 'install'
==> py-pyparsing: Successfully installed py-pyparsing-3.0.6-gjrsccn4jdg2nvjvi3qu4otlhbnssuby
Fetch: 0.08s. Build: 2.23s. Total: 2.31s.
[+] /root/.spack/bootstrap/store/linux-debian11-x86_64/gcc-10.2.1/py-pyparsing-3.0.6-gjrsccn4jdg2nvjvi3qu4otlhbnssuby
==> Waiting for py-flit-core-3.6.0-x4kihu4y6glvaj6lwrm7dx5fq37fad4n
�[1F�[J==> Installing py-flit-core-3.6.0-x4kihu4y6glvaj6lwrm7dx5fq37fad4n
==> No binary for py-flit-core-3.6.0-x4kihu4y6glvaj6lwrm7dx5fq37fad4n found: installing from source
==> Fetching https://mirror.spack.io/_source-cache/archive/58/5892962ab8b8ea945835b3a288fe9dd69316f1903d5288c3f5cafdcdd04756ad.tar.gz
==> No patches needed for py-flit-core
==> py-flit-core: Executing phase: 'install'
==> py-flit-core: Successfully installed py-flit-core-3.6.0-x4kihu4y6glvaj6lwrm7dx5fq37fad4n
Fetch: 0.05s. Build: 0.99s. Total: 1.05s.
[+] /root/.spack/bootstrap/store/linux-debian11-x86_64/gcc-10.2.1/py-flit-core-3.6.0-x4kihu4y6glvaj6lwrm7dx5fq37fad4n
==> Waiting for py-mypy-extensions-0.4.3-lj6qreergppe4w3pic4pfvcyjfzz5on6
�[1F�[J==> Installing py-mypy-extensions-0.4.3-lj6qreergppe4w3pic4pfvcyjfzz5on6
==> No binary for py-mypy-extensions-0.4.3-lj6qreergppe4w3pic4pfvcyjfzz5on6 found: installing from source
==> Fetching https://mirror.spack.io/_source-cache/archive/2d/2d82818f5bb3e369420cb3c4060a7970edba416647068eb4c5343488a6c604a8.tar.gz
==> No patches needed for py-mypy-extensions
==> py-mypy-extensions: Executing phase: 'install'
==> py-mypy-extensions: Successfully installed py-mypy-extensions-0.4.3-lj6qreergppe4w3pic4pfvcyjfzz5on6
Fetch: 0.04s. Build: 1.35s. Total: 1.39s.
[+] /root/.spack/bootstrap/store/linux-debian11-x86_64/gcc-10.2.1/py-mypy-extensions-0.4.3-lj6qreergppe4w3pic4pfvcyjfzz5on6
==> Waiting for py-tomli-1.2.2-v3nnbsc6nav3goqcifebmvmtbcuiit5z
�[1F�[J==> Installing py-tomli-1.2.2-v3nnbsc6nav3goqcifebmvmtbcuiit5z
==> No binary for py-tomli-1.2.2-v3nnbsc6nav3goqcifebmvmtbcuiit5z found: installing from source
==> Fetching https://mirror.spack.io/_source-cache/archive/f0/f04066f68f5554911363063a30b108d2b5a5b1a010aa8b6132af78489fe3aade
==> No patches needed for py-tomli
==> py-tomli: Executing phase: 'install'
==> py-tomli: Successfully installed py-tomli-1.2.2-v3nnbsc6nav3goqcifebmvmtbcuiit5z
Fetch: 0.05s. Build: 0.88s. Total: 0.92s.
[+] /root/.spack/bootstrap/store/linux-debian11-x86_64/gcc-10.2.1/py-tomli-1.2.2-v3nnbsc6nav3goqcifebmvmtbcuiit5z
==> Waiting for py-pathspec-0.9.0-3nk6eb6i3uun4f43jycbpxl44npjdgjt
�[1F�[J==> Installing py-pathspec-0.9.0-3nk6eb6i3uun4f43jycbpxl44npjdgjt
==> No binary for py-pathspec-0.9.0-3nk6eb6i3uun4f43jycbpxl44npjdgjt found: installing from source
==> Fetching https://mirror.spack.io/_source-cache/archive/e5/e564499435a2673d586f6b2130bb5b95f04a3ba06f81b8f895b651a3c76aabb1.tar.gz
==> No patches needed for py-pathspec
==> py-pathspec: Executing phase: 'install'
==> py-pathspec: Successfully installed py-pathspec-0.9.0-3nk6eb6i3uun4f43jycbpxl44npjdgjt
Fetch: 0.11s. Build: 1.86s. Total: 1.98s.
[+] /root/.spack/bootstrap/store/linux-debian11-x86_64/gcc-10.2.1/py-pathspec-0.9.0-3nk6eb6i3uun4f43jycbpxl44npjdgjt
==> Waiting for py-packaging-21.3-k4eh5736pleeuqwsdb3kbortbxx2lzao
�[1F�[J==> Installing py-packaging-21.3-k4eh5736pleeuqwsdb3kbortbxx2lzao
==> No binary for py-packaging-21.3-k4eh5736pleeuqwsdb3kbortbxx2lzao found: installing from source
==> Fetching https://mirror.spack.io/_source-cache/archive/dd/dd47c42927d89ab911e606518907cc2d3a1f38bbd026385970643f9c5b8ecfeb.tar.gz
==> No patches needed for py-packaging
==> py-packaging: Executing phase: 'install'
==> py-packaging: Successfully installed py-packaging-21.3-k4eh5736pleeuqwsdb3kbortbxx2lzao
Fetch: 0.05s. Build: 1.56s. Total: 1.62s.
[+] /root/.spack/bootstrap/store/linux-debian11-x86_64/gcc-10.2.1/py-packaging-21.3-k4eh5736pleeuqwsdb3kbortbxx2lzao
==> Waiting for py-typing-extensions-4.3.0-t6u5cj3hmagsk3yu2eqesgcfopxeffw4
�[1F�[J==> Installing py-typing-extensions-4.3.0-t6u5cj3hmagsk3yu2eqesgcfopxeffw4
==> No binary for py-typing-extensions-4.3.0-t6u5cj3hmagsk3yu2eqesgcfopxeffw4 found: installing from source
==> Fetching https://files.pythonhosted.org/packages/source/t/typing_extensions/typing_extensions-4.3.0.tar.gz
==> No patches needed for py-typing-extensions
==> py-typing-extensions: Executing phase: 'install'
==> py-typing-extensions: Successfully installed py-typing-extensions-4.3.0-t6u5cj3hmagsk3yu2eqesgcfopxeffw4
Fetch: 0.75s. Build: 0.85s. Total: 1.60s.
[+] /root/.spack/bootstrap/store/linux-debian11-x86_64/gcc-10.2.1/py-typing-extensions-4.3.0-t6u5cj3hmagsk3yu2eqesgcfopxeffw4
==> Waiting for py-setuptools-scm-6.3.2-qfkihmugbwodwwwuguyonut65s6flowc
�[1F�[J==> Installing py-setuptools-scm-6.3.2-qfkihmugbwodwwwuguyonut65s6flowc
==> No binary for py-setuptools-scm-6.3.2-qfkihmugbwodwwwuguyonut65s6flowc found: installing from source
==> Fetching https://mirror.spack.io/_source-cache/archive/a4/a49aa8081eeb3514eb9728fa5040f2eaa962d6c6f4ec9c32f6c1fba88f88a0f2.tar.gz
==> No patches needed for py-setuptools-scm
==> py-setuptools-scm: Executing phase: 'install'
==> py-setuptools-scm: Successfully installed py-setuptools-scm-6.3.2-qfkihmugbwodwwwuguyonut65s6flowc
Fetch: 0.32s. Build: 1.48s. Total: 1.79s.
[+] /root/.spack/bootstrap/store/linux-debian11-x86_64/gcc-10.2.1/py-setuptools-scm-6.3.2-qfkihmugbwodwwwuguyonut65s6flowc
==> Waiting for py-zipp-3.6.0-kfl547pasqkwbd55umxc2htwpyuhu2bl
�[1F�[J==> Installing py-zipp-3.6.0-kfl547pasqkwbd55umxc2htwpyuhu2bl
==> No binary for py-zipp-3.6.0-kfl547pasqkwbd55umxc2htwpyuhu2bl found: installing from source
==> Fetching https://mirror.spack.io/_source-cache/archive/71/71c644c5369f4a6e07636f0aa966270449561fcea2e3d6747b8d23efaa9d7832.tar.gz
==> No patches needed for py-zipp
==> py-zipp: Executing phase: 'install'
==> py-zipp: Successfully installed py-zipp-3.6.0-kfl547pasqkwbd55umxc2htwpyuhu2bl
Fetch: 0.05s. Build: 1.67s. Total: 1.71s.
[+] /root/.spack/bootstrap/store/linux-debian11-x86_64/gcc-10.2.1/py-zipp-3.6.0-kfl547pasqkwbd55umxc2htwpyuhu2bl
==> Waiting for py-platformdirs-2.4.0-sglttxrlclpkqdbmi3mwsflk4hxpa6zp
�[1F�[J==> Installing py-platformdirs-2.4.0-sglttxrlclpkqdbmi3mwsflk4hxpa6zp
==> No binary for py-platformdirs-2.4.0-sglttxrlclpkqdbmi3mwsflk4hxpa6zp found: installing from source
==> Fetching https://mirror.spack.io/_source-cache/archive/36/367a5e80b3d04d2428ffa76d33f124cf11e8fff2acdaa9b43d545f5c7d661ef2.tar.gz
==> No patches needed for py-platformdirs
==> py-platformdirs: Executing phase: 'install'
==> py-platformdirs: Successfully installed py-platformdirs-2.4.0-sglttxrlclpkqdbmi3mwsflk4hxpa6zp
Fetch: 0.05s. Build: 1.74s. Total: 1.80s.
[+] /root/.spack/bootstrap/store/linux-debian11-x86_64/gcc-10.2.1/py-platformdirs-2.4.0-sglttxrlclpkqdbmi3mwsflk4hxpa6zp
==> Waiting for py-importlib-metadata-4.11.1-pyoqrttiswmtbjbvkfpx5yb7byxq7ed2
�[1F�[J==> Installing py-importlib-metadata-4.11.1-pyoqrttiswmtbjbvkfpx5yb7byxq7ed2
==> No binary for py-importlib-metadata-4.11.1-pyoqrttiswmtbjbvkfpx5yb7byxq7ed2 found: installing from source
==> Fetching https://mirror.spack.io/_source-cache/archive/17/175f4ee440a0317f6e8d81b7f8d4869f93316170a65ad2b007d2929186c8052c.tar.gz
==> No patches needed for py-importlib-metadata
==> py-importlib-metadata: Executing phase: 'install'
==> py-importlib-metadata: Successfully installed py-importlib-metadata-4.11.1-pyoqrttiswmtbjbvkfpx5yb7byxq7ed2
Fetch: 0.34s. Build: 1.65s. Total: 1.99s.
[+] /root/.spack/bootstrap/store/linux-debian11-x86_64/gcc-10.2.1/py-importlib-metadata-4.11.1-pyoqrttiswmtbjbvkfpx5yb7byxq7ed2
==> Waiting for py-click-8.0.3-khcgp3hg4qcwgfib2sqpt3bly3l7n5vl
�[1F�[J==> Installing py-click-8.0.3-khcgp3hg4qcwgfib2sqpt3bly3l7n5vl
==> No binary for py-click-8.0.3-khcgp3hg4qcwgfib2sqpt3bly3l7n5vl found: installing from source
==> Fetching https://mirror.spack.io/_source-cache/archive/41/410e932b050f5eed773c4cda94de75971c89cdb3155a72a0831139a79e5ecb5b.tar.gz
==> No patches needed for py-click
==> py-click: Executing phase: 'install'
==> py-click: Successfully installed py-click-8.0.3-khcgp3hg4qcwgfib2sqpt3bly3l7n5vl
Fetch: 0.13s. Build: 2.32s. Total: 2.44s.
[+] /root/.spack/bootstrap/store/linux-debian11-x86_64/gcc-10.2.1/py-click-8.0.3-khcgp3hg4qcwgfib2sqpt3bly3l7n5vl
==> Waiting for py-black-21.12b0-ve66ypxsetvccstd55nrtc2cpre3qaw7
�[1F�[J==> Installing py-black-21.12b0-ve66ypxsetvccstd55nrtc2cpre3qaw7
==> No binary for py-black-21.12b0-ve66ypxsetvccstd55nrtc2cpre3qaw7 found: installing from source
==> Fetching https://files.pythonhosted.org/packages/source/b/black/black-21.12b0.tar.gz
==> No patches needed for py-black
==> py-black: Executing phase: 'install'
==> py-black: Successfully installed py-black-21.12b0-ve66ypxsetvccstd55nrtc2cpre3qaw7
Fetch: 0.77s. Build: 2.59s. Total: 3.37s.
[+] /root/.spack/bootstrap/store/linux-debian11-x86_64/gcc-10.2.1/py-black-21.12b0-ve66ypxsetvccstd55nrtc2cpre3qaw7
==> Running isort checks
isort checks were clean
==> Running mypy checks
Success: no issues found in 555 source files
mypy checks were clean
==> Running black checks
reformatted var/spack/repos/builtin/packages/py-meson/package.py
reformatted var/spack/repos/builtin/packages/py-meson-python/package.py
reformatted var/spack/repos/builtin/packages/py-pyproject-metadata/package.py
All done! ✨ 🍰 ✨
3 files reformatted.
black checks were clean
==> Running flake8 checks
flake8 checks were clean
==> spack style checks were clean
I've updated the branch with isort fixes. But it looks like I'm not able to push to your branch. 😭️ Did you check maintainer can edit when you opened the PR? |
238c1e9 to
1665f1d
Compare
1665f1d to
b417df0
Compare
This PR adds Yet Another Build Backend (YABB) to the Python ecosystem. In particular, the latest version of scipy switched from setuptools to meson for its builds. I also updated the documentation to describe this new build backend. Since almost all build backends share the same format for listing dependencies, I consolidated much of this information so I only list differences between each build system.