* Add deepsource config
* Update Badges
* Update Badges some more
* Stupid change to trigger analysis of all files
* Try to get ignore right
* Update badges again
* Get started on fixing issues
* Fix some more issues
* Remove more plank lines
* Docs for de_json/list & to_dict/json
* Some improvements from deepcode.ai
* Some more improvements
* Some more improvements
* More docstrnigs & let's run DS on the tests just for fun
* Autofix issues in 10 files
Resolved issues in the following files via DeepSource Autofix:
1. tests/conftest.py
2. tests/test_bot.py
3. tests/test_commandhandler.py
4. tests/test_conversationhandler.py
5. tests/test_dispatcher.py
6. tests/test_filters.py
7. tests/test_inputmedia.py
8. tests/test_messagehandler.py
9. tests/test_official.py
10. tests/test_persistence.py
* Some more improvements for tests, but that shall be enough
* Some more docstrings for functions
* Some minor stuff, try to fix tests
* Update DS config
* Still more docs
* Doc fixes
* More fixes
* Fix: indent docstring
* Some fixes
* Revert "Stupid change to trigger analysis of all files"
This reverts commit dd46c260
* Review
Co-authored-by: deepsource-autofix[bot] <62050782+deepsource-autofix[bot]@users.noreply.github.com>
Co-authored-by: Poolitzer <25934244+Poolitzer@users.noreply.github.com>
* Test: let's see
* Test: let's see, now in the correct place
* Fix: Explicitly return None in else clause
also documented this behaviour clearly in the docstring
* add link in doc
Co-authored-by: Bibo-Joshi <hinrich.mahler@freenet.de>
* Fix: remove unnecessary else statement
Co-authored-by: Bibo-Joshi <hinrich.mahler@freenet.de>
* asking the test what is wrong with them
* fix botscore_not_modified tests for good
* xfail game tests due to race conditions
* address review (add a comment)
* fix xfail marker
* address review
* simplify expression
* Feat: add pattern arg to ChosenInlineResultHandler
* Fix: remove unnecessary if clause
the attribute must be present, since it's not optional.
* Fix: wrong type documentation
Co-authored-by: Bibo-Joshi <hinrich.mahler@freenet.de>
* Fix: Addressing code review
small documentation fixes, and moving one test.
* Fix: link to matches
Co-authored-by: Bibo-Joshi <hinrich.mahler@freenet.de>
* Fix: also link here
Co-authored-by: Bibo-Joshi <hinrich.mahler@freenet.de>
* [#2526] set data['send_phone_number_to_provider'] from corresponding variable
* [#2526] Add myself to AUTHORS.rst
* Add unit test
Co-authored-by: Hinrich Mahler <hinrich.mahler@freenet.de>
* mark some occasionally failing tests as flaky
* fix test which was failing locally for some reason
* Don't fail tests if they've exceeded the timeout
* This reverts commit 1d0f982e95.
* remove flaky on two tests as per review
* the end of timeout failures, hopefully.
* first run successful. Fixing pre-commit to trigger 2nd run.
* Bump API Version to v5.2
* InputInvoiceMessageContent & simplify *Markup.__eq__ on the fly
* Updates to send_invoice
* InlineQuery updatees and new parameter for InlineQueryhandler
* VCScheduled - not integrated into Message yet
* Bump requirements-dev.txt versions
* Message.voice_chat_scheduled & new Filters.status_update.vcs
* Some doc updates
* Review
* All praise harshil, the god of finding typos :)
* Review
* More warnings
* Warn if number of workers < one
Signed-off-by: starry69 <starry369126@outlook.com>
* improve warning message
Signed-off-by: starry69 <starry369126@outlook.com>
* warn if converstation handler return unknown state
Signed-off-by: starry69 <starry369126@outlook.com>
* Show handler name and state aswell, in warning
Signed-off-by: starry69 <starry369126@outlook.com>
* minor nitpick
Signed-off-by: starry69 <starry369126@outlook.com>
* new filter and more tests!
* document forward filter better, fix a test.
* Minor formulation nitpicking
Co-authored-by: Hinrich Mahler <hinrich.mahler@freenet.de>
* Change default handling, update signatures, get existing tests to pass.
* Try running tests on ubuntu 18.04
* Roll back
* Rework check_shortcut_call tests
* Further improve check_shortcut_call tests
* Start on defaults-checks for shortcuts, get it working for test_message
* Add check_shortcut_defaults to all other shortcut tests
* Some fine tuning
* Add defaults checking for bot methods
* Missing tests for TestCallbackQuery
* Test edit_message_media with defaults & some comments
* Fix cryptography requirement
* drop debug prints
* Remove debug prints
* Another try
* Try to fix coverage & logs
* Rearrange test order
* increase coverage
* Try to fix coverage reports
* address review
* Adapt tests like in #2386
* fix CI
* fix CI
* Make cryptography optional
* Try fixing CI
* Try some more
* Update pytest, mypy & pyupgrade, refactor test_meta, hope that things start to work
* Fix filterwarnings
* Mama mia! Here we go again!
* Add stupid debug prints
* A new hope
* Render-fixes for BP
* docs: fix simple typo, submition -> submission (#2260)
There is a small typo in tests/test_bot.py.
Should read `submission` rather than `submition`.
* Type on rawapibot.py docstring
* typo
* Typo: Filters.document(s)
* Typo fix
* Doc fix for messageentity (#2311)
* Add New Shortcuts to Chat (#2291)
* Add shortcuts
* Add a note
* Add run_async Parameter to ConversationHandler (#2292)
* Add run_async parameter
* Update docstring
* Update test to explicitly specify parameter
* Fix test job queue
* Add version added tag to docs
* Update docstring
Co-authored-by: Poolitzer <25934244+Poolitzer@users.noreply.github.com>
* Doc nitpicking
Co-authored-by: Poolitzer <25934244+Poolitzer@users.noreply.github.com>
Co-authored-by: Hinrich Mahler <hinrich.mahler@freenet.de>
* Fix rendering in messageentity
Co-authored-by: Bibo-Joshi <hinrich.mahler@freenet.de>
Co-authored-by: zeshuaro <joshuaystang@gmail.com>
Co-authored-by: Poolitzer <25934244+Poolitzer@users.noreply.github.com>
* fix: type hints for TelegramError
changed :class:`telegram.TelegramError` to :class:`telegram.error.TelegramError`
* fix: the error can be more then just a Telegram error
* Doc fix for inlinekeyboardbutton.py
added missing colon which broke rendering
* fix: remove context argument and doc remark
look at us already being in post 12
* use rtd badge
* filters doc fixes
* fix some rendering
* Doc & Rendering fixes for helpers.py
Co-authored-by: Tim Gates <tim.gates@iress.com>
Co-authored-by: Harshil <37377066+harshil21@users.noreply.github.com>
Co-authored-by: zeshuaro <joshuaystang@gmail.com>
Co-authored-by: Poolitzer <25934244+Poolitzer@users.noreply.github.com>
Co-authored-by: Harshil <ilovebhagwan@gmail.com>
* First POC
* Actually get it to work
* locals-less POC
* pre-commit
* Work on Message shortcuts, update some annotations in Bot methods
* Tippity Tappity, coding stuff
* CallbackQuery
* InlineQuery & Some other stuff
* Media Classes and PassportFile
* Fix tests
* PreCheckout- & ShippingQuery
* User
* Fix tests
* Chat
* Update rawapibot
* Update annotations for answer_inline_query
* Check caption in Filters.regex
Added regex matching for message caption in Filters.regex.
* Moved caption check to Filters.caption_regex
* Added caption_regex tests
The same as for regex, with only the content of the message changed, that is now inside caption.
* Fixed pre-commit tests
Lines too long and an additional blank line
* Moved line break to comply
* Reformatted code with black
* Added docstrings
* Make pre-commit more strict
* Get pylint to read setup.cfg
* Make pylint & mypy happy aka ignore all the things
* use LogRecord.getMessage() in tests
* Make noam happy
* Update both pylint & mypy while we're at it
* Bring reqs-dev and makefile up to speed
* try making pre-commit happy
* fix jobqueue tests on the fly
* Refactor handling of `default_quote`
* Make it a breaking change
* Pickle a bots defaults
* Temporarily enable tests for the v13 branch
* Temporarily enable tests for the v13 branch
* Refactor handling of kwargs in Bot methods (#1924)
* Unify kwargs handling in Bot methods
* Remove Request.get, make api_kwargs an explicit argument, move note to head of Bot class
* Fix test_official
* Update get_file methods
* Refactor JobQueue (#1981)
* First go on refactoring JobQueue
* Temporarily enable tests for the v13 branch
* Work on tests
* Temporarily enable tests for the v13 branch
* Increase coverage
* Remove JobQueue.tick()
* Address review
* Temporarily enable tests for the v13 branch
* Address review
* Dispatch errors
* Fix handling of job_kwargs
* Remove possibility to pass a Bot to JobQueue
* Refactor persistence of Bot instances (#1994)
* Refactor persistence of bots
* User BP.set_bot in Dispatcher
* Temporarily enable tests for the v13 branch
* Add documentation
* Add warning to Updater for passing both defaults and bot
* Address review
* Fix test
* Make most objects comparable
* ID attrs for PollAnswer
* fix test_game
* fix test_userprofilephotos
* update for API 4.7
* Warn on meaningless comparisons
* Update for API 4.8
* Address review
* Get started on docs, update Message._id_attrs
* Change PollOption & InputLocation
* Some more changes
* Even more changes
* First go on refactoring JobQueue
* Temporarily enable tests for the v13 branch
* Work on tests
* Temporarily enable tests for the v13 branch
* Increase coverage
* Remove JobQueue.tick()
* Address review
* Temporarily enable tests for the v13 branch
* Address review
* Dispatch errors
* Fix handling of job_kwargs
* Remove possibility to pass a Bot to JobQueue
* Unify kwargs handling in Bot methods
* Remove Request.get, make api_kwargs an explicit argument, move note to head of Bot class
* Fix test_official
* Update get_file methods
* Fix TypeError while unpickling TelegramError (and children)
* Add more extensive unit tests for errors pickling
* Move error pickling tests back to "test_error.py"
* Add test making sure that new errors are covered by tests
* Make meta test independent of sorting
Co-authored-by: Hinrich Mahler <hinrich.mahler@freenet.de>
* Fix start_webhook NotImplementedError on windows with python3.8
* Fine-tune and add tests.
* Minor fixes
* typos
* Make Codacy happy
Co-authored-by: n5y <41209360+n5y@users.noreply.github.com>
* feat: via_bot filter
also fixing a small mistake in the empty parameter of the user filter and improve docs slightly
* fix: forgot to set via_bot to None
* fix: redoing subclassing to copy paste solution
* Cosmetic changes
Co-authored-by: Hinrich Mahler <hinrich.mahler@freenet.de>
* added test for 'clean' argument passed to 'start_polling()'
* remove TODO
* prettify
* remove bool from func name
* improve name-ing of fake update func
* cleanup class and nameing
* replace while for for
* swap valueerror for runtimeerror
* remove all other code to reduce testing
* add comments
* don't raise error, complete cycle and assert
* remove inf loop protection
* Revert "remove all other code to reduce testing"
This reverts commit 4566a1debd.
* remove error parametrization
* remove comment
* remove pass from class
* rename update_id to offset as the original get_updates() takes argument offset (which is the update_id)
* rename test func to match original func
* fix comment
* shorten for loop
* mock get_updates() behavior when 'offset' is passed. Assert with get_updates()
* remove other functions to reduce testing
* replicate original get_updates()
* move fakeupdate class and list creation outside get_updates and store in var
* loop from 0 to make update_id consistant w array key, just easier to debug
* update comments
* Revert "remove other functions to reduce testing"
This reverts commit 1fb498a6cc.
* fix typo
* Revert "fix typo"
This reverts commit ade9fec609.
* Revert "Revert "remove other functions to reduce testing""
This reverts commit 734de1371c.
* Revert "update comments"
This reverts commit f3a032e75e.
* Revert "loop from 0 to make update_id consistant w array key, just easier to debug"
This reverts commit 0c6881d8a1.
* Revert "move fakeupdate class and list creation outside get_updates and store in var"
This reverts commit 71de999300.
* Revert "replicate original get_updates()"
This reverts commit 5d0710ac3a.
* Revert "remove other functions to reduce testing"
This reverts commit 1fb498a6cc.
* Revert "mock get_updates() behavior when 'offset' is passed. Assert with get_updates()"
This reverts commit 8c727ba1e8.
* loop from 0 to make update_id consistant w array key, for consitency
Co-authored-by: ikkemaniac <ikkemaniac@localhost>
* Make Filters.user attrs mutable
* Add test_filters_user_empty_args
* Add test_filters_user_empty_args
* fix locks
* Make codecov happy
* Make user_ids and usernames sets
* Correct doc string
* Address review
* Review Vol. II
* Apply suggestions from code review
Co-authored-by: Noam Meltzer <tsnoam@gmail.com>
* Review Vol III.
* propery setter is now only a wrapper to a private method + more cleanups
pylint complained on some extra stuff, so cleaned them as well
* Review Vol. IV
* Review Vol. V
* Apply changes to Filters.chat
Co-authored-by: Noam Meltzer <tsnoam@gmail.com>
* next_t property is added to Job class
Added new property to Job class - next_t, it will show the datetime when the job will be executed next time.
The property is updated during JobQueue._put method, right after job is added to queue.
Related to #1676
* Fixed newline and trailing whitespace
* Fixed PR issues, added test
1. Added setter for next_t - now JobQueue doesn't access protected Job._next_t.
2. Fixed Job class docstring.
3. Added test for next_t property.
4. Set next_t to None for run_once jobs that already ran.
* Fixed Flake8 issues
* Added next_t setter for datetime, added test
1. next_t setter now can accept datetime type.
2. added test for setting datetime to next_t and added some asserts that check tests results.
3. Also noticed Job.days setter raises ValueError when it's more appropriate to raise TypeError.
* Fixed test_warnings, added Number type to next_t setter
1. Changed type of error raised by interval setter from ValueError to TypeError..
2. Fixed test_warning after changing type of errors in Job.days and Job.interval.
3. Added Number type to next_t setter - now it can accept int too.
* Python 2 compatibility for test_job_next_t_property
Added _UTC and _UtcOffsetTimezone for python 2 compatibility
* Fixed PR issues
1. Replaced "datetime.replace tzinfo" with "datetime.astimezone"
2. Moved testing next_t setter to separate test.
3. Changed test_job_next_t_setter so it now uses non UTC timezone.
* Defining tzinfo from run_once, run_repeating
1. Added option to define Job.tzinfo from run_once (by when.tzinfo) and run_repeating (first.tzinfo)
2. Added test to check that tzinfo is always passed correctly.
* address review
Co-authored-by: Hinrich Mahler <hinrich.mahler@freenet.de>
* Pure API changes
* Address review
* set Bot.commands on successfull call of set_my_commands
* Get started on tests
* More tests!
* More Coverage!
* Reset changes in utils.request
* Filters.dice, Filters.dice.text
* more coverage
* Address review
* Address review
* Test stop_poll with reply_markup
* Test stop_poll also without reply_markup
* Rephrase note on 'dice'
* Fix grammar in note on Filters.dice
* update api version readme
* address review