Commit graph

297 commits

Author SHA1 Message Date
Alex Root Junior
5b20f81654
Formatting tools (#1172)
* Added base implementation of formatting utility

* Refactored and added docs

* Added changelog

* Coverage
2023-06-10 20:47:45 +03:00
Nikita
c418689dc1
Fix markdown spoiler (#1176)
* Fix spoiler

* added a explanation

* Updated the TestTextDecoration.test_apply_single_entity

---------

Co-authored-by: = <=>
2023-05-13 14:10:15 +03:00
Alex Root Junior
cf269e15f4
Added create_channel_bot_link function 2023-04-23 03:30:48 +03:00
Alex Root Junior
62a9f0cb6e
Removed Text filter (#1170)
* Removed Text filter

* Added changelog

* Clean docs

* Fixed pytz
2023-04-22 20:21:17 +03:00
Alex Root Junior
942ba0d520
Forum topic in FSM (#1161)
* Base implementation

* Added tests, fixed arguments priority

* Use `Optional[X]` instead of `X | None`

* Added changelog

* Added tests
2023-04-22 19:35:41 +03:00
Alex Root Junior
1538bc2e2d
Bot API 6.7 (#1168)
* Added 6.7 features

* Update after release

* Added tests

* Added changelog
2023-04-22 18:09:59 +03:00
Alex Root Junior
aad2de4324
Improve callback data serialization (#1163)
* Improve callback data serialization

* Added tests and changelog
2023-04-21 00:17:28 +03:00
Alex Root Junior
fb3076d40f
Fix compatibility with Python 3.8-3.9 (#1162)
* Try to fix compatibility with Python 3.8-3.9

* Added changelog
2023-04-21 00:17:06 +03:00
Aleksandr
8d2bf20fb8
Added missing FORUM_TOPIC_EDITED value to content_type property (#1160)
* Added missing FORUM_TOPIC_EDITED value to content_type property

* Added changelog to CHANGES

* Fixed aiogram/filters/magic_data.py:21:41: C416 Unnecessary `dict` comprehension (rewrite using `dict()`)

* Resolve  #1155: Different signature of startup/shutdown events on polling and webhooks  (#1156)

* Code refactor
- Use 'or' istead of 'A if A else B'
- Raise new error from catched error: raise Error from e

* Fixed signature of startup/shutdown events
- Include the **dispatcher.workflow_data as the handler arguments

* Update deep_linking basic examples (#1151)

* skip if current router does not have observer for custom event (#1147)

* skip if current router does not have observer for custom event

* Test custom event in router

* Feature changelog file

* fix style

* Change `InlineQueryResultType.MPEG` to more correct (#1146)

* Change `InlineQueryResultType.MPEG` to `InlineQueryResultType.MPEG4GIF`

* Change regexp for parse entities

* Use code generator to fix types

* Add changelog

* fix(docs): fix wrong page link in docs (#1154)

* storage cleanup (#1144)

* storage cleanup

* storage cleanup

* Update API docs

* Added tests

* Fix tests

---------

Co-authored-by: Alex Root Junior <jroot.junior@gmail.com>
Co-authored-by: Łukasz Tshipenchko <dev@zxc.sx>
Co-authored-by: Max Kotsiuruba <81016938+A5KET@users.noreply.github.com>
Co-authored-by: Andrey Tikhonov <andrey.tikhonov@quantori.com>
Co-authored-by: Desiders <47452083+Desiders@users.noreply.github.com>
Co-authored-by: Daniil <hum4noid@yandex.ru>
Co-authored-by: RootShinobi <111008396+RootShinobi@users.noreply.github.com>
2023-04-16 22:41:49 +03:00
RootShinobi
dbaf6fabcb
storage cleanup (#1144)
* storage cleanup

* storage cleanup
2023-04-08 18:01:11 +03:00
Andrey Tikhonov
268b7e759d
skip if current router does not have observer for custom event (#1147)
* skip if current router does not have observer for custom event

* Test custom event in router

* Feature changelog file

* fix style
2023-04-08 17:39:48 +03:00
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
6570d0bab1
Bot API 6.6 (#1139)
* Added basic support of Bot API 6.6

* Update descriptions

* Added StickerFormat enum

* Bump version

* Refresh from docs

* Fixed CommandStart

* Fixed files uploading

* Cover new functionality

* Added changelog

* Update texts
2023-03-11 02:17:47 +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
Dmitry Anfimov
184ee1fbf8
[3.x] Check status code when downloading file (#1079)
* Check status code when downloading file and raise an error if someting bad happends

* Style fixes

* Add doc

* Use "towncrier create <issue>.<type>" for creating file
2023-02-12 02:56:11 +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
84bc0e347b
Merge remote-tracking branch 'origin/dev-3.x' into dev-3.x 2023-02-12 01:27:39 +02:00
sheldy
bac90c8fa7
add new method for Router (#1117)
* add new method for Router

* add type hint, tests, changes file

* update tests

* Update aiogram/dispatcher/router.py

* Update tests/test_dispatcher/test_router.py

* Update router.py

---------

Co-authored-by: Alex Root Junior <jroot.junior@gmail.com>
2023-02-12 01:26:49 +02:00
Alex Root Junior
56097d6b53
Bump dependencies 2023-02-12 01:24:18 +02:00
Alex Root Junior
021ae5626f
Replaced error TypeError: TelegramEventObserver.__call__() got an unexpected keyword argument '<name>' with a more understandable (#1114)
* Explain why keyword filters is not supported

* Added changelog
2023-02-05 16:13:06 +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
3428924d63
ignore_case fix for aiogram.filters.command.Command() (#1107)
* ignore_case fix

* Create 1106.bugfix.rst

* better fix, added tests

* Update 1106.bugfix.rst

* fix, attempt to satisfy the linter

* not on purpose, single quotes in tests
2023-02-04 19:52:36 +02:00
Alex Root Junior
f4ce4431f9
Migrate to hatchling (#1095)
* Migrate to hatchling instead of poetry, ruff instead of flake8

* Migrate to hatchling instead of poetry, ruff instead of flake8

* Update tests suite

* venv?

* -m venv?

* Change dependencies

* Remove venv

* Change mypy config

* Added changelog

* Mark uvloop incompatible with pypy

* Update release script

* Use internal caching for dependencies

* Re-disable cov branches

* Added contributing guide
2023-01-12 02:49:58 +02:00
Alex Root Junior
04ccb390d5
Callback answer feature (#1091)
* Added callback answer feature

* Fixed typehints and tests

* Make context manager in tests compatible with Python 3.8
2023-01-08 16:49:34 +02:00
Alex Root Junior
d8e943424a
Merge remote-tracking branch 'origin/dev-3.x' into dev-3.x 2023-01-07 22:36:09 +02:00
Alex Root Junior
730485e43a
Added full support of Bot API 6.4 (#1088)
* Remove warnings about pytest asyncio mode

* Update Bot API to 6.4

* Bump version

* Added changelog

* Update translations
2022-12-30 22:44:25 +02:00
Alex Root Junior
655b3a2d48
Remove warnings about pytest asyncio mode 2022-12-30 16:10:06 +02:00
Alex Root Junior
3ea73fbbbd
Add missing shortcuts, new enums, reworked old stuff (#1070)
* Render shortcuts

* Render docs

* Added enumerations

* Added docs

* Use enums, removed Helper

* Bump butcher

* Added InputMediaType enum

* Added MaskPositionPoint, InlineQueryResultType enums

* Update texts

* Added StickerType enum

* Cover tests

* Update docs

* Fixed imports

* Re-enabled all pre-commit hooks
2022-12-04 03:05:49 +02:00
Alex Root Junior
d034c1ba9f
Adding new code-generator (Butcher) (#1069)
* Re-generate types

* Re-generate methods (only attributes)

* Added enums

* Base init generator

* Added butcher configs

* Fixed tests, bump butcher

* Added changelog

* Added enum docs

* Added templates for docs index

* Re-generate bot class, remove deprecated methods
2022-11-21 01:06:55 +02:00
Alex Root Junior
b287551590
Bot API 6.3 (#1063)
* Added API changes

* Added changelog

* Oops. Move changelog

* Update tests

* Remove experimental

* Added message content type

* Update message aliases

* Update changes

* Update texts

* Bump version

* Remove versionadded badge
2022-11-06 14:28:21 +02:00
sheldy
b8cd06fd6f
add method for get user mention (#1049)
* add new method

* Create 1049.feature.rst

* update test_user

* after black and isort using

* after black and isort using

* adding new tests

* fix test

* update tests

* update test

* using create_tg_link function instead of new func

* Update user.py

* Update aiogram/types/user.py

Co-authored-by: Alex Root Junior <jroot.junior@gmail.com>
2022-11-02 22:40:19 +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
5c3f442866
Reformat code 2022-10-22 01:02:56 +03:00
Danipulok
8b0ca520f3
Add missing Message methods (#1030)
* Add `Message.forward` method

* Add docs

* Add other methods

* Fix

* Add changes

* Fix lints

* Update CHANGES/1030.feature.rst

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

Co-authored-by: Alex Root Junior <jroot.junior@gmail.com>
2022-10-22 00:29:29 +03:00
Alex Root Junior
01028f10eb
Small fix in translated pages 2022-10-18 02:12:24 +03:00
Alex Root Junior
b0f251a8b8
Combining filters (again) (#1018)
* Added explicit logic filters, added slots to all other filters

* Update translation files

* Update docs
2022-10-03 01:23:22 +03:00
Alex Root Junior
efae83d337
Added more details when server send invalid response 2022-10-02 19:22:12 +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
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
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
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