-
-
Notifications
You must be signed in to change notification settings - Fork 53
Release 0.1.0 #1564
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Release 0.1.0 #1564
Conversation
🦋 Changeset detectedLatest commit: e42b205 The changes in this PR will be included in the next version bump. This PR includes changesets to release 1 package
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
WalkthroughAdds a new Changeset documenting feature, test/a11y, fix/refactor, and docs changes and adds a CI build job; introduces a public API breaking change: Toggle prop renamed from Changes
Sequence Diagram(s)sequenceDiagram
autonumber
participant Dev as Developer (push/pr)
participant GH as GitHub Actions
participant Test as test job
participant Build as build job
participant Repo as Repository
participant Artifact as Artifact Store
Dev->>GH: push / pull_request (paths filtered)
GH->>Test: run job `test`
Test-->>GH: success
GH->>Build: run job `build` (needs: test)
Build->>Repo: actions/checkout
Build->>Build: setup-node (Node 20, npm cache)
Build->>Build: npm ci
Build->>Build: npm run build:rollup
alt push to main
Build->>Artifact: upload dist (radui-ui-dist)
else other events
Note right of Build: upload skipped
end
Build-->>GH: job complete
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Possibly related PRs
Suggested labels
Suggested reviewers
Poem
Pre-merge checks and finishing touches✅ Passed checks (3 passed)
✨ Finishing touches🧪 Generate unit tests
Comment |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 2
🧹 Nitpick comments (4)
.changeset/fluffy-ties-decide.md (4)
16-22: Document test infra knobs (coverage thresholds, sharding).Add concrete values or a pointer (CONTRIBUTING.md) for:
- global coverage thresholds,
- how sharding is configured/invoked (env vars, CI matrix).
Apply:
@@ - - Enforced **global test coverage thresholds**. - - Parallelized Jest test runs with **sharding** for faster feedback. + - Enforced **global test coverage thresholds** (see CONTRIBUTING.md for exact numbers). + - Parallelized Jest test runs with **sharding** (docs in CONTRIBUTING.md: how to run locally and CI config).
24-27: Clarify type-surface impact for TS consumers.If
SelectPrimitiveItemPropsexport typing or NavigationMenu typing changes can cause compile errors, flag them as “type-affecting” and note any renames.Apply:
@@ - - Fixed `SelectPrimitiveItemProps` export typing. - - Refined **NavigationMenu typing**. + - Fixed `SelectPrimitiveItemProps` export typing (type-only change; may surface new, correct errors in consumer apps). + - Refined **NavigationMenu typing** (no runtime impact).
27-27: Unify quoting style around code identifiers.Use backticks only: Primitive asChild. Avoid curly quotes around code.
- - Silenced “Primitive `asChild`” warnings in tests. + - Silenced Primitive `asChild` warnings in tests.
5-5: Tighten the opening summary for scannability.Minor copy edit to front-load the most impactful items.
-This release adds tests around the codebase, improves API support across multiple components, introduces new features like Steps + Minimap and roving focus in CheckboxGroups, while cleaning up builds, docs, and accessibility. +This release introduces new features (Steps + Minimap, roving focus in CheckboxGroup), adds forwardRef across components, expands a11y/tests, and cleans up builds and docs.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
.changeset/fluffy-ties-decide.md(1 hunks)
⏰ 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). (1)
- GitHub Check: coverage
🔇 Additional comments (2)
.changeset/fluffy-ties-decide.md (2)
26-26: Confirm CI/build memory settings are aligned with the changesetRepo search found no references to NODE_OPTIONS, --max_old_space_size, or Rollup in CI configs — verify CI sets equivalent Node memory flags (or update CI) to match .changeset/fluffy-ties-decide.md and prevent flaky builds.
1-3: Frontmatter OK — @radui/ui exists and minor bump will move 0.0.47 → 0.1.0.
Root package.json reports @radui/ui@0.0.47, so no frontmatter change is required; changeset enumeration failed due to a search (fd) error — re-run verification to list all .changeset files if you want full confirmation.
CoverageThis report compares the PR with the base branch. “Δ” shows how the PR affects each metric.
Coverage improved or stayed the same. Great job! Run |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
♻️ Duplicate comments (2)
.changeset/fluffy-ties-decide.md (2)
5-5: Singularize “CheckboxGroups” → “CheckboxGroup”.Keep naming consistent with the component.
-… roving focus in CheckboxGroups, while cleaning … +… roving focus in CheckboxGroup, while cleaning …
13-15: Optional: alphabetize the forwardRef list for scanability.Minor readability win; no functional impact.
🧹 Nitpick comments (5)
.github/workflows/test.yml (4)
53-60: Pin Actions to commit SHAs for supply-chain hardening.actions/checkout and actions/setup-node are versioned by tag; prefer pinning to a specific commit SHA with a comment indicating the tag.
Example:
- - uses: actions/checkout@v4 + - uses: actions/checkout@v4 + # pin: 3df4b4… (v4) - - name: Setup Node.js - uses: actions/setup-node@v4 + - name: Setup Node.js + uses: actions/setup-node@v4 + # pin: 6f234a… (v4)Also applies to: 74-81
43-68: Add explicit job timeouts to prevent hanging runs.CI stability: set timeout-minutes on jobs to fail fast on stuck tests.
test: name: Jest (${{ matrix.shard }}/${{ matrix.total }}) runs-on: ubuntu-latest + timeout-minutes: 20
85-86: Ensure the Rollup memory increase is effective in CI.If the memory bump was done via NODE_OPTIONS locally, mirror it here to avoid sporadic OOMs.
- - name: Build package - run: npm run build:rollup + - name: Build package + env: + NODE_OPTIONS: --max_old_space_size=4096 + run: npm run build:rollupIf this is already handled inside the npm script, ignore.
88-96: Optional: publish PR build artifacts for reviewer QA.Keeping upload gated to main is safe; consider adding a second upload step for PRs with short retention to ease manual verification.
# Upload dist only on pushes to main (skip for PRs) - name: Upload dist artifact if: github.event_name == 'push' && github.ref == 'refs/heads/main' uses: actions/upload-artifact@v4 with: name: radui-ui-dist path: dist if-no-files-found: error retention-days: 2 + + - name: Upload dist artifact (PR preview) + if: github.event_name == 'pull_request' + uses: actions/upload-artifact@v4 + with: + name: radui-ui-dist-pr + path: dist + if-no-files-found: error + retention-days: 1.changeset/fluffy-ties-decide.md (1)
44-50: Tiny formatting nit in the snippet.There appears to be extra trailing spaces after “// After”. Clean up to avoid copy/paste noise.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (2)
.changeset/fluffy-ties-decide.md(1 hunks).github/workflows/test.yml(5 hunks)
🧰 Additional context used
🧠 Learnings (1)
📚 Learning: 2024-12-12T08:34:33.079Z
Learnt from: decipher-cs
PR: rad-ui/ui#417
File: src/components/ui/Dropdown/Dropdown.stories.tsx:43-50
Timestamp: 2024-12-12T08:34:33.079Z
Learning: Ensure to verify existing ARIA attributes in components before suggesting additions during code reviews, especially in the `Dropdown.Trigger` component in `src/components/ui/Dropdown/Dropdown.stories.tsx`.
Applied to files:
.changeset/fluffy-ties-decide.md
⏰ 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)
- GitHub Check: Build
- GitHub Check: coverage
🔇 Additional comments (1)
.changeset/fluffy-ties-decide.md (1)
36-65: Confirm versioning policy: breaking change with a “minor” bump under 0.x.This changeset declares a minor bump with BREAKING CHANGES. That’s acceptable for 0.x if your policy treats minor as breaking. Please confirm that’s intentional for 0.1.0 and documented for consumers.
| branches: [ main ] | ||
| paths: | ||
| - 'src/**' # Only run when files in this directory change | ||
| - 'src/**' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
💡 Verification agent
🧩 Analysis chain
Confirm path filters cover all workspaces and build inputs.
If this repo uses workspaces/monorepo folders (e.g., packages/**), tests/builds may be skipped unintentionally. Verify the filters align with your package.json workspaces and any config files Rollup/Jest read.
Run to check and compare against the filters:
Also applies to: 17-18, 22-22, 32-33
🏁 Script executed:
#!/bin/bash
set -euo pipefail
echo "== top-level dirs =="
ls -1
echo "== workspaces from package.json (if any) =="
if command -v jq >/dev/null 2>&1 && [ -f package.json ]; then
jq -r '.workspaces // .packages // empty' package.json
fi
echo "== config files that affect build/test =="
fd -a -I -t f -g '.eslint*' -g '.prettier*' -g 'babel.config.*' -g 'jest.*' -g 'vitest.*' -g 'tsconfig.*' -g 'rollup*.config.*' -g 'postcss.config.js' -g 'vite.config.*' || trueLength of output: 1021
Update CI path filters to include repo-level configs and non-src inputs.
package.json has no workspaces; with the workflow limited to 'src/' changes to root config/support files won't trigger CI.
Observed root files/dirs: package.json, package-lock.json, jest.config.ts, tsconfig.json, playwright.config.ts, postcss.config.cjs, rollup.config.cjs, rollup-css.config.js, rollup-tokens.config.js, tailwind.config.js, build-components.cjs, scripts/, test-utils/, e2e/, styles/.
Action: edit .github/workflows/test.yml (the line with "- 'src/'") to also match those files/dirs — e.g. add globs: 'package.json', 'package-lock.json', 'tsconfig.json', 'jest.config.ts', 'playwright.config.ts', 'rollup*.config.*', 'postcss.config.cjs', 'tailwind.config.js', 'scripts/', 'test-utils/', 'e2e/', 'styles/'.
🤖 Prompt for AI Agents
.github/workflows/test.yml around line 7: the workflow's paths filter only
includes 'src/**' so changes to repo-level config and other non-src files won't
trigger CI; update the paths list to include the recommended globs (e.g.
'package.json', 'package-lock.json', 'tsconfig.json', 'jest.config.ts',
'playwright.config.ts', 'postcss.config.cjs', 'tailwind.config.js',
'rollup*.config.*', plus directories like 'scripts/**', 'test-utils/**',
'e2e/**', 'styles/**') by replacing or extending the existing "- 'src/**'" entry
with all these entries so changes to those files will trigger the workflow.
This release adds tests around the codebase, improves API support across multiple components, introduces new features like Steps + Minimap and roving focus in CheckboxGroups, while cleaning up builds, docs, and accessibility.
✨ Features
forwardRef:🧪 Tests & Accessibility
asChild, and SSR hydration scenarios.🛠 Fixes & Refactors
SelectPrimitiveItemPropsexport typing.asChild” warnings in tests.📚 Docs & Chores
onChange→onPressedChange.Summary by CodeRabbit