Replies: 1 comment 2 replies
-
Looks like "canary" releases are the closest we could get with stock Lerna. We could live with the version number uncertainty, although it's not ideal. A combination of |
Beta Was this translation helpful? Give feedback.
2 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
For a while now we've been using lerna 4 and things are not ideal, to say the least... We have three, possibly more, cases. I will explore them all:
Stable (official / latest) version
No-brainer: from the latest master branch, release the next version based on conventional commits.
As simple as this sound, we sometimes ended up with empty or incomplete changelogs and there were two reasons for that:
fetch-depth: 1
) and there are no commits to analyze. There is one exception and that was when we trigger publish without merging prior to master. In that case, when publish action fetchesdev
branch, it acquires some additional commits to analyze.To sum up: in order to have adequate latest release and changelog, we need to fetch the entire history of the repo and not to have tagged non-latest releases.
Pre-releases (dev) of current version
Pre-releases work in exactly the same way as latest releases -- lerna will perform the exact sameworkflow.
Which brings us to an excellent catch 22: we must not tag dev releases in order to get complete change log; however, if we don't tag dev releases, we can only get
-dev.0
version.If we use
--canary
, then it's a whole new bag of snakes. To quote:That means it counts the commits between releases, which may present interesting increments:
-1
,-2
,-4
,-7
.Publishing with canary also does not publish packages that have no need to be published, which interferes with our idea that all packages are released together.
Finally, canary builds to not take into consideration bump in major version, unlike the other
pre-
bumps in lerna.To sum up: in order to have adequate pre-release, we need to not tag dev branches and instead use another method for determining versions.
Next version
A next version, to us, is yet unreleased major version. That puts it somewhere in the middle... We probably need to use similar nudges and suggestions for lerna in order to have correct releases.
My suggestion is, for the themes, at leas:
/cc @tsvetomir @eeasss @ivanchev @telerik/web-components-lt
Beta Was this translation helpful? Give feedback.
All reactions