'Temporary' GPL License Exception Required

Moderators: FourthWorld, heatherlaine, Klaus, kevinmiller, LCMark

Locked
LCMark
Livecode Staff Member
Livecode Staff Member
Posts: 1207
Joined: Thu Apr 11, 2013 11:27 am

'Temporary' GPL License Exception Required

Post by LCMark » Thu Apr 18, 2013 10:51 am

Hi all,

Just to give you a heads-up about something. From 6.0.1 we've had to add an exception to the GPL license the engine source code (and thus LiveCode Community) is released under.

The issue stems from a couple of components in LiveCode using source-code / libraries which are incompatible with the GPL.

The first culprit is revBrowser on Windows - this component uses ATL (the Active Template Library). Even though it is defined as a collection of headers, ATL is a collection of code carrying templates and thus (by my reading) since we cannot (due to copyright reasons) redistribute the ATL code combining them with GPL code contravenes the terms of the GPL.

The second culprit is the encryption and security features on Windows and Linux - this component uses OpenSSL. Unfortunately, the OpenSSL license is incompatible with the GPL.

The exception is as follows:
The majority of the code in the LiveCode Community edition is copyrighted
by Runtime Revolution Ltd and has been released under the GPLv3.

However, the revBrowser component on Windows and secure sockets and
encryption feature on Windows and Linux utilises code that is under a
license incompatible with the GPL. Specifically revBrowser uses ATL and
the secure sockets and encryption feature uses OpenSSL.

To this end, as a special exception to the terms and conditions of the
GPL listed below, Runtime Revolution Ltd gives you explicit permission to
combine its GPL code contained in LiveCode Community with ATL and
OpenSSL. You may copy and distribute such a combination provided that
you adhere to the terms and conditions of all of the GPL and licenses
of the third-party code; in particular, you must include the source code
of the entire combination insofar as the GPL requires distribution of
source code.

Note that this exception is only needed and only has effect when
distributing applications built with LiveCode Community which use
revBrowser (on Windows) or OpenSSL (on Windows and Linux).
It should be stressed that it is only when you use revBrowser on Windows, or OpenSSL-related features on Linux and Windows that the exception kicks in, in all other cases the exception is not necessary and derived works can be conveyed under the terms of the standard GPLv3.

Now, the only down-side of these exceptions (from my understanding) is that if you do distribute a derived work containing revBrowser on Windows, or OpenSSL-related feature on Linux and Windows then you cannot also include in that derived work GPL code which does not grant the exception. Hopefully, any third-party library creators will be happy to include this exception in their licensed works to enable recombination without issue.

Finally, we do intend this exception to be temporary - we want a GPLv3 clean codebase. However, realistically this is going to take some time to address as we need to rework the offending code to use libraries which are GPLv3 compatible.

Warmest Regards,

Mark.

P.S. We based the exception clause on Oracle's Virtual Box OSE edition - which seems to have similar 'incompatibility' issues as us.

FourthWorld
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 9823
Joined: Sat Apr 08, 2006 7:05 am
Location: Los Angeles
Contact:

Re: 'Temporary' GPL License Exception Required

Post by FourthWorld » Thu Apr 18, 2013 5:50 pm

I believe revBrowser was pulled from the final release of the Community version for that reason. If you find it's still there you may want to drop a note to support@runrev.com to let them know they missed it in that build.
Richard Gaskin
LiveCode development, training, and consulting services: Fourth World Systems
LiveCode Group on Facebook
LiveCode Group on LinkedIn

Locked

Return to “Engine Contributors”