Programming assignment 2.5: From Code to Distributable

Programming assignment 2.5: From Code to Distributable#

Due: Friday, December 12th.

You can preview this assignment on https://mude.citg.tudelft.nl/workbook-2025/assignments/PA2.5/README.html. After the deadline, the solution will be shared on: MUDE-2025/PA2.5 (which gives a 404 at the moment ;)). You can obtain your personal repository for submission on: https://classroom.github.com/a/tT4r5qn7

Before you start with this assignment, please go through the instructional material in the book chapter Python Packaging: Packaging

In this assignment, you will transform some of your earlier Python code into a properly packaged and distributable Python package. The final submission will include a src/ directory, pyproject.toml, and README.md. You’ll do so as described in 1_packaging.md

You have successfully completed this PA if:

  1. Your repo’s directory sutructure looks like the one below:

├── .github/workflows/classroom.yml
├── src/
│   └── sparseforge/
│       ├── __init__.py
│       ├── benchmark_operations.py
│       ├── main.py
│       └── mesh_utils.py
├── .gitignore
├── CITATION.cff
├── LICENSE
├── pyproject.toml
└── README.md
  1. The pyproject.toml file contains all required metadata and dependencies shown in tasks 3 and 4.

  2. The package builds successfully without errors and you get one or both of the following:

    • a dist/ directory with .whl and .tar.gz files.

    • an egg-info/ directory with metadata about your package inside src/.

By Geet George, Delft University of Technology. CC BY 4.0, more info on the Credits page of Workbook.