Hello community,

here is the log from the commit of package cantor for openSUSE:Factory checked 
in at 2013-12-11 14:33:45
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/cantor (Old)
 and      /work/SRC/openSUSE:Factory/.cantor.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "cantor"

Changes:
--------
--- /work/SRC/openSUSE:Factory/cantor/cantor.changes    2013-12-02 
12:32:14.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.cantor.new/cantor.changes       2013-12-11 
14:33:46.000000000 +0100
@@ -1,0 +2,14 @@
+Fri Nov 29 07:06:44 UTC 2013 - [email protected]
+
+- Update to 4.11.97
+   * KDE 4.12 RC 1 release
+   * See http://www.kde.org/announcements/announce-4.12-rc.php
+
+-------------------------------------------------------------------
+Sat Nov 23 22:21:17 UTC 2013 - [email protected]
+
+- Update to 4.11.95
+   * KDE 4.12 Beta 3 release
+   * See http://www.kde.org/announcements/announce-4.12-beta3.php
+
+-------------------------------------------------------------------

Old:
----
  cantor-4.11.90.tar.xz

New:
----
  cantor-4.11.97.tar.xz

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

Other differences:
------------------
++++++ cantor.spec ++++++
--- /var/tmp/diff_new_pack.yBfRml/_old  2013-12-11 14:33:47.000000000 +0100
+++ /var/tmp/diff_new_pack.yBfRml/_new  2013-12-11 14:33:47.000000000 +0100
@@ -19,7 +19,7 @@
 %global libMAJOR 1
 
 Name:           cantor
-Version:        4.11.90
+Version:        4.11.97
 Release:        0
 Summary:        Worksheet GUI for mathematical software
 License:        GPL-2.0+

++++++ cantor-4.11.90.tar.xz -> cantor-4.11.97.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cantor-4.11.90/doc/index.docbook 
new/cantor-4.11.97/doc/index.docbook
--- old/cantor-4.11.90/doc/index.docbook        2013-11-14 01:27:21.000000000 
+0100
+++ new/cantor-4.11.97/doc/index.docbook        2013-11-24 21:27:16.000000000 
+0100
@@ -31,7 +31,7 @@
 <legalnotice>&FDLNotice;</legalnotice>
 
 <date>2013-10-27</date>
-<releaseinfo>0.4 (&kde; 4.12)</releaseinfo>
+<releaseinfo>0.5 (&kde; 4.12)</releaseinfo>
 
 <abstract>
 <para>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/cantor-4.11.90/src/assistants/importpackage/importpackageassistant.desktop 
new/cantor-4.11.97/src/assistants/importpackage/importpackageassistant.desktop
--- 
old/cantor-4.11.90/src/assistants/importpackage/importpackageassistant.desktop  
    2013-11-14 01:27:21.000000000 +0100
+++ 
new/cantor-4.11.97/src/assistants/importpackage/importpackageassistant.desktop  
    2013-11-24 21:27:16.000000000 +0100
@@ -2,13 +2,16 @@
 Type=Service
 Name=Import Package
 Name[bs]=Uvezi paket
+Name[ca]=Importació de paquet
 Name[cs]=Importovat balíček
 Name[da]=Importér pakke
 Name[de]=Paket importieren
 Name[es]=Importar paquete
 Name[fi]=Tuo paketti
+Name[fr]=Importer un paquet
 Name[gl]=Importar un paquete
 Name[hu]=Csomag importálása
+Name[it]=Importa package
 Name[kk]=Дестені импорттау
 Name[nl]=Pakket importeren
 Name[pt]=Importar o Pacote
@@ -27,12 +30,15 @@
 X-KDE-PluginInfo-License=GPL
 Comment=An Assistant dialog to import a specific package (or library or 
module) to Cantor workspace
 Comment[bs]=Pomoćni dijalog za uvoz određenog paketa (biblioteke ili modula) u 
Cantor-ov radni prostor.
+Comment[ca]=Un diàleg d'assistència per importar un paquet específic (o 
biblioteca o mòdul) a l'espai de treball del Cantor
 Comment[da]=En hjælpedialog til at importere en specifik pakke (eller 
bibliotek eller modul) til Cantor-arbejdsområdet
 Comment[de]=Ein Assistent, um ein angegebenes Paket, Bibliothek oder Modul in 
den Arbeitsbereich von Cantor zu importieren
 Comment[es]=Un diálogo de asistente para importar un paquete (o biblioteca o 
módulo) determinado al espacio de trabajo de Cantor
 Comment[fi]=Apuikkuna paketin (tai kirjaston tai mobuulin) tuomiseen 
Cantor-työtilaan
+Comment[fr]=Boîte de dialogue de l'assistant pour importer un paquet 
spécifique (ou une librairie ou un module) dans l'espace de travail Cantor
 Comment[gl]=Un asistente para importar un paquete específico (ou unha 
biblioteca ou un módulo) no espazo de traballo de Cantor
 Comment[hu]=Egy segéd párbeszédablak tudományos csomagok (vagy könyvtárak vagy 
modulok) importálásához a Cantor munkaterületre
+Comment[it]=Un assistente che importa un package specifico (oppure una 
libreria o un modulo) nell foglio di lavoro di Cantor
 Comment[kk]=Cantor жұмыс орнынын өзінің дестесін (не жиын файлын не модулін) 
импорттаудың көмекші диалогы
 Comment[nl]=Een assistentdialoog voor het importeren van een pakket (of 
bibliotheek (library) of module) in Cantor
 Comment[pt]=Uma janela de assistente para importar um pacote específico (ou 
biblioteca ou módulo) para a área de trabalho do Cantor
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/cantor-4.11.90/src/backends/python2/python2backend.desktop 
new/cantor-4.11.97/src/backends/python2/python2backend.desktop
--- old/cantor-4.11.90/src/backends/python2/python2backend.desktop      
2013-11-14 01:27:21.000000000 +0100
+++ new/cantor-4.11.97/src/backends/python2/python2backend.desktop      
2013-11-24 21:27:16.000000000 +0100
@@ -3,11 +3,13 @@
 Icon=pythonbackend
 Name=Python2
 Name[bs]=Python2
+Name[ca]=Python2
 Name[cs]=Python2
 Name[da]=Python2
 Name[de]=Python2
 Name[es]=Python2
 Name[fi]=Python2
+Name[fr]=Python2
 Name[gl]=Python2
 Name[hu]=Python2
 Name[it]=Python2
@@ -30,11 +32,13 @@
 X-KDE-PluginInfo-License=GPL
 Comment=Backend for Python 2 Scientific Programming
 Comment[bs]=Pozadina za Python 2 naučno programiranje
+Comment[ca]=Dorsal per a la programació científica Python2
 Comment[cs]=Podpůrná vrstva pro vědecké programovací v Python 2
 Comment[da]=Backend til videnskabelige programmering med Python 2
 Comment[de]=Modul für die wissenschaftliche Programmierumgebung Python 2
 Comment[es]=Motor para programación científica en Python 2
 Comment[fi]=Python2-pohjaisen tieteellisen ohjelmointiympäristön 
taustajärjestelmä
+Comment[fr]=Moteur pour la programmation scientifique Python 2
 Comment[gl]=Infraestrutura para o programación científica con Python 2
 Comment[hu]=Háttérprogram a Python 2 tudományos programozáshoz
 Comment[it]=Backend per l'ambiente scientifico di programmazione Python 2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/cantor-4.11.90/src/backends/sage/sagecompletionobject.cpp 
new/cantor-4.11.97/src/backends/sage/sagecompletionobject.cpp
--- old/cantor-4.11.90/src/backends/sage/sagecompletionobject.cpp       
2013-11-14 01:27:21.000000000 +0100
+++ new/cantor-4.11.97/src/backends/sage/sagecompletionobject.cpp       
2013-11-24 21:27:16.000000000 +0100
@@ -53,7 +53,7 @@
     //cache the value of the "_" variable into __hist_tmp__, so we can restore 
the previous result
     //after complete() was evaluated
     m_expression=session()->evaluateExpression("__hist_tmp__=_; 
__CANTOR_IPYTHON_SHELL__.complete(\""+command()+"\");_=__hist_tmp__");
-    connect(m_expression, SIGNAL(gotResult()), this, 
+    connect(m_expression, SIGNAL(gotResult()), this,
            SLOT(extractCompletions()));
 
     if(t)
@@ -63,7 +63,7 @@
 void SageCompletionObject::extractCompletions()
 {
   SageSession* s=qobject_cast<SageSession*>(session());
-  if(s&&s->inLegacyMode())
+  if(s&&s->sageVersion()>SageSession::VersionInfo(5, 7))
     extractCompletionsLegacy();
   else
     extractCompletionsNew();
@@ -80,7 +80,7 @@
         kDebug()<<"something went wrong fetching tab completion";
         return;
     }
-    
+
     //the result looks like "['comp1', 'comp2']" parse it
 
     //for sage version 5.7 this looks like
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cantor-4.11.90/src/backends/sage/sagesession.cpp 
new/cantor-4.11.97/src/backends/sage/sagesession.cpp
--- old/cantor-4.11.90/src/backends/sage/sagesession.cpp        2013-11-14 
01:27:21.000000000 +0100
+++ new/cantor-4.11.97/src/backends/sage/sagesession.cpp        2013-11-24 
21:27:16.000000000 +0100
@@ -47,20 +47,62 @@
 
 static QByteArray newInitCmd=
     "__CANTOR_IPYTHON_SHELL__=get_ipython()   \n "\
-    "__CANTOR_IPYTHON_SHELL__.autoindent=False\n "\
-    "print '____END_OF_INIT____'              \n ";
+    "__CANTOR_IPYTHON_SHELL__.autoindent=False\n ";
 
 static QByteArray legacyInitCmd=
     "__CANTOR_IPYTHON_SHELL__=__IPYTHON__   \n "  \
-    "__CANTOR_IPYTHON_SHELL__.autoindent=False\n "\
-    "print '____END_OF_INIT____'              \n ";
+    "__CANTOR_IPYTHON_SHELL__.autoindent=False\n ";
 
+static QByteArray endOfInitMarker="print '____END_OF_INIT____'\n ";
+
+
+
+SageSession::VersionInfo::VersionInfo(int major, int minor)
+{
+    m_major=major;
+    m_minor=minor;
+}
+
+int SageSession::VersionInfo::major() const
+{
+    return m_major;
+}
+
+int SageSession::VersionInfo::minor() const
+{
+    return m_minor;
+}
+
+bool SageSession::VersionInfo::operator==(const SageSession::VersionInfo 
&other) const
+{
+    return m_major==other.m_major&&m_minor==other.m_minor;
+}
+
+bool SageSession::VersionInfo::operator<(const SageSession::VersionInfo 
&other) const
+{
+    return (m_major!= -1 && other.m_major==-1) ||
+        ( ((m_major!=-1 && other.m_major!=-1) || (m_major==other.m_major && 
m_major==-1) ) && ( 
m_major<other.m_major||(m_major==other.m_major&&m_minor<other.m_minor) ) );
+}
+
+bool SageSession::VersionInfo::operator<=(const SageSession::VersionInfo 
&other) const
+{
+    return (*this < other)||(*this == other);
+}
+
+bool SageSession::VersionInfo::operator>(const SageSession::VersionInfo& 
other) const
+{
+    return !( (*this <= other ));
+}
+
+bool SageSession::VersionInfo::operator>=(const SageSession::VersionInfo& 
other) const
+{
+    return !( *this < other);
+}
 
 SageSession::SageSession( Cantor::Backend* backend) : Session(backend)
 {
     kDebug();
     m_isInitialized=false;
-    m_inLegacyMode=false;
     m_haveSentInitCmd=false;
     connect( &m_dirWatch, SIGNAL( created( const QString& ) ), this, SLOT( 
fileCreated( const QString& ) ) );
 }
@@ -141,7 +183,7 @@
 
         kDebug()<<"tmp path: "<<m_tmpPath;
 
-        m_dirWatch.addDir( m_tmpPath, KDirWatch::WatchFiles );     
+        m_dirWatch.addDir( m_tmpPath, KDirWatch::WatchFiles );
     }
 
     if(!m_isInitialized)
@@ -158,30 +200,38 @@
             {
                 int major=version[1].toInt();
                 int minor=version[2].toInt();
-            
-                if(major<=5&&minor<=7)
+
+
+                m_sageVersion=SageSession::VersionInfo(major, minor);
+
+                if(m_sageVersion<=SageSession::VersionInfo(5, 7))
                 {
-                    m_inLegacyMode=true;
-                    kDebug()<<"using an old version of sage: 
"<<major<<"."<<minor<<". switching to legacy mode";
+                    kDebug()<<"using an old version of sage: 
"<<major<<"."<<minor<<". Using the old init command";
                     if(!m_haveSentInitCmd)
                     {
                         m_process->pty()->write(legacyInitCmd);
+                        defineCustomFunctions();
+                        m_process->pty()->write(endOfInitMarker);
                         m_haveSentInitCmd=true;
                     }
 
                 }else
                 {
                     kDebug()<<"using the current set of commands";
+
                     if(!m_haveSentInitCmd)
                     {
                         m_process->pty()->write(newInitCmd);
+                        defineCustomFunctions();
+                        m_process->pty()->write(endOfInitMarker);
                         m_haveSentInitCmd=true;
                     }
                 }
+
             }
         }
     }
-    
+
 
     int indexOfEOI=m_outputCache.indexOf("____END_OF_INIT____");
     if(indexOfEOI!=-1&&m_outputCache.indexOf(SagePrompt, indexOfEOI)!=-1)
@@ -337,23 +387,10 @@
 void SageSession::setTypesettingEnabled(bool enable)
 {
     Cantor::Session::setTypesettingEnabled(enable);
+
     //tell the sage server to enable/disable pretty_print
-    if(inLegacyMode())
-    {
-        //the _ and __IP.outputcache() are needed to keep the
-        // _ operator working. in modern versions of sage the __IP variable
-        //has been removed
-        if (enable)
-            
evaluateExpression("sage.misc.latex.pretty_print_default(true);_;__IP.outputcache()",
 Cantor::Expression::DeleteOnFinish);
-        else
-            
evaluateExpression("sage.misc.latex.pretty_print_default(false);_;__IP.outputcache()",
 Cantor::Expression::DeleteOnFinish);
-    }else
-    {
-        if (enable)
-            evaluateExpression("sage.misc.latex.pretty_print_default(true)", 
Cantor::Expression::DeleteOnFinish);
-        else
-            evaluateExpression("sage.misc.latex.pretty_print_default(false)", 
Cantor::Expression::DeleteOnFinish);
-    }
+    const QString cmd="__cantor_enable_typesetting(%1)";
+    evaluateExpression(cmd.arg(enable ? "true":"false"), 
Cantor::Expression::DeleteOnFinish);
 }
 
 Cantor::CompletionObject* SageSession::completionFor(const QString& command, 
int index)
@@ -366,9 +403,33 @@
     return new SageHighlighter(parent);
 }
 
-bool SageSession::inLegacyMode()
+SageSession::VersionInfo SageSession::sageVersion()
+{
+    return m_sageVersion;
+}
+
+void SageSession::defineCustomFunctions()
 {
-  return m_inLegacyMode;
+    //typesetting
+    QString cmd="def __cantor_enable_typesetting(enable):\n";
+    if(m_sageVersion<VersionInfo(5, 7))
+    {
+        //the _ and __IP.outputcache() are needed to keep the
+        // _ operator working. in modern versions of sage the __IP variable
+        //has been removed
+        cmd+="\t 
sage.misc.latex.pretty_print_default(enable);_;__IP.outputcache() \n\n";
+    }else if (m_sageVersion > VersionInfo(5, 7) && m_sageVersion< 
VersionInfo(5, 12))
+    {
+        cmd+="\t sage.misc.latex.pretty_print_default(enable)\n\n";
+    }else
+    {
+        cmd+="\t if(enable==true):\n "\
+             "\t \t %display typeset \n"\
+             "\t else: \n" \
+             "\t \t %display simple \n\n";
+    }
+
+    sendInputToProcess(cmd);
 }
 
 #include "sagesession.moc"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cantor-4.11.90/src/backends/sage/sagesession.h 
new/cantor-4.11.97/src/backends/sage/sagesession.h
--- old/cantor-4.11.90/src/backends/sage/sagesession.h  2013-11-14 
01:27:21.000000000 +0100
+++ new/cantor-4.11.97/src/backends/sage/sagesession.h  2013-11-24 
21:27:16.000000000 +0100
@@ -38,6 +38,27 @@
     static const QByteArray SagePrompt;
     static const QByteArray SageAlternativePrompt;
 
+    //small helper class to deal with sage versions
+    //Note: major version -1 is treated as most current
+    class VersionInfo{
+      public:
+        VersionInfo(int major = -1, int minor = -1);
+
+        //bool operator <=(const VersionInfo& v2);
+        bool operator <(const VersionInfo& other) const;
+        bool operator <=(const VersionInfo& other) const;
+        bool operator >(const VersionInfo& other) const;
+        bool operator >=(const VersionInfo& other) const;
+        bool operator ==( const VersionInfo& other) const;
+
+        int major() const;
+        int minor() const;
+      private:
+        int m_major;
+        int m_minor;
+    };
+
+
     SageSession( Cantor::Backend* backend);
     ~SageSession();
 
@@ -59,7 +80,7 @@
     Cantor::CompletionObject* completionFor(const QString& command, int 
index=-1);
     QSyntaxHighlighter* syntaxHighlighter(QObject* parent);
 
-    bool inLegacyMode();
+    VersionInfo sageVersion();
   public slots:
     void readStdOut();
     void readStdErr();
@@ -72,6 +93,7 @@
 
   private:
     void runFirstExpression();
+    void defineCustomFunctions();
   private:
     KPtyProcess* m_process;
     QList<SageExpression*> m_expressionQueue;
@@ -80,7 +102,7 @@
     KDirWatch m_dirWatch;
     bool m_waitingForPrompt;
     QString m_outputCache;
-    bool m_inLegacyMode;
+    VersionInfo m_sageVersion;
     bool m_haveSentInitCmd;
 };
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cantor-4.11.90/src/cantor_part.cpp 
new/cantor-4.11.97/src/cantor_part.cpp
--- old/cantor-4.11.90/src/cantor_part.cpp      2013-11-14 01:27:21.000000000 
+0100
+++ new/cantor-4.11.97/src/cantor_part.cpp      2013-11-24 21:27:16.000000000 
+0100
@@ -338,7 +338,7 @@
     // the non-i18n name here must be the same as the directory in
     // which the part's rc file is installed ('partrcdir' in the
     // Makefile)
-    KAboutData *aboutData = new KAboutData("cantorpart",  "cantor",  
ki18n("CantorPart"), "0.4");
+    KAboutData *aboutData = new KAboutData("cantorpart",  "cantor",  
ki18n("CantorPart"), "0.5");
     aboutData->addAuthor(ki18n("Alexander Rieder"), KLocalizedString(), 
"[email protected]");
     return aboutData;
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cantor-4.11.90/src/main.cpp 
new/cantor-4.11.97/src/main.cpp
--- old/cantor-4.11.90/src/main.cpp     2013-11-14 01:27:21.000000000 +0100
+++ new/cantor-4.11.97/src/main.cpp     2013-11-24 21:27:16.000000000 +0100
@@ -28,7 +28,7 @@
 static const char description[] =
     I18N_NOOP("KDE Frontend to mathematical applications");
 
-static const char version[] = "0.4";
+static const char version[] = "0.5";
 
 int main(int argc, char **argv)
 {
@@ -36,7 +36,7 @@
                      ki18n("Cantor"),
                      version, ki18n(description),
                      KAboutData::License_GPL,
-                     ki18n("(C) 2009-2012 Alexander Rieder"),
+                     ki18n("(C) 2009-2013 Alexander Rieder"),
                      KLocalizedString(), 0
         );
     about.addAuthor( ki18n("Alexander Rieder"), KLocalizedString(), 
"[email protected]" );

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

Reply via email to