* gnu/packages/python-xyz.scm (python-markupsafe): Update to 3.0.2.
[source]: Update project name (it is lowercase now).
[build-system]: Use pyproject-build-system.
[arguments]: Run pytest with default verbosity provided by the build
system.
[native-inputs]: Add python-setuptools and python-wheel.
Change-Id: I76b03fd0c28bbfdd2e5f2260fd34cba0f39d08d9
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
python-six-bootstrap is no longer required, this change removes it and
refactor python-six as a stand alone package.
* gnu/packages/python-build.scm (python-six-bootstrap): Remove variable.
* gnu/packages/python-xyz.scm (python-six): Do not inherit, re-use
package definition from python-six-bootstrap.
(python2-six) [native-inputs]: Add python-setuptools, and python-wheel.
Change-Id: Ia4abf667e0a2df65c171b3c8f5808d8e6d597b17
* gnu/packages/python-xyz.scm (python-cython):
[arguments] <test-backend>: Use 'custom.
<test-flags>: Skip one test on i686-linux.
<phases>: Use default 'check; add 'pre-check.
Change-Id: Ia2aa75cf341f9db043c2c2bc99ed56ef6816ca21
* gnu/packages/python-xyz.scm (python-cython): Overwrite with
python-cython-3 and making it a default.
(python-cython-0): New variable, copy of python-cython@0.23.32.
(python-cython-3): Set to python-cython.
Change-Id: I6af9caeb77cd0be352b814baae7e37c2eafb00e7
Reduce closure size by removing redundant python-setuptools and
python-wheel as it was a workaround import issue which was resolved by
using flit_core.buildapi directly.
* gnu/packages/python-build.scm (python-flit-scm): Fix indentation.
[arguments] <build-backend>: Let it auto detect.
<phases>: Add 'fix-backend.
[native-inputs]: Remove python-setuptools and python-wheel.
Change-Id: Ib3f591365411ba5f8b710a8256a324dfb7d5b565
* gnu/packages/python-xyz.scm (python-iniconfig): Update to 2.1.0.
[build-system]: Use pyproject.
[arguments] <test?>: Visually disable them as PyPI does not provide
tests and tests introduce cycle with Pytest.
[native-inputs]: Add python-hatch-vcs, python-hatchling.
Change-Id: I20f3bc55fbd94aa2c79ce77e35f1a62aacd4af14
* gnu/packages/python-build.scm (python-pathspec): Update to 0.12.1.
[build-system]: Use pyproject.
[arguments] <test-backend>: Use 'unittest.
[native-inputs]: Add python-flit-core and python-setuptools.
Change-Id: I2ac5abfd1acc54849ad523cde8afd5da320849e0
The current error is very uninformative, use a proper exception to
give more information when this happens:
`In procedure map: Wrong type argument: #f`
After this patch:
`In procedure raise-exception:
ERROR:
1. &no-wheels-found`
* guix/build/pyproject-build-system.scm (&no-wheels-found): Add exception.
(install): Handle exception.
Change-Id: Ie72d3b50dfededb2d598162672cdb4321c42b632
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
In some rare cases, the dest-path can be an elf-file, which are
unreadable by substitute*, leading to an error instead of just
continuing which makes more sense in this case.
* guix/build-system/pyproject.scm (check): Guard substitution attempt
with basic readability guarantees.
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Using rename-file, the destination had to be empty otherwise it would error
out. This has been fixed by the use of copy-recursively, really merging them.
Changing this makes merge-directories mostly a duplicate of
copy-recursively, thus fully switch to copy-recursively.
* guix/build/pyproject-build-system.scm (install)
<python-hashbang>: Remove it, used only once.
<merge-directories>: Remove it, replace its calls by copy-recursively
and delete-file-recursively.
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
* guix/build/pyproject-build-system(check): Add python test-backend.
This will help in cases where a simple `python -m module args` call has
to be made instead of fully replacing the 'check phase, e.g. unittest
or django. This is never enabled unless #:test-backend 'python is set,
so it doesn't break anything.
As an example, the following snippet...
(arguments
(list #:phases #~(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "python" "-m" "unittest"
"diff_match_patch.tests")))))))
...can be transformed like this:
(arguments
'(#:test-backend 'python
#:test-flags (list "-m" "unittest" "diff_match_patch.tests")))
Change-Id: I4919a3e01d64864e3c328609fbcce7df5b3dfe51
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
* guix/build/pyproject-build-system.scm: Hide the 'delete' symbol from
the imported (guix build utils) module to avoid a naming clash warning.
Change-Id: I48f97bf29b5282de1440c68d533c8300d4d11362
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>