Download Latest Version v5.0.0 source code.tar.gz (651.4 kB)
Email in envelope

Get an email when there's a new version of Lerna-Lite

Home / v5.0.0
Name Modified Size InfoDownloads / Week
Parent folder
README.md < 9 hours ago 9.9 kB
v5.0.0 source code.tar.gz < 9 hours ago 651.4 kB
v5.0.0 source code.zip < 9 hours ago 1.2 MB
Totals: 3 Items   1.9 MB 0

5.0.0 (2026-04-02)

📢 Major 5.0 Release ⚠️

NodeJS 20 will be EOL by the end of April, so it's time for another Lerna-Lite major release and a Node requirement bump. Below is the list of breaking changes:

  1. removed the Conventional Changelog legacy API that allowed reading config from external file (it was deprecated years ago). It is now accepting only configuration through lerna.json file (when using custom changelogPreset).
  2. for users of Commitlint and/or conventional-changelog-conventionalcommits, please make sure to update to their latest versions to avoid any problems
  3. last year lerna publish --remove-package-fields option was renamed and its old name deprecated, it is now officially removed. This mean that only the new option name is valid, so make sure to use:
  4. --strip-package-keys
  5. NodeJS requirement is now ^22.17.0 || >=24.0.0 which is allowing the use of even more native NodeJS code (e.g. util.styleText() and import.meta.dirname)

to see the complete list of all previous migrations, take a look at: all Release Migrations

New Requirements

  • drop Node 20 support, which will be EOL in April, we now require Node ^22.17.0 || >=24.0.0

Some Project Statistics

What happened since the last major version?

  • download nearly doubled to ~2M/year (in comparison Lerna also grew from 62M to 84M/year)
  • Lerna-Lite grew by almost 100% while Lerna grew by 35%... so Lerna-Lite is small, but growing steadily
  • OIDC trusted publishing was added just a few months ago (which Lerna-Lite itself uses to publish)
  • extended Catalog support, pnpm catalog was added last year, and more recently support for all 3 package managers (pnpm, Yarn and even Bun)
  • for reference Lerna does not support Catalog
  • also following e18e initiative, more focus was put on using even more native code. Allowing Lerna-Lite install size to keep decreasing, for example the publish command (which includes version) install size is now at 33Mb/257 packages (ref node-module-inspector)
  • in comparison v1.0 was at 62Mb/454 packages, that's nearly 50% decrease in size and external packages.
  • also in comparison, the original Lerna (all-in-one tool) pulls in 138Mb/499 packages
  • a few different features were added during the year
  • Comments on resolved issues/PRs (see docs)
  • lerna version --release-header-message / --release-footer-message
  • and finally a couple of large projects migrated to Lerna-Lite during the past year:
  • Vuetify / Inquirer / ... and more

in conclusion, Lerna-Lite has always been a great alternative to the original Lerna project. Most users like it for its modular approach (install only what you want) which is a huge distinction compared to the original (all-in-one) Lerna. There's also a few unique features that were added over the past few years in Lerna-Lite which Lerna doesn't have... there's many more reasons to use Lerna-Lite, you can read more about the subject on the main readme page (About Lerna-Lite)

That's it for now, thanks ⭐ 🚀

A big Thanks to all my Sponsors and Happy Coding 🐉

   

 

⚠ BREAKING CHANGES

  • use native import.meta.dirname/filename (#1302)
  • build: use module --nodenext instead of bundler/esnext (#1301)
  • bump NodeJS requirement to Node v22.17 (#1299)
  • deps: upgrade Chokidar dependency to new major (#1298)
  • deps: upgrade all Inquirer dependencies to new major (#1297)
  • drop conventional-changelog legacy API for local preset file (#1296)
  • remove deprecated code --remove-package-fields (#1295)
  • core: replace tinyrainbow with native util.styleText() (#1293)

Bug Fixes

  • core: replace aproba with internal validate implementation (#1285) (d4494f3) - by @ghiscoding
  • core: replace glob-parent with internal implementation (#1282) (b1ebb59) - by @ghiscoding
  • deps: update all non-major dependencies (#1289) (530905f) - by @renovate[bot]
  • deps: update conventional-changelog packages (#1304) (ee684a7) - by @renovate[bot]
  • npmlog: replace has-unicode with internal implementation (#1284) (c729652) - by @ghiscoding
  • npmlog: replace wide-align with internal implementation (#1281) (615d2f4) - by @ghiscoding
  • publish: replace byte-size with internal implementation (#1283) (ae8867d) - by @ghiscoding
  • publish: show output from publish and postpublish lifecycle scripts (#1287) (d5faf1b) - by @ghiscoding

Miscellaneous Chores

  • deps: upgrade all Inquirer dependencies to new major (#1297) (9180bc7) - by @ghiscoding
  • deps: upgrade Chokidar dependency to new major (#1298) (b48ab6a) - by @ghiscoding

Code Refactoring

  • build: use module --nodenext instead of bundler/esnext (#1301) (14990ba) - by @ghiscoding
  • bump NodeJS requirement to Node v22.17 (#1299) (91ca715) - by @ghiscoding
  • core: replace tinyrainbow with native util.styleText() (#1293) (1d36057) - by @ghiscoding
  • drop conventional-changelog legacy API for local preset file (#1296) (c299059) - by @ghiscoding
  • remove deprecated code --remove-package-fields (#1295) (072c863) - by @ghiscoding
  • use native import.meta.dirname/filename (#1302) (9a4f686) - by @ghiscoding


Released by Lerna-Lite 🤖 Star us on GitHub ⭐

Source: README.md, updated 2026-04-02