But then I'm thinking, what does it matter? Is this the only selfish 3rd-party library out there?
Maybe better than: "Here is a bad library to link against", the takeaway is "all 3rd-party libraries are a potential liability."
Yup. Even if they are responsive today, doesn't mean they will be, tomorrow.
My views on The Dependapocalypse are not usually welcome, in modern discussions of software strategy.
Not exactly sure why they are using string(describing:) in ship code. I suspect the architecture may need a bit of a look-see.
I only use it in debug tracking. It's the reflection API, and that's not really something I'd consider for runtime. Sort of like using exceptions for branching. It works, but your results may not be optimal.
UPDATED TO ADD: I did think of one place I might use it (actually, the ".description" computed property), and that's in a "one-off" bit of code that may be doing something like figuring out how to deal with some JSON I parsed, or reading stored prefs. Otherwise, I've usually figured out other ways to deal with it. One advantage I have, is I seldom use third-party libraries, and can actually go into my modules, and tweak them to serve the frontend better (in fact, I just did exactly that, this morning).
Why would they? I mean, when was the last time you got a "thank you" message by opening a feature request to any open source project bug tracker?
- Google Maps
- Persona
- InstaBug
- CardVerify
- SendBird
- Stripe
- Google Sign-in
- PhoneNumberKit
- Riskified
- VGS
"The third-party framework in question had a total of nine module initializers". I would guess it is probably google maps simply because they tend to do things like this and IIRC you have to setup in the startup even if you use the map later.
Might have missed some frameworks but I think I got most of them.
Edit: maybe not google maps... it seems that 200ms added to any app that uses it would be fairly noticeable. Perhaps one of the lesser used ones.
I'm assuming they also understandably don't want to start a flame war, where their specific criticism of the library is going to be taken to mean "this library is always bad, do not use it, even if its effect on performance is negligible in your case."