[gajim/el6/master] pick 0.14.1 from f13 branch

Michal Schmidt michich at fedoraproject.org
Fri Feb 25 09:43:00 UTC 2011


commit 174a3c4764b96cbd81df4c293b2dd028030b464f
Author: Michal Schmidt <mschmidt at redhat.com>
Date:   Fri Feb 25 10:35:06 2011 +0100

    pick 0.14.1 from f13 branch

 .gitignore                                         |    3 +
 gajim-0.13.3-gnome-keyring-CancelledError.patch    |   23 -----
 gajim-0.14-check-error.patch                       |   37 ++++++++
 ...ns.patch => gajim-0.14-disable-libasyncns.patch |   16 ++--
 gajim-0.14-handle-read-before-close.patch          |   49 ++++++++++
 gajim.spec                                         |   95 +++++++++++++++-----
 sources                                            |    2 +-
 7 files changed, 171 insertions(+), 54 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index d97d786..519ee69 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,4 @@
 gajim-0.13.4.tar.bz2
+/gajim-0.13.90.tar.bz2
+/gajim-0.14.tar.bz2
+/gajim-0.14.1.tar.bz2
diff --git a/gajim-0.14-check-error.patch b/gajim-0.14-check-error.patch
new file mode 100644
index 0000000..8bffbc3
--- /dev/null
+++ b/gajim-0.14-check-error.patch
@@ -0,0 +1,37 @@
+check error before incoming or outgoing events
+
+https://bugzilla.redhat.com/show_bug.cgi?id=649986
+http://trac.gajim.org/ticket/5991
+
+diff -r c47219e5a552 -r ba5c2eb1f1e7 src/common/xmpp/idlequeue.py
+--- a/src/common/xmpp/idlequeue.py	Mon Oct 25 20:09:30 2010 +0200
++++ b/src/common/xmpp/idlequeue.py	Mon Oct 25 21:06:45 2010 +0200
+@@ -388,20 +388,22 @@
+             self.unplug_idle(fd)
+             return False
+ 
++        if flags & IS_CLOSED:
++            # io error, don't expect more events
++            self.remove_timeout(obj.fd)
++            self.unplug_idle(obj.fd)
++            obj.pollend()
++            return False
++
+         if flags & PENDING_READ:
+             #print 'waiting read on %d, flags are %d' % (fd, flags)
+             obj.pollin()
+             return True
+ 
+-        elif flags & PENDING_WRITE:
++        if flags & PENDING_WRITE:
+             obj.pollout()
+             return True
+ 
+-        elif flags & IS_CLOSED:
+-            # io error, don't expect more events
+-            self.remove_timeout(obj.fd)
+-            self.unplug_idle(obj.fd)
+-            obj.pollend()
+         return False
+ 
+     def process(self):
diff --git a/gajim-0.13.3-disable-libasyncns.patch b/gajim-0.14-disable-libasyncns.patch
similarity index 64%
rename from gajim-0.13.3-disable-libasyncns.patch
rename to gajim-0.14-disable-libasyncns.patch
index 55c8e08..03a34b2 100644
--- a/gajim-0.13.3-disable-libasyncns.patch
+++ b/gajim-0.14-disable-libasyncns.patch
@@ -9,16 +9,16 @@ Thankfully libasyncns is not essential for Gajim to work.
 
  -- Michal
 
-Index: gajim-0.13.3/src/common/resolver.py
+Index: gajim-0.14/src/common/resolver.py
 ===================================================================
---- gajim-0.13.3.orig/src/common/resolver.py
-+++ gajim-0.13.3/src/common/resolver.py
+--- gajim-0.14.orig/src/common/resolver.py
++++ gajim-0.14/src/common/resolver.py
 @@ -39,7 +39,7 @@ ns_type_pattern = re.compile('^[a-z]+$')
  host_pattern = re.compile('^[a-z0-9\-._]*[a-z0-9]\.[a-z]{2,}$')
  
  try:
--	#raise ImportError("Manually disabled libasync")
-+	raise ImportError("Manually disabled libasync")
- 	import libasyncns
- 	USE_LIBASYNCNS = True
- 	log.info("libasyncns-python loaded")
+-    #raise ImportError("Manually disabled libasync")
++    raise ImportError("Manually disabled libasync")
+     import libasyncns
+     USE_LIBASYNCNS = True
+     log.info("libasyncns-python loaded")
diff --git a/gajim-0.14-handle-read-before-close.patch b/gajim-0.14-handle-read-before-close.patch
new file mode 100644
index 0000000..8f340da
--- /dev/null
+++ b/gajim-0.14-handle-read-before-close.patch
@@ -0,0 +1,49 @@
+handle read event before close event in case pipe sends us something and close pipe in the same time.
+
+fixes a regression caused by gajim-0.14-check-error.patch
+(Peter could not connect to gmail.com, reported in
+ https://admin.fedoraproject.org/updates/gajim-0.14.1-2.fc14)
+
+# HG changeset patch
+# User Yann Leboulanger <asterix at lagaule.org>
+# Date 1288345298 -7200
+# Node ID 50980325f73d04f447f679834f4e88cf6806954a
+# Parent  56dcfc87d01e39cbcd30eba453e3e9d8efcaed17
+
+diff -r 56dcfc87d01e -r 50980325f73d src/common/xmpp/idlequeue.py
+--- a/src/common/xmpp/idlequeue.py	Fri Oct 29 11:37:07 2010 +0200
++++ b/src/common/xmpp/idlequeue.py	Fri Oct 29 11:41:38 2010 +0200
+@@ -388,6 +388,16 @@
+             self.unplug_idle(fd)
+             return False
+ 
++        read_write = False
++        if flags & PENDING_READ:
++            #print 'waiting read on %d, flags are %d' % (fd, flags)
++            obj.pollin()
++            read_write = True
++
++        elif flags & PENDING_WRITE and not flags & IS_CLOSED:
++            obj.pollout()
++            read_write = True
++
+         if flags & IS_CLOSED:
+             # io error, don't expect more events
+             self.remove_timeout(obj.fd)
+@@ -395,15 +405,8 @@
+             obj.pollend()
+             return False
+ 
+-        if flags & PENDING_READ:
+-            #print 'waiting read on %d, flags are %d' % (fd, flags)
+-            obj.pollin()
++        if read_write:
+             return True
+-
+-        if flags & PENDING_WRITE:
+-            obj.pollout()
+-            return True
+-
+         return False
+ 
+     def process(self):
diff --git a/gajim.spec b/gajim.spec
index da31de8..315782c 100644
--- a/gajim.spec
+++ b/gajim.spec
@@ -1,43 +1,54 @@
 Summary:	Jabber client written in PyGTK
 Name:		gajim
-%global		majorver 0.13
-Version:	0.13.4
-Release:	1%{?dist}
+%global		majorver 0.14
+Version:	0.14.1
+Release:	3%{?dist}
 License:	GPLv3
 Group:		Applications/Internet
 URL:		http://gajim.org/
 Source0:	http://gajim.org/downloads/%{majorver}/%{name}-%{version}.tar.bz2
-Patch0:		gajim-0.13.3-gnome-keyring-CancelledError.patch
 # libasyncns triggers a kernel bug (RHBZ#529202), so let's not use it until
 # it's fixed.
-Patch1:		gajim-0.13.3-disable-libasyncns.patch
+Patch2:		gajim-0.14-disable-libasyncns.patch
+Patch4:		gajim-0.14-check-error.patch
+Patch5:		gajim-0.14-handle-read-before-close.patch
 BuildArch:	noarch
 BuildRoot:	%(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
 
-Requires:	avahi-tools
+Requires:	avahi-ui-tools
+# for NSLookupResolver; a fallback when libasyncns does not work
 Requires:	bind-utils
 Requires:	dbus-python
-
-Requires:	gnome-python2-gnome
+#  Audio/Video calls:
+Requires:	farsight2-python
+Requires:	gstreamer-python
+# XXX: Gajim does not import bonobo directly, but some module does and
+# prints an error if it's not available.
 Requires:	gnome-python2-bonobo
-Requires:	gnome-python2-canvas
 Requires:	gnome-python2-desktop
-Requires:	gnome-python2-libegg
+Requires:	gnome-python2-gnome
 Requires:	gnupg
+Requires:	hicolor-icon-theme
 Requires:	notify-python
-Requires:	pygtk2-libglade
 Requires:	pyOpenSSL
 Requires:	python-crypto
-Requires:	python-docutils
 Requires:	python-GnuPGInterface
 Requires:	python-kerberos
-Requires:	python-sexy
 # See above comment for Patch1
 #Requires:	python-libasyncns
-# these are dlopen'd using ctypes find_library/LoadLibrary
+
+# these are dlopen'd using ctypes find_library/LoadLibrary:
 Requires:	gtkspell
 Requires:	libXScrnSaver
 
+# Optional features with significatly sized deps. Gajim detects them at
+# runtime. Intentionally not as hard deps.
+# XXX: Gajim could install them using PackageKit when really necessary.
+#  Password encryption:
+#Requires:	gnome-python2-gnomekeyring
+#  RST Generator:
+#Requires:	python-docutils
+
 BuildRequires:	desktop-file-utils
 BuildRequires:	gettext
 BuildRequires:	gtk2-devel
@@ -52,12 +63,12 @@ Gajim does not require GNOME to run, even though it exists with it nicely.
 
 %prep
 %setup -q
-%patch0 -p1
-%patch1 -p1
+%patch2 -p1
+%patch4 -p1
+%patch5 -p1
 
 %build
-%configure --docdir=%{_docdir}/%{name}-%{version} \
-  --disable-static --disable-trayicon
+%configure --docdir=%{_docdir}/%{name}-%{version}
 
 make %{?_smp_mflags}
 
@@ -74,6 +85,17 @@ desktop-file-install --vendor fedora --delete-original \
 
 %find_lang %{name}
 
+%post
+touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
+
+%postun
+if [ $1 -eq 0 ] ; then
+    touch --no-create %{_datadir}/icons/hicolor &>/dev/null
+    gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
+fi
+
+%posttrans
+gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
 %clean
 rm -rf %{buildroot}
 
@@ -86,30 +108,59 @@ rm -rf %{buildroot}
 %doc THANKS
 %doc THANKS.artists
 %doc %{_mandir}/man1/%{name}.1*
+%doc %{_mandir}/man1/%{name}-history-manager.1*
 %doc %{_mandir}/man1/%{name}-remote.1*
 %{_bindir}/%{name}
 %{_bindir}/%{name}-history-manager
 %{_bindir}/%{name}-remote
 %{_datadir}/applications/fedora-%{name}.desktop
-%{_datadir}/pixmaps/%{name}.png
-%{_datadir}/pixmaps/%{name}.svg
-%{_datadir}/pixmaps/%{name}_about.png
+%{_datadir}/icons/hicolor/64x64/apps/%{name}.png
+%{_datadir}/icons/hicolor/scalable/apps/%{name}.svg
 
 %dir %{_datadir}/%{name}
 %{_datadir}/%{name}/data
+%{_datadir}/%{name}/icons
 %{_datadir}/%{name}/src
 
 %changelog
+* Mon Nov 15 2010 Michal Schmidt <mschmidt at redhat.com> 0.14.1-3
+- Fix a regression noted by Peter Lemenkov in Bodhi.
+  (Could not connect to gmail.com)
+
+* Fri Nov 05 2010 Michal Schmidt <mschmidt at redhat.com> 0.14.1-2
+- Fix high CPU usage when the server announces a strange streamhost
+  (RHBZ#649986)
+
+* Tue Oct 26 2010 Michal Schmidt <mschmidt at redhat.com> 0.14.1-1
+- Upstream bugfix release.
+- Dropped merged patches.
+
+* Tue Sep 21 2010 Michal Schmidt <mschmidt at redhat.com> 0.14-4
+- Replace our gnome-keyring patch with one picked from upstream hg.
+- Prevent traceback when receiving strange reply to iq:last.
+
+* Mon Sep 20 2010 Michal Schmidt <mschmidt at redhat.com> 0.14-3
+- Require gstreamer-python too. (RHBZ#632927)
+
+* Tue Sep 14 2010 Michal Schmidt <mschmidt at redhat.com> 0.14-2
+- Require farsight2-python for audio/video. (RHBZ#632927)
+
+* Mon Sep 06 2010 Michal Schmidt <mschmidt at redhat.com> 0.14-1
+- Update to 0.14 release.
+
 * Sat Apr 03 2010 Michal Schmidt <mschmidt at redhat.com> 0.13.4-1
 - Update to upstream bugfix release 0.13.4.
 
+* Sun Mar 28 2010 Michal Schmidt <mschmidt at redhat.com> 0.13.4-0.1.20100328hg
+- Update to current gajim_0.13 branch to fix contact syncing (RHBZ#577534).
+
 * Mon Mar 15 2010 Michal Schmidt <mschmidt at redhat.com> 0.13.3-3
 - What the trayicon really needs is gnome-python2-libegg (RHBZ#573358).
 
 * Mon Mar 15 2010 Michal Schmidt <mschmidt at redhat.com> 0.13.3-2
 - Require gnome-python2-extras for trayicon (RHBZ#573358).
 
-* Mon Mar 08 2010 Michal Schmidt <mschmidt at redhat.com> 0.13.3-1.fc12.1
+* Mon Mar 08 2010 Michal Schmidt <mschmidt at redhat.com> 0.13.3-1.fc13.1
 - Do not use libasyncns until a kernel bug (RHBZ#529202) is fixed.
 
 * Mon Mar 08 2010 Michal Schmidt <mschmidt at redhat.com> 0.13.3-1
diff --git a/sources b/sources
index b2cedca..e44e474 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-097e96c2f73a13be4edadea11b495ce6  gajim-0.13.4.tar.bz2
+d5e421da6eef7bb5e802231d93cb090f  gajim-0.14.1.tar.bz2


More information about the scm-commits mailing list