Hello community,

here is the log from the commit of package ark for openSUSE:Factory checked in 
at 2013-10-03 15:45:22
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ark (Old)
 and      /work/SRC/openSUSE:Factory/.ark.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "ark"

Changes:
--------
--- /work/SRC/openSUSE:Factory/ark/ark.changes  2013-09-09 11:08:49.000000000 
+0200
+++ /work/SRC/openSUSE:Factory/.ark.new/ark.changes     2013-10-03 
15:45:23.000000000 +0200
@@ -1,0 +2,9 @@
+Sat Sep 28 15:15:47 UTC 2013 - [email protected]
+
+- Update to 4.11.2
+   * KDE 4.11.2 bugfix release
+   * See http://www.kde.org/announcements/announce-4.11.2.php
+- Dropped patches due to upstream inclusion:
+   ark-unrar5.diff
+
+-------------------------------------------------------------------

Old:
----
  ark-4.11.1.tar.xz
  ark-unrar5.diff

New:
----
  ark-4.11.2.tar.xz

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

Other differences:
------------------
++++++ ark.spec ++++++
--- /var/tmp/diff_new_pack.ntAVf0/_old  2013-10-03 15:45:26.000000000 +0200
+++ /var/tmp/diff_new_pack.ntAVf0/_new  2013-10-03 15:45:26.000000000 +0200
@@ -17,15 +17,13 @@
 
 
 Name:           ark
-Version:        4.11.1
+Version:        4.11.2
 Release:        0
 Summary:        KDE Archiver Tool
 License:        GPL-2.0+
 Group:          Productivity/Other
 Url:            http://www.kde.org
 Source0:        ark-%{version}.tar.xz
-# PATCH-FIX-UPSTREAM ark-unrar5.diff -- adds support for unrar5 
https://git.reviewboard.kde.org/r/111625/ (kde#319303)
-Patch0:         ark-unrar5.diff
 BuildRequires:  libarchive-devel
 BuildRequires:  libkde4-devel
 BuildRequires:  libkonq-devel
@@ -59,7 +57,6 @@
 
 %prep
 %setup -q -n ark-%{version}
-%patch0 -p1
 
 %build
 %cmake_kde4 -d build

++++++ ark-4.11.1.tar.xz -> ark-4.11.2.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ark-4.11.1/doc/man-ark.1.docbook 
new/ark-4.11.2/doc/man-ark.1.docbook
--- old/ark-4.11.1/doc/man-ark.1.docbook        2013-06-28 19:38:29.000000000 
+0200
+++ new/ark-4.11.2/doc/man-ark.1.docbook        2013-09-26 21:24:05.000000000 
+0200
@@ -7,12 +7,12 @@
 <refentry lang="&language;">
 <refentryinfo>
 <title>&kde; User's Manual</title>
-<author>&Lauri.Watts;&Lauri.Watts.mail;</author>
+<author><firstname>Lauri</firstname><surname>Watts</surname> <contrib>Initial 
version of &ark; man page.</contrib></author>
 
-<author>&Raphael.Kubo.da.Costa; &Raphael.Kubo.da.Costa.mail;</author>
+ <author><firstname>Raphael</firstname><othername>Kubo 
da</othername><surname>Costa</surname> <contrib>Update &ark; man 
page.</contrib></author>
 
-<date>2009-09-10</date>
-<releaseinfo>2.13 (&kde; 4.3.1)</releaseinfo>
+<date>2013-08-23</date>
+<releaseinfo>2.19 (&kde; 4.11)</releaseinfo>
 <productname>K Desktop Environment</productname>
 </refentryinfo>
 
@@ -131,7 +131,7 @@
 <title>Options for batch extraction</title>
 <variablelist>
 <varlistentry>
-<term><option>b, --batch</option></term>
+<term><option>-b, --batch</option></term>
 <listitem>
 <para>Use the batch interface instead of the usual dialog. This option is 
implied 
 if more than one url is specified.</para>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ark-4.11.1/kerfuffle/cliinterface.cpp 
new/ark-4.11.2/kerfuffle/cliinterface.cpp
--- old/ark-4.11.1/kerfuffle/cliinterface.cpp   2013-08-28 19:08:20.000000000 
+0200
+++ new/ark-4.11.2/kerfuffle/cliinterface.cpp   2013-09-26 21:24:05.000000000 
+0200
@@ -53,7 +53,8 @@
 {
 CliInterface::CliInterface(QObject *parent, const QVariantList & args)
         : ReadWriteArchiveInterface(parent, args),
-        m_process(0)
+        m_process(0),
+        m_listEmptyLines(false)
 {
     //because this interface uses the event loop
     setWaitForFinishedSignal(true);
@@ -78,6 +79,11 @@
     Q_ASSERT(!m_process);
 }
 
+void CliInterface::setListEmptyLines(bool emptyLines)
+{
+    m_listEmptyLines = emptyLines;
+}
+
 bool CliInterface::list()
 {
     cacheParameterList();
@@ -476,7 +482,7 @@
     }
 
     foreach(const QByteArray& line, lines) {
-        if (!line.isEmpty()) {
+        if (!line.isEmpty() || (m_listEmptyLines && m_operationMode == List)) {
             handleLine(QString::fromLocal8Bit(line));
         }
     }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ark-4.11.1/kerfuffle/cliinterface.h 
new/ark-4.11.2/kerfuffle/cliinterface.h
--- old/ark-4.11.1/kerfuffle/cliinterface.h     2013-06-28 19:38:29.000000000 
+0200
+++ new/ark-4.11.2/kerfuffle/cliinterface.h     2013-09-26 21:24:05.000000000 
+0200
@@ -263,6 +263,13 @@
      */
     void setEscapedCharacters(const QString& characters);
 
+    /**
+     * Sets if the listing should include empty lines.
+     *
+     * The default value is false.
+     */
+    void setListEmptyLines(bool emptyLines);
+
 private:
     void substituteListVariables(QStringList& params);
 
@@ -330,6 +337,7 @@
 
     ParameterList m_param;
     QVariantList m_removedFiles;
+    bool m_listEmptyLines;
 
 private slots:
     void readStdout(bool handleAll = false);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ark-4.11.1/plugins/clirarplugin/cliplugin.cpp 
new/ark-4.11.2/plugins/clirarplugin/cliplugin.cpp
--- old/ark-4.11.1/plugins/clirarplugin/cliplugin.cpp   2013-08-28 
19:08:20.000000000 +0200
+++ new/ark-4.11.2/plugins/clirarplugin/cliplugin.cpp   2013-09-26 
21:24:05.000000000 +0200
@@ -39,6 +39,7 @@
         , m_isPasswordProtected(false)
         , m_remainingIgnoredSubHeaderLines(0)
         , m_isUnrarFree(false)
+        , m_isUnrarVersion5(false)
 {
 }
 
@@ -107,9 +108,86 @@
     static const QLatin1String columnDescription1String("                  
Size   Packed Ratio  Date   Time     Attr      CRC   Meth Ver");
     static const QLatin1String columnDescription2String("               Host 
OS    Solid   Old"); // Only present in unrar-nonfree
 
+    if (m_isUnrarVersion5) {
+        int colonPos = line.indexOf(QLatin1Char(':'));
+        if (colonPos == -1) {
+            if (m_entryFileName.isEmpty()) {
+                return true;
+            }
+            ArchiveEntry e;
+
+            QString compressionRatio = 
m_entryDetails.value(QLatin1String("ratio"));
+            compressionRatio.chop(1); // Remove the '%'
+
+            QString time = m_entryDetails.value(QLatin1String("mtime"));
+            // FIXME unrar 5 beta 8 seems to lack the seconds, or the trailing 
,000 is not the milliseconds
+            QDateTime ts = QDateTime::fromString(time, 
QLatin1String("yyyy-MM-dd HH:mm,zzz"));
+
+            bool isDirectory = m_entryDetails.value(QLatin1String("type")) == 
QLatin1String("Directory");
+            if (isDirectory && !m_entryFileName.endsWith(QLatin1Char( '/' ))) {
+                m_entryFileName += QLatin1Char( '/' );
+            }
+
+            QString compression = 
m_entryDetails.value(QLatin1String("compression"));
+            int optionPos = compression.indexOf(QLatin1Char('-'));
+            if (optionPos != -1) {
+                e[Method] = compression.mid(optionPos);
+                e[Version] = compression.left(optionPos).trimmed();
+            } else {
+                // no method specified
+                e[Method].clear();
+                e[Version] = compression;
+            }
+
+            m_isPasswordProtected = 
m_entryDetails.value(QLatin1String("flags")).contains(QLatin1String("encrypted"));
+
+            e[FileName] = m_entryFileName;
+            e[InternalID] = m_entryFileName;
+            e[Size] = m_entryDetails.value(QLatin1String("size"));
+            e[CompressedSize] = m_entryDetails.value(QLatin1String("packed 
size"));
+            e[Ratio] = compressionRatio;
+            e[Timestamp] = ts;
+            e[IsDirectory] = isDirectory;
+            e[Permissions] = m_entryDetails.value(QLatin1String("attributes"));
+            e[CRC] = m_entryDetails.value(QLatin1String("crc32"));
+            e[IsPasswordProtected] = m_isPasswordProtected;
+            kDebug() << "Added entry: " << e;
+
+            emit entry(e);
+
+            m_entryFileName.clear();
+
+            return true;
+        }
+
+        QString key = line.left(colonPos).trimmed().toLower();
+        QString value = line.mid(colonPos + 2);
+
+        if (key == QLatin1String("name")) {
+            m_entryFileName = value;
+            m_entryDetails.clear();
+            return true;
+        }
+
+        // in multivolume archives, the split CRC32 is denoted specially
+        if (key == QLatin1String("pack-crc32")) {
+            key = key.mid(5);
+        }
+
+        m_entryDetails.insert(key, value);
+
+        return true;
+    }
+
     switch (m_parseState)
     {
     case ParseStateColumnDescription1:
+        if (line.startsWith(QLatin1String("Details:"))) {
+            m_isUnrarVersion5 = true;
+            setListEmptyLines(true);
+            // no previously detected entry
+            m_entryFileName.clear();
+        }
         if (line.startsWith(columnDescription1String)) {
             m_parseState = ParseStateColumnDescription2;
         }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ark-4.11.1/plugins/clirarplugin/cliplugin.h 
new/ark-4.11.2/plugins/clirarplugin/cliplugin.h
--- old/ark-4.11.1/plugins/clirarplugin/cliplugin.h     2013-06-28 
19:38:29.000000000 +0200
+++ new/ark-4.11.2/plugins/clirarplugin/cliplugin.h     2013-09-26 
21:24:05.000000000 +0200
@@ -51,12 +51,14 @@
     } m_parseState;
 
     QString m_entryFileName;
+    QHash<QString, QString> m_entryDetails;
 
     bool m_isPasswordProtected;
 
     int m_remainingIgnoredSubHeaderLines;
 
     bool m_isUnrarFree;
+    bool m_isUnrarVersion5;
 };
 
 #endif // CLIPLUGIN_H

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to