Hello community,

here is the log from the commit of package purple-facebook for openSUSE:Factory 
checked in at 2017-04-14 13:41:59
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/purple-facebook (Old)
 and      /work/SRC/openSUSE:Factory/.purple-facebook.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "purple-facebook"

Fri Apr 14 13:41:59 2017 rev:2 rq:487671 version:0.9.3

Changes:
--------
--- /work/SRC/openSUSE:Factory/purple-facebook/purple-facebook.changes  
2017-02-03 18:56:49.322387325 +0100
+++ /work/SRC/openSUSE:Factory/.purple-facebook.new/purple-facebook.changes     
2017-04-14 13:42:01.118948274 +0200
@@ -1,0 +2,19 @@
+Thu Mar 30 13:34:59 UTC 2017 - [email protected]
+
+- Update to version 0.9.3 (changes since 0.9.0):
+  * This is now the minimum required version. It fixes connection
+    errors after facebook discontinued support for old versions of
+    facebook messenger for android. While most of the protocol
+    implementation was already above that version, there was a
+    subtle change that broke fetching of sync_sequence_id, and the
+    previously empty MQTT user agent string is now considered an
+    old version too.
+  * Set the MQTT user agent to look like Orca-Android 38.0.0.22.155
+    Fixes errors when trying to send messages.
+  * Use the new ThreadListQuery hash for seq id only, not for
+    thread queries.
+  * Fixes groupchat join errors.
+  * Send orca-formatted user agent for all HTTP requests too. Fixes
+    "Failed to parse thread information" errors when joining channels.
+
+-------------------------------------------------------------------

Old:
----
  purple-facebook-0.9.0-c9b74a765767.tar.gz

New:
----
  purple-facebook-0.9.3-c9b74a765767.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ purple-facebook.spec ++++++
--- /var/tmp/diff_new_pack.puZOO7/_old  2017-04-14 13:42:02.490754447 +0200
+++ /var/tmp/diff_new_pack.puZOO7/_new  2017-04-14 13:42:02.494753882 +0200
@@ -18,7 +18,7 @@
 
 %define _rev    c9b74a765767
 Name:           purple-facebook
-Version:        0.9.0
+Version:        0.9.3
 Release:        0
 Summary:        Facebook protocol plugin for libpurple
 License:        GPL-2.0+

++++++ purple-facebook-0.9.0-c9b74a765767.tar.gz -> 
purple-facebook-0.9.3-c9b74a765767.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/purple-facebook-0.9.0-c9b74a765767/Makefile.mingw 
new/purple-facebook-0.9.3-c9b74a765767/Makefile.mingw
--- old/purple-facebook-0.9.0-c9b74a765767/Makefile.mingw       2016-11-21 
14:37:22.000000000 +0100
+++ new/purple-facebook-0.9.3-c9b74a765767/Makefile.mingw       2017-03-30 
07:27:57.000000000 +0200
@@ -1,4 +1,4 @@
-PLUGIN_VERSION = 0.9.0-$(shell cat VERSION)
+PLUGIN_VERSION = 0.9.3-$(shell cat VERSION)
 PURPLE_VERSION = 2.10.11
 
 TREE_TOP = ../../../..
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/purple-facebook-0.9.0-c9b74a765767/configure 
new/purple-facebook-0.9.3-c9b74a765767/configure
--- old/purple-facebook-0.9.0-c9b74a765767/configure    2016-11-21 
14:37:31.000000000 +0100
+++ new/purple-facebook-0.9.3-c9b74a765767/configure    2017-03-30 
07:29:18.000000000 +0200
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for purple-facebook 0.9.0-c9b74a765767.
+# Generated by GNU Autoconf 2.69 for purple-facebook 0.9.3-c9b74a765767.
 #
 # Report bugs to <https://github.com/dequis/purple-facebook/issues>.
 #
@@ -590,8 +590,8 @@
 # Identity of this package.
 PACKAGE_NAME='purple-facebook'
 PACKAGE_TARNAME='purple-facebook'
-PACKAGE_VERSION='0.9.0-c9b74a765767'
-PACKAGE_STRING='purple-facebook 0.9.0-c9b74a765767'
+PACKAGE_VERSION='0.9.3-c9b74a765767'
+PACKAGE_STRING='purple-facebook 0.9.3-c9b74a765767'
 PACKAGE_BUGREPORT='https://github.com/dequis/purple-facebook/issues'
 PACKAGE_URL='https://github.com/dequis/purple-facebook'
 
@@ -1340,7 +1340,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures purple-facebook 0.9.0-c9b74a765767 to adapt to many 
kinds of systems.
+\`configure' configures purple-facebook 0.9.3-c9b74a765767 to adapt to many 
kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1410,7 +1410,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of purple-facebook 
0.9.0-c9b74a765767:";;
+     short | recursive ) echo "Configuration of purple-facebook 
0.9.3-c9b74a765767:";;
    esac
   cat <<\_ACEOF
 
@@ -1539,7 +1539,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-purple-facebook configure 0.9.0-c9b74a765767
+purple-facebook configure 0.9.3-c9b74a765767
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1817,7 +1817,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by purple-facebook $as_me 0.9.0-c9b74a765767, which was
+It was created by purple-facebook $as_me 0.9.3-c9b74a765767, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -2682,7 +2682,7 @@
 
 # Define the identity of the package.
  PACKAGE='purple-facebook'
- VERSION='0.9.0-c9b74a765767'
+ VERSION='0.9.3-c9b74a765767'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -13004,7 +13004,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by purple-facebook $as_me 0.9.0-c9b74a765767, which was
+This file was extended by purple-facebook $as_me 0.9.3-c9b74a765767, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -13062,7 +13062,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; 
s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-purple-facebook config.status 0.9.0-c9b74a765767
+purple-facebook config.status 0.9.3-c9b74a765767
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/purple-facebook-0.9.0-c9b74a765767/configure.ac 
new/purple-facebook-0.9.3-c9b74a765767/configure.ac
--- old/purple-facebook-0.9.0-c9b74a765767/configure.ac 2016-11-21 
14:37:22.000000000 +0100
+++ new/purple-facebook-0.9.3-c9b74a765767/configure.ac 2017-03-30 
07:28:03.000000000 +0200
@@ -17,7 +17,7 @@
 
 AC_INIT(
     [purple-facebook],
-    m4_join([-], [0.9.0], m4_esyscmd_s([cat VERSION])),
+    m4_join([-], [0.9.3], m4_esyscmd_s([cat VERSION])),
     [https://github.com/dequis/purple-facebook/issues],
     [purple-facebook],
     [https://github.com/dequis/purple-facebook],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/purple-facebook-0.9.0-c9b74a765767/patches/09-thread-query-hash.patch 
new/purple-facebook-0.9.3-c9b74a765767/patches/09-thread-query-hash.patch
--- old/purple-facebook-0.9.0-c9b74a765767/patches/09-thread-query-hash.patch   
1970-01-01 01:00:00.000000000 +0100
+++ new/purple-facebook-0.9.3-c9b74a765767/patches/09-thread-query-hash.patch   
2017-03-29 11:17:48.000000000 +0200
@@ -0,0 +1,11 @@
+--- a/libpurple/protocols/facebook/api.h       2017-03-29 06:14:14.773605683 
-0300
++++ b/libpurple/protocols/facebook/api.h       2017-03-29 06:13:43.207565647 
-0300
+@@ -260,7 +260,7 @@
+  *   17: profile_pic_medium_size
+  *   18: profile_pic_small_size
+  */
+-#define FB_API_QUERY_THREADS  10153919752026729
++#define FB_API_QUERY_THREADS  10155268192741729
+ 
+ /**
+  * FB_API_QUERY_XMA:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/purple-facebook-0.9.0-c9b74a765767/patches/10-mqtt-agent.patch 
new/purple-facebook-0.9.3-c9b74a765767/patches/10-mqtt-agent.patch
--- old/purple-facebook-0.9.0-c9b74a765767/patches/10-mqtt-agent.patch  
1970-01-01 01:00:00.000000000 +0100
+++ new/purple-facebook-0.9.3-c9b74a765767/patches/10-mqtt-agent.patch  
2017-03-29 14:56:21.000000000 +0200
@@ -0,0 +1,35 @@
+--- a/libpurple/protocols/facebook/api.c       2017-03-29 09:51:52.990185503 
-0300
++++ b/libpurple/protocols/facebook/api.c       2017-03-29 09:53:37.107663870 
-0300
+@@ -885,7 +885,7 @@
+ 
+       /* Write the information string */
+       fb_thrift_write_field(thft, FB_THRIFT_TYPE_STRING, 2, 1);
+-      fb_thrift_write_str(thft, "");
++      fb_thrift_write_str(thft, FB_API_MQTT_AGENT);
+ 
+       /* Write the UNKNOWN ("cp"?) */
+       fb_thrift_write_field(thft, FB_THRIFT_TYPE_I64, 3, 2);
+--- a/libpurple/protocols/facebook/api.h       2017-03-29 09:51:52.990185503 
-0300
++++ b/libpurple/protocols/facebook/api.h       2017-03-29 09:54:02.357053584 
-0300
+@@ -98,6 +98,21 @@
+ #define FB_API_AGENT  "Facebook plugin / Purple / 0.9"
+ 
+ /**
++ * FB_API_MQTT_AGENT
++ *
++ * The client information string sent in the MQTT CONNECT message
++ *
++ * We announce ourselves as compatible with Orca-Android 38.0 since that's the
++ * closest version to the last major protocol update. Some parts use older
++ * features, some parts use newer ones.
++ *
++ * Fun fact: this version sends old-style MQIsdp CONNECT messages for the 
first
++ * connection, with JSON payloads instead of compressed thrift.
++ */
++
++#define FB_API_MQTT_AGENT FB_API_AGENT " 
[FBAN/Orca-Android;FBAV/38.0.0.22.155;FBBV/14477681]"
++
++/**
+  * FB_API_URL_ATTACH:
+  *
+  * The URL for attachment URL requests.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/purple-facebook-0.9.0-c9b74a765767/patches/11-fix-thread-list-query.patch 
new/purple-facebook-0.9.3-c9b74a765767/patches/11-fix-thread-list-query.patch
--- 
old/purple-facebook-0.9.0-c9b74a765767/patches/11-fix-thread-list-query.patch   
    1970-01-01 01:00:00.000000000 +0100
+++ 
new/purple-facebook-0.9.3-c9b74a765767/patches/11-fix-thread-list-query.patch   
    2017-03-29 15:00:54.000000000 +0200
@@ -0,0 +1,40 @@
+--- a/libpurple/protocols/facebook/api.c       2017-03-29 09:55:50.024456518 
-0300
++++ b/libpurple/protocols/facebook/api.c       2017-03-29 09:59:36.546399711 
-0300
+@@ -802,6 +802,7 @@
+       case FB_API_QUERY_THREAD:
+               name = "ThreadQuery";
+               break;
++      case FB_API_QUERY_SEQ_ID:
+       case FB_API_QUERY_THREADS:
+               name = "ThreadListQuery";
+               break;
+@@ -1089,7 +1090,7 @@
+       if (priv->sid == 0) {
+               bldr = fb_json_bldr_new(JSON_NODE_OBJECT);
+               fb_json_bldr_add_str(bldr, "1", "0");
+-              fb_api_http_query(api, FB_API_QUERY_THREADS, bldr,
++              fb_api_http_query(api, FB_API_QUERY_SEQ_ID, bldr,
+                                 fb_api_cb_seqid);
+       } else {
+               fb_api_connect_queue(api);
+--- a/libpurple/protocols/facebook/api.h       2017-03-29 09:55:50.024456518 
-0300
++++ b/libpurple/protocols/facebook/api.h       2017-03-29 09:57:34.278827392 
-0300
+@@ -275,7 +275,17 @@
+  *   17: profile_pic_medium_size
+  *   18: profile_pic_small_size
+  */
+-#define FB_API_QUERY_THREADS  10155268192741729
++#define FB_API_QUERY_THREADS  10153919752026729
++
++/**
++ * FB_API_QUERY_SEQ_ID:
++ *
++ * A variant of ThreadListQuery with sequence ID
++ *
++ * TODO: parameters.
++ */
++
++#define FB_API_QUERY_SEQ_ID  10155268192741729
+ 
+ /**
+  * FB_API_QUERY_XMA:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/purple-facebook-0.9.0-c9b74a765767/patches/12-http-agent.patch 
new/purple-facebook-0.9.3-c9b74a765767/patches/12-http-agent.patch
--- old/purple-facebook-0.9.0-c9b74a765767/patches/12-http-agent.patch  
1970-01-01 01:00:00.000000000 +0100
+++ new/purple-facebook-0.9.3-c9b74a765767/patches/12-http-agent.patch  
2017-03-30 07:26:49.000000000 +0200
@@ -0,0 +1,41 @@
+--- a/libpurple/protocols/facebook/api.h       2017-03-30 02:23:36.028335349 
-0300
++++ b/libpurple/protocols/facebook/api.h       2017-03-30 02:24:46.796992132 
-0300
+@@ -91,11 +91,28 @@
+ #define FB_API_SECRET  "374e60f8b9bb6b8cbb30f78030438895"
+ 
+ /**
++ * FB_ORCA_AGENT
++ *
++ * The part of the user agent that looks like the official client, since the
++ * server started checking this.
++ *
++ * We announce ourselves as compatible with Orca-Android 38.0 since that's the
++ * closest version to the last major protocol update. Some parts use older
++ * features, some parts use newer ones.
++ *
++ * Fun fact: this version sends old-style MQIsdp CONNECT messages for the 
first
++ * connection, with JSON payloads instead of compressed thrift.
++ *
++ */
++
++#define FB_ORCA_AGENT "[FBAN/Orca-Android;FBAV/38.0.0.22.155;FBBV/14477681]"
++
++/**
+  * FB_API_AGENT:
+  *
+  * The HTTP User-Agent header.
+  */
+-#define FB_API_AGENT  "Facebook plugin / Purple / 0.9"
++#define FB_API_AGENT  "Facebook plugin / Purple / 0.9.3 " FB_ORCA_AGENT
+ 
+ /**
+  * FB_API_MQTT_AGENT
+@@ -110,7 +127,7 @@
+  * connection, with JSON payloads instead of compressed thrift.
+  */
+ 
+-#define FB_API_MQTT_AGENT FB_API_AGENT " 
[FBAN/Orca-Android;FBAV/38.0.0.22.155;FBBV/14477681]"
++#define FB_API_MQTT_AGENT FB_API_AGENT
+ 
+ /**
+  * FB_API_URL_ATTACH:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/purple-facebook-0.9.0-c9b74a765767/pidgin/libpurple/protocols/facebook/api.c
 
new/purple-facebook-0.9.3-c9b74a765767/pidgin/libpurple/protocols/facebook/api.c
--- 
old/purple-facebook-0.9.0-c9b74a765767/pidgin/libpurple/protocols/facebook/api.c
    2016-11-21 14:32:44.000000000 +0100
+++ 
new/purple-facebook-0.9.3-c9b74a765767/pidgin/libpurple/protocols/facebook/api.c
    2017-03-29 14:59:36.000000000 +0200
@@ -802,6 +802,7 @@
        case FB_API_QUERY_THREAD:
                name = "ThreadQuery";
                break;
+       case FB_API_QUERY_SEQ_ID:
        case FB_API_QUERY_THREADS:
                name = "ThreadListQuery";
                break;
@@ -885,7 +886,7 @@
 
        /* Write the information string */
        fb_thrift_write_field(thft, FB_THRIFT_TYPE_STRING, 2, 1);
-       fb_thrift_write_str(thft, "");
+       fb_thrift_write_str(thft, FB_API_MQTT_AGENT);
 
        /* Write the UNKNOWN ("cp"?) */
        fb_thrift_write_field(thft, FB_THRIFT_TYPE_I64, 3, 2);
@@ -1089,7 +1090,7 @@
        if (priv->sid == 0) {
                bldr = fb_json_bldr_new(JSON_NODE_OBJECT);
                fb_json_bldr_add_str(bldr, "1", "0");
-               fb_api_http_query(api, FB_API_QUERY_THREADS, bldr,
+               fb_api_http_query(api, FB_API_QUERY_SEQ_ID, bldr,
                                  fb_api_cb_seqid);
        } else {
                fb_api_connect_queue(api);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/purple-facebook-0.9.0-c9b74a765767/pidgin/libpurple/protocols/facebook/api.h
 
new/purple-facebook-0.9.3-c9b74a765767/pidgin/libpurple/protocols/facebook/api.h
--- 
old/purple-facebook-0.9.0-c9b74a765767/pidgin/libpurple/protocols/facebook/api.h
    2016-11-21 14:32:44.000000000 +0100
+++ 
new/purple-facebook-0.9.3-c9b74a765767/pidgin/libpurple/protocols/facebook/api.h
    2017-03-30 07:24:46.000000000 +0200
@@ -91,11 +91,43 @@
 #define FB_API_SECRET  "374e60f8b9bb6b8cbb30f78030438895"
 
 /**
+ * FB_ORCA_AGENT
+ *
+ * The part of the user agent that looks like the official client, since the
+ * server started checking this.
+ *
+ * We announce ourselves as compatible with Orca-Android 38.0 since that's the
+ * closest version to the last major protocol update. Some parts use older
+ * features, some parts use newer ones.
+ *
+ * Fun fact: this version sends old-style MQIsdp CONNECT messages for the first
+ * connection, with JSON payloads instead of compressed thrift.
+ *
+ */
+
+#define FB_ORCA_AGENT "[FBAN/Orca-Android;FBAV/38.0.0.22.155;FBBV/14477681]"
+
+/**
  * FB_API_AGENT:
  *
  * The HTTP User-Agent header.
  */
-#define FB_API_AGENT  "Facebook plugin / Purple / 0.9"
+#define FB_API_AGENT  "Facebook plugin / Purple / 0.9.3 " FB_ORCA_AGENT
+
+/**
+ * FB_API_MQTT_AGENT
+ *
+ * The client information string sent in the MQTT CONNECT message
+ *
+ * We announce ourselves as compatible with Orca-Android 38.0 since that's the
+ * closest version to the last major protocol update. Some parts use older
+ * features, some parts use newer ones.
+ *
+ * Fun fact: this version sends old-style MQIsdp CONNECT messages for the first
+ * connection, with JSON payloads instead of compressed thrift.
+ */
+
+#define FB_API_MQTT_AGENT FB_API_AGENT
 
 /**
  * FB_API_URL_ATTACH:
@@ -263,6 +295,16 @@
 #define FB_API_QUERY_THREADS  10153919752026729
 
 /**
+ * FB_API_QUERY_SEQ_ID:
+ *
+ * A variant of ThreadListQuery with sequence ID
+ *
+ * TODO: parameters.
+ */
+
+#define FB_API_QUERY_SEQ_ID  10155268192741729
+
+/**
  * FB_API_QUERY_XMA:
  *
  * The query hash for the `XMAQuery`.


Reply via email to