Why does uPortal use Apache 2 license?


I’d be interested to hear what licenses other projects were using, and why?

What license does uPortal use?

The easy part of the question: uPortal is using Apache License 2.0.

Why did uPortal license away from New BSD, its original license?

The hard part of the question: why?

In the beginning (in the JA-SIG, or JASIG, or Jasig days), uPortal used the BSD 3-Clause aka New BSD license.

In the run up to merging with the Sakai Foundation to become the Apereo Foundation, Jasig adopted the position that New BSD is not good enough, which is now Apereo’s documented position.

This license simply does not provide enough protection for either contributors or adopters to really understand the terms under which the software is being shared.

(I don’t agree with this statement. New BSD meets the Open Source Definition, and it thoroughly disclaims warranties and liabilities. Good enough is good enough. I’d have no qualms about contributing to or adopting a New BSD licensed software product.)

GNU says this about 3-clause BSD:

The modified BSD license is not bad, as lax permissive licenses go, though the Apache 2.0 license is preferable. … the Apache 2.0 license is better for substantial programs, since it prevents patent treachery.

Maybe how badly you want to re-license away from New BSD hinges on how worried you are about patent treachery.

Some people worried. So Jasig required uPortal to re-license.

So that’s why not New BSD.

Why did uPortal re-license to Apache2, its current license?

I don’t recall just how Apache2 was selected, who did the selecting, what alternatives were considered. I don’t even recall if this is something I once knew and have forgotten.

A 2008 document in the Jasig wiki, Open Source Licensing, (by Unicon / John Lewis) recommends Apache2 for the non-copyleft case and might have been influential.

Guessing at what might have happened:

Do what the Apache Software Foundation does.

Apache2 is widely adopted, widely understood, well documented, the practices around it are well documented and honed by the Apache Software Foundation. It’s not just a viable license, it’s a viable license ecosystem.

Nobody has to apologize for adopting Apache2, it’s one of those default, acceptable, generally recognized as safe licenses?

ECLv2 would also be fine, it’s just less mainstream. uPortal’s adopters and communities weren’t already worked up about Apache2’s patent language so there wasn’t enough reason to start getting worked up about that.

- Andrew Petro

wearing individual contributor hat.

The views expressed herein are not necessarily those of Apereo, nor of uPortal, nor of my employer, nor of…

Related Posts

Apereo CAS is now on Develocity

An overview of how Apereo CAS is using Gradle and Develocity to improve its build and test execution cycle.

CAS OAuth/OpenID Connect Vulnerability Disclosure

Disclosure of a security issue with the Apereo CAS software acting as an OAuth/OpenID Connect provider.

CAS Groovy Vulnerability Disclosure

Disclosure of a security issue with the Apereo CAS software when using Groovy.

CAS OpenID Connect Vulnerability Disclosure

Disclosure of a security issue with the Apereo CAS software acting as an OpenID Connect Provider.

CAS X.509 Vulnerability Disclosure

Disclosure of a security issue with the CAS software and its X.509 features.

CAS OpenID Connect Vulnerability Disclosure

Disclosure of a security issue with the CAS software acting as an OpenID Connect Provider.

CAS OpenID Connect Vulnerability Disclosure

Disclosure of a security issue with the CAS software acting as an OpenID Connect Provider.

CAS OpenID Connect Vulnerability Disclosure

Disclosure of a security issue with the CAS software acting as an OpenID Connect Provider.

CAS Spring Framework RCE Vulnerability Disclosure

Disclosure of the Spring framework RCE security issue with the Apereo CAS software.

CAS OpenID Connect Vulnerability Disclosure

Disclosure of a security issue with the CAS software acting as an OpenID Connect Provider.