* 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>
* 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
* 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
* Regenerate API
* Update code
* Fixed command filter for photos
* Fix tests so they are able to run
* Test new and renamed API methods
* Reformat files
* Fix outer_middleware resolution (#637) (#640)
* Fix outer_middleware resolution (#637)
* Reformat files
* Reorder routers when resolve middlewares
Co-authored-by: Alex Root Junior <jroot.junior@gmail.com>
* Added possibility to use empty callback data factory filter
* Rename KeyboardConstructor to KeyboardBuilder
* Fixed type
Co-authored-by: evgfilim1 <evgfilim1@yandex.ru>
Upgrade architecture + 5.0 Bot API (#469)
* Moved `methods`, `types` and `client` to root package
* Removed update handler from routers to dispatcher
* Reworked events propagation mechanism to handlers
* Reworked inner middlewares logic (very small change)
* Updated to Bot API 5.0
* Initial migration from MkDocs to Sphinx + config for readthedocs
Resolves#302. We decided to use sentinel pattern (https://python-patterns.guide/python/sentinel-object/) as a solution, but got a few problems with plain `object()`, so instead we use unittest.mock.sentinel and we hope it won't cause side effects.
Most of work done via tg-codegen (https://github.com/aiogram/tg-codegen/pull/1), so it's good to review only implementation of sentinel, processing sentinel in `prepare_parse_mode`, changes in base method model and little test fixes.