-
Notifications
You must be signed in to change notification settings - Fork 5.7k
Releasing a new version
This project adheres to the Semantic Versioning specification by Tom Preston-Werner.
The actual release (i.e. building the distributions and uploading to PyPI) are automated via GitHub actions. What currently needs to be done manually is updating the changelog and version files.
-
Bump version:
- telegram/_version.py
- Replace all ocurrences of NEXT.VERSION by the correct version string in the docstrings
- if the release includes a Bot API update, update README.rst
- if the release drops a Python version, update README.rst and pyproject.tolm
-
Commit & create a PR
-
Make sure that the chango fragment is created correctly for an internal change. Run chango release --uid vXX.yy and commit the result.
-
If all checks pass, squash-merge with the commit message:
Bump version to v<VERSION> (#<PR-Number>)
-
Trigger the workflow for releasing to PyPI (click "Run workflow" and select the master branch)
-
Approve the deployment request for PyPI
-
Wait for the GitHub action to finish uploding to PyPI and the GitHub releases page
-
Adjust the new release if necessary:
-
On Readthedocs dashboard check that latest, stable and vXX.YY are built correctly
-
Close milestones for this version.
-
Test in a clean virtualenv that
pip install python-telegram-bot
work with the new version. -
If the doc-fixes branch got merged, create a new one.
-
Merge the dev-wiki into the production wiki
Please use the following channels/groups to announce a new version release:
- @pythontelegrambotchannel
- @pythontelegrambotgroup (Channel posts are automatically forwarded to here)
Channel posts should be a bit more verbose than the plain release notes. E.g. they can
- list the (non-dev-team) authors, who contributed to the release, maybe even for each PR
- have a short, informative description of new/changed features
Wiki of python-telegram-bot
© Copyright 2015-2025 – Licensed by Creative Commons
- Architecture Overview
- Builder Pattern for
Application
- Types of Handlers
- Working with Files and Media
- Exceptions, Warnings and Logging
- Concurrency in PTB
- Advanced Filters
- Storing data
- Making your bot persistent
- Adding Defaults
- Job Queue
- Arbitrary
callback_data
- Avoiding flood limits
- Webhooks
- Bot API Forward Compatiblity
- Frequently requested design patterns
- Code snippets
- Performance Optimizations
- Telegram Passport
- Bots built with PTB
- Automated Bot Tests