chore: bump minor version for all blocks packages#825
Conversation
Made-with: Cursor
WalkthroughA Changesets metadata entry was added to mark multiple block packages ( Changes
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~2 minutes Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
📝 Coding Plan
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. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In @.changeset/blocks-list-minor.md:
- Around line 2-43: The change list incorrectly marks 17 pre-1.0.0 packages as
"minor" — update the entries for the listed package identifiers (e.g.
'@o2s/blocks.bento-grid', '@o2s/blocks.cart',
'@o2s/blocks.checkout-billing-payment', '@o2s/blocks.checkout-company-data',
'@o2s/blocks.checkout-shipping-address', '@o2s/blocks.checkout-summary',
'@o2s/blocks.cta-section', '@o2s/blocks.document-list',
'@o2s/blocks.feature-section', '@o2s/blocks.feature-section-grid',
'@o2s/blocks.hero-section', '@o2s/blocks.media-section',
'@o2s/blocks.order-confirmation', '@o2s/blocks.pricing-section',
'@o2s/blocks.product-details', '@o2s/blocks.product-list',
'@o2s/blocks.recommended-products') from "minor" to "major" and ensure their
bumped version target is 1.0.0 per the versioning policy; leave the remaining 25
package lines as-is.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 2658de17-896f-49b1-9360-d5a83aec0a84
📒 Files selected for processing (1)
.changeset/blocks-list-minor.md
| '@o2s/blocks.article': minor | ||
| '@o2s/blocks.article-list': minor | ||
| '@o2s/blocks.article-search': minor | ||
| '@o2s/blocks.bento-grid': minor | ||
| '@o2s/blocks.cart': minor | ||
| '@o2s/blocks.category': minor | ||
| '@o2s/blocks.category-list': minor | ||
| '@o2s/blocks.checkout-billing-payment': minor | ||
| '@o2s/blocks.checkout-company-data': minor | ||
| '@o2s/blocks.checkout-shipping-address': minor | ||
| '@o2s/blocks.checkout-summary': minor | ||
| '@o2s/blocks.cta-section': minor | ||
| '@o2s/blocks.document-list': minor | ||
| '@o2s/blocks.faq': minor | ||
| '@o2s/blocks.feature-section': minor | ||
| '@o2s/blocks.feature-section-grid': minor | ||
| '@o2s/blocks.featured-service-list': minor | ||
| '@o2s/blocks.hero-section': minor | ||
| '@o2s/blocks.invoice-list': minor | ||
| '@o2s/blocks.media-section': minor | ||
| '@o2s/blocks.notification-details': minor | ||
| '@o2s/blocks.notification-list': minor | ||
| '@o2s/blocks.notification-summary': minor | ||
| '@o2s/blocks.order-confirmation': minor | ||
| '@o2s/blocks.order-details': minor | ||
| '@o2s/blocks.order-list': minor | ||
| '@o2s/blocks.orders-summary': minor | ||
| '@o2s/blocks.payments-history': minor | ||
| '@o2s/blocks.payments-summary': minor | ||
| '@o2s/blocks.pricing-section': minor | ||
| '@o2s/blocks.product-details': minor | ||
| '@o2s/blocks.product-list': minor | ||
| '@o2s/blocks.quick-links': minor | ||
| '@o2s/blocks.recommended-products': minor | ||
| '@o2s/blocks.service-details': minor | ||
| '@o2s/blocks.service-list': minor | ||
| '@o2s/blocks.surveyjs-form': minor | ||
| '@o2s/blocks.ticket-details': minor | ||
| '@o2s/blocks.ticket-list': minor | ||
| '@o2s/blocks.ticket-recent': minor | ||
| '@o2s/blocks.ticket-summary': minor | ||
| '@o2s/blocks.user-account': minor |
There was a problem hiding this comment.
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
set -euo pipefail
# 1) Extract package names from this changeset file.
python - <<'PY'
import re, json, pathlib
changeset = pathlib.Path(".changeset/blocks-list-minor.md").read_text()
pkgs = re.findall(r"'(`@o2s/blocks`\.[^']+)':\s*minor", changeset)
print(json.dumps(pkgs))
PYRepository: o2sdev/openselfservice
Length of output: 1333
🏁 Script executed:
#!/bin/bash
set -euo pipefail
# 2) Cross-check each package against packages/blocks/*/package.json and print versions.
python - <<'PY'
import json, pathlib, re, sys
changeset_path = pathlib.Path(".changeset/blocks-list-minor.md")
text = changeset_path.read_text()
listed = re.findall(r"'(`@o2s/blocks`\.[^']+)':\s*minor", text)
pkg_files = list(pathlib.Path("packages/blocks").glob("*/package.json"))
name_to_version = {}
for pf in pkg_files:
data = json.loads(pf.read_text())
name = data.get("name")
ver = data.get("version")
if name:
name_to_version[name] = (ver, str(pf))
missing = []
pre_1 = []
for name in listed:
if name not in name_to_version:
missing.append(name)
else:
ver, path = name_to_version[name]
print(f"{name} -> version={ver} ({path})")
try:
major = int(str(ver).split(".")[0])
if major < 1:
pre_1.append((name, ver, path))
except Exception:
pass
print("\n=== Missing package.json entries ===")
for m in missing:
print(m)
print("\n=== Listed packages still <1.0.0 (review if bump policy should be major) ===")
for n, v, p in pre_1:
print(f"{n} -> {v} ({p})")
PYRepository: o2sdev/openselfservice
Length of output: 1322
🏁 Script executed:
#!/bin/bash
set -euo pipefail
# Check what exists under packages/blocks
if [ -d "packages/blocks" ]; then
echo "=== Directory listing: packages/blocks ==="
ls -la packages/blocks/ | head -20
echo ""
echo "=== Subdirectory count ==="
find packages/blocks -maxdepth 1 -type d | wc -l
fiRepository: o2sdev/openselfservice
Length of output: 963
🏁 Script executed:
#!/bin/bash
set -euo pipefail
# Search for `@o2s/blocks`.* package names in entire repository
echo "=== Searching for `@o2s/blocks`.* in package.json files ==="
rg '"name"\s*:\s*"@o2s/blocks\.' -g 'package.json' -A 1 -B 1 | head -50Repository: o2sdev/openselfservice
Length of output: 3139
🏁 Script executed:
#!/bin/bash
set -euo pipefail
# Check the changeset file content in full to see if it's referencing packages correctly
echo "=== Full changeset file content ==="
cat .changeset/blocks-list-minor.mdRepository: o2sdev/openselfservice
Length of output: 1689
🏁 Script executed:
#!/bin/bash
set -euo pipefail
# Find all block packages with their versions
python - <<'PY'
import json, pathlib, re
# Extract package names from changeset
changeset = pathlib.Path(".changeset/blocks-list-minor.md").read_text()
listed = sorted(set(re.findall(r"'(`@o2s/blocks`\.[^']+)':\s*minor", changeset)))
# Find all package.json files under packages/blocks
pkg_files = list(pathlib.Path("packages/blocks").rglob("package.json"))
# Build name -> version mapping
name_to_version = {}
for pf in pkg_files:
try:
data = json.loads(pf.read_text())
name = data.get("name")
ver = data.get("version")
if name and name.startswith("@o2s/blocks."):
name_to_version[name] = ver
except:
pass
# Check each listed package
new_packages = []
pre_1_packages = []
missing_packages = []
existing_packages = []
for name in listed:
if name not in name_to_version:
missing_packages.append(name)
else:
ver = name_to_version[name]
existing_packages.append((name, ver))
try:
major = int(str(ver).split(".")[0])
if major == 0:
pre_1_packages.append((name, ver))
elif ver == "0.0.0":
new_packages.append(name)
except:
pass
print("=== Packages with CURRENT versions ===")
for name, ver in sorted(existing_packages):
print(f"{name:<45} {ver}")
print(f"\n=== Summary ===")
print(f"Total listed in changeset: {len(listed)}")
print(f"Found with versions: {len(existing_packages)}")
print(f"Missing (truly new?): {len(missing_packages)}")
print(f"Pre-1.0 (0.x.x): {len(pre_1_packages)}")
if pre_1_packages:
print(f"\n=== Pre-1.0.0 packages (major bump recommended) ===")
for name, ver in pre_1_packages:
print(f"{name:<45} {ver}")
if missing_packages:
print(f"\n=== Missing packages (likely new, major bump required) ===")
for name in missing_packages[:10]: # Show first 10
print(name)
if len(missing_packages) > 10:
print(f"... and {len(missing_packages) - 10} more")
PYRepository: o2sdev/openselfservice
Length of output: 3340
17 packages are pre-1.0.0 and should use major version bumps instead of minor.
All packages currently at 0.x.x should be bumped to 1.0.0 with major according to the versioning policy. The following packages require bump type changes:
@o2s/blocks.bento-grid(0.6.3)@o2s/blocks.cart(0.1.2)@o2s/blocks.checkout-billing-payment(0.1.2)@o2s/blocks.checkout-company-data(0.1.2)@o2s/blocks.checkout-shipping-address(0.1.2)@o2s/blocks.checkout-summary(0.1.2)@o2s/blocks.cta-section(0.6.3)@o2s/blocks.document-list(0.6.3)@o2s/blocks.feature-section(0.6.3)@o2s/blocks.feature-section-grid(0.5.3)@o2s/blocks.hero-section(0.6.3)@o2s/blocks.media-section(0.6.3)@o2s/blocks.order-confirmation(0.1.2)@o2s/blocks.pricing-section(0.6.3)@o2s/blocks.product-details(0.3.2)@o2s/blocks.product-list(0.4.1)@o2s/blocks.recommended-products(0.3.1)
The 25 packages already at 1.0.0+ can remain as minor.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In @.changeset/blocks-list-minor.md around lines 2 - 43, The change list
incorrectly marks 17 pre-1.0.0 packages as "minor" — update the entries for the
listed package identifiers (e.g. '@o2s/blocks.bento-grid', '@o2s/blocks.cart',
'@o2s/blocks.checkout-billing-payment', '@o2s/blocks.checkout-company-data',
'@o2s/blocks.checkout-shipping-address', '@o2s/blocks.checkout-summary',
'@o2s/blocks.cta-section', '@o2s/blocks.document-list',
'@o2s/blocks.feature-section', '@o2s/blocks.feature-section-grid',
'@o2s/blocks.hero-section', '@o2s/blocks.media-section',
'@o2s/blocks.order-confirmation', '@o2s/blocks.pricing-section',
'@o2s/blocks.product-details', '@o2s/blocks.product-list',
'@o2s/blocks.recommended-products') from "minor" to "major" and ensure their
bumped version target is 1.0.0 per the versioning policy; leave the remaining 25
package lines as-is.
Coverage Report for packages/configs/vitest-config
File CoverageNo changed files found. |
Summary
Add changeset to bump minor version for all 42 block packages in
packages/blocks.Changes
.changeset/blocks-list-minor.mdwith minor version bump for all blocks:Next steps
Run
pnpm changeset versionto apply version bumps, then publish as needed.Summary by CodeRabbit