incubator-general mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From 俊平堵 <junping...@apache.org>
Subject [VOTE] Accept NuttX into the Apache Incubator
Date Wed, 04 Dec 2019 05:31:46 GMT
Hi folks,


The [DISCUSS] thread on NuttX has died down.


Accordingly, I would like to call a VOTE to accept NuttX into the

Apache Incubator.


Please cast your vote:


  [ ] +1, bring NuttX into the Incubator

  [ ] +0, I don't care either way

  [ ] -1, do not bring NuttX into the Incubator, because...


The vote will open at least for 72 hours and only votes from the

Incubator PMC are binding, but votes from everyone are welcome.


=Abstract=

NuttX is a mature, real-time embedded operating system (RTOS).  It has wide
usage in IoT projects, control systems, robotics, drones, and many other
systems.  Unique properties of NuttX are its strict adherence to standards
and its scalability. NuttX follows the Unix standards as defined
by OpenGroup.org (POSIX, ANSI, and others).  This allows for a high degree
of portability. Scalability is supported through a configuration system
that allows NuttX to run on the smallest embedded platforms and through
high end single board computers.


=Proposal=

NuttX was released under a BSD 3-Clause license on February 17, 2007.  From
that time until now it has been managed by a single person, Gregory Nutt.
The user base of NuttX has grown to probably thousands of projects and
perhaps a hundred active developments at any time.  The code base has grown
to around 1.5 million lines of code (according to OpenHub.com).

NuttX has benefited from this single person management because this has
resulted in a consistent architecture and controlled growth.  But now it is
time to open this project to the participation of others because this
consistent architecture assures solid future growth, and because the
magnitude of effort required to support the RTOS exceeds the capability of
a single person, but also because users of NuttX require a stable road map
going forward that does not depend on a single person.

For these reasons, I propose that NuttX enter the Apache Incubator as a
first step in opening the project to wider participation.


=Initial Goals=

The initial goal will be to move the existing BSD code base to Apache and
integrate with the Apache development process and infrastructure. A primary
goal of incubation will be to grow and diversify the NuttX community. We
will convert that code base to the Apache license during incubation.


=Current Status=

As previously mentioned, NuttX is a mature, stable product in wide use in
embedded products.


==Meritocracy==

We value meritocracy and we understand that it is the basis for an open
community that encourages multiple companies and individuals to contribute
and be invested in the project’s future. We will encourage and monitor
participation and make sure to extend privileges and responsibilities to
all contributors.

Being a mature project, NuttX already has an extensive user base with many
people who understand the software, who have committed hundreds of changes,
and are happy to participate in the project.  I believe that with a little
guidance and formalization, a PMC and a large group of experienced
committers can quickly be established.


==Community==

NuttX has a large, active community.  Communication is via a Google group
at https://groups.google.com/forum/#!forum/nuttx where there are 395
members as of this writing.  Code is currently maintained
at Bitbucket.org at https://bitbucket.org/nuttx/.  Other communications are
through Bitbucket issues and also via Slack for focused, interactive
discussions.

Keeping up with the communications, requests for help, issues, and
contributions is more than a full time job at this time.


==Core Developers==

NuttX was initially developed by Gregory Nutt, released as an open source
project on February 17, 2007, and is still under active development.  There
are several dozen, active, frequent contributors involved with the project.
The core OS can be considered finished at this point, but development
continues in specialized areas of networking, IoT, cryptography, tools, and
other more specialized functions.


=Alignment=

NuttX is an original development with some small percentage of ported
code.  It stands alone depends on no other projects.


=Known Risks=

==Orphaned Products==

We are committed to the future development of NuttX and understand that
graduation to a TLP, while preferable, is not the only positive outcome of
incubation.

Should the NuttX project be accepted by the Incubator, the prospective PPMC
would be willing to agree to a target incubation period of 2 years or less,
knowing that every Incubator project incurs a certain cost in terms of ASF
infrastructure and volunteer time.


==Inexperience with Open Source==

None of the initial committers are Apache members and we will need some
help in learning the Apache Way.


==Salaried Developers==

It is expected that NuttX development will occur primarily on volunteer
time, after hours.  One initial committer will be paid by Xiaomi. All
initial committers are all equally passionate about the project.


=Relationships with Other Apache Products=

There is no relationship between NuttX and any other Apache Products.
There were discussions with the Mynewt project in the past concerning use
of some Mynewt IoT components within NuttX.  There is some possibility that
those conversations could continue once NuttX has Apache licensing as well.


=Required Resources=

==Mailing lists==

* dev@nuttx.incubator.apache.org

* commits@nuttx.incubator.apache.org

* private@nuttx.incubator.apache.org

The podling may also create a user mailing list, if needed.


==Source Control and Issue Tracking==

NuttX current uses the Bitbucket infrastructure for development.  It is
likely that the NuttX podling would switch to GitHub and would use Apache’s
gitbox integration to sync between GitHub and Apache infrastructure. The
podling would use GitHub issues and pull requests for community engagement.

Current Resources

* Initial source: https://bitbucket.org/nuttx/

* Wiki Page:  http://www.nuttx.org/

* Google Group:  https://groups.google.com/forum/#!forum/nuttx


=Source and Intellectual Property Submission Plan=

The NuttX  source code in Bitbucket is currently licensed under the BSD
3-clause license and the most copyrights are assigned to the author,
Gregory Nutt. If NuttX becomes an Incubator project at the ASF, the project
will transfer the source code and trademark ownership to the Apache
Software Foundation via a Software Grant Agreement.


=External Dependencies=

None.  A small number of files within NuttX follow slightly different, but
compatible licenses including BSD 2- and 4-clause, MIT, ISC, and Public
Domain.


=Cryptography=

NuttX has negligible cryptographic capabilities at present.  This is,
however, and are where there will be extensive future growth.


=Initial Committers=

* Gregory Nutt gnutt@nuttx.org

* Xiao Xiang xiaoxiang@xiaomi.com

* Anthony Merlino anthony@vergeaero.com

* Alin Jerpelea alin.jerpelea@sony.com

* David Sidrane david.sidrane@nscdg.com

* Alan Carvalho de Assis acassis@gmail.com

* Nathan Hartman hartman.nathan@gmail.com

* Abdelatif GUETTOUCHE abdelatif.guettouche@gmail.com

=Sponsors=

* Champion and mentor: Junping Du junping_du@apache.org

* Mentor: Justin Mclean jmclean@apache.org

* Mentor: Mohammad Asif Siddiqui asifdxtreme@apache.org

* Mentor: Flavio Paiva Junqueira fpj@apache.org


=Sponsoring Entity=

* The Apache Incubator





[1] https://cwiki.apache.org/confluence/display/INCUBATOR/NuttXProposal


Thanks,


Junping

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message