<pre style='margin:0'>
Renee Otten (reneeotten) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/f36e5008d7e153f1388a55276015c97d59ad485f">https://github.com/macports/macports-ports/commit/f36e5008d7e153f1388a55276015c97d59ad485f</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit f36e5008d7e153f1388a55276015c97d59ad485f
</span>Author: Sergey Fedorov <barracuda@macos-powerpc.org>
AuthorDate: Wed Aug 28 21:46:49 2024 +0800

<span style='display:block; white-space:pre;color:#404040;'>    gajim: update to 1.9.3
</span>---
 net/gajim/Portfile                                 |  43 ++++++---
 ...id-non-existing-unsupported-AppKit-module.patch | 102 +++++++++++++++++++++
 2 files changed, 131 insertions(+), 14 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/net/gajim/Portfile b/net/gajim/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index fe5805778f5..f255545f20a 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/net/gajim/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/net/gajim/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -5,7 +5,7 @@ PortGroup           gitlab 1.0
</span> PortGroup           python 1.0
 
 gitlab.instance     https://dev.gajim.org
<span style='display:block; white-space:pre;background:#ffe0e0;'>-gitlab.setup        gajim gajim 1.8.4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+gitlab.setup        gajim gajim 1.9.3
</span> revision            0
 
 categories          net chat x11
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -24,40 +24,55 @@ supported_archs     noarch
</span> master_sites        https://dev.gajim.org/gajim/gajim/-/archive/${version}/
 use_bzip2           yes
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-checksums           rmd160  050c844f9f2dc4682f2b6597b3ef4ad642e9c416 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    sha256  50d1f5f5376e52c2fb1d481b790877f19ed987d68ea9f39c915dd16286b6837d \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    size    3076987
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums           rmd160  44756e3aea4e6a918c8b9ed63a38b69f330e80f1 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  c6064bece82aeb603e7e93102bebbf28a779f08a68ba7067ad56f821f0faea13 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    3112338
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-variant python310 conflicts python311 description {Use Python 3.10} {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-variant python311 conflicts python310 description {Use Python 3.11} {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant python310 conflicts python311 python312 description {Use Python 3.10} {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant python311 conflicts python310 python312 description {Use Python 3.11} {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant python312 conflicts python310 python311 description {Use Python 3.12} {}
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-if {![variant_isset python310]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    default_variants +python311
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {![variant_isset python310] && ![variant_isset python311]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    default_variants +python312
</span> }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-foreach pv {311 310} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+foreach pv {312 311 310} {
</span>     if {[variant_isset python${pv}]} {
         python.default_version ${pv}
         break
     }
 }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-depends_build       port:gettext \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_build-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:gettext \
</span>                     port:intltool \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    path:bin/pkg-config:pkgconfig \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    port:libtool
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:libtool \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    path:bin/pkg-config:pkgconfig
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-depends_lib         port:adwaita-icon-theme \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib-append  port:adwaita-icon-theme \
</span>                     path:lib/pkgconfig/gtk+-3.0.pc:gtk3 \
                     port:gtksourceview4 \
                     path:lib/pkgconfig/librsvg-2.0.pc:librsvg \
                     path:lib/pkgconfig/libsoup-2.4.pc:libsoup \
                     port:py${python.version}-certifi \
                     port:py${python.version}-css-parser \
<span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:py${python.version}-emoji \
</span>                     port:py${python.version}-idna \
                     port:py${python.version}-keyring \
                     port:py${python.version}-nbxmpp \
                     port:py${python.version}-omemo-dr \
                     port:py${python.version}-pillow \
                     port:py${python.version}-pypng \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    port:py${python.version}-qrcode
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:py${python.version}-qrcode \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:py${python.version}-sqlalchemy
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://dev.gajim.org/gajim/gajim/-/issues/11966
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} > 12} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    depends_run-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:py${python.version}-pyobjc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+} else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    patchfiles-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    0001-Avoid-non-existing-unsupported-AppKit-module.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_run-append  port:libayatana-appindicator
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/net/gajim/files/0001-Avoid-non-existing-unsupported-AppKit-module.patch b/net/gajim/files/0001-Avoid-non-existing-unsupported-AppKit-module.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..ea6f728a4b5
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/net/gajim/files/0001-Avoid-non-existing-unsupported-AppKit-module.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,102 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 0927997834d8e0e715afa685b287e47ee39709ba Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: Sergey Fedorov <barracuda@macos-powerpc.org>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Thu, 29 Aug 2024 00:34:41 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH] Avoid non-existing / unsupported AppKit module
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gajim/common/i18n.py  | 13 +++++++------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gajim/common/sound.py | 35 ++++++++++++++++++-----------------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 2 files changed, 25 insertions(+), 23 deletions(-)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git gajim/common/i18n.py gajim/common/i18n.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 0c46f7e10..1d57c6cda 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- gajim/common/i18n.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ gajim/common/i18n.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -96,20 +96,21 @@ def _get_win32_default_lang() -> str:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         windll = ctypes.windll.kernel32
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         return locale.windows_locale[windll.GetUserDefaultUILanguage()]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    @staticmethod
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    def _get_darwin_default_lang() -> str:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        from AppKit import NSLocale
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# This invoked a non-existing module. Disable it.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#    @staticmethod
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#    def _get_darwin_default_lang() -> str:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#        from AppKit import NSLocale
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         # FIXME: This returns a two letter language code (en, de, fr)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         # We need a way to get en_US, de_DE etc.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        return NSLocale.currentLocale().languageCode()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#        return NSLocale.currentLocale().languageCode()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     def _get_default_lang(self) -> str:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if sys.platform == 'win32':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             return self._get_win32_default_lang()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        if sys.platform == 'darwin':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-            return self._get_darwin_default_lang()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#        if sys.platform == 'darwin':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#            return self._get_darwin_default_lang()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         return locale.getdefaultlocale()[0] or 'en'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git gajim/common/sound.py gajim/common/sound.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index e1cbce1a4..fe332ee8e 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- gajim/common/sound.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ gajim/common/sound.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -19,8 +19,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if sys.platform == 'win32' or typing.TYPE_CHECKING:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     import winsound
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-if sys.platform == 'darwin' or typing.TYPE_CHECKING:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    from AppKit import NSSound
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# This invoked a non-existing module. Disable it.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# if sys.platform == 'darwin' or typing.TYPE_CHECKING:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#     from AppKit import NSSound
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ log = logging.getLogger('gajim.c.sound')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -71,19 +72,19 @@ def loop_in_progress(self) -> bool:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         return self._loop_in_progress
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-class PlatformMacOS(PlaySound):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    def play(self, path: Path, loop: bool = False) -> None:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        assert NSSound is not None
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        sound = NSSound.alloc()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        sound.initWithContentsOfFile_byReference_(str(path), True)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        sound.play()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    def stop(self) -> None:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        pass
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    def loop_in_progress(self) -> bool:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        return False
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# class PlatformMacOS(PlaySound):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#     def play(self, path: Path, loop: bool = False) -> None:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#         assert NSSound is not None
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#         sound = NSSound.alloc()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#         sound.initWithContentsOfFile_byReference_(str(path), True)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#         sound.play()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#     def stop(self) -> None:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#         pass
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#     def loop_in_progress(self) -> bool:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#         return False
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ class PlatformUnix(PlaySound):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -149,8 +150,8 @@ def _init_platform() -> PlaySound:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if sys.platform == 'win32':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         return PlatformWindows()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    if sys.platform == 'darwin':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        return PlatformMacOS()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#     if sys.platform == 'darwin':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#         return PlatformMacOS()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return PlatformUnix()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span></pre><pre style='margin:0'>

</pre>