Python Packaging Compact course: Python Packaging

Format

  • Date: 28.02.24
  • Time: 9:30 - 13:00
  • Location: Mathematikon Bauteil A, Im Neuenheimer Feld 205, in Seminar room 10 on the 5th floor.
  • Instructor: Dr. Liam Keegan, Research Software Engineer, Scientific Software Center

Prerequisites

Experience or interest in publishing your Python code and a laptop is required.

Summary

In this course we will learn how to package a Python library, how to publish it on PyPI and on conda-forge, as well as look at more advanced topics like building pre-compiled wheels including c++ extensions using pybind11, and automatically publishing new releases using continuous integration and cibuildwheel.

Learning Objectives

After the course participants should be able to

  • Create a modern pyproject.toml Python package
  • Publish this package to PyPI
  • Set up continuous integration to automatically publish to PyPI
  • Understand the basics of conda-forge publishing
  • Create binary wheels including c++ pybind11 extensions

Signup

Please register here to sign up for the course.