Stabilize dependency restores and frontend build validation#679
Closed
therobbiedavis wants to merge 1 commit into
Closed
Stabilize dependency restores and frontend build validation#679therobbiedavis wants to merge 1 commit into
therobbiedavis wants to merge 1 commit into
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 58979b96e6
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Enable deterministic NuGet restores for backend projects by turning on package lock files and CI locked restore mode. Add generated NuGet lock files so local and CI test runs resolve the same dependency graph before `dotnet test --no-restore`. Pull in the dependency updates from `chore/dependency-update`, including the Node engine update to `^24.15.0` and refreshed root/frontend npm lockfiles. Clean up frontend build warnings introduced during dependency validation by removing the auth store's dynamic router import and moving router instance access into a small shared service. Add a narrow Vite/Rolldown warning filter for known upstream `@vueuse/core` pure annotation noise. Validated with: - `dotnet restore listenarr.slnx /p:CI=true` - `dotnet test listenarr.slnx --no-restore` - `npm install` - `cd fe && npm install` - `cd fe && npm run test:unit` - `cd fe && npm run build` - `cd fe && npm run lint:check` - `git diff --check`
58979b9 to
12aae2b
Compare
Collaborator
Author
|
Addressed the RID-specific locked restore finding in the latest push (
|
This was referenced Jun 11, 2026
Collaborator
Author
|
Closing this in favor of the combined foundation PR: #686. The dependency restore/frontend build validation changes from this PR are included there. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR gets the dependency validation loop back into a trustworthy state. The main fix is making NuGet restores deterministic for the backend so local and CI runs resolve the same package graph before
dotnet test --no-restoreruns.While validating the dependency graph, I also pulled in the existing dependency update branch and cleaned up the frontend build warnings that surfaced from that validation. The frontend changes are intentionally small: remove one avoidable router/auth dynamic import warning, and filter a known upstream
@vueuse/coreRolldown annotation warning without hiding unrelated build warnings.The CI publish path is covered too: the API project now declares the runtime identifiers used by release/test workflows, the API lock file includes those runtime targets, and publish steps use the already-restored graph with
--no-restore.Refs #677.
Changes
Added
packages.lock.jsonfiles for the backend projects and test project.linux-x64,linux-arm64,win-x64, andosx-x64.Changed
Directory.Packages.props.Listenarr.Api.csproj.--no-restoreafter the locked restore step.chore/dependency-update, including the Node engine update to^24.15.0.@/router.@vueuse/corepure annotation noise.Fixed
10.0.7/10.0.8drift.Testing
dotnet restore listenarr.slnx /p:CI=truedotnet test listenarr.slnx --no-restore695passeddotnet publish listenarr.api/Listenarr.Api.csproj -c Release -r linux-x64 --no-restore --self-contained true /p:PublishSingleFile=true /p:SkipFrontendBuild=true -o artifacts/publish-check/linux-x64dotnet publish listenarr.api/Listenarr.Api.csproj -c Release -r win-x64 --no-restore --self-contained true /p:PublishSingleFile=true /p:SkipFrontendBuild=true -o artifacts/publish-check/win-x64dotnet publish listenarr.api/Listenarr.Api.csproj -c Release -r osx-x64 --no-restore --self-contained true /p:PublishSingleFile=true /p:SkipFrontendBuild=true -o artifacts/publish-check/osx-x64dotnet publish listenarr.api/Listenarr.Api.csproj -c Release -r linux-arm64 --no-restore --self-contained false /p:UseAppHost=false /p:SkipFrontendBuild=true -o artifacts/publish-check/linux-arm64npm installcd fe && npm installcd fe && npm run test:unit378passed,1skipped test filecd fe && npm run buildcd fe && npm run lint:checkgit diff --checkThe first backend test rerun after publish checks failed because a local
Listenarr.Apiprocess was holding build DLLs open. I stopped that process and reran the test suite successfully.Notes
The router instance service is a pragmatic bridge, not the long-term frontend architecture. I opened #678 to track the cleaner follow-up: avoid router access from the auth store entirely and keep redirects in the router guard/app shell.