Skip to content

Releases: aiidateam/aiida-optimade

v0.11.0

06 Nov 13:52
Compare
Choose a tag to compare

Major updates:

  • aiida-optimade calc
    New CLI command calc (#151).
    This command will allow one to specify particular OPTIMADE fields that one wants to have recalculated for all StructureData Nodes in a database. Compared to the init command, where the -f/--force option will first remove all OPTIMADE fields before recalculating all of them, the calc command will be more picky, only updating the chosen OPTIMADE fields.
  • New CLI options
    Add -y/--force-yes and update -q/--silent for the calc and init CLI commands (#153).
    -y/--force-yes will force a "Yes" when asked to continue in the calc CLI command.
    -q/--silent will silence any non-critical output to the console.
  • Progress bar and better output in CLI
    Utilize tqdm for a progress bar and wrapped click.echo commands from aiida-core to improve the calc and init CLI command outputs (#153).
    The tqdm progress bar is wrapped around the list of Nodes when an extra is removed or (re)calculated.
    The improved click.echo-wrapper commands from aiida-core introduce a more colorful output with "Info:", "Success:", "Warning:" or similar prefixes.

Changes:

  • Update to support aiida-core v1.4.2 (#140, #142).
  • Update to support optimade v0.12.3 (#147).
  • Use updated uvicorn v0.12.2 (#141, #143).

Fixes:

  • Ordering in chemical_formula_anonymous is now correct according to the specification (#147).
    The amount of each element must be descending, example: A48 B32 C10 D10 E F.

Developer updates:

  • Use the updated CasperWA/push-protected@v2 in the publish workflow (#145).
  • Use the latest pre-commit v2.8 (#146).
  • Run CI workflow for all PRs and otherwise only for pushes to master and CasperWA/push-protected relevant branches (#151).
  • New CI job build-package utilizes CasperWA/check-sdist-action GitHub Action to ensure the source distribution for the aiida_optimade Python package can be built and installed (#152).
  • Move imports in invoke tasks script into their relevant functions and branches therein (#154).

v0.10.3

28 Sep 22:55
Compare
Choose a tag to compare

Changes:

  • Update central dependencies optimade (v0.12.1) and aiida-core (v1.4.1) (#139).
  • Add JSON config files to MANIFEST.in, including them in the source distribution (#134).
  • Fallback to config.json if OPTIMADE_CONFIG_FILE environment variable is not defined or points to a non-existing file (#134).

Developer:

  • Update CI GitHub Actions workflow (#133, #139)
    The workflow is more stream-lined and shouldn't fail as often due to bad hooks.
  • Update use of # pragma: no cover (#134).

v0.10.2

28 Sep 01:24
Compare
Choose a tag to compare

Changes:

  • Add -f/--force option to aiida-optimade init, which will force re-calculation of all OPTIMADE fields for Nodes in the AiiDA database (#130).
  • Initialize AiiDA database prior to starting the server when using Docker (#132).

v0.10.1

25 Sep 12:39
Compare
Choose a tag to compare

Bug fixes:

  • Set scalars to 0 if absolute value is below 1e-8, units being Å (#121, @csadorf)

Development fixes:

  • Pin OPTIMADE Validator version to v0.12.0 (#122, @csadorf)
  • Make local running server available in clients in debug mode (#125)
  • Publish to PyPI via GitHub releases (#127)

v0.10.0

24 Sep 16:23
v0.10.0
99ee111
Compare
Choose a tag to compare

Major updates:

  • Use the OPTIMADE Validator action to check the implementation, both in CI and in the pytesting (#114)
  • Add middleware from optimade to (#114):
    • Ensure a wrongly versioned base URL returns HTTP code 553.
    • Add support for the api_hint query parameter.
    • Catch Python Warnings and report them in the response as OPTIMADE Warning objects.
      Note, for this to work, one has to subclass optimade.server.warnings.OptimadeWarning.

Minor updates:

  • Support optimade v0.12.0 (#114)

Bug fixes:

  • Fix OPTIMADE badge in README (#112)

v0.9.0

31 Aug 10:04
v0.9.0
b7db518
Compare
Choose a tag to compare

Major changes:

  • aiida-optimade CLI (#85)
    New CLI with which one can run the server and initialize an AiiDA database.
  • Custom Python Warnings (#94)
    All AiiDA-OPTIMADE warnings can be caught by the custom AiidaOptimadeWarning class.
  • Logger (#94)
    Log various events in the code, useful for debugging and testing.

OPTIMADE-specific changes:

  • Add new nperiodic_dimensions Structure attribute to translator (#93)
  • Add type attribute to the introspective /info/structures endpoint (#93)
  • Add /versions-endpoint and use un-versioned URLs (#94)

Minor changes:

  • Update license and authorship (#85)
  • Use Python 3.8 in CI (#93)
  • Use Dependabot v2 (#95)
  • Update to latest OPTIMADE Python tools and AiiDA versions (0.11.0 and 1.3.1, respectively) (#97, #109)
  • Rely on OPTIMADE Python tools for certain direct dependencies: FastAPI, the Lark parser, and pydantic (#106)

v0.8.0

02 Jul 20:19
v0.8.0
b673006
Compare
Choose a tag to compare

Changes:

  • New tests based on optimade-python-tools, but all in the flavor of pytest (#74)
  • Add "sortable" field to /info/structures endpoint's "properties" (#84)
    All fields that are not containers (JSON arrays and objects) can be sorted.
  • Using custom StructureResourceAttributes with AiiDA-specific properties (ctime) (#84)
  • Add /links endpoint (#86)
  • Update to the new LinksResource schema (#86)
  • Update dependencies, now all dependencies have a specific version number, but are still using ~= (#86)

v0.7.0

25 May 14:23
v0.7.0
aba30d9
Compare
Choose a tag to compare

Major changes:

Updates:

  • Use new OPTIMADE capitalization throughout the code (#67, @CasperWA)
  • Update to latest AiiDA version (#67, @CasperWA)
  • Run reentry scan in Dockerfile after installing aiida-core (#67, @CasperWA)
  • Move to using GH Action services for testing with AiiDA-needed services (PostgreSQL & RabbitMQ) (#67, @CasperWA)
  • Redirect all non-major version prefix URLs to major-version prefix URLs for the OpenAPI docs endpoints (#72, @CasperWA)
  • Fix building source distribution, including missing files in MANIFEST.in (#76, @thatch)
  • Fix misplaced keys in .codecov.yml (#78, @CasperWA)

v0.6.1

25 May 14:27
v0.6.1
Compare
Choose a tag to compare

Changes:

  • Use OPTIMADE Python tools v0.7.0.
    This introduced minor API and grammar changes (#62)
  • Update codecov-action to use v1, which always points to the newest v1.x.y (#62)
  • Update minimum versions for dependencies to the newest for lark-parser and explicitly set a version for uvicorn (#62)

v0.6.0

25 May 14:26
v0.6.0
Compare
Choose a tag to compare

Changes:

  • Further testing of docker image and all possible base URLs (#55)
  • Update to optimade-python-tools v0.6.0 (#59)
  • Add debug mode and run parameter (#59)
  • Remove /optimade from base URL (#59)
  • Use CORS, allowing all (*) in cross-origin (#59)

Bug fixes:

  • Fix CI concerning usage of PostgreSQL (#57)