Hello community,

here is the log from the commit of package gpxsee for openSUSE:Factory checked 
in at 2017-10-19 19:33:08
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gpxsee (Old)
 and      /work/SRC/openSUSE:Factory/.gpxsee.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "gpxsee"

Thu Oct 19 19:33:08 2017 rev:16 rq:535016 version:4.16

Changes:
--------
--- /work/SRC/openSUSE:Factory/gpxsee/gpxsee.changes    2017-10-08 
20:15:31.447196358 +0200
+++ /work/SRC/openSUSE:Factory/.gpxsee.new/gpxsee.changes       2017-10-19 
19:33:09.701999133 +0200
@@ -1,0 +2,11 @@
+Wed Oct 18 00:06:27 CEST 2017 - [email protected]
+
+- Update to version 4.16
+  * Fixed broken loading of KML files with folder elements outside
+    document element.
+  * Added support for KML files with multitracks.
+  * Added support for Temperature, Cadence and Heartrate in KML
+    files.
+  * Added support for TCX multi-sport activities.
+
+-------------------------------------------------------------------

Old:
----
  GPXSee-4.15.tar.gz

New:
----
  GPXSee-4.16.tar.gz

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

Other differences:
------------------
++++++ gpxsee.spec ++++++
--- /var/tmp/diff_new_pack.sLraEP/_old  2017-10-19 19:33:10.401966383 +0200
+++ /var/tmp/diff_new_pack.sLraEP/_new  2017-10-19 19:33:10.405966196 +0200
@@ -19,7 +19,7 @@
 # See also http://en.opensuse.org/openSUSE:Specfile_guidelines
 
 Name:           gpxsee
-Version:        4.15
+Version:        4.16
 Release:        1
 Summary:        GPS log files visualizing and analyzing tool
 License:        GPL-3.0

++++++ GPXSee-4.15.tar.gz -> GPXSee-4.16.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/GPXSee-4.15/.appveyor.yml 
new/GPXSee-4.16/.appveyor.yml
--- old/GPXSee-4.15/.appveyor.yml       2017-10-04 23:15:39.000000000 +0200
+++ new/GPXSee-4.16/.appveyor.yml       2017-10-14 22:57:03.000000000 +0200
@@ -1,4 +1,4 @@
-version: 4.15.{build}
+version: 4.16.{build}
 configuration: Release
 platform: Any CPU
 environment:
Binary files old/GPXSee-4.15/cert/mac/gpxsee.cer and 
new/GPXSee-4.16/cert/mac/gpxsee.cer differ
Binary files old/GPXSee-4.15/cert/win/gpxsee.cer and 
new/GPXSee-4.16/cert/win/gpxsee.cer differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/GPXSee-4.15/gpxsee.pro new/GPXSee-4.16/gpxsee.pro
--- old/GPXSee-4.15/gpxsee.pro  2017-10-04 23:15:39.000000000 +0200
+++ new/GPXSee-4.16/gpxsee.pro  2017-10-14 22:57:03.000000000 +0200
@@ -1,5 +1,5 @@
 TARGET = GPXSee
-VERSION = 4.15
+VERSION = 4.16
 QT += core \
     gui \
     network
Binary files old/GPXSee-4.15/pkg/gpxsee.cer and new/GPXSee-4.16/pkg/gpxsee.cer 
differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/GPXSee-4.15/pkg/gpxsee.nsi 
new/GPXSee-4.16/pkg/gpxsee.nsi
--- old/GPXSee-4.15/pkg/gpxsee.nsi      2017-10-04 23:15:39.000000000 +0200
+++ new/GPXSee-4.16/pkg/gpxsee.nsi      2017-10-14 22:57:03.000000000 +0200
@@ -5,7 +5,7 @@
 ; The name of the installer
 Name "GPXSee"
 ; Program version
-!define VERSION "4.15"
+!define VERSION "4.16"
 
 ; The file to write
 OutFile "GPXSee-${VERSION}.exe"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/GPXSee-4.15/pkg/gpxsee64.nsi 
new/GPXSee-4.16/pkg/gpxsee64.nsi
--- old/GPXSee-4.15/pkg/gpxsee64.nsi    2017-10-04 23:15:39.000000000 +0200
+++ new/GPXSee-4.16/pkg/gpxsee64.nsi    2017-10-14 22:57:03.000000000 +0200
@@ -5,7 +5,7 @@
 ; The name of the installer
 Name "GPXSee"
 ; Program version
-!define VERSION "4.15"
+!define VERSION "4.16"
 
 ; The file to write
 OutFile "GPXSee-${VERSION}_x64.exe"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/GPXSee-4.15/src/gui.cpp new/GPXSee-4.16/src/gui.cpp
--- old/GPXSee-4.15/src/gui.cpp 2017-10-04 23:15:39.000000000 +0200
+++ new/GPXSee-4.16/src/gui.cpp 2017-10-14 22:57:03.000000000 +0200
@@ -187,7 +187,7 @@
                }
        }
 
-       _map = _ml->maps().isEmpty() ? new EmptyMap(this) : _ml->maps().first();
+       _map = new EmptyMap(this);
 }
 
 void GUI::loadPOIs()
@@ -1711,9 +1711,7 @@
                _showMapAction->setChecked(true);
        if (_ml->maps().count()) {
                int index = 
mapIndex(settings.value(CURRENT_MAP_SETTING).toString());
-               _mapActions.at(index)->setChecked(true);
-               _map = _ml->maps().at(index);
-               _pathView->setMap(_map);
+               _mapActions.at(index)->trigger();
        }
        settings.endGroup();
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/GPXSee-4.15/src/kmlparser.cpp 
new/GPXSee-4.16/src/kmlparser.cpp
--- old/GPXSee-4.15/src/kmlparser.cpp   2017-10-04 23:15:39.000000000 +0200
+++ new/GPXSee-4.16/src/kmlparser.cpp   2017-10-14 22:57:03.000000000 +0200
@@ -225,10 +225,127 @@
                _reader.raiseError("Missing Point coordinates");
 }
 
+void KMLParser::heartRate(TrackData &track, int start)
+{
+       int i = start;
+       const char error[] = "Heartrate data count mismatch";
+
+       while (_reader.readNextStartElement()) {
+               if (_reader.name() == "value") {
+                       if (i < track.size())
+                               track[i++].setHeartRate(number());
+                       else {
+                               _reader.raiseError(error);
+                               return;
+                       }
+               } else
+                       _reader.skipCurrentElement();
+       }
+
+       if (i != track.size())
+               _reader.raiseError(error);
+}
+
+void KMLParser::cadence(TrackData &track, int start)
+{
+       int i = start;
+       const char error[] = "Cadence data count mismatch";
+
+       while (_reader.readNextStartElement()) {
+               if (_reader.name() == "value") {
+                       if (i < track.size())
+                               track[i++].setCadence(number());
+                       else {
+                               _reader.raiseError(error);
+                               return;
+                       }
+               } else
+                       _reader.skipCurrentElement();
+       }
+
+       if (i != track.size())
+               _reader.raiseError(error);
+}
+
+void KMLParser::speed(TrackData &track, int start)
+{
+       int i = start;
+       const char error[] = "Speed data count mismatch";
+
+       while (_reader.readNextStartElement()) {
+               if (_reader.name() == "value") {
+                       if (i < track.size())
+                               track[i++].setSpeed(number());
+                       else {
+                               _reader.raiseError(error);
+                               return;
+                       }
+               } else
+                       _reader.skipCurrentElement();
+       }
+
+       if (i != track.size())
+               _reader.raiseError(error);
+}
+
+void KMLParser::temperature(TrackData &track, int start)
+{
+       int i = start;
+       const char error[] = "Temperature data count mismatch";
+
+       while (_reader.readNextStartElement()) {
+               if (_reader.name() == "value") {
+                       if (i < track.size())
+                               track[i++].setTemperature(number());
+                       else {
+                               _reader.raiseError(error);
+                               return;
+                       }
+               } else
+                       _reader.skipCurrentElement();
+       }
+
+       if (i != track.size())
+               _reader.raiseError(error);
+}
+
+void KMLParser::schemaData(TrackData &track, int start)
+{
+       while (_reader.readNextStartElement()) {
+               if (_reader.name() == "SimpleArrayData") {
+                       QXmlStreamAttributes attr = _reader.attributes();
+                       QStringRef name = attr.value("name");
+
+                       if (name == "Heartrate")
+                               heartRate(track, start);
+                       else if (name == "Cadence")
+                               cadence(track, start);
+                       else if (name == "Speed")
+                               speed(track, start);
+                       else if (name == "Temperature")
+                               temperature(track, start);
+                       else
+                               _reader.skipCurrentElement();
+               } else
+                       _reader.skipCurrentElement();
+       }
+}
+
+void KMLParser::extendedData(TrackData &track, int start)
+{
+       while (_reader.readNextStartElement()) {
+               if (_reader.name() == "SchemaData")
+                       schemaData(track, start);
+               else
+                       _reader.skipCurrentElement();
+       }
+}
+
 void KMLParser::track(TrackData &track)
 {
-       const char mismatchError[] = "gx:coord/when element count mismatch";
-       int i = track.size();
+       const char error[] = "gx:coord/when element count mismatch";
+       int first = track.size();
+       int i = first;
 
        while (_reader.readNextStartElement()) {
                if (_reader.name() == "when") {
@@ -236,19 +353,31 @@
                        track.last().setTimestamp(time());
                } else if (_reader.name() == "coord") {
                        if (i == track.size()) {
-                               _reader.raiseError(mismatchError);
+                               _reader.raiseError(error);
                                return;
                        } else if (!coord(track[i])) {
                                _reader.raiseError("Invalid coordinates");
                                return;
                        }
                        i++;
-               } else
+               } else if (_reader.name() == "ExtendedData")
+                       extendedData(track, first);
+               else
                        _reader.skipCurrentElement();
        }
 
        if (i != track.size())
-               _reader.raiseError(mismatchError);
+               _reader.raiseError(error);
+}
+
+void KMLParser::multiTrack(TrackData &t)
+{
+       while (_reader.readNextStartElement()) {
+               if (_reader.name() == "Track")
+                       track(t);
+               else
+                       _reader.skipCurrentElement();
+       }
 }
 
 void KMLParser::multiGeometry(QList<TrackData> &tracks,
@@ -308,6 +437,12 @@
                        t.setName(name);
                        t.setDescription(desc);
                        track(t);
+               } else if (_reader.name() == "MultiTrack") {
+                       tracks.append(TrackData());
+                       TrackData &t = tracks.last();
+                       t.setName(name);
+                       t.setDescription(desc);
+                       multiTrack(t);
                } else
                        _reader.skipCurrentElement();
        }
@@ -344,6 +479,8 @@
                        document(tracks, waypoints);
                else if (_reader.name() == "Placemark")
                        placemark(tracks, waypoints);
+               else if (_reader.name() == "Folder")
+                       folder(tracks, waypoints);
                else
                        _reader.skipCurrentElement();
        }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/GPXSee-4.15/src/kmlparser.h 
new/GPXSee-4.16/src/kmlparser.h
--- old/GPXSee-4.15/src/kmlparser.h     2017-10-04 23:15:39.000000000 +0200
+++ new/GPXSee-4.16/src/kmlparser.h     2017-10-14 22:57:03.000000000 +0200
@@ -23,11 +23,18 @@
        void multiGeometry(QList<TrackData> &tracks, QList<Waypoint> &waypoints,
          const QString &name, const QString &desc, const QDateTime timestamp);
        void track(TrackData &track);
+       void multiTrack(TrackData &t);
        void lineString(TrackData &track);
        void point(Waypoint &waypoint);
        bool pointCoordinates(Waypoint &waypoint);
        bool lineCoordinates(TrackData &track);
        bool coord(Trackpoint &trackpoint);
+       void extendedData(TrackData &track, int start);
+       void schemaData(TrackData &track, int start);
+       void heartRate(TrackData &track, int start);
+       void cadence(TrackData &track, int start);
+       void speed(TrackData &track, int start);
+       void temperature(TrackData &track, int start);
        QDateTime timeStamp();
        qreal number();
        QDateTime time();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/GPXSee-4.15/src/pathview.cpp 
new/GPXSee-4.16/src/pathview.cpp
--- old/GPXSee-4.15/src/pathview.cpp    2017-10-04 23:15:39.000000000 +0200
+++ new/GPXSee-4.16/src/pathview.cpp    2017-10-14 22:57:03.000000000 +0200
@@ -43,8 +43,10 @@
        _scene->addItem(_mapScale);
 
        _map = map;
-       _poi = poi;
+       _map->load();
        connect(_map, SIGNAL(loaded()), this, SLOT(reloadMap()));
+
+       _poi = poi;
        connect(_poi, SIGNAL(pointsChanged()), this, SLOT(updatePOI()));
 
        _units = Metric;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/GPXSee-4.15/src/tcxparser.cpp 
new/GPXSee-4.16/src/tcxparser.cpp
--- old/GPXSee-4.15/src/tcxparser.cpp   2017-10-04 23:15:39.000000000 +0200
+++ new/GPXSee-4.16/src/tcxparser.cpp   2017-10-14 22:57:03.000000000 +0200
@@ -183,7 +183,7 @@
        }
 }
 
-void TCXParser::activities(QList<TrackData> &tracks)
+void TCXParser::sport(QList<TrackData> &tracks)
 {
        while (_reader.readNextStartElement()) {
                if (_reader.name() == "Activity") {
@@ -193,6 +193,29 @@
                        _reader.skipCurrentElement();
        }
 }
+
+void TCXParser::multiSportSession(QList<TrackData> &tracks)
+{
+       while (_reader.readNextStartElement()) {
+               if (_reader.name() == "FirstSport" || _reader.name() == 
"NextSport")
+                       sport(tracks);
+               else
+                       _reader.skipCurrentElement();
+       }
+}
+
+void TCXParser::activities(QList<TrackData> &tracks)
+{
+       while (_reader.readNextStartElement()) {
+               if (_reader.name() == "Activity") {
+                       tracks.append(TrackData());
+                       activity(tracks.back());
+               } else if (_reader.name() == "MultiSportSession")
+                       multiSportSession(tracks);
+               else
+                       _reader.skipCurrentElement();
+       }
+}
 
 void TCXParser::tcx(QList<TrackData> &tracks, QList<Waypoint> &waypoints)
 {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/GPXSee-4.15/src/tcxparser.h 
new/GPXSee-4.16/src/tcxparser.h
--- old/GPXSee-4.15/src/tcxparser.h     2017-10-04 23:15:39.000000000 +0200
+++ new/GPXSee-4.16/src/tcxparser.h     2017-10-14 22:57:03.000000000 +0200
@@ -19,6 +19,8 @@
        void tcx(QList<TrackData> &tracks, QList<Waypoint> &waypoints);
        void courses(QList<TrackData> &tracks, QList<Waypoint> &waypoints);
        void activities(QList<TrackData> &tracks);
+       void multiSportSession(QList<TrackData> &tracks);
+       void sport(QList<TrackData> &tracks);
        void course(QList<Waypoint> &waypoints, TrackData &track);
        void activity(TrackData &track);
        void lap(TrackData &track);

++++++ debian.changelog ++++++
--- /var/tmp/diff_new_pack.sLraEP/_old  2017-10-19 19:33:10.613956465 +0200
+++ /var/tmp/diff_new_pack.sLraEP/_new  2017-10-19 19:33:10.613956465 +0200
@@ -1,3 +1,14 @@
+gpxsee (4.16) stable; urgency=low
+
+  * Fixed broken loading of KML files with folder elements outside
+    document element.
+  * Added support for KML files with multitracks.
+  * Added support for Temperature, Cadence and Heartrate in KML
+    files.
+  * Added support for TCX multi-sport activities.
+
+ -- Martin Tuma <[email protected]>  Wed, 18 Oct 2017 00:12:16 +0200
+
 gpxsee (4.15) stable; urgency=low
 
   * Fixed the 1px content offset on zoom/map change issue.

++++++ gpxsee.dsc ++++++
--- /var/tmp/diff_new_pack.sLraEP/_old  2017-10-19 19:33:10.693952722 +0200
+++ /var/tmp/diff_new_pack.sLraEP/_new  2017-10-19 19:33:10.697952535 +0200
@@ -1,9 +1,9 @@
 Format: 1.0
 Source: gpxsee
-Version: 4.15
+Version: 4.16
 Binary: gpxsee
 Maintainer: Martin Tuma <[email protected]>
 Architecture: any
 Build-Depends: debhelper (>= 9), qtbase5-dev, qtbase5-dev-tools, qt5-qmake, 
qttools5-dev-tools, libqt5opengl5-dev
 Files:
- 00000000000000000000000000000000 0 GPXSee-4.15.tar.gz
+ 00000000000000000000000000000000 0 GPXSee-4.16.tar.gz


Reply via email to