You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I really cannot decide, for now we use lerna independent mode, but really in the future it might be hard to know which packages are compatible with each other, for example we could have axios driver version 5 compatible with core 3 but not 4 and so on. Peer dependencies could have ranges, but still...
On the other hand, giving up independent mode will force major releases always for all packages, for example making a breaking change for axios driver will force also to make major release for core for its next version. I am thinking this is lesser evil, but wondering what you think.
I really want to make this decision before 2.0
The text was updated successfully, but these errors were encountered:
As an end user, I'd prefer to see new package version only when something in this package changes (+ it will be good to have separate CHANGE.log file for each package, where I will be able to see list of fixes/improvements/breaking changes for this specific package), so independent mode + conventional commits + some automation to bump version and make change.log from commits history looks better.
But I also know that from the point of view of library developers using independent mode is a huge pain :) And I doubt that you will run integration tests between different versions of packages to ensure they works good together (because it is impossible or almost impossible with Lerna - you can test only latest releases). Because of that I see reasonable to drop independent mode and say to people to update all set of packages when new version releases.
Because of that I see reasonable to drop independent mode and say to people to update all set of packages when new version releases.
It was a while since I used not independent mode, but I believe that not changed package are not released like in independent mode. The only difference is that in the independent mode you can independently update packages to different versions, but in not dependent, you just pick one version for all updated packages.
In my view the biggest problem with independent mode is hard to understand combination of compatible packages. Yes, we can use restrictions in peer dependencies, but it is not transparent, in comparison to dependent mode. There, you just download all packages of the same version without thinking and it should work.
I really think I will give up independent mode when releasing 2.0. This is what popular packages do as well, like Babel for example.
I really cannot decide, for now we use lerna independent mode, but really in the future it might be hard to know which packages are compatible with each other, for example we could have axios driver version 5 compatible with core 3 but not 4 and so on. Peer dependencies could have ranges, but still...
On the other hand, giving up independent mode will force major releases always for all packages, for example making a breaking change for axios driver will force also to make major release for core for its next version. I am thinking this is lesser evil, but wondering what you think.
I really want to make this decision before 2.0
The text was updated successfully, but these errors were encountered: