New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
6.4.0: pytest is failing in testing/test_integration.py::test_provides_toml_exta
unit
#668
Comments
its absolutely required to add the prefix as a site dir i strongly suspect your setup is simply broken as usual |
Hmm .. to be honest I do not understand that phrase 🤔
I'm building now packages with minimal set of modules in build env. Package Version
-------------------------- -------------------
attrs 21.4.0
build 0.7.0
chardet 4.0.0
cycler 0.11.0
dbus-python 1.2.18
distlib 0.3.4
distro 1.6.0
extras 1.0.0
filelock 3.4.2
fixtures 3.0.0
fonttools 4.28.5
gpg 1.16.0-unknown
iniconfig 1.1.1
jupyter-packaging-test-foo 0.1
kiwisolver 1.3.2
libcomps 0.1.18
lit 13.0.0
lxml 4.7.1
matplotlib 3.5.1
meson 0.61.1
numpy 1.22.0
olefile 0.46
packaging 21.3
pbr 5.8.0
pep517 0.12.0
Pillow 9.0.0
pip 21.3.1
platformdirs 2.4.1
pluggy 1.0.0
py 1.11.0
pycairo 1.20.1
PyGObject 3.42.0
pyparsing 3.0.6
pytest 6.2.5
python-dateutil 2.8.2
rpm 4.17.0
setuptools 60.5.4.post20220117
six 1.16.0
testtools 2.5.0
toml 0.10.2
tomli 2.0.0
virtualenv 20.13.0
wheel 0.37.1 |
please provide more details of the distribution object aka which package/version as well as the metadata items |
That test is fragile (or wrong). It checks if the first extra contains the sub-string "toml" in it. It should be: assert "toml" in dist.metadata.get_all("Provides-Extra") Although that doesn't explain why |
Okay, you are using an unpublished version of setuptools. For some reason 60.5.1 through 60.5.4 haven't been published on PyPI. |
I can reproduce this with setuptools 60.5.4, |
I'm not 100% sure am I looking for right things [tkloczko@ss-desktop SPECS]$ grep Provides-Extra /usr/lib*/python3.8/site-packages/*.dist-info/*
/usr/lib/python3.8/site-packages/attrs-21.4.0.dist-info/METADATA:Provides-Extra: dev
/usr/lib/python3.8/site-packages/attrs-21.4.0.dist-info/METADATA:Provides-Extra: docs
/usr/lib/python3.8/site-packages/attrs-21.4.0.dist-info/METADATA:Provides-Extra: tests
/usr/lib/python3.8/site-packages/attrs-21.4.0.dist-info/METADATA:Provides-Extra: tests_no_zope
/usr/lib/python3.8/site-packages/build-0.7.0.dist-info/METADATA:Provides-Extra: docs
/usr/lib/python3.8/site-packages/build-0.7.0.dist-info/METADATA:Provides-Extra: test
/usr/lib/python3.8/site-packages/build-0.7.0.dist-info/METADATA:Provides-Extra: typing
/usr/lib/python3.8/site-packages/build-0.7.0.dist-info/METADATA:Provides-Extra: virtualenv
/usr/lib/python3.8/site-packages/filelock-3.4.2.dist-info/METADATA:Provides-Extra: docs
/usr/lib/python3.8/site-packages/filelock-3.4.2.dist-info/METADATA:Provides-Extra: testing
/usr/lib/python3.8/site-packages/platformdirs-2.4.1.dist-info/METADATA:Provides-Extra: docs
/usr/lib/python3.8/site-packages/platformdirs-2.4.1.dist-info/METADATA:Provides-Extra: test
/usr/lib/python3.8/site-packages/pluggy-1.0.0.dist-info/METADATA:Provides-Extra: dev
/usr/lib/python3.8/site-packages/pluggy-1.0.0.dist-info/METADATA:Provides-Extra: testing
/usr/lib/python3.8/site-packages/pytest-6.2.5.dist-info/METADATA:Provides-Extra: testing
/usr/lib/python3.8/site-packages/setuptools-60.5.4.post20220117.dist-info/METADATA:Provides-Extra: certs
/usr/lib/python3.8/site-packages/setuptools-60.5.4.post20220117.dist-info/METADATA:Provides-Extra: docs
/usr/lib/python3.8/site-packages/setuptools-60.5.4.post20220117.dist-info/METADATA:Provides-Extra: ssl
/usr/lib/python3.8/site-packages/setuptools-60.5.4.post20220117.dist-info/METADATA:Provides-Extra: testing
/usr/lib/python3.8/site-packages/setuptools-60.5.4.post20220117.dist-info/METADATA:Provides-Extra: testing-integration
/usr/lib/python3.8/site-packages/virtualenv-20.13.0.dist-info/METADATA:Provides-Extra: docs
/usr/lib/python3.8/site-packages/virtualenv-20.13.0.dist-info/METADATA:Provides-Extra: testing
/usr/lib/python3.8/site-packages/wheel-0.37.1.dist-info/METADATA:Provides-Extra: test So there is no here [tkloczko@ss-desktop setuptools_scm-6.4.0.dist-info]$ grep Provides-Extra /home/tkloczko/rpmbuild/BUILDROOT/python-setuptools_scm-6.4.0-2.fc35.x86_64/usr/lib/python3.8/site-packages/setuptools_scm-6.4.0.dist-info/METADATA
Provides-Extra: test
Provides-Extra: toml |
Yes, the |
setuptools is putting test before toml when invoked with PEP 517. It's only working in CI because |
OK .. as I'm using |
will bugfix tommorow |
Good to know that my methodology reporting issues is improving 😉 |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
…the distribution
Looks like 6.4.1 pytest is failing now on new thing .. + PYTHONPATH=/home/tkloczko/rpmbuild/BUILDROOT/python-setuptools_scm-6.4.1-2.fc35.x86_64//usr/lib/python3.8/site-packages
+ pytest -ra --ignore testing/test_hg_git.py
INTERNALERROR> Traceback (most recent call last):
INTERNALERROR> File "/usr/lib/python3.8/site-packages/_pytest/main.py", line 265, in wrap_session
INTERNALERROR> config._do_configure()
INTERNALERROR> File "/usr/lib/python3.8/site-packages/_pytest/config/__init__.py", line 982, in _do_configure
INTERNALERROR> self.hook.pytest_configure.call_historic(kwargs=dict(config=self))
INTERNALERROR> File "/usr/lib/python3.8/site-packages/pluggy/_hooks.py", line 277, in call_historic
INTERNALERROR> res = self._hookexec(self.name, self.get_hookimpls(), kwargs, False)
INTERNALERROR> File "/usr/lib/python3.8/site-packages/pluggy/_manager.py", line 80, in _hookexec
INTERNALERROR> return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
INTERNALERROR> File "/usr/lib/python3.8/site-packages/pluggy/_callers.py", line 60, in _multicall
INTERNALERROR> return outcome.get_result()
INTERNALERROR> File "/usr/lib/python3.8/site-packages/pluggy/_result.py", line 60, in get_result
INTERNALERROR> raise ex[1].with_traceback(ex[2])
INTERNALERROR> File "/usr/lib/python3.8/site-packages/pluggy/_callers.py", line 39, in _multicall
INTERNALERROR> res = hook_impl.function(*args)
INTERNALERROR> File "/usr/lib/python3.8/site-packages/pytest_asyncio/plugin.py", line 191, in pytest_configure
INTERNALERROR> config.issue_config_time_warning(LEGACY_MODE, stacklevel=2)
INTERNALERROR> File "/usr/lib/python3.8/site-packages/_pytest/config/__init__.py", line 1321, in issue_config_time_warning
INTERNALERROR> warnings.warn(warning, stacklevel=stacklevel)
INTERNALERROR> DeprecationWarning: The 'asyncio_mode' default value will change to 'strict' in future, please explicitly use 'asyncio_mode=strict' or 'asyncio_mode=auto' in pytest configuration file. |
Ups sorry .. I;ve executed that build in wrong env. + PYTHONPATH=/home/tkloczko/rpmbuild/BUILDROOT/python-setuptools_scm-6.4.1-2.fc35.x86_64//usr/lib/python3.8/site-packages
+ pytest -ra --ignore testing/test_hg_git.py
=========================================================================== test session starts ============================================================================
platform linux -- Python 3.8.12, pytest-6.2.5, py-1.11.0, pluggy-1.0.0
setuptools version 60.5.4.post20220117 from '/usr/lib/python3.8/site-packages/setuptools/__init__.py'
setuptools_scm version 6.4.1 from '/home/tkloczko/rpmbuild/BUILDROOT/python-setuptools_scm-6.4.1-2.fc35.x86_64/usr/lib/python3.8/site-packages/setuptools_scm/__init__.py'
rootdir: /home/tkloczko/rpmbuild/BUILD/setuptools_scm-6.4.1, configfile: tox.ini, testpaths: testing
plugins: datadir-1.3.1, regressions-2.3.0, anyio-3.3.4, tornasync-0.6.0.post2, httpbin-1.0.1, trio-0.7.0, cov-3.0.0
collected 236 items
testing/test_basic_api.py ................. [ 7%]
testing/test_config.py ........... [ 11%]
testing/test_file_finder.py .s.s.s.s.s.s.s.s.s.s.s..ss.s.s.s.s.s [ 27%]
testing/test_functions.py ......................... [ 37%]
testing/test_git.py ...............x...........X..... [ 51%]
testing/test_integration.py ................ [ 58%]
testing/test_main.py .... [ 60%]
testing/test_mercurial.py ssssssssssssssss [ 66%]
testing/test_regressions.py ....s [ 69%]
testing/test_setuptools_support.py sssssssssssssssssssssssssssss [ 81%]
testing/test_version.py .........................................x.. [100%]
========================================================================= short test summary info ==========================================================================
SKIPPED [18] testing/test_file_finder.py:24: hg executable not found
SKIPPED [5] testing/test_mercurial.py:37: hg executable not found
SKIPPED [1] testing/test_mercurial.py:49: hg executable not found
SKIPPED [1] testing/test_mercurial.py:55: hg executable not found
SKIPPED [1] testing/test_mercurial.py:69: hg executable not found
SKIPPED [1] testing/test_mercurial.py:97: hg executable not found
SKIPPED [1] testing/test_mercurial.py:112: hg executable not found
SKIPPED [1] testing/test_mercurial.py:122: hg executable not found
SKIPPED [1] testing/test_mercurial.py:147: hg executable not found
SKIPPED [1] testing/test_mercurial.py:152: hg executable not found
SKIPPED [1] testing/test_mercurial.py:159: hg executable not found
SKIPPED [1] testing/test_mercurial.py:171: hg executable not found
SKIPPED [1] testing/test_mercurial.py:181: hg executable not found
SKIPPED [1] testing/test_regressions.py:84: this bug is only valid on windows
SKIPPED [29] testing/test_setuptools_support.py:75: testing on legacy setuptools disabled, pass --test-legacy to run them
XFAIL testing/test_git.py::test_git_worktree_support
sometimes relative path results
XFAIL testing/test_version.py::test_calver_by_date_semver[SemVer dirty]
XPASS testing/test_git.py::test_non_dotted_version https://github.com/pypa/setuptools_scm/issues/449
========================================================== 169 passed, 64 skipped, 2 xfailed, 1 xpassed in 30.32s ========================================================== Thank you for fixing the issue 🙇 |
@kloczek happy it works again also sorry for my earlier tone, i let my frustration get the better of me |
No problem 😄 Thank you one more time 😄 |
@kloczek 3 major helpers would be
|
Please don't take avove as excuse. I'm only explaining my current situation. Thank you. |
i'm glad there is going to progress on this i'm well aware that build setups/pipelines that hat to be stomped out of nothing can be riddled with hard to communicate types of tech debts that will incur tolls on external communication, especially in those cases its important to find some ways/methods to provide ease of enviroment comprehension for the "outsiders" |
FYI .. I've already have been "awarded" few bans on github only because "I saw you recent tickets and you are reporting to much" or after reporting some pep517 related issues "We are not interested your custom/non-standard build procedures. Stop waste my time." 😄 |
thats what one gets when info dumping volunteers with excessive amounts of non-actionable reports |
Issue is that Fedora has few hundreds maintainers only on the area of the the python module so by definition rate per person of reported issue is few orders of magnitude lower even if total number of reported issues is higher 😄 |
v6.4.2 * fix #671 : NoReturn is not avaliable in painfully dead python 3.6 v6.4.1 * fix regression #669: restore get_version signature * fix #668: harden the selftest for distribution extras v6.4.0 * compatibility adjustments for setuptools >58 * only put minimal setuptools version into toml extra to warn people with old strict pins * coorectly handle hg-git self-use * better mercurial detection * modernize packaging setup * python 3.10 support * better handling of setuptools install command deprecation * consider pyproject.tomls when running as command * use list in git describe command to avoid shell expansions while supporting both windows and posix * add --strip-dev flag to python -m setuptools_scm to print the next guessed version cleanly * ensure no-guess-dev will fail on bad tags instead of generating invalid versions * ensure we use utc everywhere to avoid confusion References: pypa/setuptools_scm#668 pypa/setuptools_scm#669 pypa/setuptools_scm#671 Signed-off-by: Tim Orling <tim.orling@konsulko.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
v6.4.2 * fix #671 : NoReturn is not avaliable in painfully dead python 3.6 v6.4.1 * fix regression #669: restore get_version signature * fix #668: harden the selftest for distribution extras v6.4.0 * compatibility adjustments for setuptools >58 * only put minimal setuptools version into toml extra to warn people with old strict pins * coorectly handle hg-git self-use * better mercurial detection * modernize packaging setup * python 3.10 support * better handling of setuptools install command deprecation * consider pyproject.tomls when running as command * use list in git describe command to avoid shell expansions while supporting both windows and posix * add --strip-dev flag to python -m setuptools_scm to print the next guessed version cleanly * ensure no-guess-dev will fail on bad tags instead of generating invalid versions * ensure we use utc everywhere to avoid confusion References: pypa/setuptools_scm#668 pypa/setuptools_scm#669 pypa/setuptools_scm#671 (From OE-Core rev: 4f313897178e37b23efe861f1cdebc52bea54769) Signed-off-by: Tim Orling <tim.orling@konsulko.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
v6.4.2 * fix #671 : NoReturn is not avaliable in painfully dead python 3.6 v6.4.1 * fix regression #669: restore get_version signature * fix #668: harden the selftest for distribution extras v6.4.0 * compatibility adjustments for setuptools >58 * only put minimal setuptools version into toml extra to warn people with old strict pins * coorectly handle hg-git self-use * better mercurial detection * modernize packaging setup * python 3.10 support * better handling of setuptools install command deprecation * consider pyproject.tomls when running as command * use list in git describe command to avoid shell expansions while supporting both windows and posix * add --strip-dev flag to python -m setuptools_scm to print the next guessed version cleanly * ensure no-guess-dev will fail on bad tags instead of generating invalid versions * ensure we use utc everywhere to avoid confusion References: pypa/setuptools_scm#668 pypa/setuptools_scm#669 pypa/setuptools_scm#671 (From OE-Core rev: 4f313897178e37b23efe861f1cdebc52bea54769) Signed-off-by: Tim Orling <tim.orling@konsulko.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
v6.4.2 * fix #671 : NoReturn is not avaliable in painfully dead python 3.6 v6.4.1 * fix regression #669: restore get_version signature * fix #668: harden the selftest for distribution extras v6.4.0 * compatibility adjustments for setuptools >58 * only put minimal setuptools version into toml extra to warn people with old strict pins * coorectly handle hg-git self-use * better mercurial detection * modernize packaging setup * python 3.10 support * better handling of setuptools install command deprecation * consider pyproject.tomls when running as command * use list in git describe command to avoid shell expansions while supporting both windows and posix * add --strip-dev flag to python -m setuptools_scm to print the next guessed version cleanly * ensure no-guess-dev will fail on bad tags instead of generating invalid versions * ensure we use utc everywhere to avoid confusion References: pypa/setuptools_scm#668 pypa/setuptools_scm#669 pypa/setuptools_scm#671 Signed-off-by: Tim Orling <tim.orling@konsulko.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
v6.4.2 * fix #671 : NoReturn is not avaliable in painfully dead python 3.6 v6.4.1 * fix regression #669: restore get_version signature * fix #668: harden the selftest for distribution extras v6.4.0 * compatibility adjustments for setuptools >58 * only put minimal setuptools version into toml extra to warn people with old strict pins * coorectly handle hg-git self-use * better mercurial detection * modernize packaging setup * python 3.10 support * better handling of setuptools install command deprecation * consider pyproject.tomls when running as command * use list in git describe command to avoid shell expansions while supporting both windows and posix * add --strip-dev flag to python -m setuptools_scm to print the next guessed version cleanly * ensure no-guess-dev will fail on bad tags instead of generating invalid versions * ensure we use utc everywhere to avoid confusion References: pypa/setuptools_scm#668 pypa/setuptools_scm#669 pypa/setuptools_scm#671 (From OE-Core rev: 3ac37c743470ab778bc47110660f3e1b37c534ba) Signed-off-by: Tim Orling <tim.orling@konsulko.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
I'm trying to package your module as an rpm package. So I'm using the typical PEP517 based build, install and test cycle used on building packages from non-root account.
python3 -sBm build -w --no-isolation
build
with--no-isolation
I'm using during all processes oly locally installed modulesHere is pytest output:
The text was updated successfully, but these errors were encountered: