Thomas Camlong
1e9d3e0656
fix(db): increase mysql migration test timeout to 120s
2026-07-20 15:18:50 +02:00
Thomas
0015a6d88d
fix(immich): use thumbnail endpoint instead of original for album carousel ( #6396 )
...
* fix(immich): use thumbnail endpoint instead of original for album carousel
Switches from /api/assets/:id/original to /api/assets/:id/thumbnail to fix
HEIC image incompatibility (thumbnails are always JPEG), reduce bandwidth,
and improve loading speed.
Closes #6388
* working on immich
* Improve image proxy error handling
* fix(image-proxy): use trusted fetch response type
* docs(immich): require Asset View permission
2026-07-20 14:53:27 +02:00
Junker der Provinz
6ac4c6a7b9
fix(search): let public dashboards use generic custom search engines ( #6375 )
2026-07-17 14:53:52 +02:00
Junker der Provinz
a0e0bf65ff
fix(releases): let LinuxServer.io version filters find older releases via GitHub ( #6376 )
2026-07-17 14:53:01 +02:00
Thomas
5e39c8813a
feat(preferences): add enableRightClickOnWidgets user preference ( #6298 )
2026-07-17 14:42:19 +02:00
Bergasha
5144e14da4
fix(media-server): populate playback progress, transcode status, and network location for streams ( #6315 )
2026-07-15 16:27:58 +02:00
Thomas
8528d5068b
feat(media-requests): filter requests list by status and time window ( #6320 )
2026-07-15 16:27:24 +02:00
Thomas
c6c4428f7d
Revert "fix(docker): report current CPU usage instead of the lifetime average" ( #6357 )
2026-07-15 14:55:18 +02:00
Thomas
7e4cb0201b
fix(widgets): add refetchInterval to WidgetDefinition for per-widget polling ( #6352 )
2026-07-15 11:52:35 +02:00
Thomas
7887ce12c0
fix(integrations): resolve intermittent Seerr/Overseerr crashes and add query status to context menu ( #6347 )
2026-07-15 11:41:18 +02:00
Thomas
2d450239ac
fix(releases): add required octokit throttling rate limit handlers ( #6338 )
2026-07-15 11:27:32 +02:00
Thomas
03f68a0421
fix(qbittorrent): sort torrents by progress so active items appear before limit cutoff ( #6297 )
2026-07-12 14:56:24 +02:00
Bergasha
807e5eb2a9
feat(docker-widget): replace footer timestamp text with compact refresh button ( #6307 )
2026-07-12 14:51:56 +02:00
Thomas
8e8c29979f
fix(system-disks): format absolute storage values with shared byte helper ( #6299 )
2026-07-12 14:50:58 +02:00
Nerdy Technician
9f313440ac
fix(integrations): update PatchMon API key settings link ( #6302 )
2026-07-12 08:59:52 +02:00
Artur
d44bc06a93
feat(notebook): support text direction controls ( #6293 )
2026-07-12 07:58:02 +02:00
Thomas
576856d634
fix(beszel): add reliable live stats and filesystem UI ( #6289 )
2026-07-11 17:55:04 +02:00
Thomas
def3ede3bc
fix(db): restore widget_secret migration journal entries accidentally removed by #6206 ( #6288 )
2026-07-11 15:40:06 +02:00
Thomas
13c9e5e181
fix(release): repair v1.70.0 quality failures ( #6279 )
...
* fix(release): repair v1.70.0 quality failures
* style: auto-fix lint and format
2026-07-10 21:59:57 +02:00
Thomas
7a768517ef
fix(request-handler): restore media organizer build ( #6277 )
2026-07-10 18:09:05 +02:00
Thomas
4ae8d527a8
fix(releases): token not applied due to broken allowedRepoIds check ( #6276 )
2026-07-10 17:55:18 +02:00
homarr-update-contributors[bot]
05a48e2930
chore: update integrations list readme ( #6275 )
2026-07-10 17:50:02 +02:00
Josh Preston and Thomas
33395ae226
feat(integrations): add PatchMon integration and widget ( #6119 )
...
Co-authored-by: Thomas <thomas@ajnart.fr >
2026-07-10 17:48:43 +02:00
Anil K Tiwari and Thomas
9fb2e37605
feat(widgets): add missing & queued media widget for Radarr and Sonarr ( #6078 )
...
Co-authored-by: Thomas <thomas@ajnart.fr >
2026-07-10 17:31:08 +02:00
homarr-crowdin[bot]
713fcd6f3f
chore(lang): updated translations from crowdin ( #6240 )
2026-07-10 17:30:10 +02:00
Felix-Ayush and Thomas
2c5368dd4e
feat: add Bazarr integration and subtitle status widget ( #6156 )
...
Co-authored-by: Thomas <thomas@ajnart.fr >
2026-07-10 17:29:10 +02:00
Nam Nguyen and Thomas
7d93df04dd
fix: add utf8 email validation support ( #6239 )
...
Co-authored-by: Thomas <thomas@ajnart.fr >
2026-07-10 17:28:22 +02:00
Thomas
7c152cf4fe
feat(api): expose board automation endpoints ( #6213 )
...
* feat(api): expose board automation endpoints
* style: auto-fix lint and format
* test(api): cover board settings updates
* Delete .opencode/changelog/2026-07-06.md
2026-07-10 17:27:42 +02:00
Thomas
718f095cb7
fix: prevent stale persisted query cache from blocking widget data ( #6273 )
2026-07-10 17:19:24 +02:00
Thomas
24c5d04bfa
fix(beszel): disable request handler cache for stats to make live mode work ( #6244 )
2026-07-10 17:16:23 +02:00
Thomas
0e513fffd5
feat(widgets): add per-filesystem storage chart to Beszel system stats ( #6209 )
2026-07-10 17:08:22 +02:00
Thomas
2ada1aa249
fix(qbittorrent): handle v5 stopped torrent states for pause functionality ( #6211 )
2026-07-10 16:55:20 +02:00
Junker der Provinz
af89423f66
fix(docker): report current CPU usage instead of the lifetime average ( #6249 )
2026-07-10 16:54:52 +02:00
Nerdy Technician and Thomas
9864fed775
feat: Add Traefik Integration with dedicated widget and Add optional Icons for Gotify/Notifcation Widget (ONLY GOTIFY) ( #6206 )
...
Co-authored-by: Thomas <thomas@ajnart.fr >
2026-07-10 16:49:24 +02:00
Thomas
bcd36b1b27
fix(integrations): sort media requests by last modified instead of creation date ( #6264 )
2026-07-10 16:46:33 +02:00
homarr-renovate[bot]
616a444e64
chore(deps): update dependency @immich/sdk to ^3.0.1 ( #6251 )
...
* chore(deps): update dependency @immich/sdk to ^3.0.1
* style: auto-fix lint and format
---------
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-07-09 19:51:55 +00:00
Josh Preston
65ba866239
feat: add Synology integration support for health/system monitoring ( #6121 )
2026-07-09 18:23:21 +02:00
Thomas Vervest and Thomas
7a4de03c0e
fix(integrations): accept gluetun-latest VPN settings payload ( #6149 )
...
Co-authored-by: Thomas <thomas@ajnart.fr >
2026-07-07 17:24:50 +02:00
homarr-renovate[bot]
68f8e8146b
chore(deps): update dependency @scalar/api-reference-react to ^0.9.51 ( #6243 )
...
* chore(deps): update dependency @scalar/api-reference-react to ^0.9.51
* style: auto-fix lint and format
---------
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-07-07 13:23:56 +00:00
Thomas
fc2c251557
feat(demo): allow mutations in demo mode via DEMO_READ_ONLY flag ( #6224 )
2026-07-07 10:01:36 +02:00
Thomas and homarr-renovate[bot]
4d42eb65e4
chore(deps): mega dependency update ( #6212 )
...
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-07-06 10:05:51 +02:00
Thomas
82858ecd75
fix(forms): break AppForm infinite render loop on edit page ( #6198 ) ( #6215 )
2026-07-06 10:03:22 +02:00
homarr-crowdin[bot]
0e365ed53c
chore(lang): updated translations from crowdin
...
* chore(lang): update translations from crowdin
* chore(lang): update translations from crowdin
---------
Co-authored-by: Crowdin Homarr <190541745+homarr-crowdin[bot]@users.noreply.github.com>
2026-07-06 02:04:20 +00:00
homarr-crowdin[bot]
5b91687912
chore(lang): updated translations from crowdin
...
Co-authored-by: Crowdin Homarr <190541745+homarr-crowdin[bot]@users.noreply.github.com>
2026-07-05 01:57:18 +00:00
Thomas
885be1b9a1
fix(widget-secrets): add missing widget_secret migration and add error notifications ( #6192 )
...
* fix(widget-secrets): add missing widget_secret migration and add error notifications
The widget_secret table was defined in all three Drizzle schema files but
no SQL migration was ever generated to create it, causing setSecret to
fail with 'no such table: widget_secret' in production (drizzle-kit push
in development hid the problem).
- Add migration SQL for sqlite (0040), mysql (0042), postgresql (0008)
- Update journal entries for all three dialects
- Add onError handlers to setSecret/deleteSecret mutations so errors
are shown as red notifications instead of silently swallowed
Fixes #6186
* fix(widget-secrets): add missing drizzle snapshots for merge-url and widget_secret migrations
The merge_custom_widget_url migration (0039/0041/0007) was committed
without a corresponding snapshot, breaking drizzle-kit generate for
all future migrations. This adds:
- 0039/0041/0007 snapshots reflecting the merge-url changes
(base_url+endpoint -> url, add enabled column)
- 0040/0042/0008 snapshots reflecting the widget_secret table
All snapshot chains now match journal entries (41/43/9 entries each).
2026-07-04 17:57:40 +02:00
Thomas
a382c75968
fix: unblock query cache mutations in demo mode and add cache buster ( #6176 )
2026-07-04 10:47:09 +02:00
homarr-crowdin[bot]
7635031fdf
chore(lang): updated translations from crowdin ( #6143 )
2026-07-04 08:58:20 +02:00
homarr-renovate[bot]
f914cc26be
chore(deps): update mantine monorepo to ^9.4.1 ( #6165 )
...
* chore(deps): update mantine monorepo to ^9.4.1
* style: auto-fix lint and format
---------
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-07-03 20:15:37 +00:00
Thomas
f19033e0d5
feat: simplify caching — TanStack Query as single source of truth ( #6075 )
2026-07-03 16:33:03 +02:00
Thomas
a5ec880eec
fix(immich): v3 API compatibility — use searchAssets for album assets, drop deviceAssetId ( #5977 )
2026-07-03 15:59:08 +02:00