GRASS GIS Changelog

What's new in GRASS GIS 7.8.5

Dec 24, 2020
  • gui/wxpython/timeline/frame.py, gui/wxpython/tplot/frame.py:
  • tplot/frame.py: fixes for Matplotlib 3.3+ (#1191) *
  • tplot/frame.py: fix for Matplotlib 3.3+ Reason: The iterable
  • function was deprecated in Matplotlib 3.1 and will be removed in
  • 3.3. Use np.iterable instead. Inspired by https://github.com/stone
  • big/plotnine/commit/2044a91c37ba2e732fcd823fddb07cb7f5f06977 * fix
  • set_picker deprecation warning * remove unused cbook import *
  • fixes for Matplotlib 3.3+

New in GRASS GIS 7.8.4 (Oct 10, 2020)

  • Minor module changes:
  • G78:d.rast.arrow: Fix negative drainage directions (​PR:777)
  • G78:g.extension: fix module launch with compile '-i' or download '-d' flag (​PR:938)
  • G78:g.gui.iclass: replace dist_point_to_segment() removed from matplotlib (​PR:645)
  • G78:g.gui.timeline: improve missing package msg
  • G78:g.proj: fix segfault when reading proj info from georef file (​PR:599)
  • G78:g.search.modules: without keywords, list all modules (​PR:989)
  • G78:i.pansharpen: fix encode string (​PR:745)
  • G78:r.category: G_debug added in parsing section
  • G78:r.category: more specific parse error message
  • G78:r.cost (​PR:846)
  • G78:r.geomorphon: Spell "flatness" correctly (​PR:982)
  • G78:r.geomorphon: Fix an out-of-bounds read w/multires (​PR:995)
  • G78:r.grow.distance: update module description with value raster (​PR:983)
  • G78:r.import: do not reproject when projection matches (bug #547) (​PR:659)
  • G78:r.in.wms BaseCapabilitiesTree: fix init ElementTree class (cap file/cap file str arg) (​PR:651)
  • G78:r.in.wms.py: improve user msg (​PR:616)
  • G78:r.in.wms.py message improvement (​PR:613)
  • G78:r.out.gdal: fix building overviews
  • G78:r.plane manual: example improved (​PR:900)
  • G78:r.region: add geometry keyword
  • G78:r.univar: support large regions with more than 2 billion cells (​PR:672)
  • G78:r.volume manual: example and screenshot added (​PR:903)
  • G78:t.rast.out.vtk manual: fix example
  • G78:v.cluster manual: added note about cluster IDs
  • G78:v.import: Do not reproject if projections match (​PR:845)
  • G78:v.info/v.proj: fix printing UTM zone (​PR:892) (​PR:977)
  • G78:v.in.wfs: add options to set user and password (​PR:808)
  • G78:v.in.wfs manual: fix example (​PR:809)
  • G78:v.kernel: fix inconsistent msg (​PR:825)
  • G78:v.net manual: link to Vector Network Analysis Tool
  • G78:v.surf.bspline: fix method selection (​PR:727)
  • G78:v.to.db: Add --overwrite to help and GUI (​PR:807)
  • GUI: Improvements in the Graphical User Interface:
  • Startup: Avoid a race condition (​PR:548)
  • backport changes for wx4.1.0 #570
  • images2gif: PILLOW_VERSION is obsolete (​PR:899)
  • G78:wxGUI Add web service layer: Fix dialog layout (​PR:627)
  • G78:wxGUI !AddWSDialog: fix 'Access window out of range in !RasterIO()' error (​PR:693)
  • G78:wxGUI !AddWSDialog: fix render WMTS layer with OGC:CRS84 coor system (​PR:674)
  • G78:wxGUI !AddWSDialog: fix setting output layer name, after selecting another layer (​PR:667)
  • G78:wxGUI !AddWSDialog !RenderWMSMgr: fix render WMS jpeg source format (​PR:640)
  • G78:wxGUI/animation: add export output animation file validation, before export file (​PR:839)
  • G78:wxGUI/animation: fix export (run as background thread) output animation file to avi format (​PR:840)
  • G78:wxGUI/animation: fix 'RuntimeError: dictionary changed size during iteration' (​PR:908)
  • G78:wxGUI/animation: fix validation of extension of exported file (​PR:907)
  • G78:wxGUI/animation: fix !wxPyDeprecationWarning (​PR:854)
  • G78:wxGUI/animation: fix !wxPyDeprecationWarning (​PR:910)
  • G78:wxGUI/animation: set default export file type choice option (​PR:838)
  • G78:wxGUI: avoid flush clipboard if not opened (​PR:819)
  • G78:wxGUI/composer: use integers instead of wx id, which can't be pickled and cause error (​PR:641)
  • G78:wxGUI/datacatalog: fix display 3D raster (​PR:889)
  • G78:wxGUI/datacatalog: Fix error after right click on grass database tree item (​PR:736)
  • G78:wxGUI/datacatalog: Fix layout flag in reprojection dialog for wx 4.1.0 (​PR:806)
  • G78:wxGUI dbmgr: Fix dbmgr widgets layout on the wxMSW (​PR:637)
  • G78:wxGUI d.histogram: Set default font (​PR:695)
  • G78:wxGUI d.mon: Fix launch light-weight wx monitor without toolbars and statusbar (​PR:678)
  • G78:wxGUI, d.rast.edit: remove 'wxversion' module (​PR:713)
  • G78:wxGUI: fix atexit error in debug mode when exiting GUI (​PR:772)
  • G78:wxGUI: fix bad indentation (​PR:784)
  • G78:wxGUI: fixes incomplete map display when opening from gwx workspace (​PR:500)
  • G78:wxGUI: fix g.gui.vdigit on windows #530 (​PR:572)
  • G78:wxGUI: fix inconsistent layer sizes during rendering (​PR:552)
  • G78:wxGUI: fix layout flags for wx 4.1.0
  • G78:wxGUI: Fix layout flags in vector field statistics dialog for wx 4.1.0 (​PR:821)
  • G78:wxGUI: fix RunCommand to decode also empty string to return unicode (​PR:702)
  • G78:wxGUI: fix wx4.1 support for About GRASS GIS dialog (​PR:901)
  • G78:wxGUI/gcp: adding the option/show overwrite confirm dialog to overwrite the result map (​PR:912)
  • G78:wxGUI gcp: fix adding vector map to group when no vector maps exist (​PR:685)
  • G78:wxGUI gcp: fix checking vector map existence in the group (​PR:680)
  • G78:wxGUI/gcp: fix launch add vector map to group dialog (​PR:924)
  • G78:wxGUI g.gui.animation: fix wx.CheckBox? widget deprecation warning (​PR:718)
  • G78:wxGUI g.gui.rlisetup: fix get rectangle sample units size (​PR:633)
  • G78:wxGUI GroupDialog?: fix StaticText widget existence check (​PR:647)
  • G78:wxGUI lmgr: fix cancel save workspace dialog (​PR:628)
  • G78:wxGUI lmgr: Fix position of layer image button overlaid map layer name (​PR:669)
  • G78:wxGUI lmgr: fix remove both selected parent/children group layer (​PR:642)
  • G78:wxGUI/lmgr: fix return 'Layer' class str value if map layer name is None (​PR:820)
  • G78:wxGUI location wizard: fix title layout, bug introduced in changes for wxPython 4.1 (​PR:661)
  • G78:wxGUI locdownload: fix missing flush method (​PR:634)
  • G78:wxGUI: macOS use default output font dialog (​PR:760)
  • G78:wxGUI/mapdisp: fix double click on the overlays in the 3D view (​PR:872)
  • G78:wxGUI/mapswipe: call dialog Uninit only when dialog was actually created, fix for #833 (​PR:836)
  • G78:wxGUI/mapswipe: fix wx.CheckListBox? widget !wxPyDeprecationWarning (​PR:773)
  • G78:wxGUI/mapwin: fix saving the position of overlays after changing their position with the mouse pointer tool (​PR:817)
  • G78:wxGUI mapwin: fix show/hide vdigit toolbar (​PR:578)
  • G78:wxGUI/nviz: fix failed map centring on mac with pre-wx4.1 (​PR:895)
  • G78:wxGUI/nviz: fix relative import from 'wxnviz' module (​PR:887)
  • G78:wxGUI/nviz: fix reopening 3D by reloading layers (​PR:953)
  • G78:wxGUI/nviz: fix update list of surface in vector page during delete constant surface (​PR:881)
  • G78:wxGUI/nviz: SetMaskColour causes problems on macos with wx 4.1.0 (​PR:787)
  • G78:wxGUI rdigit: fix quitting behavior when no map edited (​PR:594)
  • G78:wxGUI rdigit: update list of available raster map layers, when map layers tree changed (​PR:707)
  • G78:wxGUI rendering: when deleting layer check if .legrow file exists (​PR:691)
  • G78:wxGUI r.li.setup: Show message dialog if removed config file isn't selected from the list (​PR:631)
  • G78:wxGUI/startup: fix terminate location download dialog download thread (​PR:832) (​PR:873)
  • G78:wxGUI tplot: fix an error when exporting csv file from g.gui.tplot (​PR:690)
  • G78:wxGUI: update wx4.1.0 support for FlatNotebook (​PR:856)
  • G78:wxGUI vdigit: fix Undo/Redo? tool when no map edited (​PR:586)
  • G78:wxGUI vdigit: fix wx.CheckBox? widget deprecation warning (​PR:700)
  • G78:wxGUI vdigit: update list of available vector map layers, when map layers tree changed (launch 'd.vect map=mapname' from the wxGUI Console page) (​PR:708)
  • G78:wxGUI vnet: fix ctypes c_char_p arg type (bytes object) (​PR:687)
  • G78:wxGUI WSPropertiesDialog: fix applying ws panel widgets updates, after panel is the shown (​PR:665)
  • G78:wxGUI WSPropertiesDialog: fix closing dialog (​PR:684)
  • G78:wxGUI WSPropertiesDialog: Fix showing selected layer in wms layer tree (​PR:666)
  • G78:wxGUI WSPropertiesDialog: fix updating ws map layer if map layer changed (​PR:668)
  • G78:wxGUI/wxpyimgview: Fix wxpyimgview for Python3/wxPython4 (​PR:735)
  • Python scripting:
  • libpython: fix Iterable import in pygrass/vector (​PR:734)
  • libpython: mapcalc_start fix encode string (​PR:738)
  • Projection support:
  • fix proj 6+ support for share/proj/epsg (​PR:183)
  • datum.table: add RGFG95 (​PR:813)
  • Library changes:
  • init: ensure zsh environment variable SAVEHIST is set (​PR:857)
  • Add zsh terminal prompt support (​PR:722)
  • lib/init: fix run py script with CRLF line terminators ('grass --exec file_with_CRLF.py') (​PR:860)
  • libgis parser: an empty string is not an answer (​PR:958)
  • color table percentage forest cover (​PR:894)
  • Add national land cover dataset color table (​PR:518)
  • Unit tests / CI:
  • Add ​GitHub Actions with build, test, and Python static code analysis (​PR:583)
  • gunittest docs: fix broken links (​PR:934)
  • gunittest: Non-zero return code on certian percetage of tests failing (​PR:377)
  • CI: Use a specific Flake8 version (​PR:626)
  • User Manuals - Documentation:
  • various updates
  • G78:helptext.html: improved wording (​PR:614)
  • G78:g.version manual: explain "revision=exported"
  • G78:i.pansharpen manual: updated North Carolina example
  • G78:rasterintro manual: mention various raster stats modules
  • G78:r.category manual: minor addition
  • G78:r.carve manual: fix example for stream vector (​PR:968)
  • G78:r.clump manual: screenshots added (​PR:902)
  • G78:r.horizon manual: explain negative values (​PR:754)
  • Portability:
  • use ${CC} instead of "cc" for linking on macOS (​PR:611)
  • macOS: modernize app bundle info (​PR:941)
  • macos: update app icon for hi-res support (​PR:829)
  • grass.spec: enable EPEL8
  • env.bat.tmpl: Deal with blanks in OSGEO4W_ROOT (​PR:859)
  • Docker support:
  • Alpine docker: install git before build (​PR:990)
  • Alpine docker: gdal-tools added
  • docker: fix GRASS lib path detection (​PR:883)
  • docker: fix README.md names (​PR:984)
  • singularityfile: fix GRASS lib path detection
  • Message Translations:
  • i18N: added new translations from Transifex (​https://www.transifex.com/grass-gis/grass7/dashboard/)
  • i18n: Translation update of Latvian language (​PR:876)
  • New Addons since GRASS 7.8.3:
  • wx.metadata/m.csw.update: module for adding new csw connections resources candidates (​PR:238)

New in GRASS GIS 7.8.3 (May 10, 2020)

  • Major module changes:
  • G78:i.vi: write out FCELL instead of DCELL (​PR:236)
  • G78:r.kappa: maps[0] is the reference and maps[1] is the classified map (​PR:290)
  • Minor module changes:
  • grass7 startup: added --config date parameter
  • grass startup script: refactoring
  • G78:g.extension: fix -i (compile), -d (download) flag (​PR:496)
  • G78:g.extension: less confusing metadata warning
  • G78:g.gui.gcp: fix crash when closing
  • G78:g.gui.image2target: fix wxPython Phoenix support (​PR:396)
  • G78:g.gui.rlisetup: fix config file open mode for write in text mode
  • G78:g.gui.vdigit: fix SnapLine function return value (​PR:506)
  • G78:r.blend: Quote map names in r.mapcalc expressions. (​PR:277)
  • G78:r.external: read NaN as NaN (​PR:338)
  • G78:r.external: transfer colormap added (​PR:337)
  • G78:r.grow: Correctly handle shrinking of maps without NULL values (​PR:343)
  • G78:r.import extent=region bug fix (​PR:404)
  • G78:r.import: pass extent to r.in.gdal (​PR:291)
  • G78:r.import: Use temp region for resolution=value (​PR:197)
  • G78:r.sim/simlib: dynamic allocation of walkers to enable computing for larger areas (​PR:228)
  • G78:r.slope.aspect: fix title and color table for -n flag (​PR:320)
  • G78:r.sun: allow user to set solar constant (​PR:482)
  • G78:r.unpack: sys.stdout.write() cannot print bytes; convert f.read() (​PR:577)
  • G78:v.db.addtable: Overwrite newly created cat column (​PR:571)
  • G78:v.decimate: copy tables only when topology is available
  • G78:v.import: fix gfs file for GDAL version smaller 2.4.1 by GML import (​PR:386)
  • G78:v.in.ogr: fix usage of OGR_G_HasCurveGeometry()
  • G78:v.in.pdal: fix filtering by bbox (​PR:359)
  • G78:v.patch: Fix line categories when building topology (​PR:374)
  • G78:v.to.db: Require --overwrite flag to overwrite existing columns (​PR:487)
  • G78:v.to.rast: fix WHERE selection
  • G78:v.unpack: sys.stdout.write() cannot print bytes; convert f.read() (​PR:577)
  • GDAL/OGR import: report XY location when comparing projections
  • GUI: Improvements in the Graphical User Interface:
  • wxGUI Field calculator: fix wx.ListBox? widget choices argument (​PR:460)
  • wxGUI: fix 3D rendering in animation tool (​PR:293)
  • wxGUI: fix Cartographic Composer Add graphic tool (Line/Rectangle?), (​PR:310)
  • wxGUI: fix copy-to-clipboard key binding on macOS (​PR:393)
  • wxGUI: Fix dbmgr for Python3 (​PR:344)
  • wxGUI: Fix error message has appeared after close any module dialog (​PR:249)
  • wxGUI: fix failing vector digitizer on mac (​PR:3487) (​PR:456)
  • wxGUI Fix import vector/raster dialog min width (​PR:492)
  • wxGUI fix manage color rules interactively (vector map) frame (​PR:429)
  • wxGUI fix set vector output format wx.Choice widget width (​PR:453)
  • wxGUI: Fix unable to open file from python editor (​PR:288)
  • wxGUI: fix WMS (​PR:242)
  • wxGUI g.gui.vdigit: fix update available vector maps
  • wxGUI Graphical Modeler About Dialog: fix import (​PR:438)
  • wxGUI Graphical Modeler: remove py2 unicode func (​PR:441)
  • wxGUI Histogramming Tool: fix Plot xSpec, ySpec property value (​PR:422)
  • wxGUI Layer Manager: fix add layer into the new empty group (​PR:413)
  • wxGUI Layer Manager: fix add vector map layer Set color table interactively
  • wxGUI Layer Manager: fix close Layers Display FlatNotebook? page (​PR:411)
  • wxGUI Manage color rules interactively (vector map)
  • wxGUI mapwin: fix Pointer tool double left click on a map canvas (​PR:529)
  • wxGUI preferences: fix load epsg codes (​PR:545)
  • wxGUI Raster Digitizer: fix use input raster map layer region (​PR:470)
  • wxGUI: removing map layer crashes wxGUI (​PR:3607)
  • wxGUI Set vector output format: fix check native format dsn (​PR:450)
  • wxGUI Set vector output format: fix load profile settings (​PR:451)
  • wxGUI: several fixes related to font dialog (​PR:292)
  • wxGUI: Show line numbers in the Python editor (pyedit and gmodeler) (​PR:284)
  • wxGUI Vector Network Analysis Tool: fix close dialog (​PR:419)
  • wxGUI Vector Network Analysis Tool: fix ComboBox? widget deprecation warning (​PR:418)
  • wxGUI Vector Network Analysis Tool: fix destroy open dialog (​PR:432)
  • wxGUI Vector Network Analysis Tool: fix execute analysis (​PR:440)
  • wxGUI Vector Network Analysis Tool: fix merge dicts (​PR:417)
  • wxGUI: wxnviz: fix for HiDPI monitors with scaling set, fix decoding (​PR:307)
  • Python scripting:
  • numerous stability fixes regarding the Python 3 support
  • replace obsolete time.clock() in Python 3.3 (​PR:244)
  • Projection support;
  • GDAL/OGR import: check projection of input data (​PR:317)
  • Database support:
  • PostgreSQL driver: assign 1000 to TEXT field length (​PR:412)
  • Library changes:
  • Vectlib: fix usage of vector cats in constraint (​PR:262)
  • Vector network lib: fix for Python 3 (​PR:279)
  • gisinit: re-enable the version check
  • Unit tests / CI:
  • (GitHub Actions activated in master: ​https://github.com/OSGeo/grass/actions)
  • User Manuals - Documentation:
  • manual: put module name at first position (​PR:248)
  • full index manual: add missing pages (​PR:258)
  • Cleanup of multiple manual pages
  • G78:m.measure manual: mention square feet
  • G78:r.kappa manual: example export Kappa matrix as CSV file
  • G78:r.slope.aspect manual: explain -9999 for aspect of flat areas
  • Add ​CONTRIBUTING file with a standard contributor Git how-to (​PR:237)
  • Portability:
  • Do not install config.status (​PR:263)
  • Sort file lists in doc and tr stats (​PR:247)
  • Mac: Ctypes related compilation failure fix #3883
  • Mac: Vector digitizer crash fix #3487
  • Mac: G78:g.gui.iclass crash fix #3472
  • Mac: Removing map layer from button in layer manager crashes GUI #3607
  • Mac: Copy-to-clipboard key binding (make CMD+C copy, not clear panel) #3008 and #3592
  • Mac: G78:v.in.pdal compilation failure fix (​PR:475)
  • FreeBSD: add soname (​PR:301)
  • Docker support:
  • Alpine docker image: introduce docker multistage builds (​PR:276)
  • Alpine docker image: work with py3.8 (​PR:278)
  • Alpine docker image: use proj 6.2.1 in Alpine Dockerfile (​PR:255)
  • Alpine docker image: added subversion package for g.extension (​PR:261)
  • switch to Alpine 3.11 and compiled PDAL as being removed from Alpine repo (​PR:399)
  • Ubuntu docker: image with Ubuntu 19:10 (​PR:260)
  • added Singularity file
  • Message Translations:
  • i18N: added new translations from Transifex (​https://www.transifex.com/grass-gis/grass7/dashboard/)

New in GRASS GIS 7.8.1 (Nov 12, 2019)

  • Major module changes:
  • G78:i.zc: avoid integer overflow with large maps
  • G78:r.to.vect: break line when value changes
  • G78:v.digit: fix digitizing on MS Windows
  • Minor module changes:
  • Modules:
  • G78:g.extension: #3902 multiple metadata entries; quick fix of g.extension on MS Windows
  • G78:i.vi: red band not required and GUI section modified
  • G78:r.fillnulls fix to run in Python 3
  • G78:r.slope.aspect: fix -e flag to calculate values at edges
  • G78:v.out.ogr: export datetime attributes as datetime type
  • G78:v.to.rast: print message if missing attribute values are replaced with 0
  • G78:t.vect.export: GPKG support added
  • Improvements in the Graphical User Interface:
  • G78:g.gui.psmap: fixes for Python 3
  • wxGUI: fixes for Python 3, fix deprecated wx.NewId(), replace deprecated wx.!Yield()
  • wxGUI: avoid printing annoying wx debug message on startup
  • wxGUI/animation: fix deprecation warnings
  • get rid of wx.insertStringItem deprecation warnings
  • wxGUI: added install "no translation" function
  • wxGUI: fix d.mon rendering #3896, caused by garbage collection of maplayer resulting in deleting mapfile
  • Python scripting:
  • Stability fixes regarding the Python 3 support
  • Projection support:
  • Libproj: fix treatment of proj extension in wkt
  • Libproj: PROJ 6 support added:
  • Convert lowercase epsg to uppercase EPSG
  • Axis order of a CRS is no longer always easting, northing, it can also be northing, easting, e.g. EPSG:4326. If source and target CRS are available, axis order is adjusted using proj_normalize_for_visualization() to easting, northing if needed.
  • Previously, GRASS GIS did conversions of degress to/from radians and meters from/to map units. Now PROJ6+ might do these conversions itself, or not. GRASS GIS is now doing the conversions only if needed.
  • In PROJ6+, there can be several different operations to transform coordinates from one CRS to another CRS. If more than one operation is available, information is provided about these different operations. The current region is used by PROJ to select an appropriate operation.
  • GDAL support:
  • GDAL 3 support added
  • User Manuals - Documentation:
  • Various manual pages: examples added/updated
  • Portability:
  • Python-3 support implemented across the tree
  • OSGeo4W: build fixes, rewrite of package.sh, GDAL3/PROJ6 support added
  • OSGeo4W: geos-config: Rename --libs to --clibs (configure uses --clibs)
  • Docker support:
  • Various docker images listed at: https://grass.osgeo.org/download/software/docker-images/
  • Dockerfile: updated to Python 3 and various base distributions
  • use copy instead of git clone in Dockerfiles
  • Message Translations:
  • I18N: added new translations from Transifex (​https://www.transifex.com/grass-gis/grass7/dashboard/)
  • New Addons since GRASS 7.8.0:
  • G7A:r.mapcalc.tiled - Runs r.mapcalc in parallel over tiles
  • G7A:r.slope.direction - Calculates slope following a direction raster
  • G7A:r.zonal.classes - Calculates zonal classes proportion describing raster areas's composition, e.g., in terms of land-cover classes
  • Closed tickets:
  • Closed bugs since the last release:
  • #3781 v.in.geonames - fails in winGRASS7.7 (python3)
  • #3871 winGRASS: vector digitizing error messages
  • #3873 winGRASS Version: 7.7.dev - deprecated warning in 3D modus
  • #3875 GRASS doesn't start with non-system locale
  • #3882 winGRASS: not able to digitize vector polygons
  • #3885 wxGUI no longer shows start image
  • #3895 g.gui.animation deprecation messages
  • #3902 g.extension problem: multiple entries, slowing down GRASS startup
  • #3904 7.9.dev: startup warning
  • #3906 g.gui.psmap needs Python upgrade
  • #3921 GUI fails to start if rc contains missing mapset
  • #3928 parser: --json bug with white space in parameter values
  • #3932 i.vi: NDWI unnecessarily requires red band
  • #3938 v.out.ogr and Date fields

New in GRASS GIS 7.6.1 (Mar 20, 2019)

  • Graphical User Interface:
  • GRASS GIS 7.6 graphical user interface now displays the computational region extent by default in the Map Display window. This simple new feature allows to always visualize such an important basic concept in GRASS GIS and makes it a lot easier for newcomers. Moreover, a new widget has been implemented for commands including an SQL WHERE parameter to ease selection of features/data.
  • Show region extent in Map Display
  • Computational region extent
  • Many fixes were aimed to enhance compatibility with wxPython 4. The data catalog, the graphical modeler and the startup have also received many improvements in this new major GRASS GIS release.
  • Modules (commands)
  • A series of new modules has been added and many improved as outlined below.
  • General modules:
  • The core G7:g.region module comes with a new grow option that allows to increase or decrease by a certain number of pixels the region extent in all directions.
  • Raster modules:
  • This new GRASS GIS release comes with 3 new dedicated raster modules. The first one, G76:r.path, can be used to trace paths from different starting points following input directions, such as the outputs of G76:r.cost, G76:r.walk or G76:r.watershed, among others. The second one, G76:r.buildvrt, provides the very useful functionality of creating virtual raster (VRT) mosaics from a list of input raster maps. This is very useful when the original data are available in tiles which can now be virtually mosaiked to a single map without overhead for easier analysis. G76:r.buildvrt hence allows processing big areas while avoiding the creation of physical maps, especially useful when space is limited. ?Finally, there is now G76:r.mapcalc.simple, a tool to calculate a new raster map from a simple r.mapcalc expression.
  • r.path example
  • G7:r.path usage: drainage paths from two points
  • Several other raster modules have been improved with new options or flags:
  • G76:r.proj offers a new pipeline option for high-accuracy re-projection provided by PROJ v. 5
  • G76:r.info recognizes different types of raster maps, i.e., "raster" (GRASS native), "reclass" (reclassification of another raster map), "GDAL-link" (GRASS link to a GDAL raster band), "virtual" (virtual mosaic of raster maps)
  • G76:r.mapcalc comes with new functions floor() and ceil()
  • G76:r.slope.aspect has a new -n flag to create aspect as degrees clockwise from North (azimuth) and a new -e flag to compute values at edges
  • G76:r.in.srtm now also supports the import of SRTM Water Body Data products (SWBD)
  • G76:r.random has a new seed option to set the seed of the RNG, making it possible to reproduce the same random pixels in different runs
  • G76:r.cost has a new solver option to control which direction is used in case of multiple directions with equal costs
  • G76:r.colors includes inferno, magma and plasma color tables as well as a new flag -d to list available rules with description (e.g. "srtm: color palette for Shuttle Radar Topography Mission elevation [range: -11000 to 8850]")
  • r.mapcalc.simple example 1 r.mapcalc.simple example 2
  • Example of simple expression Option setting in G7:r.mapcalc.simple
  • Many raster modules use the new GRASS GIS API for coordinate transformation and are also ready to use ?PROJ v5 API if available (See Library changes section below). This was a significant improvement and a great effort implemented during the ?OSGeo Code Sprint 2018 in Bonn.
  • Vector modules
  • Several vector modules have been significantly improved with new options, flags, fixes and other enhancements. Here are the most significant ones:
  • G7:v.proj comes now with a new pipeline option for high-accuracy re-projection provided by PROJ v. 5
  • G7:v.in.ogr now also converts OpenStreetMap line topology to GRASS GIS topology, inserting nodes where appropriate (further details can be found in this dedicated wiki page ?OSM vs GRASS topology)
  • G7:v.extract can now dissolve areas not only by category number, but also by attributes, while preserving category values and attribute tables. This is a significant improvement over G76:v.dissolve
  • G76:v.overlay has been improved significantly to speedup large and complex input areas processing
  • G76:v.rast.stats now also reports the number of NULL cells and it has a new 'where' option. In addition, multiple raster maps can now be passed as input to the module to collect statistics
  • G76:v.to.rast now also supports conversion of centroids
  • G76:v.buffer now offers to also build squared buffers around points when the -s flag is set
  • example of squared buffers
  • Squared buffers with G7:v.buffer
  • Imagery modules:
  • Various imagery modules received fixes and enhancements. A lot of work has been put into G76:i.atcorr to fix numerical instability in the 6S method for atmospheric correction. The module now also supports PlanetScope 0c-0d, 0e, and 0f-10 images. A detailed example to process Copernicus Sentinel 2 bands was added to the manual page to make it easier to use for newcomers. G76:i.segment was improved as well for memory management estimation and avoidance of integer overflow when processing extremely large regions. The writing out of goodness of fit and segment ids was also fixed.
  • Temporal GIS modules
  • The most important change in the temporal modules was the long awaited suffix option in G7:t.rast.algebra. This allows to get time and granularity based raster map names out of G76:t.rast.algebra calls. G76:t.info includes support to print history and to use its output in combination with eval. A very nice improvement in the temporal plot tool (G76:g.gui.tplot) now allows to set labels for title, x and y axes, and to export the plotted time series data in a CSV file.
  • updating temporal plot fig
  • Labels in the temporal plot tool
  • Python Scripting
  • The Python scripting library has been improved (note: Python3 support will be available in GRASS GIS 7.8.0, it is under development in grass77).
  • User Manuals - Documentation
  • Translations::
  • Translations are managed in Transifex (please join our efforts and help to translate messages): ?https://www.transifex.com/grass-gis/grass7
  • User manual pages improvements
  • More than 30 user manual pages have received major or minor improvements. These include: various examples added, keyword index improved, many typos fixed, and enhanced descriptions and notes.
  • GRASS 7 Library changes
  • In the past year of development, there were several changes in different GRASS GIS libraries. The most relevant changes are described below:
  • a new raster compression method has been added: ZSTD (?ZSTD, see ?ZSTD on github). ZSTD is an improvement over ZLIB's deflate method, providing both faster and higher compression than ZLIB.
  • a new raster map type has been added: GRASS virtual raster (VRT) which is a virtual mosaic of the list of input raster maps.
  • support for PROJ 5: previously, re-projection from one CRS to another CRS used WGS84 as pivot datum: CRS1 -> WGS84 -> CRS2. This method provided reasonable results and allowed for re-projection on-the-fly. However, using a fixed pivot datum has been regarded as a suboptimal solution for coordinate reprojection, therefore a new mechanism has been introduced in PROJ 5, where custom pipelines for coordinate conversion and transformation can be defined. Together with the new PROJ 5+ API, this pipeline mechanism is now supported starting with proj-5.1.0. Custom coordinate conversion/transformation pipelines can now be defined for raster and vector re-projection.
  • vector modules are now less "chatty" with regard to topology building: only problems are reported, standard topology building messages are only shown with --verbose. This should make it easier for users to spot problems.
  • the segment library uses a new fast all-in-memory cache instead of a file-based cache if all data can be kept in memory
  • the regression t value was fixed and the sum of weights is now forced to DCELL type in libstats.
  • the vector library has been enhanced to use grass_int64 for counting vertices, Vect_line_intersection2() was fixed for snap self-intersection only once and the snapping with box search was optimized
  • Source Code Portability
  • Windows installers winGRASS and OSGeo4W have received several fixes regarding to missing dependencies and packages renamed. WinGRASS has now switched to PROJ 5.2 and GDAL 2.3.

New in GRASS GIS 7.4.4 (Jan 8, 2019)

  • New modules:
  • ​G74:r.mapcalc.simple: Calculates a new raster map from a simple r.mapcalc expression
  • Minor module changes:
  • ​G74:v.distance: speed improvement for small dmax, improve iterative search, fix for dmax
  • ​G74:v.out.ogr: fix #3714, segfault with -n
  • ​G74:v.vol.rst: fix user warning as cellout is undefined here
  • bulk fixing of typos in source code comments
  • Improvements in the Graphical User Interface
  • wxGUI/profile: fix showing legend
  • Portability:
  • mswindows/osgeo4w/package.sh: wingrass: switch to GDAL 2.4.0 in OSGeo4W
  • Closed tickets:
  • #3683 i.segment: output is always NULL
  • #3714 v.out.ogr: segfault with -n
  • #3716 upgrade winGRASS build environment to GDAL 2.4.0

New in GRASS GIS 7.4.3-1 (Dec 11, 2018)

  • The new update release GRASS GIS 7.4.3 is a hotfix release for only two issues discovered in the previous stable version 7.4.2.

New in GRASS GIS 7.4.1 (Jun 16, 2018)

  • New modules:
  • Major module changes:
  • (see also below for closed bugs)
  • ​G74:i.atcorr: sync to trunk (updated spectral curves for various satellites; fix band order for Worldview2; addition of Sentinel-2B, improvement of numerical stability
  • ​G74:v.in.pdal: change API calls to PDAL 1.6.0, see #3496 and #2732
  • Minor module changes
  • (see also below for closed bugs)
  • Raster and vector export (​G74:r.out.gdal, ​G74:r.external.out, ​G74:v.out.ogr, ​G74:v.external.out) now includes the CRS EPSG code if available
  • ​G74:r.cross: create categories for output value 0, it is a valid result
  • ​G74:r.contour: avoid tracing back of contour lines
  • ​G74:r.import: use auto-adjustment for lat/lon
  • ​G74:r.in.gdal: fix column offset and column mapping when limiting import to the current region
  • ​G74:r.in.gdal: print only proj comparision when -j flag is given (r.in.gdal -j is mostly used in scripts)
  • ​G74:r.proj: avoid longitude wrapping by PROJ, this is done by GRASS GIS
  • ​G74:r.texture: Fatal error if one of the requested output maps exists
  • ​G74:t.info: activate -h flag
  • ​G74:t.rast.series: Fixed bug #3223 wrong time stamp for raster map in case where condition was used
  • ​G74:v.db.dropcolumn: preserve field length for field type CHARACTER
  • ​G74:v.in.ogr: fix duplicate column names
  • ​G74:v.out.ogr: create and write a new feature only once to avoid duplicate FID's which resulted in an incomplete export in some cases for some output formats, e.g. GPKG.
  • ​G74:v.random restrict wrong categories assigned, see #3524
  • Improvements in the Graphical User Interface
  • Graphical Modeler: print computational time elapsed
  • WxGUI Graphical Modeler: print computational time elapsed
  • Graphical Modeler: delete intermediate data when computation finished
  • WxGUI Graphical Modeler: delete intermediate data when computation finished
  • Graphical Modeler: mark data to be displayed
  • WxGUI Graphical Modeler: mark data to be displayed
  • New SQL where query widget:
  • SQL Where Select Widget
  • ​G74:wxGUI: fix problem with Python addons not showing up on Windows, see #3177
  • ​G74:wxGUI: fix d.vect dialog when loading layer without db connection
  • ​G74:wxGUI: correctly delete layertree, see #3505
  • ​G74:wxGUI: fix font dialog on mac, #3542
  • WxGUI/dbmgr: improve get values speed
  • ​G74:g.gui.tplot: resolved problem with stdvs when no categories are set, see #3294
  • WxGUI/preferences: add new option for random colors (vector)
  • WxGUI/datacatalog: zoom to first added map (sync with lmgr behaviour)
  • WxGUI/datacatalog: display layer on double click
  • Scripting
  • Pygrass: add Module support to underscore in parameter's name
  • PyGRASS: Category.init expects map name to be provided (r72227 backport)
  • Projection support
  • Read EPSG codes with PROJ v.5 fail fixed (#3514)
  • Library changes
  • Init: more messages for invalid location or mapset
  • Libgis: more informative messages when (de)compression fails
  • Libgis: use G_vasprintf() to avoid buffer overflow
  • Vlib: fix with_z = 0 for Vect_line_check_intersection2() and Vect_line_intersection2(), fixes #3567
  • User Manuals - Documentation
  • Doc: show modules without img in graphical index
  • ​G74:i.atcorr manual: added example to process Sentinel bands (contributed by Zofie Cimburova); general manual clean-up
  • ​G74:i.vi: corrected MSAVI2 equation according
  • ​G74:r.colors manual: decipher 'nv' color
  • ​G74:r.in.wms manual: some WMS examples updated
  • ​G74:r.series.accumulate manual: update manual explaining accumulation
  • ​G74:r.stats.zonal manual: added link to r.stats.quantile
  • ​G74:t.rast.algebra manual: add NDVI example; use subsections for examples
  • ​G74:t.rast.algebra manual: formatting fixed + See also section added
  • ​G74:t.register manual: added example to register vector layers (contributed by Ondrej Pesek) and other minor changes/typos
  • ​G74:v.select: make it clear that 'overlap' is 'intersects' in GEOS, not 'overlaps'
  • Portability
  • Bump supported Python version to 2.7
  • Store grass.appdata.xml under share/metainfo/org.osgeo.grass.appdata.xml
  • ​G74:r.random.surface: rename variable Surface to RSurface to avoid variable clash with GDAL on EPEL7
  • Message Translations
  • I18N: msg update in PO files from source code
  • I18N: added Hungarian from Transifex (​https://www.transifex.com/grass-gis/grass72/dashboard/)
  • I18N: sync from Transifex (​https://www.transifex.com/grass-gis/grass72/dashboard/) except for Latvian; Latvian sync'ed from trunk files
  • New Addons since GRASS 7.4.0
  • ​G7A:i.ann.maskrcnn: Train and apply Mask R-CNN (convolutional neural network)
  • ​G7A:i.pysptools.unmix: Extract endmembers from imagery group and perform spectral unmixing using pysptools
  • ​G7A:i.sentinel.mask: Creates clouds and shadows masks for Sentinel-2 images
  • ​G7A:i.signature.copy: List signature file for a group/subgroup
  • ​G7A:i.signature.list: List signature file for a group/subgroup
  • ​G7A:i.signature.remove: List signature file for a group/subgroup
  • ​G7A:v.clean.ogr: Imports vector data into a GRASS vector map, cleans the data topologically, and exports them again using OGR library
  • R.sentinel.*: renamed to i.sentinel.*
  • Closed tickets
  • Closed bugs since the last release
  • #2790
  • Output of t.rast.list with method=comma and columns=name does not differ from output with columns=id
  • #3059
  • R.external.out does not write CRS information
  • #3151
  • Raster digitizer crashes GUI in trunk
  • #3223
  • R.info displays wrong timestamp after t.rast.series with a where clause
  • #3332
  • V.proj - Error in pj_do_transform
  • #3344
  • R.stream.slope Segmentation fault: 11 error
  • #3450
  • 7.4.0 new modules missing in GUI menus
  • #3469
  • I.atcorr: Sentinel-2 support broken on some systems
  • #3484
  • Patch to fix spelling errors
  • #3488
  • V.in.ogr mangeling of column names when imporing OSM geojson extracts
  • #3492
  • R.texture overwrites without --o flag and without any warning when map exists
  • #3493
  • Compilation error with python 2.6
  • #3496
  • V.in.pdal: does not compile with PDAL 1.6.0
  • #3505
  • Opening a workspace file
  • #3514
  • Read EPSG codes with PROJ v.5 fails
  • #3536
  • Python library db_table_in_vector function
  • #3542
  • Cannot set default font in preferences
  • #3546
  • T.rast.what: issues in one_point_per_col_output()
  • #3557
  • Patch to fix spelling errors
  • #3567
  • V.select: doubtful result with the default overlap operator selecting areas with lines
  • Closed wishes since the last release
  • #789
  • G.region option to expand the computational region of about "some" pixels?
  • #1878
  • Metric distance option for v.distance in latlon regions
  • #2122
  • V.to.db: new variables to add
  • #2183
  • V.centerpoint: category values in ascii output should include original cat values
  • #2234
  • WxGUI d.mon and g.gui monitor rendering is slow
  • #2368
  • Python version of r.grow does not support shrinking
  • #2417
  • R.profile should report distance in location units
  • #2896
  • Allow installation of specific versions of GRASS addons
  • #3416
  • T.list: add mapset option as in g.list
  • #3482
  • I.atcorr: Add Sentinel-2B
  • #3511
  • [patch] v.buffer: allow squared buffers around points

New in GRASS GIS 7.4.0-1 (Jan 26, 2018)

  • New modules
  • G74:r.geomorphon: calculate geomorphons (terrain forms) and associated geometry using machine vision approach (moved from addons)
  • G74:g.gui.image2target: managing Ground Control Points for 3D correction.
  • G74:g.gui.photo2image: correct scanning distortions of a scanned aerial photo
  • G74:v.clip: extract features of input map which overlay features of clip map (moved from addons)
  • G74:v.profile: new vector map profiling tool (moved from addons)
  • Major module changes:
  • G74:g.proj: When a new location is created from vector data, use the default region s=0 n=1 w=0 e=1 res=1 to avoid potentially invalid region settings
  • G74:i.atcorr: added support for Pleiades1a, Pleiades1b, Spot6, Spot7, Sentinel-2A, Rapideye, Worldview3. Fixed band order for WorldView2
  • G74:i.modis.qc: Added mod09GA QA definitions
  • G74:i.segment: new mean shift algorithm
  • G74:r.out.gdal: now creates overviews to enhance compatibility with other GIS software packages
  • G74:r.regression.multi: added RMSE and MAE estimation
  • G74:r.sim.water: Parallelized with OpenMP for multi core systems (integration of r.sim.water.mp addon)
  • G74:r.sun: Parallelized with OpenMP for multi core systems (integration of r.sun.mp addon)
  • G74:r.what: added new -v flag to return also vector category
  • G74:v.edit: tool=merge has an improved iteration over list of lines, improved skip invalid lines and zero length lines; added Vedit_extend_lines, improved intersection check; better handling of Vedit_connect_lines by extending both lines; fixed snapping to background map.
  • G74:v.external: new where option
  • G74:v.net.alloc and ?G74:v.net.iso: added flag for unique and original categories (#517)
  • G74:v.out.ogr: Default format changed from Esri Shapefile to ?OGC GeoPackage (#3428)
  • G74:v.out.ogr: New -l flag to list supported formats (r71552)
  • G74:v.surf.bspline: Parallelized with OpenMP for multi core systems
  • G74:v.surf.rst: Parallelized with OpenMP for multi core systems
  • G74:v.vect.stats: New cat and where options for area and point vector maps to perform counts or estimate statistics only with selected points over selected areas (r71543)
  • lat/lon locations: automatically fix floating point precision errors in the grid geometry of imported raster maps created with GIS software that uses limited floating point precision (common problem).
  • support import of raster maps exceeding 90N or 90S or with an EW extent larger than 360 degrees
  • various commands: unit tests added
  • Minor module changes:
  • G74:i.atcorr: fix loading spectral responses
  • G74:r.clump: fuzzy clumping, multispectral clumping, minimum clump size
  • G74:r.external.out: export also coordinate reference system (CRS)
  • G74:r.sim.water: added parallelization support
  • G74:r.sim.sediment: added parallelization support
  • G74:r.in.lidar: added -d flag to use base raster resolution instead of computational region
  • G74:r.in.gdal: new -r flag to optionally limit import to the current region
  • G74:r.import: added support to subset to region boundaries when importing (extent=region)
  • G74:r.mapcalc: implemented computational region settings based on disjoint union and intersection computation from all input raster maps in an expression
  • G74:r.mapcalc: added area() function to calculate area of pixels
  • G74:r.mapcalc: introduced new functions to access current region dimensions in number of cells
  • G74:r.reclass: it is possible to use more than 100 rules now
  • G74:r.resamp.stats: range, count and diversity methods introduced
  • G74:v.in.ogr: Fix import of OSM data (r71464)
  • G74:v.in.ogr: When a new location is created, use the default region s=0 n=1 w=0 e=1 res=1 to avoid potentially invalid region settings (r71490)
  • G74:v.in.ogr: Support new curve geometry types starting with GDAL 2.0 (r71508, r71514)
  • G74:v.in.ogr: code restructuring (r71550)
  • projection checks are now performed for all input layers, not only the first layer
  • projection checks are a bit more strict and more verbose in case of trouble
  • the new GDAL 2.2 API is used where possible, avoiding deprecated functions
  • OSM import is properly working, also with spatial filters and with GDAL < 2.2
  • attribute import and table creation is finished before cleaning to avoid lengthy cleaning if tables can not be created, and to avoid a rare segfault when opening a GRASS database driver
  • the code has been restructured to make it a bit less unreadable and to fix the logic of steps (e.g. check output only if output is created)
  • G74:v.rast.stats: added new -d flag for line densification (as in ?G74:v.to.rast) and corresponding tests
  • G74:v.what: new -m flag to query overlapping features
  • G74:v.what: reset lists for each input map
  • G74:v.patch: build topology after appending
  • G74:v.surf.rst: new parallel implementation and testsuite
  • G74:t.rast.series: added quantile option with test
  • G74:t.rast.mapcalc: added warning before removing empty (null) maps
  • G74:t.rast.export: added GDAL options to support GeoTiff? compression
  • G74:t.info: Add test to verify the support of non ASCII-code
  • G74:t.rast.what:
  • Fixed null value bug, null value definitions are now passed to ?G74:r.what correctly
  • added function to convert granularity to a smaller granularity
  • Improvements in the Graphical User Interface:
  • Data Catalog (available in the Data tab) can now move and copy data between mapsets and locations, reproject rasters and vectors. This can be performed using right mouse click or drag and drop
  • Metadata of the listed maps in the Data Catalog are now available in the context menu (internally calling ​G7:v.info, ​G7:r.info)
  • Show computational region function is now available also from menu Settings > Computational region > Show current region extent in Map Display
  • Help and Advanced search buttons in Modules tab to show documentation (manual pages) for modules
  • Selected sample locations can be now downloaded from the Startup windows using a Download button next to location selection
  • The GRASS GIS Spatial Database Directory is now automatically filled (if available on disk) when user starts GRASS GIS for the first time
  • Access errors for creating location are now shown in the GUI instead of a traceback in the command line
  • Map Display title is now more readable and says GRASS GIS Map Display: name - location/mapset
  • Map Display new web browser-like shortcuts for re-rendering
  • Simple Python Editor is now available from the File menu
  • Font can be selected interactively in module dialogs and there are some new symbols for vectors
  • ​G74:g.gui.gcp: vector map rectification has been improved (#3066)
  • Scripting:
  • PyGRASS:
  • Implemented MultiModule class and enabled temporary region environment for multi module runs. This class allows to put multiple modules into the parallel module queue, for example coupled g.region and r.mapcalc calls, that must be run in a specific order but many of these combined calls should run in parallel
  • fix _check function to not raise an Error when iterating over available mapsets in a location if a non valid mapset exists
  • Projection support:
  • Regarding EPSG:3857 which uses spherical development of ellipsoidal coordinates: Relative to WGS 84 / World Mercator (EPSG:3395) errors of 0.7 percent in scale and differences in northing of up to 43km in the map (equivalent to 21km on the ground) may arise. This has been fixed in recent GRASS 7.4.0+, providing same results like GDAL.
  • Library changes:
  • Temporal framework:
  • Implemented temporal algebra complement tests that show the current condition bugs
  • Added spatial topological operators to the temporal algebra (r71369)
  • Tests regarding implicit temporal aggregation
  • improved gran_to_gran function to return correctly years and second values
  • added function to convert granularity to a smaller granularity
  • Enabled raster region specific parallel processing by using the MultiModule? class
  • diglib: fix bug caused by compiler optimizations
  • libproj:
  • improved integration of GDAL and streamlining of spatial reference system handling
  • added GPJ_grass_to_wkt2() and GPJ_grass_to_osr2()
  • python vector scripting library:
  • added layer variable to vector_info and vector_info_topo functions
  • libgis:
  • support global datasets which slightly exceed -180..+180, -90..+90
  • G_window_percentage_overlap() now accounts for N == S or E == W
  • new G_adjust_window_ll() to automatically fix lat/lon errors
  • relax ll restrictions when reading DMS coords
  • support for HTML/CSS hash hexadecimal colors in G_str_to_color()
  • libraster:
  • fix/improve Rast_align_window()
  • NULL file compression by default
  • support range of categories for CELL type
  • eliminate RPC/XDR dependency from raster library
  • libsim:
  • more control over seeding for random number generator
  • User Manuals - Documentation:
  • Various manual pages: new screenshots added, thanks to ​Google Code-in
  • ​G74:i.ortho.photo: new manual page
  • Message Translations:
  • Translations now managed in Transifex (please join and translate messages): ​https://www.transifex.com/grass-gis/grass72
  • Dockerfile:
  • Updated, docker image
  • New Addons since GRASS 7.2.0:
  • ​G7A:d.explanation.plot: Draws a plot of multiple rasters to explain a raster operation for example a + b = c
  • ​G7A:i.in.probav: Imports PROBA-V NDVI data into a raster map with real NDVI data range
  • ​G7A:i.variance: Analyze variation of variance with variation of resolution
  • ​G7A:r.clip: Extracts portion of the input map which overlaps with current region
  • ​G7A:r.colors.contrastbrightness: Changes the contrast/brightness of a raster
  • ​G7A:r.fill.gaps: Rapidly fills 'no data' cells (NULLs) of a raster map with interpolated values (IDW) (ported from GRASS6)
  • ​G7A:r.green.gshp.technical: Calculates the Ground Source Heat Pump technical potential using the ASHRAE method
  • ​G7A:r.green.gshp.theoretical: Calculates the Ground Source Heat Pump potential
  • ​G7A:r.green.hydro.planning: Calculates hydropower energy potential with user's recommendations (renamed from r.green.hydro)
  • ​G7A:r.gsflow.hydrodem: Creates hydrologically correct MODFLOW DEM from higher-res DEM
  • ​G7A:r.learn.ml: Supervised classification and regression of GRASS rasters using the python scikit-learn package (renamed from r.randomforest)
  • ​G7A:r.mblend: Blends two rasters of different spatial resolution
  • ​G7A:r.object.activelearning: Performs active learning for OBIA classification
  • ​G7A:r.object.spatialautocor: Calculates spatial autocorrelation of raster objects
  • ​G7A:r.sim.water.mp: r.sim.water with openmp support --> integrated in core GRASS GIS
  • ​G7A:r.spread.sod: Stochastic landscape spread model of forest pathogen - Sudden Oak Death (SOD)
  • ​G7A:r.sun.mp: r.sun with openmp support --> integrated in core GRASS GIS
  • ​G7A:t.rast.kappa: Calculates kappa parameter in a space time raster dataset
  • ​G7A:t.rast.what.aggr: Samples a space time raster dataset at specific vector point map returning aggregated values and writes the output to stdout or to attribute table
  • ​G7A:v.gsflow.export: Exports databse tables and pour point for GSFLOW input and control files
  • ​G7A:v.gsflow.gravres: Sets parameters for GSFLOW Hydrologic Response Units (HRUs)
  • ​G7A:v.gsflow.grid: Builds grid for the MODFLOW component of GSFLOW
  • ​G7A:v.gsflow.hruparams: Sets parameters for GSFLOW Hydrologic Response Units (HRUs)
  • ​G7A:v.gsflow.reaches: Builds stream "reaches" that link PRMS segments to MODFLOW cells
  • ​G7A:v.gsflow.segments: Prepares stream segments for PRMS and GSFLOW
  • ​G7A:v.net.curvedarcs: Draws curved arcs between points (e.g. flows)
  • ​G7A:v.stream.inbasin: Subsets a stream network into just one of its basins
  • ​G7A:v.stream.network: Builds a linked stream network: each link knows its downstream link
  • ​G7A:v.what.rast.multi: Uploads values of multiple rasters at positions of vector
  • Closed tickets:
  • Closed bugs since the last release:
  • v.kernel and r.surf.fractal overwriting
  • r.viewshed binary flag (-b) not working correctly
  • r.external.out does not write CRS information
  • vector import wizzard and v.in.ogr --ui fails to import a vector
  • GetEventHandler assertation after loading workspace twice
  • v.label.sa broken and duplicated in trunk and addons
  • Behavior of v.sort.points
  • v.to.db: incorrect area calculations in lat-long location
  • r.import inconsistent behavior when using r.in.gdal and r.proj
  • encoding issue when launching modules
  • v.buffer silently ignores options depending on buffering alhorithm in use
  • Patch to fix various spelling errors
  • Trunk fails to compile on Xenial
  • v.what test broken
  • Compilation failure with >=glibc-2.14 due to missing rpc
  • i.ortho.photo segmentation fault
  • Closed wishes since the last release:
  • Interactive geometry selection and export tool for wxgui
  • add EPSG:900913 to location wizard
  • r.horizon bugfix and speedup
  • wxgui: ctrl-t to tile layer manager and map window full screen
  • r.in.gdal lacks flag "-r Limit import to the current region"
  • rfe r.in.gdal: auto-calc memory= value
  • wish: all modules that create a new map should put the module call into history
  • t.rast.aggregate: Name output rasters based on start-time
  • Include map elements into GRASS workspaces
  • support for background option for grid labels in d.grid
  • Add text after labels in d.legend
  • d.legend.vect: possibility to change text of displayed labels and select labels to show/not show
  • r.terraflow requires all output options to be given
  • r.seasons: add option to use an input map with per-cell thresholds
  • Better error message if v.in.wfs fails during networking
  • v.vect.stats: add "where" option
  • GUI: Make metadata accessible in Data tab
  • Patch to fix various spelling errors

New in GRASS GIS 7.2.2 (Sep 21, 2017)

  • 2017-09-16 12:27 neteler:
  • include/VERSION: GRASS GIS 7.2.2
  • 2017-09-16 10:38 veroandreo:
  • temporal/t.rast.accdetect/t.rast.accdetect.html
  • t.rast.accdetect: manual page minor enhancements (trunk r71493)
  • 2017-09-13 02:34 annakrat:
  • lib/python/imaging/images2gif.py: pythonlib: improve GIF export
  • with Pillow through quantization (merge from trunk, r71485)
  • 2017-09-12 16:51 veroandreo:
  • temporal/t.list/t.list.html: t.list: add example for where option (trunk r71483)
  • 2017-09-08 12:54 martinl:
  • lib/python/imaging/images2gif.py: pythonlib: add PIL native implementation available since Pillow 3.4.0, see #3367 (merge r71258 from trunk)
  • 2017-09-08 12:51 martinl:
  • lib/python/imaging/images2gif.py: pythonlib: see #3367 - creating gif files (merge r71243 from trunk)
  • 2017-09-08 06:35 martinl:
  • mswindows/GRASS-Installer.nsi.tmpl: fix another typo in r71469
  • 2017-09-07 19:47 mmetz:
  • lib/vector/dglib/graph_v1.h, lib/vector/dglib/graph_v2.h: dglib
  • fix pointer casting (backport from trunk r71477)
  • 2017-09-07 14:22 martinl:
  • mswindows/GRASS-Installer.nsi.tmpl: fix typo in r71469
  • 2017-09-07 12:07 martinl:
  • lib/python/docs/src/pygrass_raster.rst: PyGRASS docs: Cols androws variables have been moved to .info (merge r71472 from trunk)
  • 2017-09-06 18:18 mlennert:
  • locale/po/grasswxpy_fr.po: french GUI translations: dangerous confusion between exiting GRASS and closing GUI
  • 2017-09-06 07:18 martinl:
  • mswindows/GRASS-Installer.nsi.tmpl: WinGRASS: add msvcrt2015 as dependency (merge r71468 from trunk)
  • 2017-09-05 18:21 martinl:
  • mswindows/GRASS-Installer.nsi.tmpl: winGRASS installer: update
  • msvcrt packages (merge r71466 from trunk)
  • 2017-09-03 02:14 wenzeslaus:
  • tools/thumbnails.py: replace g.ppmtopng and d.colortable by g.region, r.mapcalc and d.rast (see #3200, backport of r70725)
  • 2017-08-31 21:04 neteler:
  • locale/po/grasslibs_ar.po, locale/po/grasslibs_cs.po,
  • locale/po/grasslibs_de.po, locale/po/grasslibs_el.po,
  • locale/po/grasslibs_es.po, locale/po/grasslibs_fi.po,
  • locale/po/grasslibs_fr.po, locale/po/grasslibs_id_ID.po,
  • locale/po/grasslibs_it.po, locale/po/grasslibs_ja.po,
  • locale/po/grasslibs_ko.po, locale/po/grasslibs_lv.po,
  • locale/po/grasslibs_ml.po, locale/po/grasslibs_pl.po,
  • locale/po/grasslibs_pt.po, locale/po/grasslibs_pt_BR.po,
  • locale/po/grasslibs_ro.po, locale/po/grasslibs_ru.po,
  • locale/po/grasslibs_si.po, locale/po/grasslibs_sl.po,
  • locale/po/grasslibs_th.po, locale/po/grasslibs_tr.po,
  • locale/po/grasslibs_uk.po, locale/po/grasslibs_vi.po,
  • locale/po/grasslibs_zh.po, locale/po/grassmods_ar.po,
  • locale/po/grassmods_cs.po, locale/po/grassmods_de.po,
  • locale/po/grassmods_el.po, locale/po/grassmods_es.po,
  • locale/po/grassmods_fi.po, locale/po/grassmods_fr.po,
  • locale/po/grassmods_id_ID.po, locale/po/grassmods_it.po,
  • locale/po/grassmods_ja.po, locale/po/grassmods_ko.po,
  • locale/po/grassmods_lv.po, locale/po/grassmods_ml.po,
  • locale/po/grassmods_pl.po, locale/po/grassmods_pt.po,
  • locale/po/grassmods_pt_BR.po, locale/po/grassmods_ro.po,
  • locale/po/grassmods_ru.po, locale/po/grassmods_si.po,
  • locale/po/grassmods_sl.po, locale/po/grassmods_th.po,
  • locale/po/grassmods_tr.po, locale/po/grassmods_uk.po,
  • locale/po/grassmods_vi.po, locale/po/grassmods_zh.po,
  • locale/po/grasswxpy_cs.po, locale/po/grasswxpy_de.po,
  • locale/po/grasswxpy_el.po, locale/po/grasswxpy_es.po,
  • locale/po/grasswxpy_fi.po, locale/po/grasswxpy_fr.po,
  • locale/po/grasswxpy_id_ID.po, locale/po/grasswxpy_it.po,
  • locale/po/grasswxpy_ja.po, locale/po/grasswxpy_ko.po,
  • locale/po/grasswxpy_lv.po, locale/po/grasswxpy_ml.po,
  • locale/po/grasswxpy_pl.po, locale/po/grasswxpy_pt.po,
  • locale/po/grasswxpy_pt_BR.po, locale/po/grasswxpy_ro.po,
  • locale/po/grasswxpy_ru.po, locale/po/grasswxpy_si.po,
  • locale/po/grasswxpy_th.po, locale/po/grasswxpy_tr.po,
  • locale/po/grasswxpy_uk.po, locale/po/grasswxpy_vi.po,
  • locale/po/grasswxpy_zh.po: i18N: sync to trunk po files using
  • 'msgmerge -N --no-wrap'
  • 2017-08-31 19:49 neteler:
  • raster/r.topidx/main.c, raster/r.watershed/front/main.c
  • r.watershed, r.topidx: more keywords
  • 2017-08-31 19:47 neteler:
  • raster/r.horizon/r.horizon.html: r.horizon manual: minor example fix
  • 2017-08-31 17:49 mmetz:
  • vector/v.in.ogr/main.c: v.in.ogr: use correct key column name (backport trunk r71455)
  • 2017-08-31 17:14 mmetz:
  • vector/v.in.ogr/main.c: v.in.ogr: disable OSM import because it needs a special reading mode (backport from trunk r71453)
  • 2017-08-31 15:54 neteler:
  • raster/r.compress/r.compress.html: r.compress manual: URLs to compression methods added
  • 2017-08-31 14:00 mmetz:
  • lib/raster/open.c: rasterlib: fix segfault if NULLS are compressed, but not data (backport trunk r71448)
  • 2017-08-30 21:19 neteler:
  • include/VERSION: back to SVN

New in GRASS GIS 7.2.1 (Sep 18, 2017)

  • Include/VERSION: GRASS GIS 7.2.1
  • Imagery/i.group/i.group.html: i.group manual: example added
  • Temporal/t.list/t.list.py: t.list: Fixed output file generation. bug reported in #3316 (trunk, r70968)
  • Vector/v.kernel/v.kernel.html, vector/v.kernel/v_kernel.png: v.kernel: add example with picture (merge from trunk, r70942)
  • Raster/r.circle/r.circle.html: r.circle: missing HTML tag in manual (merge from trunk, r70969)
  • Temporal/t.rast.what/t.rast.what.py: t.rast.what: correct user msg (fix #3337)
  • Temporal/t.register/t.register.html, temporal/t.register/t.register.py: t.register: clarify its functionality (provided by veroandreo)
  • Temporal/t.register/t.register.html, temporal/t.register/t.register.py: temporal modules t.register:
  • Applied patch from Veronica Andreo for better documentation and spelling (trunk, r70728)
  • Doc/howto_release.txt: doc/howto_release.txt: rm leftover demolocation/PERMANENT/.bash* files
  • Include/VERSION: back to SVN

New in GRASS GIS 7.0.5 (Oct 21, 2016)

  • The GRASS GIS 7.0.5 release provides more than 150 fixes and improvements with respect to GRASS GIS 7.0.4.
  • Minor module changes:
  • ​G70-d.barscale/northarrow- fix layout when using frame, see #3121
  • ​G70-db.connect- connection to remote database does not work (see #3167)
  • ​G70-db.login- PostgreSQL DB driver "pg"- fix connection debug message to include also login info
  • ​G70-d.histogram- fix x axis labels for small numbers, see #2463
  • ​G70-d.mon- enlarge width to unhide selection window; solves Gtk-CRITICAL GtkCheckButton? message flooding (#3117)
  • ​G70-d.northarrow- fix multiplication of arrow in latlon regions, see #1242 and #1410
  • ​G70-d.wms- fix move temp file with os.rename (fix #3148)
  • ​G70-g.extension- fix loading of temporal addons
  • ​G70-g.region- fix uninitialized struct - fixes convergence angle, #1500
  • ​G70-i.segment- fix manhattan distance
  • ​G70-i.vi- print msg which index is actually calculated; fix ARVI name; apply standard NDVI color table in case of viname=ndvi; writing of color tables fixed
  • ​G70-r.mapcalc- fix wrong result when neighborhood modifier takes a cell above first
  • ​G70-r.out.gdal- enhance compatibility WRT metadata
  • ​G70-r.to.vect- delete output on error (see #2394)
  • ​G70-v.category- fix copy categories; fix Windows bug
  • ​G70-v.edit tool=merge- improve iteration over list of lines, handle zero-length lines
  • ​G70-v.in.ogr key flag does not change category values and you loose connection between features and attributes (fix #1494);fix segmentation fault (fix #2868)
  • ​G70-v.out.ogr- fix export areas without category as one multi-feature
  • ​G70-v.out.postgis- fix epsg vs. srid check
  • ​G70-v.what- escape backslash in attributes for valid JSON, see #3133
  • ​G70-wxGUI- escape ampersand when writing d.wms into workspace, see #3147
  • i.eb.* + i.evapo.*- fix for MegaJoules per meter square per day
  • GUI changes:
  • wxgui- fix for profile surface map, bivariate scatter plot, histogram of raster map broken with wxPython 3.0.2 (#2558)
  • wxGUI- fix font dialogs on Mac, see #3046
  • wxGUI/nviz- when showing legend parameter at can have floats not just int
  • wxGUI- catch also UnicodeDecodeError when reading current directory as GISDBASE
  • ​G70-g.gui.gmodeler- substitute all occurrences of variable in command (bugfix)
  • wxGUI- fix escape button to close dialogs and fix keyboard shortcuts on Mac, see #797
  • wxGUI- solve #2558 and #3112 by distributing wx.lib.plot.py with GRASS
  • wxGUI web_services- archived NASA OnEarth replaced with NASA GIBS WMTS
  • ​G70-g.gui.gmodeler - not possible to remove data from model (trac #2947)
  • wxGUI- escape single quotes when editing attributes from GUI, see #2252
  • GUI/vdigit- fix snapping units, see #2848
  • PyGRASS changes:
  • python script- backported raster_what function to work with or without localized labels fixed #2912
  • Library changes:
  • G_tempfile() lacks perror support (fix #2278)
  • Map projection changes:
  • libgis- register NAD83/2011 datum (EPSG-6543)
  • Portability changes:
  • Patches to make the build reproducible (fileordering, randomness)
  • MS Windows:
  • liblas support enabled
  • Manual pages:
  • ​G70-grass7 and ​G7-helptext intro pages- minor cleanup and fixes
  • ​G70-g.gui.gmodeler manual- fixed spelling errors
  • ​G70-i.atcorr manual and ​G7-imageryintro manual- clarify TOAR part; cross links added; keywords added
  • ​G70-r.import manual- fix WorldClim? import example
  • ​G70-r.import manual- SRTM V3 example added
  • ​G70-r.in.gdal manual- add Worldclim import trick
  • ​G70-r.mapcalc manual/rasterintro- explain precision differences
  • ​G70-r.neighbors manual- fix average example (was wrongly in maximum)
  • ​G70-r.sim.water manual- cleanup
  • ​G70-r.statistics + r.stats.quantile + r.stats.zonal manual- extended
  • ​G70-r.univar/G70-r3.univar manuals- examples improved
  • ​G70-r.watershed manual- update manual
  • ​G70-v.distance manual- explain units of dmin and dmax
  • ​G70-v.overlay manual- remove duplicated notes about olayer option from the manual, figure caption cosmetics
  • Message translation updates:
  • Spanish translation
  • Polish translation
  • New addons since release 7.0.4:
  • ​G7A-i.image.bathymetry- Satellite Derived Bathymetry (SDB) from multispectral images
  • ​G7A-i.landsat8.qc- Reclass Landsat8 QA band according to acceptable pixel quality as defined by the user
  • ​G7A-r.colors.cubehelix- Create or apply a cubehelix color table to a GRASS raster map
  • ​G7A-r.colors.matplotlib- Convert or apply a Matplotlib color table to a GRASS raster map
  • ​G7A-r.object.geometry- Calculates geometry parameters for raster objects.
  • ​G7A-r.quantile.ref- Determines quantile for input value from reference raster map layers.
  • ​G7A-r3.what- Queries 3D raster in specified 2D or 3D coordinates.
  • ​G7A-v.clip- Extracts features of input map which overlay features of clip map.
  • ​G7A-v.explode- Explode polylines, splitting them to separate lines (uses v.split + v.category)
  • ​G7A-v.in.pygbif- Search and import GBIF species distribution data directly from GBIF API using pygbif
  • ​G7A-v.sort.points- Sorts a vector point map according to a numeric column
  • ​G7A-v.strds.stats- Calculates univariate statistics from given space-time raster datasets based on a vector map
  • ​G7A-v.surf.tps- Performs thin plate spline interpolation with regularization and covariables
  • ​G7A-v.what.spoly- Queries vector map with overlaping spaghetti polygons (e.g. Landsat footprints) at given location. Polygons must have not intersected boundaries
  • Closed bugs since the last release:
  • #590 wxGUI vector display forgets layer selection
  • #797 Cmd-C on Mac closes display
  • #909 FTBFS- r.mapcalc in trunk
  • #960 Some hotkeys disabled in 6.5 wxgui
  • #965 Location wizard- doesn't create MYNAME
  • #1242 vector fills and line widths not displaying in latlon regions
  • #1258 Trouble with external OGR sources and relative paths (v.external)
  • #1410 scalebar displays multiples north arrows
  • #1427 strange, low res display output behavior
  • #1442 GRASS 7- d.grid layout suboptimal
  • #1474 random color -c flag broken in d.vect
  • #1494 v.in.ogr key flag does not change category values and you loose connection between features and attributes
  • #1568 'make install' results in an installation dependent upon temporary build directories
  • #1574 WXGUI Launch script- "output already exists"
  • #1593 location wizard setting default extents broken
  • #1705 i.group segfaults on empty input
  • #1804 r.clump NULL handling
  • #1857 Correction help file r.colors
  • #1863 DBMI Protocol Error in v.extract
  • #1873 winGrass hangs when issuing exit command from the console if not GUI hasn't been closed first
  • #1876 pressing "save" on Digitization settings dialog raises error
  • #1909 remove deleted layer from layer tree
  • #1920 create IPython magic to launch GRASS wxGUI components Ipython qt console
  • #1921 create IPython magic to control from IPython Notebook
  • #1966 filesystem cruft from wingrass installer
  • #1988 towgs84 datum transform options not maintained with shapefile export
  • #2028 SetVirtualSizeHints is deprecated in wxWidgets 2.9
  • #2058 Example instructions in (grass/trunk) d.graphs' manual refer to d.frame
  • #2097 r.modis install using g.extension fails
  • #2099 G_OPT_M_COLR not recognized in Python script
  • #2115 wxgui renders disabled layers on map change
  • #2119 wxgui- attribute table manager fails with "Inconsistent number of columns in the table"
  • #2140 m.proj does not handle cs2cs failure
  • #2147 db.databases not working in GRASS 7
  • #2178 No polygon fill when using the png display driver
  • #2247 bivariate scatterplot- undefined variable issue
  • #2252 wxGUI vector digitizer passing unescaped text to database
  • #2272 Improve consistency in random generator usage
  • #2278 G__tempfile() lacks perror support
  • #2360 grass startup script and wx preference file- language setting in wx does not contain country specific language code
  • #2389 Error in Grass-gis 7.1. svn
  • #2398 grass.exec_command should add .exe where needed
  • #2406 wxview compilation error
  • #2438 Vect_get_line_type cannot handle line out of range
  • #2452 v.surf.rst option devi Windows problem
  • #2463 d.histogram x-axis numbering incorrect
  • #2469 Zoom to saved region in Map Display not working
  • #2480 v.class.ml- ImportError- No module named training_extraction
  • #2481 g.gui.iclass- cannot display analysis results because of "No graphics device selected"
  • #2506 g.rename fails to rename map when there is already map of the same name in PERMENENT
  • #2509 d.mon output overwrite
  • #2513 v.colors freezes using the pg driver and attr
  • #2514 G_OPT_C_BG and G_OPT_C_FG differ in support of color_none
  • #2524 wxGUI v.in.ogr wrapper fails to find any layers if file path contains non-latin letters
  • #2540 [PATCH] Add options to r.out.gdal to suppress GRASS specific metadata items
  • #2586 Display of labels in raster query results window is limited to the first 60 characters
  • #2594 r.univar output error
  • #2605 d.rast.leg- invalid literal for float()- rectangle
  • #2623 GRASS won't start after creating addons
  • #2658 [PATCH] v.to.db compactness gives wrong results in feet location
  • #2659 replace function bug in t.rast.mapcalc.py
  • #2664 The r.watershed module documentation has the wrong value for cells that do not get included in a complete watershed.
  • #2683 grass 7 doesn't start in text mode on CentOS 7
  • #2710 vector digitizer- new vector layer is not checked in layer manager
  • #2730 wxGUI- wx.metadata/wx.mwprecip/etc- Unable to fetch interface description for command 'wx.metadata'
  • #2817 Adding multiple raster/vector maps is slow
  • #2848 g.gui.vdigit- snapping distance seems to only be defined in map units, not screen pixels
  • #2854 results in winGRASS7 32bit vs 64bit- should they be identical?
  • #2865 Error when installing r.modis add-on and warning when starting grass
  • #2868 v.in.ogr Segmentation fault
  • #2893 Specify crs when exporting to GeoJSON
  • #2902 i.segment.hierarchical- Execution of subprocesses was not successful
  • #2912 raster_what() not compliant with localised version of GRASS
  • #2934 Documentation error in i.vi WRT to MSAVI parameters
  • #2947 g.gui.gmodeler - not possible to remove data from model
  • #2968 g.extension problem with module containing various python files- "ImportError- No module named"
  • #2981 r.watershed & blocking
  • #2996 Lidar modules broken in 64bit WinGRASS
  • #3012 g.region -p reporting correct projection, but unknown datum NAD83(2011) /North Carolina (USft)
  • #3030 v. generalize fails to generalize polygons in a random manner
  • #3036 Bug with location wizard on OSX (version 7, homebrew)
  • #3039 "Analyze map" not working with GRASS 7.0.4 (OSX - homebrew)
  • #3040 - old manuals?
  • #3041 Grass Nviz crashes
  • #3042 Patches to make the build reproducible (fileordering, randomness)
  • #3045 OSX- command-C closes window instead of copying text
  • #3046 Cannot set display font
  • #3049 g.proj.html- remove link to g.setproj in GRASS 7
  • #3052 Watts to MegaJoules/Day conversion issue
  • #3067 r.mapcalc gives wrong result when neighborhood modifier takes a cell above first
  • #3070 Update link in r.param.scale
  • #3072 ddd
  • #3073 addons installl error
  • #3085 Batch import with import raster data tool does not recognize projection information
  • #3088 Patch to fix various spelling errors
  • #3089 exec_command fails if '.exe' not included in filename.
  • #3094 wxGUI- error when profiling a raster map
  • #3105 r.stats.zonal parameter description
  • #3108 db selection- integer overflow
  • #3112 wxgui scatterplot tool- C++ assertion "m_window" failed at ../src/gtk/dcclient.cpp(2043) in DoGetSize()- GetSize() doesn't work without window
  • #3133 v.what output is not valid JSON format
  • #3135 Pressing Run button in GUI dialogs open a new dialog
  • #3138 Patch to fix various spelling errors
  • #3144 i.segment.hierarchical- RuntimeError- Execution of subprocesses was not successful
  • #3147 d.wms entry in workspace file is not well formed
  • #3148 d.wms cannot move temp file with os.rename
  • #3163 Patch for spelling errors
  • #3165 v.out.ogr -c seg fault
  • #3167 db.connect- connection to remote database does not work
  • Closed wishes since the last release:
  • #84 scritps for converting raster maps into GRASS 7 format, and back
  • #307 v.in.dxf- output name should be required
  • #386 Thematic grouping of grass modules in the command line
  • #742 v.coregister / v.align - A module to translate and rotate a point cloud to best match one another
  • #1209 v.random, restrict output
  • #1236 r.in.wms sleep parameter
  • #1376 Interactive spectral plot gui
  • #1377 wingrass7 hotkey Ctrl+V an have unexpected behaviour from windows user point of view
  • #1390 fully qualified name on g.mlist
  • #1703 wxGUI vector and raster querying
  • #1719 GRASS 7 Monitor command line support
  • #1732 r.colors feature request (add flag to copy categories without having to run r.category separately)
  • #1923 add "area" to head in r.report
  • #1980 Multiple time stamp support for raster and 3D raster maps
  • #1984 i.pca should accept also group names as input (like r.out.gdal)
  • #2045 r.to.vect- use less memory
  • #2143 d.legend- add option to output legend definition as text
  • #2148 wxGUI modeler- allow to name elements in the model schema
  • #2208 r.in.gdal/v.in.ogr- reprojection at import
  • #2952 g.gui.gmodeler - global overwriting option is not respected
  • #3060 Create location from command line using "r.in.gdal" and similar
  • Closed tasks since the last release:
  • #1107 r.terraflow- consistent type for D8CUT
  • #1446 add --with-opencl support to ./configure
  • #2196 g.manual on Windows opens extra file explorer window
  • #2657 pygrass- remove RasterNumpy references

New in GRASS GIS 7.0.4 RC 1 (Apr 27, 2016)

  • The new GRASS GIS 7.0.4RC1 release provides 140 stability fixes and manual improvements compared to 7.0.3.

New in GRASS GIS 7.0.3 (Apr 27, 2016)

  • The new GRASS GIS 7.0.3 release provides 210 stability fixes and manual page improvements compared to version 7.0.2. Of particular interest is the new winGRASS 64 bit support.

New in GRASS GIS 7.0.3 RC 2 (Jan 17, 2016)

  • What's new in a nutshell:
  • The new GRASS GIS 7.0.3RC2 release provides 190 stability fixes and manual improvements. compared to version 7.0.2. Of particular interest is the new winGRASS 64 bit support.

New in GRASS GIS 7.0.3 RC 1 (Jan 4, 2016)

  • The new GRASS GIS 7.0.3RC1 release provides 160 stability fixes and manual improvements. Of particular interest is the new winGRASS 64 bit support.

New in GRASS GIS 7.0.2 (Nov 21, 2015)

  • New modules:
  • ​G7:r.import - Imports raster data into a GRASS raster map using GDAL library and reprojects on the fly.
  • ​G7:v.import - Imports vector data into a GRASS vector map using OGR library and reprojects on the fly.
  • Major module changes:
  • ​G7:i.modis.qc: sync to trunk for various bugfixes
  • ​G7:v.buffer: implement -c -s flags also for GEOS; explain corners (caps) with screenshots
  • Minor module changes:
  • ​G7:db.in.ogr: fix when DB connection is not defined
  • ​G7:g.proj: fix compilation issue when OGR is disabled
  • ​G7:r.in.gdal: add -j flag to perform projection check only (used by r.import) (r65911, fixes r66466)
  • ​G7:r.patch: call Rast_cell_size just once, not for every cell (backport r64877 and part of 66449)
  • ​G7:r.unpack/v.unpack: fix importing to xy location, see #2726
  • ​G7:t.shift: fixed wrong type in t.shift
  • temporal library: Ignore the warning of missing mapset ownership
  • temporal modules (t.*): Fixed usage of the 'z' flag; inform user then -z flag is switched on (much slower then) (trunk, r66319 + r66341)
  • ​G7:v.distance: tell user if input is 3D (esp. relevant for v.what.vect)
  • ​G7:v.in.ogr: wrong projection check when importing geometry column from table with multiple geometry columns (#2740)
  • ​G7:v.kernel: always show target raster resolution; fix dangling curly braces -Wdangling-else
  • ​G7:v.krige: updated to rgrass7 - sync to trunk (contributed by pvanbosgeo)
  • ​G7:v.pack: also package PROJ_EPSG if available (as available in newer locations)
  • ​G7:v.unpack: fix unpacking when name of archive and the packed map differ (merge from trunk, r66021)
  • GUI changes:
  • wxGUI: add waiting cursor for histogram +scatter wxplot tools
  • wxGUI: add r.import and v.import to menu
  • wxGUI: fix import order so that GUI doesn't crash when there is a problem with ctypes (merge from trunk, r66065)
  • wxGUI: fix GDALImport dialog to add multiple imported layers to layer manager; update onDone methods to pass event as argument (merge from trunk, r64372 and r64373)
  • wxGUI/vnet: fix known problem with StaticBoxes on Mac (merge from trunk, r66497)
  • wxGUI/vdigit: fix attribute dialog blocking window on MacOSX with wxpython 3 (merge from trunk, r65606)
  • wxGUI/animation: backport improvements from code sprint (resizing, text color, nprocs)
  • wxGUI/modeler: fix for wxPython3
  • wxGUI/nviz: fix coloring isosurfaces
  • Library changes:
  • libgis: catch empty region file (suggested in ​https://lists.osgeo.org/pipermail/grass-dev/2015-August/075933.html) (trunk, r65962)
  • PyGRASS changes:
  • pygrass modules: Fixed #2731 reading gisrc with multiple : in an entry caused problems (trunk, r66061)
  • sphinx Python lib docs: fix language definition for 'make libpythonlatexpdf'
  • Map projection changes:
  • Portability changes:
  • MS Windows:
  • fix font list creation during installation
  • GRASS-Installer.nsi.tmpl: sync with trunk regarding g.mkfontcap run during standalone installation
  • GRASS-Installer.nsi: SetOnFile -> GrantOnFile
  • winGRASS installer: offer Spearfish Location (spearfish60_grass7) for GRASS GIS 7, not 6
  • wxGUI: fix loading workspace on Windows when workspace was saved when map window is minimized
  • Manual pages:
  • ​G7:d.correlate: screenshot added
  • ​G7:g.gui.vdigit manual: update 'Copy features from (background) vector map' description
  • ​G7:i.cluster manual: expanded for algorithm description (trunk, r66233)
  • ​G7:i.segment manual: Landsat7 example added
  • ​G7:r.regression.line manual: update example to NC dataset
  • ​G7:r.resamp.stats: screenshot added
  • ​G7:t.register manual: extend manual
  • ​G7:v.in.db manual: Open Document spreadsheet added
  • ​G7:v.lidar.edgedetection: complete example and 2D and 3D picture (backport r66147)
  • ​G7:v.overlay: screenshots added
  • ​G7:v.select manual: full set of NC example added (contributed by Carol X Garzon-Lopez)
  • ​G7:v.select: screenshots added
  • Message translation updates:
  • Sylvain Maillard: FR translation cont'ed

New in GRASS GIS 7.0.2 RC 1 (Oct 22, 2015)

  • This upcoming stability release provides a series of stability fixes and manual improvements. This first release candidate GRASS GIS 7.0.2RC1 provides 160 fixes and improvements.

New in GRASS GIS 7.0.1 RC1 (Jul 23, 2015)

  • Minor module changes:
  • G7:g.extention: improve handling of broken zip files on Windows
  • G7:g.manual: use web browser package
  • G7:g.mapset: added G_OPT_M_DIR for GISDBASE selection
  • G7:r.compress: print flag added; examples added
  • G7:r.report: fix broken layout (units moved to right)
  • G7:r.surf.idw: exit with fatal error in case of FCELL or DCELL input
  • G7:v.category: fix option=transfer, #2618
  • G7:v.in.ogr: do not use old projection for area calculations in new projection, improve topological cleaning suggestions
  • G7:v.surf.bspline: fix when no default DB is defined
  • G7:v.surf.rst: sync elevation color table with the new elevation table
  • G7:v.vol.rst: do not ignore null values in cross_input (causes serious slow down on MS Windows)
  • GUI changes:
  • G7:g.mapsets: fix -s GUI dialog
  • wxGUI/animation: fix speed dialog problem caused by granularity problem
  • wxGUI/composer: catch error due to Ghostscript missing or not in path
  • wxGUI/dbmgr: add clear button to reload all data
  • wxGUI/dbmgr: improve handling string where values (check for quotes)
  • wxGUI/dmgr: fix focus on Deselect all
  • wxGUI: don't fail when loading map layers in quiet mode (from workspace)
  • wxGUI: encode from unicode when saving module output to file, see #2614
  • wxGUI: fix change current writing directory on Mac OSX - style=wx.DD_CHANGE_DIR is not working on Mac OSX
  • wxGUI: fix extension manager when metadata are not available
  • wxGUI: fix importing vectors with one geometry column
  • wxGUI: fix layertree error when switching to different location
  • wxGUI: import only after grass.script.parser() call g.gui.*
  • wxGUI/nviz: fix the name in the toolbar
  • wxGUI/toolboxes: make tooboxes a little bit more independent from GUI
  • wxGUI/ws: fix dialog for wxPython 3.0
  • wxGUI: fix sqlbuilder verify button (#2661)
  • Library changes:
  • dbmilib: fix db_copy_table() - overwrite existing table
  • libgis: fix missing std options in r64733
  • libgis: create standardized option for location and dbase, use it in r.proj, v.proj, g.mapset
  • libgis: Improve consistency of rand() between 32-bit and 64-bit platforms
  • libraster: use strerror(errno)
  • PyGRASS: fix exception check, remove unused or duplicated code
  • PyGRASS: removed references to RasterNumpy
  • PyGRASS: add VARCHAR column support on Table
  • PyGRASS: fix undefined limits in the Parameter class
  • PyGRASS: fix Area.boundaries()
  • Portability changes:
  • gettext message macros: Rename _n macro to n_ to avoid clashes with other libs
  • Manual pages:
  • G7:d.rast.num manual: example + screenshot added
  • G7:d.vect.chart manual: screenshot added
  • G7:g.gui.vdigit manual: Added a paragraph on topological digitizing of polygons (+ some language corrections)
  • G7:g.mapsets manual: screenshot added for g.mapsets GUI; text improvements; HTML cosmetics
  • G7:i.eb.soilheatflux manual: more explanations about overpass time maps
  • pygrass manual: add missing import (PIPE)
  • G7:r.random.cells manual: clarify presence of 0
  • G7:r.relief manual: added 'Exporting shaded relief maps to GeoTIFF' example
  • G7:r.watershed manual: clarify low mem max amount of pixels
  • G7:v.vect.stats added to G7:vectorintro.html
  • G7:v.vol.rst manual: wmult -> wscale; zmult -> zscale
  • G7:wxGUI vdigit manual: expanded
  • rename section BUGS to KNOWN ISSUES in manuals
  • Introduction to grass.script package
  • Detailed documentation of grass.script.setup.init function
  • Message translation updates:
  • Many languages updated with many new translations (see stats)
  • Maris Nartiss: Latvian translation (port from trunk)
  • Shulin Yang: Chinese translation cont'ed
  • Sylvain Maillard: French translation cont'ed
  • Stanislav Horáček: Czech translation updated

New in GRASS GIS 7.0.0 RC2 (Jul 23, 2015)

  • Updated Welcome and splash screens
  • 3D raster: terminology cleanup (raster3D -> 3D raster) in commands and manual
  • g.proj: generate PROJ_EPSG file (contains EPSG code) when location is given
  • r.cost, r.walk: change percent_memory to memory (in MB)
  • v.extract: index added
  • v.in.ogr: do not use old projection for area calculations in new projection
  • v.generalize: self-intersection fix
  • v.patch, v.reclass, v.overlay, v.vect.stats: accommodate SQLite
  • vector lib: numerical stability fixes for centroid calculation
  • vector lib: more robust topology engine
  • some simple mononchrome color tables added
  • wxGUI/nviz: 3D rendering fixes
  • several translations updated (Chinese, French, Polish, Spanish, ...)

New in GRASS GIS 7.0.0 RC1 (Jul 23, 2015)

  • Significant performance improvements for many modules
  • About 100 new modules
  • The new temporal processing GRASS GIS 7 framework for raster, vector and voxel time series management and analysis
  • Large File Support (LFS) globally enabled for raster and vector data
  • New spatial index for vector data
  • SQLite is default DB backend
  • Native support for ​PostGIS vector format including ​Topology extension
  • New graphical tools:
  • animating of raster and vector time series (G7:g.gui.animation);
  • new graphical georectifier (G7:g.gui.gcp);
  • graphical modeler with Python script output (G7:g.gui.iclass);
  • new graphical tool for supervised classification of imagery data (G7:g.gui.iclass);
  • new graphical map swiping tool (G7:g.gui.mapswipe);
  • new graphical tool for creating hardcopy map output (G7:g.gui.psmap);
  • new graphical tool for r.li module configuration file creation (G7:g.gui.rlisetup);
  • new graphical comparison tool for temporal datasets (G7:g.gui.timeline);
  • improved vector digitizer (G7:g.gui.vdigit);
  • Major efforts to standardize parameter and flag names for a better user experience:
  • a few map types have been renamed "rast" -> "raster", "vect" -> "vector", "rast3d" -> "raster_3d"
  • On command line parameter names can be abbreviated (not in Python scripts)
  • Old parameter names are still recognized, and the user receives a notification about the respective new parameter name.

New in GRASS GIS 7.0.0 (Jul 23, 2015)

  • New modules:
  • About 100 new modules
  • New Display modules:
  • G7:ximgview: new - View BMP images from the PNG driver.
  • New General modules:
  • G7:g.cairocomp: new - Overlays multiple X Pixmaps.
  • G7:g.ppmtopng: new - Converts between PPM/PGM and PNG image formats.
  • New Image Processing:
  • G7:i.albedo: new - Computes broad band albedo from surface reflectance.
  • G7:i.aster.toar: new - Transforms calibrated digital number of ASTER data to top-of-atmosphere radiance, reflectance and temperature
  • G7:i.biomass: new - Computes biomass growth, precursor of crop yield calculation
  • i.class: rewritten in ​wxGUI, see G7:g.gui.iclass
  • G7:i.eb.eta: new - Actual evapotranspiration for diurnal period (Bastiaanssen, 1995)
  • G7:i.eb.evapfr: new - Computes evaporative fraction (Bastiaanssen, 1995) and root zone soil moisture (Makin, Molden and Bastiaanssen, 2001).
  • G7:i.eb.hsebal01: new - Computes sensible heat flux iteration SEBAL 01
  • G7:i.eb.netrad: new - Net radiation approximation (Bastiaanssen, 1995).
  • G7:i.eb.soilheatflux: new - Soil heat flux approximation (Bastiaanssen, 1995).
  • G7:i.emissivity: new - Computes emissivity from NDVI, generic method for sparse land
  • G7:i.evapo.mh: new - Computes evapotranspiration calculation modified or original Hargreaves formulation, 2001.
  • G7:i.evapo.pm: new - Computes potential evapotranspiration calculation with hourly Penman-Monteith.
  • G7:i.evapo.pt: new - Computes evapotranspiration calculation Prestley and Taylor formulation, 1972.
  • G7:i.evapo.time: new - Computes temporal integration of satellite ET actual (ETa) following the daily ET reference (ETo) from meteorological station(s).
  • G7:i.latlong: new
  • G7:i.pansharpen: new - Brovey/PCA/IHS transform to merge multispectral and high-res panchromatic channels, replaces removed i.fusion.brovey
  • G7:i.landsat.toar: new, transforms calibrated digital number of LANDSAT data to top-of-atmosphere radiance, reflectance and temperature
  • G7:i.landsat.acca: new, Automated Cloud-Cover Assessment (ACCA) Algorithm
  • G7:i.modis.qc: new - apply Quality Control nitpattern map easily
  • G7:i.segment: new, identifies segments (objects) from imagery data. Supports hierarchical segmentation
  • G7:i.vi: new, calculation of vegetation indices
  • G7:wxGUI.gcp: new, a wxGUI extension which allows the user to create, edit, and manage Ground Control Points for geocoding imagery
  • New Raster modules:
  • Large File Support (LFS) globally enabled
  • G7:r.colors.out: new - Exports the color table associated with a raster map.
  • G7:r.external.out: new - Defines raster output format utilizing GDAL library.
  • G7:r.in.lidar: new - Create a raster map from LAS LiDAR points using univariate statistics.
  • G7:r.in.wms: new implementation - Downloads and imports data from WMS server; + WMTS and NASA OnEarth? support
  • G7:r.regression.multi: new - Calculates multiple linear regression from raster maps.
  • G7:r.resamp.filter: new - resamples raster map layers using an analytic kernel
  • G7:r.solute.transport: new - New module to compute the solute transport of groundwater in porous media using an implicit finite volume approach
  • G7:r.stats.zonal: new - Calculates category or object oriented statistics (accumulator-based statistics).
  • G7:r.stats.quantile: new - Compute category quantiles using two passes.
  • G7:r.stream.extract: new - Performs stream network extraction.
  • G7:r.sunhours: new - Calculates solar elevation, solar azimuth, and sun hours.
  • G7:r.unpack: new - Unpacks a raster map packed with r.pack.
  • G7:r.uslek: new - Computes USLE Soil Erodibility Factor (K).
  • G7:r.usler: new - Computes USLE R factor, Rainfall erosivity index.
  • New Vector modules:
  • Large File Support (LFS) globally enabled
  • G7:v.colors.out: new - Exports the color table associated with a vector map.
  • G7:v.in.lidar: new - Converts LAS LiDAR point clouds to a GRASS vector map with libLAS.
  • G7:v.out.postgis: new - Exports a vector map layer to PostGIS feature table.
  • G7:v.pack: new - Packs up a vector map and support files for copying.
  • G7:v.unpack: new - Unpacks a vector map packed with r.pack.
  • 3D raster modules:
  • G7:r3.colors: new - Creates/modifies the color table associated with a 3D raster map.
  • G7:r3.colors.out: new - Exports the color table associated with a 3D raster map.
  • G7:r3.out.bin: new - Exports a GRASS 3D raster map to a binary array.
  • G7:r3.in.bin: new - Imports a binary raster file into a GRASS 3D raster map.
  • G7:r3.out.netcdf: new - Export a 3D raster map as netCDF file.
  • G7:r3.retile: new - Retiles an existing 3D raster map with user defined x, y and z tile size.
  • New Temporal GIS modules:
  • The new temporal GRASS GIS 7 framework has been developed to manage, process and analyse large scale, spatio-temporal environmental data. In detail, the framework supports querying and map calculation of spatio-temporal data, aggregation, statistics and gap filling, and data export, import, and conversion. A spatio-temporal topology builder is available to build spatio-temporal topology connections between map objects for 1D, 3D and 4D extents. The topology creation is based on the R*Tree implementation in the vector library which supports even 4D extents.
  • G7:t.create: new - Creates a space time dataset.
  • G7:t.info: new - Lists information about space time datasets and maps.
  • G7:t.list: new - List space time datasets and maps registered in the temporal database.
  • G7:t.remove: new - Removes space time datasets from temporal database.
  • G7:t.rename: new - Renames a space time dataset
  • G7:t.register: new - Registers raster, vector and raster3d maps in a space time datasets.
  • G7:t.shift: new - Temporally shift the maps of a space time dataset.
  • G7:t.snap: new - Temporally snap the maps of a space time dataset.
  • G7:t.sample: new - Samples the input space time dataset(s) with a sample space time dataset and print the result to stdout.
  • G7:t.support: new - Modifies the metadata of a space time dataset.
  • G7:t.topology: new - Lists temporal topology of a space time dataset.
  • G7:t.unregister: new - Unregisters raster, vector and raster3d maps from the temporal database or a specific space time dataset.
  • G7:t.rast.aggregate.ds: new - Aggregated data of an existing space time raster dataset using the temporal topology of a second space time dataset.
  • G7:t.rast.aggregate: new - Temporally aggregates the maps of a space time raster dataset by a user defined granularity.
  • G7:t.rast.colors: new - Creates/modifies the color table associated with each raster map of the space time raster dataset.
  • G7:t.rast.export: new - Exports space time raster dataset.
  • G7:t.rast.extract: new - Extracts a subset of a space time raster datasets.
  • G7:t.rast.list: new - Lists registered maps of a space time raster dataset.
  • G7:t.rast.import: new - Imports space time raster dataset.
  • G7:t.rast.mapcalc: new - Perform spatio-temporal mapcalc expressions on temporal sampled maps of space time raster datasets.
  • G7:t.rast.neighbors: new - Performs a neighborhood analysis for each map in a space time raster dataset.
  • G7:t.rast.gapfill: new - Replace gaps in a space time raster dataset with interpolated raster maps.
  • G7:t.rast.out.vtk: new - Exports space time raster dataset as VTK time series.
  • G7:t.rast.series: new - Performs different aggregation algorithms from r.series on all or a subset of raster maps in a space time raster dataset.
  • G7:t.rast.to.rast3: new - Converts a space time raster dataset into a raster3d map.
  • G7:t.rast.univar: new - Calculates univariate statistics from the non-null cells for each registered raster map of a space time raster dataset.
  • G7:t.rast3d.mapcalc: new - Performs r3.mapcalc expressions on maps of sampled space time raster3d datasets.
  • G7:t.rast3d.list: new - Lists registered maps of a space time raster3d dataset.
  • G7:t.rast3d.extract: new - Extracts a subset of a space time raster3d dataset.
  • G7:t.rast3d.univar: new - Calculates univariate statistics from the non-null cells for each registered raster3d map of a space time raster3d dataset.
  • G7:t.vect.extract: new - Extracts a subset of a space time vector dataset.
  • G7:t.vect.export: new - Export a space time vector dataset.as GRASS specific archive file
  • G7:t.vect.import: new - Import a space time vector dataset archive file
  • G7:t.vect.list: new - Lists registered maps of a space time vector dataset.
  • G7:t.vect.observe.strds: new - Observes specific locations in a space time raster dataset over a period of time using vector points.
  • G7:t.vect.db.select: new - Prints attributes of vector maps registered in a space time vector dataset.
  • G7:t.vect.what.strds: new - Store raster map values at spatial and temporal positions of vector points as vector attributes.
  • G7:t.vect.univar: new - Calculates univariate statistics of attributes for each registered vector map of a space time vector dataset
  • Major module changes:
  • speed improvements of r.cost, r.watershed, r.viewshed (former r.los), v.mkgrid, and more
  • r.li suite: completely rewritten and tested
  • Removed modules:
  • Some modules present in GRASS 6 have been removed due to architecture changes or replacements
  • Renamed modules:
  • A few modules have been renamed for consistency
  • Option changes: flags and parameters harmonized:
  • With the goal of standardization and ease of use, many flags and parameters have been harmonized
  • GUI changes:
  • stability and usability fixes
  • new GUI modules Graphical User Interface
  • wxGUI/SQLBuilder: fix to get values on MS-Windows
  • updated to better support wxPython3
  • Map projection changes:
  • stability fixes (upper case and UK/US notions)
  • Manual pages:
  • Many more examples added
  • Table of content (TOC) added
  • Message translation updates:
  • Many languages updated with many new translations

New in GRASS GIS 6.4.5 (Jul 23, 2015)

  • Major module changes:
  • v.mkgrid: optionally generate lines instead of areas (new -l flag); precision fixes (more vertices)
  • v.rast.stats: fix wrong SQL TRANSACTION implementation for DBF driver
  • r.carve: Add points closest to the center of each stream grid rather than adding each vertex multiple times at the same location
  • Minor module changes:
  • d.vect.chart: bugfixes
  • i.smap: larger default block size for speed
  • r.li.edgedensity: fix edge count
  • v.distance: adding geodesic point to boundary distance measurement for lat-long locations
  • v.in.ogr: OFTStringList is supported column type
  • v.univar: remove duplicate layer option
  • Command line changes:
  • batch job: do not show welcome message and require 'hit return' when running a batch job
  • GUI changes:
  • wxGUI: wxpython 3 compatibility patches from Debian project applied + some more
  • wxGUI: added v.vect.stats to menu
  • wxGUI: fix v.surf.rst window too wide
  • Library changes:
  • dblib: no more db driver zombies in wingrass
  • dglib: fix sp cache initialization
  • libvector: numerical stability fixes for topology; fix reattaching centroids and isles; fix memory leak
  • Colors:
  • elevation: elevation color table: brighten up high values
  • Portability changes:
  • enabled r.li modules
  • Message translation updates:
  • user message harmonization update (to reduce number of similar but slightly different messages)
  • Chinese updated
  • French updated
  • German updated
  • Italian updated
  • Spanish updated
  • Documentation:
  • RFCs (rfc/) moved to Trac
  • r.walk manual updated
  • CLOSED TICKETS:
  • Closed bugs since the last release:
  • v.buffer2: difference between Linux 32bit and 64bit
  • cruft in release tarball
  • v.vect.stats not in GUI
  • v.distance in Long/Lat Locations
  • error message when renaming attribute table column using v.db.renamecol
  • DBF driver: stub functions for SQL TRANSACTION
  • Python OSError: [Errno 7] Argument list too long when running grass.pipe_command repeatedly
  • Java runtime error
  • v.build.polylines options aren't working
  • r.out.gdal wrongly messes with SetColorInterpretation
  • r.in.gdal docs: GLOBE DEM Moved
  • grass command welcomes batch job and requires user input
  • v.rast.stats not working on GRASS 6.4.4
  • Closed wishes since the last release:
  • Wish: port the new wxgui histogram plotting tool from grass7 to grass6
  • d.out.file: Add PNG/Cairo support