Re: [GNC-dev] Bye-bye Unstable

2018-04-19 Thread Geert Janssens
Op donderdag 19 april 2018 17:15:50 CEST schreef Eric Siegerman:
> On Wed, Apr 18, 2018 at 10:29:23AM +0200, Geert Janssens wrote:
> > In the 2.7
> > development cycle we experimented with an extra "unstable" *branch* to do
> > the unstable releases from.
> 
> Which is pretty standard practice -- except for the name.
> Intuitively, I'd expect a branch called "unstable" to be *less*
> stable than master, not more so.  Perhaps this caused some of the
> confusion that has been expressed both here and in the similar
> thread over in -user.
> 
> I imagine the branch got its name as the source of the "unstable"
> release series, but still...
> 
Indeed.

> > For future unstable releases we will probably just do
> > them from the master branch instead and forget an unstable branch ever
> > existed.
> 
> Makes sense.  Since (as it appeared to me as a lurker) the whole
> team switched over to stabilization mode, with dev work toward
> 4.x on hold for the duration, the additional branch likely didn't
> add much value.  But should you ever change your minds, may I
> suggest calling the third branch "stabilization" -- or a shorter
> quasi-synonym, e.g. "beta".
> 
Good idea.

Geert


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Bye-bye Unstable

2018-04-19 Thread Eric Siegerman
On Wed, Apr 18, 2018 at 10:29:23AM +0200, Geert Janssens wrote:
> In the 2.7 
> development cycle we experimented with an extra "unstable" *branch* to do the 
> unstable releases from.

Which is pretty standard practice -- except for the name.
Intuitively, I'd expect a branch called "unstable" to be *less*
stable than master, not more so.  Perhaps this caused some of the
confusion that has been expressed both here and in the similar
thread over in -user.

I imagine the branch got its name as the source of the "unstable"
release series, but still...

> For future unstable releases we will probably just do 
> them from the master branch instead and forget an unstable branch ever 
> existed.

Makes sense.  Since (as it appeared to me as a lurker) the whole
team switched over to stabilization mode, with dev work toward
4.x on hold for the duration, the additional branch likely didn't
add much value.  But should you ever change your minds, may I
suggest calling the third branch "stabilization" -- or a shorter
quasi-synonym, e.g. "beta".

  - Eric
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Bye-bye Unstable

2018-04-18 Thread Geert Janssens
Op woensdag 18 april 2018 09:58:24 CEST schreef Wm via gnucash-devel:
> On 16/04/2018 17:40, Geert Janssens wrote:
> > Op maandag 16 april 2018 12:33:53 CEST schreef Robert Fewell:
> >> Just trying to get myself straight for going forward.
> >> maint is now for bug fixes on version 3.0
> >> master is for new stuff that would go into 4.0 but may be backported to
> >> 3.x
> >> if appropriate
> > 
> > Mostly. We normally don't "backport". If something is wanted on maint, it
> > should be committed to maint first and merged into master afterwards.
> > 
> > A real backport should only happen if that was forgotten, but that should
> > really be an exception.
> 
> Bob probably didn't *really* mean "backport".  My guess is he's just
> trying to work out what master | maint | 3.0 | 3.x | something else mean
> now in ordinary terms.
> 
> I can't figure it out either.

maint and master are git *branches*, so things you can check out, build, use 
to make changes and submit new commits.

3.0 is a release number which in git will be represented with a *tag*. You can 
also  check these out, but you can't start development from there (strictly 
speaking you can, but that would be much more complicated and off topic here). 
The only reason to check out a version number is to build a release version of 
gnucash. And even then, most releases are built from a tarball, for which you 
find a link in each release announcement.

3.x is not really a thing in git. It's mostly a term we use to represent all 
releases that will ever be generated starting with 3.

Then there is a distinction between stable and unstable (development) 
releases. The big difference git-wise is that stable releases always start 
from a commit on the maint branch while unstable releases will not. In the 2.7 
development cycle we experimented with an extra "unstable" *branch* to do the 
unstable releases from. For future unstable releases we will probably just do 
them from the master branch instead and forget an unstable branch ever 
existed.

We also use a specific versioning scheme for unstable *releases* which has 
changed with the release of 3.0.
Before 3.0 release numbers had 3 components. Unstable releases would have an 
odd middle component. 2.4.5 must be a stable release because the middle 
component (4) is even. 2.7.6 must be an unstable release because the middle 
component (7) is odd.
As of 3.0 release numbers will only have two components. Unstable releases 
will be marked by a second component being 900 or more. So 3.1, 3.15 and even 
3.899 will be stable releases if we ever get that far in the numbering (don't 
expect this to be like that). 3.900, 3.915 and so on will be unstable releases 
leading up to the 4.0 new stable release somewhere in the future.

> 
> >> Is master version 3.99, it appears to be 3.0 still and does show the
> >> build
> >> warning ?
> > 
> > Not 3.99. With the new numbering scheme it should become 3.900, leaving us
> > with 99 beta release numbers before 4.0.
> 
> I'd like to join Bob and say I'm also not understanding this.
> 
> I think what I am asking is:
> 
> could you please relate the git commands to versions people understand.
> 
https://wiki.gnucash.org/wiki/Git#Branches

Compared to before the 3.0 release the only thing that has changed is what 
releases will happen from which branch.  has changed really, except for the 
version numbers those branches are linked to. "maint" and "master" are 
abstract concepts that are not tied to the same version all the time.

I'm not sure how I can make that clearer. Do you have a specific question you 
want to see answered ?

Geert


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Bye-bye Unstable

2018-04-18 Thread Wm via gnucash-devel

On 16/04/2018 17:40, Geert Janssens wrote:

Op maandag 16 april 2018 12:33:53 CEST schreef Robert Fewell:

Just trying to get myself straight for going forward.
maint is now for bug fixes on version 3.0
master is for new stuff that would go into 4.0 but may be backported to 3.x
if appropriate


Mostly. We normally don't "backport". If something is wanted on maint, it
should be committed to maint first and merged into master afterwards.

A real backport should only happen if that was forgotten, but that should
really be an exception.


Bob probably didn't *really* mean "backport".  My guess is he's just 
trying to work out what master | maint | 3.0 | 3.x | something else mean 
now in ordinary terms.


I can't figure it out either.


Is master version 3.99, it appears to be 3.0 still and does show the build
warning ?


Not 3.99. With the new numbering scheme it should become 3.900, leaving us
with 99 beta release numbers before 4.0.


I'd like to join Bob and say I'm also not understanding this.

I think what I am asking is:

could you please relate the git commands to versions people understand.

Maybe Bob was asking something different, if so, my apols to him.

--
Wm





___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Bye-bye Unstable

2018-04-16 Thread Geert Janssens
Op maandag 16 april 2018 12:33:53 CEST schreef Robert Fewell:
> Just trying to get myself straight for going forward.
> maint is now for bug fixes on version 3.0
> master is for new stuff that would go into 4.0 but may be backported to 3.x
> if appropriate
> 
Mostly. We normally don't "backport". If something is wanted on maint, it 
should be committed to maint first and merged into master afterwards.

A real backport should only happen if that was forgotten, but that should 
really be an exception.

> Is master version 3.99, it appears to be 3.0 still and does show the build
> warning ?

Not 3.99. With the new numbering scheme it should become 3.900, leaving us 
with 99 beta release numbers before 4.0.

Geert


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Re: [GNC-dev] Bye-bye Unstable

2018-04-16 Thread Robert Fewell
Just trying to get myself straight for going forward.
maint is now for bug fixes on version 3.0
master is for new stuff that would go into 4.0 but may be backported to 3.x
if appropriate

Is master version 3.99, it appears to be 3.0 still and does show the build
warning ?

Bob

On 15 April 2018 at 01:02, John Ralls  wrote:

> Fellow Developers,
>
> As long promised (threatened?) I've just merged unstable into maint and
> deleted unstable. In general you can just pull as usual and your branch
> will be updated.
>
> If you have unpushed commits in a local unstable branch, rebase that
> branch onto maint after pulling maint.
>
> If you have unpushed commits in a local maint branch:
>   If you want to port them to 3.x,
> git branch saved-maint
>  git fetch
>  git reset --hard origin/maint
>
>  Because of the directory structure changes you won't be able to
> cherry-pick or merge your saved-maint commits. Your best bet is to make
> patches with git format-patch and then edit the paths.
>
> Regards,
> John Ralls
>
> ___
> gnucash-devel mailing list
> gnucash-devel@gnucash.org
> https://lists.gnucash.org/mailman/listinfo/gnucash-devel
>
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


[GNC-dev] Bye-bye Unstable

2018-04-14 Thread John Ralls
Fellow Developers,

As long promised (threatened?) I've just merged unstable into maint and deleted 
unstable. In general you can just pull as usual and your branch will be updated.

If you have unpushed commits in a local unstable branch, rebase that branch 
onto maint after pulling maint.

If you have unpushed commits in a local maint branch:
  If you want to port them to 3.x,
git branch saved-maint
 git fetch
 git reset --hard origin/maint

 Because of the directory structure changes you won't be able to cherry-pick or 
merge your saved-maint commits. Your best bet is to make patches with git 
format-patch and then edit the paths.

Regards,
John Ralls

___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel