Liability and patent protections
Apache2 and MPL2.0 include liability protections for authors, like most other opensource licenses. MPL2 has an additional part, where someone who uses it can choose to offer their own guarantees accepting liability up to their choosing, but liability that doesn't extend to authors and others of that software. I used CTRL-F to search the term "liability" in MPL2.0
As for these, they have patent clauses. This is additional protection from patent trolling, while MIT offers protection by default, due to basic copyright law that once it is copyrighted, the idea can no longer be patented. MIT and other permissive licenses may be enough, though Apache and MPL's patent clause gives more legal power to protection from patent trolling. They allow patent use, but offer more protection from infringement by patent trolling or claims by those using this software. I believe the MPL's patent clause is more fair, because it allows overall judgements by judges. I thought I saw one of these licenses which stated, questions to court about patents were allowed, which would be good by allowing that freedom. MPL2.0's section on patent clause rights/protections:
If You initiate litigation against any entity by asserting a patent
infringement claim (excluding declaratory judgment actions,
counter-claims, and cross-claims) alleging that a Contributor Version
directly or indirectly infringes any patent, then the rights granted to
You by any and all Contributors for the Covered Software under Section
2.1 of this License shall terminate.
Apache's is simpler, but doesn't have these additional rights (named after "excluding" in parenthesis). While, Apache is permissive, it can't be used with certain GPL versions, because when a patent clause is not exact with those terms, it can't be taken into code under that GPL code (since GPL is viral). Now, Apache and MPL can be used together, while their codebases must be kept separate. Code under varying weak permissive copyleft licenses in general can be used side by side, while keeping their code bases separate and under their own license terms.
Apache and Mozilla are strong backers of their licenses, so using these offers much copyright and patent protection for authors' software. These are some of the largest companies for opensource software.
Libraries and backends, code which is depended on by varying code under different licenses
As for libraries, code which can be used with everything (while protecting the author's terms) is desired when linked dynamically or through API, including, varying opensource plus proprietary. All that fits this bill is permissive licenses and weak copyleft licenses. When intended to use with GPL, this places more limits to exclude Apache, copyleft weak licenses and other licenses. In short, permissive licenses without patent clauses and LGPL can be used by everything.
For libraries, the best choice for code, or for style desired can be chosen from. By using libraries which everything uses, it eliminates the need for duplicate coding.
LGPL is great, except, that it can be relicensed to GPL.
The problem with GPL
While, it seems great upon first hearing about it, it's viral more than they admit. It extends into software not written by the authors, and threatens to take it in through linking. They keep arguing that it's not so viral, but it is. To keep software under your own terms, you have to understand the reach of its license.
Where GPL is best, is for non-profits, and when their reach can be limited by a link exception at some API. If someone wants to use GPL, that's good, there's limits where it's useful for the rest of the opensource world.
Weak copyleft file-based permissive licenses
What's good about these, is they force those who add to their code to give back, however, only to the files under these licenses. This doesn't extend to software not authored by them, which some companies stay away from GPL, because they fear losing their own code that goes far beyond what they link to. To use GPL or LGPL, it has to be fully understood, because its terms reach too far, beyond a directory or file.
When code is put under a file-based weak copyleft license that doesn't allow re-licensing of forks, this is protected for use beyond the original author's terms. Let's say something is copyrighted under CDDL2, then that gets forked several times, and the original codebase is lost. That is preserved through the forks, so if someone wants to remake code similar in function to the original codebase or any codebase in that fork sequence, they can, without giving up rights or losing rights to that license. This is a protection that goes beyond permissive licenses.
Compare versions or forks of FVWM. The original was under a permissive license, and its still preserved. Additions and versions/forks of FVWM are under GPL. To stay under the original license, improvements or added features of GPL FFVM can't go to the original freedoms, of the permissively licensed code. Now, if it went under a weak copyleft file-based license, you can reuse code of any version since it came under or started under this license, in the newer versions of this, and keep it under these free terms. Permissively licensed versons of FVWM are still available online, but buried and have to be found. Features of GPL versions of FVWM can't be used without turning it into GPL.
Code under these licenses can get contributions from the closed source world, because there's a limit to what they can lose, and it doesn't extend to programs which are merely used with GPL. They got use of it, so giving back is insignificant, when the limits of what must be given up don't extend past the directory of the source code. The program got made better for all.
Comparison
An example of a clone or program of the same function of GPL written in a permissive file-based weak copyleft license, is Asterisk and FreeSwitch. Asterisk is under GPL, while FreeSwitch is under MPL1. Many developers made code for Asterisk, and they moved over to FreeSwitch. Asterisk is good, and those improvements wouldn't have happened without it and Digium. They'll still get their business, and good reuptation for making opensource software. For anything which needs additional rights to not lose software, which companies use hardware, they can use FreeSwitch.
Also, for Apache and MPL, code of these opensource licenses must be given up, but not their own code, if there's a conflict or if there's a lawsuit. With GPL, an entity loses their own code used with the GPL. The problem is, how far does that loss extend, by merely linking to GPL, because it's viral. Apache and MPL aren't threatening intrusiveness into other software, while GPL is.
I think that GPL controlled the narrative, and one perspective of free software and freedom, doesn't include other perspectives of free software and freedom. It needs to be challenged or pointed out, that there's better or other ways for opensource freedoms. As freedom for use, protecting rights, having a license which makes for a good library for varying other licenses, without losing rights is what's important. License proliferation may be complicated, as proliferation is bad for other topics, it would hinder GPL's reach. GPL2 and GPL3 actually hinder each others' reach, because they're incompatible for use together.
What I would make is a near replica of LGPL2.1, and make it so that forks can't be relicensed under GPL or anything, and so code and derivatives it covers always preserved under this license. If that allows use by GPL2 and GPL3, then great, but if it's not possible, that's also the best that can be for that purpose of license which would be for everything except GPL. If possible, it would be a library compatible for use with everything that allows it: GPL, proprietary, CDDL, permissive, file-based copyleft, permissive with patent clauses. Also, if possible to be compatible with everything, a patent clause like MPL2's, with clause exceptions for GPL licenses, but that can't lose its own terms to those other licenses, so, this license's rights come first. If they're incompatible, then that would be fine, as it won't lose its rights to another license.
My idea is to keep the GPL ecosystem, but keep it contained in one end of the opensource network, and limit its viral range, to that corner of the ecosystem, so people can use the whole combination of opensource software, while keeping the terms.
This is about legal use and of legal entities, not prohibited use. As it can be enforced and the rules of authors need to be respected by opensource licenses. Even if CDDL can't enforce its license, its terms should not be eaten up by a legal entity. If there's a way, it has to be through a loophole, where CDDL's terms can't be eaten up either. Why needs to be explained, or even investigated by a third party. Not for the sake of which is better, but for the sake of each license respecting the other, and the original code license respected.
I see CDDL's license of ZFS as a minor pyrrhic victory, where it proved its way, even if the original company is no longer. Licenses based on this have a purpose for software writers, based on using it for those purposes. Sun won ideologically, but sold the company. It proves (even eventually for more of us) that there's another way, that code doesn't need to be eaten up into a few dominant licenses, and not threaten other code's rights.
Preservation of codes' boundaries, and use of code with all that permits it while retaining the original rights intended are what's most important about opensource.