From p.j.a.cock at googlemail.com Thu Aug 6 11:40:46 2026 From: p.j.a.cock at googlemail.com (Peter Cock) Date: Thu, 6 Aug 2026 16:40:46 +0100 Subject: [Biopython-announce] Biopython 1.88 released - includes security fix for NEXUS parsing Message-ID: Dear Biopythoneers, Biopython 1.88 was released today, files on PyPI (and Conda-Forge) as usual: https://pypi.org/project/biopython/1.88/ Release notes here: https://github.com/biopython/biopython/blob/master/NEWS.rst This release of Biopython supports Python 3.10, 3.11, 3.12, 3.13, 3.14 and the Python 3.15 release candidate. It has also been tested on PyPy3.10 v7.3.19. Python 3.10 is approaching end of life, our support for it is now deprecated. Note that there are no pre-compiled wheels for Python 3.15 yet (we are waiting on wheels for NumPy). The primary driver for this release is a security fix to remove the use of Python's built-in function eval following a report by email from independent security researcher Anand Patil. This demonstrated arbitrary code execution via the Bio.Nexus NEXUS parser. We have requested a CVE reference number. If you cannot update, please do not parse any untrusted NEXUS files! Additionally, a number of small bugs and typos have been fixed with additions to the test suite and type annotations. Many thanks to the Biopython developers and community for making this release possible, especially the following contributors: * Al Fattah Suyadi (first contribution) * Laura Pi?ero Roig (first contribution) * Marcus Campbell (first contribution) * Michiel de Hoon * Peter Cock Thank you all, Peter -- Checksums for the files uploaded to PyPI: ? md5sum biopython-1.88* cc8b55ddd91957804279bd6384437896 biopython-1.88-cp310-cp310-macosx_11_0_arm64.whl a765b4d33ed723c644a8617786d38282 biopython-1.88-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl e580b4b0ae1ae46bbcebfc0d2c999fa0 biopython-1.88-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl c09bd5509beef70d3b7038e1c3d66723 biopython-1.88-cp310-cp310-win_amd64.whl 6afa8edff36668a5e30cfcb566d0a0f6 biopython-1.88-cp310-cp310-win32.whl 6fdfd67a48f43ecfaeeef28913e7ab3e biopython-1.88-cp311-cp311-macosx_11_0_arm64.whl 353e6721b37099916d3af88f4b8ab961 biopython-1.88-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl 36c7b29c7cf7edb56bcaa3caa16f7922 biopython-1.88-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl a8b82d70a0de70b39f9c64f01150ced9 biopython-1.88-cp311-cp311-win_amd64.whl 6ec8fd6ed00985916562af0d240a732d biopython-1.88-cp311-cp311-win32.whl b3c5963a8a29f30978e63171383ea1b2 biopython-1.88-cp312-cp312-macosx_11_0_arm64.whl 8fc21771d34cafa97c06f618915eecb3 biopython-1.88-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl 7282e0ee0dc3a4ffbbb86d74191da2ca biopython-1.88-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl bf2b6e303360a6f5b920a7fe8ba6b037 biopython-1.88-cp312-cp312-win_amd64.whl 45be116c1b1063bd5b330bcc9e89a2e2 biopython-1.88-cp312-cp312-win32.whl 9682fdef0d0d2accbff1f772cc51159c biopython-1.88-cp313-cp313-macosx_11_0_arm64.whl 5d693a0b6efbe3916b03ac82d9170f5a biopython-1.88-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl 53adf6d9f5a88d3b80d6b8f92cba1317 biopython-1.88-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl 8eb83a42e8d5e8cc60dfc83a54189bfc biopython-1.88-cp313-cp313-win_amd64.whl 335433a086f72a93c58b1f29056aa904 biopython-1.88-cp313-cp313-win32.whl 07cf43e642bc58e16009f902666cd987 biopython-1.88-cp314-cp314-macosx_11_0_arm64.whl 285bc522148ff7374cc0b49760ba3cdf biopython-1.88-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl b1259592deb643155f2876dce6238511 biopython-1.88-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl d4e4f8a524c771ed99394f6ccd910869 biopython-1.88-cp314-cp314-win_amd64.whl 3f2559a82876f1cffaaa53673db81063 biopython-1.88-cp314-cp314-win32.whl 0cef19cc0cfea819ae81931270c5b16f biopython-1.88-cp314-cp314t-macosx_11_0_arm64.whl b82d4ec5963992d696907f48fdbd9029 biopython-1.88-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl 76ee989ed2fbc572e936c1a672e911ae biopython-1.88-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl 7355f8b3f99ec4e5d7febde5993a5c23 biopython-1.88-cp314-cp314t-win_amd64.whl 873162b52a61e135bdafacf50332cfe0 biopython-1.88-cp314-cp314t-win32.whl 20484f055dd6bc26d567f73365adc27f biopython-1.88.tar.gz 4e4433c703c4cc7a643cf5ada3922d1f biopython-1.88.zip ? sha256sum biopython-1.88* 9732e2c74b1e3751810b026e568817afb18101039c30c9b16b9193e40ec1efdb biopython-1.88-cp310-cp310-macosx_11_0_arm64.whl 02a6d8ed4eea1ee9e1c2a9d7690f21a60406bcfee7c71348363e267cce397bee biopython-1.88-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl b321ee0f652aaecefe065b11d64b527c4d04f7826dfb7cfa31edea5ab1db07c2 biopython-1.88-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl 0e732f44208f1bab7c42bfea94422609249bd897da6b25b5588618436e80a6d2 biopython-1.88-cp310-cp310-win_amd64.whl 99288eb34ce75cb85a10ab3e5d76ffe45f0c03c7f5cc6d144d3777419e44b31e biopython-1.88-cp310-cp310-win32.whl 793de1a57d9b75546a4041f547b6a848031a71933f66d4c761857b0b0118c46b biopython-1.88-cp311-cp311-macosx_11_0_arm64.whl 906a7b2d4bc4515f5718f3ae994bd3bcfe8e87d963954008b57e0109e3772a58 biopython-1.88-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl 99e1f7022ab8eee2ae9e9a05b66ad183b9fe4eeb4e561a65ed0fd85eef5f8267 biopython-1.88-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl 5808c5b980e63226426737b6f71b5dd7747e2e3d0074720cc04edf348ab57eab biopython-1.88-cp311-cp311-win_amd64.whl 024e438d044a0b1d4a0157af4ab2411b83389696aee3cdeb71f5ee74d0a59df2 biopython-1.88-cp311-cp311-win32.whl 43ce1fbed01c0ddb903fa426fa0f836062d973a09df15560ac8e895da24c1350 biopython-1.88-cp312-cp312-macosx_11_0_arm64.whl fe2dccf88e309dc896e7c2cc974a47be7a7b96d59c7f2ffd74ffcc7cfbdebb0c biopython-1.88-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl 9384c30460832926e765319040d732d1252a713a05af1dd4cc8b19cb1d590439 biopython-1.88-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl dd5131b70287486af1acef2fc40de51c68de2ea740ab772097ac2d10bad9a0b5 biopython-1.88-cp312-cp312-win_amd64.whl 4904abb18a1e039a631e549529c9b8123a166838cafe27f649f83f0183382d61 biopython-1.88-cp312-cp312-win32.whl 465caece761b9ec22e0dc63bb5969517c901587a27104c4f1cee69f414b4df2d biopython-1.88-cp313-cp313-macosx_11_0_arm64.whl df709eabdce2fc2cc1059fcefbbea245d2b2c41fc2026eda6194b810474e68d6 biopython-1.88-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl 410eaa083fcc308b44c7051e597ae2f39e4068754bdd605cc32aed025aa132d0 biopython-1.88-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl f0aaf49f0c8919fb7a02cdc3db9e7f89165f53417a18d80508e0f167121cb7c1 biopython-1.88-cp313-cp313-win_amd64.whl e3ac69b8abddac75dce301cbe77fc2650cbe0bd62ab2d2662d0f6f378b8c8018 biopython-1.88-cp313-cp313-win32.whl 5508f8f585d101269982d58abb4ab50cbde5d3c50e21b01986c55ac7cc5f34f9 biopython-1.88-cp314-cp314-macosx_11_0_arm64.whl 8ffa3f911a8ded827663bb98ffcd5fcfcaed2c7262bf6d3be5338332c81c7b66 biopython-1.88-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl 99144485e7723842fe6c6bb0c13f323a550fc30817d3e0814126987f9b06855a biopython-1.88-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl 0b8fea4940c58915e6d4c670f17f4e9c20797e9e26d4300b6efbe960b99d199d biopython-1.88-cp314-cp314-win_amd64.whl b86c1e86c829b372995d5e0eb80146551972a1bff25da1698b48844b6e6840cd biopython-1.88-cp314-cp314-win32.whl 393398c8383217f3f51aaa2372960e697b494a3eee97e1c4d5f62ee60ea9287b biopython-1.88-cp314-cp314t-macosx_11_0_arm64.whl ab5c2211a9d1ad7d4b8afd7f53caa7f20e104a5ddf0b30f7cb899f039379de68 biopython-1.88-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl adbafdc7769d46cc9e72aba86b7e2da3aa078d2a533b53757ca88ca6ff1d0489 biopython-1.88-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl f684b0fddbfe3b37de36d1b377c4c10d968226940c307a5a16e360e63063900f biopython-1.88-cp314-cp314t-win_amd64.whl 1e29b72bb79786f4157b394fbd852d736ffd883a13a177c21d6d15ea1b67d357 biopython-1.88-cp314-cp314t-win32.whl 9aaa31c0bda4d059f7b2ee00bfdb5cbb73ade3057aa4b737a7cc0187091d071a biopython-1.88.tar.gz 0c0142bb3cd98a51da658200f5c79b1e6e63778638f2bcb62154ead5ef41f861 biopython-1.88.zip