Hi,
I think that for any non-coding/boring task the best bet (barring a paid 
employee)
is to crowdsource the effort. You could compare this to the task of enforcing 
code style:
it would be a huge task to convert all NuttX files to follow the code style and 
most likely
no one would ever offer to do it on their own. However, distributing the load 
to every PR
author to adapt files they touch is a good way to make fair distribution of the 
load.

I think for IP clearance a CI check could be added by using the scripts I made: 
each file touched
by a PR could be checked to see if it can be "Apachized" safely. If so, the PR 
author would have to
include this change in the PR in a separate commit, with a commit message 
holding relevant
output of the tool for tracing. If some files become problematic for this 
process, they can be added
to an "ignored" list (or a "already converted" list). If that sounds 
reasonable, I could look into it.

Of course, that is the slow approach and can only considered a help (to slowly 
reduce the problem
and avoid continuing to increase it), so for something more critical as IP 
clearance I think
it should be possible to further distribute batches of files to verify/clear to 
committers over some period
of time. From our website, I count ~15 non-mentor commiters. If each of those 
would clear 50 files,
that gets us 1500 files cleared. That is ~15% of .c/.h files. That could be 
repeated periodically (every couple
of months, for example) and it would get us much closer to compliance, not 
counting the files cleared via the CI
procedure detailed before.

A final point I would make is this: for such a large codebase, this kind of 
non-coding tasks
(for example, documentation) will require the biggest effort and thus require 
more help. In that
regard, growing the number of committers is very important. A call for 
non-coders to help with CI
and documentation may attract some users interested in NuttX but not confident 
yet with the codebase.

Best,
Matias

PS: similar the the "can be Apachized" CI check, I feel we should add a "has 
the author signed an ICLA"
check eventually for non-Apache licensed files. Sometimes I see PRs from 
authors who appear not to
be commiters and I wonder if we're not making the problem worse by further 
introducing authors without
ICLAs.

On Wed, Oct 7, 2020, at 10:24, Gregory Nutt wrote:
> 
> > I do not think there is zero progress as at least I’ve signed a SGA to
> > change all the files from Xiaomi to Apache License.
> Zero files have been officially cleared.  That allowed us to change the 
> Xiaomi/Pinecone copyrighted headers to Apache headers, but we still have 
> no idea who all contributed to those files
> > For the work on cleaning the license for other files, I could ask Peter and
> > Xiang Xiao again to let them be more aggressive on this task. It is the
> > long holiday in China, will ask them when they come back.
> I think there are many of us who would participate.  But there has to be 
> a key stakeholder and there has to be a dataset of contributor/copyright 
> information.  If such a database were available, it would be easy for us 
> to clear individual files.
> > But in general, I prefer that someone in the community promise to take the
> > responsibility of this nasty task, not by an order from their manager. I
> > know this is not an easy work, and much boring than writing code for
> > engineers, but we need to do these type of works to drive the project
> > forward.
> I have the same preference.  But we need to be honest:  That is not 
> going to happen.
> 
> 

Reply via email to