incubator-general mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Roman Shaposhnik <>
Subject Re: Is it ok to put ASF header onto ALv2 compatibly licensed code?
Date Wed, 10 Aug 2016 00:47:30 GMT
On Tue, Aug 9, 2016 at 5:21 PM, Mike Jumper <> wrote:
> On Tue, Aug 9, 2016 at 4:46 PM, Roman Shaposhnik <> wrote:
>> On Tue, Aug 9, 2016 at 2:48 PM, Mike Jumper <> wrote:
>>> On Tue, Aug 9, 2016 at 2:23 PM, Roman Shaposhnik <> wrote:
>>>> ...
>>>> =======================================================
>>>> Licensed to the Apache Software Foundation (ASF) under one
>>>> or more contributor license agreements.  See the NOTICE file
>>>> distributed with this work for additional information
>>>> regarding copyright ownership.
>>>> =======================================================
>>>> There are two way I can see how to read this "Licensed to..." statement.
>>>> The first one is, indeed, along the lines of an original author re-licensing
>>>> code under a different license.
>>> I don't think this can be read that way. The quoted portion refers
>>> only to the software being licensed to the ASF, not the ASF
>>> re-licensing the software under a different license. The relevant text
>>> for that normally immediately follows the quoted portion:
>>> "... The ASF licenses this file to you under the Apache License,
>>> Version 2.0 (the 'License'); ..."
>>>> Clearly, only original author(s) can make that statement.
>>> Not necessarily. The original license may allow for third-parties to
>>> sublicense the code, given restrictions.
>> To me, the most thorny question in this is around what I would call
>> 'default rights'. IOW, is the only way to allow for third parties to
>> sublicense is to clearly state it in the license text or does the reverse
>> apply (third party can always sublicense unless explicitly prohibited
>> by the license text)?
> I believe the only default is the protection under copyright itself.
> That is, rights may be granted by the copyright holder to others via a
> copyright license (like the Apache License), but otherwise only the
> copyright holder has any such rights.
>> On top of which, the difference between re-licensing vs. sublicensing
>> seems to be of interest here as well.
> Re-licensing is re-releasing the work under a new, different license,
> independent of whatever license it was available under before. "I am
> giving you access to this work under these terms."
> Sublicensing is releasing the work under another license, but within
> the terms of the license that originally applied. "You are already
> given access to this work under these terms. In addition, I am giving
> you access to this work under THESE terms."

This is fascinating part of the discussion. However, I'd like to hold off for
a moment asking further clarification here, because my biggest question
can be answered without really going into the details of defining these
terms. See bellow.

>> Do you think that ALv2 header the way it is written implies re-licensing
>> or sublicensing?
> Sublicensing.
> "2. Grant of Copyright License. Subject to the terms and conditions of
> this License, each Contributor hereby grants to You a perpetual,
> worldwide, non-exclusive, no-charge, royalty-free, irrevocable
> copyright license to reproduce, prepare Derivative Works of, publicly
> display, publicly perform, sublicense, and distribute the Work and
> such Derivative Works in Source or Object form."

Right. But you're not quoting the ALv2 header, you're quoting the license
itself. IOW, if I were to put a full text of the ALv2 in the header preceding
my MIT license header in the source code that would be fine and I have
no problem with that. It also would be, however, inconvenient given the size
of the full ALv2 text. So back to my question see bellow:

>> To illustrate the difference lets take the most liberal license of all (MIT).
>> There's nothing preventing sublicensing OR re-licensing in the text of the
>> license itself, but at the same time the FAQ makes it pretty clear that one
>> is allowed and the other one is not:
> Like the Apache License, the MIT license explicitly grants permission
> to sublicense:
> "... including without limitation the rights to use, copy, modify,
> merge, publish, distribute, sublicense, and/or sell copies of the
> Software ..."
> I don't believe they need to explicitly specify that they do not grant
> permission to re-license the software. If the right to re-license was
> a default, any restrictions imposed by a copyright license would be
> easily circumvented by re-licensing under a license without those
> restrictions.
>> Suppose I have a source file under MIT license and all I want to do is
>> to add a bit of
>> verbiage that, when distributed as part of the ASF project, the code
>> is redistributed (NOT
>> re-licensed) under the ALv2 (on top of originally being available
>> under the MIT license).
>> It seems like there's no ASF-sanctioned way for me to make that statement, since
>> ALv2 header will imply re-licensing.
> The issue I had with the proposed wording was not that it implies
> re-licensing (I believe it implies sublicensing), but rather that it
> implies things that are false (unless the work was indeed licensed to
> the ASF by the original authors under a CLA).

Ok. That one I can readily agree on without further clarification of the
terms. Which means that we're back to my original question -- there
are two ASF-sanctioned texts that I know of. One is the ALv2 license
itself. The other one is the text of the ALv2 header. Neither seem to be
appropriate in the situation I'm describing (the former because it is just
way too long, the later because it implied things that are not true
"Licensed to...").

So the question really is, should we have a 3d ASF-sanctioned text
along the lines of:

The ASF sublicenses this file to you under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance
with the License.  You may obtain a copy of the License at

Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
KIND, either express or implied.  See the License for the
specific language governing permissions and limitations
under the License.

That seems to be the only way to really achieve what we're after here.


To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message