Skip to main content

# 🛠️ rellu – Utilities to Ease Creating Releases

This project provides tooling and templates to ease the creation of releases on GitHub and their publication on PyPI. It is primarily designed for Robot Framework and the tools and libraries in its ecosystem, but can naturally be used by other projects as well.

To successfully adopt this project, you should be familiar with at least the basics of Python packaging.

## ✨ Main Features

The core features of rellu are organized into reusable utilities and generic Invoke tasks:

### 1. Utilities (`rellu` module)

These utilities can be used by custom Invoke tasks and are directly importable from the rellu module:

  • Setting the project version, including automatically setting it to the next suitable development version.

  • Setting common labels in the issue tracker.

  • Generating release notes based on issues in the tracker. This requires the project to use predefined labels.

### 2. Generic `Invoke` Tasks (`rellu.tasks` module)

  • Cleaning up temporary files and directories.

  • `tasks.py`: An example file implementing Invoke tasks using the aforementioned utilities. Other projects can use it as an example or template.

  • `BUILD.rst`: A file containing step-by-step instructions for creating releases using the Invoke tasks defined in tasks.py, Git, and other tools. This file can also be used as a template.

  • `setup.py`: A file that follows general good practices and can also serve as a template. A very simple `MANIFEST.in` file is also included, though this project does not require a `setup.cfg`.

## 🔗 Dependencies

Rellu is designed to be used together with `Invoke`, which is also utilized internally. All project dependencies are listed in the `requirements.txt` and `requirements-build.txt` files.

### System Requirements:

  • Python: Rellu itself works only with Python 3.10 or newer. Projects that use it can, of course, also support older Python releases.

  • Operating System: It is developed and tested on Linux, but ought to work just fine on OSX. Using it on Windows may work, but this is neither tested nor officially supported.

## ⚙️ Required Project Setup

To be able to automatically generate release notes, the project’s issue tracker must be configured using these rules:

  1. Milestones must match project versions and use the format `v1.2` or `v1.2.1`.

  2. Labels must be configured using the provided utility.

  3. Milestones and labels must be used consistently: * Valid issues must have their type defined as a label: `bug`, `enhancement`, or `task`. Issues with the task type are not included in the release notes. * Issues should have their priority set using the appropriate `prio-` labels. * Issues belonging to a certain milestone should have that milestone set. * Issues included in certain preview releases should have a matching label set (e.g., `a1`, `b2`, `rc3`).

Release files for rellu 2.0.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for rellu 2.0.2
File Size Uploaded
rellu-2.0.2.tar.gz 14.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for rellu 2.0.2
File Interpreter ABI Platform
rellu-2.0.2-py3-none-any.whl Python 3 none any Details

Total release size: 29.8 kB

Release files / rellu-2.0.2.tar.gz

Download URL rellu-2.0.2.tar.gz
Size 14.2 kB
Tags Source
SHA-256 checksum
How to use checksums
99270f553c930b9c7307811e299b27e1d33d543ef214f2928514a5ce2e504ea8
BLAKE2b-256 checksum
How to use checksums
e8ce9fcf723e9810c78fb1eb1375af8419f2329132cf6b2fdc06dee2fc4d792a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.0

Release files / rellu-2.0.2-py3-none-any.whl

Download URL rellu-2.0.2-py3-none-any.whl
Size 15.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
75d2d544a2dc9ae006a72e2ec0bc828e5115994dcbe4e4379737a763a6bbdb1f
BLAKE2b-256 checksum
How to use checksums
61c13e91f007f7871ceeb93ecd1c8d35e3c3c9d0ec15efdac97021e3947270aa
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.0

Release history Release notifications | RSS feed

This release

2.0.2 This release

2 release files

2.0.1

2 release files

2.0.0

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.8.1

2 release files

0.8.0

2 release files

0.7

2 release files

0.6

2 release files

0.5

2 release files

0.4

2 release files

0.3

2 release files

0.2

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page