Package: src:twine
Version: 6.2.0-1
Severity: serious
Tags: ftbfs forky sid

Dear maintainer:

During a rebuild of all packages in unstable, this package failed to build.

Below you will find the last part of the build log (probably the most
relevant part, but not necessarily). If required, the full build log
is available here:

https://people.debian.org/~sanvila/build-logs/202511/

About the archive rebuild: The build was made on virtual machines from AWS,
using sbuild and a reduced chroot with only build-essential packages.

If you cannot reproduce the bug please contact me privately, as I
am willing to provide ssh access to a virtual machine where the bug is
fully reproducible.

If this is really a bug in one of the build-depends, please use
reassign and add an affects on src:twine, so that this is still
visible in the BTS web page for this package.

Thanks.

--------------------------------------------------------------------------------
[...]
 debian/rules clean
dh clean --buildsystem=pybuild
   dh_auto_clean -O--buildsystem=pybuild
   dh_autoreconf_clean -O--buildsystem=pybuild
   dh_clean -O--buildsystem=pybuild
 debian/rules binary
dh binary --buildsystem=pybuild
   dh_update_autotools_config -O--buildsystem=pybuild
   dh_autoreconf -O--buildsystem=pybuild
   dh_auto_configure -O--buildsystem=pybuild
   debian/rules override_dh_auto_build
make[1]: Entering directory '/<<PKGBUILDDIR>>'
dh_auto_build --buildsystem=pybuild
I: pybuild plugin_pyproject:129: Building wheel for python3.13 with "build" 
module
I: pybuild base:311: python3.13 -m build --skip-dependency-check --no-isolation 
--wheel --outdir /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_twine  
* Building wheel...
running bdist_wheel
running build
running build_py
creating build/lib/twine
copying twine/distribution.py -> build/lib/twine
copying twine/__init__.py -> build/lib/twine
copying twine/auth.py -> build/lib/twine
copying twine/sdist.py -> build/lib/twine
copying twine/__main__.py -> build/lib/twine
copying twine/settings.py -> build/lib/twine
copying twine/cli.py -> build/lib/twine
copying twine/package.py -> build/lib/twine
copying twine/wheel.py -> build/lib/twine
copying twine/repository.py -> build/lib/twine
copying twine/utils.py -> build/lib/twine
copying twine/exceptions.py -> build/lib/twine
creating build/lib/twine/commands
copying twine/commands/__init__.py -> build/lib/twine/commands
copying twine/commands/check.py -> build/lib/twine/commands
copying twine/commands/register.py -> build/lib/twine/commands
copying twine/commands/upload.py -> build/lib/twine/commands
running egg_info
writing twine.egg-info/PKG-INFO
writing dependency_links to twine.egg-info/dependency_links.txt
writing entry points to twine.egg-info/entry_points.txt
writing requirements to twine.egg-info/requires.txt
writing top-level names to twine.egg-info/top_level.txt
reading manifest file 'twine.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
no previously-included directories found matching 'debian'
adding license file 'LICENSE'
writing manifest file 'twine.egg-info/SOURCES.txt'
copying twine/py.typed -> build/lib/twine
installing to build/bdist.linux-x86_64/wheel
running install
running install_lib
creating build/bdist.linux-x86_64/wheel
creating build/bdist.linux-x86_64/wheel/twine
copying build/lib/twine/distribution.py -> 
build/bdist.linux-x86_64/wheel/./twine
copying build/lib/twine/__init__.py -> build/bdist.linux-x86_64/wheel/./twine
copying build/lib/twine/auth.py -> build/bdist.linux-x86_64/wheel/./twine
copying build/lib/twine/sdist.py -> build/bdist.linux-x86_64/wheel/./twine
copying build/lib/twine/__main__.py -> build/bdist.linux-x86_64/wheel/./twine
copying build/lib/twine/settings.py -> build/bdist.linux-x86_64/wheel/./twine
copying build/lib/twine/cli.py -> build/bdist.linux-x86_64/wheel/./twine
copying build/lib/twine/py.typed -> build/bdist.linux-x86_64/wheel/./twine
copying build/lib/twine/package.py -> build/bdist.linux-x86_64/wheel/./twine
creating build/bdist.linux-x86_64/wheel/twine/commands
copying build/lib/twine/commands/__init__.py -> 
build/bdist.linux-x86_64/wheel/./twine/commands
copying build/lib/twine/commands/check.py -> 
build/bdist.linux-x86_64/wheel/./twine/commands
copying build/lib/twine/commands/register.py -> 
build/bdist.linux-x86_64/wheel/./twine/commands
copying build/lib/twine/commands/upload.py -> 
build/bdist.linux-x86_64/wheel/./twine/commands
copying build/lib/twine/wheel.py -> build/bdist.linux-x86_64/wheel/./twine
copying build/lib/twine/repository.py -> build/bdist.linux-x86_64/wheel/./twine
copying build/lib/twine/utils.py -> build/bdist.linux-x86_64/wheel/./twine
copying build/lib/twine/exceptions.py -> build/bdist.linux-x86_64/wheel/./twine
running install_egg_info
Copying twine.egg-info to build/bdist.linux-x86_64/wheel/./twine-6.2.0.egg-info
running install_scripts
creating build/bdist.linux-x86_64/wheel/twine-6.2.0.dist-info/WHEEL
creating 
'/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_twine/.tmp-0_93y1ay/twine-6.2.0-py3-none-any.whl'
 and adding 'build/bdist.linux-x86_64/wheel' to it
adding 'twine/__init__.py'
adding 'twine/__main__.py'
adding 'twine/auth.py'
adding 'twine/cli.py'
adding 'twine/distribution.py'
adding 'twine/exceptions.py'
adding 'twine/package.py'
adding 'twine/py.typed'
adding 'twine/repository.py'
adding 'twine/sdist.py'
adding 'twine/settings.py'
adding 'twine/utils.py'
adding 'twine/wheel.py'
adding 'twine/commands/__init__.py'
adding 'twine/commands/check.py'
adding 'twine/commands/register.py'
adding 'twine/commands/upload.py'
adding 'twine-6.2.0.dist-info/licenses/LICENSE'
adding 'twine-6.2.0.dist-info/METADATA'
adding 'twine-6.2.0.dist-info/WHEEL'
adding 'twine-6.2.0.dist-info/entry_points.txt'
adding 'twine-6.2.0.dist-info/top_level.txt'
adding 'twine-6.2.0.dist-info/RECORD'
removing build/bdist.linux-x86_64/wheel
Successfully built twine-6.2.0-py3-none-any.whl
I: pybuild plugin_pyproject:144: Unpacking wheel built for python3.13 with 
"installer" module
# For sphinxcontrib.programoutput:
mkdir .pybuild/bin
printf '#!/bin/sh\nset -euf\nPYTHONPATH=/<<PKGBUILDDIR>> exec python3 -m twine 
"$@"\n' > .pybuild/bin/twine
chmod +x .pybuild/bin/twine
PATH=/<<PKGBUILDDIR>>/.pybuild/bin:$PATH twine --help  # Sanity chcek
usage: twine [-h] [--version] [--no-color] {register,upload,check}

positional arguments:
  {register,upload,check}

options:
  -h, --help            show this help message and exit
  --version             show program's version number and exit
  --no-color            disable colored output
PATH=/<<PKGBUILDDIR>>/.pybuild/bin:$PATH python3 -m sphinx -b html docs 
docs/_build/html
Running Sphinx v8.2.3
loading translations [en]... done
making output directory... done
Converting `source_suffix = '.rst'` to `source_suffix = {'.rst': 
'restructuredtext'}`.
loading intersphinx inventory 'python' from 
/usr/share/doc/python3.13/html/objects.inv ...
loading intersphinx inventory 'requests' from 
/usr/share/doc/python-requests-doc/html/objects.inv ...
loading intersphinx inventory 'packaging' from 
https://packaging.pypa.io/en/latest/objects.inv ...
WARNING: failed to reach any of the inventories with the following issues:
intersphinx inventory 'https://packaging.pypa.io/en/latest/objects.inv' not 
fetchable due to <class 'requests.exceptions.ConnectionError'>: 
HTTPSConnectionPool(host='packaging.pypa.io', port=443): Max retries exceeded 
with url: /en/latest/objects.inv (Caused by 
NameResolutionError("<urllib3.connection.HTTPSConnection object at 
0x7fc6817fd7f0>: Failed to resolve 'packaging.pypa.io' ([Errno -3] Temporary 
failure in name resolution)"))
building [mo]: targets for 0 po files that are out of date
writing output... 
building [html]: targets for 16 source files that are out of date
updating environment: [new config] 16 added, 0 changed, 0 removed
reading sources... [  6%] changelog
reading sources... [ 12%] contributing
reading sources... [ 19%] index
reading sources... [ 25%] internal/twine
reading sources... [ 31%] internal/twine.auth
reading sources... [ 38%] internal/twine.cli
reading sources... [ 44%] internal/twine.commands
reading sources... [ 50%] internal/twine.commands.check
reading sources... [ 56%] internal/twine.commands.register
reading sources... [ 62%] internal/twine.commands.upload
reading sources... [ 69%] internal/twine.exceptions
reading sources... [ 75%] internal/twine.package
reading sources... [ 81%] internal/twine.repository
reading sources... [ 88%] internal/twine.settings
reading sources... [ 94%] internal/twine.utils
reading sources... [100%] internal/twine.wheel

looking for now-outdated files... none found
pickling environment... done
checking consistency... done
preparing documents... done
copying assets... 
copying static files... 
Writing evaluated template result to 
/<<PKGBUILDDIR>>/docs/_build/html/_static/basic.css
Writing evaluated template result to 
/<<PKGBUILDDIR>>/docs/_build/html/_static/language_data.js
Writing evaluated template result to 
/<<PKGBUILDDIR>>/docs/_build/html/_static/documentation_options.js
copying static files: done
copying extra files... 
copying extra files: done
copying assets: done
writing output... [  6%] changelog
writing output... [ 12%] contributing
writing output... [ 19%] index
writing output... [ 25%] internal/twine
writing output... [ 31%] internal/twine.auth
writing output... [ 38%] internal/twine.cli
writing output... [ 44%] internal/twine.commands
writing output... [ 50%] internal/twine.commands.check
writing output... [ 56%] internal/twine.commands.register
writing output... [ 62%] internal/twine.commands.upload
writing output... [ 69%] internal/twine.exceptions
writing output... [ 75%] internal/twine.package
writing output... [ 81%] internal/twine.repository
writing output... [ 88%] internal/twine.settings
writing output... [ 94%] internal/twine.utils
writing output... [100%] internal/twine.wheel

/<<PKGBUILDDIR>>/twine/package.py:docstring of 
twine.package.PackageFile.__init__:1: WARNING: py:class reference target not 
found: packaging.metadata.RawMetadata [ref.class]
generating indices... genindex py-modindex done
highlighting module code... [  8%] namedtuple_Hexdigest
highlighting module code... [ 17%] twine.auth
highlighting module code... [ 25%] twine.cli
highlighting module code... [ 33%] twine.commands.check
highlighting module code... [ 42%] twine.commands.register
highlighting module code... [ 50%] twine.commands.upload
highlighting module code... [ 58%] twine.exceptions
highlighting module code... [ 67%] twine.package
highlighting module code... [ 75%] twine.repository
highlighting module code... [ 83%] twine.settings
highlighting module code... [ 92%] twine.utils
highlighting module code... [100%] twine.wheel

writing additional pages... search done
dumping search index in English (code: en)... done
dumping object inventory... done
build succeeded, 2 warnings.

The HTML pages are in docs/_build/html.
PATH=/<<PKGBUILDDIR>>/.pybuild/bin:$PATH python3 -m sphinx -b man docs 
docs/_build/man
Running Sphinx v8.2.3
loading translations [en]... done
making output directory... done
Converting `source_suffix = '.rst'` to `source_suffix = {'.rst': 
'restructuredtext'}`.
loading intersphinx inventory 'python' from 
/usr/share/doc/python3.13/html/objects.inv ...
loading intersphinx inventory 'requests' from 
/usr/share/doc/python-requests-doc/html/objects.inv ...
loading intersphinx inventory 'packaging' from 
https://packaging.pypa.io/en/latest/objects.inv ...
WARNING: failed to reach any of the inventories with the following issues:
intersphinx inventory 'https://packaging.pypa.io/en/latest/objects.inv' not 
fetchable due to <class 'requests.exceptions.ConnectionError'>: 
HTTPSConnectionPool(host='packaging.pypa.io', port=443): Max retries exceeded 
with url: /en/latest/objects.inv (Caused by 
NameResolutionError("<urllib3.connection.HTTPSConnection object at 
0x7fb85b5f46e0>: Failed to resolve 'packaging.pypa.io' ([Errno -3] Temporary 
failure in name resolution)"))
building [mo]: targets for 0 po files that are out of date
writing output... 
building [man]: all manpages
updating environment: [new config] 16 added, 0 changed, 0 removed
reading sources... [  6%] changelog
reading sources... [ 12%] contributing
reading sources... [ 19%] index
reading sources... [ 25%] internal/twine
reading sources... [ 31%] internal/twine.auth
reading sources... [ 38%] internal/twine.cli
reading sources... [ 44%] internal/twine.commands
reading sources... [ 50%] internal/twine.commands.check
reading sources... [ 56%] internal/twine.commands.register
reading sources... [ 62%] internal/twine.commands.upload
reading sources... [ 69%] internal/twine.exceptions
reading sources... [ 75%] internal/twine.package
reading sources... [ 81%] internal/twine.repository
reading sources... [ 88%] internal/twine.settings
reading sources... [ 94%] internal/twine.utils
reading sources... [100%] internal/twine.wheel

looking for now-outdated files... none found
pickling environment... done
checking consistency... done
preparing documents... done
copying assets... 
copying assets: done
writing... twine.1 { 
 changelog
 contributing
  internal/twine
   internal/twine.commands
    internal/twine.commands.check
    internal/twine.commands.register
    internal/twine.commands.upload
   internal/twine.auth
   internal/twine.cli
   internal/twine.exceptions
   internal/twine.package
   internal/twine.repository
   internal/twine.settings
   internal/twine.utils
   internal/twine.wheel
} /<<PKGBUILDDIR>>/twine/package.py:docstring of 
twine.package.PackageFile.__init__:1: WARNING: py:class reference target not 
found: packaging.metadata.RawMetadata [ref.class]
done
build succeeded, 2 warnings.

The manual pages are in docs/_build/man.
sed  's/.TH "TWINE" "1" /.TH "TWINE" "3" /g' < docs/_build/man/twine.1 > 
docs/_build/man/twine.3 # Set the file to section3
rm docs/_build/man/twine.1
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
   debian/rules override_dh_auto_test
make[1]: Entering directory '/<<PKGBUILDDIR>>'
TERM= dh_auto_test -- \
  --test-pytest \
  --test-args '--ignore tests/test_integration.py'
I: pybuild base:311: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_twine/build; 
python3.13 -m pytest --ignore tests/test_integration.py
============================= test session starts ==============================
platform linux -- Python 3.13.9, pytest-8.4.2, pluggy-1.6.0
rootdir: /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_twine/build
configfile: pytest.ini
plugins: socket-0.7.0, typeguard-4.4.4
collected 229 items

tests/test_auth.py ............................                          [ 12%]
tests/test_check.py ......F......                                        [ 17%]
tests/test_cli.py ..                                                     [ 18%]
tests/test_commands.py ......                                            [ 21%]
tests/test_main.py ...                                                   [ 22%]
tests/test_package.py .....................................              [ 38%]
tests/test_register.py ......                                            [ 41%]
tests/test_repository.py .........................                       [ 52%]
tests/test_sdist.py .................                                    [ 59%]
tests/test_settings.py .................                                 [ 67%]
tests/test_upload.py ..........................sss.                      [ 80%]
tests/test_utils.py ......................................               [ 96%]
tests/test_wheel.py .......                                              [100%]

=================================== FAILURES ===================================
_________________________ test_fails_rst_syntax_error __________________________

tmp_path = 
PosixPath('/tmp/pytest-of-sbuild/pytest-0/test_fails_rst_syntax_error0')
capsys = <_pytest.capture.CaptureFixture object at 0x7fcb5ad565d0>
caplog = <_pytest.logging.LogCaptureFixture object at 0x7fcb5ac10050>

    def test_fails_rst_syntax_error(tmp_path, capsys, caplog):
        sdist = build_sdist_with_metadata(
            tmp_path,
            """\
            Metadata-Version: 2.1
            Name: test-package
            Version: 1.2.3
            Description-Content-Type: text/x-rst
    
    
            ============
    
            """,
        )
    
        assert check.check([sdist])
    
        assert capsys.readouterr().out == f"Checking {sdist}: FAILED\n"
    
>       assert caplog.record_tuples == [
            (
                "twine.commands.check",
                logging.ERROR,
                "`long_description` has syntax errors in markup "
                "and would not be rendered on PyPI.\n"
                "line 2: Error: Document or section may not begin with a 
transition.",
            ),
        ]
E       AssertionError: assert [('twine.comm...transition.')] == 
[('twine.comm...transition.')]
E         
E         At index 0 diff: ('twine.commands.check', 40, '`long_description` has 
syntax errors in markup and would not be rendered on PyPI.\nline 2: Warning: 
Document or section may not begin with a transition.') != 
('twine.commands.check', 40, '`long_description` has syntax errors in markup 
and would not be rendered on PyPI.\nline 2: Error: Document or section may not 
begin with a transition.')
E         Use -v to get more diff

tests/test_check.py:116: AssertionError
----------------------------- Captured stderr call -----------------------------
`long_description` has syntax errors in markup and would not be rendered on 
PyPI.
line 2: Warning: Document or section may not begin with a transition.
------------------------------ Captured log call -------------------------------
ERROR    twine.commands.check:check.py:147 `long_description` has syntax errors 
in markup and would not be rendered on PyPI.
line 2: Warning: Document or section may not begin with a transition.
=========================== short test summary info ============================
FAILED tests/test_check.py::test_fails_rst_syntax_error - AssertionError: ass...
=================== 1 failed, 225 passed, 3 skipped in 0.54s ===================
E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=1: cd 
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_twine/build; python3.13 -m pytest 
--ignore tests/test_integration.py
dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.13 
--test-pytest --test-args "--ignore tests/test_integration.py" returned exit 
code 13
make[1]: *** [debian/rules:22: override_dh_auto_test] Error 25
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
make: *** [debian/rules:5: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
--------------------------------------------------------------------------------

Reply via email to