Releases: kyocum/disdat
Releases · kyocum/disdat
Release list
v1.1.5
disdat v1.1.5 — Python 3.10–3.14 support
This release modernizes disdat-core to run on current Python and dependency
stacks. disdat now supports Python 3.10 through 3.14, verified by CI on
every supported version.
Highlights
- Python 3.10–3.14 supported (dropped 3.9). The test suite passes on all
five versions in CI. - Modernized dependencies — moved off the old pinned stack onto current
major versions:- numpy >=1.24,<3.0 (now supports NumPy 2.x)
- pandas >=2.0,<3.0
- sqlalchemy >=2.0,<3.0 (migrated to the SQLAlchemy 2.0 API)
- protobuf >=6.31.1,<7.0 (generated message code regenerated for modern
protobuf) - boto3 >=1.34,<2.0
- Packaging migrated to pyproject.toml (PEP 621) with uv; setup.py and
build-dist.sh removed. Builds via uv build; version still derived from git
tags via setuptools_scm.
Under the hood
- Regenerated the protobuf hyperframe module; fixed removed NumPy 2.0
aliases and ndarray.newbyteorder; ported all DB access to SQLAlchemy 2.0
(mappings + explicit transactions); replaced pkgutil usage removed in 3.12
and the urljoin file:// behavior changed in 3.14. - CI: GitHub Actions test matrix across 3.10–3.14; publish workflow
modernized (build with uv, TestPyPI dry-run on manual dispatch, PyPI on
release). - Tests are now self-initializing and auto-clean their contexts on failure.
Compatibility notes
- Minimum Python is now 3.10.
- This is disdat-core (no Luigi). The Luigi pipeline integration lives in
the separate disdatluigi package.
Upgrade Python
Support python 3.13 and update minimum python to 3.9
v1.1.3
v1.1.3rc0
rename utility/asyncio_aws_s3 module to aws_s3
Before the change to use threads instead of multiprocessing, we had a utility/aws_s3.py module. We renamed it to asyncio_aws_s3.py when using threads. However, packages such as disdat-luigi depend on the prior name. There's no reason to change the module name and break upstream clients, so changing it back.