Skip to content

Releases: Freika/dawarich

0.22.0

09 Jan 14:39
ae60a38
Compare
Choose a tag to compare
0.22.0 Pre-release
Pre-release

⚠️ This release introduces a breaking change. ⚠️

Please read this release notes carefully before upgrading.

Docker-related files were moved to the docker directory and some of them were renamed. Before upgrading, study carefully changes in the docker/docker-compose.yml file and update your docker-compose file accordingly, so it uses the new files and commands. Copying docker/docker-compose.yml blindly may lead to errors.

No volumes were removed or renamed, so with a proper docker-compose file, you should be able to upgrade without any issues.

To update existing docker-compose.yml to new changes, refer to the following:

  dawarich_app:
    image: freikin/dawarich:latest
...
-    entrypoint: dev-entrypoint.sh
-    command: ['bin/dev']
+    entrypoint: web-entrypoint.sh
+    command: ['bin/rails', 'server', '-p', '3000', '-b', '::']
...
  dawarich_sidekiq:
    image: freikin/dawarich:latest
...
-    entrypoint: dev-entrypoint.sh
-    command: ['bin/dev']
+    entrypoint: sidekiq-entrypoint.sh
+    command: ['bundle', 'exec', 'sidekiq']

Although docker-compose.production.yml was added, it's not being used by default. It's just an example of how to configure Dawarich for production. The default docker-compose.yml file is still recommended for running the app.

Changed

  • All docker-related files were moved to the docker directory.
  • Default memory limit for dawarich_app and dawarich_sidekiq services was increased to 4GB.
  • dawarich_app and dawarich_sidekiq services now use separate entrypoint scripts.
  • Gems (dependency libraries) are now being shipped as part of the Dawarich Docker image.

Fixed

  • Visit suggesting job does nothing if user has no tracked points.
  • BulkStatsCalculationJob now being called without arguments in the data migration.

Added

  • A proper production Dockerfile, docker-compose and env files.

💙 This release is supported by Steven B., James Manolios, chenrik, aldumil, Arne Schwarck, derpderpington, Chippie, dint, jhalpern, Lex Fradski, EurenikZ and Schlufo on Patreon 💙

What's Changed

  • Add production environment configuration by @Freika in #437

Full Changelog: 0.21.6...0.22.0

0.21.6

07 Jan 14:20
2aa168c
Compare
Choose a tag to compare

Changed

  • Disabled visit suggesting job after import.
  • Improved performance of the User#years_tracked method.

Fixed

  • Inconsistent password for the dawarich_db service in docker-compose_mounted_volumes.yml. #605
  • Points are now being rendered with higher z-index than polylines. #577
  • Run cache cleaning and preheating jobs only on server start. #594

💙 This release is supported by Steven B., James Manolios, chenrik, aldumil, Arne Schwarck, derpderpington, Chippie, dint, jhalpern, Lex Fradski, EurenikZ and Schlufo on Patreon 💙

What's Changed

Full Changelog: 0.21.5...0.21.6

0.21.5

07 Jan 13:14
4eab6a4
Compare
Choose a tag to compare

You may now use Geoapify API for reverse geocoding. To obtain an API key, sign up at https://myprojects.geoapify.com/ and create a new project. Make sure you have read and understood the pricing policy and Terms and Conditions.

Added

  • Geoapify API support for reverse geocoding. Provide GEOAPIFY_API_KEY env var to use it.

Removed

  • Photon ENV vars from the .env.development and docker-compose.yml files.
  • APPLICATION_HOST env var.
  • REVERSE_GEOCODING_ENABLED env var.

💙 This release is supported by Steven B., James Manolios, chenrik, aldumil, Arne Schwarck, derpderpington, Chippie, dint, jhalpern, Lex Fradski and EurenikZ on Patreon 💙

What's Changed

  • Implement support for Geoapify as reverse geocoding service by @Freika in #628

Full Changelog: 0.21.4...0.21.5

0.21.4

05 Jan 20:44
Compare
Choose a tag to compare

Fixed

  • Fixed a bug where Photon API for patreon supporters was not being used for reverse geocoding.

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

Full Changelog: 0.21.3...0.21.4

0.21.3

04 Jan 21:10
Compare
Choose a tag to compare

⚠️ Important announcement ⚠️

A few days ago @lonvia, maintainer of https://photon.komoot.io, the reverse-geocoding API service that Dawarich is using by default, reached me to highlight a problem: Dawarich makes too many requests to https://photon.komoot.io, even with recently introduced rate-limiting to prevent more than 1 request per second.

Photon is a great service and Dawarich wouldn't be what it is now without it, but I have to ask all Dawarich users that are running it on their hardware to either switch to a Photon instance hosted by me (@Freika) or strongly consider hosting their own Photon instance. Thanks to @rtuszik, it's pretty much docker compose up -d. The documentation on the website will be soon updated to also encourage setting up your own Photon instance. More reverse geocoding options will be added in the future.

Let's decrease load on https://photon.komoot.io together!

Thank you.

Reverted

  • Imported points will now be reverse geocoded only after import is finished.

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

What's Changed

Full Changelog: 0.21.2...0.21.3

0.21.2

28 Dec 14:22
Compare
Choose a tag to compare

Added

  • Logging for Immich responses.
  • Watcher now supports all data formats that can be imported via web interface.

Changed

  • Imported points will now be reverse geocoded only after import is finished.

Fixed

  • Markers on the map are now being rendered with higher z-index than polylines. #577

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

What's Changed

  • feat: added google_phone_takeout and google_semantic_histo into impor… by @Eduard-Gimaev in #539
  • Start reverse geocoding after import is finished by @Freika in #592
  • Add Logging for Immich by @arne182 in #597

New Contributors

Full Changelog: 0.21.1...0.21.2

0.21.1

24 Dec 16:05
Compare
Choose a tag to compare

Added

  • Cache cleaning and preheating upon application start.
  • PHOTON_API_KEY env var to set Photon API key. It's an optional env var, but it's required if you want to use Photon API as a Patreon supporter.
  • 'X-Dawarich-Response' header to the GET /api/v1/health endpoint. It's set to 'Hey, I'm alive!' to make it easier to check if the API is working.

Changed

  • Custom config for PostgreSQL is now optional in docker-compose.yml.

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

What's Changed

Full Changelog: 0.21.0...0.21.1

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