Skip to content

[DRAFT] New Delphi Epidata API Python Client

License

Notifications You must be signed in to change notification settings

cmu-delphi/epidatpy

Repository files navigation

Delphi Epidata Python Client epidatpy

License: MIT Github Actions PyPi Read the Docs

Install

Install latest version:

pip install -e "git+https://github.com/cmu-delphi/epidatpy.git#egg=epidatpy"

Usage

TODO

Development Environment

Prepare virtual environment and install dependencies

python -m venv venv
source ./venv/bin/activate
pip install --use-feature=2020-resolver -r requirements.txt -r requirements-dev.txt

Common Commands

source ./venv/bin/activate
inv format   # format code
inv lint     # check linting
inv docs     # build docs
inv test     # run unit tests
inv coverage # run unit tests with coverage
inv clean    # clean build artifacts
inv dist     # build distribution packages
inv release  # upload the current version to pypi

Release Process

The release consists of multiple steps which can be all done via the GitHub website:

  1. Go to create_release GitHub Action and click the Run workflow button. Enter the next version number or one of the magic keywords (patch, minor, major) and hit the green Run workflow button.
  2. The action will prepare a new release and will end up with a new Pull Request
  3. Let the code owner review the PR and its changes and let the CI check whether everything builds successfully
  4. Once approved and merged, another GitHub action job starts which automatically will
    1. create a git tag
    2. create another Pull Request to merge the changes back to the dev branch
    3. create a GitHub release with automatically derived release notes
  5. Done