Hello community,

here is the log from the commit of package soprano for openSUSE:Factory checked 
in at 2013-05-03 07:40:45
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/soprano (Old)
 and      /work/SRC/openSUSE:Factory/.soprano.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "soprano"

Changes:
--------
--- /work/SRC/openSUSE:Factory/soprano/soprano-backend-sesame.changes   
2013-01-04 11:38:46.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.soprano.new/soprano-backend-sesame.changes      
2013-05-03 07:40:47.000000000 +0200
@@ -1,0 +2,8 @@
+Thu May  2 10:57:17 UTC 2013 - [email protected]
+
+- Update to 2.9.1
+  * Faster streaming for datetime literals
+  * Add a stop method in the LocalServer
+  * Fixed bugs in LocalSocket and AsyncQuery
+
+-------------------------------------------------------------------
soprano-backend-virtuoso.changes: same change
soprano.changes: same change

Old:
----
  soprano-2.9.0.tar.bz2

New:
----
  soprano-2.9.1.tar.bz2

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

Other differences:
------------------
++++++ soprano-backend-sesame.spec ++++++
--- /var/tmp/diff_new_pack.jryzmZ/_old  2013-05-03 07:40:49.000000000 +0200
+++ /var/tmp/diff_new_pack.jryzmZ/_new  2013-05-03 07:40:49.000000000 +0200
@@ -22,7 +22,7 @@
 Group:          System/Libraries
 # COMMON1-BEGIN
 # COMMON1-BEGIN
-Version:        2.9.0
+Version:        2.9.1
 Release:        0
 Url:            http://soprano.sourceforge.net/
 Source0:        
http://downloads.sourceforge.net/soprano/soprano-%{version}.tar.bz2

soprano-backend-virtuoso.spec: same change
++++++ soprano.spec ++++++
--- /var/tmp/diff_new_pack.jryzmZ/_old  2013-05-03 07:40:49.000000000 +0200
+++ /var/tmp/diff_new_pack.jryzmZ/_new  2013-05-03 07:40:49.000000000 +0200
@@ -21,7 +21,7 @@
 License:        LGPL-2.1+ and GPL-2.0+
 Group:          System/Libraries
 # COMMON1-BEGIN
-Version:        2.9.0
+Version:        2.9.1
 Release:        0
 Url:            http://soprano.sourceforge.net/
 Source0:        
http://downloads.sourceforge.net/soprano/soprano-%{version}.tar.bz2

++++++ soprano-2.9.0.tar.bz2 -> soprano-2.9.1.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/soprano-2.9.0/CMakeLists.txt 
new/soprano-2.9.1/CMakeLists.txt
--- old/soprano-2.9.0/CMakeLists.txt    2013-01-02 13:35:41.000000000 +0100
+++ new/soprano-2.9.1/CMakeLists.txt    2013-05-02 11:32:15.000000000 +0200
@@ -14,7 +14,7 @@
 ##################  Soprano version  ################################
 set(CMAKE_SOPRANO_VERSION_MAJOR 2)
 set(CMAKE_SOPRANO_VERSION_MINOR 9)
-set(CMAKE_SOPRANO_VERSION_RELEASE 0)
+set(CMAKE_SOPRANO_VERSION_RELEASE 1)
 set(CMAKE_SOPRANO_VERSION_STRING 
"${CMAKE_SOPRANO_VERSION_MAJOR}.${CMAKE_SOPRANO_VERSION_MINOR}.${CMAKE_SOPRANO_VERSION_RELEASE}")
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/soprano-2.9.0/ChangeLog new/soprano-2.9.1/ChangeLog
--- old/soprano-2.9.0/ChangeLog 2013-01-02 13:35:41.000000000 +0100
+++ new/soprano-2.9.1/ChangeLog 2013-05-02 11:32:15.000000000 +0200
@@ -1,3 +1,8 @@
+2.9.1
+    * Faster streaming for datetime literals
+       * Add a stop method in the LocalServer
+       * Fix bugs in LocalSocket and AsyncQuery
+
 2.9.0
        * Better error handling on the Client::LocalSocketClient
        * New DataStream class which shares code between the server and client
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/soprano-2.9.0/client/socket.cpp 
new/soprano-2.9.1/client/socket.cpp
--- old/soprano-2.9.0/client/socket.cpp 2013-01-02 13:35:41.000000000 +0100
+++ new/soprano-2.9.1/client/socket.cpp 2013-05-02 11:32:15.000000000 +0200
@@ -196,6 +196,8 @@
 
 bool Soprano::LocalSocket::open()
 {
+    clearError();
+
     // create a socket
     m_handle = ::socket( AF_UNIX, SOCK_STREAM, 0 );
     if ( m_handle < 0 ) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/soprano-2.9.0/server/commands.h 
new/soprano-2.9.1/server/commands.h
--- old/soprano-2.9.0/server/commands.h 2013-01-02 13:35:41.000000000 +0100
+++ new/soprano-2.9.1/server/commands.h 2013-05-02 11:32:15.000000000 +0200
@@ -32,7 +32,10 @@
 // Protocol version 4:
 //     Soprano 2.3
 //     literal language is now stored in LiteralValue
-#define PROTOCOL_VERSION 4
+// Protocol version 5:
+//     Soprano 2.9
+//     Literal values are now sent in their native types
+#define PROTOCOL_VERSION 5
 
 namespace Soprano {
     namespace Server {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/soprano-2.9.0/server/serverconnection.cpp 
new/soprano-2.9.1/server/serverconnection.cpp
--- old/soprano-2.9.0/server/serverconnection.cpp       2013-01-02 
13:35:41.000000000 +0100
+++ new/soprano-2.9.1/server/serverconnection.cpp       2013-05-02 
11:32:15.000000000 +0200
@@ -146,6 +146,8 @@
     // quit() emits the signal finished() when the thread is finished
     connect( d->socket, SIGNAL( disconnected() ),
              this, SLOT( quit() ) );
+    connect( this, SIGNAL(finished()),
+             this, SLOT(deleteLater()) );
 
     // start the event loop
     exec();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/soprano-2.9.0/server/servercore.cpp 
new/soprano-2.9.1/server/servercore.cpp
--- old/soprano-2.9.0/server/servercore.cpp     2013-01-02 13:35:41.000000000 
+0100
+++ new/soprano-2.9.1/server/servercore.cpp     2013-05-02 11:32:15.000000000 
+0200
@@ -50,7 +50,7 @@
 void Soprano::Server::ServerCorePrivate::addConnection( ServerConnection* conn 
)
 {
     connections.append( conn );
-    QObject::connect( conn, SIGNAL(finished()), q, 
SLOT(serverConnectionFinished()));
+    QObject::connect( conn, SIGNAL(destroyed(QObject*)), q, 
SLOT(serverConnectionFinished(QObject*)) );
     conn->start();
     qDebug() << Q_FUNC_INFO << "New connection. New count:" << 
connections.count();
 }
@@ -179,6 +179,24 @@
     }
 }
 
+void Soprano::Server::ServerCore::stop()
+{
+    qDeleteAll( d->connections );
+    qDeleteAll( d->models );
+
+    delete d->tcpServer;
+    d->tcpServer = 0;
+
+    delete d->socketServer;
+    d->socketServer = 0;
+
+#ifdef BUILD_DBUS_SUPPORT
+    delete d->dbusController;
+    d->dbusController = 0;
+#endif
+}
+
+
 
 quint16 Soprano::Server::ServerCore::serverPort() const
 {
@@ -229,12 +247,12 @@
 }
 
 
-void Soprano::Server::ServerCore::serverConnectionFinished()
+void Soprano::Server::ServerCore::serverConnectionFinished(QObject* obj)
 {
-    qDebug() << Q_FUNC_INFO;
-    ServerConnection* conn = qobject_cast<ServerConnection*>( sender() );
+    qDebug() << Q_FUNC_INFO << d->connections.count();
+    // We use static_cast cause qobject_case will fail since the object has 
been destroyed
+    ServerConnection* conn = static_cast<ServerConnection*>( obj );
     d->connections.removeAll( conn );
-    delete conn;
     qDebug() << Q_FUNC_INFO << "Connection removed. Current count:" << 
d->connections.count();
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/soprano-2.9.0/server/servercore.h 
new/soprano-2.9.1/server/servercore.h
--- old/soprano-2.9.0/server/servercore.h       2013-01-02 13:35:41.000000000 
+0100
+++ new/soprano-2.9.1/server/servercore.h       2013-05-02 11:32:15.000000000 
+0200
@@ -201,6 +201,14 @@
             bool listen( quint16 port = DEFAULT_PORT );
 
             /**
+             * Stops listening on all connections. This includes the local 
socket
+             * connection, the tcp connection and dbus, depending on which all 
are listening.
+             *
+             * This does not destroy the internal model
+             */
+            void stop();
+
+            /**
              * \return The port this server is listening on or 0 if listen has 
not
              * been called successfully.
              *
@@ -224,7 +232,7 @@
             void registerAsDBusObject( const QString& objectPath = QString() );
 
         private Q_SLOTS:
-            void serverConnectionFinished();
+            void serverConnectionFinished(QObject* obj);
 
         protected:
             /**
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/soprano-2.9.0/soprano/datastream.cpp 
new/soprano-2.9.1/soprano/datastream.cpp
--- old/soprano-2.9.0/soprano/datastream.cpp    2013-01-02 13:35:41.000000000 
+0100
+++ new/soprano-2.9.1/soprano/datastream.cpp    2013-05-02 11:32:15.000000000 
+0200
@@ -30,6 +30,7 @@
 #include "languagetag.h"
 
 #include <QtCore/QIODevice>
+#include <QtCore/QDateTime>
 
 
 Soprano::DataStream::DataStream()
@@ -187,6 +188,9 @@
             case QVariant::ByteArray:
                 status &= writeByteArray( var.toByteArray() );
                 break;
+            case QVariant::DateTime :
+                status &= writeUnsignedInt32( var.toDateTime().toTime_t() );
+                break;
             default:
                 status &= writeString( value.toString() );
                 status &= writeUrl( value.dataTypeUri() );
@@ -486,6 +490,12 @@
                     val = LiteralValue( array );
                     break;
                 }
+                case QVariant::DateTime : {
+                    quint32 timet;
+                    status &= readUnsignedInt32( timet );
+                    val = LiteralValue( QDateTime::fromTime_t(timet) );
+                    break;
+                }
                 default: {
                     QString str;
                     QUrl dt;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/soprano-2.9.0/soprano/util/asyncquery.cpp 
new/soprano-2.9.1/soprano/util/asyncquery.cpp
--- old/soprano-2.9.0/soprano/util/asyncquery.cpp       2013-01-02 
13:35:41.000000000 +0100
+++ new/soprano-2.9.1/soprano/util/asyncquery.cpp       2013-05-02 
11:32:15.000000000 +0200
@@ -89,7 +89,6 @@
             m_type = GraphResult;
         else if( it.isBinding() ) {
             m_type = BindingResult;
-            m_bindingNames = it.bindingNames();
         }
         else {
             m_type = BooleanResult;
@@ -106,8 +105,11 @@
                     // cache the next result
                     if( m_type == GraphResult )
                         m_currentStatement = it.currentStatement();
-                    else
+                    else {
                         m_currentBindings = it.currentBindings();
+                        if( m_bindingNames.isEmpty() )
+                            m_bindingNames = it.bindingNames();
+                    }
 
                     // inform the client
                     QMetaObject::invokeMethod( q, "_s_emitNextReady", 
Qt::QueuedConnection );

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

Reply via email to