Skip to content

maint(resources): npm publish - build all packages first#15042

Merged
mcdurdin merged 4 commits intomasterfrom
maint/resources/npm-publish-build-all-packages-first
Oct 29, 2025
Merged

maint(resources): npm publish - build all packages first#15042
mcdurdin merged 4 commits intomasterfrom
maint/resources/npm-publish-build-all-packages-first

Conversation

@mcdurdin
Copy link
Copy Markdown
Member

@mcdurdin mcdurdin commented Oct 28, 2025

A few bundled changes for npm-publish here:

  1. As the first action to pack/publish damages package.json, build all the packages first.
  2. Add meson and emscripten install to the script
  3. Reduce test coverage threshold for one module - may warrant further investigation
  4. Skip git date test for shallow clones (which we use for the GHA checkout)

Follows: #15029
Build-bot: skip
Test-bot: skip

@github-project-automation github-project-automation bot moved this to Todo in Keyman Oct 28, 2025
@github-actions github-actions bot added resources/ maint Maintenance work -- continuous integration, build scripts, infrastructure labels Oct 28, 2025
@keymanapp-test-bot
Copy link
Copy Markdown

keymanapp-test-bot bot commented Oct 28, 2025

User Test Results

Test specification and instructions

User tests are not required

@keymanapp-test-bot keymanapp-test-bot bot added this to the A19S15 milestone Oct 28, 2025
Also splits the build and publish steps so all packages are built before
first is published, as publishing stomps on package.json files, which
makes subsequent builds trickier.

This needs to be merged to master in order for the action steps to pass.

Build-bot: skip
Test-bot: skip
I am not entirely clear why the coverage dropped, but I suspect it's due
to code paths that are not activated in node 24. For now, just dropping
coverage threshold to 40%.
If the repository is a shallow checkout, then the only commit will be
the most recent one, and the test will fail. We could lookup the date of
the most recent test, but it's a pretty meaningless test, so instead we
will skip the test in this scenario.

For example, this happens on GitHub Actions when we do a shallow
checkout. The only risk we have is if we move all builds to shallow
checkouts and end up always skipping this test, but (a) the code is
unlikely to change, and (b) issuse would be  picked up on local builds
in that situation pretty quickly.
@mcdurdin mcdurdin force-pushed the maint/resources/npm-publish-build-all-packages-first branch from 7a10711 to 1251189 Compare October 29, 2025 09:30
@mcdurdin mcdurdin merged commit 1098d46 into master Oct 29, 2025
6 of 9 checks passed
@mcdurdin mcdurdin deleted the maint/resources/npm-publish-build-all-packages-first branch October 29, 2025 09:39
@github-project-automation github-project-automation bot moved this from Todo to Done in Keyman Oct 29, 2025
@keyman-server
Copy link
Copy Markdown
Collaborator

Changes in this pull request will be available for download in Keyman version 19.0.148-alpha

mcdurdin added a commit that referenced this pull request Oct 30, 2025
If the repository is a shallow checkout, then the only commit will be
the most recent one, and the test will fail. We could lookup the date of
the most recent test, but it's a pretty meaningless test, so instead we
will skip the test in this scenario.

For example, this happens on GitHub Actions when we do a shallow
checkout. The only risk we have is if we move all builds to shallow
checkouts and end up always skipping this test, but (a) the code is
unlikely to change, and (b) issuse would be  picked up on local builds
in that situation pretty quickly.

Cherry-pick-of: #15042
mcdurdin added a commit that referenced this pull request Oct 30, 2025
I am not entirely clear why the coverage dropped, but I suspect it's due
to code paths that are not activated in node 24. For now, just dropping
coverage threshold to 40%.

Cherry-pick-of: #15042
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

developer/compilers/ developer/ maint Maintenance work -- continuous integration, build scripts, infrastructure resources/

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

3 participants