Conversation
|
View your CI Pipeline Execution ↗ for commit 42bd8c7
☁️ Nx Cloud last updated this comment at |
WalkthroughAdds Changesets-based versioning and publishing, updates CI workflows to use actions/checkout v5 and a Changesets release job, introduces a PR template, removes legacy publish scripts and related config/types, adjusts Rollup config to compute its own rootDir, and extends knip ignored deps. Changes
Sequence Diagram(s)sequenceDiagram
autonumber
actor Dev as Developer
participant GH as GitHub Actions
participant CS as changesets/action
participant NPM as npm Registry
Dev->>GH: Push branch / open PR
GH->>GH: Run PR workflows (checkout v5, tests)
Note over GH: PR workflows don't publish
Dev->>GH: Merge to main
GH->>CS: Run Changesets action (version & publish)
CS->>NPM: Publish packages (public)
CS->>GH: Create tags/releases and PRs for version changes
sequenceDiagram
participant Old as Old Flow
participant New as New Flow
rect rgba(230,230,230,0.3)
note over Old: Removed legacy flow
Old->>Old: `scripts/publish.js` + custom config/types
end
rect rgba(200,240,210,0.3)
note over New: Changesets-based flow
New->>New: `.changeset/config.json` + `package.json` scripts
New->>New: `changesets/action@v1.5.3` in release workflow
end
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Poem
Pre-merge checks and finishing touches✅ Passed checks (3 passed)
✨ Finishing touches
🧪 Generate unit tests
📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: CHILL Plan: Pro 📒 Files selected for processing (2)
🚧 Files skipped from review as they are similar to previous changes (1)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
🔇 Additional comments (2)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🧹 Nitpick comments (3)
.github/pull_request_template.md (1)
10-13: Make “Release Impact” mutually exclusive and actionable.It’s easy to tick both boxes accidentally. Add guidance to select exactly one, and hint at the command for generating a changeset when needed.
## 🚀 Release Impact -- [ ] This change affects published code, and I have generated a [changeset](https://github.com/changesets/changesets/blob/main/docs/adding-a-changeset.md). -- [ ] This change is docs/CI/dev-only (no release). +- [ ] This change affects published code (select this if any package output or public types change). + - If selected, run: `pnpm changeset` and commit the generated changeset. +- [ ] This change is docs/CI/dev-only (no release)..github/workflows/autofix.yml (1)
21-23: Pin actions to a commit SHA for supply‑chain hardening.Optional but recommended for third‑party actions (and checkout) to prevent tag drift.
-uses: actions/checkout@v5.0.0 +uses: actions/checkout@5f62d3cf… # v5.0.0 commit SHA.github/workflows/release.yml (1)
17-18: Release flow via Changesets looks good; harden action pinning and consider setup-node for registry auth.
- Pin changesets/action to a commit SHA (and optionally checkout) to avoid tag drift.
- If tanstack/config setup doesn’t set the npm registry/auth, add setup-node with registry-url before publish.
-uses: actions/checkout@v5.0.0 +uses: actions/checkout@5f62d3cf… # v5.0.0 commit SHA -uses: changesets/action@v1.5.3 +uses: changesets/action@8d2e8a4… # v1.5.3 commit SHAOptionally (if not already handled inside tanstack/config setup):
- name: Setup Tools uses: tanstack/config/.github/setup@main + - name: Setup Node for npm publish + uses: actions/setup-node@v4 + with: + node-version: '20' + registry-url: 'https://registry.npmjs.org'Also applies to: 20-22, 26-26, 38-47
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (1)
pnpm-lock.yamlis excluded by!**/pnpm-lock.yaml
📒 Files selected for processing (10)
.changeset/config.json(1 hunks).github/pull_request_template.md(1 hunks).github/workflows/autofix.yml(1 hunks).github/workflows/pr.yml(3 hunks).github/workflows/release.yml(2 hunks)package.json(2 hunks)scripts/config.js(0 hunks)scripts/getRollupConfig.js(2 hunks)scripts/publish.js(0 hunks)scripts/types.d.ts(0 hunks)
💤 Files with no reviewable changes (3)
- scripts/types.d.ts
- scripts/publish.js
- scripts/config.js
🧰 Additional context used
🪛 GitHub Actions: PR
scripts/getRollupConfig.js
[error] 16-16: Unused exports detected in Rollup config script.
package.json
[error] Unused devDependencies: '@tanstack/config'. Remove to fix.
🔇 Additional comments (6)
.github/workflows/autofix.yml (1)
21-23: Good upgrade to checkout v5 with full history.scripts/getRollupConfig.js (1)
4-4: ESM dirname derivation is correct.Using fileURLToPath(import.meta.url) is the right approach in ESM.
.changeset/config.json (1)
1-14: Config LGTM.Base branch, changelog preset, and update strategy are appropriate for this repo.
package.json (2)
27-29: Scripts align with the new release flow.The sequence for versioning (version → install to update lockfile → prettier) is sound.
49-83: Do not remove '@tanstack/config' blindly — it's referenced by GH Actions; either remove it after confirming it's unnecessary or teach knip to ignore it.Occurrences: package.json (devDependencies) — package.json:62; .github/workflows/autofix.yml:25; .github/workflows/pr.yml:32,51; .github/workflows/release.yml:32; pnpm-lock.yaml entries.
.github/workflows/pr.yml (1)
1-1: Approve — PR workflow updates OK; Node ≥20 present and Nx workflow file exists.
- node -v → v24.3.0 (satisfies checkout v5 Node≥20 requirement).
- Found .nx/workflows/dynamic-changesets.yaml.
- Runner image reported "unknown" in this check — if you use self-hosted runners, confirm they run Node ≥20.
🎯 Changes
See also: TanStack/config#218 and TanStack/virtual#946
✅ Checklist
pnpm test:pr.🚀 Release Impact
Summary by CodeRabbit
Chores
Documentation