From 2e6953fd06cfe9d8befbab54368b48849079f780 Mon Sep 17 00:00:00 2001 From: seth Date: Thu, 9 May 2024 15:12:34 -0400 Subject: [PATCH] python311Packages.biopython: patch SeqXMLIO parser --- .../biopython/close_parser_on_time.patch | 18 ++++++++++++++++++ .../python-modules/biopython/default.nix | 7 +++++++ 2 files changed, 25 insertions(+) create mode 100644 pkgs/development/python-modules/biopython/close_parser_on_time.patch diff --git a/pkgs/development/python-modules/biopython/close_parser_on_time.patch b/pkgs/development/python-modules/biopython/close_parser_on_time.patch new file mode 100644 index 000000000000..05d22e22ed9e --- /dev/null +++ b/pkgs/development/python-modules/biopython/close_parser_on_time.patch @@ -0,0 +1,18 @@ +diff --git a/Bio/SeqIO/SeqXmlIO.py b/Bio/SeqIO/SeqXmlIO.py +index 8fe75ebb728..6758317d05f 100644 +--- a/Bio/SeqIO/SeqXmlIO.py ++++ b/Bio/SeqIO/SeqXmlIO.py +@@ -498,11 +498,12 @@ def iterate(self, handle): + if not text: + break + parser.feed(text) ++ # Closing the parser ensures that all XML data fed into it are processed ++ parser.close() + # We have reached the end of the XML file; + # send out the remaining records + yield from records + records.clear() +- parser.close() + + + class SeqXmlWriter(SequenceWriter): diff --git a/pkgs/development/python-modules/biopython/default.nix b/pkgs/development/python-modules/biopython/default.nix index 2ec814f56aef..2baa052011d5 100644 --- a/pkgs/development/python-modules/biopython/default.nix +++ b/pkgs/development/python-modules/biopython/default.nix @@ -18,6 +18,13 @@ buildPythonPackage rec { hash = "sha256-eOa/t43mMDQDev01/nfLbgqeW2Jwa+z3in2SKxbtg/c="; }; + patches = [ + # cherry-picked from https://github.com/biopython/biopython/commit/3f9bda7ef44f533dadbaa0de29ac21929bc0b2f1 + # fixes SeqXMLIO parser to process all data. remove on next update + ./close_parser_on_time.patch + ]; + + nativeBuildInputs = [ setuptools ];