
On Sun, 28 Feb 2021 19:37:38 +0000
Edward Z Yang
As a more general thought: I noticed in a few other situations where traditional PVP does a poor job at addressing situations where API stability depends on packages you yourself depend on. For example, let's say I wanted to make a metapackage that took a few packages and reexported their modules. You don't even have to talk about the module level: at the declaration level, what identifiers are available from this package will depend on the version choices of its dependencies. But it's infeasible to publish combinatorially many versions of the metapackage for each possible version of its dependency
Revisions make this a bit more bearable. But still, backpack aside, I'd say that cross-package module reexports are an antipattern exactly for this reason!