python-telegram-bot
The official channel for the python-telegram-bot library | https://python-telegram-bot.org
Show more- Subscribers
- Post coverage
- ER - engagement ratio
Data loading in progress...
Data loading in progress...
pip install -U python-telegram-bot
.
This release brings support for Bot API 7.10 and allows further customization of HTTPXRequest
.
For the full list of changes and improvements, please see the below changelog.
New Features
• Full Support for Bot API 7.10 (#4461 closes #4459, #4460, #4463 by aelkheir, #4464)
• Add Parameter httpx_kwargs
to HTTPXRequest
(#4451 closes #4424)
Minor Changes
• Improve Type Completeness (#4466)
Internal Changes
• Update Python 3.13 Test Suite to RC2 (#4471)
• Enforce the offline_bot
Fixture in Test*WithoutRequest
(#4465)
• Make Tests for telegram.ext
Independent of Networking (#4454)
• Rename Testing Base Classes (#4453)
Dependency Updates
• Bump pytest
from 8.3.2 to 8.3.3 (#4475)pip install -U python-telegram-bot
.
This release brings support for Bot API 7.8 and 7.9. The new parameter read_file_handle
of InputFile
was added to support special use cases with local API servers. Moreover, building up on v21.4, additional convenience methods for MessageEntity
were added.
Finally, we would like to point out that Python 3.8 will be reaching its end of life some time in October. python-telegram-bot
will drop support for Python 3.8 after that. If you're still using Python 3.8, please consider upgrading to a newer version.
For the full list of changes and improvements, please see the below changelog.
Major Changes
• Full Support for Bot API 7.9 (#4429)
• Full Support for Bot API 7.8 (#4408)
New Features
• Add MessageEntity.shift_entities
and MessageEntity.concatenate
(#4376 closes #4372)
• Add Parameter game_pattern
to CallbackQueryHandler
(#4353 by jainamoswal closes #4269)
• Add Parameter read_file_handle
to InputFile
(#4388 closes #4339)
Documentation Improvements
• Bugfix for "Available In" Admonitions (#4413)
• Documentation Improvements (#4400 closes #4446, #4448 by Palaptin)
• Document Return Types of RequestData
Members (#4396)
• Add Introductory Paragraphs to Telegram Types Subsections (#4389 by mohdyusuf2312 closes #4380)
• Start Adapting to RTD Addons (#4386)
Minor and Internal Changes
• Remove Surplus Logging from Updater
Network Loop (#4432 by MartinHjelmare)
• Add Internal Constants for Encodings (#4378 by elpekenin)
• Improve PyPI Automation (#4375 closes #4373)
• Update Test Suite to New Test Channel Setup (#4435)
• Improve Fixture Usage in test_message.py
(#4431 by Palaptin)
• Update Python 3.13 Test Suite to RC1 (#4415)
• Bump ruff
and Add New Rules (#4416)
Dependency Updates
• Update cachetools
requirement from <5.5.0,>=5.3.3 to >=5.3.3,<5.6.0 (#4437)
• Bump sphinx
from 7.4.7 to 8.0.2 and furo
from 2024.7.18 to 2024.8.6 (#4412)
• Bump test-summary/action
from 2.3 to 2.4 (#4410)
• Bump pytest
from 8.2.2 to 8.3.2 (#4403)
• Bump dependabot/fetch-metadata
from 2.1.0 to 2.2.0 (#4411)
• Update cachetools
requirement from ~=5.3.3 to >=5.3.3,<5.5.0 (#4390)
• Bump sphinx
from 7.3.7 to 7.4.7 (#4395)
• Bump furo
from 2024.5.6 to 2024.7.18 (#4392)pip install -U python-telegram-bot
.
This release brings support for Bot API versions 7.5, 7.6, and 7.7.
Moreover, we have added initial support for Python 3.13 Beta and a new convenience helper for working with MessageEntity
objects containing UTF-16 encoded characters.
For the full list of changes and improvements, please see the below changelog.
Major Changes
• Full Support for API 7.5 (#4328, #4316, #4315, #4312 closes #4310, #4311)
• Full Support for API 7.6 (#4333 closes #4331, #4344, #4341, #4334, #4335, #4351, #4342, #4348)
• Full Support for API 7.7 (#4356 closes #4355)
• Drop python-telegram-bot-raw
And Switch to pyproject.toml
Based Packaging (#4288 closes #4129 and #4296)
• Deprecate Inclusion of successful_payment
in Message.effective_attachment
(#4365 closes #4350)
New Features
• Add Support for Python 3.13 Beta (#4253)
• Add filters.PAID_MEDIA
(#4357)
• Log Received Data on Deserialization Errors (#4304)
• Add MessageEntity.adjust_message_entities_to_utf_16
Utility Function (#4323 by Antares0982 closes #4319)
• Make Argument bot
of TelegramObject.de_json
Optional (#4320)
Documentation Improvements
• Documentation Improvements (#4303 closes #4301)
• Restructure Readme (#4362)
• Fix Link-Check Workflow (#4332)
Internal Changes
• Automate PyPI Releases (#4364 closes #4318)
• Add mise-en-place
to .gitignore
(#4300)
• Use a Composite Action for Testing Type Completeness (#4367)
• Stabilize Some Concurrency Usages in Test Suite (#4360)
• Add a Test Case for MenuButton
(#4363)
• Extend SuccessfulPayment
Test (#4349)
• Small Fixes for test_stars.py
(#4347)
• Use Python 3.13 Beta 3 in Test Suite (#4336)
Dependency Updates
• Bump ruff
and Add New Rules (#4329)
• Bump pre-commit
Hooks to Latest Versions (#4337)
• Add Lower Bound for flaky
Dependency (#4322 by Palaptin)
• Bump pytest
from 8.2.1 to 8.2.2 (#4294)pip install -U python-telegram-bot
.
This release brings full support for the new Bot API 7.4. Moreover, it removes backward compatibility for functionality deprecated in Bot API 7.3. This is in line with our stability policy.
As announced previously, this is also the last update for the python-telegram-bot-raw
library. It will not receive any further updates. Please switch to using python-telegram-bot
.
For the full list of changes and improvements, please see the below changelog.
Major Changes
• Full Support for Bot API 7.4 (#4286, #4280, #4285, #4276 closes #4275, #4283, #4278, #4279)
• Deprecate python-telegram-bot-raw
(#4270)
• Remove Functionality Deprecated in Bot API 7.3 (#4266 closes #4244)
New Features
• Add Parameter chat_id
to ChatMemberHandler
(#4290 by uniquetrij closes #4287)
Documentation Improvements
• Documentation Improvements (#4264 closes #4240)
Internal Changes
• Add setuptools
to requirements-dev.txt
(#4282)
• Update Settings for pre-commit.ci (#4265)
Dependency Updates
• Bump pytest
from 8.2.0 to 8.2.1 (#4272)Hi all. We have decided to deprecate the python-telegram-bot-raw library and no longer provide updates for it. In Februrary 2021, we introduced the library python-telegram-bot-raw that provides the telegram module without telegram.ext. Back then, we felt this to be right thing to do since the rather new v13 had introduced additional required dependencies for the JobQueue. Since then, v20 has seen the light of day. With v20, python-telegram-bot only has a single required dependency, httpx, for the networking backend. All other dependencies for opt-in functionality of telegram.ext are purely optional. Moreover, according to the numbers that we are aware of ([1], [2], [3], [4]), the python-telegram-bot-raw library never gained a considerable user base compared to python-telegram-bot. Since maintaining python-telegram-bot-raw still consumes some resources and is currently also hindering the modernization of PTBs packaging setup, we have therefore made this decision. The next release of PTB will add a corresponding…
python-telegram-bot-raw
library and no longer provide updates for it.
In Februrary 2021, we introduced the library python-telegram-bot-raw that provides the telegram module without telegram.ext
. Back then, we felt this to be right thing to do since the rather new v13 had introduced additional required dependencies for the JobQueue
.
Since then, v20 has seen the light of day. With v20, python-telegram-bot
only has a single required dependency, httpx
, for the networking backend. All other dependencies for opt-in functionality of telegram.ext
are purely optional. Moreover, according to the numbers that we are aware of ([1], [2], [3], [4]), the python-telegram-bot-raw
library never gained a considerable user base compared to python-telegram-bot
.
Since maintaining python-telegram-bot-raw
still consumes some resources and is currently also hindering the modernization of PTBs packaging setup, we have therefore made this decision. The next release of PTB will add a corresponding warning to python-telegram-bot-raw
. This will be the last update for python-telegram-bot-raw
.
What does this mean to you?
Almost nothing. All you have to do is remove that trailing -raw
from your requirements file. That's it. No code changes are necessary, since python-telegram-bot-raw
is a subset of python-telegram-bot
. No additional dependencies will be installed.
Thank you for your understanding and your continued usage and support of the python-telegram-bot
library.
Your PTB Developer Teampip install -U python-telegram-bot
.
This release brings full support for the new Bot API 7.3. Moreover, it removes backward compatibility for functionality deprecated in API 7.2. This is in line with our stated policy.
Moreover, it includes improvements for the startup and shutdown behavior of Application
.
For the full list of changes and improvements, please see the below changelog.
Major Changes
• Full Support for Bot API 7.3 (#4246, #4260, #4243, #4248, #4242 closes #4236, #4247 by aelkheir)
• Remove Functionality Deprecated by Bot API 7.2 (#4245)
New Features
• Add Version to PTBDeprecationWarning
(#4262 closes #4261)
• Handle Exceptions in building CallbackContext
(#4222)
Bug Fixes
• Call Application.post_stop
Only if Application.stop
was called (#4211 closes #4210)
• Handle SystemExit
raised in Handlers (#4157 closes #4155 and #4156)
• Make Birthdate.to_date
Return a datetime.date
Object (#4251)
Documentation Improvements
• Documentation Improvements (#4217)
Internal Changes
• Add New Rules to ruff
Config (#4250)
• Adapt Test Suite to Changes in Error Messages (#4238)
Dependency Updates
• Bump furo
from 2024.4.27 to 2024.5.6 (#4252)
• pre-commit
autoupdate (#4239)
• Bump pytest
from 8.1.1 to 8.2.0 (#4231)
• Bump dependabot/fetch-metadata
from 2.0.0 to 2.1.0 (#4228)
• Bump pytest-asyncio
from 0.21.1 to 0.21.2 (#4232)
• Bump pytest-xdist
from 3.6.0 to 3.6.1 (#4233)
• Bump furo
from 2024.1.29 to 2024.4.27 (#4230)
• Bump srvaroa/labeler
from 1.10.0 to 1.10.1 (#4227)
• Bump pytest
from 7.4.4 to 8.1.1 (#4218)
• Bump sphinx
from 7.2.6 to 7.3.7 (#4215)
• Bump pytest-xdist
from 3.5.0 to 3.6.0 (#4215)pip install -U python-telegram-bot
.
This is a bug fix release. It addresses a bug that was introduced in v21.1 in the new default behavior of the message_thread_id
parameter of the shortcut methods Message.reply_*
. Moreover, it’s now ensured that passing message_thread_id=None
actually overrides the default behavior.
Bug Fixes
• Fix Bug With Parameter message_thread_id
of Message.reply_*
(#4207 closes #4205)
Minor Changes
• Remove Deprecation Warning in JobQueue.run_daily
(#4206 by @Konano)
• Fix Annotation of EncryptedCredentials.decrypted_secret
(#4199 by @marinelay closes #4198)pip install -U python-telegram-bot
.
This update brings full support for Bot API 7.2. Moreover, it removes backward compatibility for functionality deprecated in API 7.1. This is in line with our stated policy
⚠️ Please note that the Bot API update includes breaking changes for Bot.set_sticker_set_thumbnail
, InputSticker
and StickerSet
. See also our earlier post and this GitHub thread for additional information.
To integrate the Bot API changes well into the PTB framework, the Message.repl_*
methods now also automatically pass the new business_connection_id
parameter and the Update.effective_*
properties consider the new update types as well.
Another change for the Message.reply_*
methods is they now reply in the same topic by default.
For the full list of changes and improvements, please see the below changelog.
Major Changes
• API 7.2 (#4180 closes #4179 and #4181, #4181)
• Make ChatAdministratorRights/ChatMemberAdministrator.can_*_stories
Required (API 7.1) (#4192)
Minor Changes
• Refactor Debug logging in Bot
to Improve Type Hinting (#4151 closes #4010)
New Features
• Make Message.reply_*
Reply in the Same Topic by Default (#4170 by @aelkheir closes #4139)
• Accept Socket Objects for Webhooks (#4161 closes #4078)
• Add Update.effective_sender
(#4168 by @aelkheir closes #4085)
Documentation Improvements
• Documentation Improvements (#4171, #4158 by @teslaedison)
Internal Changes
• Temporarily Mark Tests with get_sticker_set
as XFAIL due to API 7.2 Update (#4190)
Dependency Updates
• pre-commit
autoupdate (#4184)
• Bump dependabot/fetch-metadata
from 1.6.0 to 2.0.0 (#4185)Yesterday the Telegram team released Bot API 7.2. This update brings many changes, which we are already working on implementing. However there is one major backward incompatible change, which is the removal of the fields StickerSet.is_animated/is_video. This unfortunately breaks the method Bot.get_sticker_set and affects all versions of our library. The current workaround for this if you have v20.8+ is to directly call await bot.do_api_request("get_sticker_set", {"name": sticker_set_name}) and parse the resulting JSON return value. The upcoming version of the library will address this incompatibility. Thank you for understanding and being patient.
StickerSet.is_animated/is_video
. This unfortunately breaks the method Bot.get_sticker_set
and affects all versions of our library. The current workaround for this if you have v20.8+ is to directly call
await bot.do_api_request("get_sticker_set", {"name": sticker_set_name})
and parse the resulting JSON return value. The upcoming version of the library will address this incompatibility.
Thank you for understanding and being patient.pip install -U python-telegram-bot
.
This is a hotfix release for a faulty package configuration.
Bug Fixes
• Remove docs
from Package (#4150)Your current plan allows analytics for only 5 channels. To get more, please choose a different plan.