You are viewing a plain text version of this content. The canonical link for it is here.
Posted to general@incubator.apache.org by Henri Yandell <ba...@apache.org> on 2017/08/30 02:15:18 UTC

Source Headers [Was: [VOTE] Apache MXNet (incubating) 0.11.0 release RC3]

On Tue, Aug 29, 2017 at 6:38 PM, John D. Ament <jo...@apache.org>
wrote:

> On Tue, Aug 29, 2017 at 9:30 PM John D. Ament <jo...@apache.org>
> wrote:
>
> > On Tue, Aug 29, 2017 at 9:27 PM Henri Yandell <ba...@apache.org> wrote:
> >
> >> Reverted to "Copyright Contributors"?
> >>
> >>
> > Yes, for any file that we don't have full agreement (ICLA on file) we
> > can't remove the copyright claim that already exists.  Us receiving an
> ICLA
> > is what allows us to say "Licensed to the ASF" (it's in the ICLA).
> >
> > It's not a big deal, since its Apache licensed, we just have to be
> careful
> > we're removing someone's pre-existing claim.
> >
>
> I'll give a more concrete example.
>
> Let's say I imported this file into an ASF repo
> https://github.com/spring-projects/spring-framework/
> blob/v5.0.0.RC3/spring-core/src/main/java/org/springframework/util/
> StringUtils.java
>
> I wouldn't change the header to say licensed to the ASF.  None of the
> contributors have signed ICLAs.  The file header would remain in tact.  I
> would also have to carry their notice file around
> https://github.com/spring-projects/spring-framework/
> blob/v5.0.0.RC3/src/docs/dist/notice.txt
> (at
> least I'm assuming this is their NOTICE file, I can't find any others
> around)
>
>
For a concrete example with copyright Pivotal; sure - nice and easy.

In this case we have 'Copyright Contributors'. It's an empty phrase that
would just cause confusion. Because Contributor isn't defined, it looks
like a repeat of our source header:

"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. ... "

Perhaps the solution is to, in the NOTICE, state:

Copyright 2015-2016 by Contributors
Copyright 2017 The Apache Software Foundation

Where we could change 'by Contributors' to be more descriptive, but I seem
to recall lots of pushback at changing 3rd party source headers to make
them more understandable.

---

Note also that clause 5 of Apache 2.0 means that many of those 'contributor
license agreements' are Apache 2.0 Licenses and not SGA/ICLA/CCLA. Its
language should also cover something else published under Apache 2.0; ie)
no need for a different Apache source header.

Hen

Re: Source Headers [Was: [VOTE] Apache MXNet (incubating) 0.11.0 release RC3]

Posted by Henri Yandell <ba...@apache.org>.
On Tue, Aug 29, 2017 at 8:37 PM, John D. Ament <jo...@apache.org>
wrote:

> On Tue, Aug 29, 2017 at 11:10 PM Justin Mclean <ju...@me.com>
> wrote:
>
> > Hi,
> >
> > > Just to be clear.  The issue in this case (not to confuse this
> situation
> > > with MADlib's) isn't what license applies but what copyrights apply.
> >
> > With a large number of files not having license headers and a mix of
> > Apache, BSD and MIT licenses it’s fairly similar IMO.
> >
>
> I'm looking at it a second time now.  I just realized that half of their
> source release is actually coming from repos not hosted at the ASF.  Hen,
> do you know if they have plans to move the rest over?
>
> https://github.com/dmlc/dmlc-core/tree/a527100d7d5001efc4954848a2fc60
> 27e48c05f4/include/dmlc
>
> The files in that directory carry no license headers on them, are hosted in
> an external repo.  But there is an Apache license at the root.
>

An excellent question. I think this came up in discussions on migrating
source; but I don't recall there being any decisions on list. It seems that
either a) It's a second repository that needs to be created for
apache-mxnet or b) it's an external dependency. There are 6 dependency
repositories being pulled from dmlc.

I'll raise this on dev@.

Hen

Re: Source Headers [Was: [VOTE] Apache MXNet (incubating) 0.11.0 release RC3]

Posted by "John D. Ament" <jo...@apache.org>.
On Tue, Aug 29, 2017 at 11:10 PM Justin Mclean <ju...@me.com> wrote:

> Hi,
>
> > Just to be clear.  The issue in this case (not to confuse this situation
> > with MADlib's) isn't what license applies but what copyrights apply.
>
> With a large number of files not having license headers and a mix of
> Apache, BSD and MIT licenses it’s fairly similar IMO.
>

I'm looking at it a second time now.  I just realized that half of their
source release is actually coming from repos not hosted at the ASF.  Hen,
do you know if they have plans to move the rest over?

https://github.com/dmlc/dmlc-core/tree/a527100d7d5001efc4954848a2fc6027e48c05f4/include/dmlc

The files in that directory carry no license headers on them, are hosted in
an external repo.  But there is an Apache license at the root.


>
> The 3rd party Apache licensed file should ideally have the header as
> specified in the appendix of the Apache license. [1[
>
>
Agreed.

Whats curious is they use the short form in their license file, but they
used to have the long form
https://github.com/dmlc/dmlc-core/commit/d0e7fab67dc74b665fdc9840a2b0a299bc4f1763


> Thanks,
> Justin
>
> 1. https://www.apache.org/licenses/LICENSE-2.0#apply

Re: Source Headers [Was: [VOTE] Apache MXNet (incubating) 0.11.0 release RC3]

Posted by Justin Mclean <ju...@me.com>.
Hi,

> Just to be clear.  The issue in this case (not to confuse this situation
> with MADlib's) isn't what license applies but what copyrights apply.

With a large number of files not having license headers and a mix of Apache, BSD and MIT licenses it’s fairly similar IMO.

The 3rd party Apache licensed file should ideally have the header as specified in the appendix of the Apache license. [1[

Thanks,
Justin

1. https://www.apache.org/licenses/LICENSE-2.0#apply

Re: Source Headers [Was: [VOTE] Apache MXNet (incubating) 0.11.0 release RC3]

Posted by "John D. Ament" <jo...@apache.org>.
On Tue, Aug 29, 2017 at 10:15 PM Henri Yandell <ba...@apache.org> wrote:

> On Tue, Aug 29, 2017 at 6:38 PM, John D. Ament <jo...@apache.org>
> wrote:
>
> > On Tue, Aug 29, 2017 at 9:30 PM John D. Ament <jo...@apache.org>
> > wrote:
> >
> > > On Tue, Aug 29, 2017 at 9:27 PM Henri Yandell <ba...@apache.org>
> wrote:
> > >
> > >> Reverted to "Copyright Contributors"?
> > >>
> > >>
> > > Yes, for any file that we don't have full agreement (ICLA on file) we
> > > can't remove the copyright claim that already exists.  Us receiving an
> > ICLA
> > > is what allows us to say "Licensed to the ASF" (it's in the ICLA).
> > >
> > > It's not a big deal, since its Apache licensed, we just have to be
> > careful
> > > we're removing someone's pre-existing claim.
> > >
> >
> > I'll give a more concrete example.
> >
> > Let's say I imported this file into an ASF repo
> > https://github.com/spring-projects/spring-framework/
> > blob/v5.0.0.RC3/spring-core/src/main/java/org/springframework/util/
> > StringUtils.java
> >
> > I wouldn't change the header to say licensed to the ASF.  None of the
> > contributors have signed ICLAs.  The file header would remain in tact.  I
> > would also have to carry their notice file around
> > https://github.com/spring-projects/spring-framework/
> > blob/v5.0.0.RC3/src/docs/dist/notice.txt
> > (at
> > least I'm assuming this is their NOTICE file, I can't find any others
> > around)
> >
> >
> For a concrete example with copyright Pivotal; sure - nice and easy.
>
> In this case we have 'Copyright Contributors'. It's an empty phrase that
> would just cause confusion. Because Contributor isn't defined, it looks
> like a repeat of our source header:
>
> "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. ... "
>
> Perhaps the solution is to, in the NOTICE, state:
>
> Copyright 2015-2016 by Contributors
> Copyright 2017 The Apache Software Foundation
>
> Where we could change 'by Contributors' to be more descriptive, but I seem
> to recall lots of pushback at changing 3rd party source headers to make
> them more understandable.
>

I think that's a reasonable approach, to list out contributors in question.


>
> ---
>
> Note also that clause 5 of Apache 2.0 means that many of those 'contributor
> license agreements' are Apache 2.0 Licenses and not SGA/ICLA/CCLA. Its
> language should also cover something else published under Apache 2.0; ie)
> no need for a different Apache source header.
>
>
Just to be clear.  The issue in this case (not to confuse this situation
with MADlib's) isn't what license applies but what copyrights apply.  MXnet
is actually much easier, since we imported full commit history.  We can
always go back and check who committer what change and what copyright
applies.  The legal ruling [1] is that we don't add the Apache source
header to 3rd party code, which is effectively what this is.  I'll also
point out that the legal advice is clear that this is only for code
developed at the ASF, which the existing MXnet code is not.

[1]: https://www.apache.org/legal/src-headers.html


> Hen
>

Re: Source Headers [Was: [VOTE] Apache MXNet (incubating) 0.11.0 release RC3]

Posted by "John D. Ament" <jo...@apache.org>.
On Tue, Aug 29, 2017 at 10:15 PM Henri Yandell <ba...@apache.org> wrote:

> On Tue, Aug 29, 2017 at 6:38 PM, John D. Ament <jo...@apache.org>
> wrote:
>
> > On Tue, Aug 29, 2017 at 9:30 PM John D. Ament <jo...@apache.org>
> > wrote:
> >
> > > On Tue, Aug 29, 2017 at 9:27 PM Henri Yandell <ba...@apache.org>
> wrote:
> > >
> > >> Reverted to "Copyright Contributors"?
> > >>
> > >>
> > > Yes, for any file that we don't have full agreement (ICLA on file) we
> > > can't remove the copyright claim that already exists.  Us receiving an
> > ICLA
> > > is what allows us to say "Licensed to the ASF" (it's in the ICLA).
> > >
> > > It's not a big deal, since its Apache licensed, we just have to be
> > careful
> > > we're removing someone's pre-existing claim.
> > >
> >
> > I'll give a more concrete example.
> >
> > Let's say I imported this file into an ASF repo
> > https://github.com/spring-projects/spring-framework/
> > blob/v5.0.0.RC3/spring-core/src/main/java/org/springframework/util/
> > StringUtils.java
> >
> > I wouldn't change the header to say licensed to the ASF.  None of the
> > contributors have signed ICLAs.  The file header would remain in tact.  I
> > would also have to carry their notice file around
> > https://github.com/spring-projects/spring-framework/
> > blob/v5.0.0.RC3/src/docs/dist/notice.txt
> > (at
> > least I'm assuming this is their NOTICE file, I can't find any others
> > around)
> >
> >
> For a concrete example with copyright Pivotal; sure - nice and easy.
>
> In this case we have 'Copyright Contributors'. It's an empty phrase that
> would just cause confusion. Because Contributor isn't defined, it looks
> like a repeat of our source header:
>
> "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. ... "
>
> Perhaps the solution is to, in the NOTICE, state:
>
> Copyright 2015-2016 by Contributors
> Copyright 2017 The Apache Software Foundation
>
> Where we could change 'by Contributors' to be more descriptive, but I seem
> to recall lots of pushback at changing 3rd party source headers to make
> them more understandable.
>

I think that's a reasonable approach, to list out contributors in question.


>
> ---
>
> Note also that clause 5 of Apache 2.0 means that many of those 'contributor
> license agreements' are Apache 2.0 Licenses and not SGA/ICLA/CCLA. Its
> language should also cover something else published under Apache 2.0; ie)
> no need for a different Apache source header.
>
>
Just to be clear.  The issue in this case (not to confuse this situation
with MADlib's) isn't what license applies but what copyrights apply.  MXnet
is actually much easier, since we imported full commit history.  We can
always go back and check who committer what change and what copyright
applies.  The legal ruling [1] is that we don't add the Apache source
header to 3rd party code, which is effectively what this is.  I'll also
point out that the legal advice is clear that this is only for code
developed at the ASF, which the existing MXnet code is not.

[1]: https://www.apache.org/legal/src-headers.html


> Hen
>