Releases: Materials-Consortia/optimade-python-tools
v0.18.0
Changelog
v0.18.0 (2022-05-29)
This is a feature release that includes the new optimade.client.OptimadeClient
class, a client capable asynchronously querying multiple OPTIMADE APIs simultaneously.
It also contains a patch for the OPTIMADE models that allows them to be used with more recent FastAPI versions without breaking OpenAPI 3.0 compatibility.
Other changes can be found below.
Implemented enhancements:
- The validator should use a custom
User-Agent
header #1187 - Suggestion to include an OPTIMADE python API client #932
- Implementation of an OPTIMADE client #1154 (ml-evs)
Fixed bugs:
OptimadeClient
crashes if an index meta-database is down #1196- Catch connection errors when populating client database list #1197 (ml-evs)
Merged pull requests:
- Add a clearer error message on when trying to use client with missing deps #1200 (ml-evs)
- Use a custom
User-Agent
with validator #1189 (ml-evs) - Syntactic tweaks to models and schemas for compatibility with
fastapi>0.66
#1131 (ml-evs)
* This Changelog was automatically generated by github_changelog_generator
v0.17.2
Changelog
v0.17.2 (2022-05-21)
This release includes improvements to the validator to catch more cases where OPTIMADE APIs are only partially implemented.
Previously, APIs that did not support filtering, pagination or limiting response fields at all (i.e., the query parameter is simply ignored) would pass most validation tests erroneously in some unlucky situations (#1180).
Fixed bugs:
- Server validation incorrectly passes with various unimplemented features #1180
Merged pull requests:
* This Changelog was automatically generated by github_changelog_generator
v0.17.1
Changelog
v0.17.1 (2022-05-18)
This patch release adds a pre-built Docker container for the reference server to the GitHub Container Registry (GHCR) and a series of Deployment instructions in the online documentation.
The image can be easily pulled from GHCR with:
docker pull ghcr.io/materials-consortia/optimade
Implemented enhancements:
- Release a container (Docker) image for developers #1111
Closed issues:
- Issues with GH Changelog updater (secondary usage API requests) #976
Merged pull requests:
- Don't use
env
context for step #1178 (CasperWA) - Docker image for
optimade
on ghcr.io #1171 (CasperWA)
* This Changelog was automatically generated by github_changelog_generator
v0.17.0
Changelog
v0.17.0 (2022-05-10)
This minor release contains fixes recommended for those deploying the optimade-python-tools reference server:
- The
meta->data_returned
field was previously incorrect when using the MongoDB backend. - Incoming URL query parameters are now validated against the provided query parameters class (if using custom query parameters, this class should be extended or the parameters should use your registered provider prefix). This functionality can be disabled with the
validate_query_parameters
config option. - The results of some queries were not reversible with MongoDB (e.g.,
nelements != 2
vs2 != nelements
); this has now been fixed.
Implemented enhancements:
- Add server check for typos in query parameters #1120
- Improve handling of MongoDB ObjectIDs as OPTIMADE
immutable_id
#1142 (ml-evs) - Add support for number-based pagination #1139 (JPBergsma)
- Added option to validate incoming URL query parameters #1122 (JPBergsma)
Fixed bugs:
meta->data_returned
is incorrect for paginated results with MongoDB #1140- Queries with the form: 'value != prop' return entries where 'prop == None' #1133
- Test on Queries on single structures fail with the check_response function. #1125
- Fix incorrect
meta->data_returned
for paginated results with MongoDB #1141 (ml-evs) - Fix cases where comparison first and property first queries did not match #1134 (JPBergsma)
Closed issues:
- Raise error/warning when using unsupported pagination method #1132
- Add missing documentation for serving custom query params and fields #1123
Merged pull requests:
- Use GitHub Actions for Heroku deployment #1165 (ml-evs)
- Add docs for custom provider fields and query parameters #1164 (ml-evs)
- Add deprecation warning for Python 3.7 #1157 (ml-evs)
- Added way to specify unsupported query parameters and provide a warning #1136 (ml-evs)
- Adjusted check_response so it can also handle single entries. #1130 (JPBergsma)
- Corrected link in Install.MD #1124 (JPBergsma)
* This Changelog was automatically generated by github_changelog_generator
v0.16.12
Changelog
v0.16.12 (2022-03-23)
Implemented enhancements:
- Allow provider field descriptions to be provided in the config #1095
- Make structure adapters infer
species
fromspecies_at_sites
when missing #1103 (ml-evs) - Moving and adding some utilities for client code #589 (ml-evs)
Merged pull requests:
* This Changelog was automatically generated by github_changelog_generator
v0.16.11
Changelog
v0.16.11 (2022-03-03)
Merged pull requests:
* This Changelog was automatically generated by github_changelog_generator
v0.16.10
Changelog
v0.16.10 (2022-02-05)
Fixed bugs:
- Distribution tests failing #1061
Security fixes:
- Bump elasticsearch version to avoid CVE-2021-44832 #1066 (JPBergsma)
Merged pull requests:
- Use
build
package to build distributions #1062 (CasperWA) - Cancel CI PR jobs that are in progress with new changes, add skip_changelog label to overrides #1057 (ml-evs)
- Prevent validator errors/retries on read timeouts #1056 (ml-evs)
* This Changelog was automatically generated by github_changelog_generator
v0.16.9
Changelog
v0.16.9 (2022-01-26)
Implemented enhancements:
Fixed bugs:
- Dependabot not updating NumPy to 1.22 #1035
Security fixes:
- Elastic search log4j vulnerability #1040
Closed issues:
- Remove multiple "Update dependencies" entries in CHANGELOG generation #1038
- Docs reference to
LarkParser
failing. #1037
Merged pull requests:
- Attempt to fix syntax for actions workflow #1053 (ml-evs)
- Update dependencies #1049 (CasperWA)
- Update dependabot config and changelog generation #1048 (ml-evs)
- Update dependencies #1044 (CasperWA)
- Bump elasticsearch image version to avoid any log4j issues #1041 (ml-evs)
- Make NumPy requirement py version-specific #1036 (CasperWA)
- Update dependencies #1031 (CasperWA)
* This Changelog was automatically generated by github_changelog_generator
v0.16.8
Changelog
v0.16.8 (2021-12-22)
Implemented enhancements:
- Support for Python 3.10 #956
Fixed bugs:
- Overzealous validation of substring comparisons for chemical formula fields #1024
Closed issues:
- Updating to pymatgen v2022+ #762
Merged pull requests:
- Update dependencies #1028 (CasperWA)
- Add configurable field-specific validator overrides to set filter operators as optional #1025 (ml-evs)
- Update dependencies #1023 (CasperWA)
- Update dependencies #1017 (CasperWA)
- Update dependencies #1008 (CasperWA)
- Update dependencies #1004 (CasperWA)
- Add Python 3.10 support #957 (ml-evs)
* This Changelog was automatically generated by github_changelog_generator
v0.16.7
Chemical formula validation
This release primarily makes chemical formula validation more strict and succinct, by encoding it within our OpenAPI specification itself. There is an additional bugfix related to anonymous chemical formulae, which would be incorrectly marked as valid, even if the elements were in the wrong order, in certain cases. Finally, this release removes some older pre-release versions of the filter grammar, and adds a new 1.2.0~develop
version. Anyone depending on a pre-1.0 grammar can simply download the old files from 0.16.6.
Changelog
v0.16.7 (2021-11-21)
Implemented enhancements:
- Automate dependency workflow further #958
- Stricter validation of chemical formulas in OpenAPI schema #708
Fixed bugs:
chemical_formula_anonymous
validator accepts incorrect proportion order if started with 1 #1002- Reinstate
typing-extensions
#999 - Updating permanent dependabot branch not working after updating dependencies #995
- Auto-merge dependabot PR-workflow not running #984
Closed issues:
- Update the auto-PR description for updating deps #988
- Versioned docs do not redirect all links correctly #977
- Missing support for timestamps/datetime in grammar #102
Merged pull requests:
- Fixed bug in check_anonymous_formula which caused
chemical_formula_anonymous = AB2
to pass validation. #1001 (JPBergsma) - Use
diff
for checking PR body #1000 (CasperWA) - Update dependencies #998 (CasperWA)
- Correct PR body comparison #996 (CasperWA)
- Update dependencies #993 (CasperWA)
- Update dependencies #991 (CasperWA)
- Update dependency auto-PR message #989 (ml-evs)
- Update dependencies #987 (CasperWA)
- Stricter formula syntax #986 (merkys)
- Implement workflows for dependency updates #979 (CasperWA)
- Tidy up old grammars, add a development grammar for v1.2 and update filterparser tests #879 (ml-evs)
* This Changelog was automatically generated by github_changelog_generator