The library that "fills in a bunch of functionality that is missing in the stdlib" is a dependency management antipattern. The index case is Google's Guava which made a change that broke HDFS somewhat around Guava 13, so for a long time (maybe still) anything that had to run in Hadoop was stuck with an obsolete Guava.
If a library gets as popular as Guava you have to worry about "diamond dependencies" where your dependencies require incompatible versions of the library.
Breaking up a library like that into smaller libraries that address particular functionality helps reduce the risk.
If a library gets as popular as Guava you have to worry about "diamond dependencies" where your dependencies require incompatible versions of the library.
Breaking up a library like that into smaller libraries that address particular functionality helps reduce the risk.