Debian Patches
Status for iva/1.0.11+ds-8
| Patch | Description | Author | Forwarded | Bugs | Origin | Last update |
|---|---|---|---|---|---|---|
| disable-multithreaded-test.patch | disable multithreaded test One of the tests uses Python's multiprocessing, which on some machines causes FTBFS due to problematic permissions on /dev/shm, resulting in: PermissionError: [Errno 13] Permission denied This patch disables this test to allow building at the minor expense of this missing test. |
Sascha Steinbiss <satta@debian.org> | not-needed | |||
| perl-shebang.patch | Use Debian's Perl path | Sascha Steinbiss <satta@debian.org> | not-needed | |||
| samtools1.10 | Fix samtools version parsing so that 1.10 > 1.2 | Michael R. Crusoe <michael.crusoe@gmail.com> | yes | |||
| disable-ram-test.patch | disable tests that run KMC KMC needs a lot of memory (multi-gigabyte) and fails hard when that memory cannot be allocated, which can cause builds to fail when tests are crashing because of that on low-spec buildds. Let's disable these tests for now. |
Sascha Steinbiss <satta@debian.org> | not-needed | 2020-02-09 | ||
| python3.12.patch | Python3.12 compatibility by avoiding usage of distutils | Andreas Tille <tille@debian.org> | yes | debian | 2024-02-01 | |
| syntax-warning.patch | raw strings for regexes. Starting with at least Python 3.13, bytecode compilation of iva scripts results in multiple syntax warnings: . Setting up iva (1.0.11+ds-5) ... /usr/lib/python3/dist-packages/iva/external_progs.py:33: SyntaxWarning: invalid escape sequence '\(' 'kmc': ('kmc', re.compile('^K-Mer Counter \(KMC\) ver\. (.*) \(.*\)$')), /usr/lib/python3/dist-packages/iva/external_progs.py:34: SyntaxWarning: invalid escape sequence '\(' 'kmc_dump': ('kmc_dump', re.compile('^KMC dump ver. (.*) \(.*\)$')), /usr/lib/python3/dist-packages/iva/external_progs.py:37: SyntaxWarning: invalid escape sequence '\(' 'nucmer': ('nucmer --version', re.compile('^NUCmer \(NUCleotide MUMmer\) version (.*)$')), /usr/lib/python3/dist-packages/iva/external_progs.py:38: SyntaxWarning: invalid escape sequence '\(' 'R': ('R --version', re.compile('^R version (.*) \(.*\) --')), /usr/lib/python3/dist-packages/iva/external_progs.py:40: SyntaxWarning: invalid escape sequence '\d' 'samtools': ('samtools', re.compile('(\d+\.\d+[\.\d]*)')), /usr/lib/python3/dist-packages/iva/kraken.py:360: SyntaxWarning: invalid escape sequence '\.' self._genbank2embl(fname, re.sub('\.gbk$', '', fname) + '.embl') /usr/lib/python3/dist-packages/iva/kraken.py:415: SyntaxWarning: invalid escape sequence '\W' return re.sub('\W', '_', s).strip('_') /usr/lib/python3/dist-packages/iva/mapping.py:161: SyntaxWarning: invalid escape sequence '\^' s = re.sub('\^.', '', s) . This change goes through regexes occurrences to make them raw strings, in order to make them more robust to backslash usage. |
Étienne Mollier <emollier@debian.org> | yes | debian | 2024-12-04 | |
| check-test-data-and-altdir.patch | Check test data availability and support alternative location iva/test_run_data is no longer bundled inside the Debian iva package. It's provided via a symlink (usr/lib/python3/dist-packages/iva/test_run_data -> usr/share/doc/iva/examples) from the separate iva-examples package, which is only a Suggests, not a Depends, of iva. . This makes Tester check the data directory exists and is non-empty before doing anything else, printing a clear warning. It also accepts an explicit alternative directory, wired up in scripts/iva as --test_data_dir, and drops the dependency on iva.egg_extract (no longer needed once we have a plain absolute path). |
Andreas Tille <tille@debian.org> | not-needed | 2026-07-08 | ||
| fix_python3.14_forkserver.patch | Guard against re-execution during multiprocessing forkserver bootstrap Python 3.14 changed the default multiprocessing start method on Linux from "fork" to "forkserver". This patch prevents reimporting and re-executing the entire script from scratch |
Andreas Tille <tille@debian.org> | yes | debian | 2026-07-08 | |
| fork-context-workaround.patch | Use the fork multiprocessing context explicitly Python 3.14 made "forkserver" the default multiprocessing start method on Linux. There is a known CPython regression (https://github.com/python/cpython/issues/144503, present in at least 3.14.3/3.13.12) in forkserver's daemon bootstrap that can surface as "ConnectionResetError: [Errno 104] Connection reset by peer" during the initial authentication handshake, unrelated to anything this script does. . This script only uses multiprocessing.Process for two short-lived, trivial parallel calls to pyfastaq.tasks.to_fasta() and has no threading concerns that would make "fork" unsafe, so request the "fork" context explicitly for these two Process objects rather than relying on the (currently broken in some 3.14 point releases) forkserver default. . This is a workaround for an upstream Python bug, not a long-term design choice; it can be dropped once the relevant Python versions in Debian carry the fix for cpython#144503. |
Andreas Tille <tille@debian.org> | yes | upstream | 2026-07-08 |
All known versions for source package 'iva'
- 1.0.11+ds-8 (sid)
- 1.0.11+ds-6 (trixie)
- 1.0.11+ds-3 (bookworm)
