Releases: CitrineInformatics/gemd-python
GEMD v2.2.0 is released!
This release has no changes to code, only changes to package management details. As Python 3.8 was marked as end-of-life several months ago, this is following that lead.
Improvements
- This release drops Python version 3.8 and Pint earlier than version 0.24.4 from the officially supported packages and our testing regimen. There is no change to code, so this should not break any existing installations #225
Full Changelog: v2.1.11...v2.2.0
GEMD v2.1.11 is released!
This update is a small quality-of-life release. The next release will drop support for Python 3.8 and add official support for Python 3.13.
Improvements
- Updates the list of supported elements, including
DandTfor hydrogen isotopes and completing Group 7 (throughOg). #223 - Improved equality check performance in scenarios where an object might be compared to itself. #224
Full Changelog: v2.1.9...v2.1.11
GEMD v2.1.9 is released!
This PR adds compatibility with the latest version of Pint, v0.24.3.
Improvements
- Support latest Pint, which includes recognizing more units and compatibility with latest numpy #222
Fixes
- We reworked packaging constraints to avoid a bad state. Pint 0.22 and 0.23 are incompatible with numpy > 2 but this is not constrained in Pint's pyproject.toml. This library itself is compatible with those individual releases, but blind
pip installwas wasn't protecting against this. #222
Full Changelog: v2.1.8...v2.1.9
GEMD v2.1.8 is released!
This release adds support for new units, including treating ratios like % in the unit strings.
Improvements
- We now support % and other ratio expressions as units. This required updating both our minimum pint version as well as updating our unit definitions.
%,ppm, and other ratios are available here and on our platform. #219 #220 - We also added support for Mooney viscosity units, a specialized material measurement for rubbers. Take you for your first contribution #218, @xperrylinn.
Full Changelog: v2.1.5...v2.1.8
GEMD v2.1.5 is released
This release is to verify the repository migration to our common GitHub Actions repository functions as we expect. There are no software differences from the previous release.
Improvements
- We now use our common-gh-actions repository to ease our maintenance burden. #217
Full Changelog: v2.1.4...v2.1.5
GEMD v2.1.4 is released
This is a simple bug fix for the package import migration that last was part of the last release.
Improvements
- Corrected an issue around deploying the units file on Windows boxes, where the default character set is not necessarily utf-8. #216
Full Changelog: v2.1.3...v2.1.4
GEMD v2.1.3 is released
This release collects two PRs to migrate the CI / CD for this repository from Travis CI to GitHub Actions.
What's Changed
- Add and configure GitHub Actions for testing and deployment (#214).
- Remove Travis dependence for testing, build & deploy (#215).
Full Changelog: v2.1.1...v2.1.3
GEMD v2.1.1 is released
This is a maintenance release. It cleans up how the Pint library is imported and wrapped, which should improve reliability when taking advantage of more advanced formatting. It also resolves some warnings originating from Python migrating how package resources get pulled in. There should be no surprises.
Improvements
- Previously, outputting units with scaling factors could result in strangely formatted strings. To resolve this, we now derive a child class, now possible because boosting the minimum supported Pint. This removes a potential tripping hazard, and generally makes it easier to fold gemd-python into the existing ecosystem. (#212)
- Python's migration from pkg_resources to importlib.resources left gemd-python issuing deprecation warnings. This resolves those by using the new
filesobjects. (#213)
Full Changelog: v2.0.0...v2.1.1
GEMD v2.0.0 is released
We are thrilled to announce version 2.0.0 of gemd-python. It's been a few years of updates, both technical and quality of life, since our 1.0.0 release, but all of that has been oriented around improving the SDK (as opposed to the underlying data model).
Upgrading to version 2 may necessitate changes to existing scripts. There should be no fundamental changes in functionality between v1.18.5 and v2.0.0, so the deprecation messages from the older version should provide a guide to updating your code.
Improvements
- In cases where both the built-in json and the gemd.json
dumpsand / orloadsmethods are used in close proximity in the code, we've used aliases to make it obvious which is which. This should just be a cosmetic change. (#208)
What's Removed
- The
namekeyword in LinkByUID'sfrom_entityhas been removed in favor ofscope. A user-specified scope is no longer a valid positional argument. (#208) - The
get_valueandget_enummethods have been removed from BaseEnumeration. They are no longer necessary, as enumerations now return the values when cast as strings, as in a format statement. (#208) - The
register_classesmethod has been removed from the GEMDJson object. Object types are defined during extension of the BaseEntity class, and registered with the deserializer at definition time. - The
native_uidkeyword in gemd.util'ssubstitute_linkshas been removed in favor ofscope. (#208)
Full Changelog: v1.18.5...v2.0.0
GEMD v1.18.5 is released
This is a maintenance release, anticipating a release of the next major version in the near future.
Improvements
- Units handling is improved, both providing better guardrails and updated parsing. For example, before 60 rpm would convert to 2*pi hertz. This should be a transparent quality of like improvement. (#201 #203 #209)
Fixes
- The building and testing process has been updated, adding Python 3.12 to the test suite (#202), cleaning up the packaging (#205 #207), addressing the vast majority of documentation build warnings (#204), and boosting testing library versions (#210).
- Made object definitions a bit more consistent (non-breaking, #206)
- Correct encoding error on Windows with units file extraction (#211)
Full Changelog: v1.16.7...v1.18.5