Skip to content

v54.10.0

Choose a tag to compare

@CKEditorBot CKEditorBot released this 28 Oct 13:20
· 776 commits to master since this release
v54.10.0
7662a31

Features

  • release-tools: publishPackages() accepts the staging-v{version} npm tag for a stable release when {version} is the exact package version, for example staging-v1.2.3 for v1.2.3. It lets several release lines stage their packages at the same time without moving one shared staging tag.
  • release-tools: Added the removeNpmTags() function. It removes an npm dist-tag from all given packages, for example, a temporary tag used to stage a release. It works like reassignNpmTags(): it supports npm Trusted Publishing (OIDC), retries failed packages, and rejects after all packages have been processed when any of them failed. Packages that do not have the tag are reported as skipped, so it can be run again after a partial failure.

Bug fixes

  • release-tools: The reassignNpmTags() task now rejects when the npm dist-tag could not be changed for at least one package. Before, the task only listed the errors in the output and resolved successfully, so release automation reported a success even though the tag was not moved.

    The task still processes all packages, retries each failed call, and prints the list of errors. Packages whose tag already points to the requested version are still reported as skipped and do not cause a rejection. The error message lists the packages that failed.

  • release-tools: getVersionForTag() no longer returns null when the npm registry cannot answer, for example, when it cannot be reached. It returns null only when the registry says that the tag or the package does not exist, and it rethrows any other error. Before, a network error looked like a missing tag. Then isLatestOrNextStableVersion() treated any version as the newest one, so a script could move the latest tag to an older release line.

  • utils: npm.checkVersionAvailability() no longer reports a version as available when the npm registry cannot answer, for example, when it cannot be reached. It resolves to true only when the registry says that the version or the package does not exist, and it rethrows any other error. Before, a network error made an already published version look available. publishPackages() and the changelog version prompt use this check, so they now fail with the network error instead of continuing.

Released packages

Check out the Versioning policy guide for more information.

Released packages (summary)

Releases containing new features:

Other releases: