Hello community, here is the log from the commit of package pidgin for openSUSE:Factory checked in at 2018-03-08 10:42:00 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/pidgin (Old) and /work/SRC/openSUSE:Factory/.pidgin.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "pidgin" Thu Mar 8 10:42:00 2018 rev:124 rq:584078 version:2.12.0 Changes: -------- --- /work/SRC/openSUSE:Factory/pidgin/pidgin.changes 2018-01-02 16:34:27.315128803 +0100 +++ /work/SRC/openSUSE:Factory/.pidgin.new/pidgin.changes 2018-03-08 10:42:02.322733950 +0100 @@ -1,0 +2,21 @@ +Tue Mar 6 21:35:58 UTC 2018 - [email protected] + +- Add pidgin-2.10.11-purple-remote-python3.patch: port + purple-remote to python 3 (bsc#1084147). +- Export PYTHON=python3 in %build. +- Adjust scripts to invoke python3, not python2. + +------------------------------------------------------------------- +Tue Mar 6 20:12:39 UTC 2018 - [email protected] + +- Drop support for SLE 11 and openSUSE older than 42.x. +- Remove pidgin-gnome-keyring.patch: was only useful for SLE 11. + +------------------------------------------------------------------- +Tue Mar 6 15:52:11 UTC 2018 - [email protected] + +- Update pidgin-ncurses-6.0-accessors.patch to cope with ncurses + enabling opaque-panels. Pidgin should not access internal + structures of ncurses. + +------------------------------------------------------------------- Old: ---- pidgin-gnome-keyring.patch New: ---- pidgin-2.10.11-purple-remote-python3.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ pidgin.spec ++++++ --- /var/tmp/diff_new_pack.7qGTbD/_old 2018-03-08 10:42:03.186702842 +0100 +++ /var/tmp/diff_new_pack.7qGTbD/_new 2018-03-08 10:42:03.190702698 +0100 @@ -1,7 +1,7 @@ # # spec file for package pidgin # -# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -21,7 +21,7 @@ Version: 2.12.0 Release: 0 Summary: Multiprotocol Instant Messaging Client -License: GPL-2.0 +License: GPL-2.0-only Group: Productivity/Networking/Instant Messenger Url: https://pidgin.im/ Source: http://downloads.sf.net/%{name}/%{name}-%{version}.tar.bz2 @@ -32,85 +32,64 @@ Patch0: pidgin-nonblock-common.patch # PATCH-FIX-OPENSUSE pidgin-nonblock-gwim.patch Patch1: pidgin-nonblock-gwim.patch -# PATCH-FEATURE-SLE pidgin-gnome-keyring.patch -Patch2: pidgin-gnome-keyring.patch # PATCH-FIX-OPENSUSE pidgin-fix-perl-build.patch [email protected] -- Revert https://bitbucket.org/pidgin/main/commits/a083625 as it breaks the build. -Patch3: pidgin-fix-perl-build.patch +Patch2: pidgin-fix-perl-build.patch # PATCH-FIX-UPSTREAM pidgin-ncurses-6.0-accessors.patch pidgin.im#16764 [email protected] -- Fix build with NCurses 6.0 with WINDOW_OPAQUE set to 1. -Patch4: pidgin-ncurses-6.0-accessors.patch +Patch3: pidgin-ncurses-6.0-accessors.patch +# PATCH-FIX-UPSTREAM pidgin-2.10.11-purple-remote-python3.patch bsc#1084147 [email protected] -- Port purple=-remote to Python 3. +Patch4: pidgin-2.10.11-purple-remote-python3.patch # PATCH-FIX-SLE pidgin-use-default-alsa.patch bsc#886670 [email protected] -- Use ALSA as a default for avoiding broken volume control. Patch5: pidgin-use-default-alsa.patch -BuildRequires: NetworkManager-devel -# Can use external libzephyr. -BuildRequires: cyrus-sasl-devel -BuildRequires: dbus-1-devel -BuildRequires: dbus-1-glib-devel +BuildRequires: ca-certificates-mozilla BuildRequires: doxygen BuildRequires: fdupes BuildRequires: graphviz BuildRequires: gtk-doc -BuildRequires: gtkspell-devel BuildRequires: intltool -BuildRequires: libavahi-glib-devel -BuildRequires: libgadu-devel -BuildRequires: libgnutls-devel -BuildRequires: libidn-devel -BuildRequires: libnotify-devel BuildRequires: libstdc++-devel BuildRequires: libtool -BuildRequires: libxml2-devel BuildRequires: libxslt -BuildRequires: meanwhile-devel -BuildRequires: mozilla-nspr-devel BuildRequires: ncurses-devel BuildRequires: pkgconfig -BuildRequires: startup-notification-devel -BuildRequires: tk-devel -BuildRequires: update-desktop-files -Requires: perl-base >= %{perl_version} -BuildRoot: %{_tmppath}/%{name}-%{version}-build -%if 0%{?suse_version} >= 1120 BuildRequires: translation-update-upstream -%else -# gnome-keyring support summary (boo#566286): -# 11.1 & SLE11: patch present and active (boo#569025) -# 11.2 and above: patch not applied -# For openSUSE, it's better to avoid this patch: -# + does not work well outside GNOME -# - passwords are stored in readable form -BuildRequires: gnome-keyring-devel -Recommends: %{name}-emoticons-nld -Recommends: %{name}-emoticons-tango -%endif -%if 0%{?suse_version} > 1210 -BuildRequires: libSM-devel -BuildRequires: libX11-devel -BuildRequires: libXScrnSaver-devel -BuildRequires: libXext-devel -BuildRequires: mozilla-nss-devel -%endif -%if 0%{?suse_version} >= 1230 -BuildRequires: ca-certificates-mozilla +BuildRequires: update-desktop-files +BuildRequires: pkgconfig(NetworkManager) +BuildRequires: pkgconfig(avahi-glib) +BuildRequires: pkgconfig(dbus-1) +BuildRequires: pkgconfig(dbus-glib-1) +BuildRequires: pkgconfig(glib-2.0) +BuildRequires: pkgconfig(gnutls) +BuildRequires: pkgconfig(gtk+-2.0) +BuildRequires: pkgconfig(gtkspell-2.0) +BuildRequires: pkgconfig(libgadu) +BuildRequires: pkgconfig(libidn) +BuildRequires: pkgconfig(libnotify) +# Can use external libzephyr. +BuildRequires: pkgconfig(libsasl2) +BuildRequires: pkgconfig(libstartup-notification-1.0) +BuildRequires: pkgconfig(libxml-2.0) +BuildRequires: pkgconfig(meanwhile) +BuildRequires: pkgconfig(nspr) +BuildRequires: pkgconfig(nss) +BuildRequires: pkgconfig(python3) +BuildRequires: pkgconfig(sm) +BuildRequires: pkgconfig(tk) +BuildRequires: pkgconfig(x11) +BuildRequires: pkgconfig(xext) +BuildRequires: pkgconfig(xscrnsaver) Requires: ca-certificates-mozilla -%else -BuildRequires: openssl-certs -Requires: openssl-certs -%endif -%if 0%{?suse_version} > 1320 || 0%{?sle_version} >= 120200 || (0%{?sle_version} >= 120100 && 0%{?is_opensuse}) -BuildRequires: farstream-devel >= 0.2.7 -BuildRequires: gstreamer-devel -BuildRequires: gstreamer-plugins-base-devel +Requires: perl-base >= %{perl_version} +%if 0%{?suse_version} >= 1500 || 0%{?sle_version} >= 120200 || (0%{?sle_version} >= 120100 && 0%{?is_opensuse}) +BuildRequires: pkgconfig(farstream-0.2) >= 0.2.7 +BuildRequires: pkgconfig(gstreamer-1.0) +BuildRequires: pkgconfig(gstreamer-app-1.0) +BuildRequires: pkgconfig(gstreamer-video-1.0) Recommends: gstreamer-plugins-good %else -BuildRequires: gstreamer-0_10-devel -BuildRequires: gstreamer-0_10-plugins-base-devel +BuildRequires: pkgconfig(gstreamer-0.10) +BuildRequires: pkgconfig(gstreamer-interfaces-0.10) Recommends: gstreamer-0_10-plugins-good %endif -%if 0%{?suse_version} > 1320 || 0%{?sle_version} >= 120300 -BuildRequires: python2-devel -%else -BuildRequires: python-devel -%endif %if 0%{?suse_version} >= 1500 && !0%{?is_opensuse} Recommends: purple-import-empathy %endif @@ -128,9 +107,9 @@ Summary: Development Headers, Documentation, and Libraries for Pidgin Group: Development/Libraries/C and C++ Requires: %{name} = %{version} -Requires: glib2-devel -Requires: gtk2-devel Requires: libpurple-devel = %{version} +Requires: pkgconfig(glib-2.0) +Requires: pkgconfig(gtk+-2.0) %description devel The pidgin-devel package contains the header files, developer @@ -139,19 +118,19 @@ %package -n libpurple Summary: GLib-based Instant Messenger Library -# Not really required, but standard XMPP accounts require it, if compiled with SASL support. Group: System/Libraries +Requires: ca-certificates-mozilla +# Not really required, but standard XMPP accounts require it, if compiled with SASL support. Requires: cyrus-sasl-digestmd5 Requires: cyrus-sasl-plain -# Needed for purple-url-handler. -Requires: dbus-1-python Requires: libpurple-branding Requires: perl >= %{perl_version} Recommends: libpurple-lang -%if 0%{?suse_version} >= 1230 -Requires: ca-certificates-mozilla +# Needed for purple-url-handler. +%if 0%{?suse_version} >= 1500 +Requires: python3-dbus-python %else -Requires: openssl-certs +Requires: dbus-1-python3 %endif %description -n libpurple @@ -172,9 +151,7 @@ Supplements: packageand(libpurple:branding-upstream) Conflicts: otherproviders(libpurple-branding) Provides: libpurple-branding = %{version} -%if 0%{?suse_version} >= 1210 BuildArch: noarch -%endif #BRAND: Provides /etc/purple/prefs.xml, the default configuration for #BRAND: libpurple, and libpurple-based clients. @@ -192,11 +169,10 @@ %package -n libpurple-devel Summary: Development Headers, Documentation, and Libraries for libpurple Group: Development/Libraries/C and C++ -Requires: NetworkManager-devel -Requires: NetworkManager-glib -Requires: glib2-devel Requires: libpurple = %{version} -Requires: libxml2-devel +Requires: pkgconfig(NetworkManager) +Requires: pkgconfig(glib-2.0) +Requires: pkgconfig(libxml-2.0) %description -n libpurple-devel The libpurple-devel package contains the header files, developer @@ -219,8 +195,8 @@ Group: Productivity/Networking/Instant Messenger Requires: libpurple = %{version} # libpurple-meanwhile was last used in openSUSE Leap 42.2. -Provides: libpurple-meanwhile = %{version}-%{release} -Obsoletes: libpurple-meanwhile < %{version}-%{release} +Provides: libpurple-meanwhile = %{version} +Obsoletes: libpurple-meanwhile < %{version} %description -n libpurple-plugin-sametime IBM Sametime plugin for Pidgin using the Meanwhile library. @@ -240,10 +216,10 @@ Summary: Headers etc. for finch Stuffs Group: Development/Libraries/C and C++ Requires: finch = %{version} -Requires: glib2-devel Requires: glibc-devel Requires: libpurple-devel = %{version} Requires: ncurses-devel +Requires: pkgconfig(glib-2.0) %description -n finch-devel The finch-devel package contains the header files, developer @@ -252,9 +228,7 @@ %prep %setup -q -%if 0%{?suse_version} >= 1120 translation-update-upstream -%endif %patch0 -p1 %patch1 -p1 %patch2 -p1 @@ -271,13 +245,14 @@ sed -i "/ALL_LINGUAS/s/ my_MM / my /" configure.ac # Do not use env for python sripts. -sed -i '/^#!/s|env python$|python2|' libpurple/purple-* +sed -i '/^#!/s|env python$|python3|' libpurple/purple-* %build export CFLAGS="%{optflags} -fstack-protector -fPIC" export CXXFLAGS="%{optflags} -fstack-protector -fPIC" export FFLAGS="%{optflags} -fstack-protector -fPIC" export LDFLAGS="-pie" +export PYTHON=python3 autoreconf -fi %configure \ --disable-static \ @@ -285,16 +260,13 @@ --enable-cyrus-sasl \ --enable-dbus \ --enable-gstreamer \ -%if 0%{?suse_version} > 1320 || 0%{?sle_version} >= 120200 || (0%{?sle_version} >= 120100 && 0%{?is_opensuse}) +%if 0%{?suse_version} >= 1500 || 0%{?sle_version} >= 120200 --with-gstreamer=1.0 \ --enable-vv \ %else --with-gstreamer=0.10 \ --disable-vv \ %endif -%if 0%{?suse_version} < 1120 - --enable-gnome-keyring \ -%endif --enable-nm \ --enable-dbus \ --enable-devhelp \ @@ -306,10 +278,6 @@ %install %make_install -%if 0%{?suse_version} <= 1140 -mkdir -p %{buildroot}%{_sysconfdir}/purple/ -rm -f %{buildroot}%{_sysconfdir}/gconf/schemas/purple.schemas -%endif install -Dpm 0644 %{name}-prefs.xml %{buildroot}%{_sysconfdir}/purple/prefs.xml %perl_process_packlist @@ -329,7 +297,7 @@ %suse_update_desktop_file -N %{_name} -G "Instant Messenger" %{name} %find_lang %{name} %{?no_lang_C} -%if 0%{?suse_version} > 1130 && 0%{?suse_version} <= 1320 +%if 0%{?suse_version} < 1500 %post %desktop_database_post %icon_theme_cache_post @@ -348,8 +316,12 @@ %postun -n finch -p /sbin/ldconfig %files -%defattr(-,root,root) -%doc AUTHORS COPYING COPYRIGHT ChangeLog README doc/the_penguin.txt +%if 0%{?suse_version} >= 1500 +%license COPYING +%else +%doc COPYING +%endif +%doc AUTHORS COPYRIGHT ChangeLog README doc/the_penguin.txt %{_bindir}/%{name} %{_libdir}/%{name}/ %{_datadir}/sounds/purple/ @@ -361,13 +333,11 @@ %{_mandir}/man1/%{name}.1%{?ext_man} %files devel -%defattr(-,root,root) %{_includedir}/%{name}/ %{_libdir}/pkgconfig/%{name}.pc %{_mandir}/man3/%{_name}.3*%{?ext_man} %files -n libpurple -%defattr(-,root,root) %dir %{_sysconfdir}/purple/ %{_bindir}/purple-client-example %{_bindir}/purple-remote @@ -381,36 +351,17 @@ %exclude %{_libdir}/purple-2/tcl.so %files -n libpurple-lang -f %{name}.lang -%defattr(-,root,root) -%if 0%{?suse_version} < 1140 -# These locales are not included in respective products. -# See https://bugzilla.opensuse.org/show_bug.cgi?id=659001 -%dir %{_datadir}/locale/brx/ -%dir %{_datadir}/locale/brx/LC_MESSAGES/ -%dir %{_datadir}/locale/ku_IQ/ -%dir %{_datadir}/locale/ku_IQ/LC_MESSAGES/ -%dir %{_datadir}/locale/mhr/ -%dir %{_datadir}/locale/mhr/LC_MESSAGES/ -%dir %{_datadir}/locale/ms_MY/ -%dir %{_datadir}/locale/ms_MY/LC_MESSAGES/ -%dir %{_datadir}/locale/sd/ -%dir %{_datadir}/locale/sd/LC_MESSAGES/ -%endif %files -n libpurple-branding-upstream -%defattr(-,root,root) %config %{_sysconfdir}/purple/prefs.xml %files -n libpurple-tcl -%defattr(-,root,root) %{_libdir}/purple-2/tcl.so %files -n libpurple-plugin-sametime -%defattr(-,root,root) %{_libdir}/purple-2/libsametime.so %files -n libpurple-devel -%defattr(-,root,root) %doc ChangeLog.API HACKING PLUGIN_HOWTO %doc libpurple/purple-notifications-example %{_includedir}/libpurple/ @@ -421,7 +372,6 @@ %{_mandir}/man3/Purple.3* %files -n finch -%defattr(-,root,root) %{_bindir}/finch %{_libdir}/finch/ %{_libdir}/libgnt.so.* @@ -430,7 +380,6 @@ %{_mandir}/man1/finch.1* %files -n finch-devel -%defattr(-,root,root) %{_includedir}/finch/ %{_includedir}/gnt/ %{_libdir}/libgnt.so ++++++ pidgin-2.10.11-purple-remote-python3.patch ++++++ Actually make things work in python3. Author: Jan Synacek <[email protected]> --- a/libpurple/purple-remote 2015-06-03 09:52:26.324668688 +0200 +++ b/libpurple/purple-remote 2015-06-03 09:55:41.287253981 +0200 @@ -3,13 +3,13 @@ import codecs import dbus import re -import urllib +import urllib.parse import sys import xml.dom.minidom sys.stdin = codecs.getwriter('utf-8')(sys.stdin); -sys.stdout = codecs.getwriter('utf-8')(sys.stdout); +sys.stdout = codecs.getwriter('utf-8')(sys.stdout.detach()); xml.dom.minidom.Element.all = xml.dom.minidom.Element.getElementsByTagName @@ -41,7 +41,7 @@ class CheckedAttribute: return result def show_help(requested=False): - print """This program uses D-Bus to communicate with purple. + print("""This program uses D-Bus to communicate with purple. Usage: @@ -72,7 +72,7 @@ Examples of commands: PurpleAccountsFindConnected?name=&protocol=prpl-jabber PurpleAccountsFindConnected(,prpl-jabber) -""" % sys.argv[0] +""" % sys.argv[0]) if (requested): sys.exit(0) else: @@ -120,7 +120,7 @@ def execute(uri): if paramstring is not None: for param in paramstring.split("&"): key, value = extendlist(param.split("=",1), 2, "") - params[key] = urllib.unquote(value) + params[key] = urllib.parse.unquote(value) accountname = params.get("account", "") @@ -233,12 +233,12 @@ if len(sys.argv) == 1: elif (sys.argv[1] == "--help" or sys.argv[1] == "-h"): show_help(True) elif (obj == None): - print "No existing libpurple instance detected." + print("No existing libpurple instance detected.") sys.exit(1); for arg in sys.argv[1:]: output = execute(arg) if (output != None): - print output + print(output) ++++++ pidgin-ncurses-6.0-accessors.patch ++++++ --- /var/tmp/diff_new_pack.7qGTbD/_old 2018-03-08 10:42:03.246700681 +0100 +++ /var/tmp/diff_new_pack.7qGTbD/_new 2018-03-08 10:42:03.246700681 +0100 @@ -1,7 +1,7 @@ -Index: pidgin-2.10.11/finch/libgnt/gntwm.c +Index: pidgin-2.12.0/finch/libgnt/gntwm.c =================================================================== ---- pidgin-2.10.11.orig/finch/libgnt/gntwm.c -+++ pidgin-2.10.11/finch/libgnt/gntwm.c +--- pidgin-2.12.0.orig/finch/libgnt/gntwm.c ++++ pidgin-2.12.0/finch/libgnt/gntwm.c @@ -174,37 +174,37 @@ work_around_for_ncurses_bug(void) cchar_t ch; PANEL *below = panel; @@ -10,26 +10,26 @@ - ex = panel->win->_maxx + sx; - sy = panel->win->_begy; - ey = panel->win->_maxy + sy; -+ sx = getbegx(panel->win); -+ ex = getmaxx(panel->win) + sx; -+ sy = getbegy(panel->win); -+ ey = getmaxy(panel->win) + sy; ++ sx = getbegx(panel_window(panel)); ++ ex = getmaxx(panel_window(panel)) + sx; ++ sy = getbegy(panel_window(panel)); ++ ey = getmaxy(panel_window(panel)) + sy; while ((below = panel_below(below)) != NULL) { - if (sy > below->win->_begy + below->win->_maxy || - ey < below->win->_begy) -+ if (sy > getbegy(below->win) + getmaxy(below->win) || -+ ey < getbegy(below->win)) ++ if (sy > getbegy(panel_window(below)) + getmaxy(panel_window(below)) || ++ ey < getbegy(panel_window(below))) continue; - if (sx > below->win->_begx + below->win->_maxx || - ex < below->win->_begx) -+ if (sx > getbegx(below->win) + getmaxx(below->win) || -+ ex < getbegx(below->win)) ++ if (sx > getbegx(panel_window(below)) + getmaxx(panel_window(below)) || ++ ex < getbegx(panel_window(below))) continue; - for (y = MAX(sy, below->win->_begy); y <= MIN(ey, below->win->_begy + below->win->_maxy); y++) { - if (mvwin_wch(below->win, y - below->win->_begy, sx - 1 - below->win->_begx, &ch) != OK) -+ for (y = MAX(sy, getbegy(below->win)); y <= MIN(ey, getbegy(below->win) + getmaxy(below->win)); y++) { -+ if (mvwin_wch(below->win, y - getbegy(below->win), sx - 1 - getbegx(below->win), &ch) != OK) ++ for (y = MAX(sy, getbegy(panel_window(below))); y <= MIN(ey, getbegy(panel_window(below)) + getmaxy(panel_window(below))); y++) { ++ if (mvwin_wch(panel_window(below), y - getbegy(panel_window(below)), sx - 1 - getbegx(panel_window(below)), &ch) != OK) goto right; w = widestringwidth(ch.chars); if (w > 1 && (ch.attr & 1)) { @@ -37,12 +37,12 @@ ch.attr &= ~ A_CHARTEXT; - mvwadd_wch(below->win, y - below->win->_begy, sx - 1 - below->win->_begx, &ch); - touchline(below->win, y - below->win->_begy, 1); -+ mvwadd_wch(below->win, y - getbegy(below->win), sx - 1 - getbegx(below->win), &ch); -+ touchline(below->win, y - getbegy(below->win), 1); ++ mvwadd_wch(panel_window(below), y - getbegy(panel_window(below)), sx - 1 - getbegx(panel_window(below)), &ch); ++ touchline(panel_window(below), y - getbegy(panel_window(below)), 1); } right: - if (mvwin_wch(below->win, y - below->win->_begy, ex + 1 - below->win->_begx, &ch) != OK) -+ if (mvwin_wch(below->win, y - getbegy(below->win), ex + 1 - getbegx(below->win), &ch) != OK) ++ if (mvwin_wch(panel_window(below), y - getbegy(panel_window(below)), ex + 1 - getbegx(panel_window(below)), &ch) != OK) continue; w = widestringwidth(ch.chars); if (w > 1 && !(ch.attr & 1)) { @@ -50,8 +50,8 @@ ch.attr &= ~ A_CHARTEXT; - mvwadd_wch(below->win, y - below->win->_begy, ex + 1 - below->win->_begx, &ch); - touchline(below->win, y - below->win->_begy, 1); -+ mvwadd_wch(below->win, y - getbegy(below->win), ex + 1 - getbegx(below->win), &ch); -+ touchline(below->win, y - getbegy(below->win), 1); ++ mvwadd_wch(panel_window(below), y - getbegy(panel_window(below)), ex + 1 - getbegx(panel_window(below)), &ch); ++ touchline(panel_window(below), y - getbegy(panel_window(below)), 1); } } }
