Skip to content
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

Update Changesets and experimental release flow #11442

Merged
merged 5 commits into from
Apr 17, 2024

Conversation

markdalgleish
Copy link
Member

@markdalgleish markdalgleish commented Apr 12, 2024

This adds the new packages to the Changesets config, reimplements the Changesets patch from Remix, and updates the experimental flow to be manually triggered via GitHub, just like Remix.

As part of this, the version script has been updated to handle the new packages, and has been streamlined a bit due to the use of workspace dependencies which means we no longer need to manually bump our dependency versions.

Note that this will need a NIGHTLY_PAT value to work correctly.

Copy link

changeset-bot bot commented Apr 12, 2024

⚠️ No Changeset found

Latest commit: 2b4dbab

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

Copy link
Contributor

@brophdawg11 brophdawg11 left a comment

Choose a reason for hiding this comment

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

A few minor questions but I think this looks good. Probably not a ton we can do to fully validate until we're ready to do the first prerelease since it doens't look like changesets has a dry-run option yet (changesets/changesets#614)

"publish": "node scripts/publish.js",
"version:experimental": "node ./scripts/version experimental",
"version": "node ./scripts/version",
Copy link
Contributor

Choose a reason for hiding this comment

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

Is it true we only use this for experimental releases now via pnpm run version 0.0.0-experimental-[sha] --skip-prompt?

Copy link
Member Author

@markdalgleish markdalgleish Apr 17, 2024

Choose a reason for hiding this comment

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

Currently, but this update is to match the structure in Remix where it's also used for nightly releases.

Copy link
Member Author

Choose a reason for hiding this comment

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

Oh, and it's also referenced in contributing.md.

@@ -76,59 +68,34 @@ async function run() {

if (answer === false) return 0;
Copy link
Contributor

Choose a reason for hiding this comment

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

If it's true we only use this for experimentals now, we might be able to shed some more stuff in here:

  • This prompt stuff (step 2) isn't necessary since we're using --skip-prompt, so we could remove that CLI flag and this code
  • The manual version bump above (if (version == null)) I think is no longer needed since we'll always provide a version as a CLI arg?
  • I think all the isSnapshotVersion conditionals could go away since it'll only be used for those

Copy link
Member Author

Choose a reason for hiding this comment

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

Good call. I've simplified the script now so that the version specifier is required.

In the current package structure, the isSnapshotVersion is still required because it's used to detect experimental/nightly releases and ensure that @remix-run/router also gets a version update.

Copy link
Contributor

Choose a reason for hiding this comment

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

it's probably a moot point too since the router will be collapsing into react-router too so everything will be versioned identically moving forward. We can tackle that when we remove the router package 👍

@markdalgleish markdalgleish merged commit 0af95d4 into v7 Apr 17, 2024
3 of 5 checks passed
@markdalgleish markdalgleish deleted the markdalgleish/changesets branch April 17, 2024 20:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants