Matt Van Horn and Matt Van Horn
c56d9d6894
fix(downloads): sort stalled torrents last when sorting by finish time ( #6011 )
...
Stalled torrents have time=0 (infinite/never), which raw numeric sort
places between negative (completed) and positive (active) values.
Add a custom sortingFn on the time column that maps 0 to Infinity so
stalled entries always sort last in ascending order and first in
descending order.
Closes #5416
Co-authored-by: Matt Van Horn <455140+mvanhorn@users.noreply.github.com >
2026-06-19 20:42:48 +02:00
homarr-update-contributors[bot]
3ea49f0391
chore: update contributors ( #6010 )
...
Co-authored-by: Homarr Update Contributors <210161987+homarr-update-contributors[bot]@users.noreply.github.com>
2026-06-19 15:02:14 +00:00
homarr-renovate[bot]
e2f8f5f081
chore(deps): update lucide monorepo to ^1.18.0 ( #5986 )
...
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-06-18 16:49:33 +00:00
homarr-renovate[bot]
f57037b568
chore(deps): update dependency mantine-datatable to ^9.3.0 ( #5992 )
...
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-06-18 16:49:08 +00:00
homarr-renovate[bot]
84803aeefb
chore(deps): update dependency rollup@>=4.0.0 <4.22.4 to >=4.62.0 ( #5998 )
...
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-06-18 16:48:53 +00:00
homarr-renovate[bot]
5f47298f3d
chore(deps): update dependency isomorphic-dompurify to ^3.17.0 ( #6003 )
...
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-06-18 16:48:07 +00:00
homarr-renovate[bot]
de858011fc
chore(deps): update dependency mantine-contextmenu to ^9.3.0 ( #5991 )
...
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-06-18 13:08:17 +00:00
homarr-renovate[bot]
12f8e2b83a
chore(deps): update dependency sass to ^1.101.0 ( #5979 )
...
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-06-18 13:06:59 +00:00
homarr-renovate[bot]
78b6e520ac
fix(deps): update tailwindcss monorepo to ^4.3.1 ( #5988 )
...
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-06-18 13:04:08 +00:00
Thomas Camlong
bcaa93f90b
chore: trigger release build for v1.66.1
2026-06-18 13:39:22 +02:00
homarr-releases[bot]
15e6612697
chore: update bug report template ( #6001 )
...
Co-authored-by: Releases Homarr <175486441+homarr-releases[bot]@users.noreply.github.com>
2026-06-18 11:39:09 +00:00
Thomas Camlong
eef06dd5a3
Revert "chore(release): 1.66.0 [skip ci]"
...
This reverts commit 84e044f427 .
v1.66.1
2026-06-18 13:17:30 +02:00
Releases Homarr
84e044f427
chore(release): 1.66.0 [skip ci]
2026-06-18 11:14:43 +00:00
homarr-releases[bot]
609ab9976a
chore(release): automatic release v1.66.0
2026-06-18 11:13:29 +00:00
Thomas Camlong
28f570aa79
Revert "chore(release): 1.66.0 [skip ci]"
...
This reverts commit 5b4f03da35 .
2026-06-18 13:07:44 +02:00
Releases Homarr
5b4f03da35
chore(release): 1.66.0 [skip ci]
2026-06-18 10:55:09 +00:00
Matt Van Horn
6960ac15e9
fix(integrations): make Emby Studios field optional ( #5997 )
2026-06-18 12:45:59 +02:00
Thomas
f1ee76c99c
fix(db): crash on MySQL — replace onConflictDoNothing with dialect-neutral pre-filter ( #5995 )
2026-06-18 12:45:02 +02:00
homarr-renovate[bot]
9a9ee5a9d7
chore(deps): update tiptap monorepo to v3.26.1 ( #5976 )
...
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-06-18 09:24:34 +00:00
homarr-renovate[bot]
7debe34e24
chore(deps): update dependency jotai to ^2.20.1 ( #5974 )
...
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-06-18 04:14:37 +00:00
homarr-renovate[bot]
0d67c5a451
chore(deps): update scalar monorepo to ^0.9.46 ( #5975 )
...
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-06-17 23:36:17 +00:00
homarr-renovate[bot]
2db0fe15fb
chore(deps): update testcontainers-node monorepo to ^12.0.2 ( #5987 )
...
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-06-17 21:20:11 +00:00
homarr-releases[bot]
4b85afbb87
chore: update bug report template ( #5990 )
...
Co-authored-by: Releases Homarr <175486441+homarr-releases[bot]@users.noreply.github.com>
2026-06-17 20:10:20 +00:00
homarr-crowdin[bot] and Thomas
536f82af04
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>
Co-authored-by: Thomas <thomas@ajnart.fr >
2026-06-17 20:00:36 +00:00
Thomas
445e191490
fix: persist Beszel server selection and improve picker visibility ( #5985 )
2026-06-17 17:06:23 +02:00
Thomas
52c624addb
Merge pull request #5966 from homarr-labs/feat/beszel-fixes
...
fix(beszel): chart color mismatch, system selector UX, SSE infrastructure, and widget fixes
2026-06-17 11:39:23 +02:00
homarr-renovate[bot]
91f9329773
chore(deps): update pnpm to v11.6.0 ( #5980 )
...
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-06-17 11:38:47 +02:00
homarr-renovate[bot]
4f1fc4d616
chore(deps): update pnpm to v11.6.0 ( #5980 )
...
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-06-17 00:29:01 +00:00
ajnart
8bee0174e9
style: auto-fix lint and format
2026-06-16 16:30:39 +00:00
Thomas Camlong
45dfe3b9ab
fix: address PR review findings
...
- Remove ternary operators from new code (widget-integration-select,
TabsContainer, mock data, members page)
- Remove stale /docs/management/tools/backup from sitemap type
- Add value prop to error-state Select in beszel-system-stats
2026-06-16 18:29:28 +02:00
Thomas Camlong
5078c300f8
fix(widgets): race conditions in useLiveStats and stale value in integration select
...
- Add generation guard to prevent late SSE events from writing stale
data after systemId/integration changes
- Sort integrationIds for stable key (avoids unnecessary resubscribes)
- Include integrationKey and systemId in flush interval deps
- Preserve current form value in WidgetIntegrationSelectInput when it's
missing from loaded options (matches WidgetDynamicSelectInput pattern)
2026-06-16 17:59:41 +02:00
Thomas Camlong
065b78fa3e
fix(widgets): prevent TabsContainer state reset on data refetch
...
react-jsx-parser auto-generates random keys on every render, causing
full remounts that reset uncontrolled Tabs to defaultValue. Fix by:
- Adding disableKeyGeneration to preserve React reconciliation
- Memoizing bindings to avoid unnecessary re-parses
- Converting TabsContainer to controlled Tabs with useState
- Validating defaultTab against actual panel values
- Clearing stale parseErrors when template/data changes
2026-06-16 17:55:37 +02:00
Thomas Camlong
39900090b3
fix(ui): prevent icon/name wrapping in custom widgets table
...
The Group in the Name cell lacked wrap="nowrap", causing the icon to
detach onto its own line when the widget name was too long.
2026-06-16 17:24:21 +02:00
Thomas Camlong
2af2d59b8f
docs: align Gotify integration page with documentation PR #558
...
Match the official Gotify description wording and list Gotify as a
supported integration on the Notifications widget page.
2026-06-16 16:41:30 +02:00
Thomas Camlong
d0450b5153
docs(integrations): add missing Gotify integration page
...
The Gotify integration (merged from dev) declares a documentationUrl but
had no docs page, failing the docs-coverage validation plugin once gotify
was added to the integration doc-slug map.
2026-06-16 16:30:07 +02:00
Thomas Camlong
5f588ae287
fix(definitions): add doc slugs for gotify and archiveTeamWarrior
...
Merging dev introduced the Gotify integration and ArchiveTeam Warrior
widget/integration, which require entries in the doc-slug maps and the
generated documentation sitemap. Also remove a misplaced non-null
assertion in the group members page flagged by oxlint.
2026-06-16 16:23:02 +02:00
Thomas Camlong
066fb038b5
Merge remote-tracking branch 'origin/dev' into feat/beszel-fixes
2026-06-16 16:08:32 +02:00
Thomas Camlong
ece436a1cc
fix(docs): use valid string type for beszel system stats config
...
The "text" type is not a valid WidgetConfigurationItem value type;
the searchable system selector maps to "string".
2026-06-16 15:59:20 +02:00
Thomas Camlong
4da2feda35
refactor(beszel): tighten background color lookup type
2026-06-16 15:49:06 +02:00
Thomas Camlong
0a05bbed8d
fix(beszel): review fixes for MCP and widget styling
...
- Throw TRPCError instead of returning null when no integration
- Sort beszelRouter import alphabetically in mcp.ts
- Replace ternary with lookup table for background color
- Mention integration_all in MCP server instructions
2026-06-16 15:18:13 +02:00
Thomas Camlong
420c0c30e4
fix(beszel): MCP description accuracy and type strictness
...
- Add .default("1h") to timePeriod so MCP clients can omit it
- Include "1m" in the description's valid timePeriod values
- Clarify that getSystemStats uses only the first integrationId
- Use MantineSize type instead of plain string for itemRadius
2026-06-16 15:13:35 +02:00
Thomas Camlong
8600c63bab
feat(beszel): expose Beszel systems, alerts, and stats via MCP
...
Register beszelRouter in the MCP server with .meta({ mcp: enabled })
on getSystems, getAlerts, and getSystemStats procedures. AI assistants
can now query Beszel-monitored systems, view alerts, and fetch
historical metrics through the MCP protocol.
Ref #5968
2026-06-16 15:09:36 +02:00
Thomas Camlong
2a5398bec0
fix(beszel): system grid widget respects board opacity and radius
...
The inner Card components used Mantine's default opaque background and
hard-coded radius, clashing with board styling. Now uses board.opacity
and board.itemRadius with the same pattern as system-resources widgets.
Closes #5968
2026-06-16 15:02:58 +02:00
ajnart
c751feedf7
style: auto-fix lint and format
2026-06-16 12:39:26 +00:00
Thomas Camlong
cbb5e301dc
refactor(widgets): replace beszelSystem option with generic integrationSelect
2026-06-16 14:38:25 +02:00
Thomas Camlong
ea8f07e2bd
docs(management): move SQLite Backup & Restore out of Tools category
2026-06-16 14:20:57 +02:00
Louis Bailleau
fb18b975b2
feat: add local group support for OIDC users ( #5952 )
2026-06-16 13:45:44 +02:00
homarr-update-contributors[bot]
4692e7ce3a
chore: update integrations list readme ( #5973 )
...
Co-authored-by: Homarr Update Contributors <210161987+homarr-update-contributors[bot]@users.noreply.github.com>
2026-06-16 10:45:49 +02:00
Glare and Manuel
dd57ee2102
feat(integrations): add ArchiveTeam Warrior widget ( #5784 )
...
* feat(integrations): add ArchiveTeam Warrior widget
* feat(integrations): add support for basic auth for archive warrior
* refactor(integrations): address ArchiveTeam Warrior review feedback
* Increase cache duration from 1 to 5 minutes
---------
Co-authored-by: Manuel <30572287+manuel-rw@users.noreply.github.com >
2026-06-16 10:43:55 +02:00
homarr-update-contributors[bot]
2ae83458e6
chore: update integrations list readme ( #5972 )
...
Co-authored-by: Homarr Update Contributors <210161987+homarr-update-contributors[bot]@users.noreply.github.com>
2026-06-16 10:40:19 +02:00