[GRASS-dev] [GRASS-PSC] too many branches => retirement GRASS6.5.svn (=develbranch6)

On 06/04/14 13:46, Hamish wrote:

First of all, I believe this discussion belongs on the grass-dev list, not PSC. See RFC1.

CC'in to dev-list

releasebranch70 should not have been branched until 7.0RC1. Until RC1
it is just wasted effort to keep the two of them as a 1:1 mirror, so
what's the point? If anyone wants to talk about unnecessary developer
burden, start there.

As already mentioned I was also a bit surprised by this. I'm not sure we are really ready for something more than a tech-preview (and not a real release), but maybe it could be the kick in the behind that we need to once and for all move over to GRASS7 as the main official branch...

I also think that voting on Martin's proposal as such is a bit premature. I think we should discuss the pros and cons of different approaches a bit more before calling a vote.

I think that experience has shown that the lack of clear policy on release management has caused frustration among developers. Personally, I'm somewhere between the two approaches. On the one hand what I understand to be Hamish' wish of having a debian-like system of unstable for ongoing cutting-edge development, testing as a staging area for more stabilized code and stable as rock-solid, albeit a bit outdated, On the other hand, I just haven't seen this work in GRASS up to now and I see a lot of frustration from those who find this system too heavy to carry. I don't know if that is because the procedure never was clear or whether we lack the equivalent of the debian ftp-managers to oversee the process, whether we just lack the discipline (which could be linked to the previous point) or whether the GRASS development team is just too small for such a process. One of the big differences, IMHO, is that a user of debian testing just has to apt-get update && apt-get upgrade to get the lasted developments, whereas users of grass6dev has to compile it themselves (at least on GNU/Linux) as no distribution offers packages for that. This means that using testing is a much more involved process.

So, before we start voting of release procedures, maybe we have to first clarify and agree upon our goals. I.e. decide on the ends before we decide on the means.

Here is my attempt on some of the goals:

- provide a rock-solid, "just works", version of GRASS
- provide easy access for users to new developments in GRASS
- keep the burden on the dev-team as low as possible
- make the whole development and release process very clear and explicit with defined procedures and (at least relative) timetables
- enforce a certain level of discipline in the respect of these rules and procedures

As mentioned before, I wish to use the bulk of my grass dev time
maintaining the grass 6 line. To do that properly I need a staging
area, and devbr6 is it. Hosting a clone on github for that is too
ridiculous and broken a situation to begin to contemplate.

If devbr6 is removed I simply can not do the stable grass 6
maintenance job properly. So without that there is really very little
for me to contribute in future. It will not translate to me spending
more time working on grass 7, only drive me away from the project.

I think that seen Hamish' continued effort for this project this a serious enough situation to demand a solution.

But maybe the idea to actually release a first version of grass7 in a not to far future is a way out.

Hamish, maybe you could be the official grass6 maintainer, managing the whole grass6 development in the way you propose, i.e. any new development and bugfixes first go into grass6dev for a period of testing, before _you_ make the decision that something can be backported to grass6release. I do think however, that for this to work, we would need to regularly publish snapshots of grass6dev for easy testing.

All other devs only commit to grass6dev, never to grass6release.

Just my 2¢,

Moritz

Hi,

2014-04-06 15:16 GMT+02:00 Moritz Lennert <mlennert@club.worldonline.be>:

As already mentioned I was also a bit surprised by this. I'm not sure we are
really ready for something more than a tech-preview (and not a real
release), but maybe it could be the kick in the behind that we need to once
and for all move over to GRASS7 as the main official branch...

well, what is missing from your point of view? I would be able to
imagine to release 7.0.0 around June...

Martin

2014-04-06 15:16 GMT+02:00 Moritz Lennert <mlennert@club.worldonline.be>:

Hamish, maybe you could be the official grass6 maintainer, managing the
whole grass6 development in the way you propose, i.e. any new development
and bugfixes first go into grass6dev for a period of testing, before _you_
make the decision that something can be backported to grass6release. I do
think however, that for this to work, we would need to regularly publish
snapshots of grass6dev for easy testing.

I think we should really stop thinking about GRASS 6 "development",
ideally we should fully focus our energy on GRASS 7. We do not have
enough man-power for keeping development in GRASS 6, simply saying. So
please bug fix only should go there (relbr64). No new functionality.

Martin

--
Martin Landa * http://geo.fsv.cvut.cz/gwiki/Landa

On Sun, Apr 6, 2014 at 3:16 PM, Moritz Lennert
<mlennert@club.worldonline.be> wrote:

On 06/04/14 13:46, Hamish wrote:

As mentioned before, I wish to use the bulk of my grass dev time
maintaining the grass 6 line. To do that properly I need a staging
area, and devbr6 is it.

I don't see the need for a devbr6 because maintaining the GRASS 6 line
means backporting bug fixes from trunk. New functionality should be
implemented in trunk, as in any other project. Bug fixes are then
backported to the release branch, unfortunately we have now two
release branches. Apart from addons, there will most probably not be
any more GRASS 6 development, only GRASS 6 bug fixing, for which a
GRASS 6 release branch is IMHO sufficient.

I don't think it makes sense to maintain two GRASS major versions if
development aka adding new functionality should take place in both.
Some contributors like to implement new functionality in devbr6, but
most contributors follow the (IMHO logical) way of trunk -> relbr. The
now proposed development way of trunk -> relbr_7 -> devbr6 -> relbr6
or or also devbr6 -> relbr6, skipping trunk, is unrealistic, will slow
down GRASS development, and might lead to diverging branches.

If GRASS 6, and release branch maintenance in general, is restricted
to bug fixing, it should be easy to maintain trunk and two release
branches. Granted that trunk is not abused as addon repository by
adding untested code.

My 2c,

Markus M

Hosting a clone on github for that is too
ridiculous and broken a situation to begin to contemplate.

If devbr6 is removed I simply can not do the stable grass 6
maintenance job properly. So without that there is really very little
for me to contribute in future. It will not translate to me spending
more time working on grass 7, only drive me away from the project.

I think that seen Hamish' continued effort for this project this a serious
enough situation to demand a solution.

But maybe the idea to actually release a first version of grass7 in a not to
far future is a way out.

Hamish, maybe you could be the official grass6 maintainer, managing the
whole grass6 development in the way you propose, i.e. any new development
and bugfixes first go into grass6dev for a period of testing, before _you_
make the decision that something can be backported to grass6release. I do
think however, that for this to work, we would need to regularly publish
snapshots of grass6dev for easy testing.

All other devs only commit to grass6dev, never to grass6release.

Just my 2¢,

Moritz

_______________________________________________
grass-psc mailing list
grass-psc@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-psc

My 1 cent or less…

I think grass7 shold be the focus of the project now, the place where new stuff should be developed, and that versions 6 are for bugfix only.
Why should I develop something new not in the latest software version?

All this thinking of a "good enough " version 7 (which I think already exists, isn’t?).

Maxi

Il 6-apr-2014 22:45 “Markus Metz” <markus.metz.giswork@gmail.com> ha scritto:

On Sun, Apr 6, 2014 at 3:16 PM, Moritz Lennert
<mlennert@club.worldonline.be> wrote:

On 06/04/14 13:46, Hamish wrote:

As mentioned before, I wish to use the bulk of my grass dev time
maintaining the grass 6 line. To do that properly I need a staging
area, and devbr6 is it.

I don’t see the need for a devbr6 because maintaining the GRASS 6 line
means backporting bug fixes from trunk. New functionality should be
implemented in trunk, as in any other project. Bug fixes are then
backported to the release branch, unfortunately we have now two
release branches. Apart from addons, there will most probably not be
any more GRASS 6 development, only GRASS 6 bug fixing, for which a
GRASS 6 release branch is IMHO sufficient.

I don’t think it makes sense to maintain two GRASS major versions if
development aka adding new functionality should take place in both.
Some contributors like to implement new functionality in devbr6, but
most contributors follow the (IMHO logical) way of trunk → relbr. The
now proposed development way of trunk → relbr_7 → devbr6 → relbr6
or or also devbr6 → relbr6, skipping trunk, is unrealistic, will slow
down GRASS development, and might lead to diverging branches.

If GRASS 6, and release branch maintenance in general, is restricted
to bug fixing, it should be easy to maintain trunk and two release
branches. Granted that trunk is not abused as addon repository by
adding untested code.

My 2c,

Markus M

Hosting a clone on github for that is too
ridiculous and broken a situation to begin to contemplate.

If devbr6 is removed I simply can not do the stable grass 6
maintenance job properly. So without that there is really very little
for me to contribute in future. It will not translate to me spending
more time working on grass 7, only drive me away from the project.

I think that seen Hamish’ continued effort for this project this a serious
enough situation to demand a solution.

But maybe the idea to actually release a first version of grass7 in a not to
far future is a way out.

Hamish, maybe you could be the official grass6 maintainer, managing the
whole grass6 development in the way you propose, i.e. any new development
and bugfixes first go into grass6dev for a period of testing, before you
make the decision that something can be backported to grass6release. I do
think however, that for this to work, we would need to regularly publish
snapshots of grass6dev for easy testing.

All other devs only commit to grass6dev, never to grass6release.

Just my 2¢,

Moritz


grass-psc mailing list
grass-psc@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-psc


grass-psc mailing list
grass-psc@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-psc

I believe that we have a communication problem here rather than a disagreement about the GRASS6.5:

Hamish says:
"GRASS 6.x is already far along into bugfix maintenance mode.
*Please, just leave it to naturally and quietly make its way into history.*
I wish to use the bulk of my grass dev time maintaining the grass 6 line.
To do that properly I need a staging area, and devbr6 is it. "

which is pretty much in agreement with Martin's:
"I think we should really stop thinking about GRASS 6 "development",
So please bug fix only should go there (relbr64). No new functionality."

So I think that we have a broad agreement on maintenance only mode for grass6 line,
and if there is a concern that new features will be added to grass6.5, perhaps we can keep it
in read-only mode as suggested in one of the initial emails in this discussion and have
only Hamish keep write access for testing ("staging area").

I think that if Hamish can maintain GRASS6 line this will free the time for all other developers to focus on GRASS7.
Regarding GRASS7 - it is in a pretty good shape, we have been using it in classes since the fall semester
and I was quite surprised how little changes are needed to update the full semester course material for GRASS7.

Helena

Helena Mitasova
Associate Professor
Department of Marine, Earth, and Atmospheric Sciences
2800 Faucette Drive, Rm. 1125 Jordan Hall
North Carolina State University
Raleigh, NC 27695-8208
hmitaso@ncsu.edu

"All electronic mail messages in connection with State business which are sent to or received by this account are subject to the NC Public Records Law and may be disclosed to third parties.”

On Apr 6, 2014, at 4:45 PM, Markus Metz wrote:

On Sun, Apr 6, 2014 at 3:16 PM, Moritz Lennert
<mlennert@club.worldonline.be> wrote:

On 06/04/14 13:46, Hamish wrote:

As mentioned before, I wish to use the bulk of my grass dev time
maintaining the grass 6 line. To do that properly I need a staging
area, and devbr6 is it.

I don't see the need for a devbr6 because maintaining the GRASS 6 line
means backporting bug fixes from trunk. New functionality should be
implemented in trunk, as in any other project. Bug fixes are then
backported to the release branch, unfortunately we have now two
release branches. Apart from addons, there will most probably not be
any more GRASS 6 development, only GRASS 6 bug fixing, for which a
GRASS 6 release branch is IMHO sufficient.

I don't think it makes sense to maintain two GRASS major versions if
development aka adding new functionality should take place in both.
Some contributors like to implement new functionality in devbr6, but
most contributors follow the (IMHO logical) way of trunk -> relbr. The
now proposed development way of trunk -> relbr_7 -> devbr6 -> relbr6
or or also devbr6 -> relbr6, skipping trunk, is unrealistic, will slow
down GRASS development, and might lead to diverging branches.

If GRASS 6, and release branch maintenance in general, is restricted
to bug fixing, it should be easy to maintain trunk and two release
branches. Granted that trunk is not abused as addon repository by
adding untested code.

My 2c,

Markus M

Hosting a clone on github for that is too
ridiculous and broken a situation to begin to contemplate.

If devbr6 is removed I simply can not do the stable grass 6
maintenance job properly. So without that there is really very little
for me to contribute in future. It will not translate to me spending
more time working on grass 7, only drive me away from the project.

I think that seen Hamish' continued effort for this project this a serious
enough situation to demand a solution.

But maybe the idea to actually release a first version of grass7 in a not to
far future is a way out.

Hamish, maybe you could be the official grass6 maintainer, managing the
whole grass6 development in the way you propose, i.e. any new development
and bugfixes first go into grass6dev for a period of testing, before _you_
make the decision that something can be backported to grass6release. I do
think however, that for this to work, we would need to regularly publish
snapshots of grass6dev for easy testing.

All other devs only commit to grass6dev, never to grass6release.

Just my 2¢,

Moritz

_______________________________________________
grass-psc mailing list
grass-psc@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-psc

_______________________________________________
grass-dev mailing list
grass-dev@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-dev

+1
I also think we should stop GRASS 6 development

···

On 6 April 2014 19:01, Martin Landa <landa.martin@gmail.com> wrote:

2014-04-06 15:16 GMT+02:00 Moritz Lennert <mlennert@club.worldonline.be>:

Hamish, maybe you could be the official grass6 maintainer, managing the
whole grass6 development in the way you propose, i.e. any new development
and bugfixes first go into grass6dev for a period of testing, before you
make the decision that something can be backported to grass6release. I do
think however, that for this to work, we would need to regularly publish
snapshots of grass6dev for easy testing.

I think we should really stop thinking about GRASS 6 “development”,
ideally we should fully focus our energy on GRASS 7. We do not have
enough man-power for keeping development in GRASS 6, simply saying. So
please bug fix only should go there (relbr64). No new functionality.

Martin


Martin Landa * http://geo.fsv.cvut.cz/gwiki/Landa


grass-dev mailing list
grass-dev@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-dev

Hi,

···

On Mon, Apr 7, 2014 at 12:19 AM, Helena Mitasova <hmitaso@ncsu.edu> wrote:

I believe that we have a communication problem here rather than a disagreement about the GRASS6.5:

Hamish says:
"GRASS 6.x is already far along into bugfix maintenance mode.
Please, just leave it to naturally and quietly make its way into history.

I wish to use the bulk of my grass dev time maintaining the grass 6 line.
To do that properly I need a staging area, and devbr6 is it. "

which is pretty much in agreement with Martin’s:

"I think we should really stop thinking about GRASS 6 “development”,

So please bug fix only should go there (relbr64). No new functionality."

So I think that we have a broad agreement on maintenance only mode for grass6 line,
and if there is a concern that new features will be added to grass6.5, perhaps we can keep it
in read-only mode as suggested in one of the initial emails in this discussion and have
only Hamish keep write access for testing (“staging area”).

I think that if Hamish can maintain GRASS6 line this will free the time for all other developers to focus on GRASS7.
Regarding GRASS7 - it is in a pretty good shape, we have been using it in classes since the fall semester
and I was quite surprised how little changes are needed to update the full semester course material for GRASS7.

This makes sense to me.

Thanks,
Madi

Best regards,

Dr. Margherita DI LEO
Scientific / technical project officer

European Commission - DG JRC
Institute for Environment and Sustainability (IES)
Via Fermi, 2749
I-21027 Ispra (VA) - Italy - TP 261

Tel. +39 0332 78 3600
margherita.di-leo@jrc.ec.europa.eu

Disclaimer: The views expressed are purely those of the writer and may not in any circumstance be regarded as stating an official position of the European Commission.

On 06/04/14 15:25, Martin Landa wrote:

Hi,

2014-04-06 15:16 GMT+02:00 Moritz Lennert <mlennert@club.worldonline.be>:

As already mentioned I was also a bit surprised by this. I'm not sure we are
really ready for something more than a tech-preview (and not a real
release), but maybe it could be the kick in the behind that we need to once
and for all move over to GRASS7 as the main official branch...

well, what is missing from your point of view?

In my understanding we were still quite far away from solving the python on windows issues.

On Linux GRASS7 already works marvelously (although encoding issues in the GUI just seem to be multiplying, but that's a discussion for bug tickets not here).

Not even to speak about the debate about the general form of GRASS ("program" to launch or environment) launched by Glynn. But maybe this is more for grass8 ?

I would be able to
imagine to release 7.0.0 around June...

I we can solve the outstanding problems by then, great.

Moritz

On 07/04/14 00:19, Helena Mitasova wrote:

I believe that we have a communication problem here rather than a disagreement about the GRASS6.5:

Hamish says:
"GRASS 6.x is already far along into bugfix maintenance mode.
*Please, just leave it to naturally and quietly make its way into history.*
  I wish to use the bulk of my grass dev time maintaining the grass 6 line.
To do that properly I need a staging area, and devbr6 is it. "

which is pretty much in agreement with Martin's:
"I think we should really stop thinking about GRASS 6 "development",
So please bug fix only should go there (relbr64). No new functionality."

So I think that we have a broad agreement on maintenance only mode for grass6 line,
and if there is a concern that new features will be added to grass6.5, perhaps we can keep it
in read-only mode as suggested in one of the initial emails in this discussion and have
only Hamish keep write access for testing ("staging area").

I think that if Hamish can maintain GRASS6 line this will free the time for all other developers to focus on GRASS7.

This is what I tried to say in my mail, but much less elegantly. Thanks Helena !

Moritz

On 07/04/14 11:22, Moritz Lennert wrote:

On 06/04/14 15:25, Martin Landa wrote:

Hi,

2014-04-06 15:16 GMT+02:00 Moritz Lennert <mlennert@club.worldonline.be>:

As already mentioned I was also a bit surprised by this. I'm not sure
we are
really ready for something more than a tech-preview (and not a real
release), but maybe it could be the kick in the behind that we need
to once
and for all move over to GRASS7 as the main official branch...

well, what is missing from your point of view?

In my understanding we were still quite far away from solving the python
on windows issues.

On Linux GRASS7 already works marvelously (although encoding issues in
the GUI just seem to be multiplying, but that's a discussion for bug
tickets not here).

So if the core libraries and modules work fine under all
supported OS, why not detach the GRASS 7 core release cycle
from that of the GUI?

If we considered both the GUI and the Python support optional,
then it would be possible to release a stable GRASS 7 core
soon and allow third parties, such as QGIS and gvSIG, do build
on it, no?

Best,

Ben

Not even to speak about the debate about the general form of GRASS
("program" to launch or environment) launched by Glynn. But maybe this
is more for grass8 ?

I would be able to
imagine to release 7.0.0 around June...

I we can solve the outstanding problems by then, great.

Moritz
_______________________________________________
grass-dev mailing list
grass-dev@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-dev

--
Dr. Benjamin Ducke, M.A.
{*} Geospatial Consultant
{*} GIS Developer

  benducke@fastmail.fm

As goes for encoding issues - I would like to see one change made for
attribute data handling. As correct encoding needs to be used in quite
many places (Python 3; multiple output formats as OGR ESRI Shapefile;
KML etc.), I would propose to add data encoding to the database
connection configuration. Current approach of "single encoding for all
attribute data" is flawed on multilingual systems, as each of
multilingual data source might be in different encoding thus setting a
single encoding in GUI preferences is only a road to failure.
Attempts to guess correct data encoding based on current system locale
also are part of current problem. I have on my todo list some changes
to make locale switching from GUI even more robust, still it is not
possible to work around all of problems.
Unfortunately if we are planning to support data export from GRASS,
attribute data can not be "just a stream of binary data", as they need
also correct metadata.

Providing a datasource encoding metadata for dblink is a straight
forward thing (needs a discussion about fail-back mechanism for
existing dblink configurations). Worth of discussion is the question
of enforcing of encoding - should dbconnect always issue "set names
FOO"? Should there be an option to switch off enforcing?

As I am opportunistic programmer (you could call it also being
short-sighted) - any other potential issues coming up from my idea?

As there is GRASS 7.0 branch and trunk - does it mean that such
changes have to wait till 7.1 (no new features policy)? I'm sorry, but
not everyone had a chance to participate in Vienna coding event.

Maris.

2014-04-07 12:22 GMT+03:00 Moritz Lennert <mlennert@club.worldonline.be>:

On Linux GRASS7 already works marvelously (although encoding issues in the
GUI just seem to be multiplying, but that's a discussion for bug tickets not
here).

On Mon, Apr 7, 2014 at 12:19 AM, Helena Mitasova <hmitaso@ncsu.edu> wrote:

I believe that we have a communication problem here rather than a disagreement about the GRASS6.5:

Hamish says:
"GRASS 6.x is already far along into bugfix maintenance mode.
*Please, just leave it to naturally and quietly make its way into history.*
I wish to use the bulk of my grass dev time maintaining the grass 6 line.
To do that properly I need a staging area, and devbr6 is it. "

which is pretty much in agreement with Martin's:
"I think we should really stop thinking about GRASS 6 "development",
So please bug fix only should go there (relbr64). No new functionality."

So I think that we have a broad agreement on maintenance only mode for grass6 line,
and if there is a concern that new features will be added to grass6.5, perhaps we can keep it
in read-only mode as suggested in one of the initial emails in this discussion and have
only Hamish keep write access for testing ("staging area").

Thinking about it, keeping devbr6 is fine with me, we just need to
maintain some discipline to apply the same changes to both devbr6 and
relbr6. Therefore, all developers should have write access to devbr6,
otherwise Hamish has to port all bug fixes made to relbr6 back to
devbr6. Since the code base of devbr6 and relbr6 is largely identical,
the same fix can be applied to both branches which is not a lot of
work. We might need to make another effort to synchronize the code
base of devbr6 and relbr6 to further facilitate backporting of bug
fixes.

I think that if Hamish can maintain GRASS6 line this will free the time for all other developers to focus on GRASS7.

Sounds reasonable.

Markus M

Regarding GRASS7 - it is in a pretty good shape, we have been using it in classes since the fall semester
and I was quite surprised how little changes are needed to update the full semester course material for GRASS7.

Helena

Helena Mitasova
Associate Professor
Department of Marine, Earth, and Atmospheric Sciences
2800 Faucette Drive, Rm. 1125 Jordan Hall
North Carolina State University
Raleigh, NC 27695-8208
hmitaso@ncsu.edu

"All electronic mail messages in connection with State business which are sent to or received by this account are subject to the NC Public Records Law and may be disclosed to third parties."

On Apr 6, 2014, at 4:45 PM, Markus Metz wrote:

On Sun, Apr 6, 2014 at 3:16 PM, Moritz Lennert
<mlennert@club.worldonline.be> wrote:

On 06/04/14 13:46, Hamish wrote:

As mentioned before, I wish to use the bulk of my grass dev time
maintaining the grass 6 line. To do that properly I need a staging
area, and devbr6 is it.

I don't see the need for a devbr6 because maintaining the GRASS 6 line
means backporting bug fixes from trunk. New functionality should be
implemented in trunk, as in any other project. Bug fixes are then
backported to the release branch, unfortunately we have now two
release branches. Apart from addons, there will most probably not be
any more GRASS 6 development, only GRASS 6 bug fixing, for which a
GRASS 6 release branch is IMHO sufficient.

I don't think it makes sense to maintain two GRASS major versions if
development aka adding new functionality should take place in both.
Some contributors like to implement new functionality in devbr6, but
most contributors follow the (IMHO logical) way of trunk -> relbr. The
now proposed development way of trunk -> relbr_7 -> devbr6 -> relbr6
or or also devbr6 -> relbr6, skipping trunk, is unrealistic, will slow
down GRASS development, and might lead to diverging branches.

If GRASS 6, and release branch maintenance in general, is restricted
to bug fixing, it should be easy to maintain trunk and two release
branches. Granted that trunk is not abused as addon repository by
adding untested code.

My 2c,

Markus M

Hosting a clone on github for that is too
ridiculous and broken a situation to begin to contemplate.

If devbr6 is removed I simply can not do the stable grass 6
maintenance job properly. So without that there is really very little
for me to contribute in future. It will not translate to me spending
more time working on grass 7, only drive me away from the project.

I think that seen Hamish' continued effort for this project this a serious
enough situation to demand a solution.

But maybe the idea to actually release a first version of grass7 in a not to
far future is a way out.

Hamish, maybe you could be the official grass6 maintainer, managing the
whole grass6 development in the way you propose, i.e. any new development
and bugfixes first go into grass6dev for a period of testing, before _you_
make the decision that something can be backported to grass6release. I do
think however, that for this to work, we would need to regularly publish
snapshots of grass6dev for easy testing.

All other devs only commit to grass6dev, never to grass6release.

Just my 2¢,

Moritz

_______________________________________________
grass-psc mailing list
grass-psc@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-psc

_______________________________________________
grass-dev mailing list
grass-dev@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-dev

_______________________________________________
grass-psc mailing list
grass-psc@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-psc

While I agree with this overall, I don’t see why we need 2 GRASS branches. What is the value in 2 GRASS 6 branches that cannot be achieved with 1 branch?

Michael
______________________________
C. Michael Barton
Director, Center for Social Dynamics & Complexity
Professor of Anthropology, School of Human Evolution & Social Change
Head, Graduate Faculty in Complex Adaptive Systems Science
Arizona State University
Tempe, AZ 85287-2402
USA

voice: 480-965-6262 (SHESC), 480-965-8130/727-9746 (CSDC)
fax: 480-965-7671(SHESC), 480-727-0709 (CSDC)
www: http://csdc.asu.edu, http://shesc.asu.edu
    http://www.public.asu.edu/~cmbarton

On Apr 7, 2014, at 12:07 PM, Markus Metz <markus.metz.giswork@gmail.com> wrote:

On Mon, Apr 7, 2014 at 12:19 AM, Helena Mitasova <hmitaso@ncsu.edu> wrote:

I believe that we have a communication problem here rather than a disagreement about the GRASS6.5:

Hamish says:
"GRASS 6.x is already far along into bugfix maintenance mode.
*Please, just leave it to naturally and quietly make its way into history.*
I wish to use the bulk of my grass dev time maintaining the grass 6 line.
To do that properly I need a staging area, and devbr6 is it. "

which is pretty much in agreement with Martin's:
"I think we should really stop thinking about GRASS 6 "development",
So please bug fix only should go there (relbr64). No new functionality."

So I think that we have a broad agreement on maintenance only mode for grass6 line,
and if there is a concern that new features will be added to grass6.5, perhaps we can keep it
in read-only mode as suggested in one of the initial emails in this discussion and have
only Hamish keep write access for testing ("staging area").

Thinking about it, keeping devbr6 is fine with me, we just need to
maintain some discipline to apply the same changes to both devbr6 and
relbr6. Therefore, all developers should have write access to devbr6,
otherwise Hamish has to port all bug fixes made to relbr6 back to
devbr6. Since the code base of devbr6 and relbr6 is largely identical,
the same fix can be applied to both branches which is not a lot of
work. We might need to make another effort to synchronize the code
base of devbr6 and relbr6 to further facilitate backporting of bug
fixes.

I think that if Hamish can maintain GRASS6 line this will free the time for all other developers to focus on GRASS7.

Sounds reasonable.

Markus M

Regarding GRASS7 - it is in a pretty good shape, we have been using it in classes since the fall semester
and I was quite surprised how little changes are needed to update the full semester course material for GRASS7.

Helena

Helena Mitasova
Associate Professor
Department of Marine, Earth, and Atmospheric Sciences
2800 Faucette Drive, Rm. 1125 Jordan Hall
North Carolina State University
Raleigh, NC 27695-8208
hmitaso@ncsu.edu

"All electronic mail messages in connection with State business which are sent to or received by this account are subject to the NC Public Records Law and may be disclosed to third parties."

On Apr 6, 2014, at 4:45 PM, Markus Metz wrote:

On Sun, Apr 6, 2014 at 3:16 PM, Moritz Lennert
<mlennert@club.worldonline.be> wrote:

On 06/04/14 13:46, Hamish wrote:

As mentioned before, I wish to use the bulk of my grass dev time
maintaining the grass 6 line. To do that properly I need a staging
area, and devbr6 is it.

I don't see the need for a devbr6 because maintaining the GRASS 6 line
means backporting bug fixes from trunk. New functionality should be
implemented in trunk, as in any other project. Bug fixes are then
backported to the release branch, unfortunately we have now two
release branches. Apart from addons, there will most probably not be
any more GRASS 6 development, only GRASS 6 bug fixing, for which a
GRASS 6 release branch is IMHO sufficient.

I don't think it makes sense to maintain two GRASS major versions if
development aka adding new functionality should take place in both.
Some contributors like to implement new functionality in devbr6, but
most contributors follow the (IMHO logical) way of trunk -> relbr. The
now proposed development way of trunk -> relbr_7 -> devbr6 -> relbr6
or or also devbr6 -> relbr6, skipping trunk, is unrealistic, will slow
down GRASS development, and might lead to diverging branches.

If GRASS 6, and release branch maintenance in general, is restricted
to bug fixing, it should be easy to maintain trunk and two release
branches. Granted that trunk is not abused as addon repository by
adding untested code.

My 2c,

Markus M

Hosting a clone on github for that is too
ridiculous and broken a situation to begin to contemplate.

If devbr6 is removed I simply can not do the stable grass 6
maintenance job properly. So without that there is really very little
for me to contribute in future. It will not translate to me spending
more time working on grass 7, only drive me away from the project.

I think that seen Hamish' continued effort for this project this a serious
enough situation to demand a solution.

But maybe the idea to actually release a first version of grass7 in a not to
far future is a way out.

Hamish, maybe you could be the official grass6 maintainer, managing the
whole grass6 development in the way you propose, i.e. any new development
and bugfixes first go into grass6dev for a period of testing, before _you_
make the decision that something can be backported to grass6release. I do
think however, that for this to work, we would need to regularly publish
snapshots of grass6dev for easy testing.

All other devs only commit to grass6dev, never to grass6release.

Just my 2¢,

Moritz

_______________________________________________
grass-psc mailing list
grass-psc@lists.osgeo.org
grass-psc Info Page

_______________________________________________
grass-dev mailing list
grass-dev@lists.osgeo.org
grass-dev Info Page

_______________________________________________
grass-psc mailing list
grass-psc@lists.osgeo.org
grass-psc Info Page

_______________________________________________
grass-psc mailing list
grass-psc@lists.osgeo.org
grass-psc Info Page

Moritz Lennert wrote:

In my understanding we were still quite far away from solving the python
on windows issues.

That depends upon what you consider the "issue" to be.

If the user already has a compatible version of Python and the
required libraries correctly installed, there isn't any issue, AFAIK.

If you consider the issue to be that the system's Python installation
matters, then we will always be quite far away from solving it,
because running a script from non-GRASS code via e.g.
system("script.py") will always depend upon the system's handling of
the .py extension, and we can't change that.

The best that can be achieved in that regard is to add hard-coded
handling for Python scripts to those execution vectors which we
control as we encounter them, i.e. never-ending maintenance (aka
Whac-a-Mole), and just give up on the ones we don't control (i.e.
GRASS will have to remain some form of "walled garden" on Windows).

Note that this isn't entirely specific to Windows. We'll start
encountering similar issues once Linux distributions start installing
Python 3.x as /usr/bin/python (although that's slightly easier to work
around, due to the #!/usr/bin/env trick).

--
Glynn Clements <glynn@gclements.plus.com>

Michael Barton wrote:

While I agree with this overall, I don�t see why we need 2 GRASS
branches. What is the value in 2 GRASS 6 branches that cannot be
achieved with 1 branch?

If 6.x is going to maintenance-only, we don't need two branches for
it. Just a release branch, with releases as tagged revisions on that
branch.

--
Glynn Clements <glynn@gclements.plus.com>

Markus Metz-3 wrote

Since the code base of devbr6 and relbr6 is largely identical,
the same fix can be applied to both branches which is not a lot of
work.
_______________________________________________
grass-psc mailing list

grass-psc at .osgeo

http://lists.osgeo.org/mailman/listinfo/grass-psc

are you sure devbr6 and relbr6 are largely identical?

if yes what's the benefit (for users and devs) to have both, when the focus
on grass7 development/improvement would be a desired target ?

if no what should be ported (from users' and devs'-view) from devbr6 to
relbr6, when the focus on grass7 development/improvement would be a desired
target ?

as Martin mentioned on the ML, there aren't anymore nightly devbr6-wingrass
nightlies (osgeo4w/standalone).

-----
best regards
Helmut
--
View this message in context: http://osgeo-org.1560.x6.nabble.com/Re-GRASS-PSC-too-many-branches-retirement-GRASS6-5-svn-develbranch6-tp5133400p5133712.html
Sent from the Grass - Dev mailing list archive at Nabble.com.

On 07/04/14 23:13, Glynn Clements wrote:

Moritz Lennert wrote:

In my understanding we were still quite far away from solving the python
on windows issues.

That depends upon what you consider the "issue" to be.

If the user already has a compatible version of Python and the
required libraries correctly installed, there isn't any issue, AFAIK.

If you consider the issue to be that the system's Python installation
matters, then we will always be quite far away from solving it,
because running a script from non-GRASS code via e.g.
system("script.py") will always depend upon the system's handling of
the .py extension, and we can't change that.

The best that can be achieved in that regard is to add hard-coded
handling for Python scripts to those execution vectors which we
control as we encounter them, i.e. never-ending maintenance (aka
Whac-a-Mole), and just give up on the ones we don't control (i.e.
GRASS will have to remain some form of "walled garden" on Windows).

Note that this isn't entirely specific to Windows. We'll start
encountering similar issues once Linux distributions start installing
Python 3.x as /usr/bin/python (although that's slightly easier to work
around, due to the #!/usr/bin/env trick).

So what does that mean in practice: just leave everything as is, but improve the documentation to explain the needed Python installation/configuration ?

Moritz

Moritz Lennert wrote:

So what does that mean in practice: just leave everything as is, but
improve the documentation to explain the needed Python
installation/configuration ?

Ideally, as much as possible should be taken care of by the installer.

If there's no Python installed, the installer can install it. If
Python is installed and the version is compatible, the installer can
install any required packages. Otherwise, it can at least inform the
user of the situation and enumerate the options.

The one thing it can't reasonably do is to replace any existing
association for the .py extension. So if the .py extension is already
associated with an incompatible version, the user will have to be
involved.

--
Glynn Clements <glynn@gclements.plus.com>

On Tue, Apr 8, 2014 at 9:09 PM, Glynn Clements <glynn@gclements.plus.com>wrote:

If there's no Python installed, the installer can install it. If
Python is installed and the version is compatible, the installer can
install any required packages. Otherwise, it can at least inform the
user of the situation and enumerate the options.

This is a good point, the documentation must be in the installer, not a
separate file. For example Git installer for MS Windows list three options
how to install git and other command line tools with an explanation. The
problem is that only part of the users will read it and only part of them
will understand all the consequences (I mean, I was not sure when I saw
installing Git installation for the first time).