commit:     fe2498a0303f60e2e73a0f060ed69ee4dd7e65ca
Author:     Eli Schwartz <eschwartz93 <AT> gmail <DOT> com>
AuthorDate: Mon Oct  2 23:45:55 2023 +0000
Commit:     Zac Medico <zmedico <AT> gentoo <DOT> org>
CommitDate: Wed Oct 18 04:26:03 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fe2498a0

app-text/calibre: fix compatibility with recent zeroconf

Signed-off-by: Eli Schwartz <eschwartz93 <AT> gmail.com>
Signed-off-by: Zac Medico <zmedico <AT> gentoo.org>

 app-text/calibre/calibre-5.44.0-r2.ebuild          |  3 +++
 ...44.0-Fix-compatibility-with-zeroconf-0.73.patch | 26 ++++++++++++++++++++++
 2 files changed, 29 insertions(+)

diff --git a/app-text/calibre/calibre-5.44.0-r2.ebuild 
b/app-text/calibre/calibre-5.44.0-r2.ebuild
index 8e1e182eb588..0437387bea1e 100644
--- a/app-text/calibre/calibre-5.44.0-r2.ebuild
+++ b/app-text/calibre/calibre-5.44.0-r2.ebuild
@@ -135,6 +135,9 @@ PATCHES=(
        # We don't (yet?) package libjxr and it seems to be dead upstream
        # (last commit in 2017)
        "${FILESDIR}/${PN}-5.35.0-jxr-test.patch"
+
+       # fix compatibility with recent versions of zeroconf
+       "${FILESDIR}"/${PN}-5.44.0-Fix-compatibility-with-zeroconf-0.73.patch
 )
 
 src_prepare() {

diff --git 
a/app-text/calibre/files/calibre-5.44.0-Fix-compatibility-with-zeroconf-0.73.patch
 
b/app-text/calibre/files/calibre-5.44.0-Fix-compatibility-with-zeroconf-0.73.patch
new file mode 100644
index 000000000000..79af5d94bb59
--- /dev/null
+++ 
b/app-text/calibre/files/calibre-5.44.0-Fix-compatibility-with-zeroconf-0.73.patch
@@ -0,0 +1,26 @@
+From 5d8d85c649b181747d182f676cfd76f843bd61f0 Mon Sep 17 00:00:00 2001
+From: Kovid Goyal <[email protected]>
+Date: Sun, 1 Oct 2023 15:08:59 +0530
+Subject: [PATCH] Fix compatibility with zeroconf >= 0.73
+
+Fixes #2038 (fix compatibility with newer zeroconf)
+---
+ src/calibre/devices/smart_device_app/driver.py | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/calibre/devices/smart_device_app/driver.py 
b/src/calibre/devices/smart_device_app/driver.py
+index 87608f305b..b41c3a0063 100644
+--- a/src/calibre/devices/smart_device_app/driver.py
++++ b/src/calibre/devices/smart_device_app/driver.py
+@@ -2175,6 +2175,8 @@ def monkeypatch_zeroconf():
+     # "monkeypatch" zeroconf with a function without the check
+     try:
+         from zeroconf._utils.name import service_type_name
++        # zeroconf 0.73 uses an lru cache so we need __wrapped__
++        service_type_name = getattr(service_type_name, '__wrapped__', 
service_type_name)
+         service_type_name.__kwdefaults__['strict'] = False
+     except ImportError:
+         import zeroconf
+-- 
+2.41.0
+

Reply via email to