diff --git a/dev-python/fritzconnection/Manifest b/dev-python/fritzconnection/Manifest index 6ead531221693..56f2d06dd87a1 100644 --- a/dev-python/fritzconnection/Manifest +++ b/dev-python/fritzconnection/Manifest @@ -1 +1,2 @@ DIST fritzconnection-1.14.0.gh.tar.gz 165234 BLAKE2B 8a9350ad632eef353d08acd19560ffaed5d0cbfb073881f8892242b6616e1b830c84c7e9236280068278bac459a43f53c140a2f4d474ce9787a064530a8531b0 SHA512 99d002365d425ce459a3cfe9bbf48680639ccb1ef1cea65870a39e684c712abb8be16d10dad2c1a529c8b27c7b15dd9dad4a9eff38c975b1d8ff2fb15af72aa3 +DIST fritzconnection-1.15.0.gh.tar.gz 167546 BLAKE2B 203ff8e0e3211ebe4cf9486096434cb30e19af01b21b2f0b8a4513bc27145f87d2b73d1849bfcf6079d2b89a63d5c85c9ad290bf3e09f2c9605bc8d60e178c9e SHA512 12743d0071d388b1bc2213401d84b25182e867977a82fcfc6b4086a73fee4dcc6c9c1d948b96060c8c0c8989f3a374299b406913d5f7a7bc98448d74423e225b diff --git a/dev-python/fritzconnection/fritzconnection-1.15.0.ebuild b/dev-python/fritzconnection/fritzconnection-1.15.0.ebuild new file mode 100644 index 0000000000000..9789ec2fbb5e8 --- /dev/null +++ b/dev-python/fritzconnection/fritzconnection-1.15.0.ebuild @@ -0,0 +1,64 @@ +# Copyright 2022-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{11..13} ) + +inherit distutils-r1 + +DESCRIPTION="Lib/tool to communicate with AVM FRITZ! devices using TR-064 protocol over UPnP" +HOMEPAGE=" + https://github.com/kbr/fritzconnection/ + https://pypi.org/project/fritzconnection/ +" + +LICENSE="MIT" +SLOT="0" +IUSE="qrcode" + +if [[ "${PV}" == "9999" ]]; then + EGIT_REPO_URI="https://github.com/kbr/fritzconnection" + inherit git-r3 +else + SRC_URI=" + https://github.com/kbr/fritzconnection/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz + " + KEYWORDS="~amd64 ~arm64 ~x86" +fi + +RDEPEND=" + >=dev-python/requests-2.22[${PYTHON_USEDEP}] + qrcode? ( + dev-python/segno[${PYTHON_USEDEP}] + ) +" +BDEPEND=" + test? ( + dev-python/pytest-mock[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +python_test() { + local EPYTEST_DESELECT=( + # flaky (relies on time.sleep(0.01) magically being sufficient) + fritzconnection/tests/test_fritzmonitor.py::test_terminate_thread_on_failed_reconnection + ) + + if has_version "dev-python/segno[${PYTHON_USEDEP}]"; then + EPYTEST_DESELECT+=( + # requires "QR Code detection" support in media-libs/opencv + # https://bugs.gentoo.org/917121 + fritzconnection/tests/test_fritzwlan.py::test_get_wifi_qr_code + fritzconnection/tests/test_fritzwlan.py::test_helper_functions + fritzconnection/tests/test_fritzwlan.py::test_tools + ) + fi + + # "routertest" marks tests against live hardware + epytest -m "not routertest" +}