[med-svn] [Git][med-team/cyvcf2][master] 9 commits: New upstream version 0.31.4
Étienne Mollier (@emollier)
gitlab at salsa.debian.org
Mon Nov 3 21:28:03 GMT 2025
Étienne Mollier pushed to branch master at Debian Med / cyvcf2
Commits:
dd2cec80 by Étienne Mollier at 2025-11-03T22:17:06+01:00
New upstream version 0.31.4
- - - - -
62b89635 by Étienne Mollier at 2025-11-03T22:17:07+01:00
Update upstream source from tag 'upstream/0.31.4'
Update to upstream version '0.31.4'
with Debian dir 63ac565a696dc34d1a045c0bcb5d08f7d93b149a
- - - - -
cfc8a340 by Étienne Mollier at 2025-11-03T22:21:20+01:00
d/control: build depends on python3-numpy-dev.
- - - - -
6cba8610 by Étienne Mollier at 2025-11-03T22:24:03+01:00
i386.patch: provide dep3 header.
- - - - -
b7fb4a68 by Étienne Mollier at 2025-11-03T22:24:34+01:00
add_htslib_link_dependency.patch: dep3 header.
This change normalizes the Last-Update timestamp.
- - - - -
294dc59c by Étienne Mollier at 2025-11-03T22:25:41+01:00
d/watch: convert to v5 Github template.
- - - - -
b1f2707a by Étienne Mollier at 2025-11-03T22:26:10+01:00
d/control: declare compliance to standards version 4.7.2.
- - - - -
f0847bc4 by Étienne Mollier at 2025-11-03T22:26:46+01:00
d/control: drop redundant Rules-Requires-Root: no.
- - - - -
b41fb5d2 by Étienne Mollier at 2025-11-03T22:27:24+01:00
d/changelog: ready for upload to unstable.
- - - - -
14 changed files:
- .github/workflows/build.yml
- .github/workflows/wheels.yml
- CHANGES.md
- ci/osx-deps
- cyvcf2/__init__.py
- cyvcf2/cyvcf2.pyx
- cyvcf2/tests/test_reader.py
- debian/changelog
- debian/control
- debian/patches/add_htslib_link_dependency.patch
- debian/patches/i386.patch
- debian/watch
- pyproject.toml
- requirements.txt
Changes:
=====================================
.github/workflows/build.yml
=====================================
@@ -53,23 +53,25 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
- os: [ubuntu-22.04, macos-12]
+ os: [ubuntu-22.04, macos-13]
python-version:
- ["pypy3.10", "3.7", "3.8", "3.9", "3.10", "3.11", "3.12"]
+ ["pypy3.10", "3.7", "3.8", "3.9", "3.10", "3.11", "3.12", "3.13", "3.14"]
exclude:
# Run only the latest versions on macOS and windows
- - os: macos-12
+ - os: macos-13
python-version: "pypy3.10"
- - os: macos-12
+ - os: macos-13
python-version: "3.7"
- - os: macos-12
+ - os: macos-13
python-version: "3.8"
- - os: macos-12
+ - os: macos-13
python-version: "3.9"
- - os: macos-12
+ - os: macos-13
python-version: "3.10"
- - os: macos-12
+ - os: macos-13
python-version: "3.11"
+ - os: macos-12
+ python-version: "3.12"
steps:
- uses: actions/checkout at v4
@@ -185,7 +187,7 @@ jobs:
runs-on: ubuntu-22.04
strategy:
matrix:
- python-version: ["3.12"]
+ python-version: ["3.14"]
steps:
- uses: actions/checkout at v4
=====================================
.github/workflows/wheels.yml
=====================================
@@ -4,6 +4,7 @@ on:
push:
branches:
- main
+ - wheels
tags:
- "v*.*.*"
workflow_dispatch:
@@ -27,20 +28,17 @@ jobs:
- [ubuntu-22.04, musllinux_x86_64]
- [ubuntu-22.04, manylinux_aarch64]
- [ubuntu-22.04, musllinux_aarch64]
- - [macos-12, macosx_x86_64]
+ - [macos-13, macosx_x86_64]
- [macos-14, macosx_arm64]
- python-version: [pp310, cp37, cp38, cp39, cp310, cp311, cp312]
+ python-version: [pp310, cp38, cp39, cp310, cp311, cp312, cp313, cp314]
exclude:
- # pp310, cp37, cp38 on musllinux is not support
+ # pp310, cp38 on musllinux is not support
# cp39, cp310 on musllinux_aarch64, wheel building may hangup, ignore it
- - buildplat: [ubuntu-22.04, musllinux_x86_64]
- python-version: cp37
+ # drop 37 so we can use newer cibuildwheel
- buildplat: [ubuntu-22.04, musllinux_x86_64]
python-version: cp38
- buildplat: [ubuntu-22.04, musllinux_x86_64]
python-version: pp310
- - buildplat: [ubuntu-22.04, musllinux_aarch64]
- python-version: cp37
- buildplat: [ubuntu-22.04, musllinux_aarch64]
python-version: cp38
- buildplat: [ubuntu-22.04, musllinux_aarch64]
@@ -49,14 +47,6 @@ jobs:
python-version: cp310
- buildplat: [ubuntu-22.04, musllinux_aarch64]
python-version: pp310
- # cp37 on macos arm64 is not supported
- - buildplat: [macos-14, macosx_arm64]
- python-version: cp37
- # cp38 pp310 on macos arm64 have some problem
- - buildplat: [macos-14, macosx_arm64]
- python-version: cp38
- - buildplat: [macos-14, macosx_arm64]
- python-version: pp310
steps:
- uses: actions/checkout at v4
@@ -68,7 +58,7 @@ jobs:
uses: docker/setup-qemu-action at v3
- name: Build wheels
- uses: pypa/cibuildwheel at v2.18.1
+ uses: pypa/cibuildwheel at v3.1.4
with:
package-dir: .
output-dir: wheelhouse
@@ -76,6 +66,8 @@ jobs:
env:
# select
CIBW_BUILD: ${{ matrix.python-version }}-${{ matrix.buildplat[1] }}
+ CIBW_ENABLE: pypy
+ CIBW_PRERELEASE_PYTHONS: 1
# linux
CIBW_MANYLINUX_X86_64_IMAGE: manylinux2014
@@ -118,7 +110,7 @@ jobs:
- uses: actions/setup-python at v5
name: Install Python
with:
- python-version: "3.12"
+ python-version: "3.14"
- name: Install dependencies
run: |
=====================================
CHANGES.md
=====================================
@@ -1,3 +1,9 @@
+# v0.31.4
++ add python 3.14 wheels (thanks @benjeffery #321)
+
+# v0.31.2
++ build fix for OSX (thanks @benjeffery #319)
+
# v0.31.1
+ build fix for numpy 2.0.0 (#307, #308 thanks @aryarm for fixing build)
=====================================
ci/osx-deps
=====================================
@@ -2,24 +2,33 @@
set -euo pipefail
-# same with python
-export MACOSX_DEPLOYMENT_TARGET=10.9
+export MACOSX_DEPLOYMENT_TARGET=${MACOSX_DEPLOYMENT_TARGET:-10.9}
+ARCHS="arm64;x86_64"
+COMMON_CMAKE_ARGS=(
+ -DCMAKE_OSX_DEPLOYMENT_TARGET="${MACOSX_DEPLOYMENT_TARGET}"
+ -DCMAKE_OSX_ARCHITECTURES="${ARCHS}"
+ -DCMAKE_BUILD_TYPE=Release
+)
brew install automake libdeflate
brew unlink xz
-# build liblzma and libdelfate for deployment target 10.9
+# build liblzma and libdeflate for deployment target
XZ_VERSION=5.4.6
-curl -L -o xz-$XZ_VERSION.tar.gz "https://github.com/tukaani-project/xz/releases/download/v$XZ_VERSION/xz-$XZ_VERSION.tar.gz"
-tar -xf xz-$XZ_VERSION.tar.gz
-cd xz-$XZ_VERSION
-cmake -B build && cmake --build build
-cd ./build && sudo make install
+curl -L -o "xz-${XZ_VERSION}.tar.gz" "https://github.com/tukaani-project/xz/releases/download/v${XZ_VERSION}/xz-${XZ_VERSION}.tar.gz"
+tar -xf "xz-${XZ_VERSION}.tar.gz"
+pushd "xz-${XZ_VERSION}" >/dev/null
+cmake -S . -B build "${COMMON_CMAKE_ARGS[@]}"
+cmake --build build --config Release --parallel
+sudo cmake --install build --config Release
+popd >/dev/null
LIBDEFLATE_VERSION=1.20
-curl -L -o libdeflate-v"$LIBDEFLATE_VERSION".tar.gz https://github.com/ebiggers/libdeflate/archive/refs/tags/v"$LIBDEFLATE_VERSION".tar.gz
-tar xzf libdeflate-v"$LIBDEFLATE_VERSION".tar.gz
-cd libdeflate-"$LIBDEFLATE_VERSION"
-cmake -B build && cmake --build build
-cd ./build && sudo make install
+curl -L -o "libdeflate-v${LIBDEFLATE_VERSION}.tar.gz" "https://github.com/ebiggers/libdeflate/archive/refs/tags/v${LIBDEFLATE_VERSION}.tar.gz"
+tar -xf "libdeflate-v${LIBDEFLATE_VERSION}.tar.gz"
+pushd "libdeflate-${LIBDEFLATE_VERSION}" >/dev/null
+cmake -S . -B build "${COMMON_CMAKE_ARGS[@]}"
+cmake --build build --config Release --parallel
+sudo cmake --install build --config Release
+popd >/dev/null
=====================================
cyvcf2/__init__.py
=====================================
@@ -2,4 +2,4 @@ from .cyvcf2 import (VCF, Variant, Writer, r_ as r_unphased, par_relatedness,
par_het)
Reader = VCFReader = VCF
-__version__ = "0.31.1"
+__version__ = "0.31.4"
=====================================
cyvcf2/cyvcf2.pyx
=====================================
@@ -293,6 +293,12 @@ cdef class VCF(HTSFile):
if threads is not None:
self.set_threads(threads)
+ def __enter__(self):
+ return self
+
+ def __exit__(self, type, value, tb):
+ self.close()
+
def set_threads(self, int n):
v = hts_set_threads(self.hts, n)
if v < 0:
@@ -397,7 +403,7 @@ cdef class VCF(HTSFile):
description: str
description of added line.
"""
- ret = bcf_hdr_append(self.hdr, "##INFO=<ID={id},Number={number},Type={type},Description=\"{description}\">".format(id=id, type=type, number=number, description=description))
+ ret = bcf_hdr_append(self.hdr, "##INFO=<ID={id},Number={number},Type={type},Description=\"{description}\">".format(id=id, type=type, number=number, description=description).encode())
if ret != 0:
raise Exception("unable to update to header: %d", ret)
ret = bcf_hdr_sync(self.hdr)
=====================================
cyvcf2/tests/test_reader.py
=====================================
@@ -1410,3 +1410,9 @@ def test_num_records_no_index(path):
vcf = VCF(os.path.join(HERE, path))
with pytest.raises(ValueError, match="must be indexed"):
vcf.num_records
+
+def test_reader_context_manager():
+ with VCF(VCF_PATH) as vcf:
+ pass
+ with pytest.raises(Exception, match="attempt to iterate over closed"):
+ next(vcf)
=====================================
debian/changelog
=====================================
@@ -1,3 +1,16 @@
+cyvcf2 (0.31.4-1) unstable; urgency=medium
+
+ * New upstream version 0.31.4 (Closes: #1119732)
+ * d/control: build depends on python3-numpy-dev.
+ * i386.patch: provide dep3 header.
+ * add_htslib_link_dependency.patch: dep3 header.
+ This change normalizes the Last-Update timestamp.
+ * d/watch: convert to v5 Github template.
+ * d/control: declare compliance to standards version 4.7.2.
+ * d/control: drop redundant Rules-Requires-Root: no.
+
+ -- Étienne Mollier <emollier at debian.org> Mon, 03 Nov 2025 22:27:08 +0100
+
cyvcf2 (0.31.1-2) unstable; urgency=medium
* Team upload.
=====================================
debian/control
=====================================
@@ -13,6 +13,7 @@ Build-Depends: debhelper-compat (= 13),
python3-setuptools,
python3-all-dev,
python3-numpy,
+ python3-numpy-dev,
python3-coloredlogs,
python3-click,
python3-pytest,
@@ -21,11 +22,10 @@ Build-Depends: debhelper-compat (= 13),
libhts-dev,
libbz2-dev,
help2man <!nodoc>
-Standards-Version: 4.6.2
+Standards-Version: 4.7.2
Vcs-Browser: https://salsa.debian.org/med-team/cyvcf2
Vcs-Git: https://salsa.debian.org/med-team/cyvcf2.git
Homepage: https://github.com/brentp/cyvcf2
-Rules-Requires-Root: no
Package: python3-cyvcf2
Architecture: any
=====================================
debian/patches/add_htslib_link_dependency.patch
=====================================
@@ -1,5 +1,5 @@
Author: Liubov Chuprikova <chuprikovalv at gmail.com>, Nilesh Patra <npatra974 at gmail.com>
-Last-Update: Thu, 9 July 2020 22:59:25 +0530
+Last-Update: 2020-06-09
Description: Add missing link dependency on htslib, cythonize modules
=====================================
debian/patches/i386.patch
=====================================
@@ -1,4 +1,8 @@
Description: I386
+ Skip test on i386 because the file ends up with a few NaN values due to
+ exceeding ranges, hence skipping
+Author: Nilesh Patra <npatra974 at gmail.com>
+Last-Update: 2021-01-26
--- a/cyvcf2/tests/test_reader.py
+++ b/cyvcf2/tests/test_reader.py
@@ -16,6 +16,8 @@ import pytest
=====================================
debian/watch
=====================================
@@ -1,4 +1,5 @@
-version=4
+Version: 5
-opts="filenamemangle=s%(?:.*?)?v?(\d[\d.]*)\.tar\.gz%@PACKAGE at -$1.tar.gz%" \
- https://github.com/brentp/cyvcf2/tags .*/.*/v?@ANY_VERSION@@ARCHIVE_EXT@
+Template: Github
+Owner: brentp
+Project: cyvcf2
=====================================
pyproject.toml
=====================================
@@ -2,7 +2,8 @@
requires = [
"setuptools",
"wheel",
- "cython>=0.23.3",
+ 'cython>=0.23.3,<3; python_version < "3.9"',
+ 'cython>=3; python_version >= "3.9"',
'oldest-supported-numpy; os_name != "nt" and python_version < "3.9"',
'numpy; os_name == "nt" and python_version < "3.9"',
'numpy>=2.0.0; python_version >= "3.9"',
=====================================
requirements.txt
=====================================
@@ -1,4 +1,5 @@
-cython>=0.23.3
+cython>=0.23.3,<3; python_version < "3.9"
+cython>=3; python_version >= "3.9"
coloredlogs
click
setuptools
View it on GitLab: https://salsa.debian.org/med-team/cyvcf2/-/compare/2465cc8c7468376e666c0b584c9ebbbe91875fe4...b41fb5d2805042fc7165b075cd9f0842d6b183d2
--
View it on GitLab: https://salsa.debian.org/med-team/cyvcf2/-/compare/2465cc8c7468376e666c0b584c9ebbbe91875fe4...b41fb5d2805042fc7165b075cd9f0842d6b183d2
You're receiving this email because of your account on salsa.debian.org.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/debian-med-commit/attachments/20251103/f07a0884/attachment-0001.htm>
More information about the debian-med-commit
mailing list