The (draft) development roadmap describes ongoing and future development.
NEW ROADMAP: please see Release Roadmap
in the Wiki
The (proposed) changes are described in more detail below. Various "TODOs"
indicate the need for more developers to participate. Please contact the
GRASS Development Team on the developers mailing list.
Version number scheme:
- first number: major release number
- secondary number: minor release number (stable/development indicator)
- third number: revision
Using this scheme, version numbers have a very clear meaning:
- new revision == bugs have been fixed, go grab it and install it.
- new minor == new features are available, source compatibility _and_ binary
compatibility for existing applications are guaranteed [not fully true for
GRASS 6 where old vector/sites maps have to be converted by
v.convert/v.in.sites.].
- new major == beware! Old (ugly) libraries have been dropped. Database
compatibility has been broken, you have to migrate your database to the
new formats.
It is intended to follow this scheme for upcoming GRASS releases.
In a release, we keep existing:
- modules
- options and their meaning
- data formats
- C structures
- constants
Features comparison table
GRASS 5.0 |
GRASS 5.3/5.4 |
GRASS 6.0 |
Raster/image processing |
Display/nviz |
d.dm/tcltkgrass
|
d.m/modules GUI |
Sites support |
(Sites as vectors) |
Vector old 2D |
Vector new 2D/3D |
|
Datum transformation support |
|
Vector networking |
|
DBMS support |
|
Spatial index |
Status of PROJ4 and datum transformation support
- GRASS 5.0.0pre3 and earlier contains an old copy of Gerald Evenden's USGS
pure PROJ version
- GRASS >= 5.0.0pre4 and <5.3 have Frank Warmerdam's PROJ4 with datum
functions but they are not used
- GRASS >= 5.3 and later use Frank Warmerdam's PROJ4 with datum transformation functions
Roadmap
Development
Line
|
stable
(even secondary number)
|
development
(odd secondary number)
|
GRASS 5.x
|
5.0.3 (current)
|
[5.1-cvs: renamed to 5.7-cvs]
|
(5.0.4)
- bugfixes for 5.0.3, if needed
|
5.3-cvs (old CVS HEAD)
- datum transformation
- improved NVIZ
- G3D activated
- r.terraflow (C++)
- improved source code portability
- better tested than 5.0.3
|
5.4.x
|
End of 5.0.x development. Not to be continued with new features
|
GRASS 6.x
|
|
6.x-cvs (was: former 5.1-cvs)
- new 2D/3D vector engine (almost done)
- eliminate sites by migrating to vector points[2]
- new vector network library (done, needs fixes in cache)
- DBMS support (done)
- migration of old vector modules (almost done)
- keep but discourage sites format [1] ("done")
- better integrate G3D voxel (partially done)
- new Makefile system (done)
- shared libraries (done), static libraries also supported
- initial code inline docs (doxygen based, partially done)
[1] to keep the sites modules for a while seems to be necessary as we
do not have the resources to upgrade all sites functionality to vector
in the short term. No efforts should be invested to improve the sites.
[2] point data are treated as vector nodes with following
advantages: spatial index for speed, DBMS, NULL support, ...
|
6.0.x
- included then:
- new vector engine
- DBMS support
- polished vector libs
- inline code docs
- etc.
|
6.1.x...
- eliminate sites by migrating to vector points[2]
- improve/rewrite raster data library (TODO, maybe GRASS 7?)
- change raster maps directory layout (store all map related files into a single directory)
MAPSET/TYPE/MAPNAME/FILES [3] (TODO)
- rename raster functions G_*() to Rast_*() (TODO)
- improve image processing
- cleanup libs/modules from clones (ongoing)
- implement SQL based time series support for raster maps (TODO)
- implement topology-free points support for LIDAR (ongoing)
- rewrite display drivers (ongoing)
[3] done for the new vector format, advantage to simplify maintenance and backups.
|
Last change: $Date$
$Author$