Commit graph

41 commits

Author SHA1 Message Date
Evgenii Burmakin
c8242ce902
0.36.3 (#2013)
* fix: move foreman to global gems to fix startup crash (#1971)

* Update exporting code to stream points data to file in batches to red… (#1980)

* Update exporting code to stream points data to file in batches to reduce memory usage

* Update changelog

* Update changelog

* Feature/maplibre frontend (#1953)

* Add a plan to use MapLibre GL JS for the frontend map rendering, replacing Leaflet

* Implement phase 1

* Phases 1-3 + part of 4

* Fix e2e tests

* Phase 6

* Implement fog of war

* Phase 7

* Next step: fix specs, phase 7 done

* Use our own map tiles

* Extract v2 map logic to separate manager classes

* Update settings panel on v2 map

* Update v2 e2e tests structure

* Reimplement location search in maps v2

* Update speed routes

* Implement visits and places creation in v2

* Fix last failing test

* Implement visits merging

* Fix a routes e2e test and simplify the routes layer styling.

* Extract js to modules from maps_v2_controller.js

* Implement area creation

* Fix spec problem

* Fix some e2e tests

* Implement live mode in v2 map

* Update icons and panel

* Extract some styles

* Remove unused file

* Start adding dark theme to popups on MapLibre maps

* Make popups respect dark theme

* Move v2 maps to maplibre namespace

* Update v2 references to maplibre

* Put place, area and visit info into side panel

* Update API to use safe settings config method

* Fix specs

* Fix method name to config in SafeSettings and update usages accordingly

* Add missing public files

* Add handling for real time points

* Fix remembering enabled/disabled layers of the v2 map

* Fix lots of e2e tests

* Add settings to select map version

* Use maps/v2 as main path for MapLibre maps

* Update routing

* Update live mode

* Update maplibre controller

* Update changelog

* Remove some console.log statements

* Pull only necessary data for map v2 points

* Feature/raw data archive (#2009)

* 0.36.2 (#2007)

* fix: move foreman to global gems to fix startup crash (#1971)

* Update exporting code to stream points data to file in batches to red… (#1980)

* Update exporting code to stream points data to file in batches to reduce memory usage

* Update changelog

* Update changelog

* Feature/maplibre frontend (#1953)

* Add a plan to use MapLibre GL JS for the frontend map rendering, replacing Leaflet

* Implement phase 1

* Phases 1-3 + part of 4

* Fix e2e tests

* Phase 6

* Implement fog of war

* Phase 7

* Next step: fix specs, phase 7 done

* Use our own map tiles

* Extract v2 map logic to separate manager classes

* Update settings panel on v2 map

* Update v2 e2e tests structure

* Reimplement location search in maps v2

* Update speed routes

* Implement visits and places creation in v2

* Fix last failing test

* Implement visits merging

* Fix a routes e2e test and simplify the routes layer styling.

* Extract js to modules from maps_v2_controller.js

* Implement area creation

* Fix spec problem

* Fix some e2e tests

* Implement live mode in v2 map

* Update icons and panel

* Extract some styles

* Remove unused file

* Start adding dark theme to popups on MapLibre maps

* Make popups respect dark theme

* Move v2 maps to maplibre namespace

* Update v2 references to maplibre

* Put place, area and visit info into side panel

* Update API to use safe settings config method

* Fix specs

* Fix method name to config in SafeSettings and update usages accordingly

* Add missing public files

* Add handling for real time points

* Fix remembering enabled/disabled layers of the v2 map

* Fix lots of e2e tests

* Add settings to select map version

* Use maps/v2 as main path for MapLibre maps

* Update routing

* Update live mode

* Update maplibre controller

* Update changelog

* Remove some console.log statements

---------

Co-authored-by: Robin Tuszik <mail@robin.gg>

* Remove esbuild scripts from package.json

* Remove sideEffects field from package.json

* Raw data archivation

* Add tests

* Fix tests

* Fix tests

* Update ExceptionReporter

* Add schedule to run raw data archival job monthly

* Change file structure for raw data archival feature

* Update changelog and version for raw data archival feature

---------

Co-authored-by: Robin Tuszik <mail@robin.gg>

* Set raw_data to an empty hash instead of nil when archiving

* Fix storage configuration and file extraction

* Consider MIN_MINUTES_SPENT_IN_CITY during stats calculation (#2018)

* Consider MIN_MINUTES_SPENT_IN_CITY during stats calculation

* Remove raw data from visited cities api endpoint

* Use user timezone to show dates on maps (#2020)

* Fix/pre epoch time (#2019)

* Use user timezone to show dates on maps

* Limit timestamps to valid range to prevent database errors when users enter pre-epoch dates.

* Limit timestamps to valid range to prevent database errors when users enter pre-epoch dates.

* Fix tests failing due to new index on stats table

* Fix failing specs

* Update redis client configuration to support unix socket connection

* Update changelog

* Fix kml kmz import issues (#2023)

* Fix kml kmz import issues

* Refactor KML importer to improve readability and maintainability

* Implement moving points in map v2 and fix route rendering logic to ma… (#2027)

* Implement moving points in map v2 and fix route rendering logic to match map v1.

* Fix route spec

* fix(maplibre): update date format to ISO 8601 (#2029)

* Add verification step to raw data archival process (#2028)

* Add verification step to raw data archival process

* Add actual verification of raw data archives after creation, and only clear raw_data for verified archives.

* Fix failing specs

* Eliminate zip-bomb risk

* Fix potential memory leak in js

* Return .keep files

* Use Toast instead of alert for notifications

* Add help section to navbar dropdown

* Update changelog

* Remove raw_data_archival_job

* Ensure file is being closed properly after reading in Archivable concern

---------

Co-authored-by: Robin Tuszik <mail@robin.gg>
2025-12-14 12:05:59 +01:00
Evgenii Burmakin
8934c29fce
0.36.2 (#2007)
* fix: move foreman to global gems to fix startup crash (#1971)

* Update exporting code to stream points data to file in batches to red… (#1980)

* Update exporting code to stream points data to file in batches to reduce memory usage

* Update changelog

* Update changelog

* Feature/maplibre frontend (#1953)

* Add a plan to use MapLibre GL JS for the frontend map rendering, replacing Leaflet

* Implement phase 1

* Phases 1-3 + part of 4

* Fix e2e tests

* Phase 6

* Implement fog of war

* Phase 7

* Next step: fix specs, phase 7 done

* Use our own map tiles

* Extract v2 map logic to separate manager classes

* Update settings panel on v2 map

* Update v2 e2e tests structure

* Reimplement location search in maps v2

* Update speed routes

* Implement visits and places creation in v2

* Fix last failing test

* Implement visits merging

* Fix a routes e2e test and simplify the routes layer styling.

* Extract js to modules from maps_v2_controller.js

* Implement area creation

* Fix spec problem

* Fix some e2e tests

* Implement live mode in v2 map

* Update icons and panel

* Extract some styles

* Remove unused file

* Start adding dark theme to popups on MapLibre maps

* Make popups respect dark theme

* Move v2 maps to maplibre namespace

* Update v2 references to maplibre

* Put place, area and visit info into side panel

* Update API to use safe settings config method

* Fix specs

* Fix method name to config in SafeSettings and update usages accordingly

* Add missing public files

* Add handling for real time points

* Fix remembering enabled/disabled layers of the v2 map

* Fix lots of e2e tests

* Add settings to select map version

* Use maps/v2 as main path for MapLibre maps

* Update routing

* Update live mode

* Update maplibre controller

* Update changelog

* Remove some console.log statements

---------

Co-authored-by: Robin Tuszik <mail@robin.gg>
2025-12-06 20:54:49 +01:00
Evgenii Burmakin
b1393ee674
0.36.0 (#1952)
* Implement OmniAuth GitHub authentication

* Fix omniauth GitHub scope to include user email access

* Remove margin-bottom

* Implement Google OAuth2 authentication

* Implement OIDC authentication for Dawarich using omniauth_openid_connect gem.

* Add patreon account linking and patron checking service

* Update docker-compose.yml to use boolean values instead of strings

* Add support for KML files

* Add tests

* Update changelog

* Remove patreon OAuth integration

* Move omniauthable to a concern

* Update an icon in integrations

* Update changelog

* Update app version

* Fix family location sharing toggle

* Move family location sharing to its own controller

* Update changelog

* Implement basic tagging functionality for places, allowing users to categorize and label places with custom tags.

* Add places management API and tags feature

* Add some changes related to places management feature

* Fix some tests

* Fix sometests

* Add places layer

* Update places layer to use Leaflet.Control.Layers.Tree for hierarchical layer control

* Rework tag form

* Add hashtag

* Add privacy zones to tags

* Add notes to places and manage place tags

* Update changelog

* Update e2e tests

* Extract tag serializer to its own file

* Fix some tests

* Fix tags request specs

* Fix some tests

* Fix rest of the tests

* Revert some changes

* Add missing specs

* Revert changes in place export/import code

* Fix some specs

* Fix PlaceFinder to only consider global places when finding existing places

* Fix few more specs

* Fix visits creator spec

* Fix last tests

* Update place creating modal

* Add home location based on "Home" tagged place

* Save enabled tag layers

* Some fixes

* Fix bug where enabling place tag layers would trigger saving enabled layers, overwriting with incomplete data

* Update migration to use disable_ddl_transaction! and add up/down methods

* Fix tag layers restoration and filtering logic

* Update OIDC auto-registration and email/password registration settings

* Fix potential xss
2025-11-24 19:45:09 +01:00
Eugene Burmakin
a4605f9b3e Add swagger spec for visits api 2025-08-21 20:53:23 +02:00
Eugene Burmakin
002b3bd635 Fix settings controller spec and tracks popup 2025-07-20 17:06:45 +02:00
Eugene Burmakin
878d863569 Fix some tests 2025-07-14 21:15:45 +02:00
Eugene Burmakin
3b474704ea Fixes for visits suggestions. 2025-07-02 23:50:32 +02:00
Eugene Burmakin
e6fddddc01 Fix tests 2025-05-04 00:16:02 +02:00
Eugene Burmakin
6fac14675b Restrict to some functionality access for inactive users 2025-02-19 21:23:11 +01:00
Eugene Burmakin
fea87b85bb Add docs and few fixes 2025-02-07 19:17:28 +01:00
Evgenii Burmakin
620579d162
Merge branch 'master' into feature/api/points 2025-01-20 20:35:08 +01:00
Eugene Burmakin
112f13587c Add swagger docs for POST /api/v1/points 2025-01-20 20:17:27 +01:00
Eugene Burmakin
6644fc9a13 Introduce uniqueness index and validation for points 2025-01-20 17:59:13 +01:00
Eugene Burmakin
41bb2e07fb Add user endpoint 2025-01-20 15:17:56 +01:00
Eugene Burmakin
2ee7bb74a3 Fix some swagger specs and remove unused code 2024-12-16 15:42:26 +01:00
Eugene Burmakin
81dc03f7c9 Add swagger specs for tracked months and visited cities 2024-12-16 15:22:34 +01:00
Eugene Burmakin
d9930521c9 Refactor code a bit and add some specs 2024-12-16 15:10:46 +01:00
Eugene Burmakin
58062f6521 Include raw, live and animated photos in the Swagger UI 2024-12-10 19:55:59 +01:00
Eugene Burmakin
dbb737a0c4 Update swagger docs and changelog 2024-12-10 19:43:52 +01:00
Eugene Burmakin
d6b88ae9cb Move photos fetching for trips to a separate service 2024-12-10 19:31:52 +01:00
Eugene Burmakin
955f8946ad Add test for photos integration not being configured 2024-12-04 12:32:13 +01:00
Eugene Burmakin
7bcdff5868 Update changelog 2024-12-03 16:39:09 +01:00
Eugene Burmakin
93e91e7944 Fix swagger docs for /api/v1/photos/{id}/thumbnail 2024-12-03 16:05:38 +01:00
Eugene Burmakin
7b160bfe2d Add specs for swagger 2024-11-26 20:18:08 +01:00
Eugene Burmakin
786ce722d1 Fix test according to new file format for Owntracks 2024-10-15 22:41:49 +02:00
Eugene Burmakin
a2f3aef608 Implement support for OwnTracks REC files 2024-10-15 22:17:51 +02:00
Eugene Burmakin
df430851ce Add optional order query parameter to GET /api/v1/points 2024-10-02 21:29:56 +02:00
Eugene Burmakin
8279a8de45 Fix health controller spec description 2024-09-05 21:18:05 +02:00
Eugene Burmakin
98520b0287 Add health check endpoint 2024-09-05 21:16:40 +02:00
Eugene Burmakin
bd9fc7d30e Mark optional parameters in the Swagger API 2024-08-28 20:36:56 +02:00
Eugene Burmakin
932c9016d7 Update swagger docs with missing page and per_page query parameters 2024-08-28 20:34:08 +02:00
Eugene Burmakin
df588d1e07 Move map settings to the map itself 2024-08-28 20:24:35 +02:00
Eugene Burmakin
4e861fa22e Add a test for when the user has no stats 2024-08-20 20:21:54 +02:00
Eugene Burmakin
7ed7f9795b Add stats API endpoint and serializer 2024-08-20 20:14:17 +02:00
Eugene Burmakin
04a2150959 Add a bunch of small changes and fixes, see CHANGELOG.md for details 2024-07-31 19:35:35 +02:00
Eugene Burmakin
87258df41e Fix route popup distance and add areas swagger test 2024-07-27 12:22:56 +02:00
Eugene Burmakin
bb2beb519b Add notifications 2024-07-04 22:20:12 +02:00
Eugene Burmakin
747418c854 Implement GPX imports 2024-06-19 21:16:06 +02:00
Eugene Burmakin
8c1d8a1470 Accept API key in query string for api/v1/overland/batches 2024-05-25 12:47:25 +02:00
Eugene Burmakin
1f7338a096 Add Swagger docs for overland api endpoint 2024-05-18 13:58:02 +02:00
Eugene Burmakin
e488dc9e4a Add swagger along with api/v1/points swagger doc 2024-05-18 13:35:48 +02:00