Skip to content

Commit

Permalink
Bump version number to 0.23.0 and add release notes
Browse files Browse the repository at this point in the history
  • Loading branch information
jmarshall committed Feb 5, 2025
1 parent b18dde8 commit 6b4e136
Show file tree
Hide file tree
Showing 3 changed files with 78 additions and 2 deletions.
76 changes: 76 additions & 0 deletions NEWS
Original file line number Diff line number Diff line change
@@ -1,6 +1,82 @@
.. An online version of the release history can be found here:
.. http://pysam.readthedocs.io/en/latest/release.html

Release 0.23.0
==============

.. rubric:: 5 February 2025

This pysam release wraps htslib/samtools/bcftools 1.21 (PR #1310).

It has been tested with Python versions 3.6 through 3.13, and wheels are
available via PyPI_ for all of those Python versions. Python versions 3.6
through 3.8 are end-of-life; particularly if you use pysam with one of
these versions, please vote in the version survey at issue #1230.

This is expected to be the last release supporting Python 3.6 and 3.7.

Bugs fixed:

* Fix :func:`pysam.samtools.command(save_stdout=filename) <.samtools.command>`
redirection of output to a file. (#677, reported by Haowen Zhang and analysed
by Youri Hoogstrate)

* Reinstate HTTPS/S3/GCS support in pre-built Linux wheels when used on Debian
and Ubuntu: these wheels now work around the discrepancy between Red Hat and
Debian CA Certificate file locations. (#1257, #1268, reported by Daisie Huang
and Li Tai Fang)

* Calling :meth:`.VariantHeader.new_record` repeatedly with the same
:obj:`samples` object now sets GT correctly every time. (#1308, reported
by Arthur Gymer)

* Correct the exception produced when :meth:`.AlignedSegment.set_tags` is
used with an invalid value type. (#1233, PR #1235, reported by Weisheng Wu
and Marcus Stoiber)

* Many type hinting corrections. (#1298, #1316, PR #1296, PR #1306, PR #1313,
PR #1315, thanks to Victor Epain, Arthur Gymer, @mshunjan, and Matt Stone)

* The undocumented :func:`!pysam.samtools.import_` alias for invoking
``samtools import`` has been removed;
use :func:`pysam.samtools.fqimport() <.samtools.command>` instead.

* Corrections to several test data files to account for HTSlib 1.20 and later's
improved validity checking. (#1291, reported by David Seifert; etc)

New functionality:

* :meth:`.AlignedSegment.get_aligned_pairs` now optionally returns the
associated CIGAR operator in each position tuple. (#1292, PR #1294,
thanks to Lara Fuhrmann and Ivan Blagoev Topolsky)

* New :meth:`AlignmentFile.flush() <.HTSFile.flush>` and
:meth:`VariantFile.flush() <.HTSFile.flush>` methods for flushing buffered
output to streams. (#1299, requested by @blex-max)

* Improved :class:`str() <str>` for :class:`.AlignedSegment` now displays
reference sequence names when they are available and uses ``#N`` only when
necessary. (#1318, requested by Liu)

* Implement :func:`repr` for :class:`.AlignedSegment` so that it displays the
most useful fields. (PR #1267, thanks to Marcel Martin)

* Pysam's tests can now run in parallel. (#1284, reported by Yuri Victorovich)

Documentation improvements:

* More complete documentation of invoking SAMtools and BCFtools subcommands
via Pysam. (#1096, #1241, PR #1261, PR #1275, #1323, et al, reported by
Seung-been "Steven" Lee, Robert Baldwin, Michael Hall, Indraniel Das,
and @shokrofont)

* Use the Pysam names for CIGAR operators rather than internal C names.
(#1255, reported by Ilya Shlyakhter)

* Mention :meth:`AlignmentFile.fetch("*") <.AlignmentFile.fetch>` in the
FAQ entry on fetching unmapped reads. (#424, reported by Ben Weisburd)


Release 0.22.1
==============

Expand Down
2 changes: 1 addition & 1 deletion doc/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@

# General information about the project.
project = u'pysam'
copyright = '2009–2024 Andreas Heger, John Marshall, Kevin Jacobs, et al'
copyright = '2009–2025 Andreas Heger, John Marshall, Kevin Jacobs, et al'

# Included at the end of each rst file
rst_epilog = '''
Expand Down
2 changes: 1 addition & 1 deletion pysam/version.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# pysam versioning information
__version__ = "0.22.1"
__version__ = "0.23.0"

__samtools_version__ = "1.21"
__bcftools_version__ = "1.21"
Expand Down

0 comments on commit 6b4e136

Please sign in to comment.