Howdy, I see ongoing development against many "shared" libraries, that in fact, should be dropped instead. One notable example is "maven-dependency-tree".
This codebase was born (well, factored out) from Maven2 reporting, to be extended with "Maven 3.0 support", then "Maven 3.1 support" and is just collecting debt. This library, if you look at it now, is anemic and is merely a "wrapper" around Resolver classes, uses ancient stuff (read Maven2 classes) and patterns, like misuse of ProjectBuildingRequest (same pattern as in ill fated MAT), uses deprecated ArtifactRepository class for all kind of stuff (hello split repository -- not possible to be used with these). In short, this project does not offer any (new, not available) functionality, while in turn, hinders and pushes for deprecated stuff. These should cease to exist. In fact, many shared projects should be scrutinized and most probably declared "deprecated", as most of them were born to support Maven2 to Maven3 transition (or maybe Maven 3.0 to 3.1+ transition like MAT was), while today they just hinder Maven3 to Maven4 change, as many of these shared stuff in fact still pull Maven2 classes in play. Thanks T