aiogram/aiogram/utils
andrew000 e94e33c496
Drop py3.9 and pypy3.9
Add pypy3.11 (testing) into `tests.yml`

Remove py3.9 from matrix in `tests.yml`

Refactor not auto-gen code to be compatible with py3.10+, droping ugly 3.9 annotation.

Replace some `from typing` imports to `from collections.abc`, due to deprecation

Add `from __future__ import annotations` and `if TYPE_CHECKING:` where possible

Add some `noqa` to calm down Ruff in some places, if Ruff will be used as default linting+formatting tool in future

Replace some relative imports to absolute

Sort `__all__` tuples in `__init__.py` and some other `.py` files

Sort `__slots__` tuples in classes

Split raises into `msg` and `raise` (`EM101`, `EM102`) to not duplicate error message in the traceback

Add `Self` from `typing_extenstion` where possible

Resolve typing problem in `aiogram/filters/command.py:18`

Concatenate nested `if` statements

Convert `HandlerContainer` into a dataclass in `aiogram/fsm/scene.py`

Bump tests docker-compose.yml `redis:6-alpine` -> `redis:8-alpine`

Bump tests docker-compose.yml `mongo:7.0.6` -> `mongo:8.0.14`

Bump pre-commit-config `black==24.4.2` -> `black==25.9.0`

Bump pre-commit-config `ruff==0.5.1` -> `ruff==0.13.3`

Update Makefile lint for ruff to show fixes

Add `make outdated` into Makefile

Use `pathlib` instead of `os.path`

Bump `redis[hiredis]>=5.0.1,<5.3.0` -> `redis[hiredis]>=6.2.0,<7`

Bump `cryptography>=43.0.0` -> `cryptography>=46.0.0` due to security reasons

Bump `pytz~=2023.3` -> `pytz~=2025.2`

Bump `pycryptodomex~=3.19.0` -> `pycryptodomex~=3.23.0` due to security reasons

Bump linting and formatting tools
2025-10-03 09:03:30 +00:00
..
i18n Drop py3.9 and pypy3.9 2025-10-03 09:03:30 +00:00
__init__.py Dev 3.x i18n & improvements (#696) 2021-09-22 00:52:38 +03:00
auth_widget.py Drop py3.9 and pypy3.9 2025-10-03 09:03:30 +00:00
backoff.py Drop py3.9 and pypy3.9 2025-10-03 09:03:30 +00:00
callback_answer.py Drop py3.9 and pypy3.9 2025-10-03 09:03:30 +00:00
chat_action.py Drop py3.9 and pypy3.9 2025-10-03 09:03:30 +00:00
chat_member.py Drop py3.9 and pypy3.9 2025-10-03 09:03:30 +00:00
class_attrs_resolver.py Drop py3.9 and pypy3.9 2025-10-03 09:03:30 +00:00
dataclass.py Drop py3.9 and pypy3.9 2025-10-03 09:03:30 +00:00
deep_linking.py Drop py3.9 and pypy3.9 2025-10-03 09:03:30 +00:00
formatting.py Drop py3.9 and pypy3.9 2025-10-03 09:03:30 +00:00
keyboard.py Drop py3.9 and pypy3.9 2025-10-03 09:03:30 +00:00
link.py Drop py3.9 and pypy3.9 2025-10-03 09:03:30 +00:00
magic_filter.py Drop py3.9 and pypy3.9 2025-10-03 09:03:30 +00:00
markdown.py Drop py3.9 and pypy3.9 2025-10-03 09:03:30 +00:00
media_group.py Drop py3.9 and pypy3.9 2025-10-03 09:03:30 +00:00
mixins.py Drop py3.9 and pypy3.9 2025-10-03 09:03:30 +00:00
mypy_hacks.py Drop py3.9 and pypy3.9 2025-10-03 09:03:30 +00:00
payload.py Drop py3.9 and pypy3.9 2025-10-03 09:03:30 +00:00
serialization.py Drop py3.9 and pypy3.9 2025-10-03 09:03:30 +00:00
text_decorations.py Drop py3.9 and pypy3.9 2025-10-03 09:03:30 +00:00
token.py Drop py3.9 and pypy3.9 2025-10-03 09:03:30 +00:00
warnings.py Remove filters factory, introduce docs translation (#978) 2022-10-02 00:04:31 +03:00
web_app.py Drop py3.9 and pypy3.9 2025-10-03 09:03:30 +00:00
web_app_signature.py Drop py3.9 and pypy3.9 2025-10-03 09:03:30 +00:00