Contributing#

This guide describes how to contribute to icalendar.

Examples of how to contribute#

  • Report issues to the bugtracker.

  • Submit pull requests from your fork of the icalendar repository.

  • Extend the documentation.

  • Sponsor development of icalendar through [Open Collective](https://opencollective.com/python-icalendar).

Pull request requirements#

Before submitting your pull request, ensure you have met the following requirements.

  1. Add a changelog entry to CHANGES.rst. This is required and enforced by CI. See Change log entry format for details.

  2. Add a test which proves your fix and passes.

  3. Run all tests to ensure your changes don’t break any existing functionality.

  4. Add or edit documentation, both as docstrings to be rendered in the API documentation and narrative documentation, as necessary.

  5. Add yourself to docs/credits.rst, if you haven’t already done so.

Change log entry format#

Add your entry under the appropriate section in CHANGES.rst.

Minor changes

For small improvements, refactoring, and documentation updates.

Breaking changes

For changes that break the existing API.

New features

For new functionality.

Bug fixes

For bug fixes and error corrections.

Example:

Minor changes:

- Fix issue with timezone parsing in special cases. See `Issue XXX <link>`_.

Set up for development#

If you would like to set up icalendar to contribute changes, Installing iCalendar should help you further.