Commit graph

46 commits

Author SHA1 Message Date
Alex Root Junior
fea1b7b0a3
Reworked request builder (#1142)
* Reworked request builder

* Added more default values

* Update tests

* Fixed timestamp

* Fixed Py3.8 support

* Describe changes
2023-03-11 20:46:36 +02:00
Alex Root Junior
d0b7135ca6
Reworked graceful shutdown (#1124)
* Reworked graceful shutdown

* Remove special errors from polling process

* Update dependencies

* Coverage

* Added changelog
2023-02-18 15:46:28 +02:00
Alex Root Junior
58868ec627
Added possibility to reply into webhook with files (#1120) 2023-02-12 02:00:42 +02:00
Alex Root Junior
e59d4652bf
Added full support of Bot API 6.5 (#1112)
* Added full support of Bot API 6.5

* Shut up, linters (Fixed errors)

* Oops. Added lost files.

* Fixed tests

* Added changes description

* Update description from docs

* Fixed anchors

* Update Butcher

* Added danger zone to changelog

* Type
2023-02-04 19:53:32 +02:00
Alex Root Junior
655b3a2d48
Remove warnings about pytest asyncio mode 2022-12-30 16:10:06 +02:00
Alex Root Junior
6db3778c6f
Tests on Python 3.11 (#1044)
* Try to use Python 3.11

* Remove `asynctest` dependency

* Fixed aiofiles tests

* Added changelog
2022-10-26 22:21:04 +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
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
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
Alex Root Junior
1c2c7fd88c
Webhook integration in 3.0 (#737)
* Added base webhook implementation and example
* Added example
* Enable on_startup callback
* Correctly handle response into webhook (silent call)
* Fixed State filter
2021-11-08 23:20:12 +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
Alex Root Junior
cfd2a9968e
Reworked handlers in use (#682)
* Reworked handlers in use util

* Added patch-notes
2021-09-07 01:04:33 +03:00
Alex Root Junior
9238533e93
Feature/rework middlewares chain (#664)
* Reworked middlewares chain

* Added description for router name

* Added patch-notes

* Fixed type hints
2021-08-17 00:43:27 +03:00
Oleg A
f2f276b8cf
refactor: remove redundant pytest marks (#654) 2021-08-03 23:40:14 +03:00
Alex Root Junior
c3844bb18f Added detection of API Errors and fixed coverage 2021-08-01 00:34:50 +03:00
Alex Root Junior
ac2b0bb198
[3.x] Bot API 5.3 + Improvements (#618)
* 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>
2021-07-29 00:40:50 +03:00
Forevka
125fc22ff9
Added ability to specify which update bot need to receive and process while using polling mode (#617)
* provide allowed_updates in polling mode
2021-07-05 01:41:27 +03:00
Alex Root Junior
83d6ab48c5
Backport and improvements (#601)
* Backport RedisStorage, deep-linking
* Allow prereleases for aioredis
* Bump dependencies
* Correctly skip Redis tests on Windows
* Reformat tests code and bump Makefile
2021-06-15 01:45:31 +03:00
Alex Root Junior
9cf189ffd2 Cover 100% 2021-05-13 22:04:10 +03:00
Alex Root Junior
74db2c47e6 Small changes in documentation 2021-05-12 23:00:12 +03:00
Alex Root Junior
0e72d8e65b
[3.0] Bot API 5.1 + FSM + Utils (#525)
* Regenerate corresponding to Bot API 5.1

* Added base of FSM. Markup constructor and small refactoring

* Fix dependencies

* Fix mypy windows error

* Move StatesGroup.get_root() from meta to class

* Fixed chat and user constraints

* Update pipeline

* Remove docs pipeline

* Added GLOBAL_USER FSM strategy

* Reformat code

* Fixed Dispatcher._process_update

* Bump Bot API 5.2. Added integration with MagicFilter

* Coverage
2021-05-11 23:04:32 +03:00
Alex Root Junior
d189853737 Increase timeout for MacOS pipelines. 2021-02-07 19:20:37 +02:00
Alex Root Junior
4008a3114d
Upgrade architecture + 5.0 Bot API (#469)
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
2021-01-26 21:20:52 +02:00
Alex Root Junior
7f26ec9935 Implement new middlewares 2020-05-26 00:23:35 +03:00
mpa
4124770b0e refactor(handler): rename observers
Rename observers but with backward compatibility, relevant documentation
2020-05-10 03:02:31 +04:00
Alex Root Junior
0bd7fc2c7e Fix async test for py3.7 2020-02-22 23:12:42 +02:00
Alex Root Junior
eea75b8e9a Fix typing 2020-02-22 01:28:46 +02:00
Alex Root Junior
3f5c51e805 Add webhook feed method to Dispatcher 2020-02-22 00:59:10 +02:00
Alex Root Junior
690223f4e0 Try prevent to attr-defined mypy error 2020-01-11 21:33:45 +02:00
Alex Root Junior
8e5cb067df Use AsyncMock with python 3.8 instead of asynctest 2020-01-11 21:15:46 +02:00
Alex Root Junior
e12aca9046 Move prepare_<field> to single module and add tests for default parse_mode 2019-12-26 01:35:21 +02:00
Alex Root Junior
a2cb637ed9 Make Dispatcher._run_polling public 2019-12-26 00:00:53 +02:00
jrootjunior
9dc1e9ff1a Rename run to run_polling 2019-12-12 11:58:21 +02:00
jrootjunior
acbe1f81b6 Cover Dispatcher.run 2019-12-11 15:49:42 +02:00
jrootjunior
90a035ed29 Cover Dispatcher._run_polling 2019-12-11 15:47:08 +02:00
jrootjunior
dcbf9b2760 Mock Dispatcher._polling 2019-12-11 15:39:50 +02:00
jrootjunior
2451b88ff5 Disable old API exceptions 2019-12-11 15:25:28 +02:00
jrootjunior
1723a83697 Cover Dispatcher.process_update 2019-12-11 15:22:52 +02:00
Alex Root Junior
db397e3a05 Rework polling and start covering 2019-12-10 01:14:58 +02:00
Alex Root Junior
38c725db46 Fix test "test_dispatcher.test_dispatcher.TestDispatcher::test_feed_raw_update" 2019-12-09 21:39:06 +02:00
Alex Root Junior
e37395b161 Maximum coverage 2019-11-28 23:52:02 +02:00
Alex Root Junior
6fadb8feb2 Add Dispatcher.feed_raw_update for processing raw updates 2019-11-28 23:48:33 +02:00
Alex Root Junior
c674b5547b Add token validation util, fix deepcopy of sessions and make bot hashable and comparable 2019-11-28 23:12:44 +02:00
jrootjunior
c23ee36ece Reformat code 2019-11-26 11:41:49 +02:00
jrootjunior
55496ab9ca Partially cover dispatcher 2019-11-26 11:41:23 +02:00