| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
| |
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
|
|
|
|
|
|
| |
Move a few minor setup calls from distutils-r1_src_configure()
to distutils-r1_python_prepare_all(). Since we do not declare default
configure sub-phases, it is easy to override src_configure() entirely
and accidentally skip these steps. We already warn for missing
distutils-r1_python_prepare_all() call, so let's move them there.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
| |
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
|
|
| |
Use gpep517 --config-json support to pass DISTUTILS_ARGS in PEP517 mode.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
| |
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
| |
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
|
|
| |
Switch the distutils-r1.eclass to gpep517 code branches unconditionally.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
|
|
|
|
| |
dev-python/installer has made incompatible changes in 0.5.1 that breaks
the non-gpep517 code path. Add a version limit prior to bumping,
in case we end up reverting gpep517 changes.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
|
| |
Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
|
|
|
| |
With only indentation changes.
Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
|
|
|
|
| |
Account for distutils-r1_python_compile arguments when counting
makejobs. This is needed to correctly detect forced "-j1",
e.g. in dev-python/pandas.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
| |
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
|
|
|
|
| |
Run parallel build_ext only if there are at least two potential source
files to compile. This call is expensive and parallel builds do not
benefit us if there is only one file to compile.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
| |
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
| |
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
|
|
| |
Fixes: 6451cf647f04b31a56ea2dc8c3f84a70c2468f87
Thanks-to: Ionen Wolkens <ionen@gentoo.org>
Signed-off-by: Sam James <sam@gentoo.org>
|
|
|
|
|
|
|
|
|
| |
Bump min. dependency versions to match oldest stable in ::gentoo,
in order to avoid requiring developers to repeat them in BDEPEND
with higher version.
Closes: https://github.com/gentoo/gentoo/pull/24965
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
|
|
|
|
|
|
| |
Print deprecation warnings for non-PEP517 builds using plain distutils.
This is a small subset of Python packages overall, and the first step
towards deprecating legacy build support. Transitioning pure distutils
packages is also important to avoid .egg-info collisions when we switch
from CPython distutils to setuptools-vendored distutils.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
|
|
|
|
| |
Introduce a distutils_write_namespace helper that can be used to
temporarily write a namespace __init__.py as needed to run tests
when legacy dev-python/namespace-* packages are installed.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
|
|
|
|
|
| |
Skip issuing build_ext when there appears to be no .c/.pyx files.
Since starting setuptools is expensive, this gives a major speedup
to building pure Python packages. If the check misfires, the worst
that can happen is that C extensions will be built serialized.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Call `setup.py build_ext` instead of the wholesale `build` in PEP517
mode. After all, the call is not strictly necessary; it is only done
in order to build C extensions in parallel (PEP517 backend does not
support specifying job count). By skipping the other tasks build
command does (and then repeats via PEP517 call), the ebuild can build
a few seconds faster.
Since this is a potentially breaking change (but very unlikely to
actually break anything), let's test it behind GPEP517_TESTING.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
| |
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
| |
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Prefer using "rm -rf build" directly over "setup.py clean -a". This
has three advantages:
1. It is much faster.
2. It works on packages that have broken "setup.py clean",
e.g. dev-python/pydantic.
3. It works on packages that block "setup.py clean" and tell you to use
"git clean" (sic!), e.g. dev-python/scipy.
This is a potentially (but unlikely) breaking change, so do it
conditionally to GPEP517_TESTING.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
|
|
|
|
| |
dev-python/jupyter_packaging depends on these directly, and packages
using it don't list these deps in their requires, so I guess it doesn't
make sense for us to copy them.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
| |
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
| |
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
|
|
|
|
|
| |
Support GPEP517_TESTING variable to enable using dev-python/gpep517
instead of inline Python snippets. This is meant to provide
the necessary testing before we stabilize it and switch over.
Closes: https://github.com/gentoo/gentoo/pull/24910
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
| |
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
|
|
|
|
|
|
| |
This does not handle packages without pyproject.toml correctly.
Reverts: c8b8dc11f7235ad4f7b05f24bd75a85c110ec400
Closes: https://bugs.gentoo.org/836660
Closes: https://bugs.gentoo.org/836661
Closes: https://bugs.gentoo.org/836662
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
| |
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
|
| |
Bug: https://bugs.gentoo.org/835396
Signed-off-by: Ulrich Müller <ulm@gentoo.org>
|
|
|
|
| |
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
|
|
| |
Protect build-backend getter against stray output to stdout.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
|
|
|
| |
Do not call PEP517 mode "experimental" anymore, and instead describe
the potential problem with it.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
| |
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
| |
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
|
| |
Closes: https://bugs.gentoo.org/832782
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update _python_impl_matches() (used to implement python_gen*,
python_setup) to support specifying stdlib versions ("3.8", "3.9")
in addition to exact implementation names. This makes handling PyPy3
version changes much easier when dealing with backports.
For example, if you specify "3.8", then the spec will match python3_8
and pypy3, for as long as we supply PyPy3.8. Once we upgrade to PyPy3.9
completely, it will stop matching pypy3 and we won't have to manually
keep updating these deps.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
|
|
|
| |
Use heredocs instead of inlining longish scripts in "python -c",
for greater readability. Thanks to arthurzam for the suggestion.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
| |
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
|
|
|
| |
Fix the has_version calls for distutils_enable_sphinx to use -b option
(--host-root in earlier EAPIs).
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
|
|
| |
Split the wheel build & install logic into a a new helper.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
|
|
|
| |
Use the wheel name returned by build_wheel() rather than trying to guess
it from WHEEL_DIR.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
| |
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
|
|
|
| |
Restore the QA warning (proviously issued as part of install-qa-check.d)
for combining DISTUTILS_USE_SETUPTOOLS and DISTUTILS_OPTIONAL.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
|
|
|
|
|
|
| |
The PEP 517 build-time deps have gotten more complex, and largely depend
on the internal eclass logic used to build and install wheels.
Introduce a DISTUTILS_DEPS output variable that contains the correct
BDEPEND string for use in DISTUTILS_OPTIONAL=1 ebuilds.
Bug: https://bugs.gentoo.org/832337
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
| |
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix distutils-r1 phase functions to correctly pass through the return
value from the subphases. This fixes e.g. the mistake of virtx
not failing in the following case:
src_test() {
virtx distutils-r1_src_test
}
python_test() {
epytest
}
This is because virtx implicitly uses nonfatal and epytest uses
`die -n`. However, since the return value was not passed through, virtx
never knew that anything has failed.
While this covers only trivial cases and this is better solved via dying
explicitly in the redefined python_test(), there's no harm in adding
this passthrough.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|