Skip to content

Releases: Freika/dawarich

0.21.0

20 Dec 15:56
Compare
Choose a tag to compare

⚠️ This release introduces a breaking change. ⚠️

The dawarich_db service now uses a custom postgresql.conf file.

As @tabacha pointed out in #549, the default shm_size for the dawarich_db service is too small and it may lead to database performance issues. This release introduces a shm_size parameter to the dawarich_db service to increase the size of the shared memory for PostgreSQL. This should help database with peforming vacuum and other operations. Also, it introduces a custom postgresql.conf file to the dawarich_db service.

To mount a custom postgresql.conf file, you need to create a postgresql.conf file in the dawarich_db service directory and add the following line to it:

  dawarich_db:
    image: postgres:14.2-alpine
    shm_size: 1G
    container_name: dawarich_db
    volumes:
      - dawarich_db_data:/var/lib/postgresql/data
      - dawarich_shared:/var/shared
+     - ./postgresql.conf:/etc/postgresql/postgresql.conf # Provide path to custom config
  ...
    healthcheck:
      test: [ "CMD-SHELL", "pg_isready -U postgres -d dawarich_development" ]
      interval: 10s
      retries: 5
      start_period: 30s
      timeout: 10s
+   command: postgres -c config_file=/etc/postgresql/postgresql.conf # Use custom config

To ensure your database is using custom config, you can connect to the container (docker exec -it dawarich_db psql -U postgres) and run SHOW config_file; command. It should return the following path: /etc/postgresql/postgresql.conf.

An example of a custom postgresql.conf file is provided in the postgresql.conf.example file.

Added

  • A button on a year stats card to update stats for the whole year. #466
  • A button on a month stats card to update stats for a specific month. #466
  • A confirmation alert on the Notifications page before deleting all notifications.
  • A shm_size parameter to the dawarich_db service to increase the size of the shared memory for PostgreSQL. This should help database with peforming vacuum and other operations.
  ...
  dawarich_db:
    image: postgres:14.2-alpine
+   shm_size: 1G
  ...
  • In addition to api_key parameter, Authorization header is now being used to authenticate API requests. #543

Example:

Authorization: Bearer YOUR_API_KEY

Changed

  • The map borders were expanded to make it easier for New Zealanders to scroll around the map.
  • The dawarich_db service now uses a custom postgresql.conf file.
  • The popup over polylines now shows dates in the user's format, based on their browser settings.

🎄Christmas disclaimer: 🎄

The holidays are ahead of us, so please expect slower responses and fixes. Things should return to their normal pace by the end of January 2025. Meanwhile, give yourself a well-deserved rest and enjoy your time with significant people. Eat some salads, build a snowman if you have snow in your area, and feel that holiday spirit.

Happy holidays!


💙 This release is supported by Steven B., James Manolios, chenrik, aldumil and Arne Schwarck on Patreon 💙

What's Changed

  • Add buttons to recalculate month and year stats independently by @Freika in #567
  • Support API key in Authorization header by @Freika in #568
  • Add a custom postgresql.conf file to the dawarich_db service by @Freika in #569
  • Update map popup to format dates with the locale from the browser by @whimsical-c4lic0 in #564

Full Changelog: 0.20.2...0.21.0

0.20.2

19 Dec 11:40
Compare
Choose a tag to compare
0.20.2 Pre-release
Pre-release

Added

  • A point id is now being shown in the point popup.

Fixed

  • North Macedonia is now being shown on the scratch map. #537

Changed

  • The app process is now bound to :: instead of 0.0.0.0 to provide compatibility with IPV6.
  • The app was updated to use Rails 8.0.1.

💙 This release is supported by Steven B., James Manolios, chenrik, aldumil and Arne Schwarck on Patreon 💙

What's Changed

New Contributors

Full Changelog: 0.20.1...0.20.2

0.20.1

16 Dec 19:33
Compare
Choose a tag to compare

0.20.1 - 2024-12-16

Fixed

  • Setting reverse_geocoded_at for points that don't have geodata is now being performed in background job, in batches of 10,000 points to prevent memory exhaustion and long-running data migration.

💙 This release is supported by Steven B., James Manolios, chenrik, aldumil and Arne Schwarck on Patreon 💙

Full Changelog: 0.20.0...0.20.1

0.20.0

16 Dec 15:33
Compare
Choose a tag to compare
изображение

Added

  • GET /api/v1/points/tracked_months endpoint added to get list of tracked years and months.
  • GET /api/v1/countries/visited_cities endpoint added to get list of visited cities.
  • A link to the docs leading to a help chart for k8s. #550
  • A button to delete all notifications. #548
  • A support for RAILS_LOG_LEVEL env var to change log level. More on that here: https://guides.rubyonrails.org/debugging_rails_applications.html#log-levels. The available log levels are: :debug, :info, :warn, :error, :fatal, and :unknown, corresponding to the log level numbers from 0 up to 5, respectively. The default log level is :debug. #540
  • A devcontainer to improve developers experience. #546

Fixed

  • A point popup is no longer closes when hovering over a polyline. #536
  • When polylines layer is disabled and user deletes a point from its popup, polylines layer is no longer being enabled right away. #552
  • Paths to gems within the sidekiq and app containers. #499

Changed

  • Months and years navigation is moved to a map panel on the right side of the map.
  • List of visited cities is now being shown in a map panel on the right side of the map.

💙 This release is supported by Steven B., James Manolios, chenrik, aldumil and Arne Schwarck on Patreon 💙

What's Changed

New Contributors

Full Changelog: 0.19.7...0.19.8

0.19.7

13 Dec 11:50
c159b56
Compare
Choose a tag to compare

Fixed

  • Fixed a bug where upon deleting a point on the map, the confirmation dialog was shown multiple times and the point was not being deleted from the map until the page was reloaded. #435

Changed

  • With the "Points" layer enabled on the map, points with negative speed are now being shown in orange color. Since Overland reports negative speed for points that might be faulty, this should help you to identify them.
  • On the Points page, speed of the points with negative speed is now being shown in red color.

💙 This release is supported by Steven B., James Manolios, chenrik and aldumil on Patreon 💙

What's Changed

Full Changelog: 0.19.6...0.19.7

0.19.6

11 Dec 13:59
38e2a9c
Compare
Choose a tag to compare

⚠️ This release introduces a breaking change. ⚠️

The dawarich_shared volume now being mounted to /data instead of /var/shared within the container. It fixes Redis data being lost on container restart.

To change this, you need to update the docker-compose.yml file:

  dawarich_redis:
    image: redis:7.0-alpine
    container_name: dawarich_redis
    command: redis-server
    volumes:
+     - dawarich_shared:/data
    restart: always
    healthcheck:

Telemetry is now disabled by default. To enable it, you need to set ENABLE_TELEMETRY env var to true. For those who have telemetry enabled using DISABLE_TELEMETRY env var set to false, telemetry is now disabled by default.

Fixed

  • Flash messages are now being removed after 5 seconds.
  • Fixed broken migration that was preventing the app from starting.
  • Visits page is now loading a lot faster than before.
  • Redis data should now be preserved on container restart.
  • Fixed a bug where export files could have double extension, e.g. file.gpx.gpx.

Changed

  • Places page is now accessible from the Visits & Places tab on the navbar.
  • Exporting process is now being logged.
  • ENABLE_TELEMETRY env var is now used instead of DISABLE_TELEMETRY to enable/disable telemetry.

💙 This release is supported by Steven B., James Manolios, chenrik and aldumil on Patreon 💙

What's Changed

Full Changelog: 0.19.5...0.19.6

0.19.5

10 Dec 22:13
c1955fe
Compare
Choose a tag to compare

Fixed

  • Fixed a bug where the map and visits pages were throwing an error due to incorrect approach to distance calculation.

💙 This release is supported by Steven B., James Manolios, chenrik and aldumil on Patreon 💙

What's Changed

Full Changelog: 0.19.4...0.19.5

0.19.4

10 Dec 19:23
fc5a211
Compare
Choose a tag to compare

⚠️ This release introduces a breaking change. ⚠️

The GET /api/v1/trips/:id/photos endpoint now returns a different structure of the response:

{
  id: 1,
  latitude: 10,
  longitude: 10,
  localDateTime: "2024-01-01T00:00:00Z",
  originalFileName: "photo.jpg",
  city: "Berlin",
  state: "Berlin",
  country: "Germany",
  type: "image",
+ orientation: "portrait",
  source: "photoprism"
}

Fixed

  • Fixed a bug where the Photoprism photos were not being shown on the trip page.
  • Fixed a bug where the Immich photos were not being shown on the trip page.
  • Fixed a bug where the route popup was showing distance in kilometers instead of miles. #490

Added

  • A link to the Photoprism photos on the trip page if there are any.
  • A orientation field in the Api::PhotoSerializer, hence the GET /api/v1/photos endpoint now includes the orientation of the photo. Valid values are portrait and landscape.
  • Examples for the type, orientation and source fields in the GET /api/v1/photos endpoint in the Swagger UI.
  • DISABLE_TELEMETRY env var to disable telemetry. More on telemetry: https://dawarich.app/docs/tutorials/telemetry
  • reverse_geocoded_at column added to the points table.

Changed

  • On the Stats page, the "Reverse geocoding" section is now showing the number of points that were reverse geocoded based on reverse_geocoded_at column, value of which is based on the time when the point was reverse geocoded. If no geodata for the point is available, reverse_geocoded_at will be set anyway. Number of points that were reverse geocoded but no geodata is available for them is shown below the "Reverse geocoded" number.

💙 This release is supported by Steven B., James Manolios, chenrik and aldumil on Patreon 💙

What's Changed

New Contributors

Full Changelog: 0.19.3...0.19.4

0.19.3

06 Dec 16:50
2923a82
Compare
Choose a tag to compare

Changed

  • Refactored stats calculation to calculate only necessary stats, instead of calculating all stats
  • Stats are now being calculated every 1 hour instead of 6 hours
    The list of years on the Map page is now calculated based on users' points instead of stats. It's also being cached for one day because it's usually a heavy operation based on the number of points.
  • Reverse-geocoding points are now being performed in batches of 1,000 points to prevent memory exhaustion.

Added

  • In-app notification about telemetry being enabled.

💙 This release is supported by Steven B., James Manolios, chenrik and aldumil on Patreon 💙

What's Changed

Full Changelog: 0.19.2...0.19.3

0.19.2

05 Dec 16:52
81bb862
Compare
Choose a tag to compare

The Telemetry release

Dawarich now can collect usage metrics and send them to InfluxDB. Before this release, the only metrics that could be somehow tracked by developers (only @Freika, as of now) were the number of stars on GitHub and the overall number of docker images being pulled, across all versions of Dawarich, non-splittable by version. New in-app telemetry will allow us to track more granular metrics, allowing me to make decisions based on facts, not just guesses.

I'm aware about the privacy concerns, so I want to be very transparent about what data is being sent and how it's used.

Data being sent:

  • Number of DAU (Daily Active Users)
  • App version
  • Instance ID (unique identifier of the Dawarich instance built by hashing the api key of the first user in the database)

The data is being sent to a InfluxDB instance hosted by me and won't be shared with anyone.

Basically this set of metrics allows me to see how many people are using Dawarich and what versions they are using. No other data is being sent, nor it gives me any knowledge about individual users or their data or activity.

The telemetry is enabled by default, but it can be disabled by setting DISABLE_TELEMETRY env var to true. The dataset might change in the future, but any changes will be documented here in the changelog and in every release as well as on the telemetry page of the website docs.

Added

  • Telemetry feature. It's now collecting usage metrics and sending them to InfluxDB.

Fixed

  • Problem with importing Owntracks' .rec files (#476)

💙 This release is supported by Steven B., James Manolios, chenrik and aldumil on Patreon 💙

What's Changed

  • fix imports of owntracks .rec files containing log types other than events by @jduar in #476
  • Telemetry by @Freika in #488

New Contributors

Full Changelog: 0.19.1...0.19.2