Decision log - cma-open/cmatools GitHub Wiki

Key decisions taken during project development

  • Development environment and dependencies

    • Conda will be used to specify a replicable development and run environment and this wil be stored within the package repo
    • Adopting pyproject.toml for some system config (e.g. pytest)
    • Current main dependencies
      • iris >= 3.0
      • numpy >= 1.19
  • Python

    • Python 3.9
  • System development

    • via python package, to be installed by the end user directly from source code archive
    • project structured with the main package nested within a lib directory and test located a project root . See discussion at https://hynek.me/articles/testing-packaging/
  • Testing

    • via Pytest
  • Documentation

    • Selected Sphinx for the documentatino page builder
    • Selected the Sphinx "read the docs" theme
    • Using Numpy style for Docstrings