Commit Graph
2715 Commits
Author SHA1 Message Date
dependabot[bot]dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Jakob Lichterfeld
28ddf6469e build(deps): bump ecto_sql from 3.12.1 to 3.13.2 (#4863)
* build(deps): bump ecto_sql from 3.12.1 to 3.13.2

Bumps [ecto_sql](https://github.com/elixir-ecto/ecto_sql) from 3.12.1 to 3.13.2.
- [Changelog](https://github.com/elixir-ecto/ecto_sql/blob/master/CHANGELOG.md)
- [Commits](https://github.com/elixir-ecto/ecto_sql/compare/v3.12.1...v3.13.2)

---
updated-dependencies:
- dependency-name: ecto_sql
  dependency-version: 3.13.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* docs: update changelog

* fix(nix): update mix dependency hash in nix builds

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jakob Lichterfeld <jakob-lichterfeld@gmx.de>
2025-08-06 15:13:15 +02:00
dependabot[bot]dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Jakob Lichterfeld
ac81e5602c build(deps): bump react and react-dom from 19.1.0 to 19.1.1 in /website (#4865)
* build(deps): bump react from 19.1.0 to 19.1.1 in /website

Bumps [react](https://github.com/facebook/react/tree/HEAD/packages/react) from 19.1.0 to 19.1.1.
- [Release notes](https://github.com/facebook/react/releases)
- [Changelog](https://github.com/facebook/react/blob/main/CHANGELOG.md)
- [Commits](https://github.com/facebook/react/commits/v19.1.1/packages/react)

---
updated-dependencies:
- dependency-name: react
  dependency-version: 19.1.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* build(deps): bump react-dom from 19.1.0 to 19.1.1 in /website

* docs: update changelog

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jakob Lichterfeld <jakob-lichterfeld@gmx.de>
2025-08-06 14:59:40 +02:00
dependabot[bot]dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Jakob Lichterfeld
ca45088c45 build(deps): bump DeterminateSystems/update-flake-lock from 25 to 27 (#4864)
* build(deps): bump DeterminateSystems/update-flake-lock from 25 to 27

Bumps [DeterminateSystems/update-flake-lock](https://github.com/determinatesystems/update-flake-lock) from 25 to 27.
- [Release notes](https://github.com/determinatesystems/update-flake-lock/releases)
- [Commits](https://github.com/determinatesystems/update-flake-lock/compare/428c2b58a4b7414dabd372acb6a03dba1084d3ab...c5930b397a673a70ca70be06020e943aeac310a1)

---
updated-dependencies:
- dependency-name: DeterminateSystems/update-flake-lock
  dependency-version: '27'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* docs: update changelog

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jakob Lichterfeld <jakob-lichterfeld@gmx.de>
2025-08-06 14:48:52 +02:00
JakobLichterfeld 6c19792d07 feat(nix): add idiomatic maintenance scripts (#4849)
* feat(nix): add idiomatic maintenance scripts

* docs: update changelog

* docs: update changelog

* fix(nix): pass required arguments to maintenance.nix (getExe, teslamate)

* fix(nix): escape ${1} in maintenance shell scripts to prevent evaluation errors

* fix(nix): make RELEASE_COOKIE available to maintenance scripts by exporting it after sourcing

* docs: add reference to idiomatic nix backup and restore scripts

* docs: add reference to idiomatic nix maintenance scripts
2025-08-06 14:37:55 +02:00
JakobLichterfeld 5ecb4868cf feat(nix): use datasources.settings.datasources to allow merging Grafana sources from multiple modules, correctly set default Grafana dashboard path and allow disabling default Grafana dashboard with setDefaultDashboard option (#4870)
* feat(nix): use datasources.settings.datasources to allow merging Grafana sources from multiple modules

* docs: update changelog

* style: linter findings

* fix(nix): correctly set default Grafana dashboard path

* feat(nix): allow disabling default Grafana dashboard with setDefaultDashboard option

* fix(nix): avoid type error by configuring Grafana datasources via provision settings

* fix(nix): set default_home_dashboard_path under dashboards section in Grafana settings
2025-08-06 08:09:47 +02:00
github-actions[bot]github-actions[bot] <github-actions[bot]@users.noreply.github.com>Jakob Lichterfeld
931ca2bdc1 build(deps): update flake.lock (#4858)
* flake.lock: Update

Flake lock file updates:

• Updated input 'devenv':
    'github:cachix/devenv/5ff577e51ca097d67c9ed44a37c836ddc729f8ff?narHash=sha256-547tW86UUMTnQGJv9bb71nAWmw9Gt5IqGMoeodTE4x0%3D' (2025-07-18)
  → 'github:cachix/devenv/8a92f0a645f8c6ee1653a492abc0be3556b0202d?narHash=sha256-vkcPVqTlyrkxOQGBUTgBU7bbLZURdKyynQn0lbItX4E%3D' (2025-07-25)
• Updated input 'flake-parts':
    'github:hercules-ci/flake-parts/77826244401ea9de6e3bac47c2db46005e1f30b5?narHash=sha256-Tyw1RjYEsp5scoigs1384gIg6e0GoBVjms4aXFfRssQ%3D' (2025-07-01)
  → 'github:hercules-ci/flake-parts/644e0fc48951a860279da645ba77fe4a6e814c5e?narHash=sha256-TVcTNvOeWWk1DXljFxVRp%2BE0tzG1LhrVjOGGoMHuXio%3D' (2025-07-21)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/32a4e87942101f1c9f9865e04dc3ddb175f5f32e?narHash=sha256-f3pO%2B9lg66mV7IMmmIqG4PL3223TYMlnlw%2Bpnpelbss%3D' (2025-07-15)
  → 'github:NixOS/nixpkgs/3ff0e34b1383648053bba8ed03f201d3466f90c9?narHash=sha256-CdX2Rtvp5I8HGu9swBmYuq%2BILwRxpXdJwlpg8jvN4tU%3D' (2025-07-24)
• Updated input 'treefmt-nix':
    'github:numtide/treefmt-nix/c9d477b5d5bd7f26adddd3f96cfd6a904768d4f9?narHash=sha256-19m7P4O/Aw/6%2BCzncWMAJu89JaKeMh3aMle1CNQSIwM%3D' (2025-07-09)
  → 'github:numtide/treefmt-nix/2673921c03d6e75fdf4aa93e025772608d1482cf?narHash=sha256-Bv9h1AJegLI8uAhiJ1sZ4XAndYxhgf38tMgCQwiEpmc%3D' (2025-07-25)

* docs: update changelog

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Jakob Lichterfeld <jakob-lichterfeld@gmx.de>
2025-07-28 18:43:35 +02:00
Matthias WirtzandJakob Lichterfeld 32b4e0b54f feat: use Grafana 12.1.0 (#4855)
* Grafana 12.1.0

* docs: update changelog

---------

Co-authored-by: Jakob Lichterfeld <jakob-lichterfeld@gmx.de>
2025-07-28 17:15:37 +02:00
JakobLichterfeld 0c396a7195 feat(webview): show offline duration in extended view on mobile as well to improve UX (#4848)
* feat(webview): show offline duration in extended view on mobile as well to improve UX

- only hide on screens smaller than 300px

* docs: update changelog
2025-07-23 09:48:59 +02:00
JakobLichterfeld 3402d712bc i18n: fix de translation for car location link (#4844)
* i18n: fix de translation for car location link

* docs: update changelog
2025-07-22 18:18:14 +02:00
JakobLichterfeld 809f91b5c7 style(issue-template): typo fix in Unraid (#4842)
* style(issue-template): typo fix in Unraid

* docs: update changelog
2025-07-22 09:11:02 +02:00
Jakob Lichterfeld ad9c1d062e build: prepare v2.1.1-dev 2025-07-21 14:12:59 +02:00
Jakob Lichterfeld 92b504bf40 build: release v2.1.0 v2.1.0 2025-07-21 14:10:14 +02:00
JakobLichterfeld b985ab2f45 ux: change Google Maps Button Link to icon to ensure a consistent UX (#4838)
* ux: change Google Maps Button Link to icon to ensure a consistent UX

* test: correct test for car location on Google Maps link

* docs: update changelog

* chore(i18n): update POT files

* docs: update changelog

* docs: update changelog
2025-07-21 13:56:33 +02:00
JakobLichterfeld 27e2ea1a8f docs: streamline installation guides (#4829)
* docs: remove manual installation reference from docker setup

* docs: update changelog

* docs: add nix develop to run treefmt to support non nix direnv users

* docs: update changelog

* docs: add Unraid installation and maintenance instructions (no support)

* docs: clarify the use of secure connection to access TeslaMate

* docs: reorder guides into advanced guides, categories FleetAPI documentation as config

* docs: clarify which installation methods are supported and which are not

* chore(issue-template): update bug report template to include Unraid as unsupported installation method

* docs: fix sidebars link

* docs: state in title which installation method is not supported

* docs: nested entry for unsupported installation methods

* docs: nest unsupported installation methods in separate folder for even more clarity

* docs: fix links

* docs: mention dedicated version for MCU2 upgraded cars
2025-07-21 13:46:20 +02:00
JakobLichterfeld 184860957e feat(nix): add idiomatic backup and restore scripts (#4835)
* feat(nix): add idiomatic backup and restore scripts

* docs: update changelog
2025-07-20 07:19:10 +02:00
Matthias WirtzandJakob Lichterfeld 0eefeac20b feat: add total ascent & descent to the drive table, introduce slope-adjusted efficiency metric in drives dashboard (#4798)
* slope-adjusted efficiency

* docs: update changelog

* docs: include migration time in changelog

* docs: update changelog

* build: bump minor version

---------

Co-authored-by: Jakob Lichterfeld <jakob-lichterfeld@gmx.de>
2025-07-19 11:07:02 +02:00
Juan Carlos HerediaandJakob Lichterfeld 647b8c392c feat: add duration time to charges details dashboard (#4677)
* Add duration time

* Add screenshot

* docs: update screenshot with correct dimensions

* docs: update changelog

---------

Co-authored-by: Jakob Lichterfeld <jakob-lichterfeld@gmx.de>
2025-07-19 11:05:03 +02:00
Jakob Lichterfeld 9cf2c5753c docs: update changelog 2025-07-19 10:33:18 +02:00
Jakob Lichterfeld 10717ff589 docs: update changelog 2025-07-19 10:32:28 +02:00
Jakob Lichterfeld e6931aba68 ci(coverage): set MIX_ENV explicitly to test to set up the mix environment correctly 2025-07-19 10:32:28 +02:00
github-actions[bot]github-actions[bot] <github-actions[bot]@users.noreply.github.com>Jakob Lichterfeld
e001f4a0f7 build(deps): update flake.lock (#4834)
* flake.lock: Update

Flake lock file updates:

• Updated input 'devenv':
    'github:cachix/devenv/ee0fd5cd4d0d45650f8a41c7861c6599bd120e79?narHash=sha256-cAvJMEsp2ZOfnbZcobyLjhZ7U0Z9qJcgmWaDBpxg3Lc%3D' (2025-07-15)
  → 'github:cachix/devenv/5ff577e51ca097d67c9ed44a37c836ddc729f8ff?narHash=sha256-547tW86UUMTnQGJv9bb71nAWmw9Gt5IqGMoeodTE4x0%3D' (2025-07-18)
• Updated input 'devenv/nix':
    'github:cachix/nix/54df04f09cb084b9e58529c0ae6f53f0e50f1a19?narHash=sha256-fkkkwB7jz%2B14ZdIHAYCCNypO9EZDCKpj7LEQZhV6QJs%3D' (2025-07-11)
  → 'github:cachix/nix/031c3cf42d2e9391eee373507d8c12e0f9606779?narHash=sha256-dOi/M6yNeuJlj88exI%2B7k154z%2BhAhFcuB8tZktiW7rg%3D' (2025-07-17)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/dfcd5b901dbab46c9c6e80b265648481aafb01f8?narHash=sha256-Kt1UIPi7kZqkSc5HVj6UY5YLHHEzPBkgpNUByuyxtlw%3D' (2025-07-13)
  → 'github:NixOS/nixpkgs/32a4e87942101f1c9f9865e04dc3ddb175f5f32e?narHash=sha256-f3pO%2B9lg66mV7IMmmIqG4PL3223TYMlnlw%2Bpnpelbss%3D' (2025-07-15)

* docs: update changelog

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Jakob Lichterfeld <jakob-lichterfeld@gmx.de>
2025-07-19 10:29:33 +02:00
Jakob Lichterfeld f24f235836 docs: update changelog 2025-07-18 19:36:58 +02:00
Jakob Lichterfeld 1c76994b56 fix(mix): add "coveralls.github" to preferred_cli_env to avoid missing task error in CI runs
#4701
2025-07-18 19:26:34 +02:00
Jakob Lichterfeld d04be0f9ef docs: update changelog 2025-07-18 19:01:46 +02:00
Jakob Lichterfeld 322c2a26e6 ci(coverage): explicitly set mix-env to test 2025-07-18 18:56:50 +02:00
c9e68ec433 feat: enhance HTTP limits for managing fleets with over 10 vehicles (#4607)
* feat: customize HTTP limits when a user manage more than 10 vehicles

* fix: syntax

* format code

* fix: miss commit

* revert

* doc: pool time in micro seconds

* style: linter findings

* docs: ordering of environment variables

* style: linter findings

* docs: update changelog

---------

Co-authored-by: Julien <julien@citio.digital>
Co-authored-by: Jakob Lichterfeld <jakob-lichterfeld@gmx.de>
2025-07-18 18:23:38 +02:00
JakobLichterfeld 2e5c316194 sec(deps): override webpack-dev-server to version 5.2.1 to fix CVE-2025-30360 (#4833)
* sec(deps): override webpack-dev-server to version 5.2.1 to fix CVE-2025-30360

see #4832

* docs: update changelog
2025-07-18 13:40:56 +02:00
dependabot[bot]dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Jakob Lichterfeld
2044eca162 build(deps): bump on-headers from 1.0.2 to 1.1.0 and compression from 1.0.2 to 1.1.0 in /website (#4831)
* build(deps): bump on-headers and compression in /website

Bumps [on-headers](https://github.com/jshttp/on-headers) and [compression](https://github.com/expressjs/compression). These dependencies needed to be updated together.

Updates `on-headers` from 1.0.2 to 1.1.0
- [Release notes](https://github.com/jshttp/on-headers/releases)
- [Changelog](https://github.com/jshttp/on-headers/blob/master/HISTORY.md)
- [Commits](https://github.com/jshttp/on-headers/compare/v1.0.2...v1.1.0)

Updates `compression` from 1.8.0 to 1.8.1
- [Release notes](https://github.com/expressjs/compression/releases)
- [Changelog](https://github.com/expressjs/compression/blob/master/HISTORY.md)
- [Commits](https://github.com/expressjs/compression/compare/1.8.0...v1.8.1)

---
updated-dependencies:
- dependency-name: on-headers
  dependency-version: 1.1.0
  dependency-type: indirect
- dependency-name: compression
  dependency-version: 1.8.1
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* docs: update changelog

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jakob Lichterfeld <jakob-lichterfeld@gmx.de>
2025-07-18 10:48:00 +02:00
Jakob Lichterfeld 0b150f2634 chore(issue-template): update reverse proxy options and make details optional 2025-07-16 16:56:47 +02:00
Jakob Lichterfeld e8288e9d1e fix(issue-template): correct indentation 2025-07-16 16:54:16 +02:00
JakobLichterfeld a4d96fbedb doc: add OpenSSF scorecard (#4819)
* doc: add OpenSSF scorecard

#4172

* docs: update changelog
2025-07-16 16:37:49 +02:00
JakobLichterfeld 290cccc494 chore(issue-template): enhance bug report template with additional fields and guidance (#4827)
* chore(issue-template): enhance bug report template with additional fields and guidance

- Added a dropdown for reproducibility confirmation.
- Improved descriptions and labels for clarity.
- Updated installation options with links and support notes.
- Included reverse proxy details for better issue context.

* docs: update changelog
2025-07-16 16:34:59 +02:00
JakobLichterfeld 1c8136fc63 build(deps): update flake.lock and update mix dependency hash in nix builds (#4828)
* build(deps): update flake.lock

* build(nix): update mix dependency hash in nix builds

* docs: update changelog
2025-07-16 11:00:35 +02:00
dependabot[bot]dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Jakob Lichterfeld
a38fc1dda5 build(deps): bump timex from 3.7.11 to 3.7.13 (#4815)
* build(deps): bump timex from 3.7.11 to 3.7.13

Bumps [timex](https://github.com/bitwalker/timex) from 3.7.11 to 3.7.13.
- [Release notes](https://github.com/bitwalker/timex/releases)
- [Changelog](https://github.com/bitwalker/timex/blob/main/CHANGELOG.md)
- [Commits](https://github.com/bitwalker/timex/commits)

---
updated-dependencies:
- dependency-name: timex
  dependency-version: 3.7.13
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* docs: update changelog

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jakob Lichterfeld <jakob-lichterfeld@gmx.de>
2025-07-16 09:38:33 +02:00
dependabot[bot]dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Jakob Lichterfeld
3afbf6aeed build(deps): bump crate-ci/typos from 1.33.1 to 1.34.0 (#4814)
* build(deps): bump crate-ci/typos from 1.33.1 to 1.34.0

Bumps [crate-ci/typos](https://github.com/crate-ci/typos) from 1.33.1 to 1.34.0.
- [Release notes](https://github.com/crate-ci/typos/releases)
- [Changelog](https://github.com/crate-ci/typos/blob/master/CHANGELOG.md)
- [Commits](https://github.com/crate-ci/typos/compare/b1ae8d918b6e85bd611117d3d9a3be4f903ee5e4...392b78fe18a52790c53f42456e46124f77346842)

---
updated-dependencies:
- dependency-name: crate-ci/typos
  dependency-version: 1.34.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* docs: update changelog

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jakob Lichterfeld <jakob-lichterfeld@gmx.de>
2025-07-16 09:30:08 +02:00
dependabot[bot]dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Jakob Lichterfeld
ce09a7d8f3 build(deps): bump plug_cowboy from 2.7.3 to 2.7.4 (#4816)
* build(deps): bump plug_cowboy from 2.7.3 to 2.7.4

Bumps [plug_cowboy](https://github.com/elixir-plug/plug_cowboy) from 2.7.3 to 2.7.4.
- [Changelog](https://github.com/elixir-plug/plug_cowboy/blob/master/CHANGELOG.md)
- [Commits](https://github.com/elixir-plug/plug_cowboy/compare/v2.7.3...v2.7.4)

---
updated-dependencies:
- dependency-name: plug_cowboy
  dependency-version: 2.7.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* docs: update changelog

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jakob Lichterfeld <jakob-lichterfeld@gmx.de>
2025-07-16 09:27:43 +02:00
dependabot[bot]dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Jakob Lichterfeld
0ec196f640 build(deps): bump brace-expansion from 1.1.11 to 1.1.12 in /website (#4821)
* build(deps): bump brace-expansion from 1.1.11 to 1.1.12 in /website

---
updated-dependencies:
- dependency-name: brace-expansion
  dependency-version: 1.1.12
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* docs: update changelog

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jakob Lichterfeld <jakob-lichterfeld@gmx.de>
2025-07-16 09:25:55 +02:00
Matthias Wirtz 8dd6e74360 feat(db-check): allow beta / rc PostgreSQL versions for testing (#4795) 2025-07-14 09:19:10 +02:00
dependabot[bot]dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Jakob Lichterfeld
85b45f224d build(deps): bump nixbuild/nix-quick-install-action from 30 to 32 (#4813)
* build(deps): bump nixbuild/nix-quick-install-action from 30 to 32

Bumps [nixbuild/nix-quick-install-action](https://github.com/nixbuild/nix-quick-install-action) from 30 to 32.
- [Release notes](https://github.com/nixbuild/nix-quick-install-action/releases)
- [Changelog](https://github.com/nixbuild/nix-quick-install-action/blob/master/RELEASE)
- [Commits](https://github.com/nixbuild/nix-quick-install-action/compare/5bb6a3b3abe66fd09bbf250dce8ada94f856a703...63ca48f939ee3b8d835f4126562537df0fee5b91)

---
updated-dependencies:
- dependency-name: nixbuild/nix-quick-install-action
  dependency-version: '32'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* docs: update changelog

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jakob Lichterfeld <jakob-lichterfeld@gmx.de>
2025-07-11 08:38:27 +02:00
Ingmar SteinandJakob Lichterfeld 133d2e8c4c feat: use the k8s-style API introduced in Grafana v12 if using manual dashboard setup (#4764)
* Use the k8s-style API introduced in Grafana v12

Ensure that folders are created before restoring dashboards.

Note: the on-disk format will change in the next backup/restore
roundtrip because it now includes both the dashboard spec as well
as metadata. The restore function reads both formats.

* docs: update changelog

---------

Co-authored-by: Jakob Lichterfeld <jakob-lichterfeld@gmx.de>
2025-07-11 08:18:01 +02:00
Calvin HuangDevin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>Jakob Lichterfeld
97563e2175 feat(webview): add Google Maps link for car's current location (#4781)
* Add Google Maps link for car's current location

- Add Google Maps link in car summary view
- Link opens car's current location in new tab
- Follows existing external link patterns
- Uses consistent Bulma styling

Co-Authored-By: Calvin Huang <c@lvin.me>

* Fix HTML div structure in summary template

- Remove extra closing div that caused compilation error
- Properly nest card-content div structure

Co-Authored-By: Calvin Huang <c@lvin.me>

* Add test for Google Maps link in car summary view

- Test verifies link presence with correct coordinates
- Test validates href URL format and security attributes
- Test ensures proper CSS styling and link text
- Follows existing TeslaMate testing patterns with online_event() helper
- Uses Floki for HTML parsing and attribute verification

Co-Authored-By: Calvin Huang <c@lvin.me>

* style: linter findings

* Update POT files for translation

- Run mix gettext.extract --merge to update translation files
- Addresses PR comment feedback about updating pot files
- No new translatable strings added from Google Maps feature

Co-Authored-By: Calvin Huang <c@lvin.me>

* docs: update changelog

---------

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: Jakob Lichterfeld <jakob-lichterfeld@gmx.de>
2025-07-09 09:24:46 +02:00
allivshitsandJakob Lichterfeld 718ec1a4b1 feat(mqtt): always publish healthy status and disable retain to prevent stale healthy status via mqtt (#4817)
* Always publish and do not retain 'healthy' topic

* fix linter errors & explicitly cleanup retained messages for do_not_retain topics

* fix tests broken by change in healthy topic retantion strategy

* docs: update changelog

---------

Co-authored-by: Jakob Lichterfeld <jakob-lichterfeld@gmx.de>
2025-07-08 18:46:17 +02:00
Matthias WirtzandJakob Lichterfeld e828b6ca17 feat: use Grafana 12.0.2 (#4805)
* Grafana 12.0.2

* docs: update changelog

* docs: update changelog

---------

Co-authored-by: Jakob Lichterfeld <jakob-lichterfeld@gmx.de>
2025-06-21 17:08:03 +02:00
JakobLichterfeld 21f2d45419 Revert "Update README.md to fix typo (#4804)" (#4806)
This reverts commit 12e9f9db8e.
2025-06-21 16:59:53 +02:00
Ozy Wu-Li 12e9f9db8e Update README.md to fix typo (#4804)
Change "peak" to be "peek"
2025-06-21 16:56:12 +02:00
Matthias WirtzandJakob Lichterfeld 8ca246015d feat: use Grafana 12.0.1+security-01 (#4799)
* Grafana 12.0.1+security-01

* docs: update changelog

---------

Co-authored-by: Jakob Lichterfeld <jakob-lichterfeld@gmx.de>
2025-06-14 12:43:31 +02:00
Matthias WirtzandJakob Lichterfeld b0d8ab92d1 feat(dashboards): several Improvements for Charging Stats, Statistics and Trip (#4791)
* duration filter, align query conditions across panels, detect consecutive charges, better cost per 100km for shorter time periods

* docs: update changelog

* add cost per 100km to trip dashboard

* add screenshot

* align cost per 100km calculations across all dashboards

* docs: update changelog with more details

---------

Co-authored-by: Jakob Lichterfeld <jakob-lichterfeld@gmx.de>
2025-06-10 13:27:37 +02:00
dependabot[bot]dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Jakob Lichterfeld
e39783aa41 build(deps): bump @docusaurus/core from 3.7.0 to 3.8.0, @docusaurus/preset-classic from 3.8.0 to 3.8.1, bump dependencies in /website (#4777)
* build(deps): bump @docusaurus/core from 3.7.0 to 3.8.0 in /website

Bumps [@docusaurus/core](https://github.com/facebook/docusaurus/tree/HEAD/packages/docusaurus) from 3.7.0 to 3.8.0.
- [Release notes](https://github.com/facebook/docusaurus/releases)
- [Changelog](https://github.com/facebook/docusaurus/blob/main/CHANGELOG.md)
- [Commits](https://github.com/facebook/docusaurus/commits/v3.8.0/packages/docusaurus)

---
updated-dependencies:
- dependency-name: "@docusaurus/core"
  dependency-version: 3.8.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* build(website): bump docusaurus/preset-classic to 3.8.1 and update package-lock

* docs: update changelog

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jakob Lichterfeld <jakob-lichterfeld@gmx.de>
2025-06-10 08:55:55 +02:00
dependabot[bot]dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Jakob Lichterfeld
97c15864a3 build(deps): bump @docusaurus/preset-classic from 3.7.0 to 3.8.0 in /website (#4776)
* build(deps): bump @docusaurus/preset-classic in /website

Bumps [@docusaurus/preset-classic](https://github.com/facebook/docusaurus/tree/HEAD/packages/docusaurus-preset-classic) from 3.7.0 to 3.8.0.
- [Release notes](https://github.com/facebook/docusaurus/releases)
- [Changelog](https://github.com/facebook/docusaurus/blob/main/CHANGELOG.md)
- [Commits](https://github.com/facebook/docusaurus/commits/v3.8.0/packages/docusaurus-preset-classic)

---
updated-dependencies:
- dependency-name: "@docusaurus/preset-classic"
  dependency-version: 3.8.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* docs: update changelog

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jakob Lichterfeld <jakob-lichterfeld@gmx.de>
2025-06-09 11:57:50 +02:00
Matthias WirtzandJakob Lichterfeld bbbb20f6f0 fix: align usage of time-range filters to fix consumption gross issues in some edge cases (#4787)
* align effects of timerange filter

* consider drives at end of period correctly as well

* docs: update changelog

---------

Co-authored-by: Jakob Lichterfeld <jakob-lichterfeld@gmx.de>
2025-06-09 11:35:33 +02:00