Skip to content

Comments

chore: use workspace protocol for internal dependencies#3209

Merged
lariciamota merged 3 commits intodevfrom
chore/use-workspace-protocol-for-internal-deps-dev
Feb 19, 2026
Merged

chore: use workspace protocol for internal dependencies#3209
lariciamota merged 3 commits intodevfrom
chore/use-workspace-protocol-for-internal-deps-dev

Conversation

@ArthurTriis1
Copy link
Contributor

@ArthurTriis1 ArthurTriis1 commented Feb 13, 2026

Summary

  • Replace hardcoded version references (^3.97.0-dev.2) with workspace:* protocol for @faststore/components and @faststore/ui in packages/ui/package.json and packages/storybook/package.json
  • This ensures local packages are always resolved from the monorepo workspace during development

Motivation

Extracted from PR #3117 as requested in code review by @lariciamota, so we can identify possible problems easier by isolating this change.

Changed files

  • packages/ui/package.json@faststore/components dependency and peerDependency changed to workspace:*
  • packages/storybook/package.json@faststore/components and @faststore/ui dependencies changed to workspace:*

Summary by CodeRabbit

  • Chores
    • Switched internal package references in Storybook and UI to workspace-based declarations to improve build consistency.
    • Aligned dependency declarations across the monorepo to reduce version mismatch risks and streamline local development and local testing.

@ArthurTriis1 ArthurTriis1 requested a review from a team as a code owner February 13, 2026 15:38
@ArthurTriis1 ArthurTriis1 requested review from lariciamota and ommeirelles and removed request for a team February 13, 2026 15:38
@ArthurTriis1 ArthurTriis1 self-assigned this Feb 13, 2026
@coderabbitai
Copy link

coderabbitai bot commented Feb 13, 2026

Walkthrough

Replaced semver dependency specifiers with workspace protocol references in two package.json files, switching @faststore/components and @faststore/ui from pinned versions to workspace:* to rely on monorepo package resolution.

Changes

Cohort / File(s) Summary
Storybook package
packages/storybook/package.json
Changed @faststore/components and @faststore/ui dependency versions from ^3.97.0-dev.2 to workspace:*.
UI package
packages/ui/package.json
Changed @faststore/components in dependencies and peerDependencies from ^3.97.0-dev.2 / 3.x to workspace:*.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

Suggested reviewers

  • renatomaurovtex

Poem

Workspace threads now hum in tune,
Versions swapped beneath the monorepo moon.
Internal links tidy the road ahead,
A lighter lock where dependencies tread. ✨

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely summarizes the main change: adopting workspace protocol for internal dependencies across the monorepo packages.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch chore/use-workspace-protocol-for-internal-deps-dev

Tip

Issue Planner is now in beta. Read the docs and try it out! Share your feedback on Discord.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Replace hardcoded version references with workspace:* protocol
for @faststore/components and @faststore/ui in packages/ui and
packages/storybook to ensure local packages are always resolved
from the monorepo workspace.

Co-authored-by: Cursor <cursoragent@cursor.com>
@ArthurTriis1 ArthurTriis1 force-pushed the chore/use-workspace-protocol-for-internal-deps-dev branch from b84c030 to 2d9ce45 Compare February 13, 2026 15:39
@codesandbox-ci
Copy link

codesandbox-ci bot commented Feb 13, 2026

This pull request is automatically built and testable in CodeSandbox.

To see build info of the built libraries, click here or the icon next to each commit SHA.

Copy link

@coderabbitai coderabbitai bot left a 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

🤖 Fix all issues with AI agents
In `@packages/ui/package.json`:
- Line 57: Update the peerDependencies entry for the package so it uses
workspace:^ instead of workspace:*, specifically change the
"@faststore/components" peerDependency from "workspace:*" to "workspace:^" so
the published range becomes a caret range (e.g., ^3.97.0-dev.2) and preserves
version flexibility for downstream consumers.

Copy link

@coderabbitai coderabbitai bot left a 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

🤖 Fix all issues with AI agents
In `@packages/ui/package.json`:
- Around line 56-58: The peerDependencies block in packages/ui/package.json
dropped the `@faststore/components` peer contract unexpectedly; restore the peer
contract by re-adding "@faststore/components" to the "peerDependencies" object
using the workspace spec that preserves a 3.x range (e.g., "workspace:^" so it
publishes as ^3.x.y) if you intend to keep the compatibility signal, or if
removal was intentional, update the PR description to state that
`@faststore/components` was deliberately removed; edit the package.json's
"peerDependencies" entry for `@faststore/components` or the PR description
accordingly.
🧹 Nitpick comments (1)
packages/ui/package.json (1)

50-50: workspace:* publishes as an exact version — verify this is intentional.

The original specifier ^3.97.0-dev.2 allowed compatible updates, while workspace:* will resolve to an exact pinned version on publish (e.g., 3.97.0-dev.2). Since these packages are released in lockstep from the monorepo this is likely fine, but if you want to preserve caret-range semantics for published consumers, use workspace:^ instead.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Duplicate comments:
In `@packages/ui/package.json`:
- Around line 56-60: The peerDependencies entry for "@faststore/components" uses
"workspace:*", which will be published as an exact version and break semver
ranges; update the peerDependencies object to use "workspace:^" for
"@faststore/components" instead so published manifests keep a caret range (e.g.,
workspace:^) and preserve compatibility with other 3.x releases.

@lariciamota lariciamota merged commit 0d1e0a9 into dev Feb 19, 2026
5 of 6 checks passed
@lariciamota lariciamota deleted the chore/use-workspace-protocol-for-internal-deps-dev branch February 19, 2026 14:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants