I think this emphasizes the point that we need to understand and document a release requirements and procedure that is 100% consistent with Apache requirements BEFORE we begin having low level discussions on how to implement that release procedure. ...

I think that the first question we would need to answer in a discussion of the releases is, "What is the form of the release that is seen by the user?"  In the past, that was:

1. Two separate versioned tarballs, one for apps/ and one for nutts/
2. ReleaseNotes, and
3. A tagged repository.

The creation of the tarballs was done by the script tools/zipme.sh.  That script requires the version number and the commit  UID at the HEAD of the nuttx/ repository (addressing Justin's concern with tags).  It generates the tarballs and also a .version file in the root.  That .version file contains the versioning information in various formats as well as the UID. The .version file is directly include-able by scripts and Makefile fragments.  At build time, the .version is used to create an include/nuttx/version.h header file making the version information available to C and C++ code as well.

Releases were posted on SourceForge and Bitbucket download areas.  Release announcements were made in the NuttX Google group and in the LinkedIn NuttX group.

That is what the world is used to.  Do you see things that should change?  Probably the repository tags would become branches and locations where releases are available would change.  But other than that, is there any reason why anything else change? Certainly, there should be no artificial coupling been apps/ and nuttx/.  I believe that those must stay independent.

Does Apache have any requirements that we must follow for how releases are made available?

Greg



Reply via email to