Description
Hey,
I'm writing from the future to warn you. It appears while it was nice idea to develop multiple projects in monorepo style, it ultimately was a bad idea to publish them separately (next and next-server). It turns out when you publish them separately developers can and will use incompatible versions of them. Because next-server
is closely coupled to next
via interfaces like getInitialProps or handling routes we need to publish them at the same time and ask everyone to add extra dependency in their package.json, plus keep them updated with matching versions :(
We wish we didn't start this and just kept publishing next-server under next/server
, this way developers consuming next would always get matching versions of next and next-server as we intended.
Since time travel is now possible, you still have a chance to prevent this mess, jest don't publish stable version of next-server
and prepare publishing script to put it under next/server
.