Skip to content

Commit 2afda8b

Browse files
committed
Drop Python 3.9 support
1 parent 6708eb1 commit 2afda8b

File tree

4 files changed

+5
-27
lines changed

4 files changed

+5
-27
lines changed

.github/workflows/cd.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ jobs:
1919
- uses: actions/checkout@v4
2020
- uses: actions/setup-python@v5
2121
with:
22-
python-version: '3.9'
22+
python-version: '3.10'
2323
- name: Install dependencies
2424
run: |
2525
python -m pip install --upgrade pip

.github/workflows/ci.yml

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ jobs:
2525
# Use macos-13 because pip binary packages for ARM aren't
2626
# available for many dependencies
2727
os: [macos-13, macos-14, ubuntu-latest]
28-
python-version: ["3.9", "3.10", "3.11", "3.12"]
28+
python-version: ["3.10", "3.11", "3.12"]
2929
exclude:
3030
# Just run macos tests on one Python version
3131
- os: macos-13
@@ -34,8 +34,6 @@ jobs:
3434
python-version: "3.11"
3535
- os: macos-13
3636
python-version: "3.12"
37-
- os: macos-14
38-
python-version: "3.9"
3937
- os: macos-14
4038
python-version: "3.10"
4139
- os: macos-14

bio2zarr/core.py

Lines changed: 0 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,8 @@
77
import multiprocessing
88
import os
99
import os.path
10-
import sys
1110
import threading
1211
import time
13-
import warnings
1412

1513
import humanfriendly
1614
import numcodecs
@@ -256,22 +254,6 @@ def setup_progress_counter(counter):
256254
_progress_counter = counter
257255

258256

259-
def warn_py39_mac():
260-
if sys.platform == "darwin" and sys.version_info[:2] == (3, 9):
261-
warnings.warn(
262-
"There is a known issue with bio2zarr on MacOS Python 3.9 "
263-
"in which OS-level named semaphores are leaked. "
264-
"You will also probably see warnings like 'There appear to be N "
265-
"leaked semaphore objects at shutdown'. "
266-
"While this is likely harmless for a few runs, it could lead to "
267-
"issues if you do a lot of conversion. To get prevent this issue "
268-
"either: (1) use --worker-processes=0 or (2) upgrade to a newer "
269-
"Python version. See https://github.com/sgkit-dev/bio2zarr/issues/209 "
270-
"for more details.",
271-
stacklevel=2,
272-
)
273-
274-
275257
class ParallelWorkManager(contextlib.AbstractContextManager):
276258
def __init__(self, worker_processes=1, progress_config=None):
277259
# Need to specify this explicitly to suppport Macs and
@@ -284,7 +266,6 @@ def __init__(self, worker_processes=1, progress_config=None):
284266
# production. See note on the SynchronousExecutor class.
285267
self.executor = SynchronousExecutor()
286268
else:
287-
warn_py39_mac()
288269
self.executor = cf.ProcessPoolExecutor(
289270
max_workers=worker_processes,
290271
mp_context=ctx,

pyproject.toml

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ dependencies = [
2626
"cyvcf2",
2727
"bed_reader",
2828
]
29-
requires-python = ">=3.9"
29+
requires-python = ">=3.10"
3030
classifiers = [
3131
"Development Status :: 4 - Beta",
3232
"License :: OSI Approved :: Apache Software License",
@@ -37,7 +37,6 @@ classifiers = [
3737
"Intended Audience :: Science/Research",
3838
"Programming Language :: Python",
3939
"Programming Language :: Python :: 3",
40-
"Programming Language :: Python :: 3.9",
4140
"Programming Language :: Python :: 3.10",
4241
"Programming Language :: Python :: 3.11",
4342
"Programming Language :: Python :: 3.12",
@@ -76,8 +75,8 @@ testpaths = "tests"
7675
addopts = "--cov=bio2zarr --cov-report term-missing"
7776

7877
[tool.ruff]
79-
# Assume Python 3.9
80-
target-version = "py39"
78+
# Assume Python 3.10
79+
target-version = "py310"
8180

8281
# Same as Black.
8382
line-length = 88

0 commit comments

Comments
 (0)