From 08de757a39ab42e867fa188faa860a5fd0b648c1 Mon Sep 17 00:00:00 2001 From: John Marshall Date: Thu, 5 Oct 2023 19:45:09 +1300 Subject: [PATCH] Bump version number to 0.22.0 and add release notes Add handover message from Andreas, and add John to various lists of authors. Update copyright years in doc/conf.py. --- NEWS | 81 ++++++++++++++++++++++++++++++++++++++++++++++++ doc/conf.py | 4 +-- doc/index.rst | 2 +- pysam/version.py | 2 +- 4 files changed, 85 insertions(+), 4 deletions(-) diff --git a/NEWS b/NEWS index 20dc2781..ad7cfb15 100644 --- a/NEWS +++ b/NEWS @@ -1,6 +1,87 @@ .. An online version of the release history can be found here: .. http://pysam.readthedocs.io/en/latest/release.html +Release 0.22.0 +============== + +.. rubric:: 5 October 2023 + +This pysam release wraps htslib/samtools/bcftools 1.18 (PR #1208). + +It has been tested with Python versions 3.6 through 3.12, and wheels are +available via pypi_ for all of those Python versions. Python versions 3.6 +and 3.7 are end-of-life; particularly if you use pysam with either of +these versions, please vote in the version survey at issue #1230. + +The final pysam release that supported Python 2.7 was v0.20.0. + +Bugs fixed: + +* Remove Cython from runtime dependencies (PR #1186, thanks to Nicola Soranzo, + also reported by Arya Massarat in PR #1194) + +* Miscellaneous dependency improvements (PR #1216, #1217, PR #1218, PR #1219, + thanks to Martin Larralde and Arthur Vigil) + +* Suppress spurious "Could not retrieve index file" message when opening an + AlignmentFile (#939, #1214, reported by ChengYong Tham and Sebastian Röner) + +* Propagate SAM parsing errors encounted in :meth:`.AlignedSegment.fromstring` + (#1196, reported by DV Klopfenstein) + +* Accept invalid MD:A tagged fields produced by HTSeq instead of crashing + in :meth:`AlignedSegment.get_aligned_pairs(with_seq=True) + <.AlignedSegment.get_aligned_pairs>` (#1226, reported by Isaac Vock) + +* Fix multiarch macOS CI builds by removing brewed liblzma (#1205, reported + by Till Hartmann) + +* Fix :attr:`.VariantRecordSample.alleles` type hint (#1179, reported by + David Seifert) + +New functionality: + +* Add optional :meth:`HTSFile.seek(..., whence) <.HTSFile.seek>` parameter + and clarify which functions use libc.SEEK_SET vs io.SEEK_SET + (#1185, requested by luyulin) + +* File handling improvements in samtools & bcftools commands (should improve + #1193 and #1195, reported by Rob Bierman and Sam Chorlton) + +* Improve :class:`.FastxFile` performance (PR #1227, thanks to Fabian Klötzl + and Valentyn Bezshapkin) + +* Improve the accuracy of type hints for :class:`.AlignmentFile` iteration + (#1184, PR #1189, reported by @PikalaxALT) + +Documentation improvements: + +* Clarify that :meth:`.AlignedSegment.get_aligned_pairs` results are 0-based + (#1180, reported by Nick Semenkovich) + +* Clarify :meth:`.AlignedSegment.get_reference_positions` documentation + (#836, #838, reported by Liang Ou and Nick Stoler) + +* Clarify that installation via pip usually uses a wheel, and that configuring + the build via $HTSLIB_CONFIGURE_OPTIONS etc only applies when installing from + an sdist (#1086, reported by Layne Sadler) + +A message from pysam's founder, Andreas Heger: + + As many of you will have noticed, John Marshall has been effectively + maintaining pysam and supporting users over the last few years. + I, Andreas, am very grateful for the countless hours he has contributed. + Unfortunately, I will not be able to contribute much in the near and + intermediate future. To keep pysam going, John has kindly agreed to + continue maintaining and supporting pysam as the principal developer + of pysam. I am very happy to know that pysam is in good hands and want + to thank again John and the wider pysam community for their suggestions, + bug reports, code contributions and general support. + +Thank you Andreas for all your work over the years and the solid foundations +that pysam enjoys and the useful functionality it provides. + + Release 0.21.0 ============== diff --git a/doc/conf.py b/doc/conf.py index 38511cb9..1ada4bc6 100644 --- a/doc/conf.py +++ b/doc/conf.py @@ -51,7 +51,7 @@ # General information about the project. project = u'pysam' -copyright = u'2009–2021, Andreas Heger, Kevin Jacobs, et al' +copyright = '2009–2023 Andreas Heger, John Marshall, Kevin Jacobs, et al' # Included at the end of each rst file rst_epilog = ''' @@ -229,7 +229,7 @@ def setup(app): # (source start file, target name, title, author, documentclass [howto/manual]). latex_documents = [ ('index', 'pysam.tex', u'pysam documentation', - u'Andreas Heger, Kevin Jacobs, et al.', 'manual'), + 'Andreas Heger, John Marshall, Kevin Jacobs, et al', 'manual'), ] # The name of an image file (relative to this directory) to place at the top of diff --git a/doc/index.rst b/doc/index.rst index e4521da2..0b4485ce 100644 --- a/doc/index.rst +++ b/doc/index.rst @@ -1,7 +1,7 @@ pysam: htslib interface for python ================================== -:Author: Andreas Heger, Kevin Jacobs and contributors +:Author: Andreas Heger, John Marshall, Kevin Jacobs, and contributors :Date: |today| :Version: |version| diff --git a/pysam/version.py b/pysam/version.py index 757e323a..62a9f31a 100644 --- a/pysam/version.py +++ b/pysam/version.py @@ -1,5 +1,5 @@ # pysam versioning information -__version__ = "0.21.0" +__version__ = "0.22.0" __samtools_version__ = "1.18" __bcftools_version__ = "1.18"