2019-02-18 20:04:52 +01:00
=========
Changelog
=========
Bot API 4.0 (#1168)
Telegram Passport (#1174):
- Add full support for telegram passport.
- New types: PassportData, PassportFile, EncryptedPassportElement, EncryptedCredentials, PassportElementError, PassportElementErrorDataField, PassportElementErrorFrontSide, PassportElementErrorReverseSide, PassportElementErrorSelfie, PassportElementErrorFile and PassportElementErrorFiles.
- New bot method: set_passport_data_errors
- New filter: Filters.passport_data
- Field passport_data field on Message
- PassportData is automagically decrypted when you specify your private key when creating Updater or Bot.
- PassportFiles is also automagically decrypted as you download/retrieve them.
- See new passportbot.py example for details on how to use, or go to our telegram passport wiki page for more info
- NOTE: Passport decryption requires new dependency `cryptography`.
Inputfile rework (#1184):
- Change how Inputfile is handled internally
- This allows support for specifying the thumbnails of photos and videos using the thumb= argument in the different send_ methods.
- Also allows Bot.send_media_group to actually finally send more than one media.
- Add thumb to Audio, Video and Videonote
- Add Bot.edit_message_media together with InputMediaAnimation, InputMediaAudio, and inputMediaDocument.
Other Bot API 4.0 changes:
- Add forusquare_type to Venue, InlineQueryResultVenue, InputVenueMessageContent, and Bot.send_venue. (#1170)
- Add vCard support by adding vcard field to Contact, InlineQueryResultContact, InputContactMessageContent, and Bot.send_contact. (#1166)
- Support new message entities: CASHTAG and PHONE_NUMBER. (#1179)
- Cashtag seems to be things like $USD and $GBP, but it seems telegram doesn't currently send them to bots.
- Phone number also seems to have limited support for now
- Add Bot.send_animation, add width, height, and duration to Animation, and add Filters.animation. (#1172)
Co-authored-by: Jasmin Bom <jsmnbom@gmail.com>
Co-authored-by: code1mountain <32801117+code1mountain@users.noreply.github.com>
Co-authored-by: Eldinnie <pieter.schutz+github@gmail.com>
Co-authored-by: mathefreak1 <mathefreak@hi2.in>
2018-08-29 14:18:58 +02:00
2019-09-13 21:29:06 +02:00
Version 12.1.0
================
*Released 2019-09-13*
**Major changes:**
- Bot API 4.4 support (`#1464`_ , `#1510`_ )
- Add `get_file` method to `Animation` & `ChatPhoto` . Add, `get_small_file` & `get_big_file`
methods to `ChatPhoto` (`#1489`_ )
- Tools for deep linking (`#1049`_ )
**Minor changes and/or bug fixes:**
- Documentation fixes (`#1500`_ , `#1499`_ )
- Improved examples (`#1502`_ )
.. _`#1464`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1464
.. _`#1502`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1502
.. _`#1499`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1499
.. _`#1500`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1500
.. _`#1049`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1049
.. _`#1489`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1489
.. _`#1510`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1510
2019-08-27 09:09:02 +02:00
Version 12.0.0
2019-02-13 13:41:04 +01:00
================
2019-08-29 20:25:28 +02:00
*Released 2019-08-29*
2019-02-13 13:41:04 +01:00
2019-08-27 09:09:02 +02:00
Well... This felt like decades. But here we are with a new release.
2019-02-13 13:41:04 +01:00
2019-08-27 09:09:02 +02:00
Expect minor releases soon (mainly complete Bot API 4.4 support)
2019-02-13 13:41:04 +01:00
2019-08-29 19:30:29 +02:00
**Major and/or breaking changes:**
2018-09-21 08:57:01 +02:00
2019-02-13 13:41:04 +01:00
- Context based callbacks
- Persistence
- PrefixHandler added (Handler overhaul)
- Deprecation of RegexHandler and edited_messages, channel_post, etc. arguments (Filter overhaul)
2019-02-14 12:03:20 +01:00
- Various ConversationHandler changes and fixes
2019-08-27 09:09:02 +02:00
- Bot API 4.1, 4.2, 4.3 support
- Python 3.4 is no longer supported
2019-08-29 19:30:29 +02:00
- Error Handler now handles all types of exceptions (`#1485`_ )
- Return UTC from from_timestamp() (`#1485`_ )
2018-09-21 08:57:01 +02:00
2019-02-13 13:41:04 +01:00
**See the wiki page at https://git.io/fxJuV for a detailed guide on how to migrate from version 11 to version 12.**
Context based callbacks (`#1100`_ )
----------------------------------
- Use of `` pass_ `` in handlers is deprecated.
- Instead use `` use_context=True `` on `` Updater `` or `` Dispatcher `` and change callback from (bot, update, others...) to (update, context).
- This also applies to error handlers `` Dispatcher.add_error_handler `` and JobQueue jobs (change (bot, job) to (context) here).
2018-09-21 08:57:01 +02:00
- For users with custom handlers subclassing Handler, this is mostly backwards compatible, but to use the new context based callbacks you need to implement the new collect_additional_context method.
2019-02-13 13:41:04 +01:00
- Passing bot to `` JobQueue.__init__ `` is deprecated. Use JobQueue.set_dispatcher with a dispatcher instead.
- Dispatcher makes sure to use a single `CallbackContext` for a entire update. This means that if an update is handled by multiple handlers (by using the group argument), you can add custom arguments to the `CallbackContext` in a lower group handler and use it in higher group handler. NOTE: Never use with @run_async, see docs for more info. (`#1283`_ )
- If you have custom handlers they will need to be updated to support the changes in this release.
- Update all examples to use context based callbacks.
Persistence (`#1017`_ )
----------------------
- Added PicklePersistence and DictPersistence for adding persistence to your bots.
- BasePersistence can be subclassed for all your persistence needs.
2019-02-14 12:03:20 +01:00
- Add a new example that shows a persistent ConversationHandler bot
2019-02-13 13:41:04 +01:00
Handler overhaul (`#1114`_ )
---------------------------
- CommandHandler now only triggers on actual commands as defined by telegram servers (everything that the clients mark as a tabable link).
- PrefixHandler can be used if you need to trigger on prefixes (like all messages starting with a "/" (old CommandHandler behaviour) or even custom prefixes like "#" or "!").
Filter overhaul (`#1221`_ )
--------------------------
- RegexHandler is deprecated and should be replaced with a MessageHandler with a regex filter.
- Use update filters to filter update types instead of arguments (message_updates, channel_post_updates and edited_updates) on the handlers.
- Completely remove allow_edited argument - it has been deprecated for a while.
- data_filters now exist which allows filters that return data into the callback function. This is how the regex filter is implemented.
- All this means that it no longer possible to use a list of filters in a handler. Use bitwise operators instead!
2019-02-14 12:03:20 +01:00
ConversationHandler
-------------------
- Remove `` run_async_timeout `` and `` timed_out_behavior `` arguments (`#1344`_ )
- Replace with `` WAITING `` constant and behavior from states (`#1344`_ )
- Only emit one warning for multiple CallbackQueryHandlers in a ConversationHandler (`#1319`_ )
- Use warnings.warn for ConversationHandler warnings (`#1343`_ )
- Fix unresolvable promises (`#1270`_ )
2019-08-29 19:30:29 +02:00
2019-02-13 13:41:04 +01:00
Bug fixes & improvements
------------------------
2018-09-21 08:57:01 +02:00
- Handlers should be faster due to deduped logic.
2019-02-13 13:41:04 +01:00
- Avoid compiling compiled regex in regex filter. (`#1314`_ )
- Add missing `` left_chat_member `` to Message.MESSAGE_TYPES (`#1336`_ )
- Make custom timeouts actually work properly (`#1330`_ )
- Add convenience classmethods (from_button, from_row and from_column) to InlineKeyboardMarkup
- Small typo fix in setup.py (`#1306`_ )
- Add Conflict error (HTTP error code 409) (`#1154`_ )
- Change MAX_CAPTION_LENGTH to 1024 (`#1262`_ )
- Remove some unnecessary clauses (`#1247`_ , `#1239`_ )
- Allow filenames without dots in them when sending files (`#1228`_ )
- Fix uploading files with unicode filenames (`#1214`_ )
- Replace http.server with Tornado (`#1191`_ )
- Allow SOCKSConnection to parse username and password from URL (`#1211`_ )
- Fix for arguments in passport/data.py (`#1213`_ )
- Improve message entity parsing by adding text_mention (`#1206`_ )
2019-09-13 20:49:04 +02:00
- Documentation fixes (`#1348`_ , `#1397`_ , `#1436`_ )
2019-08-27 09:09:02 +02:00
- Merged filters short-circuit (`#1350`_ )
- Fix webhook listen with tornado (`#1383`_ )
- Call task_done() on update queue after update processing finished (`#1428`_ )
- Fix send_location() - latitude may be 0 (`#1437`_ )
- Make MessageEntity objects comparable (`#1465`_ )
- Add prefix to thread names (`#1358`_ )
2019-02-13 13:41:04 +01:00
2019-08-29 19:30:29 +02:00
Buf fixes since v12.0.0b1
-------------------------
- Fix setting bot on ShippingQuery (`#1355`_ )
- Fix _trigger_timeout() missing 1 required positional argument: 'job' (`#1367`_ )
- Add missing message.text check in PrefixHandler check_update (`#1375`_ )
- Make updates persist even on DispatcherHandlerStop (`#1463`_ )
2019-09-13 20:49:04 +02:00
- Dispatcher force updating persistence object's chat data attribute(`#1462`_ )
2019-08-29 19:30:29 +02:00
2019-02-13 13:41:04 +01:00
.. _`#1100`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1100
.. _`#1283`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1283
.. _`#1017`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1017
.. _`#1325`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1325
.. _`#1301`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1301
.. _`#1312`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1312
.. _`#1324`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1324
.. _`#1114`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1114
.. _`#1221`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1221
.. _`#1314`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1314
.. _`#1336`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1336
.. _`#1330`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1330
.. _`#1306`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1306
.. _`#1154`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1154
.. _`#1262`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1262
.. _`#1247`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1247
.. _`#1239`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1239
.. _`#1228`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1228
.. _`#1214`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1214
.. _`#1191`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1191
.. _`#1211`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1211
.. _`#1213`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1213
.. _`#1206`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1206
2019-02-14 12:03:20 +01:00
.. _`#1344`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1344
.. _`#1319`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1319
.. _`#1343`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1343
.. _`#1270`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1270
2019-08-27 09:09:02 +02:00
.. _`#1348`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1348
.. _`#1350`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1350
.. _`#1383`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1383
.. _`#1397`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1397
.. _`#1428`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1428
.. _`#1436`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1436
.. _`#1437`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1437
.. _`#1465`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1465
.. _`#1358`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1358
2019-08-29 19:30:29 +02:00
.. _`#1355`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1355
.. _`#1367`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1367
.. _`#1375`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1375
.. _`#1463`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1463
.. _`#1462`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1462
.. _`#1483`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1483
.. _`#1485`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1485
2018-09-21 08:57:01 +02:00
2019-02-13 13:41:04 +01:00
Internal improvements
---------------------
- Finally fix our CI builds mostly (too many commits and PRs to list)
- Use multiple bots for CI to improve testing times significantly.
- Allow pypy to fail in CI.
2018-09-21 08:57:01 +02:00
- Remove the last CamelCase CheckUpdate methods from the handlers we missed earlier.
2019-08-29 19:30:29 +02:00
- test_official is now executed in a different job
2018-09-21 08:57:01 +02:00
2019-02-18 20:04:52 +01:00
Version 11.1.0
==============
*Released 2018-09-01*
2018-09-01 17:27:35 +02:00
Fixes and updates for Telegram Passport: (`#1198`_ )
- Fix passport decryption failing at random times
- Added support for middle names.
- Added support for translations for documents
- Add errors for translations for documents
- Added support for requesting names in the language of the user's country of residence
- Replaced the payload parameter with the new parameter nonce
- Add hash to EncryptedPassportElement
.. _`#1198`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1198
2019-02-18 20:04:52 +01:00
Version 11.0.0
==============
*Released 2018-08-29*
Bot API 4.0 (#1168)
Telegram Passport (#1174):
- Add full support for telegram passport.
- New types: PassportData, PassportFile, EncryptedPassportElement, EncryptedCredentials, PassportElementError, PassportElementErrorDataField, PassportElementErrorFrontSide, PassportElementErrorReverseSide, PassportElementErrorSelfie, PassportElementErrorFile and PassportElementErrorFiles.
- New bot method: set_passport_data_errors
- New filter: Filters.passport_data
- Field passport_data field on Message
- PassportData is automagically decrypted when you specify your private key when creating Updater or Bot.
- PassportFiles is also automagically decrypted as you download/retrieve them.
- See new passportbot.py example for details on how to use, or go to our telegram passport wiki page for more info
- NOTE: Passport decryption requires new dependency `cryptography`.
Inputfile rework (#1184):
- Change how Inputfile is handled internally
- This allows support for specifying the thumbnails of photos and videos using the thumb= argument in the different send_ methods.
- Also allows Bot.send_media_group to actually finally send more than one media.
- Add thumb to Audio, Video and Videonote
- Add Bot.edit_message_media together with InputMediaAnimation, InputMediaAudio, and inputMediaDocument.
Other Bot API 4.0 changes:
- Add forusquare_type to Venue, InlineQueryResultVenue, InputVenueMessageContent, and Bot.send_venue. (#1170)
- Add vCard support by adding vcard field to Contact, InlineQueryResultContact, InputContactMessageContent, and Bot.send_contact. (#1166)
- Support new message entities: CASHTAG and PHONE_NUMBER. (#1179)
- Cashtag seems to be things like $USD and $GBP, but it seems telegram doesn't currently send them to bots.
- Phone number also seems to have limited support for now
- Add Bot.send_animation, add width, height, and duration to Animation, and add Filters.animation. (#1172)
Co-authored-by: Jasmin Bom <jsmnbom@gmail.com>
Co-authored-by: code1mountain <32801117+code1mountain@users.noreply.github.com>
Co-authored-by: Eldinnie <pieter.schutz+github@gmail.com>
Co-authored-by: mathefreak1 <mathefreak@hi2.in>
2018-08-29 14:18:58 +02:00
Fully support Bot API version 4.0!
2018-08-29 15:21:02 +02:00
(also some bugfixes :))
Bot API 4.0 (#1168)
Telegram Passport (#1174):
- Add full support for telegram passport.
- New types: PassportData, PassportFile, EncryptedPassportElement, EncryptedCredentials, PassportElementError, PassportElementErrorDataField, PassportElementErrorFrontSide, PassportElementErrorReverseSide, PassportElementErrorSelfie, PassportElementErrorFile and PassportElementErrorFiles.
- New bot method: set_passport_data_errors
- New filter: Filters.passport_data
- Field passport_data field on Message
- PassportData is automagically decrypted when you specify your private key when creating Updater or Bot.
- PassportFiles is also automagically decrypted as you download/retrieve them.
- See new passportbot.py example for details on how to use, or go to our telegram passport wiki page for more info
- NOTE: Passport decryption requires new dependency `cryptography`.
Inputfile rework (#1184):
- Change how Inputfile is handled internally
- This allows support for specifying the thumbnails of photos and videos using the thumb= argument in the different send_ methods.
- Also allows Bot.send_media_group to actually finally send more than one media.
- Add thumb to Audio, Video and Videonote
- Add Bot.edit_message_media together with InputMediaAnimation, InputMediaAudio, and inputMediaDocument.
Other Bot API 4.0 changes:
- Add forusquare_type to Venue, InlineQueryResultVenue, InputVenueMessageContent, and Bot.send_venue. (#1170)
- Add vCard support by adding vcard field to Contact, InlineQueryResultContact, InputContactMessageContent, and Bot.send_contact. (#1166)
- Support new message entities: CASHTAG and PHONE_NUMBER. (#1179)
- Cashtag seems to be things like $USD and $GBP, but it seems telegram doesn't currently send them to bots.
- Phone number also seems to have limited support for now
- Add Bot.send_animation, add width, height, and duration to Animation, and add Filters.animation. (#1172)
Co-authored-by: Jasmin Bom <jsmnbom@gmail.com>
Co-authored-by: code1mountain <32801117+code1mountain@users.noreply.github.com>
Co-authored-by: Eldinnie <pieter.schutz+github@gmail.com>
Co-authored-by: mathefreak1 <mathefreak@hi2.in>
2018-08-29 14:18:58 +02:00
Telegram Passport (`#1174`_ ):
- Add full support for telegram passport.
- New types: PassportData, PassportFile, EncryptedPassportElement, EncryptedCredentials, PassportElementError, PassportElementErrorDataField, PassportElementErrorFrontSide, PassportElementErrorReverseSide, PassportElementErrorSelfie, PassportElementErrorFile and PassportElementErrorFiles.
- New bot method: set_passport_data_errors
- New filter: Filters.passport_data
- Field passport_data field on Message
2018-08-29 15:21:02 +02:00
- PassportData can be easily decrypted.
- PassportFiles are automatically decrypted if originating from decrypted PassportData.
Bot API 4.0 (#1168)
Telegram Passport (#1174):
- Add full support for telegram passport.
- New types: PassportData, PassportFile, EncryptedPassportElement, EncryptedCredentials, PassportElementError, PassportElementErrorDataField, PassportElementErrorFrontSide, PassportElementErrorReverseSide, PassportElementErrorSelfie, PassportElementErrorFile and PassportElementErrorFiles.
- New bot method: set_passport_data_errors
- New filter: Filters.passport_data
- Field passport_data field on Message
- PassportData is automagically decrypted when you specify your private key when creating Updater or Bot.
- PassportFiles is also automagically decrypted as you download/retrieve them.
- See new passportbot.py example for details on how to use, or go to our telegram passport wiki page for more info
- NOTE: Passport decryption requires new dependency `cryptography`.
Inputfile rework (#1184):
- Change how Inputfile is handled internally
- This allows support for specifying the thumbnails of photos and videos using the thumb= argument in the different send_ methods.
- Also allows Bot.send_media_group to actually finally send more than one media.
- Add thumb to Audio, Video and Videonote
- Add Bot.edit_message_media together with InputMediaAnimation, InputMediaAudio, and inputMediaDocument.
Other Bot API 4.0 changes:
- Add forusquare_type to Venue, InlineQueryResultVenue, InputVenueMessageContent, and Bot.send_venue. (#1170)
- Add vCard support by adding vcard field to Contact, InlineQueryResultContact, InputContactMessageContent, and Bot.send_contact. (#1166)
- Support new message entities: CASHTAG and PHONE_NUMBER. (#1179)
- Cashtag seems to be things like $USD and $GBP, but it seems telegram doesn't currently send them to bots.
- Phone number also seems to have limited support for now
- Add Bot.send_animation, add width, height, and duration to Animation, and add Filters.animation. (#1172)
Co-authored-by: Jasmin Bom <jsmnbom@gmail.com>
Co-authored-by: code1mountain <32801117+code1mountain@users.noreply.github.com>
Co-authored-by: Eldinnie <pieter.schutz+github@gmail.com>
Co-authored-by: mathefreak1 <mathefreak@hi2.in>
2018-08-29 14:18:58 +02:00
- See new passportbot.py example for details on how to use, or go to `our telegram passport wiki page`_ for more info
- NOTE: Passport decryption requires new dependency `cryptography` .
Inputfile rework (`#1184`_ ):
- Change how Inputfile is handled internally
- This allows support for specifying the thumbnails of photos and videos using the thumb= argument in the different send\_ methods.
- Also allows Bot.send_media_group to actually finally send more than one media.
- Add thumb to Audio, Video and Videonote
- Add Bot.edit_message_media together with InputMediaAnimation, InputMediaAudio, and inputMediaDocument.
Other Bot API 4.0 changes:
- Add forusquare_type to Venue, InlineQueryResultVenue, InputVenueMessageContent, and Bot.send_venue. (`#1170`_ )
- Add vCard support by adding vcard field to Contact, InlineQueryResultContact, InputContactMessageContent, and Bot.send_contact. (`#1166`_ )
- Support new message entities: CASHTAG and PHONE_NUMBER. (`#1179`_ )
- Cashtag seems to be things like `$USD` and `$GBP` , but it seems telegram doesn't currently send them to bots.
- Phone number also seems to have limited support for now
- Add Bot.send_animation, add width, height, and duration to Animation, and add Filters.animation. (`#1172`_ )
2018-08-29 15:21:02 +02:00
Non Bot API 4.0 changes:
Bot API 4.0 (#1168)
Telegram Passport (#1174):
- Add full support for telegram passport.
- New types: PassportData, PassportFile, EncryptedPassportElement, EncryptedCredentials, PassportElementError, PassportElementErrorDataField, PassportElementErrorFrontSide, PassportElementErrorReverseSide, PassportElementErrorSelfie, PassportElementErrorFile and PassportElementErrorFiles.
- New bot method: set_passport_data_errors
- New filter: Filters.passport_data
- Field passport_data field on Message
- PassportData is automagically decrypted when you specify your private key when creating Updater or Bot.
- PassportFiles is also automagically decrypted as you download/retrieve them.
- See new passportbot.py example for details on how to use, or go to our telegram passport wiki page for more info
- NOTE: Passport decryption requires new dependency `cryptography`.
Inputfile rework (#1184):
- Change how Inputfile is handled internally
- This allows support for specifying the thumbnails of photos and videos using the thumb= argument in the different send_ methods.
- Also allows Bot.send_media_group to actually finally send more than one media.
- Add thumb to Audio, Video and Videonote
- Add Bot.edit_message_media together with InputMediaAnimation, InputMediaAudio, and inputMediaDocument.
Other Bot API 4.0 changes:
- Add forusquare_type to Venue, InlineQueryResultVenue, InputVenueMessageContent, and Bot.send_venue. (#1170)
- Add vCard support by adding vcard field to Contact, InlineQueryResultContact, InputContactMessageContent, and Bot.send_contact. (#1166)
- Support new message entities: CASHTAG and PHONE_NUMBER. (#1179)
- Cashtag seems to be things like $USD and $GBP, but it seems telegram doesn't currently send them to bots.
- Phone number also seems to have limited support for now
- Add Bot.send_animation, add width, height, and duration to Animation, and add Filters.animation. (#1172)
Co-authored-by: Jasmin Bom <jsmnbom@gmail.com>
Co-authored-by: code1mountain <32801117+code1mountain@users.noreply.github.com>
Co-authored-by: Eldinnie <pieter.schutz+github@gmail.com>
Co-authored-by: mathefreak1 <mathefreak@hi2.in>
2018-08-29 14:18:58 +02:00
2018-08-29 15:21:02 +02:00
- Minor integer comparison fix (`#1147`_ )
- Fix Filters.regex failing on non-text message (`#1158`_ )
- Fix ProcessLookupError if process finishes before we kill it (`#1126`_ )
- Add t.me links for User, Chat and Message if available and update User.mention_* (`#1092`_ )
- Fix mention_markdown/html on py2 (`#1112`_ )
.. _`#1092`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1092
.. _`#1112`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1112
.. _`#1126`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1126
.. _`#1147`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1147
.. _`#1158`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1158
Bot API 4.0 (#1168)
Telegram Passport (#1174):
- Add full support for telegram passport.
- New types: PassportData, PassportFile, EncryptedPassportElement, EncryptedCredentials, PassportElementError, PassportElementErrorDataField, PassportElementErrorFrontSide, PassportElementErrorReverseSide, PassportElementErrorSelfie, PassportElementErrorFile and PassportElementErrorFiles.
- New bot method: set_passport_data_errors
- New filter: Filters.passport_data
- Field passport_data field on Message
- PassportData is automagically decrypted when you specify your private key when creating Updater or Bot.
- PassportFiles is also automagically decrypted as you download/retrieve them.
- See new passportbot.py example for details on how to use, or go to our telegram passport wiki page for more info
- NOTE: Passport decryption requires new dependency `cryptography`.
Inputfile rework (#1184):
- Change how Inputfile is handled internally
- This allows support for specifying the thumbnails of photos and videos using the thumb= argument in the different send_ methods.
- Also allows Bot.send_media_group to actually finally send more than one media.
- Add thumb to Audio, Video and Videonote
- Add Bot.edit_message_media together with InputMediaAnimation, InputMediaAudio, and inputMediaDocument.
Other Bot API 4.0 changes:
- Add forusquare_type to Venue, InlineQueryResultVenue, InputVenueMessageContent, and Bot.send_venue. (#1170)
- Add vCard support by adding vcard field to Contact, InlineQueryResultContact, InputContactMessageContent, and Bot.send_contact. (#1166)
- Support new message entities: CASHTAG and PHONE_NUMBER. (#1179)
- Cashtag seems to be things like $USD and $GBP, but it seems telegram doesn't currently send them to bots.
- Phone number also seems to have limited support for now
- Add Bot.send_animation, add width, height, and duration to Animation, and add Filters.animation. (#1172)
Co-authored-by: Jasmin Bom <jsmnbom@gmail.com>
Co-authored-by: code1mountain <32801117+code1mountain@users.noreply.github.com>
Co-authored-by: Eldinnie <pieter.schutz+github@gmail.com>
Co-authored-by: mathefreak1 <mathefreak@hi2.in>
2018-08-29 14:18:58 +02:00
.. _`#1166`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1166
2018-08-29 15:21:02 +02:00
.. _`#1170`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1170
.. _`#1174`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1174
Bot API 4.0 (#1168)
Telegram Passport (#1174):
- Add full support for telegram passport.
- New types: PassportData, PassportFile, EncryptedPassportElement, EncryptedCredentials, PassportElementError, PassportElementErrorDataField, PassportElementErrorFrontSide, PassportElementErrorReverseSide, PassportElementErrorSelfie, PassportElementErrorFile and PassportElementErrorFiles.
- New bot method: set_passport_data_errors
- New filter: Filters.passport_data
- Field passport_data field on Message
- PassportData is automagically decrypted when you specify your private key when creating Updater or Bot.
- PassportFiles is also automagically decrypted as you download/retrieve them.
- See new passportbot.py example for details on how to use, or go to our telegram passport wiki page for more info
- NOTE: Passport decryption requires new dependency `cryptography`.
Inputfile rework (#1184):
- Change how Inputfile is handled internally
- This allows support for specifying the thumbnails of photos and videos using the thumb= argument in the different send_ methods.
- Also allows Bot.send_media_group to actually finally send more than one media.
- Add thumb to Audio, Video and Videonote
- Add Bot.edit_message_media together with InputMediaAnimation, InputMediaAudio, and inputMediaDocument.
Other Bot API 4.0 changes:
- Add forusquare_type to Venue, InlineQueryResultVenue, InputVenueMessageContent, and Bot.send_venue. (#1170)
- Add vCard support by adding vcard field to Contact, InlineQueryResultContact, InputContactMessageContent, and Bot.send_contact. (#1166)
- Support new message entities: CASHTAG and PHONE_NUMBER. (#1179)
- Cashtag seems to be things like $USD and $GBP, but it seems telegram doesn't currently send them to bots.
- Phone number also seems to have limited support for now
- Add Bot.send_animation, add width, height, and duration to Animation, and add Filters.animation. (#1172)
Co-authored-by: Jasmin Bom <jsmnbom@gmail.com>
Co-authored-by: code1mountain <32801117+code1mountain@users.noreply.github.com>
Co-authored-by: Eldinnie <pieter.schutz+github@gmail.com>
Co-authored-by: mathefreak1 <mathefreak@hi2.in>
2018-08-29 14:18:58 +02:00
.. _`#1172`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1172
2018-08-29 15:21:02 +02:00
.. _`#1179`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1179
.. _`#1184`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1184
Bot API 4.0 (#1168)
Telegram Passport (#1174):
- Add full support for telegram passport.
- New types: PassportData, PassportFile, EncryptedPassportElement, EncryptedCredentials, PassportElementError, PassportElementErrorDataField, PassportElementErrorFrontSide, PassportElementErrorReverseSide, PassportElementErrorSelfie, PassportElementErrorFile and PassportElementErrorFiles.
- New bot method: set_passport_data_errors
- New filter: Filters.passport_data
- Field passport_data field on Message
- PassportData is automagically decrypted when you specify your private key when creating Updater or Bot.
- PassportFiles is also automagically decrypted as you download/retrieve them.
- See new passportbot.py example for details on how to use, or go to our telegram passport wiki page for more info
- NOTE: Passport decryption requires new dependency `cryptography`.
Inputfile rework (#1184):
- Change how Inputfile is handled internally
- This allows support for specifying the thumbnails of photos and videos using the thumb= argument in the different send_ methods.
- Also allows Bot.send_media_group to actually finally send more than one media.
- Add thumb to Audio, Video and Videonote
- Add Bot.edit_message_media together with InputMediaAnimation, InputMediaAudio, and inputMediaDocument.
Other Bot API 4.0 changes:
- Add forusquare_type to Venue, InlineQueryResultVenue, InputVenueMessageContent, and Bot.send_venue. (#1170)
- Add vCard support by adding vcard field to Contact, InlineQueryResultContact, InputContactMessageContent, and Bot.send_contact. (#1166)
- Support new message entities: CASHTAG and PHONE_NUMBER. (#1179)
- Cashtag seems to be things like $USD and $GBP, but it seems telegram doesn't currently send them to bots.
- Phone number also seems to have limited support for now
- Add Bot.send_animation, add width, height, and duration to Animation, and add Filters.animation. (#1172)
Co-authored-by: Jasmin Bom <jsmnbom@gmail.com>
Co-authored-by: code1mountain <32801117+code1mountain@users.noreply.github.com>
Co-authored-by: Eldinnie <pieter.schutz+github@gmail.com>
Co-authored-by: mathefreak1 <mathefreak@hi2.in>
2018-08-29 14:18:58 +02:00
.. _`our telegram passport wiki page`: https://git.io/fAvYd
2019-02-18 20:04:52 +01:00
Version 10.1.0
==============
*Released 2018-05-02*
2018-05-04 23:37:13 +02:00
Fixes changing previous behaviour:
- Add urllib3 fix for socks5h support (`#1085`_ )
- Fix send_sticker() timeout=20 (`#1088`_ )
Fixes:
- Add a caption_entity filter for filtering caption entities (`#1068`_ )
- Inputfile encode filenames (`#1086`_ )
- InputFile: Fix proper naming of file when reading from subprocess.PIPE (`#1079`_ )
- Remove pytest-catchlog from requirements (`#1099`_ )
- Documentation fixes (`#1061`_ , `#1078`_ , `#1081`_ , `#1096`_ )
.. _`#1061`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1061
.. _`#1068`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1068
.. _`#1078`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1078
.. _`#1079`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1079
.. _`#1081`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1081
.. _`#1085`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1085
.. _`#1086`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1086
.. _`#1088`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1088
.. _`#1096`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1096
.. _`#1099`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1099
2019-02-18 20:04:52 +01:00
Version 10.0.2
==============
*Released 2018-04-17*
2018-04-17 09:07:19 +02:00
Important fix:
- Handle utf8 decoding errors (`#1076`_ )
New features:
- Added Filter.regex (`#1028`_ )
- Filters for Category and file types (`#1046`_ )
- Added video note filter (`#1067`_ )
Fixes:
- Fix in telegram.Message (`#1042`_ )
- Make chat_id a positional argument inside shortcut methods of Chat and User classes (`#1050`_ )
- Make Bot.full_name return a unicode object. (`#1063`_ )
- CommandHandler faster check (`#1074`_ )
- Correct documentation of Dispatcher.add_handler (`#1071`_ )
- Various small fixes to documentation.
.. _`#1028`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1028
.. _`#1042`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1042
.. _`#1046`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1046
.. _`#1050`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1050
.. _`#1067`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1067
.. _`#1063`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1063
.. _`#1074`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1074
.. _`#1076`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1076
.. _`#1071`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1071
2019-02-18 20:04:52 +01:00
Version 10.0.1
==============
*Released 2018-03-05*
2018-03-05 12:46:19 +01:00
Fixes:
2018-03-05 13:57:21 +01:00
2018-03-05 12:46:19 +01:00
- Fix conversationhandler timeout (PR `#1032`_ )
- Add missing docs utils (PR `#912`_ )
.. _`#1032`: https://github.com/python-telegram-bot/python-telegram-bot/pull/826
.. _`#912`: https://github.com/python-telegram-bot/python-telegram-bot/pull/826
2019-02-18 20:04:52 +01:00
Version 10.0.0
==============
*Released 2018-03-02*
2018-03-03 00:03:03 +01:00
Non backward compatabile changes and changed defaults
- JobQueue: Remove deprecated prevent_autostart & put() (PR `#1012`_ )
- Bot, Updater: Remove deprecated network_delay (PR `#1012`_ )
- Remove deprecated Message.new_chat_member (PR `#1012`_ )
- Retry bootstrap phase indefinitely (by default) on network errors (PR `#1018`_ )
New Features
- Support v3.6 API (PR `#1006`_ )
- User.full_name convinience property (PR `#949`_ )
- Add `send_phone_number_to_provider` and `send_email_to_provider` arguments to send_invoice (PR `#986`_ )
- Bot: Add shortcut methods reply_{markdown,html} (PR `#827`_ )
- Bot: Add shortcut method reply_media_group (PR `#994`_ )
- Added utils.helpers.effective_message_type (PR `#826`_ )
- Bot.get_file now allows passing a file in addition to file_id (PR `#963`_ )
- Add .get_file() to Audio, Document, PhotoSize, Sticker, Video, VideoNote and Voice (PR `#963`_ )
- Add .send_*() methods to User and Chat (PR `#963`_ )
- Get jobs by name (PR `#1011`_ )
- Add Message caption html/markdown methods (PR `#1013`_ )
- File.download_as_bytearray - new method to get a d/led file as bytearray (PR `#1019`_ )
- File.download(): Now returns a meaningful return value (PR `#1019`_ )
- Added conversation timeout in ConversationHandler (PR `#895`_ )
Changes
- Store bot in PreCheckoutQuery (PR `#953`_ )
- Updater: Issue INFO log upon received signal (PR `#951`_ )
- JobQueue: Thread safety fixes (PR `#977`_ )
- WebhookHandler: Fix exception thrown during error handling (PR `#985`_ )
- Explicitly check update.effective_chat in ConversationHandler.check_update (PR `#959`_ )
- Updater: Better handling of timeouts during get_updates (PR `#1007`_ )
- Remove unnecessary to_dict() (PR `#834`_ )
- CommandHandler - ignore strings in entities and "/" followed by whitespace (PR `#1020`_ )
- Documentation & style fixes (PR `#942`_ , PR `#956`_ , PR `#962`_ , PR `#980`_ , PR `#983`_ )
.. _`#826`: https://github.com/python-telegram-bot/python-telegram-bot/pull/826
.. _`#827`: https://github.com/python-telegram-bot/python-telegram-bot/pull/827
.. _`#834`: https://github.com/python-telegram-bot/python-telegram-bot/pull/834
.. _`#895`: https://github.com/python-telegram-bot/python-telegram-bot/pull/895
.. _`#942`: https://github.com/python-telegram-bot/python-telegram-bot/pull/942
.. _`#949`: https://github.com/python-telegram-bot/python-telegram-bot/pull/949
.. _`#951`: https://github.com/python-telegram-bot/python-telegram-bot/pull/951
.. _`#956`: https://github.com/python-telegram-bot/python-telegram-bot/pull/956
.. _`#953`: https://github.com/python-telegram-bot/python-telegram-bot/pull/953
.. _`#962`: https://github.com/python-telegram-bot/python-telegram-bot/pull/962
.. _`#959`: https://github.com/python-telegram-bot/python-telegram-bot/pull/959
.. _`#963`: https://github.com/python-telegram-bot/python-telegram-bot/pull/963
.. _`#977`: https://github.com/python-telegram-bot/python-telegram-bot/pull/977
.. _`#980`: https://github.com/python-telegram-bot/python-telegram-bot/pull/980
.. _`#983`: https://github.com/python-telegram-bot/python-telegram-bot/pull/983
.. _`#985`: https://github.com/python-telegram-bot/python-telegram-bot/pull/985
.. _`#986`: https://github.com/python-telegram-bot/python-telegram-bot/pull/986
.. _`#994`: https://github.com/python-telegram-bot/python-telegram-bot/pull/994
.. _`#1006`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1006
.. _`#1007`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1007
.. _`#1011`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1011
.. _`#1012`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1012
.. _`#1013`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1013
.. _`#1018`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1018
.. _`#1019`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1019
.. _`#1020`: https://github.com/python-telegram-bot/python-telegram-bot/pull/1020
2019-02-18 20:04:52 +01:00
Version 9.0.0
=============
*Released 2017-12-08*
2017-12-08 23:08:42 +01:00
Breaking changes (possibly)
- Drop support for python 3.3 (PR `#930`_ )
New Features
- Support Bot API 3.5 (PR `#920`_ )
Changes
- Fix race condition in dispatcher start/stop (`#887`_ )
- Log error trace if there is no error handler registered (`#694`_ )
- Update examples with consistent string formatting (`#870`_ )
- Various changes and improvements to the docs.
.. _`#920`: https://github.com/python-telegram-bot/python-telegram-bot/pull/920
.. _`#930`: https://github.com/python-telegram-bot/python-telegram-bot/pull/930
.. _`#887`: https://github.com/python-telegram-bot/python-telegram-bot/pull/887
.. _`#694`: https://github.com/python-telegram-bot/python-telegram-bot/pull/694
.. _`#870`: https://github.com/python-telegram-bot/python-telegram-bot/pull/870
2019-02-18 20:04:52 +01:00
Version 8.1.1
=============
*Released 2017-10-15*
2017-10-15 16:59:10 +02:00
- Fix Commandhandler crashing on single character messages (PR `#873`_ ).
.. _`#873`: https://github.com/python-telegram-bot/python-telegram-bot/pull/871
2019-02-18 20:04:52 +01:00
Version 8.1.0
=============
*Released 2017-10-14*
2017-10-14 23:04:35 +02:00
New features
- Support Bot API 3.4 (PR `#865`_ ).
Changes
2017-10-15 16:59:41 +02:00
- MessageHandler & RegexHandler now consider channel_updates.
2017-10-14 23:04:35 +02:00
- Fix command not recognized if it is directly followed by a newline (PR `#869`_ ).
- Removed Bot._message_wrapper (PR `#822`_ ).
2017-10-15 16:59:41 +02:00
- Unitests are now also running on AppVeyor (Windows VM).
- Various unitest improvements.
2017-10-14 23:04:35 +02:00
- Documentation fixes.
.. _`#822`: https://github.com/python-telegram-bot/python-telegram-bot/pull/822
.. _`#865`: https://github.com/python-telegram-bot/python-telegram-bot/pull/865
.. _`#869`: https://github.com/python-telegram-bot/python-telegram-bot/pull/869
2019-02-18 20:04:52 +01:00
Version 8.0.0
=============
*Released 2017-09-01*
2017-09-01 10:38:15 +02:00
New features
- Fully support Bot Api 3.3 (PR `#806`_ ).
- DispatcherHandlerStop (`see docs`_ ).
- Regression fix for text_html & text_markdown (PR `#777`_ ).
- Added effective_attachment to message (PR `#766`_ ).
Non backward compatible changes
- Removed Botan support from the library (PR `#776`_ ).
- Fully support Bot Api 3.3 (PR `#806`_ ).
- Remove de_json() (PR `#789`_ ).
Changes
- Sane defaults for tcp socket options on linux (PR `#754`_ ).
- Add RESTRICTED as constant to ChatMember (PR `#761`_ ).
- Add rich comparison to CallbackQuery (PR `#764`_ ).
- Fix get_game_high_scores (PR `#771`_ ).
- Warn on small con_pool_size during custom initalization of Updater (PR `#793`_ ).
- Catch exceptions in error handlerfor errors that happen during polling (PR `#810`_ ).
- For testing we switched to pytest (PR `#788`_ ).
2017-10-15 16:59:41 +02:00
- Lots of small improvements to our tests and documentation.
2017-09-01 10:38:15 +02:00
.. _`see docs`: http://python-telegram-bot.readthedocs.io/en/stable/telegram.ext.dispatcher.html#telegram.ext.Dispatcher.add_handler
.. _`#777`: https://github.com/python-telegram-bot/python-telegram-bot/pull/777
.. _`#806`: https://github.com/python-telegram-bot/python-telegram-bot/pull/806
.. _`#766`: https://github.com/python-telegram-bot/python-telegram-bot/pull/766
.. _`#776`: https://github.com/python-telegram-bot/python-telegram-bot/pull/776
.. _`#789`: https://github.com/python-telegram-bot/python-telegram-bot/pull/789
.. _`#754`: https://github.com/python-telegram-bot/python-telegram-bot/pull/754
.. _`#761`: https://github.com/python-telegram-bot/python-telegram-bot/pull/761
.. _`#764`: https://github.com/python-telegram-bot/python-telegram-bot/pull/764
.. _`#771`: https://github.com/python-telegram-bot/python-telegram-bot/pull/771
.. _`#788`: https://github.com/python-telegram-bot/python-telegram-bot/pull/788
.. _`#793`: https://github.com/python-telegram-bot/python-telegram-bot/pull/793
.. _`#810`: https://github.com/python-telegram-bot/python-telegram-bot/pull/810
2016-07-15 01:48:11 +02:00
2019-02-18 20:04:52 +01:00
Version 7.0.1
===============
*Released 2017-07-28*
2017-07-28 20:21:12 +02:00
- Fix TypeError exception in RegexHandler (PR #751).
- Small documentation fix (PR #749).
2019-02-18 20:04:52 +01:00
Version 7.0.0
=============
*Released 2017-07-25*
2017-07-25 22:07:26 +02:00
2017-07-25 21:33:28 +02:00
- Fully support Bot API 3.2.
2017-07-25 21:48:18 +02:00
- New filters for handling messages from specific chat/user id (PR #677).
2017-07-25 21:33:28 +02:00
- Add the possibility to add objects as arguments to send_* methods (PR #742).
- Fixed download of URLs with UTF-8 chars in path (PR #688).
- Fixed URL parsing for `` Message `` text properties (PR #689).
- Fixed args dispatching in `` MessageQueue `` 's decorator (PR #705).
2017-07-25 21:48:18 +02:00
- Fixed regression preventing IPv6 only hosts from connnecting to Telegram servers (Issue #720).
- ConvesationHandler - check if a user exist before using it (PR #699).
2017-07-25 21:33:28 +02:00
- Removed deprecated `` telegram.Emoji `` .
- Removed deprecated `` Botan `` import from `` utils `` (`` Botan `` is still available through `` contrib `` ).
- Removed deprecated `` ReplyKeyboardHide `` .
2017-07-25 21:48:18 +02:00
- Removed deprecated `` edit_message `` argument of `` bot.set_game_score `` .
2017-07-01 17:08:45 +02:00
- Internal restructure of files.
2017-07-25 21:33:28 +02:00
- Improved documentation.
2017-07-01 17:08:45 +02:00
- Improved unitests.
2019-02-18 20:04:52 +01:00
Pre-version 7.0
===============
2017-06-18 12:35:16 +02:00
**2017-06-18**
*Released 6.1.0*
- Fully support Bot API 3.0
- Add more fine-grained filters for status updates
- Bug fixes and other improvements
2017-05-29 21:24:12 +02:00
**2017-05-29**
2017-05-29 22:55:15 +02:00
*Released 6.0.3*
- Faulty PyPI release
**2017-05-29**
2017-05-29 21:24:12 +02:00
*Released 6.0.2*
- Avoid confusion with user's `` urllib3 `` by renaming vendored `` urllib3 `` to `` ptb_urllib3 ``
**2017-05-19**
2017-05-21 14:25:40 +02:00
*Released 6.0.1*
- Add support for `` User.language_code ``
- Fix `` Message.text_html `` and `` Message.text_markdown `` for messages with emoji
2017-05-19 21:49:01 +02:00
**2017-05-19**
*Released 6.0.0*
- Add support for Bot API 2.3.1
- Add support for `` deleteMessage `` API method
- New, simpler API for `` JobQueue `` - https://github.com/python-telegram-bot/python-telegram-bot/pull/484
- Download files into file-like objects - https://github.com/python-telegram-bot/python-telegram-bot/pull/459
- Use vendor `` urllib3 `` to address issues with timeouts
- The default timeout for messages is now 5 seconds. For sending media, the default timeout is now 20 seconds.
- String attributes that are not set are now `` None `` by default, instead of empty strings
- Add `` text_markdown `` and `` text_html `` properties to `` Message `` - https://github.com/python-telegram-bot/python-telegram-bot/pull/507
- Add support for Socks5 proxy - https://github.com/python-telegram-bot/python-telegram-bot/pull/518
- Add support for filters in `` CommandHandler `` - https://github.com/python-telegram-bot/python-telegram-bot/pull/536
- Add the ability to invert (not) filters - https://github.com/python-telegram-bot/python-telegram-bot/pull/552
- Add `` Filters.group `` and `` Filters.private ``
- Compatibility with GAE via `` urllib3.contrib `` package - https://github.com/python-telegram-bot/python-telegram-bot/pull/583
- Add equality rich comparision operators to telegram objects - https://github.com/python-telegram-bot/python-telegram-bot/pull/604
- Several bugfixes and other improvements
- Remove some deprecated code
2017-04-25 17:26:54 +02:00
**2017-04-17**
*Released 5.3.1*
- Hotfix release due to bug introduced by urllib3 version 1.21
2016-12-11 23:51:51 +01:00
**2016-12-11**
*Released 5.3*
- Implement API changes of November 21st (Bot API 2.3)
- `` JobQueue `` now supports `` datetime.timedelta `` in addition to seconds
- `` JobQueue `` now supports running jobs only on certain days
- New `` Filters.reply `` filter
- Bugfix for `` Message.edit_reply_markup ``
- Other bugfixes
2016-10-25 20:10:36 +02:00
**2016-10-25**
*Released 5.2*
- Implement API changes of October 3rd (games update)
- Add `` Message.edit_* `` methods
- Filters for the `` MessageHandler `` can now be combined using bitwise operators (`` & and | `` )
- Add a way to save user- and chat-related data temporarily
- Other bugfixes and improvements
2016-09-24 15:29:23 +02:00
**2016-09-24**
*Released 5.1*
- Drop Python 2.6 support
- Deprecate `` telegram.Emoji ``
- Use `` ujson `` if available
- Add instance methods to `` Message `` , `` Chat `` , `` User `` , `` InlineQuery `` and `` CallbackQuery ``
- RegEx filtering for `` CallbackQueryHandler `` and `` InlineQueryHandler ``
- New `` MessageHandler `` filters: `` forwarded `` and `` entity ``
- Add `` Message.get_entity `` to correctly handle UTF-16 codepoints and `` MessageEntity `` offsets
- Fix bug in `` ConversationHandler `` when first handler ends the conversation
- Allow multiple `` Dispatcher `` instances
- Add `` ChatMigrated `` Exception
- Properly split and handle arguments in `` CommandHandler ``
2016-07-15 01:48:11 +02:00
**2016-07-15**
*Released 5.0*
- Rework `` JobQueue ``
- Introduce `` ConversationHandler ``
2017-06-01 11:33:36 +02:00
- Introduce `` telegram.constants `` - https://github.com/python-telegram-bot/python-telegram-bot/pull/342
2016-07-15 01:48:11 +02:00
2016-07-12 22:34:49 +02:00
**2016-07-12**
*Released 4.3.4*
- Fix proxy support with `` urllib3 `` when proxy requires auth
2016-07-08 22:13:46 +02:00
**2016-07-08**
*Released 4.3.3*
- Fix proxy support with `` urllib3 ``
2016-07-04 21:52:00 +02:00
**2016-07-04**
*Released 4.3.2*
- Fix: Use `` timeout `` parameter in all API methods
2016-06-29 15:53:52 +02:00
**2016-06-29**
*Released 4.3.1*
- Update wrong requirement: `` urllib3>=1.10 ``
2016-06-28 13:35:42 +02:00
**2016-06-28**
*Released 4.3*
- Use `` urllib3.PoolManager `` for connection re-use
- Rewrite `` run_async `` decorator to re-use threads
- New requirements: `` urllib3 `` and `` certifi ``
2016-06-10 15:44:17 +02:00
**2016-06-10**
*Released 4.2.1*
- Fix `` CallbackQuery.to_dict() `` bug (thanks to @jlmadurga)
- Fix `` editMessageText `` exception when receiving a `` CallbackQuery ``
2016-05-28 22:49:15 +02:00
**2016-05-28**
*Released 4.2*
- Implement Bot API 2.1
- Move `` botan `` module to `` telegram.contrib ``
- New exception type: `` BadRequest ``
2016-05-22 13:01:14 +02:00
**2016-05-22**
*Released 4.1.2*
- Fix `` MessageEntity `` decoding with Bot API 2.1 changes
2016-05-16 16:05:02 +02:00
**2016-05-16**
*Released 4.1.1*
- Fix deprecation warning in `` Dispatcher ``
2016-05-16 01:24:09 +02:00
**2016-05-15**
*Released 4.1*
- Implement API changes from May 6, 2016
- Fix bug when `` start_polling `` with `` clean=True ``
- Methods now have snake_case equivalent, for example `` telegram.Bot.send_message `` is the same as `` telegram.Bot.sendMessage ``
2016-05-01 22:13:24 +02:00
**2016-05-01**
*Released 4.0.3*
- Add missing attribute `` location `` to `` InlineQuery ``
2016-04-29 19:26:46 +02:00
**2016-04-29**
*Released 4.0.2*
- Bugfixes
2016-04-29 19:31:39 +02:00
- `` KeyboardReplyMarkup `` now accepts `` str `` again
2016-04-29 19:26:46 +02:00
2016-04-27 01:02:57 +02:00
**2016-04-27**
2016-04-27 01:17:47 +02:00
*Released 4.0.1*
2016-04-27 01:02:57 +02:00
- Implement Bot API 2.0
- Almost complete recode of `` Dispatcher ``
2016-05-29 11:37:35 +02:00
- Please read the `Transition Guide to 4.0 <https://github.com/python-telegram-bot/python-telegram-bot/wiki/Transition-guide-to-Version-4.0> `_
2016-04-27 01:02:57 +02:00
- **Changes from 4.0rc1**
- The syntax of filters for `` MessageHandler `` (upper/lower cases)
- Handler groups are now identified by `` int `` only, and ordered
2016-04-27 01:17:47 +02:00
- **Note:** v4.0 has been skipped due to a PyPI accident
2016-04-27 01:02:57 +02:00
2016-04-22 16:27:49 +02:00
**2016-04-22**
*Released 4.0rc1*
- Implement Bot API 2.0
- Almost complete recode of `` Dispatcher ``
- Please read the `Transistion Guide to 4.0 <https://github.com/python-telegram-bot/python-telegram-bot/wiki/Transistion-guide-to-Version-4.0> `_
2016-03-22 03:02:13 +01:00
**2016-03-22**
*Released 3.4*
- Move `` Updater `` , `` Dispatcher `` and `` JobQueue `` to new `` telegram.ext `` submodule (thanks to @rahiel)
- Add `` disable_notification `` parameter (thanks to @aidarbiktimirov)
- Fix bug where commands sent by Telegram Web would not be recognized (thanks to @shelomentsevd)
- Add option to skip old updates on bot startup
- Send files from `` BufferedReader ``
2016-02-28 02:33:49 +01:00
**2016-02-28**
*Released 3.3*
- Inline bots
- Send any file by URL
- Specialized exceptions: `` Unauthorized `` , `` InvalidToken `` , `` NetworkError `` and `` TimedOut ``
- Integration for botan.io (thanks to @ollmer)
- HTML Parsemode (thanks to @jlmadurga)
- Bugfixes and under-the-hood improvements
**Very special thanks to Noam Meltzer (@tsnoam) for all of his work!**
2016-01-09 15:50:19 +01:00
**2016-01-09**
*Released 3.3b1*
- Implement inline bots (beta)
2016-01-05 14:12:03 +01:00
**2016-01-05**
*Released 3.2.0*
- Introducing `` JobQueue `` (original author: @franciscod)
- Streamlining all exceptions to `` TelegramError `` (Special thanks to @tsnoam)
- Proper locking of `` Updater `` and `` Dispatcher `` `` start `` and `` stop `` methods
- Small bugfixes
2015-12-29 14:46:00 +01:00
**2015-12-29**
*Released 3.1.2*
- Fix custom path for file downloads
- Don't stop the dispatcher thread on uncaught errors in handlers
2015-12-21 21:18:53 +01:00
**2015-12-21**
*Released 3.1.1*
- Fix a bug where asynchronous handlers could not have additional arguments
- Add `` groups `` and `` groupdict `` as additional arguments for regex-based handlers
2015-12-16 16:25:14 +01:00
**2015-12-16**
*Released 3.1.0*
- The `` chat `` -field in `` Message `` is now of type `` Chat `` . (API update Oct 8 2015)
- `` Message `` now contains the optional fields `` supergroup_chat_created `` , `` migrate_to_chat_id `` , `` migrate_from_chat_id `` and `` channel_chat_created `` . (API update Nov 2015)
2015-12-08 00:07:21 +01:00
**2015-12-08**
*Released 3.0.0*
- Introducing the `` Updater `` and `` Dispatcher `` classes
2015-11-11 14:31:20 +01:00
**2015-11-11**
*Released 2.9.2*
- Error handling on request timeouts has been improved
2015-11-10 20:10:44 +01:00
**2015-11-10**
2015-11-10 15:21:04 +01:00
2015-11-10 20:10:44 +01:00
*Released 2.9.1*
2015-11-10 15:21:04 +01:00
2015-11-10 20:10:44 +01:00
- Add parameter `` network_delay `` to Bot.getUpdates for slow connections
2015-10-08 16:31:48 +02:00
2015-11-10 20:10:44 +01:00
**2015-11-10**
2015-10-08 16:31:48 +02:00
2015-11-10 20:10:44 +01:00
*Released 2.9*
2015-10-08 15:23:12 +02:00
2015-11-10 20:10:44 +01:00
- Emoji class now uses `` bytes_to_native_str `` from `` future `` 3rd party lib
- Make `` user_from `` optional to work with channels
- Raise exception if Telegram times out on long-polling
2015-10-08 15:23:12 +02:00
2015-11-10 20:10:44 +01:00
*Special thanks to @jh0ker for all hard work*
2015-09-24 14:29:23 +02:00
2015-11-10 20:10:44 +01:00
**2015-10-08**
2015-09-20 17:52:40 +02:00
2015-11-10 20:10:44 +01:00
*Released 2.8.7*
2015-09-20 17:52:40 +02:00
2015-11-10 20:10:44 +01:00
- Type as optional for `` GroupChat `` class
2015-09-20 17:43:32 +02:00
2015-11-10 20:10:44 +01:00
**2015-10-08**
2015-09-20 17:43:32 +02:00
2015-11-10 20:10:44 +01:00
*Released 2.8.6*
2015-09-20 17:43:32 +02:00
2015-11-10 20:10:44 +01:00
- Adds type to `` User `` and `` GroupChat `` classes (pre-release Telegram feature)
2015-09-05 00:00:54 +02:00
2015-11-10 20:10:44 +01:00
**2015-09-24**
2015-09-04 23:19:05 +02:00
2015-11-10 20:10:44 +01:00
*Released 2.8.5*
2015-09-04 23:19:05 +02:00
2015-11-10 20:10:44 +01:00
- Handles HTTP Bad Gateway (503) errors on request
2015-11-10 21:32:54 +01:00
- Fixes regression on `` Audio `` and `` Document `` for unicode fields
2015-08-19 21:16:06 +02:00
2015-11-10 20:10:44 +01:00
**2015-09-20**
2015-08-17 18:15:29 +02:00
2015-11-10 20:10:44 +01:00
*Released 2.8.4*
2015-08-17 18:15:29 +02:00
2015-11-10 21:32:54 +01:00
- `` getFile `` and `` File.download `` is now fully supported
2015-08-15 20:06:32 +02:00
2015-11-10 20:10:44 +01:00
**2015-09-10**
2015-08-14 21:36:39 +02:00
2015-11-10 20:10:44 +01:00
*Released 2.8.3*
2015-08-14 21:36:39 +02:00
2015-11-10 21:32:54 +01:00
- Moved `` Bot._requestURL `` to its own class (`` telegram.utils.request `` )
2015-11-10 20:10:44 +01:00
- Much better, such wow, Telegram Objects tests
2015-11-10 21:32:54 +01:00
- Add consistency for `` str `` properties on Telegram Objects
- Better design to test if `` chat_id `` is invalid
- Add ability to set custom filename on `` Bot.sendDocument(..,filename='') ``
- Fix Sticker as `` InputFile ``
2015-11-10 20:10:44 +01:00
- Send JSON requests over urlencoded post data
2015-11-10 21:32:54 +01:00
- Markdown support for `` Bot.sendMessage(..., parse_mode=ParseMode.MARKDOWN) ``
- Refactor of `` TelegramError `` class (no more handling `` IOError `` or `` URLError `` )
2015-08-12 04:49:26 +02:00
2015-11-10 20:10:44 +01:00
**2015-09-05**
2015-08-11 22:37:28 +02:00
2015-11-10 20:10:44 +01:00
*Released 2.8.2*
2015-08-11 22:37:28 +02:00
2015-11-10 20:10:44 +01:00
- Fix regression on Telegram ReplyMarkup
2015-11-10 21:32:54 +01:00
- Add certificate to `` is_inputfile `` method
2015-08-10 19:48:24 +02:00
2015-11-10 20:10:44 +01:00
**2015-09-05**
2015-08-09 15:17:32 +02:00
2015-11-10 20:10:44 +01:00
*Released 2.8.1*
2015-08-09 15:17:32 +02:00
2015-11-10 20:10:44 +01:00
- Fix regression on Telegram objects with thumb properties
2015-08-09 00:37:14 +02:00
2015-11-10 20:10:44 +01:00
**2015-09-04**
2015-08-09 00:18:58 +02:00
2015-11-10 20:10:44 +01:00
*Released 2.8*
2015-08-09 00:18:58 +02:00
2015-11-10 21:32:54 +01:00
- TelegramError when `` chat_id `` is empty for send* methods
- `` setWebhook `` now supports sending self-signed certificate
2015-11-10 20:10:44 +01:00
- Huge redesign of existing Telegram classes
- Added support for PyPy
- Added docstring for existing classes
2015-07-25 23:31:01 +02:00
2015-08-09 00:18:58 +02:00
2015-11-10 20:10:44 +01:00
**2015-08-19**
2015-07-20 13:03:47 +02:00
2015-11-10 20:10:44 +01:00
*Released 2.7.1*
2015-07-20 13:03:47 +02:00
2015-11-10 21:32:54 +01:00
- Fixed JSON serialization for `` message ``
2015-07-20 04:40:12 +02:00
2015-11-10 20:10:44 +01:00
**2015-08-17**
2015-07-15 16:48:33 +02:00
2015-11-10 20:10:44 +01:00
*Released 2.7*
2015-07-15 16:48:33 +02:00
2015-11-10 21:32:54 +01:00
- Added support for `` Voice `` object and `` sendVoice `` method
- Due backward compatibility performer or/and title will be required for `` sendAudio ``
2015-11-10 20:10:44 +01:00
- Fixed JSON serialization when forwarded message
2015-07-12 15:35:37 +02:00
2015-07-15 16:48:33 +02:00
2015-11-10 20:10:44 +01:00
**2015-08-15**
2015-07-11 15:02:29 +02:00
2015-11-10 20:10:44 +01:00
*Released 2.6.1*
2015-07-15 16:48:33 +02:00
2015-11-10 20:10:44 +01:00
- Fixed parsing image header issue on < Python 2.7.3
2015-07-11 03:41:34 +02:00
2015-07-15 16:48:33 +02:00
2015-11-10 20:10:44 +01:00
**2015-08-14**
2015-07-10 21:52:03 +02:00
2015-11-10 20:10:44 +01:00
*Released 2.6.0*
2015-07-15 16:48:33 +02:00
2015-11-10 21:32:54 +01:00
- Depreciation of `` require_authentication `` and `` clearCredentials `` methods
- Giving `` AUTHORS `` the proper credits for their contribution for this project
- `` Message.date `` and `` Message.forward_date `` are now `` datetime `` objects
2015-07-10 18:52:36 +02:00
2015-07-15 16:48:33 +02:00
2015-11-10 20:10:44 +01:00
**2015-08-12**
2015-07-10 14:24:44 +02:00
2015-11-10 20:10:44 +01:00
*Released 2.5.3*
2015-07-15 16:48:33 +02:00
2015-11-10 21:32:54 +01:00
- `` telegram.Bot `` now supports to be unpickled
2015-07-09 14:53:11 +02:00
2015-11-10 20:10:44 +01:00
**2015-08-11**
2015-07-08 23:33:28 +02:00
2015-11-10 20:10:44 +01:00
*Released 2.5.2*
2015-07-08 23:33:28 +02:00
2015-11-10 20:10:44 +01:00
- New changes from Telegram Bot API have been applied
2015-11-10 21:32:54 +01:00
- `` telegram.Bot `` now supports to be pickled
- Return empty `` str `` instead `` None `` when `` message.text `` is empty
2015-11-10 20:10:44 +01:00
**2015-08-10**
*Released 2.5.1*
- Moved from GPLv2 to LGPLv3
**2015-08-09**
*Released 2.5*
- Fixes logging calls in API
**2015-08-08**
*Released 2.4*
2015-11-10 21:32:54 +01:00
- Fixes `` Emoji `` class for Python 3
- `` PEP8 `` improvements
2015-11-10 20:10:44 +01:00
**2015-08-08**
*Released 2.3*
2015-11-10 21:32:54 +01:00
- Fixes `` ForceReply `` class
- Remove `` logging.basicConfig `` from library
2015-11-10 20:10:44 +01:00
**2015-07-25**
*Released 2.2*
2015-11-10 21:32:54 +01:00
- Allows `` debug=True `` when initializing `` telegram.Bot ``
2015-11-10 20:10:44 +01:00
**2015-07-20**
*Released 2.1*
2015-11-10 21:32:54 +01:00
- Fix `` to_dict `` for `` Document `` and `` Video ``
2015-11-10 20:10:44 +01:00
**2015-07-19**
*Released 2.0*
- Fixes bugs
2015-11-10 21:32:54 +01:00
- Improves `` __str__ `` over `` to_json() ``
- Creates abstract class `` TelegramObject ``
2015-11-10 20:10:44 +01:00
**2015-07-15**
*Released 1.9*
- Python 3 officially supported
2015-11-10 21:32:54 +01:00
- `` PEP8 `` improvements
2015-11-10 20:10:44 +01:00
**2015-07-12**
*Released 1.8*
- Fixes crash when replying an unicode text message (special thanks to JRoot3D)
**2015-07-11**
*Released 1.7*
2015-11-10 21:32:54 +01:00
- Fixes crash when `` username `` is not defined on `` chat `` (special thanks to JRoot3D)
2015-11-10 20:10:44 +01:00
**2015-07-10**
*Released 1.6*
- Improvements for GAE support
**2015-07-10**
*Released 1.5*
2015-11-10 21:32:54 +01:00
- Fixes randomly unicode issues when using `` InputFile ``
2015-11-10 20:10:44 +01:00
**2015-07-10**
*Released 1.4*
2015-11-10 21:32:54 +01:00
- `` requests `` lib is no longer required
2015-11-10 20:10:44 +01:00
- Google App Engine (GAE) is supported
**2015-07-10**
*Released 1.3*
2015-11-10 21:32:54 +01:00
- Added support to `` setWebhook `` (special thanks to macrojames)
2015-11-10 20:10:44 +01:00
**2015-07-09**
*Released 1.2*
2015-11-10 21:32:54 +01:00
- `` CustomKeyboard `` classes now available
2015-11-10 20:10:44 +01:00
- Emojis available
2015-11-10 21:32:54 +01:00
- `` PEP8 `` improvements
2015-11-10 20:10:44 +01:00
**2015-07-08**
*Released 1.1*
- PyPi package now available
**2015-07-08**
*Released 1.0*
- Initial checkin of python-telegram-bot