You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@nuttx.apache.org by Gregory Nutt <sp...@gmail.com> on 2019/12/12 18:36:57 UTC
Project Emails
[Moved to the dev list. Was Re: Access to private email archive ].
> People should send patches to dev@.
Other projects have additional emails, often user[s] and issues, often
many more: https://mail-archives.apache.org/mod_mbox/
I am personally used to having a one-email-for-everything, but it looks
like additional emails could be used if the PPMC decides to do that.
We are actually starting with a sub-project. We probably should discuss
that.
A NuttX release consists of two tarballs nuttx/ and apps/. nuttx/ is the
operating system proper; apps/ is a collection of applications that may
or maynot be used with the operating system proper. These applications
including some key things and I think most people want to incorporate
some subset of applications into their project.
But since the applications are NOT part of the operating system they do
need to remain separate. I would argue against trying to merge
application code into the operating system. So I think we have to
consider these two separate releases. We historically release them
together as a matched pair so that the use can be user that they
interoperate properly.
Back to emails... separating application-related discussions from core
OS discussions might be something worth considering. Some projects also
have separate commits mail lists for commits to the two repositories.
For example, the lucene project has commits, c-commits, java-commits,
pylucene-commits, and solr-commits. I assume that thes are all
sub-projects.
Greg
Project Repositories
Posted by Gregory Nutt <sp...@gmail.com>.
The current NuttX project at https://bitbucket.org/nuttx/ consists of
five respositories. We will need to understand how each of these
repositories will be handled under Apache.
* nuttx/ This is the operating system. It is only the operating
system. It is complete and usable with no dependency on any other
repsitory
* apps/ This is a optional collection of user-space applications and
libraries that may be used with nuttx/. Most people use at least
parts of the apps/ to create their full embedded application.
The above two repositories are the parts of NuttX that will be included
as Apache NuttX and will be changed to Apache licensing. I think they
would be sub-projects of NuttX. The remaining three repositories are
supporting tool repositories that are essential to supporting and using
NuttX but have GPL licenses and cannot be released under the Apache license:
* buildroot/ derives from the "real" buildroot at
https://buildroot.uclibc.org/ and is used for building (mostly) GPL
tools like GCC cross-compiler, genromfs, and kconfig-frontends for
NuttX.
* tools/ Contains miscellaneous sources for tools and scripts used
with NuttX.
* uClib++ holds and older pre-C++11 C++ library that is tailored to
work with NuttX
There is a more contemporary C++11 library that probably should also be
included in the discussion. It resides at
https://bitbucket.org/acassis/libcxx/src/master/ and is described
here: https://nuttx.org/doku.php?id=wiki:nshhowtos:llvm-stdcxx
These build tools must reside at some location that has close
availability with to the Apache NuttX code. Nothing in these GPL
repositories is ever delivered with the NuttX releases. There are only
references in the documentation to these repositories as steps to
building and installing the operating system. Should these be
maintained completely separately from the Apache NuttX code? Or should
the reside in the Apache NuttX github area? My understanding is that
there is a precedence for including GPL support tools in Apache github
repositories:
* https://www.apache.org/legal/resolved.html#build-tools
* https://www.apache.org/legal/resolved.html#optional
We will need to revisit this in the coming weeks.
Greg
Re: Atomic git tagging (was RE: Project Emails)
Posted by Alin Jerpelea <je...@gmail.com>.
Hi all,
I am against submodules !
If we implement submodules things will be harder on downstream projects
we guided downstream projects to integrate their own apps folder and
include our apps in their apps
http://www.nuttx.org/doku.php?id=wiki:nshhowtos:external-applications
Regards
Alin
On Fri, Dec 13, 2019 at 10:12 AM David Sidrane <Da...@nscdg.com>
wrote:
> Greg,
>
> I think the below steps will do a an atomic tag/branch (Branch protections
> may be needed as well)
>
> However, it exemplifies why Submodules are evil but useful. A much simpler
> approach is 2 folder is the same project - I am aware of ALL the arguments
> -
> I agree with most of them but there are dependency on nuttx to apps from
> all
> the defconfig files and nsh)
>
> First question I would poll the community is: "How many of you do not use
> the apps folder?"
>
> ------
>
> NuttX - is the Knot repo.
> Apps is a sub module
> Nuttx is a sub module
>
> origin is the remote for NuttX, apps and nuttx
>
> cd NuttX
> git checkout master
> git submodule sync --recursive && git submodule update --init --recursive
>
> git checkout -b master_imx_network_fixes
> cd nuttx
> git checkout -b master_imx_network_fixes
> cd ../apps
> git checkout -b master_imx_network_fixes
>
> cd ../nuttx
> Do all your changes.
> git add ...
> git commit ...
> git push origin master_imx_network_fixes
>
> cd ../apps
> Do all your changes.
> git add ...
> git commit ...
> git push origin master_imx_network_fixes
>
> cd .. (NuttX)
> git add apps nuttx
> git commit ...
>
> git tag -a nuttx-yada -m "my version 1.4"
> git push origin nuttx-yada
> ----
>
>
> David
>
> -----Original Message-----
> From: Gregory Nutt [mailto:spudaneco@gmail.com]
> Sent: Thursday, December 12, 2019 7:05 PM
> To: dev@nuttx.apache.org
> Subject: Re: Project Emails
>
>
> > How about sub modules? We atomically tag across both to keep the project
> > in
> > proper synchronization.
>
> Some of these things are difficult to discuss at this point in time
> because we not have enough Apache knowledge and experience. What I have
> seen from following the release emails is the release will go through
> several release candidates before before a final release is made.
> Tagging releases as NuttX did in the past won't support that. I believe
> that you would have to use branches to support a series of release
> candidates until the release is made (and perhaps even to support
> further releases on the branch for bug fixes).
>
> We can't really branch across sub-modules, can we? I think we need to
> know much more before we could take any clear position on this.
>
> Greg
>
Re: Atomic git tagging (was RE: Project Emails)
Posted by Gregory Nutt <sp...@gmail.com>.
>> No, the APPSDIR is configure-able. The default configurations all use
>> ../apps/ for APPSDIR because there are not other apps in the
>> repositores. There have been many discussions on the old forums on how
>> to use custom applications, so I know end users actually do that. I
>> know, for example, that many users do not use NSH (which the most
>> popular thing in apps/).
>>
>> Consider also:
>>
>> http://www.nuttx.org/doku.php?id=wiki:nshhowtos:external-applications
>> http://www.nuttx.org/doku.php?id=wiki:nshhowtos:custom-appsdir
> +1.
>
> Case in point: Some of my boards use NSH, others don't, depending
> on the application.
Many people people using NuttX in deeply embedded control systems with
no possibility of a UI use NuttX with no NSH, and presumably with no
apps/ since there is little in apps/ relevant to that kind of system.
apps/ needs to be an option that you can use with complete flexibility
with apps/, with contained apps, with extended apps/, with replacement
apps/, ... basically as described in the first reference above.
>> The PPMC should
>> make all decisions based on sound reasonbing. I personally would be
>> very opposed to anything which corrupts the clean OS architecture by
>> coupling it with any application.
> +1.
>
> It is *crucial* to keep that clean OS architecture.
>
> More below...
Absolutely. We are all professionals. That is a fundamental
responsibility of being a professional.
>
> Before we can ever make a release, we first have to answer the
> question of how do changes even get committed?
>
> This is a question of project policies, which should be discussed,
> decided upon, and very importantly: documented.
>
> We shouldn't rush to come up with a policy. Rather, we should study
> the policies of other Apache.org projects to get some ideas first. For
> example, are we CTR (Commit Then Review) or RTC (Review Then Commit)?
> Do we have a mix of these two types depending on the area of the
> repository? Perhaps drivers (like SPI drivers for a particular MCU) or
> architectural support (where it is likely that only one of us has
> expertise in that particular architecture) are CTR, whereas changes
> that affect the core OS or build system require RTC with a vote and
> three +1s and no -1s to get merged. (For the build system we should
> require more PMC votes than we have PMC members!! Just kidding.)
I wonder if it would be of value to have some dialog with Mynewt. They
deal with releases from multiple GIT repositories and have a lot in
common with NuttX. In my contacts with Mynewt folk in the past, they
were friendly and helpful.
We do have to come up with some basic workflow for how a patch that
appears in dev@nuttx.apache.org gets reviewed, verified, approved and
incorporated onto the master. The time when we need that basic workflow
is days away. We need to agree on the sequence of events that must
occur (not on tools and implementations of those events). It is likely
that we might have to have a sub-team managing the workflow manually
until we are fully tooled up.
Greg
Re: Atomic git tagging (was RE: Project Emails)
Posted by David Alessio <da...@gmail.com>.
WRT to this build issue, it used to work without a git repo. Disclaimer:
I responsible for the original commit, a portion of which Greg reverted
today...
This is a good opportunity to discuss a larger topic -- this is just one
instance of a class of problems that can be minimized [or even avoided]
with the proper process.
I believe that process should be based on the best practices of Bitbucket,
Github, and git. I may be stating the obvious here, but I'd like to
suggest the following few simple rules:
1. Master should always build and, to the extent possible, "just work
right."
2. all development happens on a specific development branch for one
particular feature or bug. Features are developed on a branch named
"feature/<some-cool-thing>". Bug fixes are developed on a branch named
"bugfix/<one-specific-bug>". Branches and commits must be coherent with
minimal coupling.
Note: This is important so that commits can be cherry-picked into
other branches and back-ported as hotfixes to previous releases.
3. A pull request triggers a review (review committees TBD according to
domain). A successful review might be N approvals and no rejections. In
any case, the testing, debate, and correction happens on that branch before
merge.
4. releases could be managed similarly, as a branch off of Master, i.e.
"release/9.1" (we're at 8.2.* IIRC). If a bug is then discovered in 9.1,
a branch "hotfix/some-silly-bug" would be taken off "release/9.1"
Comments? [donning flame retardant suit]
Cheers,
-david
On Fri, Dec 13, 2019 at 1:23 PM Nathan Hartman <ha...@gmail.com>
wrote:
> To add to the patch-to-merge workflow discussion, an anecdote.
>
> Earlier today I jokingly wrote "For the build system we should
> require more PMC votes than we have PMC members!!"
>
> Soon after, I grabbed the latest updates and tried to build my
> configurations and... the build was broken!
>
> I wrote:
>
> [[[
>
> Uh oh, commit 1c91aec6ae77b49608741e5aa30b8b6876017934 ("tools/ and
> fs/procfs: Simplify .version file generation") breaks the build if
> not in a git clone:
>
> $ make
> Create .version
> fatal: not a git repository (or any parent up to mount point /home/nate)
> Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).
> Missing versioning information
> USAGE: tools/version.sh [-d|-h] [-b <build>] [-v <major.minor>]
> <outfile-path>
> Try 'tools/version.sh -h' for more information
> make: *** [tools/Makefile.unix:266: /home/nate/nuttx/.version] Error 1
>
> If git is not available or building a copy of NuttX which is not a git
> clone, the create version logic should degrade gracefully in a way
> that does not break the build!
>
> ]]]
>
> Thankfully, Greg fixed this at warp speed with commits
> 3e4450e2376bb99da2ed5a3f0380044ce868e564 and
> 10b8c01abfa58276f006c282e1d88481fb0a4a8e.
>
> The point is, though, that this is precisely why we need to qualify
> what gets into the system. I feel pretty strongly that we can be
> flexible with things like drivers, hacking on architectural support
> for new chips and boards, etc. The impact of bugs or incomplete code
> there will be minimal and those are easy to catch and fix. I would
> like to make it easy for contributors to get their code out there and
> to feel like there's incentive to contribute, and not to put too many
> roadblocks in the way that would become a deterrent for contributors.
>
> BUT!!
>
> The core of the OS and the build system need the highest level of
> qualification. Screwups there are really disruptive!
>
> Problems in the build system might quickly become apparent.
>
> Problems in the core OS could go undetected until intermittent
> problems that are extremely hard to trace appear in the field. Since
> NuttX goes to places like space, "in the field" might be kind of,
> slightly, REALLY far away!
>
> So we definitely need to continue discussing what process changes to
> these critical parts should undergo on their way into NuttX.
>
> Cheers,
> Nathan
>
Re: Atomic git tagging (was RE: Project Emails)
Posted by Gregory Nutt <sp...@gmail.com>.
> .... I am trying to get everything moved to apache.org, bit at a
> time. Slack channels are shutting down, the word is slowly getting out
> in the Google group. ..
I have removed the Slack application from most of my machines. I have
deactivated the accounts of all Inactive members. I will no longer
login -- except to deactivate members as they become inactive. When all
members are dactivated, I will delete the Slack altogether. People just
have to stop using it and I will assure that it goes aware in its entirety.
Greg
Re: Atomic git tagging (was RE: Project Emails)
Posted by Gregory Nutt <sp...@gmail.com>.
Hi, Justin
>> No, AFAIK, no SGA's have been filed. The wording here is https://incubator.apache.org/guides/ip_clearance.html is unclear to me under "Establishing Provenance". Contributor in this case refers to copyright holders, I assume?
> This only applies to code you are giving to the ASF (it’s actually not a transfer of copyright but permission to use), so this would only be the code owned by the NuttX project. It doesn’t include 3rd party code in the repo. The headers on those files owned by NuttX will change, but the headers of any 3rd party code will need to stay the same.
>
> I think the first step if for you to fill out a SGA and will discuss on legal discuss if anything else is needed. I think because you were the only person with commit right and the headers with your copyright that’s all that would be required.
>
>> There are several files that will require corporate CLAs, I think, since the copy right holders are businesses like Sony or Pinecone.
> That’s not required as they are 3rd party files and belong to someone else. CCLA in general are not needed by the ASF, they are there because some companies require them for their employees to be able to work on OS software.
The signed SGA has been sent to secretary@apache.org. I do you yet have
any confirmation. So I think we can arrange the transfer of the
repositories as soon as possible.
Thanks for all of your help. We really need it!
Greg
Re: Atomic git tagging (was RE: Project Emails)
Posted by Gregory Nutt <sp...@gmail.com>.
I will send the SGA this weekend.
Also I am going to try to decouple better. It is not because I am
trying be the BDFL, it is just in my nature to "mother hen" software
projects. I will be detach and I will let the PPMP form itself with
less influence from me. I will try to continue to help when I can, but
the PPMC must sink or swim based on the focus and motivation of the
people who wanted to be members, not on my urging.
If I am successful, you will hear less from me on these topics.
Greg
On 12/13/2019 5:17 PM, Justin Mclean wrote:
> Hi,
>
>> No, AFAIK, no SGA's have been filed. The wording here is https://incubator.apache.org/guides/ip_clearance.html is unclear to me under "Establishing Provenance". Contributor in this case refers to copyright holders, I assume?
> This only applies to code you are giving to the ASF (it’s actually not a transfer of copyright but permission to use), so this would only be the code owned by the NuttX project. It doesn’t include 3rd party code in the repo. The headers on those files owned by NuttX will change, but the headers of any 3rd party code will need to stay the same.
>
> I think the first step if for you to fill out a SGA and will discuss on legal discuss if anything else is needed. I think because you were the only person with commit right and the headers with your copyright that’s all that would be required.
>
>> There are several files that will require corporate CLAs, I think, since the copy right holders are businesses like Sony or Pinecone.
> That’s not required as they are 3rd party files and belong to someone else. CCLA in general are not needed by the ASF, they are there because some companies require them for their employees to be able to work on OS software.
>
> Thanks,
> Justin
Re: Atomic git tagging (was RE: Project Emails)
Posted by Justin Mclean <ju...@classsoftware.com>.
Hi,
> No, AFAIK, no SGA's have been filed. The wording here is https://incubator.apache.org/guides/ip_clearance.html is unclear to me under "Establishing Provenance". Contributor in this case refers to copyright holders, I assume?
This only applies to code you are giving to the ASF (it’s actually not a transfer of copyright but permission to use), so this would only be the code owned by the NuttX project. It doesn’t include 3rd party code in the repo. The headers on those files owned by NuttX will change, but the headers of any 3rd party code will need to stay the same.
I think the first step if for you to fill out a SGA and will discuss on legal discuss if anything else is needed. I think because you were the only person with commit right and the headers with your copyright that’s all that would be required.
> There are several files that will require corporate CLAs, I think, since the copy right holders are businesses like Sony or Pinecone.
That’s not required as they are 3rd party files and belong to someone else. CCLA in general are not needed by the ASF, they are there because some companies require them for their employees to be able to work on OS software.
Thanks,
Justin
Re: Atomic git tagging (was RE: Project Emails)
Posted by Gregory Nutt <sp...@gmail.com>.
> Has the SGA been filled in and submitted?
No, AFAIK, no SGA's have been filed. The wording here is
https://incubator.apache.org/guides/ip_clearance.html is unclear to me
under "Establishing Provenance". Contributor in this case refers to
copyright holders, I assume? The BSD headers list only copy right
holders and authors. I suppose on the copyright holder can contribute
software. Often there are numerous authors but only one copyright holder.
Well, the good news is this will slow things down quite a bit so next is
probably not the week that the Tsunami hits.
There are several files that will require corporate CLAs, I think, since
the copy right holders are businesses like Sony or Pinecone.
The PPMC needs to take this up and coordinate it.
Re: Atomic git tagging (was RE: Project Emails)
Posted by Justin Mclean <ju...@classsoftware.com>.
Hi,
> that we are playing chicken with putting critical processes in place and making the transition to Apache repositories. That transition supposed to happen next week, right?
It happens when the PPMC decided for it to happen. But first the SGA needs to de accepted [1] and then we may need to talk about if we need ICLA from the contributors or not.[2]
Has the SGA been filled in and submitted?
Thanks,
Justin
1, https://www.apache.org/licenses/contributor-agreements.html#grants
2. https://www.apache.org/licenses/contributor-agreements.html#clas
Re: Atomic git tagging (was RE: Project Emails)
Posted by Gregory Nutt <sp...@gmail.com>.
>> So where in Apache is an appropriate place to put shared documents, the Apache public equivalent of my shared drive? I have been trying to scare people into action on this workflow here for days now, but I guess this a brave group or just completely blind to what is coming.
> Best place is confluence. We would need to set up a space for NuttX but that’s easily done. Do you want me to go ahead and do that?
I'll let others decide. My Google drive is not appropriate, I know
that. It might be more practical in a short term, however, since we
don't know how to use Confluence yet. I am trying to get everything
moved to apache.org, bit at a time. Slack channels are shutting down,
the word is slowly getting out in the Google group. In this case, I am
concerned that we are playing chicken with putting critical processes in
place and making the transition to Apache repositories. That transition
supposed to happen next week, right?
We made an agreement just before the proposal went up for vote that we
would make the transition from the Bitbucket to Apache repositories
"knife edge": The Bitbucket repositories will stop being updated as
synchronously as possible to the time when the Apache repositories go
online.
What do you all recommend? I will concur with whatever is the general
feeling in the PPMC.
Re: Atomic git tagging (was RE: Project Emails)
Posted by Gregory Nutt <sp...@gmail.com>.
> What is coming is 10-30 patches per day. When the Apache repositories
> are set up. I will cease processing all changes. All PRs and patches
> that I receive will be forwarded to this email. It is then the PPMC's
> total responsibility to deal with them. Drop the ball for one day and
> you will be behind 10-30 commits. Drop the ball for ten more days and
> you will be 100-300 commits behind. That will be a crisis!
There are slower times and busier times for commits. It changes like
the seasons. It changes during the week as well. Fridays, Saturdays,
and Sundays are usually lighter. Today, Friday the 13th, there were
only 8 commits.
Re: Confluence/Repos (Was Atomic git tagging)
Posted by Alan Carvalho de Assis <ac...@gmail.com>.
Hi Justin,
On 12/14/19, Justin Mclean <ju...@classsoftware.com> wrote:
> Hi,
>
>> Hehe.. nutty-apps :-D
>
> That was autocorrect I think. It was [1] so I didn’t mistype it when
> creating it this time :-)
>
Great! Thank you!
BR,
Alan
Re: Confluence/Repos (Was Atomic git tagging)
Posted by Justin Mclean <ju...@classsoftware.com>.
Hi,
> Hehe.. nutty-apps :-D
That was autocorrect I think. It was [1] so I didn’t mistype it when creating it this time :-)
Thanks,
Justin
1. https://gitbox.apache.org/repos/asf?p=incubator-nuttx-apps.git
Re: Confluence/Repos (Was Atomic git tagging)
Posted by Gregory Nutt <sp...@gmail.com>.
>> Justin, do you mind to rename it from app to apps ?
> I’ve created an incubator-nutty-apps one and asked Infra how to remove the other one.
Hehe.. nutty-apps :-D
There are some pretty crazy applications in there.
G
Re: Confluence/Repos (Was Atomic git tagging)
Posted by Justin Mclean <ju...@classsoftware.com>.
Hi,
> Justin, do you mind to rename it from app to apps ?
I’ve created an incubator-nutty-apps one and asked Infra how to remove the other one.
Thanks,
Justin
Re: Confluence/Repos (Was Atomic git tagging)
Posted by Justin Mclean <ju...@classsoftware.com>.
Hi,
> There would be less confusion if the repository were called apps instead of nuttx-apps[s], but it appears the the project name on the front of the repository is an Apache convention.
Yes as is incubating for incubating projects.
> In the release tarballs, the names have been apps-x.y/ and nuttx-x.y/ where x.y is the major.minor version number.
You can number your releases however you want. The name does need to number “incubating” and it’s a good idea to also put “apache” in there so something like apache-nuttx-incubating-x.y.tag,gz and apache-nuttx-apps-incubating-x.y.tag,gz would be fine. But other variations on this would also be fine.
Thanks,
Justin
Re: Confluence/Repos (Was Atomic git tagging)
Posted by Gregory Nutt <sp...@gmail.com>.
Alan,
> Hmm, I think it could create some confusion because all docs and even the
> build system expects to find the applications directory at ../apps/
>
> Justin, do you mind to rename it from app to apps ?
You note that the git clone with no argument will create nuttx-app/ (or
nuttx-apps/), right? So there is going to be confusion in any event.
nuttx-apps/ is a little closer to expectations, however. The directory
name can, of course, be set to anything you like in the 'git clone' command.
There would be less confusion if the repository were called apps instead
of nuttx-apps[s], but it appears the the project name on the front of
the repository is an Apache convention.
In the release tarballs, the names have been apps-x.y/ and nuttx-x.y/
where x.y is the major.minor version number. I suppose that those are
not affected (other than we will likely need to go to an x.y.z version
number where z is the revision number.
Greg
Re: Confluence/Repos (Was Atomic git tagging)
Posted by Alan Carvalho de Assis <ac...@gmail.com>.
Hi Greg and Justin,
On Saturday, December 14, 2019, Gregory Nutt <sp...@gmail.com> wrote:
>
>> So I created:
>> https://gitbox.apache.org/repos/asf/incubator-nuttx.git
>> https://gitbox.apache.org/repos/asf/incubator-nuttx-app.git
>
> At nit: Historically, the directory is call apps/ not app/. That is the
way it is referred to in all of the documentation of and the consciousness
of NuttX users.
>
> But I am flexible if others are too.
>
Hmm, I think it could create some confusion because all docs and even the
build system expects to find the applications directory at ../apps/
Justin, do you mind to rename it from app to apps ?
BR,
Alan
Re: Confluence/Repos (Was Atomic git tagging)
Posted by Gregory Nutt <sp...@gmail.com>.
> So I created:
> https://gitbox.apache.org/repos/asf/incubator-nuttx.git
> https://gitbox.apache.org/repos/asf/incubator-nuttx-app.git
At nit: Historically, the directory is call apps/ not app/. That is the
way it is referred to in all of the documentation of and the
consciousness of NuttX users.
But I am flexible if others are too.
Re: Confluence/Repos (Was Atomic git tagging)
Posted by Justin Mclean <ju...@classsoftware.com>.
HI,
I created the repos there was an issue in that it didn’t like incubator-nuttx-nuttx, which I guess is a bit silly.
So I created:
https://gitbox.apache.org/repos/asf/incubator-nuttx.git
https://gitbox.apache.org/repos/asf/incubator-nuttx-app.git
You can see the mirror repos here:
https://github.com/apache?q=nuttx
You can use the above GitHub clones or you can use the Apache ones, everything syncs up between them.
To use the GitHub one you need to sync your accounts as described here [1]
Thanks,
Justin
1. https://gitbox.apache.org
Re: Confluence/Repos (Was Atomic git tagging)
Posted by Justin Mclean <ju...@classsoftware.com>.
Hi,
> I am unsure of the terminology "report". I assume this is the name of the GIT repository? For consistency, the name of the repositories should be apps/ and nuttx/.
Sorry I meant repos. I’ll go ahead and create them.
Thanks,
Justin
Re: Confluence/Repos (Was Atomic git tagging)
Posted by Gregory Nutt <sp...@gmail.com>.
>> This doesn't seem to accept my LDAP credentials. Actually, it does. I can log in but I don't seem to have authority to do anything.
> Fixed - any NuttX committer will now be able to add/edit/comment on pages. Opening it wider than that may attract spam.
Thanks!
I had to limit the DocuWiki's too. Not because I wanted to, but because
it was constantly under attack. One day I noticed 37 thousand+ new
subscribers in a span a a couple of weeks.
>
>> Now that the SGA has been filed we can also request that the repositories be set up well, correct?
> They are easy to set up, from the other documentation it seems we want two reports right. what should they be called?
I am unsure of the terminology "report". I assume this is the name of
the GIT repository? For consistency, the name of the repositories
should be apps/ and nuttx/.
Greg
Re: Confluence/Repos (Was Atomic git tagging)
Posted by Justin Mclean <ju...@me.com.INVALID>.
Hi,
> This doesn't seem to accept my LDAP credentials. Actually, it does. I can log in but I don't seem to have authority to do anything.
Fixed - any NuttX committer will now be able to add/edit/comment on pages. Opening it wider than that may attract spam.
> Now that the SGA has been filed we can also request that the repositories be set up well, correct?
They are easy to set up, from the other documentation it seems we want two reports right. what should they be called?
Thanks,
Justin
Confluence/Repos (Was Atomic git tagging)
Posted by Gregory Nutt <sp...@gmail.com>.
Hi, Justin
> I really don’t think there will be any issues doing both in parallel so I’ve created a confluence space here:
> https://cwiki.apache.org/confluence/display/NUTTX
Thanks!
This doesn't seem to accept my LDAP credentials. Actually, it does. I
can log in but I don't seem to have authority to do anything.
>
>> I have heard that the INFRA team has some special kung-fu for importing Wikis into confluence. I hope they can handle an old DocuWiki site.
>>
>> Is there any way that could be expedited?
> For thing like this the process is to raise an JIRA ticket for Infra. I’ve just raised one here:
> https://issues.apache.org/jira/browse/INFRA-19570
Thanks again!
Now that the SGA has been filed we can also request that the
repositories be set up well, correct?
Greg
Re: Atomic git tagging (was RE: Project Emails)
Posted by Justin Mclean <ju...@classsoftware.com>.
Hi,
I really don’t think there will be any issues doing both in parallel so I’ve created a confluence space here:
https://cwiki.apache.org/confluence/display/NUTTX
> I have heard that the INFRA team has some special kung-fu for importing Wikis into confluence. I hope they can handle an old DocuWiki site.
>
> Is there any way that could be expedited?
For thing like this the process is to raise an JIRA ticket for Infra. I’ve just raised one here:
https://issues.apache.org/jira/browse/INFRA-19570
Thanks,
Justin
Re: Atomic git tagging (was RE: Project Emails)
Posted by Gregory Nutt <sp...@gmail.com>.
>> Is there reason for me to be concerned?
> Unfortunately, yes. As much as I like Confluence, if not properly
> organized and managed, it can quickly grow into an unnavigable mess.
> I suppose it's like anything else we do, it requires a process and
> disciplined maintainer...
Then I think we should not use Confluence until we have the Wiki
framework in place.
I have heard that the INFRA team has some special kung-fu for importing
Wikis into confluence. I hope they can handle an old DocuWiki site.
Is there any way that could be expedited?
Re: Atomic git tagging (was RE: Project Emails)
Posted by Justin Mclean <ju...@classsoftware.com>.
Hi,
> The original plan was to integrate the existing DocuWiki at nuttx.org to Confluence. If we begin using Confluence in an ad hoc way then I have some concern that it will interfere with the clean port of the existing Wiki.
I don’t think there will be any issues along those lines, any new pages can be moved into an any imported space.
Thanks,
Justin
Re: Atomic git tagging (was RE: Project Emails)
Posted by Alan Carvalho de Assis <ac...@gmail.com>.
On 12/13/19, Justin Mclean <ju...@classsoftware.com> wrote:
> Hi,
>
>> Do you know know project which did it in the past?
>
> Not from DocuWiki that I’m aware of. A search of the entire ASF mail
> archives [1] didn’t find anything.
>
> Let wait until Infra get back to us - that may take a day or two.
>
Right, thank you again.
BR,
Alan
Re: Atomic git tagging (was RE: Project Emails)
Posted by Justin Mclean <ju...@classsoftware.com>.
Hi,
> Do you know know project which did it in the past?
Not from DocuWiki that I’m aware of. A search of the entire ASF mail archives [1] didn’t find anything.
Let wait until Infra get back to us - that may take a day or two.
Thanks,
Justin
1. https://lists.apache.org/search.html
Re: Atomic git tagging (was RE: Project Emails)
Posted by Alan Carvalho de Assis <ac...@gmail.com>.
Hi Justin,
On 12/13/19, Justin Mclean <ju...@classsoftware.com> wrote:
> Hi,
>
>> It appears there are a converter from DocuWiki to Confluence:
>> https://community.atlassian.com/t5/Answers-Developer-Questions/how-to-import-quot-dokuwiki-quot-to-confluence/qaq-p/526583
>
> Yep I noted that on the JIRA.
>
How could help in this process to migrate the DocuWiki?
Do you know know project which did it in the past?
BR,
Alan
Re: Atomic git tagging (was RE: Project Emails)
Posted by Justin Mclean <ju...@classsoftware.com>.
Hi,
> It appears there are a converter from DocuWiki to Confluence:
> https://community.atlassian.com/t5/Answers-Developer-Questions/how-to-import-quot-dokuwiki-quot-to-confluence/qaq-p/526583
Yep I noted that on the JIRA.
Thanks,
Justin
Re: Atomic git tagging (was RE: Project Emails)
Posted by Alan Carvalho de Assis <ac...@gmail.com>.
Hi Greg,
On 12/13/19, Gregory Nutt <sp...@gmail.com> wrote:
>
>> Absolutely, Confluence would be great -- it'd be good place to create
>> live
>> documents and tutorials that could evolve along with the code base...
>
> The original plan was to integrate the existing DocuWiki at nuttx.org to
> Confluence. If we begin using Confluence in an ad hoc way then I have
> some concern that it will interfere with the clean port of the existing
> Wiki. My hope is that we could have a clean Confluence website. Is
> there reason for me to be concerned?
>
It appears there are a converter from DocuWiki to Confluence:
https://community.atlassian.com/t5/Answers-Developer-Questions/how-to-import-quot-dokuwiki-quot-to-confluence/qaq-p/526583
BR,
Alan
Re: Atomic git tagging (was RE: Project Emails)
Posted by David Alessio <da...@gmail.com>.
> Is there reason for me to be concerned?
Unfortunately, yes. As much as I like Confluence, if not properly
organized and managed, it can quickly grow into an unnavigable mess.
I suppose it's like anything else we do, it requires a process and
disciplined maintainer...
On Fri, Dec 13, 2019 at 2:42 PM Gregory Nutt <sp...@gmail.com> wrote:
>
> > Absolutely, Confluence would be great -- it'd be good place to create
> live
> > documents and tutorials that could evolve along with the code base...
>
> The original plan was to integrate the existing DocuWiki at nuttx.org to
> Confluence. If we begin using Confluence in an ad hoc way then I have
> some concern that it will interfere with the clean port of the existing
> Wiki. My hope is that we could have a clean Confluence website. Is
> there reason for me to be concerned?
>
>
>
>
Re: Atomic git tagging (was RE: Project Emails)
Posted by Gregory Nutt <sp...@gmail.com>.
> Absolutely, Confluence would be great -- it'd be good place to create live
> documents and tutorials that could evolve along with the code base...
The original plan was to integrate the existing DocuWiki at nuttx.org to
Confluence. If we begin using Confluence in an ad hoc way then I have
some concern that it will interfere with the clean port of the existing
Wiki. My hope is that we could have a clean Confluence website. Is
there reason for me to be concerned?
Re: Atomic git tagging (was RE: Project Emails)
Posted by David Alessio <da...@gmail.com>.
Absolutely, Confluence would be great -- it'd be good place to create live
documents and tutorials that could evolve along with the code base...
On Fri, Dec 13, 2019 at 2:02 PM Justin Mclean <ju...@classsoftware.com>
wrote:
> Hi,
>
> > So where in Apache is an appropriate place to put shared documents, the
> Apache public equivalent of my shared drive? I have been trying to scare
> people into action on this workflow here for days now, but I guess this a
> brave group or just completely blind to what is coming.
>
> Best place is confluence. We would need to set up a space for NuttX but
> that’s easily done. Do you want me to go ahead and do that?
>
> Thanks,
> Justin
Re: Atomic git tagging (was RE: Project Emails)
Posted by Justin Mclean <ju...@classsoftware.com>.
Hi,
> So where in Apache is an appropriate place to put shared documents, the Apache public equivalent of my shared drive? I have been trying to scare people into action on this workflow here for days now, but I guess this a brave group or just completely blind to what is coming.
Best place is confluence. We would need to set up a space for NuttX but that’s easily done. Do you want me to go ahead and do that?
Thanks,
Justin
Re: Atomic git tagging (was RE: Project Emails)
Posted by Gregory Nutt <sp...@gmail.com>.
> So we definitely need to continue discussing what process changes to
> these critical parts should undergo on their way into NuttX.
I think "continue" is generous. I don't think the discussion has
successfully even gotten off the ground. It is a looming crisis that is
going hit us like a Tsunami in just a handful of days. And there seems
to be no focused concern. There is feeble attempt at work flow
document on a shared Google drive (I just gave you access). But there
seems to be no interest. It is in terrible shape, it is incomplete and
unread-able. has had only three edits since it was created two weeks
ago. Clearly a lack of interest in digging in.
So where in Apache is an appropriate place to put shared documents, the
Apache public equivalent of my shared drive? I have been trying to
scare people into action on this workflow here for days now, but I guess
this a brave group or just completely blind to what is coming.
What is coming is 10-30 patches per day. When the Apache repositories
are set up. I will cease processing all changes. All PRs and patches
that I receive will be forwarded to this email. It is then the PPMC's
total responsibility to deal with them. Drop the ball for one day and
you will be behind 10-30 commits. Drop the ball for ten more days and
you will be 100-300 commits behind. That will be a crisis!
Re: Atomic git tagging (was RE: Project Emails)
Posted by Nathan Hartman <ha...@gmail.com>.
To add to the patch-to-merge workflow discussion, an anecdote.
Earlier today I jokingly wrote "For the build system we should
require more PMC votes than we have PMC members!!"
Soon after, I grabbed the latest updates and tried to build my
configurations and... the build was broken!
I wrote:
[[[
Uh oh, commit 1c91aec6ae77b49608741e5aa30b8b6876017934 ("tools/ and
fs/procfs: Simplify .version file generation") breaks the build if
not in a git clone:
$ make
Create .version
fatal: not a git repository (or any parent up to mount point /home/nate)
Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).
Missing versioning information
USAGE: tools/version.sh [-d|-h] [-b <build>] [-v <major.minor>] <outfile-path>
Try 'tools/version.sh -h' for more information
make: *** [tools/Makefile.unix:266: /home/nate/nuttx/.version] Error 1
If git is not available or building a copy of NuttX which is not a git
clone, the create version logic should degrade gracefully in a way
that does not break the build!
]]]
Thankfully, Greg fixed this at warp speed with commits
3e4450e2376bb99da2ed5a3f0380044ce868e564 and
10b8c01abfa58276f006c282e1d88481fb0a4a8e.
The point is, though, that this is precisely why we need to qualify
what gets into the system. I feel pretty strongly that we can be
flexible with things like drivers, hacking on architectural support
for new chips and boards, etc. The impact of bugs or incomplete code
there will be minimal and those are easy to catch and fix. I would
like to make it easy for contributors to get their code out there and
to feel like there's incentive to contribute, and not to put too many
roadblocks in the way that would become a deterrent for contributors.
BUT!!
The core of the OS and the build system need the highest level of
qualification. Screwups there are really disruptive!
Problems in the build system might quickly become apparent.
Problems in the core OS could go undetected until intermittent
problems that are extremely hard to trace appear in the field. Since
NuttX goes to places like space, "in the field" might be kind of,
slightly, REALLY far away!
So we definitely need to continue discussing what process changes to
these critical parts should undergo on their way into NuttX.
Cheers,
Nathan
Re: Atomic git tagging (was RE: Project Emails)
Posted by Nathan Hartman <ha...@gmail.com>.
On Fri, Dec 13, 2019 at 8:05 AM Gregory Nutt <sp...@gmail.com> wrote:
> Let's fully understand the release process before proposing a solution.
+1.
More below...
> No, the APPSDIR is configure-able. The default configurations all use
> ../apps/ for APPSDIR because there are not other apps in the
> repositores. There have been many discussions on the old forums on how
> to use custom applications, so I know end users actually do that. I
> know, for example, that many users do not use NSH (which the most
> popular thing in apps/).
>
> Consider also:
>
> http://www.nuttx.org/doku.php?id=wiki:nshhowtos:external-applications
> http://www.nuttx.org/doku.php?id=wiki:nshhowtos:custom-appsdir
+1.
Case in point: Some of my boards use NSH, others don't, depending
on the application.
More below...
> The PPMC should
> make all decisions based on sound reasonbing. I personally would be
> very opposed to anything which corrupts the clean OS architecture by
> coupling it with any application.
+1.
It is *crucial* to keep that clean OS architecture.
More below...
> This discussion is really all about a proposed shortcut for a release (a
> release that we do not yet understand). I would say two things about
> that: (1) I don't think we should take shortcuts to releases (and we
> certainly should not sacrifice the integrity of the OS just to use a
> shortcut) -- that is one of the "enemies" of good system design. And
> (2) we really need to understand and document the release procedure
> BEFORE we begin proposing solutions, especially solutions that have long
> reachable negative impacts.
>
> Tradeoffs are a necessary part of getting things done and all trade-offs
> involve compromising between two things, one that you like and one that
> you dont like. We may have to compromise things to achieve what we
> want, but now is not the time. But remember that "premature
> optimization is the root of all evil."
Before we can ever make a release, we first have to answer the
question of how do changes even get committed?
This is a question of project policies, which should be discussed,
decided upon, and very importantly: documented.
We shouldn't rush to come up with a policy. Rather, we should study
the policies of other Apache.org projects to get some ideas first. For
example, are we CTR (Commit Then Review) or RTC (Review Then Commit)?
Do we have a mix of these two types depending on the area of the
repository? Perhaps drivers (like SPI drivers for a particular MCU) or
architectural support (where it is likely that only one of us has
expertise in that particular architecture) are CTR, whereas changes
that affect the core OS or build system require RTC with a vote and
three +1s and no -1s to get merged. (For the build system we should
require more PMC votes than we have PMC members!! Just kidding.)
As an example, here's the document from my other Apache.org project:
https://subversion.apache.org/docs/community-guide/
That document covers coding conventions, release procedures, voting on
changes, and many other policy issues.
We can use that as a template of what needs to be covered in our
document.
Nathan
Re: Atomic git tagging (was RE: Project Emails)
Posted by Gregory Nutt <sp...@gmail.com>.
> I think the below steps will do a an atomic tag/branch (Branch protections
> may be needed as well)
Let's fully understand the release process before proposing a solution.
That sounds like a disaster.
> However, it exemplifies why Submodules are evil but useful. A much simpler
> approach is 2 folder is the same project - I am aware of ALL the arguments -
> I agree with most of them but there are dependency on nuttx to apps from all
> the defconfig files and nsh)
No, the APPSDIR is configure-able. The default configurations all use
../apps/ for APPSDIR because there are not other apps in the
repositores. There have been many discussions on the old forums on how
to use custom applications, so I know end users actually do that. I
know, for example, that many users do not use NSH (which the most
popular thing in apps/).
Consider also:
http://www.nuttx.org/doku.php?id=wiki:nshhowtos:external-applications
http://www.nuttx.org/doku.php?id=wiki:nshhowtos:custom-appsdir
I don't think simple is particularly strong argument.
> First question I would poll the community is: "How many of you do not use
> the apps folder?"
This is an internal architectural decision and I don't think it is an
issue that involves any kind of community vote. That is how we got
Trump, we get a dictatorship of the uninformed majority. The PPMC should
make all decisions based on sound reasonbing. I personally would be
very opposed to anything which corrupts the clean OS architecture by
coupling it with any application.
This discussion is really all about a proposed shortcut for a release (a
release that we do not yet understand). I would say two things about
that: (1) I don't think we should take shortcuts to releases (and we
certainly should not sacrifice the integrity of the OS just to use a
shortcut) -- that is one of the "enemies" of good system design. And
(2) we really need to understand and document the release procedure
BEFORE we begin proposing solutions, especially solutions that have long
reachable negative impacts.
Tradeoffs are a necessary part of getting things done and all trade-offs
involve compromising between two things, one that you like and one that
you dont like. We may have to compromise things to achieve what we
want, but now is not the time. But remember that "premature
optimization is the root of all evil."
Atomic git tagging (was RE: Project Emails)
Posted by David Sidrane <Da...@nscdg.com>.
Greg,
I think the below steps will do a an atomic tag/branch (Branch protections
may be needed as well)
However, it exemplifies why Submodules are evil but useful. A much simpler
approach is 2 folder is the same project - I am aware of ALL the arguments -
I agree with most of them but there are dependency on nuttx to apps from all
the defconfig files and nsh)
First question I would poll the community is: "How many of you do not use
the apps folder?"
------
NuttX - is the Knot repo.
Apps is a sub module
Nuttx is a sub module
origin is the remote for NuttX, apps and nuttx
cd NuttX
git checkout master
git submodule sync --recursive && git submodule update --init --recursive
git checkout -b master_imx_network_fixes
cd nuttx
git checkout -b master_imx_network_fixes
cd ../apps
git checkout -b master_imx_network_fixes
cd ../nuttx
Do all your changes.
git add ...
git commit ...
git push origin master_imx_network_fixes
cd ../apps
Do all your changes.
git add ...
git commit ...
git push origin master_imx_network_fixes
cd .. (NuttX)
git add apps nuttx
git commit ...
git tag -a nuttx-yada -m "my version 1.4"
git push origin nuttx-yada
----
David
-----Original Message-----
From: Gregory Nutt [mailto:spudaneco@gmail.com]
Sent: Thursday, December 12, 2019 7:05 PM
To: dev@nuttx.apache.org
Subject: Re: Project Emails
> How about sub modules? We atomically tag across both to keep the project
> in
> proper synchronization.
Some of these things are difficult to discuss at this point in time
because we not have enough Apache knowledge and experience. What I have
seen from following the release emails is the release will go through
several release candidates before before a final release is made.
Tagging releases as NuttX did in the past won't support that. I believe
that you would have to use branches to support a series of release
candidates until the release is made (and perhaps even to support
further releases on the branch for bug fixes).
We can't really branch across sub-modules, can we? I think we need to
know much more before we could take any clear position on this.
Greg
Re: Workflow and Release strategy Proposal (Was RE: Project Emails)
Posted by Justin Mclean <ju...@classsoftware.com>.
Hi,
> Does Apache have any requirements that we must follow for how releases are made available?
Yes they need to be placed in the ASF mirrors. Note that the word release has a particular meaning at the ASF and must contain only source code and voted on by a PMC.
Here’s the full release and distribution policies. [1][2]
Short version is that they need to be placed on http://www.apache.org/dist/incubator, the release candidates can go on https://dist.apache.org/repos/dist/dev/incubator/. Once voted on by the PPMC and the IPMC you can use svn mv to move a RC to the release area.
Thanks,
Justin
1. http://www.apache.org/legal/release-policy.html
2. https://www.apache.org/dev/release-distribution.html
Re: Workflow and Release strategy Proposal (Was RE: Project Emails)
Posted by Gregory Nutt <sp...@gmail.com>.
> 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
Re: Workflow and Release strategy Proposal (Was RE: Project Emails)
Posted by Gregory Nutt <sp...@gmail.com>.
> The proposal looks good but we should also consider if we want to support
> LTS maintenance releases containing bugfixed backported from mainline
It is the usual case that after you release code that within one or two
weeks after you release code, you discover embarrassing, gaping bugs. I
solved that in the past by just distributing a patch file with the
release tarballs. But I also got a lot of complaints about that; people
would prefer another one off release.
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. Alin's suggestion here could be
one of those requirements.
In the short term, it is more important to focus on the workflow for
accepting, qualifying, approving, and incorporating changes to the OS.
Those changes will be coming soon.. within days. We can defer the first
Apache NuttX release has long as we have to in order to get it right.
Getting it right is more important than getting it rapidly or getting it
easily. It is not the end of the world if we miss a release cycle.
When we discuss that patch-to-merge work flow, I think that the idea of
a repository with nuttx/ and apps/ as sub-modules makes perfectly good
sense, at least as a starting point for discussion. I personally don't
think it makes any sense for starting a discussion of the release
process. Perhaps it fits into the release process down the road, but it
makes a bad conversation starter.
+
Re: Workflow and Release strategy Proposal (Was RE: Project Emails)
Posted by Justin Mclean <ju...@me.com.INVALID>.
Hi,
> I think this is of secondary importance, but certainly any change to the documented use of NuttX should a factor that is taken into consideration. Ideally, the only user impact should be the URL used with the 'git clone' (or download).
In general you want to point users to official releases and not unreleased code. [1]
Thanks,
Justin
1. http://www.apache.org/legal/release-policy.html#publication
Re: Workflow and Release strategy Proposal (Was RE: Project Emails)
Posted by Justin Mclean <ju...@me.com.INVALID>.
Hi
We can have as many repos as we need and they are easy to set up via ASF self-serve. [1]
Thanks,
Justin
1. https://selfserve.apache.org
Re: Workflow and Release strategy Proposal (Was RE: Project Emails)
Posted by Xiang Xiao <xi...@gmail.com>.
I think we can keep apps and nuttx as two separate gits, mynewt even has dozen:
https://gitbox.apache.org/repos/asf?s=mynewt
It's enough to just change tag to branch for incoperating the potential bugfix.
Thanks
Xiang
On Fri, Dec 13, 2019 at 9:53 PM Gregory Nutt <sp...@gmail.com> wrote:
>
> Another thing to consider with the form of the release is that there an
> many, many documents, Wikis, READMEs, HowTos, blogs, and videos
> describing how to get started with NuttX. They all begin either 'git
> clone' apps/ and nuttx/ (or download the tarballs). Changing that means
> breaking a lot of things.
>
> I think this is of secondary importance, but certainly any change to the
> documented use of NuttX should a factor that is taken into
> consideration. Ideally, the only user impact should be the URL used
> with the 'git clone' (or download).
>
>
Re: Workflow and Release strategy Proposal (Was RE: Project Emails)
Posted by Justin Mclean <ju...@classsoftware.com>.
Hi,
> I did create a #nuttx channel in the ASF slack: https://app.slack.com/client/, but it has been recommended that we not use that Slack for communication either.
It’s fine to talk there but decisions need to be made on the mailing list. Real time communication excludes people who may not be in your time zone or may not be able to work on the project during their $dayjob, asynchronous communication (i.e email) is preferred as it allows everyone a chance to be involved. There are other good reason as well previously discussed.
While I'm a user of Slack and follow about 20 slack workspaces I'm not going to closely follow any NuttX slack channel, following the mailing list is all that should be needed o know what is going on in a project.
Thanks,
Justin
Re: Workflow and Release strategy Proposal (Was RE: Project Emails)
Posted by Gregory Nutt <sp...@gmail.com>.
>> Why would you want to shut down your slack space? Some projects use a
>> slack space and even the ASF has one: the-asf.slack.com
> I was asked to shut down all NuttX project communications that are not
> publicly visible. I have done that. It was a slow gradual phase out,
> described in the Google group.
I did create a #nuttx channel in the ASF slack:
https://app.slack.com/client/, but it has been recommended that we not
use that Slack for communication either.
Re: Workflow and Release strategy Proposal (Was RE: Project Emails)
Posted by Justin Mclean <ju...@classsoftware.com>.
HI,
> By who? Where is the vote?
Conversation in Apache projects need to be in the open, so I’m not sure that a vote in needed to shut down something not controlled by the Apache project that privately run.
Thanks,
Justin
RE: Workflow and Release strategy Proposal (Was RE: Project Emails)
Posted by David Sidrane <Da...@nscdg.com>.
By who? Where is the vote?
-----Original Message-----
From: Gregory Nutt [mailto:spudaneco@gmail.com]
Sent: Thursday, December 19, 2019 5:45 AM
To: dev@nuttx.apache.org
Subject: Re: Workflow and Release strategy Proposal (Was RE: Project Emails)
> Why would you want to shut down your slack space? Some projects use a
> slack space and even the ASF has one: the-asf.slack.com
I was asked to shut down all NuttX project communications that are not
publicly visible. I have done that. It was a slow gradual phase out,
described in the Google group.
Re: Workflow and Release strategy Proposal (Was RE: Project Emails)
Posted by Gregory Nutt <sp...@gmail.com>.
> Why would you want to shut down your slack space? Some projects use a slack space and even the ASF has one: the-asf.slack.com
I was asked to shut down all NuttX project communications that are not
publicly visible. I have done that. It was a slow gradual phase out,
described in the Google group.
Re: Workflow and Release strategy Proposal (Was RE: Project Emails)
Posted by Flavio Junqueira <fp...@apache.org>.
Greg,
Why would you want to shut down your slack space? Some projects use a slack space and even the ASF has one: the-asf.slack.com
-Flavio
> On 14 Dec 2019, at 00:46, Gregory Nutt <sp...@gmail.com> wrote:
>
>
>>> I suggest that we really need to get all discussions, participation,
>>> and contributions "under one roof" so to speak, at
>>> dev@nuttx.apache.org. I think the Slack, the Google Group, the
>>> LinkedIn Group, and any other forums that fragment participants,
>>> should wind up soon. Whenever we reply to a message there, we should
>>> remind people that those forums are deprecated and that they should
>>> join dev@nuttx.apache.org.
>>>
>> I think at least the LinkedIn group is not in this category of
>> removing users from the mailing list, quite the opposite. The LinkedIn
>> group goal is to advertise and show projects and products using NuttX.
>> Many people discovered NuttX thanks our announcements there. There is
>> not a discussion group in the Linkedin, but only a showcase for NuttX.
>
> The LinkedIn group really is a different creature. It has thousands of subscribers and close to no participation. Alan is essentially the only poster there.
>
> I am willing to shut down the Slack right now, at this moment. Every time I proposed doing that, people balk because there might be something of importance there. There might be, but it would be in a closed channel or a person-to-person conversation. I think it should go now, but I need support and concurrence to take that step.
>
> Just speak the words and it is gone.
>
Re: Workflow and Release strategy Proposal (Was RE: Project Emails)
Posted by Gregory Nutt <sp...@gmail.com>.
>> I suggest that we really need to get all discussions, participation,
>> and contributions "under one roof" so to speak, at
>> dev@nuttx.apache.org. I think the Slack, the Google Group, the
>> LinkedIn Group, and any other forums that fragment participants,
>> should wind up soon. Whenever we reply to a message there, we should
>> remind people that those forums are deprecated and that they should
>> join dev@nuttx.apache.org.
>>
> I think at least the LinkedIn group is not in this category of
> removing users from the mailing list, quite the opposite. The LinkedIn
> group goal is to advertise and show projects and products using NuttX.
> Many people discovered NuttX thanks our announcements there. There is
> not a discussion group in the Linkedin, but only a showcase for NuttX.
The LinkedIn group really is a different creature. It has thousands of
subscribers and close to no participation. Alan is essentially the only
poster there.
I am willing to shut down the Slack right now, at this moment. Every
time I proposed doing that, people balk because there might be something
of importance there. There might be, but it would be in a closed
channel or a person-to-person conversation. I think it should go now,
but I need support and concurrence to take that step.
Just speak the words and it is gone.
Re: Workflow and Release strategy Proposal (Was RE: Project Emails)
Posted by Nathan Hartman <ha...@gmail.com>.
On Fri, Dec 13, 2019 at 6:52 PM Alan Carvalho de Assis <ac...@gmail.com>
wrote:
> HI Justin,
>
> On 12/13/19, Justin Mclean <ju...@classsoftware.com> wrote:
> > Hi,
> >
> > I would have no issue with keeping the linked in group, especially it
> used
> > like that. It would be best to share ownership of it to all the PPMC.
> Many
> > project have twitter accounts. facebook pages, stack overflow accounts
> etc
> > etc. What important is the he main discussion happens on this mailing
> list
> > and that the decisions are made here.
> >
>
> I agree! Currently only I and Greg are the Managers of the group, but
> we can extent it to all PPMC interested to advertise about this great
> project.
>
> So, if someone here want to help us in the LinkedIn group, please just
> inform your LinkedIn account and we will add you as Manager as well
Okay, I understand better the purpose of the LinkedIn and I agree that it
should stay.
I'm all in favor of advertising the existence of NuttX far and wide.
By the same token, can we keep the Google Group and use it the same way,
I.e., post a copy of all announcements there but if anyone new comes along
and asks questions we should point them to the official discussion channel?
Nathan
Re: Workflow and Release strategy Proposal (Was RE: Project Emails)
Posted by Alan Carvalho de Assis <ac...@gmail.com>.
HI Justin,
On 12/13/19, Justin Mclean <ju...@classsoftware.com> wrote:
> Hi,
>
> I would have no issue with keeping the linked in group, especially it used
> like that. It would be best to share ownership of it to all the PPMC. Many
> project have twitter accounts. facebook pages, stack overflow accounts etc
> etc. What important is the he main discussion happens on this mailing list
> and that the decisions are made here.
>
I agree! Currently only I and Greg are the Managers of the group, but
we can extent it to all PPMC interested to advertise about this great
project.
So, if someone here want to help us in the LinkedIn group, please just
inform your LinkedIn account and we will add you as Manager as well.
BR,
Alan
Re: Workflow and Release strategy Proposal (Was RE: Project Emails)
Posted by Justin Mclean <ju...@classsoftware.com>.
Hi,
I would have no issue with keeping the linked in group, especially it used like that. It would be best to share ownership of it to all the PPMC. Many project have twitter accounts. facebook pages, stack overflow accounts etc etc. What important is the he main discussion happens on this mailing list and that the decisions are made here.
Thanks,
Justin
Re: Workflow and Release strategy Proposal (Was RE: Project Emails)
Posted by Alan Carvalho de Assis <ac...@gmail.com>.
Hi Nathan,
On 12/13/19, Nathan Hartman <ha...@gmail.com> wrote:
> On Fri, Dec 13, 2019 at 8:53 AM Gregory Nutt <sp...@gmail.com> wrote:
>
>> Another thing to consider with the form of the release is that there an
>> many, many documents, Wikis, READMEs, HowTos, blogs, and videos
>> describing how to get started with NuttX. They all begin either 'git
>> clone' apps/ and nuttx/ (or download the tarballs). Changing that means
>> breaking a lot of things.
>
>
> There is no reason to change that.
>
> Releases should be in the form of tarballs and those who wish to hack
> on NuttX or be on the bleeding edge can clone the git repos. Nothing
> changes there except the URL where you download those things (and the
> fact that the PMC members will digitally sign the release tarballs
> with our PGP/GPG keys). To minimize confusion, all the places that
> have until now hosted NuttX tarballs and git repos should have a big
> "WE HAVE MOVED!" message with our new address.
>
> Not directly related but Greg mentioned Google and LinkedIn:
>
> I suggest that we really need to get all discussions, participation,
> and contributions "under one roof" so to speak, at
> dev@nuttx.apache.org. I think the Slack, the Google Group, the
> LinkedIn Group, and any other forums that fragment participants,
> should wind up soon. Whenever we reply to a message there, we should
> remind people that those forums are deprecated and that they should
> join dev@nuttx.apache.org.
>
I think at least the LinkedIn group is not in this category of
removing users from the mailing list, quite the opposite. The LinkedIn
group goal is to advertise and show projects and products using NuttX.
Many people discovered NuttX thanks our announcements there. There is
not a discussion group in the Linkedin, but only a showcase for NuttX.
We can turn it off is all people here decide to do so, but I think we
will shoot the foot if we do it.
Just my two cents.
BR,
Alan
Re: Workflow and Release strategy Proposal (Was RE: Project Emails)
Posted by Nathan Hartman <ha...@gmail.com>.
On Fri, Dec 13, 2019 at 8:53 AM Gregory Nutt <sp...@gmail.com> wrote:
> Another thing to consider with the form of the release is that there an
> many, many documents, Wikis, READMEs, HowTos, blogs, and videos
> describing how to get started with NuttX. They all begin either 'git
> clone' apps/ and nuttx/ (or download the tarballs). Changing that means
> breaking a lot of things.
There is no reason to change that.
Releases should be in the form of tarballs and those who wish to hack
on NuttX or be on the bleeding edge can clone the git repos. Nothing
changes there except the URL where you download those things (and the
fact that the PMC members will digitally sign the release tarballs
with our PGP/GPG keys). To minimize confusion, all the places that
have until now hosted NuttX tarballs and git repos should have a big
"WE HAVE MOVED!" message with our new address.
Not directly related but Greg mentioned Google and LinkedIn:
I suggest that we really need to get all discussions, participation,
and contributions "under one roof" so to speak, at
dev@nuttx.apache.org. I think the Slack, the Google Group, the
LinkedIn Group, and any other forums that fragment participants,
should wind up soon. Whenever we reply to a message there, we should
remind people that those forums are deprecated and that they should
join dev@nuttx.apache.org.
If there is any valuable information on the Slack or LinkedIn that is
of use to NuttX and shouldn't be lost, I suggest asking whoever posted
it if they'll kindly copy and paste into an email to dev@, to bring it
under the one roof and also to open it up to anyone who wants to get
involved in the project.
Nathan
Re: Workflow and Release strategy Proposal (Was RE: Project Emails)
Posted by Gregory Nutt <sp...@gmail.com>.
Another thing to consider with the form of the release is that there an
many, many documents, Wikis, READMEs, HowTos, blogs, and videos
describing how to get started with NuttX. They all begin either 'git
clone' apps/ and nuttx/ (or download the tarballs). Changing that means
breaking a lot of things.
I think this is of secondary importance, but certainly any change to the
documented use of NuttX should a factor that is taken into
consideration. Ideally, the only user impact should be the URL used
with the 'git clone' (or download).
Re: Workflow and Release strategy Proposal (Was RE: Project Emails)
Posted by Alin Jerpelea <je...@gmail.com>.
The proposal looks good but we should also consider if we want to support
LTS maintenance releases containing bugfixed backported from mainline
Regards
Alin
On Fri, Dec 13, 2019, 09:27 David Sidrane <Da...@nscdg.com> wrote:
> Precisely! We cut a branch as a Release Candidate. nuttx-MM.mm.rr-rcnn.
> During the release cycle it can have back ports from master if a new
> feature
> or bug fix is found it is added if deemed necessary to the release.
>
> Workflow Proposal
>
> I would ask that we adopt a workflow similar to PX4. [1] - see page 16. Or
> parts of it that work for us.
>
> All development would be done on branches and only squashed atomic commits
> would be done to master. (Think constantly working bisect on master)
>
> Branches can be rebased - to reduce noise until review [1] see page 17
>
> All commit message would have context. [1] - see page 16 (Think emails
> subject tells me what happed, Filter out noise)
>
> Regards,
>
> David
>
> [1] https://drive.google.com/open?id=1XHaNB3nTarjPL-CzO9CpZTl1NgX_kpqY
>
>
> -----Original Message-----
> From: spudaneco [mailto:spudaneco@gmail.com]
> Sent: Thursday, December 12, 2019 9:16 PM
> To: dev@nuttx.apache.org
> Subject: Re: Project Emails
>
> Sent from Samsung tablet.
> I think we should use release branches, unless we want to lock downthe repo
> against all changes for the duration of the release prep ->release
> candidate -> testing -> debating -> voting cycle, which couldtake a non
> trivial amount of time.You could carry on business as usual on a temporary
> branch, but that feels awkward.
>
Workflow and Release strategy Proposal (Was RE: Project Emails)
Posted by David Sidrane <Da...@nscdg.com>.
Precisely! We cut a branch as a Release Candidate. nuttx-MM.mm.rr-rcnn.
During the release cycle it can have back ports from master if a new feature
or bug fix is found it is added if deemed necessary to the release.
Workflow Proposal
I would ask that we adopt a workflow similar to PX4. [1] - see page 16. Or
parts of it that work for us.
All development would be done on branches and only squashed atomic commits
would be done to master. (Think constantly working bisect on master)
Branches can be rebased - to reduce noise until review [1] see page 17
All commit message would have context. [1] - see page 16 (Think emails
subject tells me what happed, Filter out noise)
Regards,
David
[1] https://drive.google.com/open?id=1XHaNB3nTarjPL-CzO9CpZTl1NgX_kpqY
-----Original Message-----
From: spudaneco [mailto:spudaneco@gmail.com]
Sent: Thursday, December 12, 2019 9:16 PM
To: dev@nuttx.apache.org
Subject: Re: Project Emails
Sent from Samsung tablet.
I think we should use release branches, unless we want to lock downthe repo
against all changes for the duration of the release prep ->release
candidate -> testing -> debating -> voting cycle, which couldtake a non
trivial amount of time.You could carry on business as usual on a temporary
branch, but that feels awkward.
Re: Project Emails
Posted by spudaneco <sp...@gmail.com>.
Sent from Samsung tablet.
I think we should use release branches, unless we want to lock downthe repo against all changes for the duration of the release prep ->release candidate -> testing -> debating -> voting cycle, which couldtake a non trivial amount of time.You could carry on business as usual on a temporary branch, but that feels awkward.
Re: Project Emails
Posted by Nathan Hartman <ha...@gmail.com>.
On Thu, Dec 12, 2019 at 10:05 PM Gregory Nutt <sp...@gmail.com> wrote:
> Some of these things are difficult to discuss at this point in time
> because we not have enough Apache knowledge and experience. What I have
> seen from following the release emails is the release will go through
> several release candidates before before a final release is made.
> Tagging releases as NuttX did in the past won't support that. I believe
> that you would have to use branches to support a series of release
> candidates until the release is made (and perhaps even to support
> further releases on the branch for bug fixes).
I think we should use release branches, unless we want to lock down
the repo against all changes for the duration of the release prep ->
release candidate -> testing -> debating -> voting cycle, which could
take a non trivial amount of time.
With a release branch, normal development can continue to be merged to
master during this time.
Any release-blocking bugs found during release testing get fixed on
master and then merged (just those commits) to the release branch.
Re: Project Emails
Posted by Justin Mclean <ju...@classsoftware.com>.
Hi,
> Tagging releases as NuttX did in the past won't support that. I believe that you would have to use branches to support a series of release candidates until the release is made (and perhaps even to support further releases on the branch for bug fixes).
Most projects use release branches that I know of, but some use tags.
> We can't really branch across sub-modules, can we? I think we need to know much more before we could take any clear position on this.
You could use the same tag on different repo, but as tag are mutable you would need to include the commit hash for both repos.
Thanks,
Justin
Re: Project Emails
Posted by Gregory Nutt <sp...@gmail.com>.
> How about sub modules? We atomically tag across both to keep the project in
> proper synchronization.
Some of these things are difficult to discuss at this point in time
because we not have enough Apache knowledge and experience. What I have
seen from following the release emails is the release will go through
several release candidates before before a final release is made.
Tagging releases as NuttX did in the past won't support that. I believe
that you would have to use branches to support a series of release
candidates until the release is made (and perhaps even to support
further releases on the branch for bug fixes).
We can't really branch across sub-modules, can we? I think we need to
know much more before we could take any clear position on this.
Greg
Re: Project Emails
Posted by Gregory Nutt <sp...@gmail.com>.
> I think submodules are a good way to go. That would leave us with 3 repos
> as the core Apache NuttX. One for 'nuttx' which, is Greg suggests, should
> always be exclusively the OS. One for 'apps'. And one for "linking" them
> together, and for providing other NuttX infrastructure that may not be
> appropriate in the core OS repo.
And the purpose of the third repositories with two submodules is...
what? We discussed this configuration before as a device to support
automated testing which requires both both an operating system and test
applications. Is that the intent here? That might be a good testing
solution, but is probably premature to discuss here.
DavidS was referring to something else. I think a David was referring
to a way to make releases from a single repo. I would think the first
and most straightforward solution for that would be two synchronized
releases from two separate repositories. Keeping the releases as loosely
coupled as possible, I think, would provide the greatest flexibility to
end-users. The loss of flexibility would have to be balanced against
the level of effort. Would the purpose of such a third repository just
for releases be an attempt to reduce effort?
What is the final form of the release? In the past it was two tagged
repositories and two tarballs with the same versioning. What would be
the form of the release in this case be?
Re: Project Emails
Posted by Alin Jerpelea <je...@gmail.com>.
+1 Nuttx and apps should stay separate
On Sun, Dec 15, 2019 at 10:19 PM Sebastien Lorquet <se...@lorquet.fr>
wrote:
> hello,
>
> I am not favorable personally with submodules. They are a pain to keep
> in sync across multiple remotes and branches.
>
> This was used in the past in NuttX, and it was aborted.
>
> Sebastien
>
> On 12/13/19 3:28 AM, Anthony Merlino wrote:
> > I think submodules are a good way to go. That would leave us with 3 repos
> > as the core Apache NuttX. One for 'nuttx' which, is Greg suggests, should
> > always be exclusively the OS. One for 'apps'. And one for "linking" them
> > together, and for providing other NuttX infrastructure that may not be
> > appropriate in the core OS repo.
> >
> > [image: photo]
> > *Anthony Merlino*
> > CTO & Co-founder, Verge Aero
> > (609)-319-1399
> >
> >
> >
> > On Thu, Dec 12, 2019 at 8:17 PM David Sidrane <Da...@nscdg.com>
> > wrote:
> >
> >> How about sub modules? We atomically tag across both to keep the
> project in
> >> proper synchronization.
> >>
> >> David
> >>
> >> -----Original Message-----
> >> From: Nathan Hartman [mailto:hartman.nathan@gmail.com]
> >> Sent: Thursday, December 12, 2019 10:55 AM
> >> To: dev@nuttx.apache.org
> >> Subject: Re: Project Emails
> >>
> >> On Thu, Dec 12, 2019 at 1:36 PM Gregory Nutt <sp...@gmail.com>
> wrote:
> >>> A NuttX release consists of two tarballs nuttx/ and apps/. nuttx/ is
> the
> >>> operating system proper; apps/ is a collection of applications that may
> >>> or maynot be used with the operating system proper. These applications
> >>> including some key things and I think most people want to incorporate
> >>> some subset of applications into their project.
> >>>
> >>> But since the applications are NOT part of the operating system they do
> >>> need to remain separate. I would argue against trying to merge
> >>> application code into the operating system. So I think we have to
> >>> consider these two separate releases. We historically release them
> >>> together as a matched pair so that the use can be user that they
> >>> interoperate properly.
> >> +1 : I agree that nuttx and apps should stay separate.
> >>
> >> That begs the question, are we going to have two separate Git
> >> repositories? Because Git lacks support for multiple projects in one
> >> repository. (There's nothing in Git that prevents you from trying, but
> >> Git does not have the features that make the "monorepo"/"megarepo"
> >> pattern work; e.g., it does not have sparse/partial working copies or
> >> clones. Trying to combine nuttx and apps into one repository would
> >> force everyone to clone a lot of content they may not need/want and
> >> which may complicate building the RTOS with only their custom
> >> applications.)
> >>
> >> Nathan
> >>
>
Re: Project Emails
Posted by Sebastien Lorquet <se...@lorquet.fr>.
hello,
I am not favorable personally with submodules. They are a pain to keep
in sync across multiple remotes and branches.
This was used in the past in NuttX, and it was aborted.
Sebastien
On 12/13/19 3:28 AM, Anthony Merlino wrote:
> I think submodules are a good way to go. That would leave us with 3 repos
> as the core Apache NuttX. One for 'nuttx' which, is Greg suggests, should
> always be exclusively the OS. One for 'apps'. And one for "linking" them
> together, and for providing other NuttX infrastructure that may not be
> appropriate in the core OS repo.
>
> [image: photo]
> *Anthony Merlino*
> CTO & Co-founder, Verge Aero
> (609)-319-1399
>
>
>
> On Thu, Dec 12, 2019 at 8:17 PM David Sidrane <Da...@nscdg.com>
> wrote:
>
>> How about sub modules? We atomically tag across both to keep the project in
>> proper synchronization.
>>
>> David
>>
>> -----Original Message-----
>> From: Nathan Hartman [mailto:hartman.nathan@gmail.com]
>> Sent: Thursday, December 12, 2019 10:55 AM
>> To: dev@nuttx.apache.org
>> Subject: Re: Project Emails
>>
>> On Thu, Dec 12, 2019 at 1:36 PM Gregory Nutt <sp...@gmail.com> wrote:
>>> A NuttX release consists of two tarballs nuttx/ and apps/. nuttx/ is the
>>> operating system proper; apps/ is a collection of applications that may
>>> or maynot be used with the operating system proper. These applications
>>> including some key things and I think most people want to incorporate
>>> some subset of applications into their project.
>>>
>>> But since the applications are NOT part of the operating system they do
>>> need to remain separate. I would argue against trying to merge
>>> application code into the operating system. So I think we have to
>>> consider these two separate releases. We historically release them
>>> together as a matched pair so that the use can be user that they
>>> interoperate properly.
>> +1 : I agree that nuttx and apps should stay separate.
>>
>> That begs the question, are we going to have two separate Git
>> repositories? Because Git lacks support for multiple projects in one
>> repository. (There's nothing in Git that prevents you from trying, but
>> Git does not have the features that make the "monorepo"/"megarepo"
>> pattern work; e.g., it does not have sparse/partial working copies or
>> clones. Trying to combine nuttx and apps into one repository would
>> force everyone to clone a lot of content they may not need/want and
>> which may complicate building the RTOS with only their custom
>> applications.)
>>
>> Nathan
>>
Re: Project Emails
Posted by Anthony Merlino <an...@vergeaero.com>.
I think submodules are a good way to go. That would leave us with 3 repos
as the core Apache NuttX. One for 'nuttx' which, is Greg suggests, should
always be exclusively the OS. One for 'apps'. And one for "linking" them
together, and for providing other NuttX infrastructure that may not be
appropriate in the core OS repo.
[image: photo]
*Anthony Merlino*
CTO & Co-founder, Verge Aero
(609)-319-1399
On Thu, Dec 12, 2019 at 8:17 PM David Sidrane <Da...@nscdg.com>
wrote:
> How about sub modules? We atomically tag across both to keep the project in
> proper synchronization.
>
> David
>
> -----Original Message-----
> From: Nathan Hartman [mailto:hartman.nathan@gmail.com]
> Sent: Thursday, December 12, 2019 10:55 AM
> To: dev@nuttx.apache.org
> Subject: Re: Project Emails
>
> On Thu, Dec 12, 2019 at 1:36 PM Gregory Nutt <sp...@gmail.com> wrote:
> > A NuttX release consists of two tarballs nuttx/ and apps/. nuttx/ is the
> > operating system proper; apps/ is a collection of applications that may
> > or maynot be used with the operating system proper. These applications
> > including some key things and I think most people want to incorporate
> > some subset of applications into their project.
> >
> > But since the applications are NOT part of the operating system they do
> > need to remain separate. I would argue against trying to merge
> > application code into the operating system. So I think we have to
> > consider these two separate releases. We historically release them
> > together as a matched pair so that the use can be user that they
> > interoperate properly.
>
> +1 : I agree that nuttx and apps should stay separate.
>
> That begs the question, are we going to have two separate Git
> repositories? Because Git lacks support for multiple projects in one
> repository. (There's nothing in Git that prevents you from trying, but
> Git does not have the features that make the "monorepo"/"megarepo"
> pattern work; e.g., it does not have sparse/partial working copies or
> clones. Trying to combine nuttx and apps into one repository would
> force everyone to clone a lot of content they may not need/want and
> which may complicate building the RTOS with only their custom
> applications.)
>
> Nathan
>
RE: Project Emails
Posted by David Sidrane <Da...@nscdg.com>.
How about sub modules? We atomically tag across both to keep the project in
proper synchronization.
David
-----Original Message-----
From: Nathan Hartman [mailto:hartman.nathan@gmail.com]
Sent: Thursday, December 12, 2019 10:55 AM
To: dev@nuttx.apache.org
Subject: Re: Project Emails
On Thu, Dec 12, 2019 at 1:36 PM Gregory Nutt <sp...@gmail.com> wrote:
> A NuttX release consists of two tarballs nuttx/ and apps/. nuttx/ is the
> operating system proper; apps/ is a collection of applications that may
> or maynot be used with the operating system proper. These applications
> including some key things and I think most people want to incorporate
> some subset of applications into their project.
>
> But since the applications are NOT part of the operating system they do
> need to remain separate. I would argue against trying to merge
> application code into the operating system. So I think we have to
> consider these two separate releases. We historically release them
> together as a matched pair so that the use can be user that they
> interoperate properly.
+1 : I agree that nuttx and apps should stay separate.
That begs the question, are we going to have two separate Git
repositories? Because Git lacks support for multiple projects in one
repository. (There's nothing in Git that prevents you from trying, but
Git does not have the features that make the "monorepo"/"megarepo"
pattern work; e.g., it does not have sparse/partial working copies or
clones. Trying to combine nuttx and apps into one repository would
force everyone to clone a lot of content they may not need/want and
which may complicate building the RTOS with only their custom
applications.)
Nathan
Re: Project Emails
Posted by Gregory Nutt <sp...@gmail.com>.
> +1 : I agree that nuttx and apps should stay separate.
>
> That begs the question, are we going to have two separate Git
> repositories? Because Git lacks support for multiple projects in one
> repository. (There's nothing in Git that prevents you from trying, but
> Git does not have the features that make the "monorepo"/"megarepo"
> pattern work; e.g., it does not have sparse/partial working copies or
> clones. Trying to combine nuttx and apps into one repository would
> force everyone to clone a lot of content they may not need/want and
> which may complicate building the RTOS with only their custom
> applications.)
It would also force an unnatural coupling between two independent bodies
of software that should not be coupled. Merging the two repositories
into one would also be a technical feat since they have 133 necessary
tags with common names, but no common commits. The also share some
history since apps was a part of the nuttx/ repository many years ago
before I realized that was a mistake and separated them. I still
consider merging the repositories a mistake.
It is not possible to have a NuttX team like:
https://github.com/nuttx?tab=following Anthony Merlino created that
team as an experiment last month, but it has not been maintained or updated.
Greg
Re: Project Emails
Posted by Nathan Hartman <ha...@gmail.com>.
On Thu, Dec 12, 2019 at 1:36 PM Gregory Nutt <sp...@gmail.com> wrote:
> A NuttX release consists of two tarballs nuttx/ and apps/. nuttx/ is the
> operating system proper; apps/ is a collection of applications that may
> or maynot be used with the operating system proper. These applications
> including some key things and I think most people want to incorporate
> some subset of applications into their project.
>
> But since the applications are NOT part of the operating system they do
> need to remain separate. I would argue against trying to merge
> application code into the operating system. So I think we have to
> consider these two separate releases. We historically release them
> together as a matched pair so that the use can be user that they
> interoperate properly.
+1 : I agree that nuttx and apps should stay separate.
That begs the question, are we going to have two separate Git
repositories? Because Git lacks support for multiple projects in one
repository. (There's nothing in Git that prevents you from trying, but
Git does not have the features that make the "monorepo"/"megarepo"
pattern work; e.g., it does not have sparse/partial working copies or
clones. Trying to combine nuttx and apps into one repository would
force everyone to clone a lot of content they may not need/want and
which may complicate building the RTOS with only their custom
applications.)
Nathan
Re: Project Emails
Posted by Flavio Junqueira <fp...@apache.org>.
Hi Greg,
On the email lists, the mentor's guide suggest that we create dev@, commits@, and private@, also recommending that we add user@ later if needed:
https://incubator.apache.org/guides/mentor.html#request_mailing_lists <https://incubator.apache.org/guides/mentor.html#request_mailing_lists>
We are following the guidelines, but there is some flexibility to it.
-Flavio
> On 12 Dec 2019, at 19:36, Gregory Nutt <sp...@gmail.com> wrote:
>
> [Moved to the dev list. Was Re: Access to private email archive ].
>> People should send patches to dev@.
>
> Other projects have additional emails, often user[s] and issues, often many more: https://mail-archives.apache.org/mod_mbox/
>
> I am personally used to having a one-email-for-everything, but it looks like additional emails could be used if the PPMC decides to do that.
>
> We are actually starting with a sub-project. We probably should discuss that.
>
> A NuttX release consists of two tarballs nuttx/ and apps/. nuttx/ is the operating system proper; apps/ is a collection of applications that may or maynot be used with the operating system proper. These applications including some key things and I think most people want to incorporate some subset of applications into their project.
>
> But since the applications are NOT part of the operating system they do need to remain separate. I would argue against trying to merge application code into the operating system. So I think we have to consider these two separate releases. We historically release them together as a matched pair so that the use can be user that they interoperate properly.
>
> Back to emails... separating application-related discussions from core OS discussions might be something worth considering. Some projects also have separate commits mail lists for commits to the two repositories. For example, the lucene project has commits, c-commits, java-commits, pylucene-commits, and solr-commits. I assume that thes are all sub-projects.
>
> Greg
>
>
>