has2k1/plotnine

Release: plotnine-0.14.2

Closed this issue · 0 comments

  • Upgrade key dependencies if necessary

  • Upgrade code quality checkers

    • pre-commit

      pre-commit autoupdate
      
    • ruff

      pip install --upgrade ruff
      
    • pyright

      pip install --upgrade pyright
      PYRIGHT_VERSION=$(pyright --version | grep -oE '[0-9]+\.[0-9]+\.[0-9]+')
      python -c "
      import pathlib, re
      f = pathlib.Path('pyproject.toml')
      f.write_text(re.sub(r'pyright==[0-9]+\.[0-9]+\.[0-9]+', 'pyright==$PYRIGHT_VERSION', f.read_text()))
      "
  • Run tests and coverage locally

    git switch main
    git pull origin/main
    make typecheck
    make test
    make coverage
    • The tests pass
    • The coverage is acceptable
  • The latest online documentation builds, be sure to browse

  • Create a release branch

    git switch -c release-v0.14.2
  • Tag a pre-release version. These are automatically deployed on testpypi

    git tag -as v0.14.2a1 -m "Version 0.14.2a1"  # e.g. 0.14.2a1, 0.14.2b1, 0.14.2rc1
    git push -u origin release-v0.14.2
  • Update changelog

    nvim doc/changelog.qmd
    git commit -am "Update changelog for release"
    git push
    • Update / confirm the version to be released
    • Add a release date
    • The GHA tests pass
  • Tag final version and release

    git tag -as v0.14.2 -m "Version 0.14.2"
    git push
  • Update main branch

    git switch main
    git merge --ff-only release-v0.14.2
    git push
  • Create conda release

    • Copy SHA256 hash. Click view hashes, for the Source Distribution (.tar.gz).

    • Update plotnine-feedsock

      cd ../plotnine-feedstock
      git switch main
      git pull upstream main
      git switch -c v0.14.2
      nvim recipe/meta.yaml
      git commit -am  "Version 0.14.2"
      git push -u origin v0.14.2
    • Create a PR

    • Complete PR (follow the steps and merge)

  • Add zenodo badge to the changelog.