Skip to content

chore: make manual publishing a bit better#2666

Merged
maribethb merged 3 commits intoRaspberryPiFoundation:mainfrom
maribethb:cleanup-publish
Jan 9, 2026
Merged

chore: make manual publishing a bit better#2666
maribethb merged 3 commits intoRaspberryPiFoundation:mainfrom
maribethb:cleanup-publish

Conversation

@maribethb
Copy link
Contributor

The basics

The details

Resolves

Proposed Changes

  • Runs the publish:prepare script automatically before running any of the other publish scripts.
  • Removes the npm login step from the prepare script since logging in no longer helps. You have to use an access token instead. I am updating some internal documentation about how to publish with more information.

Reason for Changes

Makes publishing manually a bit less error-prone since you can't forget to run the step that builds.

Test Coverage

Ran npm run publish:checkVersions and ensured it works correctly. Did not try to publish manually though.

Documentation

Updated scripts.md and I'm working on adding some internal documentation about how to publish.

Additional Information

@maribethb maribethb requested a review from a team as a code owner January 8, 2026 15:31
@maribethb maribethb requested review from BenHenning and removed request for a team January 8, 2026 15:31
Copy link
Collaborator

@BenHenning BenHenning left a comment

Choose a reason for hiding this comment

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

Thanks @maribethb! Nice robustness improvement. I had a few thoughts on the documentation but broadly the changes LGTM.

scripts.md Outdated
This script will clone a copy of blockly-samples to a directory called `dist`,
run `npm ci`, then build and test all plugins.

Note that this script does not handle npm authentication. You will need to
Copy link
Collaborator

Choose a reason for hiding this comment

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

Is this relevant for this script or more for the publish ones? Since prepare is just building and never touches npm, this feels out of place (and potentially concerning--as a developer I'm now wondering if it does interact with npm somehow).

I suggest clarifying this for the publish scripts that would presumably fail without this.

Separately, is there a particular set of actions a developer needs to take to mitigate this? It might be nice to clarify that here (or in its own section referenced by the other sections).

Copy link
Contributor Author

Choose a reason for hiding this comment

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

There is more information about how to publish located within the team internal docs. It's there because it deals with authentication details that make more sense to host with the internal team processes.

Initially the prepare script did run npm login so that's why I added the note there, but you're right it doesn't make sense anymore. I rearranged the file a bit to add more details and deter people from trying to publish on the command line anyway.

@maribethb maribethb merged commit 2dbc3d0 into RaspberryPiFoundation:main Jan 9, 2026
5 checks passed
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.

2 participants