[Gfoss] GRASS GIS 6.4.2 released
Francesco P. Lovergine
frankie a debian.org
Ven 24 Feb 2012 14:25:31 CET
On Fri, Feb 24, 2012 at 11:47:50AM +0100, Paolo Cavallini wrote:
> Il 24/02/2012 11:37, Sandro Santilli ha scritto:
> >Gia'.. qual'e' l'interfaccia di GRASS ?
> >E' possibile versionarla in qualche modo ?
> Non credo che questo aiuterebbe, nel caso specifico. I problemi
> sorti finora sono soprattutto:
> - cambiamenti nei nomi delle opzioni
Su quello ritengo che il team di GRASS possa fare una cosa molto semplice:
considerare la cmdline alla stregua di una libreria e stabile on best effort.
E seguire quindi le stesso politiche che si usano nelle librerie per dichiarare una
versione e un support level. Introducendo peraltro una versione
di interfaccia 'alla libtool' a quel punto per la riga di comando, plain and clean.
(che non ha a che vedere con la versione del programma...)
Quando si aggiungono nuovi comandi o nuovi parametri (con default sensati)
non ci sono problemi, l'interfaccia resta almeno compatibile.
Se si cominciano a cambiare parametri per tipologia, cambiar nomi dei
parametri o nomi dei comandi, è chiaro che il tutto va dichiarato
annunciando una nuova versione. Ovviamente se si cambia la versione
a gogo' per - diciamo - pigrizia mentale, il sistema non porta molto
lontano. Ma se si ritiene che la riga di comando sia una API verso
il mondo (poveri scripters compresi...) immagino che certe modifiche
sarebbero fatte assai meno 'allegramente', diciamo.
Facciamo un esempio: il comando r.ciccio da sempre usa come parametro
'map=<stringa>'. Un bel giorno si decide di uniformarlo all'andazzo
generale e 'map' diventa 'input'. Il vecchio nome viene rifiutato
come errore. Tipico caso di un approccio errato: l'approccio corretto
e' AGGIUNGERE in alternativa a 'map' il parametro 'input'.
Il primo approccio puo' anche andare bene, ma se si cambiano TUTTI
i comandi all'unisono e si incrementa la versione in modo non compatibile
(nello specifico CURRENT++ REVISION=0 AGE=0, per chi parla libtool ;-))
annunciandolo al mondo.
Tutto ciò sarebbe sotto completa responsabilità/decisione del
team di GRASS. E' chiaro che se poi viene annunciato nel
changelog cosa viene aggiunto o modificato a livello
di command line sarebbe anche più carino, ma mi rendo
conto che è più laborioso.
--
Francesco P. Lovergine
Maggiori informazioni sulla lista
Gfoss