Commit graph

321 commits

Author SHA1 Message Date
Alex Root Junior
efae83d337
Added more details when server send invalid response 2022-10-02 19:22:12 +03:00
Alex Root Junior
44ae565149
Change changelog categories, update dependencies 2022-10-02 18:24:26 +03:00
Alex Root Junior
5a9ea04efc
Fixed escaping markdown in aiogram.utils.markdown module 2022-10-02 00:09:28 +03:00
Alex Root Junior
f4251382e8
Remove filters factory, introduce docs translation (#978)
* Rewrite filters

* Update README.rst

* Fixed tests

* Small optimization of the Text filter (TY to @bomzheg)

* Remove dataclass slots argument in due to the only Python 3.10 has an slots argument

* Fixed mypy

* Update tests

* Disable Python 3.11

* Fixed #1013: Empty mention should be None instead of empty string.

* Added #990 to the changelog

* Added #942 to the changelog

* Fixed coverage

* Update poetry and dependencies

* Fixed mypy

* Remove deprecated code

* Added more tests, update pyproject.toml

* Partial update docs

* Added initial Docs translation files

* Added more changes

* Added log message when connection is established in polling process

* Fixed action

* Disable lint for PyPy

* Added changelog for docs translation
2022-10-02 00:04:31 +03:00
Oleg A
a08c2e750c
Add representation for aiogram exception (#989)
* feat: add repr for aiogram exception

#988

* docs: add changelog

#988

* tests: add representation coverage

#988

* fix: correct test result type

#988
2022-09-11 23:16:47 +03:00
Alex Root Junior
0b5f4d62c7
Prevent to crash polling (#995)
* Prevent to crash polling

* Added changelog
2022-08-30 01:46:19 +03:00
Evgen Fil
40c29a0494
PyPy support (#985)
* Run tests on PyPy (#984)

Remove unnecessary `jobs.build.strategy.max_parallel` attribute

* Workaround `symlink() is not implemented for PyPy on Windows`

* Quote conditions in tests workflow file

* Fix quoting in Poetry installation script

* Adjust timeout when testing on pypy

Running the tests with coverage pytest plugin makes some tests run slower than expected

* Try to fix uvloop build errors on macos-latest

* Try to fix uvloop build errors on macos-latest (2)

* Adjust timeout when testing on pypy (2)

* Increase timeout even more

* Try to fix uvloop build errors on macos-latest (3)

* Update tests.yml, revert changes in test files

Add and improve step names
Merge "Lint code" and "Check code-style" steps
Don't install uvloop on macos when running on pypy
Don't run tests with coverage on pypy
Remove test timeout adjustments

* Fix condition

* Update README, add changelog

* Put environment info (`IS_PYPY`, `IS_WINDOWS`) into environment variables

* Fix conditions
2022-08-30 01:23:43 +03:00
Alex Root Junior
1b9e666557
Update docs 2022-08-14 18:54:43 +03:00
Alex Root Junior
0e0dbe7e59
Deprecate filters factory (#976)
* Deprecate filters factory

* Added changelog

* Update filters usage in docs and examples
2022-08-14 18:40:41 +03:00
Alex Root Junior
c1341ba2df
Added support of Bot API 6.2 (#975)
* Added support of Bot API 6.2
* Added changelog
* Update tests
* Update API version
* Update dependencies, pre-commit config
* Added pytest config
2022-08-14 16:32:29 +03:00
Alex Root Junior
4315ecf1a2
Dev 3.x flat package (#961)
* Move packages

* Added changelog

* Update examples/echo_bot.py

Co-authored-by: Oleg A. <t0rr@mail.ru>

* Rename `handler` -> `handlers`

* Update __init__.py

Co-authored-by: Oleg A. <t0rr@mail.ru>
2022-08-14 01:07:52 +03:00
Daniil Kovalenko
5e7932ca20
Fix default lock kwargs in RedisEventIsolation (#972)
* Fix default lock kwargs in RedisEventIsolation

* Add changelog
2022-08-09 19:48:37 +03:00
ShiroNoHaga
851f7a2a37
Add class helper ChatAction (#803)
* Add class helper ChatAction

* Change using helper to using enum.Enum

* Add test for class ChatAction

* Use black formatting

* Add pull request description to CHANGES

* Add test coverage

* Use AutoName class for enum values

* Move `AutoName` to separate file

* Move inheritance from `str`

* Fix failing mypy

* Delete old actions

Co-authored-by: Evgen Fil <evgfilim1@yandex.ru>
2022-07-09 23:47:11 +03:00
darksidecat
bc5b26de5f
Add __eq__ and __hash__ methods to State class (#928)
* Fix the ability to copy the state, now copying the state will return the same state.

* reformat

* full implement deepcopy with memo dict, add typehints

* Update aiogram/dispatcher/fsm/state.py

Co-authored-by: Oleg A. <t0rr@mail.ru>

* update tests

Co-authored-by: Oleg A. <t0rr@mail.ru>

* remove deepcopy in tests

Co-authored-by: Oleg A. <t0rr@mail.ru>

* remove deepcopy method

Co-authored-by: Oleg A. <t0rr@mail.ru>

* update changes description

Co-authored-by: Oleg A. <t0rr@mail.ru>

* update __eq__  method

Co-authored-by: Oleg A. <t0rr@mail.ru>

* add typehints, tests

* return False for not equal objects
creating FilterObject use getfullargspec that check State equality with `type` and `object` builtins, raising Error in `__eq__` method of State break this behavior

* return NotImplemented for other types

* use `!=` instead of 'not x == y' in tests

Co-authored-by: Oleg A. <t0rr@mail.ru>
2022-07-08 02:26:49 +03:00
Oleg A
70088cdd65
Add full_name shortcut for Chat (#929)
Added full_name for Chat
2022-06-26 01:50:27 +03:00
Alex Root Junior
b8893c0971
#944 Rename "extract()" to "extract_from()" for entities (#945)
* #944 Rename "extract()" to "extract_from()" for entities
2022-06-26 01:36:45 +03:00
Alex Root Junior
fadb11515e
Remove deprecated methods (#943)
* #941 Removed deprecated methods
2022-06-25 22:47:08 +03:00
Alex Root Junior
247ffbef69
3.x Bot API 6.1 (#937)
Added support of Bot API 6.1
2022-06-25 18:14:29 +03:00
Andrew
adfc89f125
Fix type hints for redis TTL params (#922)
* Allow to use `int` and `datetime.timedelta`

* Fix imports

* Added changelog

* Update CHANGES
2022-06-16 21:43:32 +03:00
Kostiantyn Kriuchkov
b3b320c106
Small typo fix (#920)
* Small typo fix

Changed CommandPatterType to CommandPatternType
Supposedly, the implied word is patterN

* Added to CHANGELOG
2022-06-10 11:48:19 +03:00
Alex Root Junior
824b43c436
#901 Fixed false-positive coercing of Union types in API methods (#912)
* #901 Fixed false-positive coercing of Union types in API methods

* Added default value for force_reply
2022-05-14 17:27:36 +03:00
Aleksandr
6ad242399b
#905 Added 3 missing content types (#906)
* Added 3 missing content types

* Added tests for 3 missing content types

* More tests

* Added changelog
2022-05-13 23:52:13 +03:00
Alex Root Junior
f2e02e2a7c
#896 Restrict including routers with strings (#897)
* #896 Restrict including routers with strings
* Remove imports util, bump dependencies
2022-04-25 21:24:58 +03:00
Alex Root Junior
4fb77a3a2a
Added possibility to combine filters or invert result (#895)
* Added possibility to combine filters or invert result
2022-04-24 04:19:19 +03:00
Alex Root Junior
781e30c25b
Fixed changelog 2022-04-19 22:18:10 +03:00
Alex Root Junior
0d650fc38c
Release 3.0.0-beta.3 2022-04-19 22:16:35 +03:00
Alex Root Junior
497436595d
[3.x] Bot API 6.0 (#890)
* Base implementation

* Bump license

* Revert re-generated tests

* Fix tests, improved docs

* Remove TODO

* Removed unreachable code

* Changed type of `last_synchronization_error_date`

* Fixed wrongly cleaned code
2022-04-19 22:03:24 +03:00
Alex Root Junior
286cf39c8a
Beta 3 (#884)
* Rework middlewares, separate management to `MiddlewareManager` class

* Rework middlewares

* Added changes description for redis

* Added changes description for redis

* Fixed tests with Redis // aioredis replacement

* Changed msg.<html/md>_text attributes behaviour

* Added changelog for spoilers

* Added possibility to get command magic result as handler arguments
2022-04-16 19:07:32 +03:00
Oleg A
ffe9506dc5
parse_mode should be UNSET instead of None (#877)
* fix: parse_mode should be UNSET instead of None

#876

* docs: add changelog

* docs: fixed changelog name

* fix: changelog typo fix
2022-04-06 04:19:31 +03:00
Alex Root Junior
b8aa03bc38
Added changelog changed validator (#873)
* Added changelog changed validator
2022-03-27 01:36:05 +02:00
Alex Root Junior
880dd153d3
Build changelog 2022-02-19 02:01:23 +02:00
Alex Root Junior
7776cf9cf6
Bot API 5.7 and some new features (#834)
* Update API, added some new features

* Fixed unknown chat_action value

* Separate events from dispatcher messages

* Disabled cache for I18n LazyProxy

* Rework events isolation

* Added chat member status changed filter, update Bot API 5.7, other small changes

* Improve exceptions in chat member status filter

* Fixed tests, covered flags and events isolation modules

* Try to fix flake8 unused type ignore

* Fixed linter error

* Cover chat member updated filter

* Cover chat action sender

* Added docs for chat action util

* Try to fix tests for python <= 3.9

* Fixed headers

* Added docs for flags functionality

* Added docs for chat_member_updated filter

* Added change notes

* Update dependencies and fix mypy checks

* Bump version
2022-02-19 01:45:59 +02:00
darksidecat
1b8e22d90f
Fix: close #822 Fix exception filter (#827)
* fix exceptions filters

* Update CHANGES/827.bugfix

Co-authored-by: Alex Root Junior <jroot.junior@gmail.com>

Co-authored-by: Alex Root Junior <jroot.junior@gmail.com>
2022-02-12 01:38:01 +02:00
Daniil Kovalenko
6e39f9fada
Fix unexpected behavior of sequences in StateFilter (#791)
* Fix sequence check behavior in StateFilter

* Add sequence cases to StateFilter tests

* Add the changelog
2021-12-29 03:39:28 +02:00
Alex Root Junior
7c14a6b16b
#785: Added possibility to pass kwargs into webhook handler (#789) 2021-12-19 06:18:55 +02:00
Alex Root Junior
1634dc1162 Bump version, small changes in docs 2021-12-12 18:59:57 +02:00
Alex Root Junior
2620a6547c Rework session DI and files path wrapper 2021-12-12 18:15:36 +02:00
Alex Root Junior
9ec689b562
[3.x] Bot API 5.5 (#777)
* Re-generate API, cover changes

* Added patchnotes
2021-12-12 17:21:01 +02:00
Daniil Kovalenko
a48a32ad16
Fix ChatMemberHandler import in __init__.py (#751)
* Fix ChatMemberHandler import in __init__.py
2021-11-24 18:20:55 +02:00
Alex Root Junior
d7be55bc58
Extended MagicFilter with aiogram-specific operation (#759)
* Extend MagicFilter with aiogram-specific operation

* Added tests

* Added changes annotation and update docs
2021-11-24 06:00:37 +02:00
Alex Root Junior
dee274c0f5 Bump changelog. 2021-11-10 23:58:50 +02:00
darksidecat
19aa498682
Fix resolve filters chain (#736)
* filter resolving don`t need children routers filters

* add patchnote

* Rename 735.bugfix to 736.bugfix

* add tests for routers chains

* delete unused Router.chain property
2021-11-08 23:27:20 +02:00
Alex Root Junior
9b43a33b7f
Dev 3.x api 5.4 (#744)
* Re-generate API

* Added new modules

* Added handling new event type and approve/decline aliases for ChatJoinRequest

* Fixed code-coverage

* Bump API version

* Added patch-notes
2021-11-08 02:37:37 +02:00
darksidecat
5f07cb3d06
Close bots sessions after emit_shutdown (#734)
* Close bots sessions after emit_shutdown

* avoid unclosed connections if get exception in emit_shutdown

* add patchnote
2021-10-23 01:04:54 +03:00
darksidecat
42cba8976f
Bound filters resolving rework, filters with default argument (#727)
* bound filters resolving rework, filters with default argument

* bound filters resolving rework, filters with default argument

* Update 727.misc

* clarification of the comment about skipping filter

* fix data transfer from parent to included routers filters

* fix checking containing value in generator

* Update docs/dispatcher/filters/index.rst

Co-authored-by: Alex Root Junior <jroot.junior@gmail.com>

* Update 727.misc

* reformat

* better iterable types

Co-authored-by: Alex Root Junior <jroot.junior@gmail.com>
2021-10-12 22:29:57 +03:00
Alex Root Junior
f97367b3ee More docs 2021-10-12 01:11:53 +03:00
Alex Root Junior
3931253a88 Added changelog for recent changes 2021-10-11 01:44:55 +03:00
Alex Root Junior
7405db2ad3
Enable Python 3.10 for tests (#719)
* Try to test on Python 3.10

* Prevent to YAML type cast

* Bump poetry

* Removed async_lru

* Disable fail-fast on tests

* Fixed typing

* Added patch-notes
2021-10-06 22:49:14 +03:00
darksidecat
99c99cec78
Add middleware for logging outgoing requests (#716)
* add middleware for logging outgoing requests

* add middleware description

* fix RequestMiddlewareType callable signature

* undo `fix`, update signatures in tests

* remove repeating code

* accept proposed changes

Co-authored-by: Alex Root Junior <jroot.junior@gmail.com>

* update tests

* add patchnote

Co-authored-by: Alex Root Junior <jroot.junior@gmail.com>
2021-10-06 00:57:26 +03:00
Alex Root Junior
45a1fb2749
Improve filters factory resolve error (#718) 2021-10-06 00:10:46 +03:00