Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Licensing #40

Closed
splitbrain opened this issue Apr 29, 2020 · 8 comments
Closed

Licensing #40

splitbrain opened this issue Apr 29, 2020 · 8 comments

Comments

@splitbrain
Copy link

It's great that this library was picked up by wikimedia, however I wonder about the licensing. Is this code used in MediaWiki or any other GPLv2 licensed code? AFAIK the Apache license used by this project is not compatible with GPLv2.

There was some discussion years ago dual licensing the library at oyejorge#148 but the author was reluctant to do so because it was based on the orignal LESS code. A discussion on dual licensing there went nowhere: less/less.js#1029

So I am curious: are there any plans to review the license to make this library available to GPL licensed projects?

@jdforrester
Copy link
Member

Is this code used in MediaWiki or any other GPLv2 licensed code?

Yes.

AFAIK the Apache license used by this project is not compatible with GPLv2.

I am aware that the FSF thinks that, yes. I can't speak for our legal department.

[Snip]

So I am curious: are there any plans to review the license to make this library available to GPL licensed projects?

"Reviewing" a licence isn't a thing except where a single entity owns the copyright, which is not the case here, sorry.

To re-license this library, we would need to find every author of every patch ever (or their estates if they have since died) and get them to individually approve retrospectively re-licensing their contribution. If any one contributor refused (as is their right), the project would have to be rolled back to the commit before their first one and re-written without reference to the copyrightable aspects of their commits (and any commits on top of that, as they'd potentially be poisoned by the underlying commits' copyright). This is unfeasible, sadly.

@splitbrain
Copy link
Author

I'd be really interested in what your legal department has to say about the compatibility.

:-) I'm aware of the problems that are involved in relicensing. It's difficult but has been done before.

The first question to answer is, is this port bound by the license of the original less.js library or is it it's own work which can be licensed at will by its authors? In the latter case, the number of contributors is a much easier to handle number...

@legoktm
Copy link
Member

legoktm commented Jul 27, 2020

There's not really an issue here, unless you want to use this library with a GPL-2.0-only project (then we'd actually have to pursue relicensing...). MediaWiki is GPLv2 or later, and the Apache 2.0 license used in this library is compatible with GPLv3. As such when you get a tarball of MediaWiki that includes this library (and other Apache 2.0 code like cssjanus) then you're basically getting it under GPLv3.

Of course, you can still distribute/receive copies of MediaWiki that doesn't include this library (e.g. a pure git clone that doesn't have the composer libraries) under the GPLv2 if you really want to.

@legoktm legoktm closed this as completed Jul 27, 2020
@splitbrain
Copy link
Author

Uhm. Does a pure git clone without composer libraries actually run? I doubt that, so I think this is actually linking. To me this sounds like MediaWiki should actually be licensed as GPL3+

🤷‍♂️ I would have loved to get an official answer from your legal team on this.

@legoktm
Copy link
Member

legoktm commented Jul 27, 2020

Uhm. Does a pure git clone without composer libraries actually run? I doubt that, so I think this is actually linking. To me this sounds like MediaWiki should actually be licensed as GPL3+

Probably not, but a version without any Apache-2.0 code probably will. Note that some extensions are distributed as GPL-3.0-or-later as well (which is also not GPLv2 compatible). You won't be able to view any CSS resources but the API and command-line scripts will still work, which is enough for some uses cases. I don't think moving to GPLv3 or later is really on anyone's agenda.

man_shrugging I would have loved to get an official answer from your legal team on this.

Here's how to contact them if you're so interested.

@splitbrain
Copy link
Author

I tried that mail already. Didn't get any reply unfortunately.

@fschrempf
Copy link

There's not really an issue here, unless you want to use this library with a GPL-2.0-only project (then we'd actually have to pursue relicensing...).

That's exactly the point. For projects like DokuWiki and others under GPLv2 it is not possible to use less.php. As this projects seems to be the only well maintained PHP version of a LESS parser, that's really unfortunate.

Looking at the list of contributors, it looks like there are "only" 73 individuals that ever contributed to the project's codebase. If there would be a decision to try relicensing less.php, I think it would be possible to get it done using a software helper like this to collect the consents.

@fschrempf
Copy link

There was some discussion years ago dual licensing the library at oyejorge#148 but the author was reluctant to do so because it was based on the orignal LESS code. A discussion on dual licensing there went nowhere: less/less.js#1029

I don't think a PHP parser like this would need to follow the licensing decisions of the upstream less.js project, unless it uses parts of its code. AFAIU the only thing they share is the specification of the LESS syntax and I guess this isn't covered by a license.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

4 participants