Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update python-telegram-bot to 21.7 #68

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

pyup-bot
Copy link
Collaborator

@pyup-bot pyup-bot commented Nov 4, 2024

This PR updates python-telegram-bot from 13.9 to 21.7.

Changelog

21.7

============
*Released 2024-11-04*

This is the technical changelog for version 21.7. More elaborate release notes can be found in the news channel `pythontelegrambotchannel <https://t.me/pythontelegrambotchannel>`_.

Major Changes
-------------

- Full Support for Bot API 7.11 (:pr:`4546` closes :issue:`4543`)
- Add ``Message.reply_paid_media`` (:pr:`4551`)
- Drop Support for Python 3.8 (:pr:`4398` by `elpekenin <https://github.com/elpekenin>`_)

Minor Changes
-------------

- Allow ``Sequence`` in ``Application.add_handlers`` (:pr:`4531` by `roast-lord <https://github.com/roast-lord>`_ closes :issue:`4530`)
- Improve Exception Handling in ``File.download_*`` (:pr:`4542`)
- Use Stable Python 3.13 Release in Test Suite (:pr:`4535`)

Documentation Improvements
--------------------------

- Documentation Improvements (:pr:`4536` by `Ecode2 <https://github.com/Ecode2>`_, :pr:`4556`)
- Fix Linkcheck Workflow (:pr:`4545`)
- Use ``sphinx-build-compatibility`` to Keep Sphinx Compatibility (:pr:`4492`)

Internal Changes
----------------

- Improve Test Instability Caused by ``Message`` Fixtures (:pr:`4507`)
- Stabilize Some Flaky Tests (:pr:`4500`)
- Reduce Creation of HTTP Clients in Tests (:pr:`4493`)
- Update ``pytest-xdist`` Usage (:pr:`4491`)
- Fix Failing Tests by Making Them Independent (:pr:`4494`)
- Introduce Codecov's Test Analysis (:pr:`4487`)
- Maintenance Work on ``Bot`` Tests (:pr:`4489`)
- Introduce ``conftest.py`` for File Related Tests (:pr:`4488`)
- Update Issue Templates to Use Issue Types (:pr:`4553`)
- Update Automation to Label Changes (:pr:`4552`)

Dependency Updates
------------------

- Bump ``srvaroa/labeler`` from 1.11.0 to 1.11.1 (:pr:`4549`)
- Bump ``sphinx`` from 8.0.2 to 8.1.3 (:pr:`4532`)
- Bump ``sphinxcontrib-mermaid`` from 0.9.2 to 1.0.0 (:pr:`4529`)
- Bump ``srvaroa/labeler`` from 1.10.1 to 1.11.0 (:pr:`4509`)
- Bump ``Bibo-Joshi/pyright-type-completeness`` from 1.0.0 to 1.0.1 (:pr:`4510`)

21.6

============

*Released 2024-09-19*

This is the technical changelog for version 21.6. More elaborate release notes can be found in the news channel `pythontelegrambotchannel <https://t.me/pythontelegrambotchannel>`_.

New Features
------------

- Full Support for Bot API 7.10 (:pr:`4461` closes :issue:`4459`, :pr:`4460`, :pr:`4463` by `aelkheir <https://github.com/aelkheir>`_, :pr:`4464`)
- Add Parameter ``httpx_kwargs`` to ``HTTPXRequest`` (:pr:`4451` closes :issue:`4424`)

Minor Changes
-------------

- Improve Type Completeness (:pr:`4466`)

Internal Changes
----------------

- Update Python 3.13 Test Suite to RC2 (:pr:`4471`)
- Enforce the ``offline_bot`` Fixture in ``Test*WithoutRequest`` (:pr:`4465`)
- Make Tests for ``telegram.ext`` Independent of Networking (:pr:`4454`)
- Rename Testing Base Classes (:pr:`4453`)

Dependency Updates
------------------

- Bump ``pytest`` from 8.3.2 to 8.3.3 (:pr:`4475`)

21.5

============

*Released 2024-09-01*

This is the technical changelog for version 21.5. More elaborate release notes can be found in the news channel `pythontelegrambotchannel <https://t.me/pythontelegrambotchannel>`_.

Major Changes
-------------

- Full Support for Bot API 7.9 (:pr:`4429`)
- Full Support for Bot API 7.8 (:pr:`4408`)

New Features
------------

- Add ``MessageEntity.shift_entities`` and ``MessageEntity.concatenate`` (:pr:`4376` closes :issue:`4372`)
- Add Parameter ``game_pattern`` to ``CallbackQueryHandler`` (:pr:`4353` by `jainamoswal <https://github.com/jainamoswal>`_ closes :issue:`4269`)
- Add Parameter ``read_file_handle`` to ``InputFile`` (:pr:`4388` closes :issue:`4339`)

Documentation Improvements
--------------------------

- Bugfix for "Available In" Admonitions (:pr:`4413`)
- Documentation Improvements (:pr:`4400` closes :issue:`4446`, :pr:`4448` by `Palaptin <https://github.com/Palaptin>`_)
- Document Return Types of ``RequestData`` Members (:pr:`4396`)
- Add Introductory Paragraphs to Telegram Types Subsections (:pr:`4389` by `mohdyusuf2312 <https://github.com/mohdyusuf2312>`_ closes :issue:`4380`)
- Start Adapting to RTD Addons (:pr:`4386`)

Minor and Internal Changes
---------------------------

- Remove Surplus Logging from ``Updater`` Network Loop (:pr:`4432` by `MartinHjelmare <https://github.com/MartinHjelmare>`_)
- Add Internal Constants for Encodings (:pr:`4378` by `elpekenin <https://github.com/elpekenin>`_)
- Improve PyPI Automation (:pr:`4375` closes :issue:`4373`)
- Update Test Suite to New Test Channel Setup (:pr:`4435`)
- Improve Fixture Usage in ``test_message.py`` (:pr:`4431` by `Palaptin <https://github.com/Palaptin>`_)
- Update Python 3.13 Test Suite to RC1 (:pr:`4415`)
- Bump ``ruff`` and Add New Rules (:pr:`4416`)

Dependency Updates
------------------

- Update ``cachetools`` requirement from <5.5.0,>=5.3.3 to >=5.3.3,<5.6.0 (:pr:`4437`)
- Bump ``sphinx`` from 7.4.7 to 8.0.2 and ``furo`` from 2024.7.18 to 2024.8.6 (:pr:`4412`)
- Bump ``test-summary/action`` from 2.3 to 2.4 (:pr:`4410`)
- Bump ``pytest`` from 8.2.2 to 8.3.2 (:pr:`4403`)
- Bump ``dependabot/fetch-metadata`` from 2.1.0 to 2.2.0 (:pr:`4411`)
- Update ``cachetools`` requirement from ~=5.3.3 to >=5.3.3,<5.5.0 (:pr:`4390`)
- Bump ``sphinx`` from 7.3.7 to 7.4.7 (:pr:`4395`)
- Bump ``furo`` from 2024.5.6 to 2024.7.18 (:pr:`4392`)

21.4

============

*Released 2024-07-12*

This is the technical changelog for version 21.4. More elaborate release notes can be found in the news channel `pythontelegrambotchannel <https://t.me/pythontelegrambotchannel>`_.

Major Changes
-------------

- Full Support for Bot API 7.5 (:pr:`4328`, :pr:`4316`, :pr:`4315`, :pr:`4312` closes :issue:`4310`, :pr:`4311`)
- Full Support for Bot API 7.6 (:pr:`4333` closes :issue:`4331`, :pr:`4344`, :pr:`4341`, :pr:`4334`, :pr:`4335`, :pr:`4351`, :pr:`4342`, :pr:`4348`)
- Full Support for Bot API 7.7 (:pr:`4356` closes :issue:`4355`)
- Drop ``python-telegram-bot-raw`` And Switch to ``pyproject.toml`` Based Packaging (:pr:`4288` closes :issue:`4129` and :issue:`4296`)
- Deprecate Inclusion of ``successful_payment`` in ``Message.effective_attachment`` (:pr:`4365` closes :issue:`4350`)

New Features
------------

- Add Support for Python 3.13 Beta (:pr:`4253`)
- Add ``filters.PAID_MEDIA`` (:pr:`4357`)
- Log Received Data on Deserialization Errors (:pr:`4304`)
- Add ``MessageEntity.adjust_message_entities_to_utf_16`` Utility Function (:pr:`4323` by `Antares0982 <https://github.com/Antares0982>`_ closes :issue:`4319`)
- Make Argument ``bot`` of ``TelegramObject.de_json`` Optional (:pr:`4320`)

Documentation Improvements
--------------------------

- Documentation Improvements (:pr:`4303` closes :issue:`4301`)
- Restructure Readme (:pr:`4362`)
- Fix Link-Check Workflow (:pr:`4332`)

Internal Changes
----------------

- Automate PyPI Releases (:pr:`4364` closes :issue:`4318`)
- Add ``mise-en-place`` to ``.gitignore`` (:pr:`4300`)
- Use a Composite Action for Testing Type Completeness (:pr:`4367`)
- Stabilize Some Concurrency Usages in Test Suite (:pr:`4360`)
- Add a Test Case for ``MenuButton`` (:pr:`4363`)
- Extend ``SuccessfulPayment`` Test (:pr:`4349`)
- Small Fixes for ``test_stars.py`` (:pr:`4347`)
- Use Python 3.13 Beta 3 in Test Suite (:pr:`4336`)

Dependency Updates
------------------

- Bump ``ruff`` and Add New Rules (:pr:`4329`)
- Bump ``pre-commit`` Hooks to Latest Versions (:pr:`4337`)
- Add Lower Bound for ``flaky`` Dependency (:pr:`4322` by `Palaptin <https://github.com/Palaptin>`_)
- Bump ``pytest`` from 8.2.1 to 8.2.2 (:pr:`4294`)

21.3

============
*Released 2024-06-07*

This is the technical changelog for version 21.3. More elaborate release notes can be found in the news channel `pythontelegrambotchannel <https://t.me/pythontelegrambotchannel>`_.

Major Changes
-------------

- Full Support for Bot API 7.4 (:pr:`4286`, :pr:`4276` closes :issue:`4275`, :pr:`4285`, :pr:`4283`, :pr:`4280`, :pr:`4278`, :pr:`4279`)
- Deprecate ``python-telegram-bot-raw`` (:pr:`4270`)
- Remove Functionality Deprecated in Bot API 7.3 (:pr:`4266` closes :issue:`4244`)

New Features
------------

- Add Parameter ``chat_id`` to ``ChatMemberHandler`` (:pr:`4290` by `uniquetrij <https://github.com/uniquetrij>`_ closes :issue:`4287`)

Documentation Improvements
--------------------------

- Documentation Improvements (:pr:`4264` closes :issue:`4240`)

Internal Changes
----------------

- Add ``setuptools`` to ``requirements-dev.txt`` (:pr:`4282`)
- Update Settings for pre-commit.ci (:pr:`4265`)

Dependency Updates
------------------

- Bump ``pytest`` from 8.2.0 to 8.2.1 (:pr:`4272`)

21.2

============

*Released 2024-05-20*

This is the technical changelog for version 21.2. More elaborate release notes can be found in the news channel `pythontelegrambotchannel <https://t.me/pythontelegrambotchannel>`_.

Major Changes
-------------

- Full Support for Bot API 7.3 (:pr:`4246`, :pr:`4260`, :pr:`4243`, :pr:`4248`, :pr:`4242` closes :issue:`4236`, :pr:`4247` by `aelkheir <https://github.com/aelkheir>`_)
- Remove Functionality Deprecated by Bot API 7.2 (:pr:`4245`)

New Features
------------

- Add Version to ``PTBDeprecationWarning`` (:pr:`4262` closes :issue:`4261`)
- Handle Exceptions in building ``CallbackContext`` (:pr:`4222`)

Bug Fixes
---------

- Call ``Application.post_stop`` Only if ``Application.stop`` was called (:pr:`4211` closes :issue:`4210`)
- Handle ``SystemExit`` raised in Handlers (:pr:`4157` closes :issue:`4155` and :issue:`4156`)
- Make ``Birthdate.to_date`` Return a ``datetime.date`` Object (:pr:`4251`)

Documentation Improvements
--------------------------

- Documentation Improvements (:pr:`4217`)

Internal Changes
----------------

- Add New Rules to ``ruff`` Config (:pr:`4250`)
- Adapt Test Suite to Changes in Error Messages (:pr:`4238`)

Dependency Updates
------------------

- Bump ``furo`` from 2024.4.27 to 2024.5.6 (:pr:`4252`)
- ``pre-commit`` autoupdate (:pr:`4239`)
- Bump ``pytest`` from 8.1.1 to 8.2.0 (:pr:`4231`)
- Bump ``dependabot/fetch-metadata`` from 2.0.0 to 2.1.0 (:pr:`4228`)
- Bump ``pytest-asyncio`` from 0.21.1 to 0.21.2 (:pr:`4232`)
- Bump ``pytest-xdist`` from 3.6.0 to 3.6.1 (:pr:`4233`)
- Bump ``furo`` from 2024.1.29 to 2024.4.27 (:pr:`4230`)
- Bump ``srvaroa/labeler`` from 1.10.0 to 1.10.1 (:pr:`4227`)
- Bump ``pytest`` from 7.4.4 to 8.1.1 (:pr:`4218`)
- Bump ``sphinx`` from 7.2.6 to 7.3.7 (:pr:`4215`)
- Bump ``pytest-xdist`` from 3.5.0 to 3.6.0 (:pr:`4215`)

21.1.1

==============

*Released 2024-04-15*

This is the technical changelog for version 21.1.1. More elaborate release notes can be found in the news channel `pythontelegrambotchannel <https://t.me/pythontelegrambotchannel>`__.

Bug Fixes
---------

-  Fix Bug With Parameter ``message_thread_id`` of ``Message.reply_*`` (:pr:`4207` closes :issue:`4205`)

Minor Changes
-------------

-  Remove Deprecation Warning in ``JobQueue.run_daily`` (:pr:`4206` by `Konano <https://github.com/Konano>`__)
-  Fix Annotation of ``EncryptedCredentials.decrypted_secret`` (:pr:`4199` by `marinelay <https://github.com/marinelay>`__ closes :issue:`4198`)

21.1

==============

*Released 2024-04-12*

This is the technical changelog for version 21.1. More elaborate release notes can be found in the news channel `pythontelegrambotchannel <https://t.me/pythontelegrambotchannel>`__.

Major Changes
-------------

-  API 7.2 (:pr:`4180` closes :issue:`4179` and :issue:`4181`, :issue:`4181`)
-  Make ``ChatAdministratorRights/ChatMemberAdministrator.can_*_stories`` Required (API 7.1) (:pr:`4192`)

Minor Changes
-------------

-  Refactor Debug logging in ``Bot`` to Improve Type Hinting (:pr:`4151` closes :issue:`4010`)

New Features
------------

-  Make ``Message.reply_*`` Reply in the Same Topic by Default (:pr:`4170` by `aelkheir <https://github.com/aelkheir>`__ closes :issue:`4139`)
-  Accept Socket Objects for Webhooks (:pr:`4161` closes :issue:`4078`)
-  Add ``Update.effective_sender`` (:pr:`4168` by `aelkheir <https://github.com/aelkheir>`__ closes :issue:`4085`)

Documentation Improvements
--------------------------

-  Documentation Improvements (:pr:`4171`, :pr:`4158` by `teslaedison <https://github.com/teslaedison>`__)

Internal Changes
----------------

-  Temporarily Mark Tests with ``get_sticker_set`` as XFAIL due to API 7.2 Update (:pr:`4190`)

Dependency Updates
------------------

-  ``pre-commit`` autoupdate (:pr:`4184`)
-  Bump ``dependabot/fetch-metadata`` from 1.6.0 to 2.0.0 (:pr:`4185`)

21.0.1

==============

*Released 2024-03-06*

This is the technical changelog for version 21.0.1. More elaborate release notes can be found in the news channel `pythontelegrambotchannel <https://t.me/pythontelegrambotchannel>`__.

Bug Fixes
---------

-  Remove ``docs`` from Package (:pr:`4150`)

21.0

============

*Released 2024-03-06*

This is the technical changelog for version 21.0. More elaborate release notes can be found in the news channel `pythontelegrambotchannel <https://t.me/pythontelegrambotchannel>`__.

Major Changes
-------------

-  Remove Functionality Deprecated in API 7.0 (:pr:`4114` closes :issue:`4099`)
-  API 7.1 (:pr:`4118`)

New Features
------------

-  Add Parameter ``media_write_timeout`` to ``HTTPXRequest`` and Method ``ApplicationBuilder.media_write_timeout`` (:pr:`4120` closes :issue:`3864`)
-  Handle Properties in ``TelegramObject.__setstate__`` (:pr:`4134` closes :issue:`4111`)

Bug Fixes
---------

-  Add Missing Slot to ``Updater`` (:pr:`4130` closes :issue:`4127`)

Documentation Improvements
--------------------------

-  Improve HTML Download of Documentation (:pr:`4146` closes :issue:`4050`)
-  Documentation Improvements (:pr:`4109`, :issue:`4116`)
-  Update Copyright to 2024 (:pr:`4121` by `aelkheir <https://github.com/aelkheir>`__ closes :issue:`4041`)

Internal Changes
----------------

-  Apply ``pre-commit`` Checks More Widely (:pr:`4135`)
-  Refactor and Overhaul ``test_official`` (:pr:`4087` closes :issue:`3874`)
-  Run Unit Tests in PRs on Requirements Changes (:pr:`4144`)
-  Make ``Updater.stop`` Independent of ``CancelledError`` (:pr:`4126`)

Dependency Updates
------------------

-  Relax Upper Bound for ``httpx`` Dependency (:pr:`4148`)
-  Bump ``test-summary/action`` from 2.2 to 2.3 (:pr:`4142`)
-  Update ``cachetools`` requirement from ~=5.3.2 to ~=5.3.3 (:pr:`4141`)
-  Update ``httpx`` requirement from ~=0.26.0 to ~=0.27.0 (:pr:`4131`)

20.8

============

*Released 2024-02-08*

This is the technical changelog for version 20.8. More elaborate release notes can be found in the news channel `pythontelegrambotchannel <https://t.me/pythontelegrambotchannel>`__.

Major Changes
-------------

-  API 7.0 (:pr:`4034` closes :issue:`4033`, :pr:`4038` by `aelkheir <https://github.com/aelkheir>`__)

Minor Changes
-------------

-  Fix Type Hint for ``filters`` Parameter of ``MessageHandler`` (:pr:`4039` by `Palaptin <https://github.com/Palaptin>`__)
-  Deprecate ``filters.CHAT`` (:pr:`4083` closes :issue:`4062`)
-  Improve Error Handling in Built-In Webhook Handler (:pr:`3987` closes :issue:`3979`)

New Features
------------

-  Add Parameter ``pattern`` to ``PreCheckoutQueryHandler`` and ``filters.SuccessfulPayment`` (:pr:`4005` by `aelkheir <https://github.com/aelkheir>`__ closes :issue:`3752`)
-  Add Missing Conversions of ``type`` to Corresponding Enum from ``telegram.constants`` (:pr:`4067`)
-  Add Support for Unix Sockets to ``Updater.start_webhook`` (:pr:`3986` closes :issue:`3978`)
-  Add ``Bot.do_api_request`` (:pr:`4084` closes :issue:`4053`)
-  Add ``AsyncContextManager`` as Parent Class to ``BaseUpdateProcessor`` (:pr:`4001`)

Documentation Improvements
--------------------------

-  Documentation Improvements (:pr:`3919`)
-  Add Docstring to Dunder Methods (:pr:`3929` closes :issue:`3926`)
-  Documentation Improvements (:pr:`4002`, :pr:`4079` by `kenjitagawa <https://github.com/kenjitagawa>`__, :pr:`4104` by `xTudoS <https://github.com/xTudoS>`__)

Internal Changes
----------------

-  Drop Usage of DeepSource (:pr:`4100`)
-  Improve Type Completeness & Corresponding Workflow (:pr:`4035`)
-  Bump ``ruff`` and Remove ``sort-all`` (:pr:`4075`)
-  Move Handler Files to ``_handlers`` Subdirectory (:pr:`4064` by `lucasmolinari <https://github.com/lucasmolinari>`__ closes :issue:`4060`)
-  Introduce ``sort-all`` Hook for ``pre-commit`` (:pr:`4052`)
-  Use Recommended ``pre-commit`` Mirror for ``black`` (:pr:`4051`)
-  Remove Unused ``DEFAULT_20`` (:pr:`3997`)
-  Migrate From ``setup.cfg`` to ``pyproject.toml`` Where Possible (:pr:`4088`)

Dependency Updates
------------------

-  Bump ``black`` and ``ruff`` (:pr:`4089`)
-  Bump ``srvaroa/labeler`` from 1.8.0 to 1.10.0 (:pr:`4048`)
-  Update ``tornado`` requirement from ~=6.3.3 to ~=6.4 (:pr:`3992`)
-  Bump ``actions/stale`` from 8 to 9 (:pr:`4046`)
-  Bump ``actions/setup-python`` from 4 to 5 (:pr:`4047`)
-  ``pre-commit`` autoupdate (:pr:`4101`)
-  Bump ``actions/upload-artifact`` from 3 to 4 (:pr:`4045`)
-  ``pre-commit`` autoupdate (:pr:`3996`)
-  Bump ``furo`` from 2023.9.10 to 2024.1.29 (:pr:`4094`)
-  ``pre-commit`` autoupdate (:pr:`4043`)
-  Bump ``codecov/codecov-action`` from 3 to 4 (:pr:`4091`)
-  Bump ``EndBug/add-and-commit`` from 9.1.3 to 9.1.4 (:pr:`4090`)
-  Update ``httpx`` requirement from ~=0.25.2 to ~=0.26.0 (:pr:`4024`)
-  Bump ``pytest`` from 7.4.3 to 7.4.4 (:pr:`4056`)
-  Bump ``srvaroa/labeler`` from 1.7.0 to 1.8.0 (:pr:`3993`)
-  Bump ``test-summary/action`` from 2.1 to 2.2 (:pr:`4044`)
-  Bump ``dessant/lock-threads`` from 4.0.1 to 5.0.1 (:pr:`3994`)

20.7

============

*Released 2023-11-27*

This is the technical changelog for version 20.7. More elaborate release notes can be found in the news channel `pythontelegrambotchannel <https://t.me/pythontelegrambotchannel>`__.

New Features
------------

-  Add ``JobQueue.scheduler_configuration`` and Corresponding Warnings (:pr:`3913` closes :issue:`3837`)
-  Add Parameter ``socket_options`` to ``HTTPXRequest`` (:pr:`3935` closes :issue:`2965`)
-  Add ``ApplicationBuilder.(get_updates_)socket_options`` (:pr:`3943`)
-  Improve ``write_timeout`` Handling for Media Methods (:pr:`3952`)
-  Add ``filters.Mention`` (:pr:`3941` closes :issue:`3799`)
-  Rename ``proxy_url`` to ``proxy`` and Allow ``httpx.{Proxy, URL}`` as Input (:pr:`3939` closes :issue:`3844`)

Bug Fixes & Changes
-------------------

-  Adjust ``read_timeout`` Behavior for ``Bot.get_updates`` (:pr:`3963` closes :issue:`3893`)
-  Improve ``BaseHandler.__repr__`` for Callbacks without ``__qualname__`` (:pr:`3934`)
-  Fix Persistency Issue with Ended Non-Blocking Conversations (:pr:`3962`)
-  Improve Type Hinting for Arguments with Default Values in ``Bot`` (:pr:`3942`)

Documentation Improvements
--------------------------

-  Add Documentation for ``__aenter__`` and ``__aexit__`` Methods (:pr:`3907` closes :issue:`3886`)
-  Improve Insertion of Kwargs into ``Bot`` Methods (:pr:`3965`)

Internal Changes
----------------

-  Adjust Tests to New Error Messages (:pr:`3970`)

Dependency Updates
------------------

-  Bump ``pytest-xdist`` from 3.3.1 to 3.4.0 (:pr:`3975`)
-  ``pre-commit`` autoupdate (:pr:`3967`)
-  Update ``httpx`` requirement from ~=0.25.1 to ~=0.25.2 (:pr:`3983`)
-  Bump ``pytest-xdist`` from 3.4.0 to 3.5.0 (:pr:`3982`)
-  Update ``httpx`` requirement from ~=0.25.0 to ~=0.25.1 (:pr:`3961`)
-  Bump ``srvaroa/labeler`` from 1.6.1 to 1.7.0 (:pr:`3958`)
-  Update ``cachetools`` requirement from ~=5.3.1 to ~=5.3.2 (:pr:`3954`)
-  Bump ``pytest`` from 7.4.2 to 7.4.3 (:pr:`3953`)

20.6

============

*Released 2023-10-03*

This is the technical changelog for version 20.6. More elaborate release notes can be found in the news channel `pythontelegrambotchannel <https://t.me/pythontelegrambotchannel>`__.

Major Changes
-------------

-  Drop Backward Compatibility Layer Introduced in :pr:`3853` (API 6.8) (:pr:`3873`)
-  Full Support for Bot API 6.9 (:pr:`3898`)

New Features
------------

-  Add Rich Equality Comparison to ``WriteAccessAllowed`` (:pr:`3911` closes :issue:`3909`)
-  Add ``__repr__`` Methods Added in :pr:`3826` closes :issue:`3770` to Sphinx Documentation (:pr:`3901` closes :issue:`3889`)
-  Add String Representation for Selected Classes (:pr:`3826` closes :issue:`3770`)

Minor Changes
-------------

-  Add Support Python 3.12 (:pr:`3915`)
-  Documentation Improvements (:pr:`3910`)

Internal Changes
----------------

-  Verify Type Hints for Bot Method & Telegram Class Parameters (:pr:`3868`)
-  Move Bot API Tests to Separate Workflow File (:pr:`3912`)
-  Fix Failing ``file_size`` Tests (:pr:`3906`)
-  Set Threshold for DeepSource’s PY-R1000 to High (:pr:`3888`)
-  One-Time Code Formatting Improvement via ``--preview`` Flag of ``black`` (:pr:`3882`)
-  Move Dunder Methods to the Top of Class Bodies (:pr:`3883`)
-  Remove Superfluous ``Defaults.__ne__`` (:pr:`3884`)

Dependency Updates
------------------

-  ``pre-commit`` autoupdate (:pr:`3876`)
-  Update ``pre-commit`` Dependencies (:pr:`3916`)
-  Bump ``actions/checkout`` from 3 to 4 (:pr:`3914`)
-  Update ``httpx`` requirement from ~=0.24.1 to ~=0.25.0 (:pr:`3891`)
-  Bump ``furo`` from 2023.8.19 to 2023.9.10 (:pr:`3890`)
-  Bump ``sphinx`` from 7.2.5 to 7.2.6 (:pr:`3892`)
-  Update ``tornado`` requirement from ~=6.2 to ~=6.3.3 (:pr:`3675`)
-  Bump ``pytest`` from 7.4.0 to 7.4.2 (:pr:`3881`)

20.5

============
*Released 2023-09-03*

This is the technical changelog for version 20.5. More elaborate release notes can be found in the news channel `pythontelegrambotchannel <https://t.me/pythontelegrambotchannel>`__.

Major Changes
-------------

-  API 6.8 (:pr:`3853`)
-  Remove Functionality Deprecated Since Bot API 6.5, 6.6 or 6.7 (:pr:`3858`)

New Features
------------

-  Extend Allowed Values for HTTP Version (:pr:`3823` closes :issue:`3821`)
-  Add ``has_args`` Parameter to ``CommandHandler`` (:pr:`3854` by `thatguylah <https://github.com/thatguylah>`__ closes :issue:`3798`)
-  Add ``Application.stop_running()`` and Improve Marking Updates as Read on ``Updater.stop()`` (:pr:`3804`)

Minor Changes
-------------

-  Type Hinting Fixes for ``WebhookInfo`` (:pr:`3871`)
-  Test and Document ``Exception.__cause__`` on ``NetworkError`` (:pr:`3792` closes :issue:`3778`)
-  Add Support for Python 3.12 RC (:pr:`3847`)

Documentation Improvements
--------------------------

-  Remove Version Check from Examples (:pr:`3846`)
-  Documentation Improvements (:pr:`3803`, :pr:`3797`, :pr:`3816` by `trim21 <https://github.com/trim21>`__, :pr:`3829` by `aelkheir <https://github.com/aelkheir>`__)
-  Provide Versions of ``customwebhookbot.py`` with Different Frameworks (:pr:`3820` closes :issue:`3717`)

Dependency Updates
------------------

-  ``pre-commit`` autoupdate (:pr:`3824`)
-  Bump ``srvaroa/labeler`` from 1.6.0 to 1.6.1 (:pr:`3870`)
-  Bump ``sphinx`` from 7.0.1 to 7.1.1 (:pr:`3818`)
-  Bump ``sphinx`` from 7.2.3 to 7.2.5 (:pr:`3869`)
-  Bump ``furo`` from 2023.5.20 to 2023.7.26 (:pr:`3817`)
-  Update ``apscheduler`` requirement from ~=3.10.3 to ~=3.10.4 (:pr:`3862`)
-  Bump ``sphinx`` from 7.2.2 to 7.2.3 (:pr:`3861`)
-  Bump ``pytest-asyncio`` from 0.21.0 to 0.21.1 (:pr:`3801`)
-  Bump ``sphinx-paramlinks`` from 0.5.4 to 0.6.0 (:pr:`3840`)
-  Update ``apscheduler`` requirement from ~=3.10.1 to ~=3.10.3 (:pr:`3851`)
-  Bump ``furo`` from 2023.7.26 to 2023.8.19 (:pr:`3850`)
-  Bump ``sphinx`` from 7.1.2 to 7.2.2 (:pr:`3852`)
-  Bump ``sphinx`` from 7.1.1 to 7.1.2 (:pr:`3827`)

20.4

============

*Released 2023-07-09*

This is the technical changelog for version 20.4. More elaborate release notes can be found in the news channel `pythontelegrambotchannel <https://t.me/pythontelegrambotchannel>`__.

Major Changes
-------------

-  Drop Support for Python 3.7 (:pr:`3728`, :pr:`3742` by `Trifase <https://github.com/Trifase>`__, :pr:`3749` by `thefunkycat <https://github.com/thefunkycat>`__, :pr:`3740` closes :issue:`3732`, :pr:`3754` closes :issue:`3731`, :pr:`3753`, :pr:`3764`, :pr:`3762`, :pr:`3759` closes :issue:`3733`)

New Features
------------

-  Make Integration of ``APScheduler`` into ``JobQueue`` More Explicit (:pr:`3695`)
-  Introduce ``BaseUpdateProcessor`` for Customized Concurrent Handling of Updates (:pr:`3654` closes :issue:`3509`)

Minor Changes
-------------

-  Fix Inconsistent Type Hints for ``timeout`` Parameter of ``Bot.get_updates`` (:pr:`3709` by `revolter <https://github.com/revolter>`__)
-  Use Explicit Optionals (:pr:`3692` by `MiguelX413 <https://github.com/MiguelX413>`__)

Bug Fixes
---------

-  Fix Wrong Warning Text in ``KeyboardButton.__eq__`` (:pr:`3768`)

Documentation Improvements
--------------------------

-  Explicitly set ``allowed_updates`` in Examples (:pr:`3741` by `Trifase <https://github.com/Trifase>`__ closes :issue:`3726`)
-  Bump ``furo`` and ``sphinx`` (:pr:`3719`)
-  Documentation Improvements (:pr:`3698`, :pr:`3708` by `revolter <https://github.com/revolter>`__, :pr:`3767`)
-  Add Quotes for Installation Instructions With Optional Dependencies (:pr:`3780`)
-  Exclude Type Hints from Stability Policy (:pr:`3712`)
-  Set ``httpx`` Logging Level to Warning in Examples (:pr:`3746` closes :issue:`3743`)

Internal Changes
----------------

-  Drop a Legacy ``pre-commit.ci`` Configuration (:pr:`3697`)
-  Add Python 3.12 Beta to the Test Matrix (:pr:`3751`)
-  Use Temporary Files for Testing File Downloads (:pr:`3777`)
-  Auto-Update Changed Version in Other Files After Dependabot PRs (:pr:`3716`)
-  Add More ``ruff`` Rules (:pr:`3763`)
-  Rename ``_handler.py`` to ``_basehandler.py`` (:pr:`3761`)
-  Automatically Label ``pre-commit-ci`` PRs (:pr:`3713`)
-  Rework ``pytest`` Integration into GitHub Actions (:pr:`3776`)
-  Fix Two Bugs in GitHub Actions Workflows (:pr:`3739`)

Dependency Updates
------------------

-  Update ``cachetools`` requirement from ~=5.3.0 to ~=5.3.1 (:pr:`3738`)
-  Update ``aiolimiter`` requirement from ~=1.0.0 to ~=1.1.0 (:pr:`3707`)
-  ``pre-commit`` autoupdate (:pr:`3791`)
-  Bump ``sphinxcontrib-mermaid`` from 0.8.1 to 0.9.2 (:pr:`3737`)
-  Bump ``pytest-xdist`` from 3.2.1 to 3.3.0 (:pr:`3705`)
-  Bump ``srvaroa/labeler`` from 1.5.0 to 1.6.0 (:pr:`3786`)
-  Bump ``dependabot/fetch-metadata`` from 1.5.1 to 1.6.0 (:pr:`3787`)
-  Bump ``dessant/lock-threads`` from 4.0.0 to 4.0.1 (:pr:`3785`)
-  Bump ``pytest`` from 7.3.2 to 7.4.0 (:pr:`3774`)
-  Update ``httpx`` requirement from ~=0.24.0 to ~=0.24.1 (:pr:`3715`)
-  Bump ``pytest-xdist`` from 3.3.0 to 3.3.1 (:pr:`3714`)
-  Bump ``pytest`` from 7.3.1 to 7.3.2 (:pr:`3758`)
-  ``pre-commit`` autoupdate (:pr:`3747`)

20.3

============
*Released 2023-05-07*

This is the technical changelog for version 20.3. More elaborate release notes can be found in the news channel `pythontelegrambotchannel <https://t.me/pythontelegrambotchannel>`_.

Major Changes
-------------

- Full support for API 6.7 (:pr:`3673`)
- Add a Stability Policy (:pr:`3622`)

New Features
------------

- Add ``Application.mark_data_for_update_persistence`` (:pr:`3607`)
- Make ``Message.link`` Point to Thread View Where Possible (:pr:`3640`)
- Localize Received ``datetime`` Objects According to ``Defaults.tzinfo`` (:pr:`3632`)

Minor Changes, Documentation Improvements and CI
------------------------------------------------

- Empower ``ruff`` (:pr:`3594`)
- Drop Usage of ``sys.maxunicode`` (:pr:`3630`)
- Add String Representation for ``RequestParameter`` (:pr:`3634`)
- Stabilize CI by Rerunning Failed Tests (:pr:`3631`)
- Give Loggers Better Names (:pr:`3623`)
- Add Logging for Invalid JSON Data in ``BasePersistence.parse_json_payload`` (:pr:`3668`)
- Improve Warning Categories & Stacklevels (:pr:`3674`)
- Stabilize ``test_delete_sticker_set`` (:pr:`3685`)
- Shield Update Fetcher Task in ``Application.start`` (:pr:`3657`)
- Recover 100% Type Completeness (:pr:`3676`)
- Documentation Improvements (:pr:`3628`, :pr:`3636`, :pr:`3694`)

Dependencies
------------

- Bump ``actions/stale`` from 7 to 8 (:pr:`3644`)
- Bump ``furo`` from 2023.3.23 to 2023.3.27 (:pr:`3643`)
- ``pre-commit`` autoupdate (:pr:`3646`, :pr:`3688`)
- Remove Deprecated ``codecov`` Package from CI (:pr:`3664`)
- Bump ``sphinx-copybutton`` from 0.5.1 to 0.5.2 (:pr:`3662`)
- Update ``httpx`` requirement from ~=0.23.3 to ~=0.24.0 (:pr:`3660`)
- Bump ``pytest`` from 7.2.2 to 7.3.1 (:pr:`3661`)

20.2

============
*Released 2023-03-25*

This is the technical changelog for version 20.2. More elaborate release notes can be found in the news channel `pythontelegrambotchannel <https://t.me/pythontelegrambotchannel>`_.

Major Changes
-------------
- Full Support for API 6.6 (:pr:`3584`)
- Revert to HTTP/1.1 as Default and make HTTP/2 an Optional Dependency (:pr:`3576`)

Minor Changes, Documentation Improvements and CI
------------------------------------------------
- Documentation Improvements (:pr:`3565`, :pr:`3600`)
- Handle Symbolic Links in ``was_called_by`` (:pr:`3552`)
- Tidy Up Tests Directory (:pr:`3553`)
- Enhance ``Application.create_task`` (:pr:`3543`)
- Make Type Completeness Workflow Usable for ``PRs`` from Forks (:pr:`3551`)
- Refactor and Overhaul the Test Suite (:pr:`3426`)

Dependencies
------------
- Bump ``pytest-asyncio`` from 0.20.3 to 0.21.0 (:pr:`3624`)
- Bump ``furo`` from 2022.12.7 to 2023.3.23 (:pr:`3625`)
- Bump ``pytest-xdist`` from 3.2.0 to 3.2.1 (:pr:`3606`)
- ``pre-commit`` autoupdate (:pr:`3577`)
- Update ``apscheduler`` requirement from ~=3.10.0 to ~=3.10.1 (:pr:`3572`)
- Bump ``pytest`` from 7.2.1 to 7.2.2 (:pr:`3573`)
- Bump ``pytest-xdist`` from 3.1.0 to 3.2.0 (:pr:`3550`)
- Bump ``sphinxcontrib-mermaid`` from 0.7.1 to 0.8 (:pr:`3549`)

20.1

============
*Released 2023-02-09*

This is the technical changelog for version 20.1. More elaborate release notes can be found in the news channel `pythontelegrambotchannel <https://t.me/pythontelegrambotchannel>`_.

Major Changes
-------------

- Full Support for Bot API 6.5 (:pr:`3530`)

New Features
------------

- Add ``Application(Builder).post_stop`` (:pr:`3466`)
- Add ``Chat.effective_name`` Convenience Property (:pr:`3485`)
- Allow to Adjust HTTP Version and Use HTTP/2 by Default (:pr:`3506`)

Documentation Improvements
--------------------------

- Enhance ``chatmemberbot`` Example (:pr:`3500`)
- Automatically Generate Cross-Reference Links (:pr:`3501`, :pr:`3529`, :pr:`3523`)
- Add Some Graphic Elements to Docs (:pr:`3535`)
- Various Smaller Improvements (:pr:`3464`, :pr:`3483`, :pr:`3484`, :pr:`3497`, :pr:`3512`, :pr:`3515`,  :pr:`3498`)

Minor Changes, Documentation Improvements and CI
------------------------------------------------

- Update Copyright to 2023 (:pr:`3459`)
- Stabilize Tests on Closing and Hiding the General Forum Topic (:pr:`3460`)
- Fix Dependency Warning Typo (:pr:`3474`)
- Cache Dependencies on ``GitHub`` Actions (:pr:`3469`)
- Store Documentation Builts as ``GitHub`` Actions Artifacts (:pr:`3468`)
- Add ``ruff`` to ``pre-commit`` Hooks (:pr:`3488`)
- Improve Warning for ``days`` Parameter of  ``JobQueue.run_daily`` (:pr:`3503`)
- Improve Error Message for ``NetworkError`` (:pr:`3505`)
- Lock Inactive Threads Only Once Each Day (:pr:`3510`)
- Bump ``pytest`` from 7.2.0 to 7.2.1 (:pr:`3513`)
- Check for 3D Arrays in ``check_keyboard_type`` (:pr:`3514`)
- Explicit Type Annotations (:pr:`3508`)
- Increase Verbosity of Type Completeness CI Job (:pr:`3531`)
- Fix CI on Python 3.11 + Windows (:pr:`3547`)

Dependencies
------------

- Bump ``actions/stale`` from 6 to 7 (:pr:`3461`)
- Bump ``dessant/lock-threads`` from 3.0.0 to 4.0.0 (:pr:`3462`)
- ``pre-commit`` autoupdate (:pr:`3470`)
- Update ``httpx`` requirement from ~=0.23.1 to ~=0.23.3 (:pr:`3489`)
- Update ``cachetools`` requirement from ~=5.2.0 to ~=5.2.1 (:pr:`3502`)
- Improve Config for ``ruff`` and Bump to ``v0.0.222`` (:pr:`3507`)
- Update ``cachetools`` requirement from ~=5.2.1 to ~=5.3.0 (:pr:`3520`)
- Bump ``isort`` to 5.12.0 (:pr:`3525`)
- Update ``apscheduler`` requirement from ~=3.9.1 to ~=3.10.0 (:pr:`3532`)
- ``pre-commit`` autoupdate (:pr:`3537`)
- Update ``cryptography`` requirement to >=39.0.1 to address Vulnerability (:pr:`3539`)

20.0

============
*Released 2023-01-01*

This is the technical changelog for version 20.0. More elaborate release notes can be found in the news channel `pythontelegrambotchannel <https://t.me/pythontelegrambotchannel>`_.

Major Changes
-------------

- Full Support For Bot API 6.4 (:pr:`3449`)

Minor Changes, Documentation Improvements and CI
------------------------------------------------

- Documentation Improvements (:pr:`3428`, :pr:`3423`, :pr:`3429`, :pr:`3441`, :pr:`3404`, :pr:`3443`)
- Allow ``Sequence`` Input for Bot Methods (:pr:`3412`)
- Update Link-Check CI and Replace a Dead Link (:pr:`3456`)
- Freeze Classes Without Arguments (:pr:`3453`)
- Add New Constants (:pr:`3444`)
- Override ``Bot.__deepcopy__`` to Raise ``TypeError`` (:pr:`3446`)
- Add Log Decorator to ``Bot.get_webhook_info`` (:pr:`3442`)
- Add Documentation On Verifying Releases (:pr:`3436`)
- Drop Undocumented ``Job.__lt__`` (:pr:`3432`)

Dependencies
------------

- Downgrade ``sphinx`` to 5.3.0 to Fix Search (:pr:`3457`)
- Bump ``sphinx`` from 5.3.0 to 6.0.0 (:pr:`3450`)

20.0b0

==============
*Released 2022-12-15*

This is the technical changelog for version 20.0b0. More elaborate release notes can be found in the news channel `pythontelegrambotchannel <https://t.me/pythontelegrambotchannel>`_.

Major Changes
-------------

- Make ``TelegramObject`` Immutable (:pr:`3249`)

Minor Changes, Documentation Improvements and CI
------------------------------------------------

- Reduce Code Duplication in Testing ``Defaults`` (:pr:`3419`)
- Add Notes and Warnings About Optional Dependencies (:pr:`3393`)
- Simplify Internals of ``Bot`` Methods (:pr:`3396`)
- Reduce Code Duplication in Several ``Bot`` Methods (:pr:`3385`)
- Documentation Improvements (:pr:`3386`, :pr:`3395`, :pr:`3398`, :pr:`3403`)

Dependencies
------------

- Bump ``pytest-xdist`` from 3.0.2 to 3.1.0 (:pr:`3415`)
- Bump ``pytest-asyncio`` from 0.20.2 to 0.20.3 (:pr:`3417`)
- ``pre-commit`` autoupdate (:pr:`3409`)

20.0a6

==============
*Released 2022-11-24*

This is the technical changelog for version 20.0a6. More elaborate release notes can be found in the news channel `pythontelegrambotchannel <https://t.me/pythontelegrambotchannel>`_.

Bug Fixes
---------

- Only Persist Arbitrary ``callback_data`` if ``ExtBot.callback_data_cache`` is Present (:pr:`3384`)
- Improve Backwards Compatibility of ``TelegramObjects`` Pickle Behavior (:pr:`3382`)
- Fix Naming and Keyword Arguments of ``File.download_*`` Methods (:pr:`3380`)
- Fix Return Value Annotation of ``Chat.create_forum_topic`` (:pr:`3381`)

20.0a5

==============
*Released 2022-11-22*

This is the technical changelog for version 20.0a5. More elaborate release notes can be found in the news channel `pythontelegrambotchannel <https://t.me/pythontelegrambotchannel>`_.

Major Changes
-------------

- API 6.3 (:pr:`3346`, :pr:`3343`, :pr:`3342`, :pr:`3360`)
- Explicit ``local_mode`` Setting (:pr:`3154`)
- Make Almost All 3rd Party Dependencies Optional (:pr:`3267`)
- Split ``File.download`` Into ``File.download_to_drive`` And ``File.download_to_memory`` (:pr:`3223`)

New Features
------------

- Add Properties for API Settings of ``Bot`` (:pr:`3247`)
- Add ``chat_id`` and ``username`` Parameters to ``ChatJoinRequestHandler`` (:pr:`3261`)
- Introduce ``TelegramObject.api_kwargs`` (:pr:`3233`)
- Add Two Constants Related to Local Bot API Servers (:pr:`3296`)
- Add ``recursive`` Parameter to ``TelegramObject.to_dict()`` (:pr:`3276`)
- Overhaul String Representation of ``TelegramObject`` (:pr:`3234`)
- Add Methods ``Chat.mention_{html, markdown, markdown_v2}`` (:pr:`3308`)
- Add ``constants.MessageLimit.DEEP_LINK_LENGTH`` (:pr:`3315`)
- Add Shortcut Parameters ``caption``, ``parse_mode`` and ``caption_entities`` to ``Bot.send_media_group`` (:pr:`3295`)
- Add Several New Enums To Constants (:pr:`3351`)

Bug Fixes
---------

- Fix ``CallbackQueryHandler`` Not Handling Non-String Data Correctly With Regex Patterns (:pr:`3252`)
- Fix Defaults Handling in ``Bot.answer_web_app_query`` (:pr:`3362`)

Documentation Improvements
--------------------------

- Update PR Template (:pr:`3361`)
- Document Dunder Methods of ``TelegramObject`` (:pr:`3319`)
- Add Several References to Wiki pages (:pr:`3306`)
- Overhaul Search bar (:pr:`3218`)
- Unify Documentation of Arguments and Attributes of Telegram Classes (:pr:`3217`, :pr:`3292`, :pr:`3303`, :pr:`3312`, :pr:`3314`)
- Several Smaller Improvements (:pr:`3214`, :pr:`3271`, :pr:`3289`, :pr:`3326`, :pr:`3370`, :pr:`3376`, :pr:`3366`)

Minor Changes, Documentation Improvements and CI
------------------------------------------------

- Improve Warning About Unknown ``ConversationHandler`` States (:pr:`3242`)
- Switch from Stale Bot to ``GitHub`` Actions (:pr:`3243`)
- Bump Python 3.11 to RC2 in Test Matrix (:pr:`3246`)
- Make ``Job.job`` a Property and Make ``Jobs`` Hashable (:pr:`3250`)
- Skip ``JobQueue`` Tests on Windows Again (:pr:`3280`)
- Read-Only ``CallbackDataCache`` (:pr:`3266`)
- Type Hinting Fix for ``Message.effective_attachment`` (:pr:`3294`)
- Run Unit Tests in Parallel (:pr:`3283`)
- Update Test Matrix to Use Stable Python 3.11 (:pr:`3313`)
- Don't Edit Objects In-Place When Inserting ``ext.Defaults`` (:pr:`3311`)
- Add a Test for ``MessageAttachmentType`` (:pr:`3335`)
- Add Three New Test Bots (:pr:`3347`)
- Improve Unit Tests Regarding ``ChatMemberUpdated.difference`` (:pr:`3352`)
- Flaky Unit Tests: Use ``pytest`` Marker (:pr:`3354`)
- Fix ``DeepSource`` Issues (:pr:`3357`)
- Handle Lists and Tuples and Datetimes Directly in ``TelegramObject.to_dict`` (:pr:`3353`)
- Update Meta Config (:pr:`3365`)
- Merge ``ChatDescriptionLimit`` Enum Into ``ChatLimit`` (:pr:`3377`)

Dependencies
------------

- Bump ``pytest`` from 7.1.2 to 7.1.3 (:pr:`3228`)
- ``pre-commit`` Updates (:pr:`3221`)
- Bump ``sphinx`` from 5.1.1 to 5.2.3 (:pr:`3269`)
- Bump ``furo`` from 2022.6.21 to 2022.9.29 (:pr:`3268`)
- Bump ``actions/stale`` from 5 to 6 (:pr:`3277`)
- ``pre-commit`` autoupdate (:pr:`3282`)
- Bump ``sphinx`` from 5.2.3 to 5.3.0 (:pr:`3300`)
- Bump ``pytest-asyncio`` from 0.19.0 to 0.20.1 (:pr:`3299`)
- Bump ``pytest`` from 7.1.3 to 7.2.0 (:pr:`3318`)
- Bump ``pytest-xdist`` from 2.5.0 to 3.0.2 (:pr:`3317`)
- ``pre-commit`` autoupdate (:pr:`3325`)
- Bump ``pytest-asyncio`` from 0.20.1 to 0.20.2 (:pr:`3359`)
- Update ``httpx`` requirement from ~=0.23.0 to ~=0.23.1 (:pr:`3373`)

20.0a4

==============
*Released 2022-08-27*

This is the technical changelog for version 20.0a4. More elaborate release notes can be found in the news channel `pythontelegrambotchannel <https://t.me/pythontelegrambotchannel>`_.

Hot Fixes
---------

* Fix a Bug in ``setup.py`` Regarding Optional Dependencies (:pr:`3209`)

20.0a3

==============
*Released 2022-08-27*

This is the technical changelog for version 20.0a3. More elaborate release notes can be found in the news channel `pythontelegrambotchannel <https://t.me/pythontelegrambotchannel>`_.

Major Changes
-------------

- Full Support for API 6.2 (:pr:`3195`)

New Features
------------

- New Rate Limiting Mechanism (:pr:`3148`)
- Make ``chat/user_data`` Available in Error Handler for Errors in Jobs (:pr:`3152`)
- Add ``Application.post_shutdown`` (:pr:`3126`)

Bug Fixes
---------

- Fix ``helpers.mention_markdown`` for Markdown V1 and Improve Related Unit Tests (:pr:`3155`)
- Add ``api_kwargs`` Parameter to ``Bot.log_out`` and Improve Related Unit Tests (:pr:`3147`)
- Make ``Bot.delete_my_commands`` a Coroutine Function (:pr:`3136`)
- Fix ``ConversationHandler.check_update`` not respecting ``per_user`` (:pr:`3128`)

Minor Changes, Documentation Improvements and CI
------------------------------------------------

- Add Python 3.11 to Test Suite & Adapt Enum Behaviour (:pr:`3168`)
- Drop Manual Token Validation (:pr:`3167`)
- Simplify Unit Tests for ``Bot.send_chat_action`` (:pr:`3151`)
- Drop ``pre-commit`` Dependencies from ``requirements-dev.txt`` (:pr:`3120`)
- Change Default Values for ``concurrent_updates`` and ``connection_pool_size`` (:pr:`3127`)
- Documentation Improvements (:pr:`3139`, :pr:`3153`, :pr:`3135`)
- Type Hinting Fixes (:pr:`3202`)

Dependencies
------------

- Bump ``sphinx`` from 5.0.2 to 5.1.1 (:pr:`3177`)
- Update ``pre-commit`` Dependencies (:pr:`3085`)
- Bump ``pytest-asyncio`` from 0.18.3 to 0.19.0 (:pr:`3158`)
- Update ``tornado`` requirement from ~=6.1 to ~=6.2 (:pr:`3149`)
- Bump ``black`` from 22.3.0 to 22.6.0 (:pr:`3132`)
- Bump ``actions/setup-python`` from 3 to 4 (:pr:`3131`)

20.0a2

==============
*Released 2022-06-27*

This is the technical changelog for version 20.0a2. More elaborate release notes can be found in the news channel `pythontelegrambotchannel <https://t.me/pythontelegrambotchannel>`_.

Major Changes
-------------

- Full Support for API 6.1 (:pr:`3112`)

New Features
------------

- Add Additional Shortcut Methods to ``Chat`` (:pr:`3115`)
- Mermaid-based Example State Diagrams (:pr:`3090`)

Minor Changes, Documentation Improvements and CI
------------------------------------------------

- Documentation Improvements (:pr:`3103`, :pr:`3121`, :pr:`3098`)
- Stabilize CI (:pr:`3119`)
- Bump ``pyupgrade`` from 2.32.1 to 2.34.0 (:pr:`3096`)
- Bump ``furo`` from 2022.6.4 to 2022.6.4.1 (:pr:`3095`)
- Bump ``mypy`` from 0.960 to 0.961 (:pr:`3093`)

20.0a1

==============
*Released 2022-06-09*

This is the technical changelog for version 20.0a1. More elaborate release notes can be found in the news channel `pythontelegrambotchannel <https://t.me/pythontelegrambotchannel>`_.

Major Changes:
--------------

- Drop Support for ``ujson`` and instead ``BaseRequest.parse_json_payload`` (:pr:`3037`, :pr:`3072`)
- Drop ``InputFile.is_image`` (:pr:`3053`)
- Drop Explicit Type conversions in ``__init__`` s (:pr:`3056`)
- Handle List-Valued Attributes More Consistently (:pr:`3057`)
- Split ``{Command, Prefix}Handler`` And Make Attributes Immutable (:pr:`3045`)
- Align Behavior Of ``JobQueue.run_daily`` With ``cron`` (:pr:`3046`)
- Make PTB Specific  Keyword-Only Arguments for PTB Specific in Bot methods (:pr:`3035`)
- Adjust Equality Comparisons to Fit Bot API 6.0 (:pr:`3033`)
- Add Tuple Based Version Info (:pr:`3030`)
- Improve Type Annotations for ``CallbackContext`` and Move Default Type Alias to ``ContextTypes.DEFAULT_TYPE`` (:pr:`3017`, :pr:`3023`)
- Rename ``Job.context`` to ``Job.data`` (:pr:`3028`)
- Rename ``Handler`` to ``BaseHandler`` (:pr:`3019`)

New Features:
-------------

- Add ``Application.post_init`` (:pr:`3078`)
- Add Arguments ``chat/user_id`` to ``CallbackContext`` And Example On Custom Webhook Setups (:pr:`3059`)
- Add Convenience Property ``Message.id`` (:pr:`3077`)
- Add Example for ``WebApp`` (:pr:`3052`)
- Rename ``telegram.bot_api_version`` to ``telegram.__bot_api_version__`` (:pr:`3030`)

Bug Fixes:
----------

- Fix Non-Blocking Entry Point in ``ConversationHandler`` (:pr:`3068`)
- Escape Backslashes in ``escape_markdown``  (:pr:`3055`)

Dependencies:
-------------

- Update ``httpx`` requirement from ~=0.22.0 to ~=0.23.0 (:pr:`3069`)
- Update ``cachetools`` requirement from ~=5.0.0 to ~=5.2.0 (:pr:`3058`, :pr:`3080`)

Minor Changes, Documentation Improvements and CI:
-------------------------------------------------

- Move Examples To Documentation (:pr:`3089`)
- Documentation Improvements and Update Dependencies (:pr:`3010`, :pr:`3007`, :pr:`3012`, :pr:`3067`, :pr:`3081`, :pr:`3082`)
- Improve Some Unit Tests (:pr:`3026`)
- Update Code Quality dependencies (:pr:`3070`, :pr:`3032`,:pr:`2998`, :pr:`2999`)
- Don't Set Signal Handlers On Windows By Default (:pr:`3065`)
- Split ``{Command, Prefix}Handler`` And Make Attributes Immutable (:pr:`3045`)
- Apply ``isort`` and Update ``pre-commit.ci`` Configuration (:pr:`3049`)
- Adjust ``pre-commit`` Settings for ``isort`` (:pr:`3043`)
- Add Version Check to Examples (:pr:`3036`)
- Use ``Collection`` Instead of ``List`` and ``Tuple`` (:pr:`3025`)
- Remove Client-Side Parameter Validation (:pr:`3024`)
- Don't Pass Default Values of Optional Parameters to Telegram (:pr:`2978`)
- Stabilize ``Application.run_*`` on Python 3.7 (:pr:`3009`)
- Ignore Code Style Commits in ``git blame`` (:pr:`3003`)
- Adjust Tests to Changed API Behavior (:pr:`3002`)

20.0a0

==============
*Released 2022-05-06*

This is the technical changelog for version 20.0a0. More elaborate release notes can be found in the news channel `pythontelegrambotchannel <https://t.me/pythontelegrambotchannel>`_.

Major Changes:
--------------

-  Refactor Initialization of Persistence Classes
(:pr:`2604`)
-  Drop Non-``CallbackContext`` API
(:pr:`2617`)
-  Remove ``__dict__`` from ``__slots__`` and drop Python 3.6
(:pr:`2619`,
:pr:`2636`)
-  Move and Rename ``TelegramDecryptionError`` to
``telegram.error.PassportDecryptionError``
(:pr:`2621`)
-  Make ``BasePersistence`` Methods Abstract
(:pr:`2624`)
-  Remove ``day_is_strict`` argument of ``JobQueue.run_monthly``
(:pr:`2634`
by `iota-008 <https://github.com/iota-008>`__)
-  Move ``Defaults`` to ``telegram.ext``
(:pr:`2648`)
-  Remove Deprecated Functionality
(:pr:`2644`,
:pr:`2740`,
:pr:`2745`)
-  Overhaul of Filters
(:pr:`2759`,
:pr:`2922`)
-  Switch to ``asyncio`` and Refactor PTBs Architecture
(:pr:`2731`)
-  Improve ``Job.__getattr__``
(:pr:`2832`)
-  Remove ``telegram.ReplyMarkup``
(:pr:`2870`)
-  Persistence of ``Bots``: Refactor Automatic Replacement and
Integration with ``TelegramObject``
(:pr:`2893`)

New Features:
-------------

-  Introduce Builder Pattern
(:pr:`2646`)
-  Add ``Filters.update.edited``
(:pr:`2705`
by `PhilippFr <https://github.com/PhilippFr>`__)
-  Introduce ``Enums`` for ``telegram.constants``
(:pr:`2708`)
-  Accept File Paths for ``private_key``
(:pr:`2724`)
-  Associate ``Jobs`` with ``chat/user_id``
(:pr:`2731`)
-  Convenience Functionality for ``ChatInviteLinks``
(:pr:`2782`)
-  Add ``Dispatcher.add_handlers``
(:pr:`2823`)
-  Improve Error Messages in ``CommandHandler.__init__``
(:pr:`2837`)
-  ``Defaults.protect_content``
(:pr:`2840`)
-  Add ``Dispatcher.migrate_chat_data``
(:pr:`2848`
by `DonalDuck004 <https://github.com/DonalDuck004>`__)
-  Add Method ``drop_chat/user_data`` to ``Dispatcher`` and Persistence
(:pr:`2852`)
-  Add methods ``ChatPermissions.{all, no}_permissions`` (:pr:`2948`)
-  Full Support for API 6.0
(:pr:`2956`)
-  Add Python 3.10 to Test Suite
(:pr:`2968`)

Bug Fixes & Minor Changes:
--------------------------

-  Improve Type Hinting for ``CallbackContext``
(:pr:`2587`
by `revolter <https://github.com/revolter>`__)
-  Fix Signatures and Improve ``test_official``
(:pr:`2643`)
-  Refine ``Dispatcher.dispatch_error``
(:pr:`2660`)
-  Make ``InlineQuery.answer`` Raise ``ValueError``
(:pr:`2675`)
-  Improve Signature Inspection for Bot Methods
(:pr:`2686`)
-  Introduce ``TelegramObject.set/get_bot``
(:pr:`2712`
by `zpavloudis <https://github.com/zpavloudis>`__)
-  Improve Subscription of ``TelegramObject``
(:pr:`2719`
by `SimonDamberg <https://github.com/SimonDamberg>`__)
-  Use Enums for Dynamic Types & Rename Two Attributes in ``ChatMember``
(:pr:`2817`)
-  Return Plain Dicts from ``BasePersistence.get_*_data``
(:pr:`2873`)
-  Fix a Bug in ``ChatMemberUpdated.difference``
(:pr:`2947`)
-  Update Dependency Policy
(:pr:`2958`)

Internal Restructurings & Improvements:
---------------------------------------

-  Add User Friendly Type Check For Init Of
``{Inline, Reply}KeyboardMarkup``
(:pr:`2657`)
-  Warnings Overhaul
(:pr:`2662`)
-  Clear Up Import Policy
(:pr:`2671`)
-  Mark Internal Modules As Private
(:pr:`2687`
by `kencx <https://github.com/kencx>`__)
-  Handle Filepaths via the ``pathlib`` Module
(:pr:`2688`
by `eldbud <https://github.com/eldbud>`__)
-  Refactor MRO of ``InputMedia*`` and Some File-Like Classes
(:pr:`2717`
by `eldbud <https://github.com/eldbud>`__)
-  Update Exceptions for Immutable Attributes
(:pr:`2749`)
-  Refactor Warnings in ``ConversationHandler``
(:pr:`2755`,
:pr:`2784`)
-  Use ``__all__`` Consistently
(:pr:`2805`)

CI, Code Quality & Test Suite Improvements:
-------------------------------------------

-  Add Custom ``pytest`` Marker to Ease Development
(:pr:`2628`)
-  Pass Failing Jobs to Error Handlers
(:pr:`2692`)
-  Update Notification Workflows
(:pr:`2695`)
-  Use Error Messages for ``pylint`` Instead of Codes
(:pr:`2700`
by `Piraty <https://github.com/Piraty>`__)
-  Make Tests Agnostic of the CWD
(:pr:`2727`
by `eldbud <https://github.com/eldbud>`__)
-  Update Code Quality Dependencies
(:pr:`2748`)
-  Improve Code Quality
(:pr:`2783`)
-  Update ``pre-commit`` Settings & Improve a Test
(:pr:`2796`)
-  Improve Code Quality & Test Suite
(:pr:`2843`)
-  Fix failing animation tests
(:pr:`2865`)
-  Update and Expand Tests & pre-commit Settings and Improve Code
Quality
(:pr:`2925`)
-  Extend Code Formatting With Black
(:pr:`2972`)
-  Update Workflow Permissions
(:pr:`2984`)
-  Adapt Tests to Changed ``Bot.get_file`` Behavior
(:pr:`2995`)

Documentation Improvements:
---------------------------

-  Doc Fixes
(:pr:`2597`)
-  Add Code Comment Guidelines to Contribution Guide
(:pr:`2612`)
-  Add Cross-References to External Libraries & Other Documentation
Improvements
(:pr:`2693`,
:pr:`2691`
by `joesinghh <https://github.com/joesinghh>`__,
:pr:`2739`
by `eldbud <https://github.com/eldbud>`__)
-  Use Furo Theme, Make Parameters Referenceable, Add Documentation
Building to CI, Improve Links to Source Code & Other Improvements
(:pr:`2856`,
:pr:`2798`,
:pr:`2854`,
:pr:`2841`)
-  Documentation Fixes & Improvements
(:pr:`2822`)
-  Replace ``git.io`` Links
(:pr:`2872`
by `murugu-21 <https://github.com/murugu-21>`__)
-  Overhaul Readmes, Update RTD Startpage & Other Improvements
(:pr:`2969`)

13.11

=============
*Released 2022-02-02*

This is the technical changelog for version 13.11. More elaborate release notes can be found in the news channel `pythontelegrambotchannel <https://t.me/pythontelegrambotchannel>`_.

**Major Changes:**

- Full Support for Bot API 5.7 (:pr:`2881`)

13.10

=============
*Released 2022-01-03*

This is the technical changelog for version 13.10. More elaborate release notes can be found in the news channel `pythontelegrambotchannel <https://t.me/pythontelegrambotchannel>`_.

**Major Changes:**

- Full Support for API 5.6 (:pr:`2835`)

**Minor Changes & Doc fixes:**

- Update Copyright to 2022 (:pr:`2836`)
- Update Documentation of ``BotCommand`` (:pr:`2820`)
Links

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant