[GRASS-dev] Re: [GRASS GIS] #1345: backport ctypes to relbr64

GRASS GIS trac at osgeo.org
Wed Apr 13 09:37:31 EDT 2011


#1345: backport ctypes to relbr64
----------------------------+-----------------------------------------------
  Reporter:  hamish         |       Owner:  martinl            
      Type:  task           |      Status:  closed             
  Priority:  major          |   Milestone:  6.4.2              
 Component:  Python ctypes  |     Version:  svn-releasebranch64
Resolution:  fixed          |    Keywords:                     
  Platform:  All            |         Cpu:  All                
----------------------------+-----------------------------------------------
Changes (by hamish):

  * status:  assigned => closed
  * resolution:  => fixed


Comment:

 Replying to [comment:2 martinl]:
 > I took liberty to backport ctypes in r45937

 thanks. I really feel this will be a good thing.


 ----
  I believe the rest of this conversation belongs on the -dev list, so I'll
 state my piece and get out; closing the bug.

 Replying to [comment:1 martinl]:
 > my opinion is different as I mentioned earlier, you are right that bash
 scripts
 > could be more stable than their python version.

 uber-irrelevant nit-pick: technically bourne scripts, not bash scripts.
 (-> component renamed)

 > Anyway we are discovering new and new bugs in bash scripts (which is
 normal),

 No, really not many at all- most of the scripts have been in use for 5-15+
 years now. Maybe a few more bugs than libgis or the older raster modules,
 but still very few.  Of the 15 or so edits to shell scripts in the last 6
 months, most are either edits to relatively new additions (v.db.*,
 r.in.w{m|f}s, simple quoting of variables for WinGrass), or long
 known/forgotten bugs (yesterday I applied a 3 yr old patch from Brad to
 v.in.mapgen and fixed a quite rare one which survived for 9 years without
 notice until last week).


 > some of them are hard to fix, see e.g. #1310. Unfortunately most of them
 are
 > quite critical. Some of them are remaining open,

 ** those are not bugs in the shell scripts. The shell scripts themselves
 are mature, very well tested, and mostly bug free (AFAWK). 'Til now we
 have not had to compromise the stability of the linux/mac stable branches
 to please MS Windows. IMHO it would be a rotten bother to start that now.


 The bugs you refer to are in the build system (.bat wrappers), wxGUI,
 MSys, and general MS Windows weirdness. WinGrass users new to the command
 line will need to learn to "quote" path names regardless of bourne/python
 scripts, due to the ubiquitous space in path names. If the \slash trouble
 went away instantly, the space problem would still confound argc,argv[].
 The solution to that 'bug' is educating users that path names always have
 to be quoted.


 > generally speaking maintaining bash scripts for winGRASS is a big pain.

 I think that's because hardly anyone is working on the problem, not
 because the problems are especially or fundamentally deep. It's not a
 question of devpower, it's a question of focusing/encouraging volunteers
 to spend some time on chores which don't immediately benefit them (but
 certainly do in the long run). As for me, I've been neglecting it for
 months, but for my part can jump back into this effort sometime in early
 May (go qemu-kvm!). i.e. while problematic, I am not convinced the
 WinGrass + .sh issues are fatal or even that deep. The solution to this
 'bug' is to educate ourselves more about Windows's weirdness, which will
 be useful knowledge anyway.


 And even if it is a pain, we should bear it and deal with it -- one of the
 tenets of a having a stable branch is that you can trust the code stays in
 a known state, warts and all. You work around the ugliness and fix bugs
 along the path of least change in an effort to minimize the chance of
 unintended consequences, and maximizing experience of the behavior.
 Swapping out all the scripts is just too huge a leap in the codebase.

 > Bearing in mind our man power in GRASS developer team

 as far as manpower goes, as long as grass 6 is maintained, and probably
 after, I'll help maintain the shell scripts (luckily they don't need
 much), and lend a hand as I can to help the small wingrass team deal with
 msys troubles (but then next few weeks are insane for me).


 > I think it would be better solution to replace bash scripts by python in
 devbr6.

 ** This is a stable branch. devbr6 (IMNSHO) is for getting things ready
 and testing before backporting to 6.4.x. If the decision has not been made
 for something to eventually go into 6.4, then it does not belong in 6.5.
 Moving something into 6.5 as a wedge to get it into 6.4 later is not
 behavior I ever hope to find in GRASS, as it will be the end of the
 project being fun for me.


 > Fix bugs which has been introduced during conversion from Bash script
 (which is
 > easy).

 It is hard. It doesn't matter how good you are or how much cleaner the new
 language is -- you simply can't replace a decade of widespread testing on
 a huge diversity of systems just like that. It takes time, lots of it.
 When grass7 is ready, they'll be rock solid. I'd so much rather be having
 this conversation about how best to implement a new/future improvement in
 trunk, or doing detective work on specific bugs.


 thanks,
 Hamish

-- 
Ticket URL: <https://trac.osgeo.org/grass/ticket/1345#comment:3>
GRASS GIS <http://grass.osgeo.org>



More information about the grass-dev mailing list