Skip to content

Changelog

v0.15.4 (2021-06-15)

Full Changelog

Implemented enhancements:

  • Missing documentation for new configuration methods #766

Closed issues:

  • Add docs "use case" for the validator #841
  • Use specific configuration file for Heroku deployment #738
  • Potential submission to JOSS? #203
  • Add more tests #104

Merged pull requests:

v0.15.3 (2021-06-10)

Full Changelog

Merged pull requests:

  • Update model descriptions following spec updates #847 (ml-evs)

v0.15.2 (2021-06-10)

Full Changelog

Implemented enhancements:

  • Missing HTTP response codes in OpenAPI schema #763

Merged pull requests:

v0.15.1 (2021-06-08)

Full Changelog

Closed issues:

  • mongomock $size queries match all non-array fields for {$size: 1}, even nulls #807
  • Allow custom headers to be specified for validation #790

Merged pull requests:

  • Allow both Jinja2 v2 and v3 #838 (CasperWA)
  • Update mongomock and remove test skip #836 (ml-evs)
  • Add --headers argument to validator to allow passing e.g. API keys #806 (ml-evs)

v0.15.0 (2021-06-01)

Full Changelog

Fixed bugs:

  • Provider fallbacks do not get used #829
  • ParserError's should not return 500 HTTP status codes #812
  • Fix provider fallback list #830 (ml-evs)
  • Return 400 Bad Request (not 500) on filter parser errors, plus filterparser module facelift #813 (ml-evs)

Closed issues:

  • CI triggered by PRs does not test dep versions in setup.py #834
  • Remove Django support for v0.15+ #832
  • Move aliasing code to base transformer #743
  • Missing optional fields are not returned as null when requested with response_fields #516

Merged pull requests:

  • Test all setup.py deps versions for every pull request, plus some deps updates #835 (ml-evs)
  • Deprecate Python 3.6, remove Django and update dependencies/providers #828 (ml-evs)
  • Update INSTALL docs #811 (ml-evs)
  • Overhaul of filter transformers, mappers and response fields #797 (ml-evs)

v0.14.1 (2021-05-14)

Full Changelog

Fixed bugs:

  • [SECURITY] Cycle secrets #777

Closed issues:

  • Do not validate extension endpoints #793
  • Verify that missing values are not returned in comparisons #792

Merged pull requests:

v0.14.0 (2021-03-26)

Full Changelog

Implemented enhancements:

  • Rename config variable use_real_mongo to something more general #742
  • Custom configuration extensions & use standard pydantic way of loading config file #739
  • Generalising collections and adding ElasticsearchCollection #660 (ml-evs)

Fixed bugs:

  • Over-aggressive middleware to check versioned base URL #737
  • Floating point comparisons should not be tested with the validator #735
  • Mapper method alias_of extracts alias wrongly #667

Closed issues:

  • Docs builds are not properly tested for each PR #747
  • Remove SQLAlchemy version fix in CI with new AiiDA version #745

Merged pull requests:

  • Update dependencies #760 (CasperWA)
  • Fix CheckWronglyVersionedBaseUrls middleware (for landing pages) #752 (CasperWA)
  • Deprecate Python 3.6 support, v0.14 last supported version #751 (CasperWA)
  • Run full API docs invoke task for every PR #748 (ml-evs)
  • Change aliasing method names in mapper and deprecate the old #746 (ml-evs)
  • Bump providers from e2074e8 to 7a54843 #741 (dependabot[bot])
  • Config updates #740 (CasperWA)
  • Disable all floating-point comparisons during validation #736 (ml-evs)
  • Report user errors in filter as HTTP 400 Bad Request and not 501 Not Implemented #658 (markus1978)

v0.13.3 (2021-03-05)

Full Changelog

Fixed bugs:

  • Support anyOf, allOf, etc. standard OpenAPI fields #730
  • Python 3.9 support invalid #728

Merged pull requests:

v0.13.2 (2021-03-01)

Full Changelog

Implemented enhancements:

  • Improve validation of providers #723

Merged pull requests:

v0.13.1 (2021-02-23)

Full Changelog

Fixed bugs:

  • Supported OPTIMADE __api_version__ is incorrect in latest release #712

Merged pull requests:

v0.13.0 (2021-02-20)

Full Changelog

Closed issues:

  • Update species.mass model #630

Merged pull requests:

  • Update species->mass field following specification change #631 (ml-evs)

v0.12.9 (2021-02-10)

Full Changelog

Implemented enhancements:

  • Improve support for timestamp queries in MongoTransformer #590 (ml-evs)

Fixed bugs:

  • Use Enums for pydantic model defaults instead of strings #683

Closed issues:

  • When using --as-type in validator, one does not get a summary (--json doesn't work) #699
  • Extension/import issue with mongo collection #682

Merged pull requests:

v0.12.8 (2021-01-18)

Full Changelog

Implemented enhancements:

  • Validate mandatory query field structure_features #678

Fixed bugs:

  • Validator should not rely on meta->data_available #677
  • Validator should not rely on SHOULD "meta" field "data_returned" #675
  • Validator: remove reliance on meta fields and check mandatory queries #676 (ml-evs)

Merged pull requests:

v0.12.7 (2021-01-15)

Full Changelog

Implemented enhancements:

  • Make content-type response checks on '/versions` endpoint optional #670 (ml-evs)

Fixed bugs:

  • Publish workflow fails when no changes to api docs between versions #673
  • /versions header Content-Type value should be granularized according to RFC requirements in validator #669
  • Misleading error message from validator on failure from '/versions' #668
  • Fix publishing workflow #674 (ml-evs)

Merged pull requests:

v0.12.6 (2021-01-08)

Full Changelog

Implemented enhancements:

  • Create base transformer #286

Fixed bugs:

  • Our models and validator are too strict #399
  • Validator changes: always check unversioned '/versions' and handle rich HTML pages #665 (ml-evs)

Closed issues:

  • Add more prominent link to rendered docs #628
  • Review the required properties of StructureResourceAttributes in openapi.json #198

Merged pull requests:

v0.12.5 (2020-12-05)

Full Changelog

Closed issues:

  • PyPI publishing build is broken by latest pip #624
  • Empty endpoints raise errors on validation #622
  • Frequency of updating online docs #452

Merged pull requests:

v0.12.4 (2020-11-16)

Full Changelog

Merged pull requests:

  • Minor fixes for versions endpoint validation #591 (ml-evs)
  • Add --minimal/--page_limit validator options and remove old code #571 (ml-evs)

v0.12.3 (2020-11-04)

Full Changelog

Fixed bugs:

  • GITHUB_TOKEN not useful for changelog action #587
  • Hill notation wrong (still) #585
  • Hill notation validation turning around C and H #581

Closed issues:

  • Make structure "deformity" tests more robust #583
  • Incomplete output of optimade-validator #568

Merged pull requests:

  • Use special release PAT for CHANGELOG generation action #588 (CasperWA)
  • Check for carbon in elements for Hill #586 (CasperWA)
  • Added better expected error messages to deformity tests #584 (ml-evs)
  • Fix Hill ordering validation #582 (CasperWA)
  • Bump mkdocs-material from 6.1.0 to 6.1.2 #580 (dependabot[bot])
  • Moved CONFIG import so it does not get triggered when just importing mapper #569 (ml-evs)

v0.12.2 (2020-10-31)

Full Changelog

Implemented enhancements:

  • Add convenience method for adding all required middleware #536
  • Add model validators and regexp for chemical formulae fields #547 (ml-evs)
  • Validator improvements #515 (ml-evs)

Fixed bugs:

  • 'Chosen entry had no value for ...' when property is not requested #514
  • Fix Species validators and error messages #561 (ml-evs)

Closed issues:

  • Chemical symbols D and T #570
  • Push back dependabot to monthly updates #567
  • Spurious validation errors in Structure->Species #559
  • Chemical formulae are not properly validated on model creation #546

Merged pull requests:

v0.12.1 (2020-09-24)

Full Changelog

Implemented enhancements:

  • Move entry schemas to separate submodule #511 (ml-evs)

Closed issues:

  • Validator should allow implementations to return "501 Not Implemented" for unsupported filters #518
  • Landing page wrong URL #371

Merged pull requests:

v0.12.0 (2020-09-11)

Full Changelog

Fixed bugs:

  • Missing field descriptions in schema for Species->name and Person->name #492
  • "type" field not marked as required for derived entry resource models #479
  • OpenAPI validations fails due to incorrect type of "dimension_types" #478
  • Have fallbacks for retrieving providers list #450
  • Commit only when necessary #495 (CasperWA)
  • Fix field optonality inconsistency in schema #482 (ml-evs)

Closed issues:

  • Validator message for wrong version #493
  • Validator should validate versions endpoint #491
  • List of providers not included in /links endpoint for index meta-database #454
  • Validate bad version URLs responding with 553 Version Not Supported #427
  • Nonexistent property 'list' in validator tests #423
  • Test data_returned #402
  • AiiDA tests only run on Python 3.8 in CI #401
  • Links under top-level 'links' may be objects #394
  • Suggestion: use absolute imports in app code to allow re-use #298
  • Update mongomock requirement when next released #207
  • error when browsing OpenAPI docs #192

Merged pull requests:

v0.11.0 (2020-08-05)

Full Changelog

Implemented enhancements:

  • Use logging more thoroughly throughout the code base #242
  • Implement warnings #105

Fixed bugs:

  • Heroku is failing - raising OSError when making LOGS_DIR #448
  • /versions endpoint content-type parameter "header=present" is provided in the wrong place #418
  • Publish workflow cannot push to protected branch #341
  • Fix circular dep and extra permission error in logs #436 (ml-evs)

Closed issues:

  • log_dir option in config is unused #435
  • Allow all types of JSON API relationships #429
  • OPTIMADE version badge was not bumped on 1.0 release #415
  • Add api_hint query parameter #392
  • Return 553 for wrongly versioned base URLs #391
  • Private/dunder methods incorrectly documented in mkdocs #365
  • Configuration documentation #310
  • Improve handling of sorting in MongoDB backend #276

Merged pull requests:

v0.10.0 (2020-07-17)

Full Changelog

Implemented enhancements:

  • Move tests to pytest system from unittest #270

Fixed bugs:

Closed issues:

  • Validation of 'structures' type crashes #397
  • Validator verbosity levels need more detailed description #396
  • Validator treats top-level 'included' array as mandatory #393
  • (Un)versioned URLs #379

Merged pull requests:

v0.9.8 (2020-07-03)

Full Changelog

Implemented enhancements:

  • Set implementation version in config by default #385 (CasperWA)

Merged pull requests:

  • Update models, endpoints and responses to 1.0.0 #380 (ml-evs)

v0.9.7 (2020-06-28)

Full Changelog

v0.9.6 (2020-06-28)

Full Changelog

Fixed bugs:

v0.9.5 (2020-06-26)

Full Changelog

Implemented enhancements:

v0.9.4 (2020-06-26)

Full Changelog

v0.9.3 (2020-06-26)

Full Changelog

Merged pull requests:

v0.9.2 (2020-06-25)

Full Changelog

Fixed bugs:

  • Heroku cannot handle submodules when deploying via GitHub #373

Closed issues:

  • Updates to models (new OPTIONAL type field under properties) #345
  • Add aggregatation fields to links model #344
  • Updates to models (nperiodic_dimensions) #343
  • Updates to models (changing unknown atoms) #342
  • Improvements/fixes for openapi.json #332
  • Update to v1.0.0-rc.1 #329
  • Decouple updates in providers repo #311
  • RST not rendering with mkdocs #307

Merged pull requests:

  • Retrieve providers list if no submodule is found #374 (CasperWA)
  • Update default implementation information #372 (shyamd)
  • Bump spec version to 1.0.0-rc.2 #367 (ml-evs)
  • Dependabot updates: numpy, mkdocs-material, mkdocstrings, requests #364 (ml-evs)
  • Merge all Dependabot updates #353 (shyamd)
  • Update model descriptions and openapi.json for 1.0.0-rc2 #351 (ml-evs)
  • Update models according to changes during CECAM 2020 meeting #350 (ml-evs)
  • Decouple changes in providers repo #312 (shyamd)

v0.9.1 (2020-06-17)

Full Changelog

v0.9.0 (2020-06-17)

Full Changelog

Implemented enhancements:

  • Breaking up the python tools into seperable packages #255
  • Run both servers as standard #238

Fixed bugs:

  • Non-running CI job #331
  • Special species "X" not tested for non-disordered structures #304
  • Standardize timezone of datetime responses #288
  • Queries on aliased/provider fields are broken for nested properties #282
  • General exceptions not being put into response #281
  • Issue with CIF export #271
  • Type-cast inputs for general Error #280 (CasperWA)

Security fixes:

Closed issues:

  • Update links resources #299
  • Need to set up mkdocs #289
  • Need to add custom schema entries for unit/sortable (and eventually type) #278
  • /info/\<entry-endpoint> missing sortable key under each property #273
  • Make CI linting more useful #269
  • [PR SPECIFIC] Reminder: Validator test pinned to specific commit #268
  • Validator does not check that pagination links work #265
  • available_api_versions is not correctly validated #261
  • Implementation model should allow for any URL type in source_url #260
  • Extra structure endpoints in the api specification @ odbx #259
  • Wrong response structure at info endpoint @ cod #258
  • Missing base url for api's docs @ materialscloud #257
  • Handling of KNOWN in mongo backend #254
  • None values in lattice_vectors #170
  • Make sure that the PyPI distribution works #143
  • Move run.sh to a python file to be environment-agnostic #81

Merged pull requests:

v0.8.1 (2020-04-25)

Full Changelog

Fixed bugs:

  • Pip install missing some files #252

Merged pull requests:

v0.8.0 (2020-04-22)

Full Changelog

Implemented enhancements:

  • Switch to pydantic's BaseSettings for the config file? #152
  • Use services for testing/updating dependencies? #96
  • Remove query constraints for /links-endpoint #244 (CasperWA)
  • Add adapters - Base design + 'structures' (+ 'references'... sort of) #241 (CasperWA)
  • Add dependabot and last commit date badges #237 (CasperWA)
  • Add mongo length operator functionality with length aliases #222 (ml-evs)

Fixed bugs:

  • Use Path.home() instead of ~ in default config path values #245

Closed issues:

  • Have Dependabot take care of various requirements.txt files as well #249
  • Remove commented out GH Action job deps_clean-install #247
  • Local testing fails without default config #239
  • Release only when pushing to master #229
  • Do we need server.cfg? #134
  • Implement LENGTH in query #86

Merged pull requests:

v0.7.1 (2020-03-16)

Full Changelog

Closed issues:

  • Fix all capitalisation of OPTIMADE #232
  • Remove validator action from README #230

Merged pull requests:

  • Fix github actions for non-release tags #235 (shyamd)
  • Update OPTIMADE capitalisation #233 (ml-evs)
  • Update mentions of action in readme #231 (ml-evs)

v0.7.0 (2020-03-13)

Full Changelog

Implemented enhancements:

  • Validate all non-optional :filter: examples from the spec #213 (ml-evs)

Fixed bugs:

  • Some mandatory filter examples from spec do not work #217
  • Add txt-files in optimade.validator.data to MANIFEST #225 (CasperWA)
  • Handle arbitrary nested NOT/AND/OR in queries #221 (ml-evs)

Closed issues:

  • Validator only validates what we have working, not what is required by the spec #182

Merged pull requests:

v0.6.0 (2020-03-06)

Full Changelog

Implemented enhancements:

  • Possibly add CORS middleware #159
  • Add debug flag to server #130
  • Make validator GitHub Action #191 (CasperWA)

Fixed bugs:

  • meta/query/representation value not cutting off version properly #199
  • URL for providers.json from Materials-Consortia has changed #186
  • Relationships don't work when "/" present in id #181
  • Redirect middleware not hitting single-entry endpoints #174

Closed issues:

  • /info/ reports wrong url under available_api_versions #215
  • Query parameters not handled correctly #208
  • Test for AvailableApiVersion is correct for the wrong reasons #204
  • Drop '/optimade' from paths in openapi.json #197
  • heroku is failing #185
  • List properties and HAS _ operators missing #98
  • Checklist for OPTiMaDe v0.10.1 #29

Merged pull requests:

v0.5.0 (2020-02-13)

Full Changelog

Implemented enhancements:

  • Implement a landing page for requests to the base URL #169

Fixed bugs:

  • 'minor' and 'patch' versioned base URL prefixes are wrong #177

Closed issues:

  • Handle include standard JSON API query parameter #94

Merged pull requests:

v0.4.0 (2020-02-06)

Full Changelog

Implemented enhancements:

Fixed bugs:

  • Server app intermingles #161
  • response_fields not working #154

Closed issues:

  • Change page_page to page_number #165
  • Add schema-relevant parameters to query parameters #164
  • Alias optimade/structures/ to optimade/structure #128
  • Minor changes to specification v0.10.1-develop #115
  • Update models with new levels of REQUIRED response properties #114
  • Constraining list/array types in the schema #55

Merged pull requests:

v0.3.4 (2020-02-04)

Full Changelog

Implemented enhancements:

  • Include develop or not? Default branch? - Create INSTALL.md #136

Fixed bugs:

  • Excepting non-existent exception #129

Closed issues:

  • disable serving API under /v0.10 and /v0.10.0 by default? #122
  • PyPI release checklist #67

Merged pull requests:

v0.3.3 (2020-01-24)

Full Changelog

Fixed bugs:

  • Lark files not being distributed #141

Closed issues:

  • Tests fail with lark-parser>=0.8 #146

Merged pull requests:

  • Updated lark-parser to 0.8.1 #149 (ml-evs)
  • Split eager and standard tests to avoid unnecessary badge of shame #148 (ml-evs)
  • Bump to v0.3.3 #147 (CasperWA)
  • Fix root_validator issues with optional fields and made meta optional #145 (ml-evs)
  • Handle JSONDecodeErrors in validator #144 (ml-evs)

v0.3.2 (2020-01-20)

Full Changelog

Implemented enhancements:

Fixed bugs:

Merged pull requests:

v0.3.1 (2020-01-17)

Full Changelog

Merged pull requests:

v0.3.0 (2020-01-14)

Full Changelog

Implemented enhancements:

  • Implement optional implementation in top-level meta response #117
  • Create "special" index meta-database server #100
  • Implement relationships in server #71
  • Add missing /references endpoint to server #69
  • Automatically publish version tags to PyPI via GH Actions #107 (CasperWA)
  • Using routers #99 (CasperWA)
  • Add relationships functionality #91 (ml-evs)
  • Added external API validator based on our pydantic models #74 (ml-evs)

Fixed bugs:

  • The invoke task update-openapijson is incomplete #123
  • Django vulnerability #108

Closed issues:

  • info endpoint duplicated? #120
  • Commented-out validator #111
  • FastAPI v0.44.0 supports pydantic > 1.0.0 #101
  • Server is missing /links endpoint #89
  • Make sure all validators are tested #87
  • The sortable field must be added to models #84
  • Package structure #72
  • Possibly make /info/{endpoint} dynamic #70
  • setuptools package with server as "extra" #62
  • use examples from specs as resources #57
  • httptools dependency has build issues on GCC/Linux #54
  • Lark grammar file for v0.9.8 #50
  • type is missing in response #43
  • Enforce use of autoformatter #33
  • switch license to MIT #28
  • write a lark JSONTransformer / JSONdecoder #26
  • server.jsonapi has no additionalProperties=false #23
  • server.jsonapi has no patternProperties #22
  • Developer-friendly pre-commit openapi.json visual diff #21
  • add JSON schema API #12
  • generate static documentation on github from openapi.json #9
  • test how to generate a client from the openapi.json #8
  • come up with suggested toolchain for validating existing optimade API against openapi.json #7
  • add travis test that checks openapi.json is valid OpenAPI spec #6
  • add 2 examples of how to include documentation in python classes #5
  • add one-line command to update openapi.json #4

Merged pull requests:

v0.1.2 (2018-06-14)

Full Changelog

v0.1.1 (2018-06-13)

Full Changelog

v0.1.0 (2018-06-05)

Full Changelog

* This Changelog was automatically generated by github_changelog_generator