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

CAS 6.2.0 RC1 Feature Release

...in which I present an overview of CAS 6.2.0 RC1 release.

Apereo CAS - Simple Multifactor Authentication

Learn to configure Apereo CAS to act as a simple multifactor provider itself.

Apereo CAS 2019 Survey Results

...in which I present a summarized view of the latest CAS community survey.

CAS 6.1.0 RC6 Feature Release

...in which I present an overview of CAS 6.1.0 RC6 release.

Apereo CAS - Managing Services via Git

Learn to configure Apereo CAS to fetch application policy files and service records for its service registry from remote git repositories.

Apereo CAS - Ticket Distribution with JMS

Learn to configure Apereo CAS to JMS and messages queues to broadcast tickets and tokens across a deployment cluster.

CAS Vulnerability Disclosure

Disclosure of a security issue with the CAS software.

Apereo CAS - SMS Notifications via Twilio

Learn to configure Apereo CAS for SMS notifications via Twilio.

CAS 6.1.0 RC5 Feature Release

...in which I present an overview of CAS 6.1.0 RC5 release.

Apereo CAS - Passwordless Authentication

Learn how to modify Apereo CAS to allow users to login without the need to remember a password.