Also, suppose that you were to write something that interacted with the binaries of a closed-source system. That would not automatically remove the proprietary nature of your own software, so it is not infectious at all. You may not be able to distribute the proprietary software, but you could sell it as an add-on product without surrendering your IP. That's not ebola. That's a full quarantine and separation that respects the IP of individual owners.
GPL is particularly troublesome when it is a dependency of a dependency of a dependency of a dependency. You may not even know that you are using GPL code because the dependency that you are intending to use is not GPL. Again, the words "viral" and "infectious" are used because of this behavior... And this behavior was purposefully designed into the license as part of the political beliefs of the founders.
I'm not saying that GPL is useless, but rather that it is significant and potent enough that it is a single factor that will eliminate a project from consideration. Period. No if's, and's, or but's. So much so that I personally avoid GPL as much as possible in my own projects, and I distribute my projects as MIT.
Unlawfully including GPL code in your proprietary product doesn't magically make your code GPL. It can't. In fact it has the EXACT SAME EFFECT as including proprietary code it means you are committing copyright infringement by distributing the combined work. The ability to get out of jail free by complying with the GPL and releasing the combined work under the GPL or just replacing the code you never had the right to distribute without further drama or penalty are extra privileges that you will never receive if you decide to distribute proprietary software. You are confusing additional benefits for penalties and pitfalls.
Once again you don't have to release your code as GPL you can simply rewrite the portion that you didn't have a right to distribute.
> GPL is particularly troublesome when it is a dependency of a dependency of a dependency of a dependency. You may not even know that you are using GPL code because the dependency that you are intending to use is not GPL. Again, the words "viral" and "infectious" are used because of this behavior...
If you are responsible for a product knowing where the code comes from falls under the basic responsibilities of the job. Declaring in public that you own someone Elise's property because you couldn't be bothered to look is like catching a public indecency charge because you couldn't remember to wear pants that day. You put on pants and the problem goes away.
If you have followed any of the cases in which companies misused GPL code it looks metaphorically like someone following you around politely and repeatedly reminding you to cover your nudity whereas infringing on proprietary code looks more like a swat team showing and flinging flash bangs. If you are lucky if you don't end up getting shot.
In terms of marketing, GPL sets itself up to be the paragon of the open source spirit and the model that all open source licenses should follow, but it has a HUGE gotcha based on its political persuasion. It proclaims freedom, but it is most decidedly not completely free, and requires parsing of sophisticated legalese to understand the nuances. Good luck if you are a beginner, non-native speaker, or have otherwise spent substantial brainpower trying to understand the do's and don'ts. It will bite you.
You may absolutely love GPL and everything that it stands for. That's fine with me. But I don't, and I advise everyone that I know of the dangers and repercussions of using GPL dependencies. You can say that those are features and virtues, and I can say that they are dangers and liabilities, but the bare facts are the same.
But, getting back to the reason for this post, when I want to compare software packages, the license is the first thing I look at, and if it's GPL, I bail on it immediately.
In the overwhelming number of cases the party is selling something other than their software and you are equally free to negotiate a different license with the developer if you have different needs.