At my place of employment I have noticed a weird thing where developers will include largish libraries to do simple things. To be clear we're a Scala shop. Here are two examples that occured :
1) In one project we do CSV parsing which was originally a 3 line function. Due to the CSV creator not consistently generating the correct format this grew to cover various corner cases. A junior developer decided to bring in scala-csv for its description of CSV formats and for an Exception class. He did not integrate the parsing of CSV to use the library until prompted. Because having two ways of parsing CSv in a system is stupid we opted to use the library.
2) A senior developer bought in a scala wrapper for Joda time for its ordering ability. This was used in one isolated case. When prompted to either remove or integrate the library fully the only excuse given was "well we might need it later". Eventually the library was removed.
While both stories are different they highlight a strange mentality of just including whole libraries for utility functionality. In both cases I had to step in and insist we either integrate with the library and use its core functionality or remove it.
My question is if my insistence on either using the functionality a library offers fully or not including it / rolling your own a bad approach? My concern is that carrying a library around for utility functionality just adds dependency problems for no benefit. For example does the version of Joda the wrapper library use match our own?