Releasing a new version#

This page details the procedure package maintainers should follow to release a new version of Lightkurve.

The procedure requires the following steps:

  1. Add any new contributors to AUTHORS.rst.

  2. Remove the suffix dev from the version number in pyproject.toml and lightkurve/, and commit this change to the main branch. Note that Lightkurve follows a semantic versioning scheme.

  3. Ensure the latest version of the main branch has been checked out, and verify that all unit tests pass:

$ git checkout main
$ git pull
$ pytest --remote-data
  1. Verify that the docs and all tutorial notebooks can be compiled without failure (see Building documentation above), and upload them to the webserver.

$ cd docs
$ make html
$ make upload
  1. Edit the CHANGES.rst file by changing the date for the version you are about to release from “unreleased” to today’s date. Also be sure to make sure the change log is complete and accurate. Then add and commit those changes with:

$ git add CHANGES.rst
$ git commit -m "Finalizing changelog for v<version>"
  1. Make a new release branch in GitHub using the Draft a new release button at

  2. Create and upload the new package to PyPI:

$ poetry build
$ poetry publish
  1. Update the version number on the Lightkurve conda feedstock. A friendly robot will tend to open a PR to make this change within 1-2 hours, so all we need to do is review any necessary changes in the dependencies and make sure the PR is merged.

  2. Edit pyproject.toml and lightkurve/ to contain the next version number with suffix dev.