Re: Towards making your first Apache release

2020-01-19 Thread Gregory Nutt




incubator-nuttx/boards/sim/sim/sim/include/board.h

board.h consists only of 3 line:

  1 
/

  2  * boards/sim/sim/sim/include/board.h
  3  



It is effectively an empty file.


incubator-nuttx/arch/arm/src/cxd56xx/hardware/cxd5602_isop.h

This is an auto-generated file created with "xxd -i"

incubator-nuttx/boards/sim/sim/sim/include/nsh_romfsimg.h
incubator-nuttx/boards/arm/sama5/sama5d4-ek/include/nsh_romfsimg.h
incubator-nuttx/boards/arm/stm32l4/stm32l4r9ai-disco/include/nsh_romfsimg.h
incubator-nuttx/boards/arm/stm32l4/stm32l476vg-disco/include/nsh_romfsimg.h
The nsh_romfsimg.h files are auto-generated as well.  Those are just 
file system image files created with xxd -i.

incubator-nuttx/tools/noteinfo.c


This is another auto-generated file created with "xxd -i"

All the rest have various issues beyond than just missing licensing.





Re: Towards making your first Apache release

2020-01-19 Thread Brennan Ashton
If we start adding them, can we also start adding SPDX headers as well.
This will make it a whole lot easier to audit going forward.  This is kind
of an industry standard now and makes the legal people in companies a lot
happier as well.

--Brennan

On Sun, Jan 19, 2020 at 12:30 PM Gregory Nutt  wrote:

>
> > Then maybe
> >
> > find . -name Kconfig | xargs sed -i -e "' 1i \
> > 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. The ASF licenses 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\
> > \
> > http://www.apache.org/licenses/LICENSE-2.0\
> > \
> > Unless required by applicable law or agreed to in writing,\
> > software distributed under the License is distributed on an\
> > "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\
> > KIND, either express or implied. See the License for the\
> > specific language governing permissions and limitations\
> > under the License.
> >
> Do you want me to do the PR?
>
>
>


Re: Towards making your first Apache release

2020-01-19 Thread Brennan Ashton
Let's not get too sucked into how to apply the header.  I'm just trying to
clarify what we need to get headers on where we are missing data.

Here are more files that are missing license information:

H files over 0 bytes no license detected

incubator-nuttx/boards/sim/sim/sim/include/board.h
incubator-nuttx/arch/arm/src/cxd56xx/hardware/cxd5602_isop.h
incubator-nuttx/arch/arm/src/imxrt/hardware/rt102x/imxrt102x_xbar.h
incubator-nuttx/arch/arm/src/imxrt/hardware/rt105x/imxrt105x_xbar.h
incubator-nuttx/arch/arm/src/imxrt/hardware/rt106x/imxrt106x_xbar.h
incubator-nuttx/include/nuttx/wireless/ieee80211/mmc_sdio.h
incubator-nuttx/boards/sim/sim/sim/include/nsh_romfsimg.h
incubator-nuttx/boards/arm/sama5/sama5d4-ek/include/nsh_romfsimg.h
incubator-nuttx/boards/arm/stm32l4/stm32l4r9ai-disco/include/nsh_romfsimg.h
incubator-nuttx/boards/arm/stm32l4/stm32l476vg-disco/include/nsh_romfsimg.h


C files over 0 bytes no license detected

incubator-nuttx/libs/libc/math/lib_round.c
incubator-nuttx/libs/libc/math/lib_roundf.c
incubator-nuttx/libs/libc/math/lib_roundl.c
incubator-nuttx/arch/arm/src/lpc43xx/lpc43_emc.c
incubator-nuttx/tools/noteinfo.c
incubator-nuttx/boards/arm/samd5e5/metro-m4/scripts/nvm.c


sh files over 0 bytes no license detected

incubator-nuttx/boards/arm/lpc43xx/lpc4357-evb/scripts/bin_checksum_hex.sh
incubator-nuttx/boards/arm/stm32/maple/tools/dfu.sh
incubator-nuttx/boards/avr/at32uc3/avr32dev1/tools/doisp.sh
incubator-nuttx/boards/arm/stm32/maple/tools/env.sh
incubator-nuttx/boards/arm/lpc31xx/olimex-lpc-h3131/tools/mklpc.sh
incubator-nuttx/boards/arm/lpc31xx/ea3152/tools/mklpc.sh
incubator-nuttx/boards/arm/lpc31xx/ea3131/tools/mklpc.sh
incubator-nuttx/boards/arm/sama5/sama5d3-xplained/helpers/netusb-up.sh
incubator-nuttx/boards/arm/str71x/olimex-strp711/scripts/oocd.sh
incubator-nuttx/boards/arm/samv7/same70-xplained/tools/oocd.sh
incubator-nuttx/boards/arm/lpc31xx/olimex-lpc-h3131/tools/oocd.sh
incubator-nuttx/boards/arm/lpc31xx/ea3152/tools/oocd.sh
incubator-nuttx/boards/arm/lpc31xx/ea3131/tools/oocd.sh
incubator-nuttx/boards/arm/tiva/lm4f120-launchpad/tools/oocd.sh
incubator-nuttx/boards/arm/tiva/tm4c1294-launchpad/tools/oocd.sh
incubator-nuttx/boards/arm/tiva/tm4c123g-launchpad/tools/oocd.sh
incubator-nuttx/boards/arm/lpc17xx_40xx/lx_cpu/tools/oocd.sh
incubator-nuttx/boards/arm/stm32/shenzhou/tools/oocd.sh
incubator-nuttx/boards/arm/stm32/cloudctrl/tools/oocd.sh
incubator-nuttx/boards/arm/stm32/stm3210e-eval/tools/oocd.sh
incubator-nuttx/boards/arm/stm32/stm3220g-eval/tools/oocd.sh


bat files over 0 bytes no license detected
incubator-nuttx/boards/arm/lpc43xx/lpc4370-link2/scripts/flash.bat
incubator-nuttx/boards/arm/lpc43xx/lpc4337-ws/scripts/flash.bat

The fossology api is fighting me a bit, so I might be missing some things
here.

--Brennan

On Sun, Jan 19, 2020 at 12:26 PM Gregory Nutt  wrote:

>
> Then maybe
>
> find . -name Kconfig | xargs sed -i -e "' 1i \
> 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. The ASF licenses 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\
> \
> http://www.apache.org/licenses/LICENSE-2.0\
> \
> Unless required by applicable law or agreed to in writing,\
> software distributed under the License is distributed on an\
> "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\
> KIND, either express or implied. See the License for the\
> specific language governing permissions and limitations\
> under the License.
>
>
>


Re: Towards making your first Apache release

2020-01-19 Thread Gregory Nutt



Then maybe

find . -name Kconfig | xargs sed -i -e "' 1i \
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. The ASF licenses 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\
\
http://www.apache.org/licenses/LICENSE-2.0\
\
Unless required by applicable law or agreed to in writing,\
software distributed under the License is distributed on an\
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\
KIND, either express or implied. See the License for the\
specific language governing permissions and limitations\
under the License.


Do you want me to do the PR?




Re: Towards making your first Apache release

2020-01-19 Thread Gregory Nutt


Then maybe

   find . -name Kconfig | xargs sed -i -e "' 1i \
   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. The ASF licenses 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\
   \
   http://www.apache.org/licenses/LICENSE-2.0\
   \
   Unless required by applicable law or agreed to in writing,\
   software distributed under the License is distributed on an\
   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\
   KIND, either express or implied. See the License for the\
   specific language governing permissions and limitations\
   under the License.




Re: Towards making your first Apache release

2020-01-19 Thread Justin Mclean
Hi,


> If we used SPDX one-liner, it could be done with a simple find and sed. 

That would be against current ASF policy on headers. [1] We could ask for an 
exception if the project wanted to do this.

Thanks,
Justin

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

Re: Towards making your first Apache release

2020-01-19 Thread Justin Mclean
HI,

> I tend to agree with the way Linux does things.  Kconfig files require manual 
> effort to generate and maintain and are a work that should be protected.  
> defconfig files, on the other hand, are auto-generated and you want people to 
> be free to use them. 

In general copyright doesn’t apply to Auto-generated files. You will note 
however that the ASF header doesn’t include a copyright line. See [1].

Also as I explained before the is ASF policy [2] which goes further than what 
is just legally required.

Thanks,
Justin

1. https://www.apache.org/legal/src-headers.html#faq-exceptions
2. https://www.apache.org/legal/src-headers.html#faq-nonasf

Re: Towards making your first Apache release

2020-01-19 Thread Gregory Nutt



I share this opinion as well. What should we do about getting license
information on the Kconfig files?


If we used SPDX one-liner, it could be done with a simple find and sed.  
Maybe like:


   find . -name Kconfig | xargs sed -i -e "' 1i \
   # SPDX blablabla"

This could handle a multiple line header too.

Greg



Re: Towards making your first Apache release

2020-01-19 Thread Brennan Ashton
I share this opinion as well. What should we do about getting license
information on the Kconfig files?

--Brennan

On Sun, Jan 19, 2020, 11:01 AM Gregory Nutt  wrote:

>
> > What about the Kconfig files and the defconf files?
>
> I see Linux now has license information (but not copyrights) in their
> Kconfig files.  For example
> https://elixir.bootlin.com/linux/latest/source/Kconfig :
>
> # SPDX-License-Identifier: GPL-2.0
> #
> # For a description of the syntax of this configuration file,
> # see Documentation/kbuild/kconfig-language.rst.
> #
>
> But defconfig files do not.  For example,
>
> https://elixir.bootlin.com/linux/v5.4.13/source/arch/arm/configs/am200epdkit_defconfig
> .
>
> I tend to agree with the way Linux does things.  Kconfig files require
> manual effort to generate and maintain and are a work that should be
> protected.  defconfig files, on the other hand, are auto-generated and
> you want people to be free to use them.  And how would you copyright or
> license and auto-generated file that anyone can create/re-create by
> running a tool.  Certainly, if they re-created the identical file (as
> the tool would with idential selections), that identical file would not
> have derived for the original defconfig in any way.
>
> And since the defconfig file is auto generated, it would have to have an
> auto generated license and copyright.  That is, I think the wrong way to
> go.  But that is just an opinion.
>
>
>
>


Re: Towards making your first Apache release

2020-01-19 Thread Gregory Nutt



What about the Kconfig files and the defconf files?


I see Linux now has license information (but not copyrights) in their 
Kconfig files.  For example 
https://elixir.bootlin.com/linux/latest/source/Kconfig :


   # SPDX-License-Identifier: GPL-2.0
   #
   # For a description of the syntax of this configuration file,
   # see Documentation/kbuild/kconfig-language.rst.
   #

But defconfig files do not.  For example, 
https://elixir.bootlin.com/linux/v5.4.13/source/arch/arm/configs/am200epdkit_defconfig 
.


I tend to agree with the way Linux does things.  Kconfig files require 
manual effort to generate and maintain and are a work that should be 
protected.  defconfig files, on the other hand, are auto-generated and 
you want people to be free to use them.  And how would you copyright or 
license and auto-generated file that anyone can create/re-create by 
running a tool.  Certainly, if they re-created the identical file (as 
the tool would with idential selections), that identical file would not 
have derived for the original defconfig in any way.


And since the defconfig file is auto generated, it would have to have an 
auto generated license and copyright.  That is, I think the wrong way to 
go.  But that is just an opinion.






Re: Towards making your first Apache release

2020-01-19 Thread Brennan Ashton
After looking into this more with Fossology I think I would be a good idea
to use it to track all of this rather than relying on home grown greps.
It's probably better to do the tracking not on my installation, but on
something run by INFRA (mine is backed up for what it's worth).

Justin, how would we go about getting this resource?


There are some c and h files that I found missing license information that
have copyrights so we likely need to get them cleaned up. There are also a
few shell scripts that have no copyright information on them. I can
generate the list.

What about the Kconfig files and the defconf files?

--Brennan


Re: Towards making your first Apache release

2020-01-18 Thread Justin Mclean
Hi,

> That is kind of offensive.  I would never do something like that. I have 
> never intentionally violated a license.  I always give credit when credit is 
> due.

You're misunderstanding me, I’m describing the conditions under which we can 
change the headers to ALv2. In some cases you have taken a 3rd party file,  
modified it and you added your BSD header on them, that fine, but depending on 
the extent of the changes we would either replace your header with an ASF one 
or remove your header and leave the original 3rd party header. This is not that 
you’ve done something incorrectly or haven’t given credit, just that ASF policy 
differs to how you’ve been working in the past.

Thanks,
Justin

Re: Towards making your first Apache release

2020-01-18 Thread Gregory Nutt




In general, BSD licensed files with "Copyright (C) 20XX Gregory Nutt” would 
have the ASF header on them, but we may need to double check that they are not a 3rd 
party file that’s just had some changes to it or been reformatted.


That is kind of offensive.  I would never do something like that. I have 
never intentionally violated a license.  I always give credit when 
credit is due.


Greg



Re: Towards making your first Apache release

2020-01-18 Thread Justin Mclean
Hi,

In general, BSD licensed files with "Copyright (C) 20XX Gregory Nutt” would 
have the ASF header on them, but we may need to double check that they are not 
a 3rd party file that’s just had some changes to it or been reformatted.

Thanks,
Justin

Re: Towards making your first Apache release

2020-01-18 Thread Justin Mclean


Hi,

> So for the OS BSD headers we would need to keep them on the file as well as
> include it in the NOTICE file?

No you would generally not add to NOTICE, only some things are added to NOTICE. 
See [1]

> What happens when someone modifies one of these old files once the project 
> makes the APL transition? 

If some modifications have been done then keep the old license, significant 
changes have to be made to change the license. Just reformatting to another 
style doesn’t count as a change. [2]

BTW I put some of these links in the GitHub issues and have mention them before 
on this list.

Thanks,
Justin

1. http://www.apache.org/dev/licensing-howto.html
2. https://www.apache.org/legal/src-headers.html#3party



Re: Towards making your first Apache release

2020-01-18 Thread Brennan Ashton
On Sat, Jan 18, 2020, 7:11 PM Justin Mclean 
wrote:

> Hi,
>
> > Is there some docs to guide us in making this licencing transition? I
> would
> > be happy to start the processing of adding spdx headers based on what is
> in
> > the code if that would help, but I don't know how to transition files to
> > Apache 2 under this project.
>
> It’s easy enough:
> - Add ASF headers to file that are not 3rd party but part of teh project
> - Leave 3rd party headers as they are
>

So for the OS BSD headers we would need to keep them on the file as well as
include it in the NOTICE file? What happens when someone modifies one of
these old files once the project makes the APL transition? What is the
license requirements of that source now?

--Brennan

>


Re: Towards making your first Apache release

2020-01-18 Thread Justin Mclean
Hi,

> Is there some docs to guide us in making this licencing transition? I would
> be happy to start the processing of adding spdx headers based on what is in
> the code if that would help, but I don't know how to transition files to
> Apache 2 under this project.

It’s easy enough:
- Add ASF headers to file that are not 3rd party but part of teh project
- Leave 3rd party headers as they are

We will need to make a list of all 3rd party licenses and put them somewhere (a 
directory called licenses is how it’s usually done) and point to them from the 
license file.
 
> I also know that while most of the OS code is in the Category A licences we
> do have some cases of Category X specifically BSD-4 (ppp code if I remember
> correctly is an example).

We’ll need to take a look at that, but if it from the University of California, 
it been rescinded back in 1999, so should not be an issue.

> I was planning on putting together a doc in confluence to start tracking
> the release "requirements" and we can try to move toward them each release.

As I’ve suggested before Fossology [1] might bee a good way to track all of 
this, we can set up an instance on a VM. It's easy to run locally in docker as 
well.

Thanks,
Justin

1. https://www.fossology.org

Re: Towards making your first Apache release

2020-01-18 Thread Brennan Ashton
Justin,
Is there some docs to guide us in making this licencing transition? I would
be happy to start the processing of adding spdx headers based on what is in
the code if that would help, but I don't know how to transition files to
Apache 2 under this project.

I also know that while most of the OS code is in the Category A licences we
do have some cases of Category X specifically BSD-4 (ppp code if I remember
correctly is an example)

I was planning on putting together a doc in confluence to start tracking
the release "requirements" and we can try to move toward them each release.

Thanks
Brennan

On Sat, Jan 18, 2020, 4:47 PM Justin Mclean 
wrote:

> Hi,
>
> It would be great if some people start working on these issues otherwise
> it will hold up making a release. I raised a couple of Github issues for
> the most urgent ones e.g having a LICENSE, NOTICE and DISCLAIMER and
> putting ASF headers on files.
>
> Thanks,
> Justin


Re: Towards making your first Apache release

2020-01-18 Thread Justin Mclean
Hi,

It would be great if some people start working on these issues otherwise it 
will hold up making a release. I raised a couple of Github issues for the most 
urgent ones e.g having a LICENSE, NOTICE and DISCLAIMER and putting ASF headers 
on files.

Thanks,
Justin

Re: Towards making your first Apache release

2020-01-15 Thread Brennan Ashton
I'm also willing to take this on or help someone else for the first
release.  Can't rush the code, but it would be nice to get the other bits
in place for a release.

--Brennan

On Wed, Jan 15, 2020, 3:37 PM Justin Mclean 
wrote:

> HI,
>
> > I cannot determine what the capabilities are that are needed and what
> the impact in hours will be?
>
> Hard to estimate hours but it should be more than a few hours week, the
> first release generally take some time to get together 2 to 4 weeks is
> typically, but some projects do it quicker and some take months.
>
>
> > And I would need guidance I have a strong passion about Nuttx, but
> maybe thats not enough…
>
> Mentors are here to help. I created and reviewed 100’s of release (about
> 500 I think) so know the process and what issues you may run into.
>
> This little presentation (I've given a few times) help as well, [1]
>
> Thanks,
> Justin
>
> 1.
> https://github.com/apache/incubator-training/tree/master/content/ApacheWay/IncubatorReleases
> 2.
> https://github.com/apache/incubator-training/blob/master/content/ApacheWay/IncubatorReleases/src/main/asciidoc/index.adoc
>
>
>


Re: Towards making your first Apache release

2020-01-15 Thread Justin Mclean
HI,

> I cannot determine what the capabilities are that are needed and what the 
> impact in hours will be?

Hard to estimate hours but it should be more than a few hours week, the first 
release generally take some time to get together 2 to 4 weeks is typically, but 
some projects do it quicker and some take months.


> And I would need guidance I have a strong passion about Nuttx, but maybe 
> thats not enough…

Mentors are here to help. I created and reviewed 100’s of release (about 500 I 
think) so know the process and what issues you may run into.

This little presentation (I've given a few times) help as well, [1]

Thanks,
Justin

1. 
https://github.com/apache/incubator-training/tree/master/content/ApacheWay/IncubatorReleases
2. 
https://github.com/apache/incubator-training/blob/master/content/ApacheWay/IncubatorReleases/src/main/asciidoc/index.adoc




Re: Towards making your first Apache release

2020-01-15 Thread Gregory Nutt




Is anyone willing to be the first release manager?


My understanding is that the release manager does not necessarily do the 
release, but is the point of contact and coordinator for releases and 
needs to sign releases.  Is that true?


So the job should not sound as scary as the title implies.

At one point in the past, Duo Zhang mentioned a set of tools this his 
project used to automatically generate ReleaseNotes and other parts of 
the release.  If Duo is still listening in, can you refresh that memory?


Greg




Re: Towards making your first Apache release

2020-01-15 Thread Disruptive Solutions
I have been reading:

http://www.apache.org/dev/release-publishing.html


Verstuurd vanaf mijn iPhone

> Op 15 jan. 2020 om 23:52 heeft Justin Mclean  het 
> volgende geschreven:
> 
> Hi,
> 
> Is anyone willing to be the first release manager?
> 
> Thanks,
> Justin


Re: Towards making your first Apache release

2020-01-15 Thread Disruptive Solutions
Hello Justin,

I cannot determine what the capabilities are that are needed and what the 
impact in hours will be? And I would need guidance I have a strong passion 
about Nuttx, but maybe thats not enough...

Ben

Verstuurd vanaf mijn iPhone

> Op 15 jan. 2020 om 23:52 heeft Justin Mclean  het 
> volgende geschreven:
> 
> Hi,
> 
> Is anyone willing to be the first release manager?
> 
> Thanks,
> Justin


Re: Towards making your first Apache release

2020-01-15 Thread Justin Mclean
Hi,

Is anyone willing to be the first release manager?

Thanks,
Justin