• Bug#1064147: ftbfs: test failures affecting Bio.SeqIO.SeqXmIIO

    From =?UTF-8?Q?=C3=89tienne?= Mollier@21:1/5 to All on Sat Feb 17 19:30:01 2024
    Source: python-biopython
    Version: 1.81+dfsg-3
    Severity: serious
    Tags: ftbfs
    Justification: ftbfs

    While trying to pinpoint the root cause of test failures in the
    packaging attempt of Biopython 1.83, I eventually realized that
    the version 1.81 of Biopython is also affected by the same
    issues. The relevant part of the test log looks like:

    ======================================================================
    ERROR: test_embl7 (test_SeqIO.TestSeqIO.test_embl7)
    ----------------------------------------------------------------------
    Traceback (most recent call last):
    File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/Tests/test_SeqIO.py", line 3388, in test_embl7
    self.perform_test(
    File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/Tests/test_SeqIO.py", line 626, in perform_test
    self.check_simple_write_read(
    File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/Tests/test_SeqIO.py", line 363, in check_simple_write_read
    records2 = list(SeqIO.parse(handle=handle, format=fmt))
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/Bio/SeqIO/Interfaces.py", line 72, in __next__
    return next(self.records)
    ^^^^^^^^^^^^^^^^^^
    File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/Bio/SeqIO/SeqXmlIO.py", line 447, in iterate
    parser.close()
    File "/usr/lib/python3.11/xml/sax/expatreader.py", line 240, in close
    self.feed(b"", isFinal=True)
    File "/usr/lib/python3.11/xml/sax/expatreader.py", line 217, in feed
    self._parser.Parse(data, isFinal)
    File "../Modules/pyexpat.c", line 416, in StartElement
    File "/usr/lib/python3.11/xml/sax/expatreader.py", line 369, in start_element_ns
    self._cont_handler.startElementNS(pair, None,
    File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/Bio/SeqIO/SeqXmlIO.py", line 163, in startEntryFieldElement
    return self.startPropertyElement(attrs)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/Bio/SeqIO/SeqXmlIO.py", line 339, in startPropertyElement
    record = self.records[-1]
    ~~~~~~~~~~~~^^^^
    IndexError: list index out of range

    ======================================================================
    ERROR: test_genbank8 (test_SeqIO.TestSeqIO.test_genbank8)
    ----------------------------------------------------------------------
    Traceback (most recent call last):
    File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/Tests/test_SeqIO.py", line 2785, in test_genbank8
    self.perform_test(
    File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/Tests/test_SeqIO.py", line 626, in perform_test
    self.check_simple_write_read(
    File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/Tests/test_SeqIO.py", line 363, in check_simple_write_read
    records2 = list(SeqIO.parse(handle=handle, format=fmt))
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/Bio/SeqIO/Interfaces.py", line 72, in __next__
    return next(self.records)
    ^^^^^^^^^^^^^^^^^^
    File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/Bio/SeqIO/SeqXmlIO.py", line 447, in iterate
    parser.close()
    File "/usr/lib/python3.11/xml/sax/expatreader.py", line 240, in close
    self.feed(b"", isFinal=True)
    File "/usr/lib/python3.11/xml/sax/expatreader.py", line 217, in feed
    self._parser.Parse(data, isFinal)
    File "../Modules/pyexpat.c", line 416, in StartElement
    File "/usr/lib/python3.11/xml/sax/expatreader.py", line 369, in start_element_ns
    self._cont_handler.startElementNS(pair, None,
    File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/Bio/SeqIO/SeqXmlIO.py", line 163, in startEntryFieldElement
    return self.startPropertyElement(attrs)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.11/build/Bio/SeqIO/SeqXmlIO.py", line 339, in startPropertyElement
    record = self.records[-1]
    ~~~~~~~~~~~~^^^^
    IndexError: list index out of range

    I haven't checked but I heavily suspect that this is causing
    also autopkgtest failures.

    For information,
    --
    .''`. Étienne Mollier <emollier@debian.org>
    : :' : pgp: 8f91 b227 c7d6 f2b1 948c 8236 793c f67e 8f0d 11da
    `. `' sent from /dev/pts/0, please excuse my verbosity
    `-

    -----BEGIN PGP SIGNATURE-----

    iQIzBAABCgAdFiEEj5GyJ8fW8rGUjII2eTz2fo8NEdoFAmXQ+LkACgkQeTz2fo8N EdqTLw/+Pu/ruJIJuvO3wQSbqjqsdPiP9Jh2fzQOQ/AqgV4ZU86sxoKr3HamEVxY 2PXr03kFSbs9cucWj99yjuxYqaf5omEfCOWZyyccyLVnHLZidaYS5iD+g1dXNUh9 UKcOMlUuN1n4RQbmybS5pF8aELfd/OGBOugJ2t1S696iRbpfJDnePWPcSm4Rk1om nHJ5zx3TDaJAT49hSvat1yM+ID+1svmrcXdoXiLJDUQDpk55L3ZhB/6eR1iS8wD1 0N56KwXsbbAvBOWcV7u93E2GwoHByOPLlBtZ8U7oZt1GK8VHdpVGA2WrJOB6YOrV xti+9VN1G8U3KEWQHb1rrjxP+wgOkqMvyJLUrNPZYwMmQK0buK7mwxhFcsZWwBB5 dJitD4/6ubWD5tTgYAOBlMMYGJlK7b4OkDCtt67dbySGlmQnRDIlo4ARZEyZR8ix ReGnu+c+0y3RyR1WHj2qNRkYecfCb2imgEzcqao//ujUpayFl20He6bFczyFXU9I N482pqNrgc82md4ujLRAhQn+AfFAaLeVyIpoOtLIVwckZr2axNvHyJidBM+p52nQ ae+iRetWRikFrxMvNgm1VE/gN6D345j1uTaqujVMXZDQOamBIJF6I5nh0bmjJszv k7yogGa3p2GONh5c4QJ+a8/ATgCu+d13MZb+xdqlOlCr59uAn40=
    =SddM
    -----END PGP SIG
  • From Debian Bug Tracking System@21:1/5 to All on Wed Feb 28 18:40:02 2024
    Processing control commands:

    forwarded -1 https://github.com/biopython/biopython/issues/4640
    Bug #1064147 [src:python-biopython] ftbfs: test failures affecting Bio.SeqIO.SeqXmIIO
    Set Bug forwarded-to-address to 'https://github.com/biopython/biopython/issues/4640'.
    tags -1 + sid
    Bug #1064147 [src:python-biopython] ftbfs: test failures affecting Bio.SeqIO.SeqXmIIO
    Added tag(s) sid.
    tags -1 - testing
    Unknown tag/s: testing.
    Recognized are: patch wontfix moreinfo unreproducible help security upstream pending confirmed ipv6 lfs d-i l10n newcomer a11y ftbfs fixed-upstream fixed fixed-in-experimental sid experimental potato woody sarge sarge-ignore etch etch-ignore lenny lenny-
    ignore squeeze squeeze-ignore wheezy wheezy-ignore jessie jessie-ignore stretch stretch-ignore buster buster-ignore bullseye bullseye-ignore bookworm bookworm-ignore trixie trixie-ignore forky forky-ignore.

    Bug #1064147 [src:python-biopython] ftbfs: test failures affecting Bio.SeqIO.SeqXmIIO
    Requested to remove no tags; doing nothing.

    --
    1064147: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1064147
    Debian Bug Tracking System
    Contact owner@bugs.debian.org with problems

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From =?UTF-8?Q?=C3=89tienne?= Mollier@21:1/5 to All on Sun Mar 10 19:00:01 2024
    So, following discutions with upstream, and quite some
    investigation, this turned out to be caused by the migration of
    expat from version 2.5 to 2.6. The newer version looks to have
    had to introduce breaking changes in order to be able to fix a
    security vulnerability.

    When looking into expat migration excuses[1], I noted that there
    were also test failures affecting Python's xml module[2]. Then,
    I had a lookup at open CPython issues, which suggest a change to
    address the build failure has landed[3] and will be ready for
    upcoming interpreter versions. That being said, looking closely
    at the patch, it seems the direction taken was to adjust the
    test suite to ignore the affected cases. There don't seem to
    have been any changes to the core logic of the xml module. This
    suggests it may be necessary to skip the affected tests, at
    least for now. Those are only two failures among dozens of
    tests, which suggest the SeqXmlIO is in otherwise mostly working
    conditions.

    [1]: https://qa.debian.org/excuses.php?package=expat
    [2]: https://ci.debian.net/packages/p/python3.12/testing/amd64/43764480/
    [3]: https://github.com/python/cpython/pull/115289/files

    Now pondering a version that has a chance to migrate,
    --
    .''`. Étienne Mollier <emollier@debian.org>
    : :' : pgp: 8f91 b227 c7d6 f2b1 948c 8236 793c f67e 8f0d 11da
    `. `' sent from /dev/pts/2, please excuse my verbosity
    `- on air: Genesis - Turn It on Again

    -----BEGIN PGP SIGNATURE-----

    iQIzBAABCgAdFiEEj5GyJ8fW8rGUjII2eTz2fo8NEdoFAmXt8qAACgkQeTz2fo8N Edra/g/7Bo3o9x1wFSZSYvbZ57LXmMf5rnXOP50rBF/MOAYMJRFWrxAc/yYUts7D ZNiWPPE93iJRBSz3GpMBLcIotqQGy+oyYwG/xSgC2EEy+YCw5t6+mmVkUfzH1mvH JyblpSAHxaS7Sdh0seRN0Gp2fREhxWWzPDkpGU04TSLZBmZFsiumC4GsCdlBtsoo 2qLylFwFXRLDAviy3xWNwjwSnO8NpUJVRxmbMCrTA/YvvolIcJLxvVRYzBz4SuJ8 NspzBbwe8OUGJFYEekIKT8B/2ggXS4RbicSYDTbNo+kCALXcYrsg3Q3zYgxVbPfk qyP0Es4LM7AzRDpW++v2cR4BT451DF/1tiEqFDcl+sxXO8gxFDCV/ypdJbJkrHGb RUi9ck/0+2wT+KwFfUmi0cVl9Gu7JcaAuECKmltSMjQzzNCzZP6zGRA54oMS6GJ1 wzPLuADgPYhSyR1yJfKy5fhLbUN5vXKu3sseoQHThYz/M932ButHo3Zc0SqHvAAR R72cttpTDzgm/T7Ur0v4Joc94r053wb8Cl4Z3unnMXiD5OsqMIRSa3zOM+HY5ZDf SQdugmj7UyOLnefp8ffi2bFiHDN9cpwBlr3xXWBBERDYnrsnN/80o/QV97BzeayA pS0/CGJijha0Hz+2O4ha5o33sZ1IJxhmfLzqli+
  • From Debian Bug Tracking System@21:1/5 to All on Sun Mar 10 22:40:02 2024
    Processing control commands:

    severity -1 normal
    Bug #1064147 [src:python-biopython] ftbfs: test failures affecting Bio.SeqIO.SeqXmIIO
    Severity set to 'normal' from 'serious'

    --
    1064147: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1064147
    Debian Bug Tracking System
    Contact owner@bugs.debian.org with problems

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)