summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rwxr-xr-xlib/Travelynx.pm11
-rw-r--r--lib/Travelynx/Command/database.pm15
2 files changed, 21 insertions, 5 deletions
diff --git a/lib/Travelynx.pm b/lib/Travelynx.pm
index 7c9e723..818205f 100755
--- a/lib/Travelynx.pm
+++ b/lib/Travelynx.pm
@@ -1790,11 +1790,12 @@ sub startup {
}
my @journeys = $self->get_user_travels(
- uid => $uid,
- cancelled => $opt{cancelled} ? 1 : 0,
- verbose => 1,
- after => $interval_start,
- before => $interval_end
+ uid => $uid,
+ cancelled => $opt{cancelled} ? 1 : 0,
+ verbose => 1,
+ with_polyline => 1,
+ after => $interval_start,
+ before => $interval_end
);
my $stats = $self->compute_journey_stats(@journeys);
diff --git a/lib/Travelynx/Command/database.pm b/lib/Travelynx/Command/database.pm
index 22d8a93..59e41d9 100644
--- a/lib/Travelynx/Command/database.pm
+++ b/lib/Travelynx/Command/database.pm
@@ -997,6 +997,21 @@ my @migrations = (
}
);
},
+
+ # v20 -> v21
+ # After introducing polyline support, journey distance calculation diverged:
+ # the detail view (individual train) used the polyline, whereas monthly and
+ # yearly statistics were still based on beeline between intermediate stops.
+ # Release 1.16.0 fixes this -> ensure all caches are rebuilt.
+ sub {
+ my ($db) = @_;
+ $db->query(
+ qq{
+ truncate journey_stats;
+ update schema_version set version = 21;
+ }
+ );
+ },
);
sub setup_db {