Skip to content

Promote a canary from NPM to be a stable release #14255

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

Closed

Conversation

bvaughn
Copy link
Contributor

@bvaughn bvaughn commented Nov 16, 2018

Issue #14201. Builds on top of #14244 (view the delta).

New script to prepare a canary release to be promoted to stable. This script checks out canary packages from NPM, prompts for new stable versions, and updates the versions (including dependencies) in the checked-out packages.

Learn more about these new release scripts here.

$ scripts/release/prepare-stable.js --version=0.0.0-5bf84d292

prepare-canary-2

Brian Vaughn added 4 commits November 13, 2018 15:38
@bvaughn bvaughn changed the title Automated release scripts part 3 Promote a canary from NPM to be a stable release Nov 16, 2018
@bvaughn bvaughn mentioned this pull request Nov 16, 2018
31 tasks
`cp -r ${tempDirectory}/build/node_modules/*.tgz ${cwd}/build/node_modules/`
);

// Unpack packages and parepare to publish.
Copy link

Choose a reason for hiding this comment

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

typo on "parepare"

const {getBuildInfo, handleError} = require('./utils');

// This local build script exists for special case, manual builds.
// The typical suggesgted release process is to create a canary from a CI artifact.
Copy link

Choose a reason for hiding this comment

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

typo on "suggesgted"

// If the source dependency's version and the constraint match,
// we will need to update the constraint to point at the dependency's new release version,
// (e.g. scheduler@^0.11.0 becomes scheduler@^0.12.0 when we release scheduler 0.12.0).
// Othewise we leave the constraint alone (e.g. react@^16.0.0 doesn't change between releases).
Copy link

Choose a reason for hiding this comment

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

typo on "Othewise"

// Update all package JSON versions and their dependencies/peerDependencies.
// This must be done in a way that respects semver constraints (e.g. 16.7.0, ^16.7.0, ^16.0.0).
// To do this, we use the dependencies defined in the source package JSONs,
// because the canary dependencies have already been falttened to an exact match (e.g. 0.0.0-ddaf2b07c).
Copy link

Choose a reason for hiding this comment

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

typo on "falttened"

@bvaughn
Copy link
Contributor Author

bvaughn commented Nov 17, 2018

Thanks. I can't type. I'll fix those.

@bvaughn
Copy link
Contributor Author

bvaughn commented Nov 18, 2018

Typo fixes included in next PR, #14260

@threepointone
Copy link
Contributor

tried running this, what do you suppose I'm doing wrong?
screenshot 2018-11-23 at 20 35 14

@bvaughn
Copy link
Contributor Author

bvaughn commented Nov 23, 2018

I'm guessing you didn't actually publish the canary you're trying to promote to stable 😄

You can either run with a --local flag to skip the NPM checkout (and just use whatever already happens to be in dist) or you can publish first, and then promote (the way the script is actually meant to be used).

@bvaughn
Copy link
Contributor Author

bvaughn commented Nov 23, 2018

Already merged via #14260

@bvaughn bvaughn closed this Nov 23, 2018
@bvaughn bvaughn deleted the automated-release-scripts-part-3 branch November 23, 2018 20:40
@threepointone
Copy link
Contributor

aha that's what it was.

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.

4 participants