Skip to content

fix(ui): sync settings forms via react-hook-form values to stop render loop#2947

Merged
enoch85 merged 1 commit into
developmentfrom
fix/settings-form-render-loop
May 20, 2026
Merged

fix(ui): sync settings forms via react-hook-form values to stop render loop#2947
enoch85 merged 1 commit into
developmentfrom
fix/settings-form-render-loop

Conversation

@enoch85

@enoch85 enoch85 commented May 20, 2026

Copy link
Copy Markdown
Collaborator

The Emby, Jellyfin and Servarr settings forms reset from loaded settings inside a useEffect keyed on the query result. When that data reference is unstable, the effect re-fires every render and loops until the vitest worker exhausts memory and is SIGTERM'd — the failure in the test job. Replaced with react-hook-form's values option, which deep-compares and removes the effect.

Also stops ts-jest from re-transforming the prebuilt @maintainerr/contracts dist output, removing the compiler warning flood on server test runs.

The remaining "worker failed to exit gracefully" warning is left intentionally and tracked in #2946.

…r loop

The Emby, Jellyfin and Servarr settings forms reset the form from loaded
settings inside a useEffect keyed on the query result. When that data
reference is unstable, the effect re-fires every render and loops until the
vitest worker exhausts memory and is SIGTERM'd — which is what was failing
the test job. Use react-hook-form's `values` option instead: it deep-compares
and keeps the form in sync without an effect.

Also stop ts-jest from re-transforming the prebuilt @maintainerr/contracts
dist output, removing the compiler warning flood on every server test run.
@enoch85 enoch85 merged commit 04ee0fb into development May 20, 2026
13 checks passed
@enoch85 enoch85 deleted the fix/settings-form-render-loop branch May 20, 2026 20:31
@enoch85 enoch85 added this to the 3.12.0 milestone May 20, 2026 — with GitHub Codespaces
@maintainerr-automation

Copy link
Copy Markdown
Contributor

🎉 This PR is included in version 3.12.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant