Files
guru/dev-python/python-telegram-bot/python-telegram-bot-20.6-r1.ebuild
Anna (cybertailor) Vyalkova bb0aae8ad3 */*: disable py3.10
Python 3.10 target is scheduled for removal in Gentoo:
https://public-inbox.gentoo.org/gentoo-dev/e6ca9f1f4ababb79ab2a3d005c39b483c3ecef6e.camel@gentoo.org/

Sphinx 8.2.0 already dropped support for CPython 3.10 and PyPy 3.10,
leading to multiple CI failures in ::guru.

We can safely remove this target, because GURU is "experimental" and
does not have stable keywords.

Let's not remove "pypy3" right now because
a) There are not many packages using it.
b) So we can see which packages supported PyPy 3.10, and test them with
   PyPy 3.11.

Closes: https://github.com/gentoo/guru/pull/291
Signed-off-by: Anna (cybertailor) Vyalkova <cyber+gentoo@sysrq.in>
2025-02-21 17:51:14 +05:00

151 lines
9.1 KiB
Bash

# Copyright 2023-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{11..12} )
inherit distutils-r1 optfeature
DESCRIPTION="Python wrapper of telegram bots API"
HOMEPAGE="https://docs.python-telegram-bot.org https://github.com/python-telegram-bot/python-telegram-bot"
SRC_URI="https://github.com/python-telegram-bot/python-telegram-bot/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="LGPL-3"
SLOT="0"
KEYWORDS="~amd64"
RDEPEND="
>=dev-python/cachetools-5.3.1[${PYTHON_USEDEP}]
>=dev-python/cryptography-39.0.1[${PYTHON_USEDEP}]
>=dev-python/httpx-0.25.0[${PYTHON_USEDEP}]
>=dev-python/tornado-6.3.3[${PYTHON_USEDEP}]
"
BDEPEND="
test? (
dev-python/beautifulsoup4[${PYTHON_USEDEP}]
dev-python/flaky[${PYTHON_USEDEP}]
dev-python/pytest[${PYTHON_USEDEP}]
dev-python/pytest-asyncio[${PYTHON_USEDEP}]
dev-python/pytz[${PYTHON_USEDEP}]
>=dev-python/tornado-6.3.3[${PYTHON_USEDEP}]
)
"
# These tests require an internet connection
EPYTEST_DESELECT=(
tests/_files/test_animation.py::TestAnimationWithoutRequest::test_creation
tests/_files/test_animation.py::TestAnimationWithoutRequest::test_de_json
tests/_files/test_animation.py::TestAnimationWithoutRequest::test_expected_values
tests/_files/test_animation.py::TestAnimationWithoutRequest::test_get_file_instance_method
tests/_files/test_animation.py::TestAnimationWithoutRequest::test_send_with_animation
tests/_files/test_animation.py::TestAnimationWithoutRequest::test_slot_behaviour
tests/_files/test_animation.py::TestAnimationWithoutRequest::test_to_dict
tests/_files/test_audio.py::TestAudioWithoutRequest::test_creation
tests/_files/test_audio.py::TestAudioWithoutRequest::test_de_json
tests/_files/test_audio.py::TestAudioWithoutRequest::test_equality
tests/_files/test_audio.py::TestAudioWithoutRequest::test_expected_values
tests/_files/test_audio.py::TestAudioWithoutRequest::test_get_file_instance_method
tests/_files/test_audio.py::TestAudioWithoutRequest::test_send_with_audio
tests/_files/test_audio.py::TestAudioWithoutRequest::test_slot_behaviour
tests/_files/test_audio.py::TestAudioWithoutRequest::test_to_dict
tests/_files/test_chatphoto.py::TestChatPhotoWithoutRequest::test_de_json
tests/_files/test_chatphoto.py::TestChatPhotoWithoutRequest::test_get_big_file_instance_method
tests/_files/test_chatphoto.py::TestChatPhotoWithoutRequest::test_get_small_file_instance_method
tests/_files/test_chatphoto.py::TestChatPhotoWithoutRequest::test_send_with_chat_photo
tests/_files/test_chatphoto.py::TestChatPhotoWithoutRequest::test_slot_behaviour
tests/_files/test_chatphoto.py::TestChatPhotoWithoutRequest::test_to_dict
tests/_files/test_document.py::TestDocumentWithoutRequest::test_creation
tests/_files/test_document.py::TestDocumentWithoutRequest::test_de_json
tests/_files/test_document.py::TestDocumentWithoutRequest::test_equality
tests/_files/test_document.py::TestDocumentWithoutRequest::test_expected_values
tests/_files/test_document.py::TestDocumentWithoutRequest::test_get_file_instance_method
tests/_files/test_document.py::TestDocumentWithoutRequest::test_send_with_document
tests/_files/test_document.py::TestDocumentWithoutRequest::test_slot_behaviour
tests/_files/test_document.py::TestDocumentWithoutRequest::test_to_dict
tests/_files/test_inputmedia.py::TestInputMediaAnimationWithoutRequest::test_with_animation
tests/_files/test_inputmedia.py::TestInputMediaAudioWithoutRequest::test_with_audio
tests/_files/test_inputmedia.py::TestInputMediaDocumentWithoutRequest::test_with_document
tests/_files/test_inputmedia.py::TestInputMediaPhotoWithoutRequest::test_with_photo
tests/_files/test_inputmedia.py::TestInputMediaVideoWithoutRequest::test_with_video
tests/_files/test_inputmedia.py::TestSendMediaGroupWithoutRequest::test_send_media_group_throws_error_with_group_caption_and_individual_captions
tests/_files/test_photo.py::TestPhotoWithoutRequest::test_creation
tests/_files/test_photo.py::TestPhotoWithoutRequest::test_de_json
tests/_files/test_photo.py::TestPhotoWithoutRequest::test_equality
tests/_files/test_photo.py::TestPhotoWithoutRequest::test_expected_values
tests/_files/test_photo.py::TestPhotoWithoutRequest::test_get_file_instance_method
tests/_files/test_photo.py::TestPhotoWithoutRequest::test_send_with_photosize
tests/_files/test_photo.py::TestPhotoWithoutRequest::test_slot_behaviour
tests/_files/test_photo.py::TestPhotoWithoutRequest::test_to_dict
tests/_files/test_sticker.py::TestStickerSetWithoutRequest::test_de_json
tests/_files/test_sticker.py::TestStickerSetWithoutRequest::test_get_file_instance_method
tests/_files/test_sticker.py::TestStickerSetWithoutRequest::test_sticker_set_to_dict
tests/_files/test_sticker.py::TestStickerWithoutRequest::test_creation
tests/_files/test_sticker.py::TestStickerWithoutRequest::test_de_json
tests/_files/test_sticker.py::TestStickerWithoutRequest::test_equality
tests/_files/test_sticker.py::TestStickerWithoutRequest::test_expected_values
tests/_files/test_sticker.py::TestStickerWithoutRequest::test_send_with_sticker
tests/_files/test_sticker.py::TestStickerWithoutRequest::test_slot_behaviour
tests/_files/test_sticker.py::TestStickerWithoutRequest::test_to_dict
tests/_files/test_video.py::TestVideoWithoutRequest::test_creation
tests/_files/test_video.py::TestVideoWithoutRequest::test_equality
tests/_files/test_video.py::TestVideoWithoutRequest::test_expected_values
tests/_files/test_video.py::TestVideoWithoutRequest::test_get_file_instance_method
tests/_files/test_video.py::TestVideoWithoutRequest::test_send_with_video
tests/_files/test_video.py::TestVideoWithoutRequest::test_slot_behaviour
tests/_files/test_video.py::TestVideoWithoutRequest::test_to_dict
tests/_files/test_videonote.py::TestVideoNoteWithoutRequest::test_creation
tests/_files/test_videonote.py::TestVideoNoteWithoutRequest::test_equality
tests/_files/test_videonote.py::TestVideoNoteWithoutRequest::test_expected_values
tests/_files/test_videonote.py::TestVideoNoteWithoutRequest::test_get_file_instance_method
tests/_files/test_videonote.py::TestVideoNoteWithoutRequest::test_send_with_video_note
tests/_files/test_videonote.py::TestVideoNoteWithoutRequest::test_slot_behaviour
tests/_files/test_videonote.py::TestVideoNoteWithoutRequest::test_to_dict
tests/_files/test_voice.py::TestVoiceWithoutRequest::test_creation
tests/_files/test_voice.py::TestVoiceWithoutRequest::test_equality
tests/_files/test_voice.py::TestVoiceWithoutRequest::test_expected_values
tests/_files/test_voice.py::TestVoiceWithoutRequest::test_get_file_instance_method
tests/_files/test_voice.py::TestVoiceWithoutRequest::test_send_with_voice
tests/_files/test_voice.py::TestVoiceWithoutRequest::test_slot_behaviour
tests/_files/test_voice.py::TestVoiceWithoutRequest::test_to_dict
tests/request/test_request.py::TestHTTPXRequestWithoutRequest::test_do_request_after_shutdown
tests/request/test_request.py::TestHTTPXRequestWithoutRequest::test_do_request_exceptions
tests/request/test_request.py::TestHTTPXRequestWithoutRequest::test_do_request_manual_timeouts
tests/request/test_request.py::TestHTTPXRequestWithoutRequest::test_do_request_params_no_data
tests/request/test_request.py::TestHTTPXRequestWithoutRequest::test_do_request_params_with_data
tests/request/test_request.py::TestHTTPXRequestWithoutRequest::test_do_request_return_value
tests/request/test_request.py::TestHTTPXRequestWithoutRequest::test_http_1_response
tests/request/test_request.py::TestHTTPXRequestWithoutRequest::test_multiple_init_cycles
tests/request/test_request.py::TestRequestWithoutRequest::test_chat_migrated
tests/request/test_request.py::TestRequestWithoutRequest::test_error_description
tests/request/test_request.py::TestRequestWithoutRequest::test_exceptions_in_do_request
tests/request/test_request.py::TestRequestWithoutRequest::test_illegal_json_response
tests/request/test_request.py::TestRequestWithoutRequest::test_replaced_unprintable_char
tests/request/test_request.py::TestRequestWithoutRequest::test_retrieve
tests/request/test_request.py::TestRequestWithoutRequest::test_retry_after
tests/request/test_request.py::TestRequestWithoutRequest::test_special_errors
tests/request/test_request.py::TestRequestWithoutRequest::test_timeout_propagation
tests/request/test_request.py::TestRequestWithoutRequest::test_unknown_request_params
tests/test_bot.py::TestBotWithoutRequest::test_copy_message
tests/test_bot.py::TestBotWithoutRequest::test_equality
tests/test_bot.py::TestBotWithoutRequest::test_get_me_and_properties
tests/test_bot.py::TestBotWithoutRequest::test_log_decorator
tests/test_forum.py::TestForumTopicCreatedWithoutRequest::test_equality
tests/test_forum.py::TestForumTopicWithoutRequest::test_de_json
tests/test_forum.py::TestForumTopicWithoutRequest::test_equality
tests/test_forum.py::TestForumTopicWithoutRequest::test_expected_values
tests/test_forum.py::TestForumTopicWithoutRequest::test_slot_behaviour
tests/test_forum.py::TestForumTopicWithoutRequest::test_to_dict
)
distutils_enable_tests pytest
# Run only the tests that don't require a connection
python_test() {
epytest -m no_req
}
pkg_postinst() {
optfeature "using telegram.ext.JobQueue" dev-python/APScheduler
}