Skip to main content

Tooling to ease creating releases

Project description

This project contains tooling and templates to ease creating releases on GitHub and publishing them on PyPI. Designed to be used by Robot Framework and tools and libraries in its ecosystem, but can naturally be used also by other projects.

To be able to take this project into use, you should know at least basics of Python packaging.

Main features

  • Utilities that can be used by custom Invoke tasks. These utilities are importable directly from the rellu module:

    • Setting 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. Requires project to use pre-defined labels.

  • Generic Invoke tasks in the rellu.tasks module:

    • Cleaning temporary files and directories.

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

  • Step-by-step instructions for creating releases in BUILD.rst file using Invoke tasks defined in the tasks.py file, git, and other tools. Also this file can be used as a template.

  • setup.py using general good practices that can also be used as a template. There’s also super simple MANIFEST.in, but this project doesn’t need setup.cfg.

Dependencies

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

Rellu itself works only with Python 3.6 or never, but projects it is used with can naturally support also older Python releases. Rellu is developed and tested on Linux, but ought to work just fine also on OSX. Using it on Windows may work, but that’s not tested or supported.

Required project setup

To be able to generate release notes automatically, issue trackers must be configured using these rules:

  • Milestones must match project versions and use format v1.2 or v1.2.1.

  • Labels must be configured using the provided utility.

  • Milestones and labels must be used consistently:

    • Valid issues must have type defined as a label bug, enhancement or task. Issues with the task type are not included in release notes.

    • Issues should have priority set. See various prio- labels.

    • Issues belonging to a certain milestone should have that milestone set.

    • Issues included into a certain preview releases should have a matching label set (e.g. a1, b2, rc3).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rellu-0.7.tar.gz (9.7 kB view details)

Uploaded Source

Built Distribution

rellu-0.7-py3-none-any.whl (13.3 kB view details)

Uploaded Python 3

File details

Details for the file rellu-0.7.tar.gz.

File metadata

  • Download URL: rellu-0.7.tar.gz
  • Upload date:
  • Size: 9.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for rellu-0.7.tar.gz
Algorithm Hash digest
SHA256 dd9867e14a4e4a86b98d27e403a8205da36b2f51ccae6c9380fb541de4cd0af0
MD5 e859c49d36fc94e1ca0415e28ac91649
BLAKE2b-256 087c697c97aca50e27aba9e0d834cad32906ff7f20e3fb511d7d13652ac46f6a

See more details on using hashes here.

Provenance

File details

Details for the file rellu-0.7-py3-none-any.whl.

File metadata

File hashes

Hashes for rellu-0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 b35099b0ad0f47440e1b6b1e276246efb6b0dc81a0a5873edcae64768ac534d9
MD5 926bc8bc687fffbd666540e58b1d5a11
BLAKE2b-256 360088cdda89cc0af6e7bc60a7a12a4198556e93827b8cd56106dcea5c0990e9

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page