[GRASS-dev] [GRASS-SVN] r60679 - grass/trunk/lib/python/script

Glynn Clements glynn at gclements.plus.com
Fri Jun 6 00:08:30 PDT 2014


Martin Landa wrote:

> >> ... this would follow the apparently working method in GRASS 6.
> >> Maybe worth a try also in GRASS 7 at this point.
> >
> >
> > I had the feeling that this was the "consensus" (or at least with lack of
> > clear dissension) we had reached:
> 
> "consensus" is somehow courageous to say, bearing in mind that Glynn
> simply reverts any other solution regardless that it breaks the whole
> GRASS on Windows

The reason I do this is because GRASS has a long history of dealing
with bugs using ugly hacks, which typically introduce
equal-but-opposite bugs. This then means that any attempt to fix the
underlying bug breaks everything. It also results in incomplete fixes,
which are then "fixed" further by adding yet more code, with each
iteration getting progressively uglier due to interactions with
earlier layers.

If something doesn't actually work, I'd rather everyone be aware of
that and try to find an actual solution, rather than just papering
over the cracks and pretending that the issue has been solved.

E.g. if run_command() has problems with using a vertical bar character
in an argument, modifying specific cases to avoid using a vertical bar
doesn't fix the actual problem.

Removing the shell from the equation fixes the actual problem (and
possibly other problems related to the shell, e.g. ANSI-vs-OEM
codepage issues). Escaping arguments should fix that specific problem
(but not others), provided that we can accurately determine the
shell's rules (Good Luck With That; the bash manual runs to ~82 pages;
I've never seen anything like that for cmd.exe).

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


More information about the grass-dev mailing list