Bug#1026520: reprotest: FTBFS: AttributeError: module 're' has no attribute 'sre_parse'
Lucas Nussbaum
lucas at debian.org
Tue Dec 20 16:54:09 GMT 2022
Source: reprotest
Version: 0.7.22
Severity: serious
Justification: FTBFS
Tags: bookworm sid ftbfs
User: lucas at debian.org
Usertags: ftbfs-20221220 ftbfs-bookworm
Hi,
During a rebuild of all packages in sid, your package failed to build
on amd64.
Relevant part (hopefully):
> make[1]: Entering directory '/tmp/reprotest.wUfG3L/const_build_path'
> dh_python3 -p reprotest --recommends-section=compare
> make[1]: Leaving directory '/tmp/reprotest.wUfG3L/const_build_path'
> dh_installsystemduser -O--buildsystem=pybuild
> dh_perl -O--buildsystem=pybuild
> dh_link -O--buildsystem=pybuild
> dh_strip_nondeterminism -O--buildsystem=pybuild
> dh_compress -O--buildsystem=pybuild
> dh_fixperms -O--buildsystem=pybuild
> dh_missing -O--buildsystem=pybuild
> dh_installdeb -O--buildsystem=pybuild
> dh_gencontrol -O--buildsystem=pybuild
> dh_md5sums -O--buildsystem=pybuild
> dh_builddeb -O--buildsystem=pybuild
> dpkg-deb: building package 'reprotest' in '../reprotest_0.7.22_all.deb'.
> dpkg-genchanges: info: binary-only upload (no source code included)
> dpkg-buildpackage: info: binary-only upload (no source included)
> ----------------------------- Captured stderr call -----------------------------
> dpkg-source --before-build .
> debian/rules binary
> I: pybuild base:240: python3.11 setup.py config
> I: pybuild base:240: python3.10 setup.py config
> I: pybuild base:240: /usr/bin/python3.11 setup.py build
> /usr/lib/python3/dist-packages/setuptools/command/build_py.py:202: SetuptoolsDeprecationWarning: Installing 'reprotest.virt' as data is deprecated, please list it in `packages`.
> !!
>
>
> ############################
> # Package would be ignored #
> ############################
> Python recognizes 'reprotest.virt' as an importable package,
> but it is not listed in the `packages` configuration of setuptools.
>
> 'reprotest.virt' has been automatically added to the distribution only
> because it may contain data files, but this behavior is likely to change
> in future versions of setuptools (and therefore is considered deprecated).
>
> Please make sure that 'reprotest.virt' is included as a package by using
> the `packages` configuration field or the proper discovery methods
> (for example by using `find_namespace_packages(...)`/`find_namespace:`
> instead of `find_packages(...)`/`find:`).
>
> You can read more about "package discovery" and "data files" on setuptools
> documentation page.
>
>
> !!
>
> check.warn(importable)
> I: pybuild base:240: /usr/bin/python3 setup.py build
> /usr/lib/python3/dist-packages/setuptools/command/build_py.py:202: SetuptoolsDeprecationWarning: Installing 'reprotest.virt' as data is deprecated, please list it in `packages`.
> !!
>
>
> ############################
> # Package would be ignored #
> ############################
> Python recognizes 'reprotest.virt' as an importable package,
> but it is not listed in the `packages` configuration of setuptools.
>
> 'reprotest.virt' has been automatically added to the distribution only
> because it may contain data files, but this behavior is likely to change
> in future versions of setuptools (and therefore is considered deprecated).
>
> Please make sure that 'reprotest.virt' is included as a package by using
> the `packages` configuration field or the proper discovery methods
> (for example by using `find_namespace_packages(...)`/`find_namespace:`
> instead of `find_packages(...)`/`find:`).
>
> You can read more about "package discovery" and "data files" on setuptools
> documentation page.
>
>
> !!
>
> check.warn(importable)
> I: pybuild base:240: /usr/bin/python3.11 setup.py install --root /tmp/reprotest.wUfG3L/const_build_path/debian/reprotest
> /usr/lib/python3/dist-packages/setuptools/command/install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
> warnings.warn(
> /usr/lib/python3/dist-packages/setuptools/command/build_py.py:202: SetuptoolsDeprecationWarning: Installing 'reprotest.virt' as data is deprecated, please list it in `packages`.
> !!
>
>
> ############################
> # Package would be ignored #
> ############################
> Python recognizes 'reprotest.virt' as an importable package,
> but it is not listed in the `packages` configuration of setuptools.
>
> 'reprotest.virt' has been automatically added to the distribution only
> because it may contain data files, but this behavior is likely to change
> in future versions of setuptools (and therefore is considered deprecated).
>
> Please make sure that 'reprotest.virt' is included as a package by using
> the `packages` configuration field or the proper discovery methods
> (for example by using `find_namespace_packages(...)`/`find_namespace:`
> instead of `find_packages(...)`/`find:`).
>
> You can read more about "package discovery" and "data files" on setuptools
> documentation page.
>
>
> !!
>
> check.warn(importable)
> I: pybuild base:240: /usr/bin/python3 setup.py install --root /tmp/reprotest.wUfG3L/const_build_path/debian/reprotest
> /usr/lib/python3/dist-packages/setuptools/command/install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
> warnings.warn(
> /usr/lib/python3/dist-packages/setuptools/command/build_py.py:202: SetuptoolsDeprecationWarning: Installing 'reprotest.virt' as data is deprecated, please list it in `packages`.
> !!
>
>
> ############################
> # Package would be ignored #
> ############################
> Python recognizes 'reprotest.virt' as an importable package,
> but it is not listed in the `packages` configuration of setuptools.
>
> 'reprotest.virt' has been automatically added to the distribution only
> because it may contain data files, but this behavior is likely to change
> in future versions of setuptools (and therefore is considered deprecated).
>
> Please make sure that 'reprotest.virt' is included as a package by using
> the `packages` configuration field or the proper discovery methods
> (for example by using `find_namespace_packages(...)`/`find_namespace:`
> instead of `find_packages(...)`/`find:`).
>
> You can read more about "package discovery" and "data files" on setuptools
> documentation page.
>
>
> !!
>
> check.warn(importable)
> dpkg-genbuildinfo --build=binary -O../reprotest_0.7.22_amd64.buildinfo
> dpkg-genchanges --build=binary -O../reprotest_0.7.22_amd64.changes
> dpkg-source --after-build .
> Traceback (most recent call last):
> File "/<<PKGBUILDDIR>>/reprotest/__init__.py", line 852, in run
> return 0 if check_func(*check_args) else 1
> ^^^^^^^^^^^^^^^^^^^^^^^
> File "/<<PKGBUILDDIR>>/reprotest/__init__.py", line 369, in check
> local_dists += [proc.send(nv) for nv in zip(bnames[1:], build_variations[1:])]
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> File "/<<PKGBUILDDIR>>/reprotest/__init__.py", line 369, in <listcomp>
> local_dists += [proc.send(nv) for nv in zip(bnames[1:], build_variations[1:])]
> ^^^^^^^^^^^^^
> File "/<<PKGBUILDDIR>>/reprotest/__init__.py", line 327, in corun_builds
> build = bctx.make_build_commands(build_command, os.environ)
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> File "/<<PKGBUILDDIR>>/reprotest/__init__.py", line 164, in make_build_commands
> _ = self.plan_variations(Build.from_command(
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> File "/<<PKGBUILDDIR>>/reprotest/__init__.py", line 182, in plan_variations
> build = action(self.variations, build, vary)
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> File "/<<PKGBUILDDIR>>/reprotest/build.py", line 205, in environment
> for k, v in environ.parse_environ_templates(ctx.spec.environment.variables):
> File "/<<PKGBUILDDIR>>/reprotest/environ.py", line 83, in parse_environ_templates
> yield (rstr.xeger(k), rstr.xeger(v) or "i_capture_the_environment")
> ^^^^^^^^^^^^^
> File "/usr/lib/python3/dist-packages/rstr/xeger.py", line 63, in xeger
> parsed = re.sre_parse.parse(pattern)
> ^^^^^^^^^^^^
> AttributeError: module 're' has no attribute 'sre_parse'
> =============================== warnings summary ===============================
> reprotest/__init__.py:350
> /<<PKGBUILDDIR>>/reprotest/__init__.py:350: DeprecationWarning: invalid escape sequence '\;'
> run_or_tee(['sh', '-ec', 'find %s -type f -exec sha256sum "{}" \;' % self.artifact_pattern],
>
> reprotest/lib/adt_testbed.py:305
> /<<PKGBUILDDIR>>/reprotest/lib/adt_testbed.py:305: DeprecationWarning: invalid escape sequence '\['
> script = '''sed -rn 's/^(deb|deb-src) +(\[.*\] *)?([^ ]*(ubuntu.com|debian.org|ftpmaster|file:\/\/\/tmp\/testarchive)[^ ]*) +([^ -]+) +(.*)$/\\1 \\2\\3 \\5-%s \\6/p' /etc/apt/sources.list `ls /etc/apt/sources.list.d/*.list 2>/dev/null|| true` > /etc/apt/sources.list.d/%s.list; for retry in 1 2 3; do apt-get --no-list-cleanup -o Dir::Etc::sourcelist=/etc/apt/sources.list.d/%s.list -o Dir::Etc::sourceparts=/dev/null update 2>&1 && break || sleep 15; done''' % (pocket, pocket, pocket)
>
> reprotest/lib/adt_testbed.py:320
> /<<PKGBUILDDIR>>/reprotest/lib/adt_testbed.py:320: DeprecationWarning: invalid escape sequence '\/'
> 'for d in %s; do [ ! -d $d ] || touch -r $d %s/${d//\//_}.stamp; done' % (
>
> reprotest/lib/adt_testbed.py:342
> /<<PKGBUILDDIR>>/reprotest/lib/adt_testbed.py:342: DeprecationWarning: invalid escape sequence '\/'
> 'for d in %s; do s=%s/${d//\//_}.stamp;'
>
> reprotest/lib/adt_testbed.py:724
> /<<PKGBUILDDIR>>/reprotest/lib/adt_testbed.py:724: DeprecationWarning: invalid escape sequence '\('
> script = '''d=%(t)s/deps
>
> reprotest/lib/adt_testbed.py:1211
> /<<PKGBUILDDIR>>/reprotest/lib/adt_testbed.py:1211: DeprecationWarning: invalid escape sequence '\/'
> script += '''REL=$(sed -rn '/^(deb|deb-src) .*(ubuntu.com|debian.org|ftpmaster|file:\/\/\/tmp\/testarchive)/ { s/^[^ ]+ +(\[.*\] *)?[^ ]* +([^ -]+) +.*$/\\2/p}' $SRCS | head -n1); '''
>
> reprotest/lib/adt_testbed.py:27
> /<<PKGBUILDDIR>>/reprotest/lib/adt_testbed.py:27: DeprecationWarning: 'pipes' is deprecated and slated for removal in Python 3.13
> import pipes
>
> reprotest/build.py:308
> /<<PKGBUILDDIR>>/reprotest/build.py:308: DeprecationWarning: invalid escape sequence '\$'
> _ = _.append_setup_exec_raw('DROP_ARCH="-v -e ^$(uname -m)\$"')
>
> reprotest/build.py:310
> /<<PKGBUILDDIR>>/reprotest/build.py:310: DeprecationWarning: invalid escape sequence '\$'
> _ = _.append_setup_exec_raw('if [ $WORDSIZE -eq 64 ]; then \
>
> reprotest/environ.py:10
> /<<PKGBUILDDIR>>/reprotest/environ.py:10: DeprecationWarning: invalid escape sequence '\w'
> "path": "(/\w{1,12}){1,4}",
>
> reprotest/environ.py:11
> /<<PKGBUILDDIR>>/reprotest/environ.py:11: DeprecationWarning: invalid escape sequence '\d'
> "port": "([1-9]\d{0,3}|[1-5]\d{4})",
>
> reprotest/environ.py:12
> /<<PKGBUILDDIR>>/reprotest/environ.py:12: DeprecationWarning: invalid escape sequence '\w'
> "domain": "\w{1,10}(\.\w{1,10}){0,3}",
>
> reprotest/environ.py:13
> /<<PKGBUILDDIR>>/reprotest/environ.py:13: DeprecationWarning: invalid escape sequence '\w'
> "password": "\w{1,40}",
>
> reprotest/environ.py:14
> /<<PKGBUILDDIR>>/reprotest/environ.py:14: DeprecationWarning: invalid escape sequence '\w'
> "username": "\w{2,20}",
>
> reprotest/environ.py:113
> /<<PKGBUILDDIR>>/reprotest/environ.py:113: DeprecationWarning: invalid escape sequence '\w'
> "REPROTEST_CAPTURE_ENVIRONMENT_UNKNOWN_\w+"]
>
> -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
> =========================== short test summary info ============================
> FAILED tests/test_reprotest.py::test_simple_builds[null] - AttributeError: mo...
> FAILED tests/test_reprotest.py::test_variations[null-environment] - Attribute...
> FAILED tests/test_reprotest.py::test_variations[null-build_path] - AttributeE...
> FAILED tests/test_reprotest.py::test_variations[null-kernel] - AttributeError...
> FAILED tests/test_reprotest.py::test_variations[null-aslr] - AttributeError: ...
> FAILED tests/test_reprotest.py::test_variations[null-num_cpus] - AttributeErr...
> FAILED tests/test_reprotest.py::test_variations[null-time] - AttributeError: ...
> FAILED tests/test_reprotest.py::test_variations[null-user_group] - AttributeE...
> FAILED tests/test_reprotest.py::test_variations[null-fileordering] - Attribut...
> FAILED tests/test_reprotest.py::test_variations[null-domain_host] - Attribute...
> FAILED tests/test_reprotest.py::test_variations[null-home] - AttributeError: ...
> FAILED tests/test_reprotest.py::test_variations[null-locales] - AttributeErro...
> FAILED tests/test_reprotest.py::test_variations[null-exec_path] - AttributeEr...
> FAILED tests/test_reprotest.py::test_variations[null-timezone] - AttributeErr...
> FAILED tests/test_reprotest.py::test_variations[null-umask] - AttributeError:...
> FAILED tests/test_reprotest.py::test_self_build[null] - AssertionError: asser...
> FAILED tests/test_reprotest.py::test_debian_build[null] - AssertionError: ass...
> ================== 17 failed, 4 passed, 15 warnings in 19.45s ==================
> ERROR: InvocationError for command /<<PKGBUILDDIR>>/.tox/py311/bin/python -m coverage run --omit '.tox/*' --parallel -m py.test tests/ (exited with code 1)
> ___________________________________ summary ____________________________________
> ERROR: py311: commands failed
> E: pybuild pybuild:386: test: plugin distutils failed with: exit code=1: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_reprotest/build; tox -c /<<PKGBUILDDIR>>/tox.ini --sitepackages -e py311
> I: pybuild base:240: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_reprotest/build; tox -c /<<PKGBUILDDIR>>/tox.ini --sitepackages -e py310
> GLOB sdist-make: /<<PKGBUILDDIR>>/setup.py
> py310 create: /<<PKGBUILDDIR>>/.tox/py310
> py310 installdeps: coverage, diffoscope, pytest
> WARNING: Discarding $PYTHONPATH from environment, to override specify PYTHONPATH in 'passenv' in your configuration.
> py310 inst: /<<PKGBUILDDIR>>/.tox/.tmp/package/1/reprotest-0.7.22.zip
> WARNING: Discarding $PYTHONPATH from environment, to override specify PYTHONPATH in 'passenv' in your configuration.
> py310 installed: attrs==22.1.0,coverage==6.5.0,diffoscope==228,distlib==0.3.6,distro==1.8.0,docutils==0.17.1,exceptiongroup==1.0.4,filelock==3.8.2,iniconfig==1.1.1,libarchive-c==2.9,more-itertools==8.10.0,packaging==21.3,platformdirs==2.6.0,pluggy==1.0.0+repack,py==1.11.0,pyparsing==3.0.9,pytest==7.2.0,python-magic==0.4.26,reprotest @ file:///<<PKGBUILDDIR>>/.tox/.tmp/package/1/reprotest-0.7.22.zip,roman==3.3,rstr==2.2.6,six==1.16.0,tlsh==0.2.0,toml==0.10.2,tomli==2.0.1,tox==3.21.4,virtualenv==20.17.1+ds
> py310 run-test-pre: PYTHONHASHSEED='535809170'
> py310 run-test: commands[0] | /<<PKGBUILDDIR>>/.tox/py310/bin/python -m coverage run --omit '.tox/*' --parallel -m py.test tests/
> ============================= test session starts ==============================
> platform linux -- Python 3.10.9, pytest-7.2.0, pluggy-1.0.0+repack
> cachedir: .tox/py310/.pytest_cache
> rootdir: /<<PKGBUILDDIR>>
> collected 21 items
>
> tests/test_mdiffconf.py . [ 4%]
> tests/test_reprotest.py .................. [ 90%]
> tests/test_shell.py .. [100%]
>
> ============================= 21 passed in 32.21s ==============================
> ___________________________________ summary ____________________________________
> py310: commands succeeded
> congratulations :)
> dh_auto_test: error: pybuild --test --test-tox -i python{version} -p "3.11 3.10" --test-tox returned exit code 13
The full build log is available from:
http://qa-logs.debian.net/2022/12/20/reprotest_0.7.22_unstable.log
All bugs filed during this archive rebuild are listed at:
https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=ftbfs-20221220;users=lucas@debian.org
or:
https://udd.debian.org/bugs/?release=na&merged=ign&fnewerval=7&flastmodval=7&fusertag=only&fusertagtag=ftbfs-20221220&fusertaguser=lucas@debian.org&allbugs=1&cseverity=1&ctags=1&caffected=1#results
A list of current common problems and possible solutions is available at
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!
If you reassign this bug to another package, please mark it as 'affects'-ing
this package. See https://www.debian.org/Bugs/server-control#affects
If you fail to reproduce this, please provide a build log and diff it with mine
so that we can identify if something relevant changed in the meantime.
More information about the Reproducible-builds
mailing list