Andreas Tille pushed to branch master at Debian Med / iva


Commits:
5b125ef3 by Andreas Tille at 2026-07-08T14:35:05+02:00
Restrictions: allow-stderr

- - - - -
f7c43cc0 by Andreas Tille at 2026-07-08T14:36:25+02:00
Work around a Cython issue

- - - - -
859f44f8 by Andreas Tille at 2026-07-08T14:45:55+02:00
Upload to unstable

- - - - -


4 changed files:

- debian/changelog
- + debian/patches/fork-context-workaround.patch
- debian/patches/series
- debian/tests/control


Changes:

=====================================
debian/changelog
=====================================
@@ -1,4 +1,4 @@
-iva (1.0.11+ds-7) UNRELEASED; urgency=medium
+iva (1.0.11+ds-7) unstable; urgency=medium
 
   [ Sascha Steinbiss ]
   * Update the salsa-ci.yml file with the current Debian Med one.
@@ -15,7 +15,7 @@ iva (1.0.11+ds-7) UNRELEASED; urgency=medium
   * Adapt to forkserver in Python3.14
     Closes: #1141283
 
- -- Andreas Tille <[email protected]>  Wed, 08 Jul 2026 11:47:22 +0200
+ -- Andreas Tille <[email protected]>  Wed, 08 Jul 2026 14:37:40 +0200
 
 iva (1.0.11+ds-6) unstable; urgency=medium
 


=====================================
debian/patches/fork-context-workaround.patch
=====================================
@@ -0,0 +1,37 @@
+Description: 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.
+Author: Andreas Tille <[email protected]>
+Bug: https://github.com/python/cpython/issues/144503
+Last-Update: 2026-07-08
+
+--- a/scripts/iva
++++ b/scripts/iva
+@@ -185,8 +185,9 @@ else:
+         fq_to_convert_to_fa_1 = reads_for_trimming_1
+         fq_to_convert_to_fa_2 = reads_for_trimming_2
+ 
+-    p1 = multiprocessing.Process(target=pyfastaq.tasks.to_fasta, 
args=(fq_to_convert_to_fa_1, reads_1), kwargs={'line_length':0})
+-    p2 = multiprocessing.Process(target=pyfastaq.tasks.to_fasta, 
args=(fq_to_convert_to_fa_2, reads_2), kwargs={'line_length':0})
++    mp_ctx = multiprocessing.get_context('fork')
++    p1 = mp_ctx.Process(target=pyfastaq.tasks.to_fasta, 
args=(fq_to_convert_to_fa_1, reads_1), kwargs={'line_length':0})
++    p2 = mp_ctx.Process(target=pyfastaq.tasks.to_fasta, 
args=(fq_to_convert_to_fa_2, reads_2), kwargs={'line_length':0})
+     p1.start()
+ 
+     if options.threads == 1:


=====================================
debian/patches/series
=====================================
@@ -6,3 +6,4 @@ python3.12.patch
 syntax-warning.patch
 check-test-data-and-altdir.patch
 fix_python3.14_forkserver.patch
+fork-context-workaround.patch


=====================================
debian/tests/control
=====================================
@@ -1,4 +1,4 @@
 Tests: run-unit-test
 Depends: @, trimmomatic, python3-packaging
-Restrictions: skip-not-installable
+Restrictions: skip-not-installable, allow-stderr
 # Currently kmc is only available for amd64



View it on GitLab: 
https://salsa.debian.org/med-team/iva/-/compare/14deaa90204151c2e5081da30b9a9b4b54966473...859f44f85eb9928349b2b9267f64d4a64a25e929

-- 
View it on GitLab: 
https://salsa.debian.org/med-team/iva/-/compare/14deaa90204151c2e5081da30b9a9b4b54966473...859f44f85eb9928349b2b9267f64d4a64a25e929
You're receiving this email because of your account on salsa.debian.org. Manage 
all notifications: https://salsa.debian.org/-/profile/notifications | Help: 
https://salsa.debian.org/help


_______________________________________________
debian-med-commit mailing list
[email protected]
https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/debian-med-commit

Reply via email to