Instructor Notes
This lesson is a process-oriented tutorial on creating a Python package for Research Software Engineers.
After giving an overview of all the files we’re going to touch (on
the index page), it follows the process of creating a package: - Create
a new repository (setup), - Create a virtual environment, - Add some
code and tests, - Add important metadata files, - Configure the
pyproject.toml
file with detailed metadata, - Decide on and
implement a versioning scheme, - Add automated checks like code linting,
- Add continuous integration support, - Publish the package and make it
citeable by adding an additional metadata file.
The lesson is intentionally more challenging than an entry-level how-to guide on packaging. At each step when a new concept is introduced, it dives deeper into the detail than a how-to guide would – for instance, we only get to code after setting up an environment and initializing the infrastructure needed for reproducible builds.