Package: release.debian.org
Severity: normal
User: release.debian....@packages.debian.org
Usertags: unblock

Please unblock package sogo-connector

The sogo-connector package is a plugin for Icedove/Thunderbird which is 
depending
on the version of the iceowl-extension package. Upstream (Inversa 
http://www.inverse.ca)
prepares packages only for the ESR versions of Thunderbird. Currently for the
31.x.x releases.
The sogo-connector has no other dependencies as the correct version on 
iceowl-extension.

The upload of the current version in testing for the sogo-connector package was
depending on the released version by upstream. While packaging the version 
that's 
currently in the testing repository it was 24.0.7, shortly after this upload 
upstream
was releasing a new version with explicitly increased version for minVersion 
within
the install.rdf to version 31.x.x for the iceowl-extension (Lightning) to get 
the
plugin also working with the releases of version 31 for Thunderbird.

The current version of sogo-connector in testing is working with Icedove and
iceowl-extension 31.2.0, but I suspect some incompatibilities in one of the 
upcomming
versions of Icedove and iceowl-extension. Also Inversa was fixing a bug in 
version
31.0.0 what makes the sogo-connector automatism working again to autofill 
adresses
while typing.
http://sogo.nu/bugs/view.php?id=2870
Also a small fix for building the source by make with -j[> 1] was done.
http://sogo.nu/bugs/view.php?id=2922

To keep the sogo-connector in sync with the packages from the Icedove package I 
would
like to suggest to let enter the current version into testing from sid.

The debdiff looks like this:
$ debdiff xul-ext-sogo-connector_24.0.7-1_all.deb 
xul-ext-sogo-connector_31.0.0-1_all.deb 
File lists identical (after any substitutions)

Control files: lines which differ (wdiff format)
------------------------------------------------
Breaks: icedove (<< [-24.0)-] {+31.0)+}
Depends: icedove (>= [-24.0),-] {+31.0),+} iceowl-extension (>= 31~)
Installed-Size: [-955-] {+956+}
Version: [-24.0.7-1-] {+31.0.0-1+}


The diff between the the upstream version 24.0.7 and 31.0.0 follows here:
$ git show upstream/31.0.0
tag upstream/31.0.0
Tagger: Carsten Schoenert <c.schoen...@t-online.de>
Date:   Wed Oct 29 19:48:07 2014 +0100

Upstream version 31.0.0
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iQIcBAABCAAGBQJUUTZnAAoJEIMBYBQlHR2w/JYP/0v41eUK3iiGNTh4VA4oxRP5
jnZcFtboosA5HTQq35KYzwQsOh86Aw2UsDCE02X7K8+BG4z8BsrKIH8wVjiSHrXI
f+j9827GL28sd4yLzNlJky8LfmRbrU2/xFv7QnYcUUeC1PdVPsvGUirKL2X8X4PV
Lv0LQLXcgcO4fuYKAGGa15V1o9raJ5Gi6lEuk9uU8n9jkStoAqLx90Rx4B2FHl7M
1eM1t7zRU4ElhKXVa7ToP8SMqkwFJpt4EDygVk7oBdas8Yey0QDqV1HpO+zh0HHk
necMJZYWudg8q0TeHDyvmnnGoxjB3B5CyreOrAn5Pd2mTCreDy8/ick1Jx9EUFVe
/2+Yu3j6WArdUvv+X0CuhATjAQBaJsZP0sQEQ8yMpUjZz1t4JpMrrhxO3fvF6gqD
EiZ0Ug/5nykfuwCaw8rCjGqonKcubfd1L1A/vZzrHSLi2Vsyf3JJhdzPp94S7epH
L/N9ufF7Mhw4JyF0vSuIDeZiWXzL8CGbi5byLuov88xbIukLND6+sGu4VgxWlUYY
B1rlG/eRHLALJuk0xNLPiLAF2K37jKzRHO8XOJhb/H2V9GCWg7JBCaHSPQ/ql60w
PKk6/Z6ILSoMYUNpa+1crtCsEm2oQoaJ3NjyIZGkEKIhmCM5QmrHFZlIExU9ICuB
YVqR5F704XCtbmJIHrFH
=PkSH
-----END PGP SIGNATURE-----

commit 61f550d13918c5ee501e861e3dc5701069c4494f
Author: Carsten Schoenert <c.schoen...@t-online.de>
Date:   Wed Oct 29 19:48:06 2014 +0100

    Imported Upstream version 31.0.0

diff --git a/RELEASE-NOTES b/RELEASE-NOTES
index 5c293e1..dc5918d 100644
--- a/RELEASE-NOTES
+++ b/RELEASE-NOTES
@@ -1,8 +1,10 @@
 NEWS
 ====
 
-24.0.7  Fixed Hungarian translation
-
+31.0.0  Initial import for Thunderbird 31 and applied fix for bug #2870
+       Added patch from bug #2922
+       Fixed Hungarian translation (#2888)
+       
 24.0.6  We now correctly detect ACL changes on calendar components and
         refresh the cache if necessary.
         We also no longer require a Thunderbird restart when reloading
diff --git a/chrome/content/sogo-connector/addressbook/categories.js.orig 
b/chrome/content/sogo-connector/addressbook/categories.js.orig
new file mode 100644
index 0000000..a7fa4db
--- /dev/null
+++ b/chrome/content/sogo-connector/addressbook/categories.js.orig
@@ -0,0 +1,92 @@
+let SCContactCategories = {
+    getCategoriesAsString: function SCCC_getCategoriesAsString() {
+        let cats = null;
+
+        let prefService = 
Components.classes["@mozilla.org/preferences-service;1"]
+                                    
.getService(Components.interfaces.nsIPrefBranch);
+        try {
+            cats = 
prefService.getCharPref("sogo-connector.contacts.categories");
+        }
+        catch(e) {
+            let strService = 
Components.classes["@mozilla.org/intl/stringbundle;1"]
+                                       
.getService(Components.interfaces.nsIStringBundleService);
+            let bundle = 
strService.createBundle("chrome://sogo-connector/locale/preferences/categories.properties");
+            cats = bundle.GetStringFromName("contacts.categories");
+        }
+
+        return cats;
+    },
+
+    setCategoriesAsString: function SCCC_setCategoriesAsString(cats) {
+        let prefService = 
Components.classes["@mozilla.org/preferences-service;1"]
+                                    
.getService(Components.interfaces.nsIPrefBranch);
+        prefService.setCharPref("sogo-connector.contacts.categories", cats);
+    },
+
+    getCategoriesAsArray: function SCCC_getCategoriesAsArray() {
+        let valuesArray = [];
+
+        let multiValue = this.getCategoriesAsString();
+        let max = multiValue.length;
+        if (multiValue.length > 0) {
+            let escaped = false;
+            let current = "";
+            for (let i = 0; i < max; i++) {
+                if (escaped) {
+                    current += multiValue[i];
+                    escaped = false;
+                }
+                else {
+                    if (multiValue[i] == "\\") {
+                        escaped = true;
+                    }
+                    else if (multiValue[i] == ",") {
+                        valuesArray.push(current.replace(/(^[ ]+|[ ]+$)/, "", 
"g"));
+                        current = "";
+                    }
+                    else {
+                        current += multiValue[i];
+                    }
+                }
+            }
+            if (current.length > 0) {
+                valuesArray.push(current.replace(/(^[ ]+|[ ]+$)/, "", "g"));
+            }
+        }
+
+        return valuesArray;
+    },
+
+    _sortArray: function SCCC__sortArray(catsArray) {
+        let localeService = 
Components.classes["@mozilla.org/intl/nslocaleservice;1"]
+                                      
.getService(Components.interfaces.nsILocaleService);
+        let collator = 
Components.classes["@mozilla.org/intl/collation-factory;1"]
+                                 
.getService(Components.interfaces.nsICollationFactory)
+                                 
.CreateCollation(localeService.getApplicationLocale());
+        function compare(a, b) { return collator.compareString(0, a, b); }
+        catsArray.sort(compare);
+    },
+
+    setCategoriesAsArray: function SCCC_getCategoriesAsArray(catsArray) {
+        this._sortArray(catsArray);
+
+        let initted = false;
+        let cats = "";
+        for (let i = 0; i < catsArray.length; i++) {
+            if (catsArray[i] && catsArray[i].length > 0) {
+                let escaped = catsArray[i].replace(",", "\\,").replace(/(^[ 
]+|[ ]+$)/, "", "g");
+                if (escaped.length > 0) {
+                    if (initted) {
+                        cats += "," + escaped;
+                    }
+                    else {
+                        cats += escaped;
+                        initted = true;
+                    }
+                }
+            }
+        }
+
+        this.setCategoriesAsString(cats);
+    }
+};
diff --git a/chrome/content/sogo-connector/addressbook/categories.js.rej 
b/chrome/content/sogo-connector/addressbook/categories.js.rej
new file mode 100644
index 0000000..b717046
--- /dev/null
+++ b/chrome/content/sogo-connector/addressbook/categories.js.rej
@@ -0,0 +1,19 @@
+*** chrome/content/sogo-connector/addressbook/categories.js 2013-04-17 
16:54:08.000000000 +0400
+--- chrome/content/sogo-connector/addressbook/categories.js 2013-09-18 
15:16:57.971057887 +0400
+***************
+*** 21,27 ****
+      setCategoriesAsString: function SCCC_setCategoriesAsString(cats) {
+          let prefService = 
Components.classes["@mozilla.org/preferences-service;1"]
+                                      
.getService(Components.interfaces.nsIPrefBranch);
+! prefService.setCharPref("sogo-connector.contacts.categories", cats);
+      },
+  
+      getCategoriesAsArray: function SCCC_getCategoriesAsArray() {
+--- 22,28 ----
+      setCategoriesAsString: function SCCC_setCategoriesAsString(cats) {
+          let prefService = 
Components.classes["@mozilla.org/preferences-service;1"]
+                                      
.getService(Components.interfaces.nsIPrefBranch);
+! prefService.setCharPref("sogo-connector.contacts.categories", 
unescape(encodeURIComponent(cats)));
+      },
+  
+      getCategoriesAsArray: function SCCC_getCategoriesAsArray() {
diff --git a/components/SOGoConnectorAutocompleteSearch.js 
b/components/SOGoConnectorAutocompleteSearch.js
index 8b80673..4747a42 100644
--- a/components/SOGoConnectorAutocompleteSearch.js
+++ b/components/SOGoConnectorAutocompleteSearch.js
@@ -41,6 +41,7 @@
  */
 
 Components.utils.import("resource://gre/modules/XPCOMUtils.jsm");
+Components.utils.import("resource:///modules/mailServices.js");
 Components.utils.import("resource://gre/modules/Services.jsm");
 
 let commentColumn = null;
@@ -71,6 +72,10 @@ SOGoConnectorAutocompleteResult.prototype = {
         return this._searchResults[aIndex].value;
     },
 
+    getLabelAt: function getLabelAt(aIndex) {
+        return this.getValueAt(aIndex);
+    },
+
     getCommentAt: function getCommentAt(aIndex) {
         return this._searchResults[aIndex].comment;
     },
@@ -83,6 +88,10 @@ SOGoConnectorAutocompleteResult.prototype = {
         return "";
     },
 
+    getFinalCompleteValueAt: function(aIndex) {
+        return this.getValueAt(aIndex);
+    },
+
     removeValueAt: function removeValueAt(aRowIndex, aRemoveFromDB) {
     },
 
@@ -98,13 +107,7 @@ SOGoConnectorAutocompleteResult.prototype = {
 
     /* nsISupports */
 
-    QueryInterface: function(aIID) {
-        if (!aIID.equals(ACR)
-            && !aIID.equals(Components.interfaces.nsIAbAutoCompleteResult)
-            && !aIID.equals(Components.interfaces.nsISupports))
-            throw Components.results.NS_ERROR_NO_INTERFACE;
-        return this;
-    }
+    QueryInterface: XPCOMUtils.generateQI([ACR, nsIAbAutoCompleteResult])
 };
 
 function SOGoConnectorAutocompleteSearch() {}
@@ -113,10 +116,9 @@ SOGoConnectorAutocompleteSearch.prototype = {
     // This is set from a preference,
     // 0 = no comment column, 1 = name of address book this card came from
     // Other numbers currently unused (hence default to zero)
-    _parser: Components.classes["@mozilla.org/messenger/headerparser;1"]
-                       .getService(Components.interfaces.nsIMsgHeaderParser),
-    _abManager: Components.classes["@mozilla.org/abmanager;1"]
-                          .getService(Components.interfaces.nsIAbManager),
+    _parser: MailServices.headerParser,
+    _abManager: MailServices.ab,
+    applicableHeaders: Set(["addr_to", "addr_cc", "addr_bcc", "addr_reply"]),
 
     // Private methods
 
@@ -320,10 +322,10 @@ SOGoConnectorAutocompleteSearch.prototype = {
     _addToResult: function _addToResult(directory, card, emailToUse,
                                         isPrimaryEmail, result) {
         let emailAddress =
-            this._parser.makeFullAddress(card.displayName,
-                                         card.isMailList ?
-                                         card.getProperty("Notes", "") || 
card.displayName :
-                                         emailToUse);
+            this._parser.makeMailboxObject(card.displayName,
+                                           card.isMailList ?
+                                           card.getProperty("Notes", "") || 
card.displayName :
+                                           emailToUse).toString();
 
         // The old code used to try it manually. I think if the parser can't 
work
         // out the address from what we've supplied, then its busted and we're 
not
diff --git a/install.rdf b/install.rdf
index d15b2c6..f1d15eb 100644
--- a/install.rdf
+++ b/install.rdf
@@ -5,7 +5,7 @@
   <Description about="urn:mozilla:install-manifest"
     em:name="Inverse SOGo Connector"
     em:id="sogo-connec...@inverse.ca"
-    em:version="24.0.7"
+    em:version="31.0.0"
     em:description="A DAV plugin for keeping addressbooks and events in sync"
     em:iconURL="chrome://sogo-connector/skin/addressbook/sogo.png"
     em:creator="Inverse &lt;supp...@inverse.ca>"
@@ -14,8 +14,8 @@
     <em:targetApplication>
       <Description>
         <em:id>{3550f703-e582-4d05-9a08-453d09bdfdc6}</em:id>
-        <em:minVersion>24.0</em:minVersion>
-        <em:maxVersion>24.*</em:maxVersion>
+        <em:minVersion>31.0</em:minVersion>
+        <em:maxVersion>31.*</em:maxVersion>
       </Description>
     </em:targetApplication>
   </Description>

The respective Changelog entry for the version 31.0.0 is this:

sogo-connector (31.0.0-1) unstable; urgency=medium

  * debian/control: changing Vcs URL's to Alioth
  * debian/watch: switch to new upstream version 31
  * Imported Upstream version 31.0.0
  * rebuild patch queue from patch-queue branch

 -- Carsten Schoenert <c.schoen...@t-online.de>  Tue, 28 Oct 2014 19:22:22 +0100

I've I done something wrong please forgive me, it's the first time I write
a unblock request. ;)

Regards
Carsten

unblock sogo-connector/24.0.7-1

-- System Information:
Debian Release: jessie/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 3.16.0-4-amd64 (SMP w/4 CPU cores)
Locale: LANG=de_DE.utf8, LC_CTYPE=de_DE.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash


-- 
To UNSUBSCRIBE, email to debian-release-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: 
https://lists.debian.org/20141207114217.9918.74577.report...@x201s.cruise.homelinux.net

Reply via email to