Commit graph

234 commits

Author SHA1 Message Date
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
3ad16be507
Implemented handler flags feature (#728)
* Implemented handler flag feature

* Cover tests
2021-10-25 23:37:14 +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
7c6cf3c122 Rework FSM storage key 2021-10-11 01:30:19 +03:00
Alex Root Junior
3f2bcbd8d1 Added MagicData filter 2021-10-11 01:27:07 +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
Alex Root Junior
c19cbc6a5f Added html/md_text properties to Message object and refactor I18n context 2021-09-23 23:45:22 +03:00
Alex Root Junior
e4046095d7
Dev 3.x i18n & improvements (#696)
* Added base code and make code improvements
* Auto-exclude coverage for `if TYPE_CHECKING:`
* Fixed current coverage
* Cover I18n module
* Update pipeline
* Fixed annotations
* Added docs
* Move exceptions
* Added tests for KeyboardBuilder and initial docs
* Remove help generator (removed from sources tree, requires rewrite)
* Added patch-notes #698, #699, #700, #701, #702, #703
2021-09-22 00:52:38 +03: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
Andrey Tikhonov
90b3a99039
iter states in states group (#666)
* iter states in states group

* fix type hint

* remove empty line

* add changes for doc
2021-09-05 23:55:38 +03:00
Alex Root Junior
18a93aab60
Disabled ContentTypesFilter by default (#668)
* Disabled ContentTypesFilter by default

* Rename file

* Update docs
2021-08-20 02:39:03 +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
darksidecat
c1f605c6f5
add aliases for edit/delete reply markup to Message (#662)
* add aliases for edit/delete reply markup to Message

* add towncrier patch note

* add missed towncrier patch note description
2021-08-17 00:11:47 +03:00
darksidecat
04bbc8211c
add stategroup filter (#659) 2021-08-17 00:09:11 +03:00
darksidecat
71eb5fc44e
fix #660 prepare parse mode for input_message_content (#661)
* fix #660 prepare parse mode for input_message_content of InlineQueryResult

* remove redundant get

* black lint

* add towncrier patch note
2021-08-17 00:08:36 +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
4f2cc75951
Global filters for router (#644)
* Bump version

* Added more comments

* Cover registering global filters

* Reformat code

* Add more tests

* Rework event propagation to routers mechanism. Fixed compatibility with Python 3.10 syntax (match keyword)

* Fixed tests

* Fixed coverage

Co-authored-by: evgfilim1 <evgfilim1@yandex.ru>
2021-07-31 23:34:09 +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
evgfilim1
4599913e18
Fix not all args are passed to handler function invocation (#633) 2021-07-18 14:10:51 +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
ac1f0efde8 Make endless long-polling 2021-06-19 01:16:51 +03:00
Alex Root Junior
5296724a0f Small changes in tests 2021-06-15 02:01:57 +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
Aleksandr
32bc05130f
Added get_url() method for Message object and shifted_id property for Chat object (#585)
* Added get_url() method for Message object and shifted_id property for Chat object

* Added missing closing bracket to shifted_id description

* Added basic groups to skipped pattern, simplified code

* Return None instead of raising TypeError, removed redundant f-string

* Change get_url typing to Optional[str]

* Better shifted_id method

* get_url tests added

* Added whitespace (E226)

* Code format with black

* Parametrized test
2021-06-05 13:37:01 +03:00
Alex Root Junior
79f21416c8 Added lost files 2021-05-25 01:00:58 +03:00
Alex Root Junior
f022b4441c Added more aliases, refactor CallbackData factory, added base exceptions classification mechanism 2021-05-25 00:56:44 +03:00
Alex Root Junior
9cf189ffd2 Cover 100% 2021-05-13 22:04:10 +03:00
Alex Root Junior
03ccebd8be Cover base and memory storage 2021-05-13 01:54:07 +03:00
Alex Root Junior
7dd80d281f Added lost files 2021-05-12 23:56:03 +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
322a98bc1b More docs 2021-02-07 18:43:43 +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
Martin Winks
566b7ff282
fix(aiohttp-session): respect UNSET sentinel (#387)
* fix(aiohttp-session): respect UNSET sentinel

check if value is `UNSET` while building http request.

* Cover UNSET by tests

Co-authored-by: Alex Root Junior <jroot.junior@gmail.com>
2021-01-25 01:00:06 +02:00
sabbyX
7ba153c7b1
HandlerObject: Unwrap handler before awaitable check (#435)
* Unwrap handler before awaitable check

* Remove unused 'type:ignore' comment

* Add wrapped handler tests
2020-10-04 18:26:34 +03:00
Alex Root Junior
f5684aef07 Update default parse_mode propagation. 2020-06-14 18:18:29 +03:00
Alex Root Junior
7844a663a9 Bump Telegram Bot API version
Change request timeout mechanism
Bump package version
2020-06-14 17:14:10 +03:00
Alex Root Junior
b78f1cdb17 Merge branch 'dev-3.x-unset_parse_mode' of https://github.com/b0g3r/aiogram into b0g3r-dev-3.x-unset_parse_mode
# Conflicts:
#	aiogram/api/methods/base.py
#	aiogram/api/methods/edit_message_caption.py
#	aiogram/api/methods/edit_message_text.py
#	aiogram/api/methods/send_animation.py
#	aiogram/api/methods/send_audio.py
#	aiogram/api/methods/send_document.py
#	aiogram/api/methods/send_message.py
#	aiogram/api/methods/send_photo.py
#	aiogram/api/methods/send_video.py
#	aiogram/api/methods/send_voice.py
#	aiogram/api/types/__init__.py
#	aiogram/api/types/inline_query_result_audio.py
#	aiogram/api/types/inline_query_result_cached_audio.py
#	aiogram/api/types/inline_query_result_cached_document.py
#	aiogram/api/types/inline_query_result_cached_gif.py
#	aiogram/api/types/inline_query_result_cached_mpeg4_gif.py
#	aiogram/api/types/inline_query_result_cached_photo.py
#	aiogram/api/types/inline_query_result_cached_video.py
#	aiogram/api/types/inline_query_result_cached_voice.py
#	aiogram/api/types/inline_query_result_document.py
#	aiogram/api/types/inline_query_result_gif.py
#	aiogram/api/types/inline_query_result_mpeg4_gif.py
#	aiogram/api/types/inline_query_result_photo.py
#	aiogram/api/types/inline_query_result_video.py
#	aiogram/api/types/inline_query_result_voice.py
#	aiogram/api/types/input_media_animation.py
#	aiogram/api/types/input_media_audio.py
#	aiogram/api/types/input_media_document.py
#	aiogram/api/types/input_media_photo.py
#	aiogram/api/types/input_media_video.py
#	aiogram/api/types/input_text_message_content.py
2020-06-14 16:27:39 +03:00
Martin Winks
aed3642385
feat(helpers): implement new descriptor with default value getter (#336)
* feat(helpers): implement new descriptor with default value getter

* perf(descriptor): use weakref

refuse weak reference to a value in WeakRefDict instead of polluting instance namespace

* chore(descriptor): rename descriptor class

rename `DefaultProperty` to `Default`

* style(fmt): lint code
2020-05-31 18:01:28 +03:00
lyteloli
9f11afda5b
Added fields to ChatMember (#340)
* Added fields to ChatMember
* Added ChatMemberStatus helper
2020-05-29 22:28:12 +03:00
Gabben
de3c5c1a8d
Download feature and URLInputFile (#332)
* Fix How to upload docs

* Rename BaseBot to Bot

* Add download_file method

* Add download method

* Add URLInputFile

* Add Downloadable to __init__ and __all__

* Fix ImportError for Python 3.7

* Related pages

* Improving docs

* Some speed

* staticmethod to classmethod
2020-05-27 01:25:13 +03:00
Alex Root Junior
b69bd74d0c Rename update_processing_context.py to user_context.py 2020-05-26 22:00:51 +03:00
Alex Root Junior
7f26ec9935 Implement new middlewares 2020-05-26 00:23:35 +03:00
Gabben
b04a14072e Improving test_pre_checkout_query 2020-05-17 17:05:30 +05:00
Gabben
a6f83599c8 Improving test_inline_query 2020-05-17 17:03:35 +05:00
Gabben
66ecc6996d Improving test_callback_query 2020-05-17 17:01:06 +05:00