Releases: NCAS-CMS/PyActiveStorage
Release v0.5.0
What's Changed
This is mostly a maintenance release, that also rebuilds the package with Python 3.14 support.
- add bits related to conda-forge package: badge, links, Github Actions and unpin mamba-version from all GHA flows by @valeriupredoi in #278
- Lint code in
activestorage/and add flake8 test at push by @valeriupredoi in #281 - re-add version in
activestorage/__init__.pyfor Readthedocs by @valeriupredoi in #282 - Remove
bnlandold_codedirectories by @valeriupredoi in #283 - Support Python 3.14 by @valeriupredoi in #293
Thanks to @davidhassell and @bnlawrence for their reviews 🍻
Full Changelog: v0.4.0...v0.5.0
Release v0.4.0
This is the stable release candidate for PyActiveStorage v0.4.0
PyActiveStorage provides a Python client to local or remote “active” storage (aka “computational” storage), that is,
storage that instead of just receiving reads and returning blocks of data, can receive requests for, and return the
results of, computations on blocks of data. We have implemented active storage which supports a limited set of reduction
computations. We have two implementations of active storage with which PyActiveStorage can interact:
- a prototype in DDN InfiniaTM
- a production ready Reductionist middleware software which can be
deployed to turn any S3 object store into active storage
Using PyActiveStorage can speed up workflows, especially if the data is remote, or the local area network is congested.
Early results accessing global fields of 10km resolution data on the CEDA-JASMIN S3 object store show that time-series
of hemispheric means can be returned to remote users on low-bandwidth networks (and even in
different hemispheres) in times which are competitive with local users accessing POSIX data across a LAN.
We anticipate this technology will be game-changing for remote access to data, particularly where there is
insufficient local storage to make copies of data, or those with low-bandwidth networks – although anyone can benefit from
minimizing network contention and reducing the carbon cost of moving data.
v0.4.0 Highlights
- integration with Pyfive deployed on PyPI and conda-forge #277
- full package specifications, including documentation deployed on RTD #270
- operationally deployed on CEDA-JASMIN #260
- Numpy-like statistics API #253
- bugfixes, improvements, and other enhancements
Many thanks to all the contributors! 🍻
Release candidate rc5
Upload to Test PyPI all OK, now debugging upload to actual PyPI
This went well! https://pypi.org/project/PyActiveStorage/0.1.0rc5/
Release candidate rc4
Corrected package name, too true PyPI, too true 🍺
Upload to Test PyPI (finally!) achieved https://test.pypi.org/project/PyActiveStorage/0.1.0rc4/
Small snag at u[loading to PyPI proper, needs fixing in rc5 I guess 😁
Release candidate rc3
Please please Test PyPI take my package 😁 - third time lucky, come on!
Release candidate rc2
Hopefully this will get through to Test PyPI
Release candidate rc1
Test PyPI and Test PyPI uploads with correct PEP version name
Release candidate 0 (rc0) for v0.1.0
This is rc0 for v0.1.0 - we still need to get all the PyPI and conda forge gubbins in order, so starting on that journey with rc0
Initial release of PyActiveStorage v0.0.0
v0.0.0: what's Changed
Tagline: functionality of active storage now implemented for basic operations (min/max/sum/mean), together with Dask integration at client end; this does not include support for _FillValue/missing_value just yet
- Some of the code we discussed by @bnlawrence in #1
- add some zarr diagnostic notes by @bnlawrence in #2
- Actual prototype of AS input parameters construction starting from a netCDF4 file, going via Zarr by @valeriupredoi in #3
- Adding more of my notes by @bnlawrence in #4
- Tools to avoid hacking zarr by @bnlawrence in #5
- Clean by @bnlawrence in #8
- Build a proto-package by @valeriupredoi in #7
- Unpin depependencies by @valeriupredoi in #9
- Move
Activeclass and write test files to temp by @valeriupredoi in #13 - Keep dependencies versions under control via conda lock file by @valeriupredoi in #16
- clean up module
active_tools.pyby @valeriupredoi in #14 - starting some docs for our next meeting discussions by @bnlawrence in #15
- Suggested modifications for dask integration by @davidhassell in #17
- [Condalock] Update condalock file by @github-actions in #22
- Missing and compression/filtering Issues by @bnlawrence in #24
- Improve package with standard package gubbins by @valeriupredoi in #25
- Complete dask demo by @davidhassell in #26
- [Condalock] Update condalock file by @github-actions in #28
- Add real world test suite by @valeriupredoi in #27
- Diagrams by @bnlawrence in #29
New Contributors
- @bnlawrence made their first contribution in #1
- @valeriupredoi made their first contribution in #3
- @davidhassell made their first contribution in #17
- @github-actions made their first contribution in #22
Full Changelog: https://github.com/valeriupredoi/PyActiveStorage/commits/v0.0.0