Skip to content

Build: Stop writing version JSON-files when publishing#34642

Merged
JReinhold merged 1 commit into
nextfrom
jeppe/skip-version-jsons
Apr 27, 2026
Merged

Build: Stop writing version JSON-files when publishing#34642
JReinhold merged 1 commit into
nextfrom
jeppe/skip-version-jsons

Conversation

@JReinhold
Copy link
Copy Markdown
Contributor

@JReinhold JReinhold commented Apr 27, 2026

See companion PR in docs repo: storybookjs/web#401

What I did

When building our docs, we now pull the latest release and prerelease versions of Storybook directly from npmjs, instead of relying on us generating these JSON files and pulling them into the docs repo. So I've removed the generation of said files here.

One less step to screw up! 💪

Checklist for Contributors

Testing

The changes in this PR are covered in the following automated tests:

  • stories
  • unit tests
  • integration tests
  • end-to-end tests

Manual testing

Caution

This section is mandatory for all contributions. If you believe no manual test is necessary, please state so explicitly. Thanks!

Documentation

  • Add or update documentation reflecting your changes
  • If you are deprecating/removing a feature, make sure to update
    MIGRATION.MD

Checklist for Maintainers

  • When this PR is ready for testing, make sure to add ci:normal, ci:merged or ci:daily GH label to it to run a specific set of sandboxes. The particular set of sandboxes can be found in code/lib/cli-storybook/src/sandbox-templates.ts

  • Make sure this PR contains one of the labels below:

    Available labels
    • bug: Internal changes that fixes incorrect behavior.
    • maintenance: User-facing maintenance tasks.
    • dependencies: Upgrading (sometimes downgrading) dependencies.
    • build: Internal-facing build tooling & test updates. Will not show up in release changelog.
    • cleanup: Minor cleanup style change. Will not show up in release changelog.
    • documentation: Documentation only changes. Will not show up in release changelog.
    • feature request: Introducing a new feature.
    • BREAKING CHANGE: Changes that break compatibility in some way with current major version.
    • other: Changes that don't fit in the above categories.

🦋 Canary release

This PR does not have a canary release associated. You can request a canary release of this pull request by mentioning the @storybookjs/core team here.

core team members can create a canary release here or locally with gh workflow run --repo storybookjs/storybook publish.yml --field pr=<PR_NUMBER>

Summary by CodeRabbit

  • Chores

    • Simplified release process by removing automated version synchronization between branches and manual emergency release procedures.
  • Documentation

    • Updated release documentation to reflect streamlined version management workflow.

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Apr 27, 2026

Fails
🚫 The "#### Manual testing" section must be filled in. Please describe how to test the changes you've made, step by step, so that reviewers can confirm your PR works as intended.

Generated by 🚫 dangerJS against 2403072

@JReinhold JReinhold added build Internal-facing build tooling & test updates ci:normal labels Apr 27, 2026
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Apr 27, 2026

📝 Walkthrough

Walkthrough

This PR removes the automatic synchronization mechanism for version JSON files from the release and publish workflows. The changes eliminate GitHub workflow steps, helper functions, test assertions, and documentation related to maintaining docs/versions/latest.json and docs/versions/next.json.

Changes

Cohort / File(s) Summary
GitHub Workflow & Release Documentation
.github/workflows/publish.yml, CONTRIBUTING/RELEASING.md
Removes the conditional step that synced version JSONs from next-release to main and deletes documentation warning about manual changelog/version-JSON synchronization and the emergency local-release procedure.
Version JSON Files
docs/versions/latest.json, docs/versions/next.json
Removes all content from both version JSON files, deleting the version numbers and changelog entries previously maintained there.
Formatting Configuration
.oxfmtrc.json
Removes explicit ignore patterns for docs/versions/*.json and docs/versions/**, allowing these files to be formatted according to the broader !docs/** negate pattern.
Release Scripts & Tests
scripts/release/write-changelog.ts, scripts/release/__tests__/write-changelog.test.ts, scripts/release/generate-pr-description.ts
Eliminates the helper function that wrote version JSON files, removes related test assertions and snapshots, and stops filtering out PRs with "Update ./docs/versions" titles from the change list.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch

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

Copy link
Copy Markdown
Contributor

@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

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

Inline comments:
In `@scripts/release/__tests__/write-changelog.test.ts`:
- Around line 56-57: Replace direct access to the mock internals of
fsp.writeFile with a typed mock via vi.mocked to match the pattern used for
changesUtils; specifically, wherever the test reads fsp.writeFile.mock.calls
(e.g., in the assertions around STABLE_CHANGELOG_PATH at lines referenced and
the other two occurrences), change those to vi.mocked(fsp.writeFile).mock.calls
so the assertions use the typed mock wrapper (keep the rest of the assertions
the same).
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 32dcdbfd-9151-4fd3-9cf2-43e2ac6d8e8d

📥 Commits

Reviewing files that changed from the base of the PR and between d1b3f88 and 2403072.

📒 Files selected for processing (8)
  • .github/workflows/publish.yml
  • .oxfmtrc.json
  • CONTRIBUTING/RELEASING.md
  • docs/versions/latest.json
  • docs/versions/next.json
  • scripts/release/__tests__/write-changelog.test.ts
  • scripts/release/generate-pr-description.ts
  • scripts/release/write-changelog.ts
💤 Files with no reviewable changes (6)
  • scripts/release/generate-pr-description.ts
  • docs/versions/latest.json
  • docs/versions/next.json
  • .github/workflows/publish.yml
  • scripts/release/write-changelog.ts
  • CONTRIBUTING/RELEASING.md

Comment thread scripts/release/__tests__/write-changelog.test.ts
Copy link
Copy Markdown
Contributor

@huang-julien huang-julien left a comment

Choose a reason for hiding this comment

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

🎉

@JReinhold JReinhold merged commit fd9decf into next Apr 27, 2026
124 of 132 checks passed
@JReinhold JReinhold deleted the jeppe/skip-version-jsons branch April 27, 2026 14:57
@github-actions github-actions Bot mentioned this pull request Apr 28, 2026
16 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

build Internal-facing build tooling & test updates ci:normal

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants