Skip to content

Conversation

@cknitt
Copy link
Member

@cknitt cknitt commented Nov 27, 2025

No description provided.

@cknitt cknitt requested a review from tsnobip November 27, 2025 16:50
@cknitt cknitt force-pushed the npm-release-script branch from 5bd217d to d9efe69 Compare November 27, 2025 16:53
Copy link
Member

@tsnobip tsnobip left a comment

Choose a reason for hiding this comment

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

nice improvement!

@pkg-pr-new
Copy link

pkg-pr-new bot commented Nov 27, 2025

Open in StackBlitz

rescript

npm i https://pkg.pr.new/rescript-lang/rescript@8041

@rescript/darwin-arm64

npm i https://pkg.pr.new/rescript-lang/rescript/@rescript/darwin-arm64@8041

@rescript/darwin-x64

npm i https://pkg.pr.new/rescript-lang/rescript/@rescript/darwin-x64@8041

@rescript/linux-arm64

npm i https://pkg.pr.new/rescript-lang/rescript/@rescript/linux-arm64@8041

@rescript/linux-x64

npm i https://pkg.pr.new/rescript-lang/rescript/@rescript/linux-x64@8041

@rescript/runtime

npm i https://pkg.pr.new/rescript-lang/rescript/@rescript/runtime@8041

@rescript/win32-x64

npm i https://pkg.pr.new/rescript-lang/rescript/@rescript/win32-x64@8041

commit: 3a270ae

1. Run `npm info rescript` to verify that the new version is now present with tag "ci".
1. Test the new version.
1. Tag the new version as appropriate (`latest` or `next`): `npm dist-tag add rescript@<version> <tag>`
1. Tag all packages for the new version as appropriate (`latest` or `next`): `./scripts/npmRelease.js --version <version> --tag <tag>`
Copy link
Member

Choose a reason for hiding this comment

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

What is the lore here that this is such a labor intensive process?
Just curious.

Copy link
Member Author

Choose a reason for hiding this comment

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

Labor intensive, well, you should have seen how these processes worked in earlier times. 🙈

The current procedure allows one to test the finished packages for a final time using npm install rescript@ci, and then decide manually which tag to set.

Ideas for further simplification/automation are of course welcome. If the final tag latest/next is to be set by CI automatically on a tag build (instead of just the ci tag), it needs to know 100% when to use what, and especially avoid publishing versions from maintenance branches as next/latest.

Copy link
Member

Choose a reason for hiding this comment

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

I mean, I could be wrong, but that sounds like a bit of conditional logic in a script?
npm view rescript --json can show the current latest, ci, next tags.
If a maintenance branch needs to publish another 11, it can detect that a higher major exists. Stuff like that.

Again, I'm unfamiliar with what we are trying to achieve in the first place.

@cknitt cknitt merged commit 3d9c244 into rescript-lang:master Nov 30, 2025
25 checks passed
@cknitt cknitt deleted the npm-release-script branch November 30, 2025 08:52
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