[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    [krita/akapustin/T6102-telemetry] /: Install info sends only for updates
From:       Alexey Kapustin <null () kde ! org>
Date:       2017-08-31 21:26:31
Message-ID: E1dnWyt-0000QL-UB () code ! kde ! org
[Download RAW message or body]

Git commit bffa5449672919c3a83b6db5db02d0b632ab9543 by Alexey Kapustin.
Committed on 31/08/2017 at 21:08.
Pushed by akapustin into branch 'akapustin/T6102-telemetry'.

Install info sends only for updates

M  +2    -2    libs/telemetry/kis_telemetry_abstract.h
M  +1    -0    libs/ui/KisMainWindow.cpp
M  +2    -0    libs/ui/tool/kis_tool_freehand.cc
M  +4    -3    plugins/telemetry/assert_info_source.cpp
M  +53   -32   plugins/telemetry/telemetry_provider.cpp
M  +1    -0    plugins/telemetry/telemetry_provider.h

https://commits.kde.org/krita/bffa5449672919c3a83b6db5db02d0b632ab9543

diff --git a/libs/telemetry/kis_telemetry_abstract.h \
b/libs/telemetry/kis_telemetry_abstract.h index 21e692b1665..450c902d3cb 100644
--- a/libs/telemetry/kis_telemetry_abstract.h
+++ b/libs/telemetry/kis_telemetry_abstract.h
@@ -42,8 +42,8 @@ public:
     virtual void saveAssertInfo(QString id, KisAssertInfoTicket::AssertInfo \
assertInfo) = 0;  
 protected:
-  // QString m_adress = "http://localhost:8080/";
-   QString m_adress = "http://akapustin.me:8080/";
+   QString m_adress = "http://localhost:8080/";
+   //QString m_adress = "http://akapustin.me:8080/";
 
 };
 
diff --git a/libs/ui/KisMainWindow.cpp b/libs/ui/KisMainWindow.cpp
index 48c48f3efdb..3716c9820ab 100644
--- a/libs/ui/KisMainWindow.cpp
+++ b/libs/ui/KisMainWindow.cpp
@@ -665,6 +665,7 @@ void KisMainWindow::sendInfo()
     qDebug()<<"send_enfo"<<"\n";
     d->telemetry.reset(new KisDlgSendTelemtry(this->viewManager()));
     if(d->telemetry->exec()== QDialog::Accepted){
+        KisTelemetryInstance::instance()->sendData("asserts");
         KisTelemetryInstance::instance()->sendData("install");
         KisTelemetryInstance::instance()->sendData("tools");
         KisTelemetryInstance::instance()->sendData("imageProperties");
diff --git a/libs/ui/tool/kis_tool_freehand.cc b/libs/ui/tool/kis_tool_freehand.cc
index 25582a86cb9..ccf33654603 100644
--- a/libs/ui/tool/kis_tool_freehand.cc
+++ b/libs/ui/tool/kis_tool_freehand.cc
@@ -263,6 +263,8 @@ void KisToolFreehand::endPrimaryAction(KoPointerEvent *event)
     }
 
     setMode(KisTool::HOVER_MODE);
+    KIS_SAFE_ASSERT_RECOVER_NOOP(0);
+
 }
 
 bool KisToolFreehand::tryPickByPaintOp(KoPointerEvent *event, AlternateAction \
                action)
diff --git a/plugins/telemetry/assert_info_source.cpp \
b/plugins/telemetry/assert_info_source.cpp index 69d137e4d34..7103bb10315 100644
--- a/plugins/telemetry/assert_info_source.cpp
+++ b/plugins/telemetry/assert_info_source.cpp
@@ -22,6 +22,7 @@
 #include <kconfig.h>
 #include <kconfiggroup.h>
 #include <ksharedconfig.h>
+#include <QDebug>
 using namespace UserFeedback;
 using namespace KUserFeedback;
 
@@ -38,7 +39,7 @@ QString UserFeedback::TelemetryAssertInfoSource::description() \
const  
 QVariant UserFeedback::TelemetryAssertInfoSource::data()
 {
-
+    qDebug()<<"TelemetryAssertInfoSource";
     m_assertsDumps.clear();
     foreach (assertInfo assert, m_assertsDumpsMap) {
         KisTelemetryTicket* ticket = assert.ticket.data();
@@ -49,11 +50,11 @@ QVariant UserFeedback::TelemetryAssertInfoSource::data()
         if (assertTicket) {
             QVariantMap m;
             m.insert(QStringLiteral("assertText"), \
                assertTicket->assertInfo().assertText);
-
+            qDebug()<<assertTicket->assertInfo().assertText;
             m.insert(QStringLiteral("assertFile"), assertTicket->assertInfo().file);
 
             m.insert(QStringLiteral("assertLine"), assertTicket->assertInfo().line);
-            m.insert(QStringLiteral("count"), assertTicket->assertInfo().line);
+            m.insert(QStringLiteral("count"), assert.count);
             m.insert(QStringLiteral("isFatal"), false);
 
             m_assertsDumps.push_back(m);
diff --git a/plugins/telemetry/telemetry_provider.cpp \
b/plugins/telemetry/telemetry_provider.cpp index 0293cf25043..8846a4e3dd3 100644
--- a/plugins/telemetry/telemetry_provider.cpp
+++ b/plugins/telemetry/telemetry_provider.cpp
@@ -34,6 +34,7 @@
 #include <KoToolRegistry.h>
 #include <QTime>
 #include <assert_info_source.h>
+#include <config-debug.h>
 #include <fatal_assert_info_source.h>
 #include <image_properties_source.h>
 #include <iostream>
@@ -50,27 +51,41 @@ TelemetryProvider::TelemetryProvider()
     KConfigGroup configGroup = \
KSharedConfig::openConfig()->group("KisTelemetryInstall");  
     QString isFirstStart = configGroup.readEntry("FirstStart");
-    // if (isFirstStart.isEmpty()) {
-    //don't append install source
-    std::unique_ptr<KUserFeedback::AbstractDataSource> cpu(new \
                UserFeedback::TelemetryCpuInfoSource());
-    m_installSources.push_back(std::move(cpu));
-    std::unique_ptr<KUserFeedback::AbstractDataSource> qt(new \
                KUserFeedback::QtVersionSource());
-    m_installSources.push_back(std::move(qt));
-    std::unique_ptr<KUserFeedback::AbstractDataSource> compiler(new \
                KUserFeedback::CompilerInfoSource());
-    m_installSources.push_back(std::move(compiler));
-    std::unique_ptr<KUserFeedback::AbstractDataSource> locale(new \
                KUserFeedback::LocaleInfoSource());
-    m_installSources.push_back(std::move(locale));
-    std::unique_ptr<KUserFeedback::AbstractDataSource> opengl(new \
                KUserFeedback::OpenGLInfoSource());
-    m_installSources.push_back(std::move(opengl));
-    std::unique_ptr<KUserFeedback::AbstractDataSource> platform(new \
                KUserFeedback::PlatformInfoSource());
-    m_installSources.push_back(std::move(platform));
-    std::unique_ptr<KUserFeedback::AbstractDataSource> screen(new \
                KUserFeedback::ScreenInfoSource());
-    m_installSources.push_back(std::move(screen));
-    std::unique_ptr<KUserFeedback::AbstractDataSource> general(new \
                UserFeedback::TelemetryGeneralInfoSource);
-    m_installSources.push_back(std::move(general));
-    // }
-    for (auto& source : m_installSources) {
-        m_installProvider->addDataSource(source.get());
+    QString version = configGroup.readEntry("Version", "noversion");
+    m_sendInstallInfo = false;
+    qDebug() << "APP VERSION______" << qApp->applicationVersion();
+    if (qApp->applicationVersion() != version) {
+        configGroup.writeEntry("Version", qApp->applicationVersion());
+        qDebug() << "SEND INSTALL__"<<version;
+#ifndef HAVE_BACKTRACE
+        if (isFirstStart.isEmpty()) {
+#endif
+            //don't append install source
+            std::unique_ptr<KUserFeedback::AbstractDataSource> cpu(new \
UserFeedback::TelemetryCpuInfoSource()); +            \
m_installSources.push_back(std::move(cpu)); +            \
std::unique_ptr<KUserFeedback::AbstractDataSource> qt(new \
KUserFeedback::QtVersionSource()); +            \
m_installSources.push_back(std::move(qt)); +            \
std::unique_ptr<KUserFeedback::AbstractDataSource> compiler(new \
KUserFeedback::CompilerInfoSource()); +            \
m_installSources.push_back(std::move(compiler)); +            \
std::unique_ptr<KUserFeedback::AbstractDataSource> locale(new \
KUserFeedback::LocaleInfoSource()); +            \
m_installSources.push_back(std::move(locale)); +            \
std::unique_ptr<KUserFeedback::AbstractDataSource> opengl(new \
KUserFeedback::OpenGLInfoSource()); +            \
m_installSources.push_back(std::move(opengl)); +            \
std::unique_ptr<KUserFeedback::AbstractDataSource> platform(new \
KUserFeedback::PlatformInfoSource()); +            \
m_installSources.push_back(std::move(platform)); +            \
std::unique_ptr<KUserFeedback::AbstractDataSource> screen(new \
KUserFeedback::ScreenInfoSource()); +            \
m_installSources.push_back(std::move(screen)); +            //#ifdef HAVE_BACKTRACE
+            std::unique_ptr<KUserFeedback::AbstractDataSource> general(new \
UserFeedback::TelemetryGeneralInfoSource); +            //#endif
+            m_installSources.push_back(std::move(general));
+            for (auto& source : m_installSources) {
+                m_installProvider->addDataSource(source.get());
+            }
+            m_sendInstallInfo = true;
+#ifndef HAVE_BACKTRACE
+        }
+#endif
     }
 
     m_toolsProvider.reset(new KUserFeedback::Provider);
@@ -105,6 +120,15 @@ TelemetryProvider::TelemetryProvider()
     for (auto& source : m_actionsSources) {
         m_actionsInfoProvider->addDataSource(source.get());
     }
+    //asserts
+    m_assertsProvider.reset(new KUserFeedback::Provider);
+    m_assertsProvider->setTelemetryMode(KUserFeedback::Provider::DetailedUsageStatistics);
 +    std::unique_ptr<KUserFeedback::AbstractDataSource> assertsInfo(new \
UserFeedback:: +            TelemetryAssertInfoSource);
+    m_assertsSources.push_back(std::move(assertsInfo));
+    for (auto& source : m_assertsSources) {
+        m_assertsProvider->addDataSource(source.get());
+    }
 }
 
 void TelemetryProvider::sendData(QString path, QString adress)
@@ -120,18 +144,12 @@ void TelemetryProvider::sendData(QString path, QString adress)
         break;
     }
     case install: {
-        KConfigGroup configGroup = \
                KSharedConfig::openConfig()->group("KisTelemetryInstall");
-        QString isFirstStart = configGroup.readEntry("FirstStart");
-
-        if (isFirstStart.isEmpty()) {
-            //don't append install source
-            configGroup.writeEntry("FirstStart", true);
-        } else {
-            // break;
+        if (m_sendInstallInfo) {
+            m_installProvider->setFeedbackServer(QUrl(finalAdress + path));
+            m_installProvider->submit();
+            m_sendInstallInfo = false;
+            break;
         }
-        m_installProvider->setFeedbackServer(QUrl(finalAdress + path));
-        m_installProvider->submit();
-        break;
     }
     case asserts: {
         m_assertsProvider->setFeedbackServer(QUrl(finalAdress + path));
@@ -146,6 +164,7 @@ void TelemetryProvider::sendData(QString path, QString adress)
     case imageProperties: {
         m_imagePropertiesProvider->setFeedbackServer(QUrl(finalAdress + path));
         m_imagePropertiesProvider->submit();
+
         break;
     }
     case actions: {
@@ -282,5 +301,7 @@ TelemetryProvider::TelemetryCategory \
TelemetryProvider::pathToKind(QString path)  return imageProperties;
     else if (path == "actions/")
         return actions;
+    else if (path == "asserts/")
+        return asserts;
     return tools;
 }
diff --git a/plugins/telemetry/telemetry_provider.h \
b/plugins/telemetry/telemetry_provider.h index 8c99af1a242..f55b9a1d97c 100644
--- a/plugins/telemetry/telemetry_provider.h
+++ b/plugins/telemetry/telemetry_provider.h
@@ -84,6 +84,7 @@ private:
 
 private:
     TelemetryCategory pathToKind(QString path);
+    bool m_sendInstallInfo;
 };
 
 #endif


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic