wiki:Release/7.4.0-News

GRASS GIS 7.4.0

A short summary of changes: New features in GRASS 7.4

Releases

Stable Release

Release Candidate 2 (RC2)

Release Candidate 1 (RC1)

SVN Source Code

  • Milestone: 7.4.0
  • SVN Checkout latest 7.4 release branch (including yet unpublished bugfixes):
      svn checkout https://svn.osgeo.org/grass/grass/branches/releasebranch_7_4
    

Overview of changes

A series of new features and stability fixes, manual improvements, and a few language translations have been added.

The GRASS GIS 7.4.0 release provides more than 710 fixes and improvements with respect to the stable release 7.2.0.

New modules

Major module changes

(see also below for closed bugs)

  • 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

(see also below for closed bugs)

  • 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

Message Translations

Dockerfile

New Addons since GRASS 7.2.0

Closed tickets

Closed bugs since the last release

#635
v.kernel and r.surf.fractal overwriting
#1788
r.viewshed binary flag (-b) not working correctly
#2757
r.import: ERROR: Input raster map is outside current region
#2787
grass-7.0.1: compiling on Gentoo shows warnings when built with -Wagressive-loop-optimizations
#3027
i.atcorr's create_iwave.py broken
#3103
vector import wizzard and v.in.ogr --ui fails to import a vector
#3237
GetEventHandler assertation after loading workspace twice
#3343
v.label.sa broken and duplicated in trunk and addons
#3352
Behavior of v.sort.points
#3356
v.to.db: incorrect area calculations in lat-long location
#3374
r.import inconsistent behavior when using r.in.gdal and r.proj
#3405
encoding issue when launching modules
#3414
v.import: ERROR: Invalid e-w resolution field: 0 when importing EU_LAEA point into Sinusoidal location
#3438
v.buffer silently ignores options depending on buffering alhorithm in use
#3447
Patch to fix various spelling errors
#3456
Trunk fails to compile on Xenial
#3457
v.what test broken
#3463
Compilation failure with >=glibc-2.14 due to missing rpc
#3477
i.ortho.photo segmentation fault
#3495
7.4 version not available for Ubuntu 17.10

Closed wishes since the last release

#1471
Interactive geometry selection and export tool for wxgui
#1536
add EPSG:900913 to location wizard
#1575
r.horizon bugfix and speedup
#2004
wxgui: ctrl-t to tile layer manager and map window full screen
#2055
r.in.gdal lacks flag "-r Limit import to the current region"
#2171
rfe r.in.gdal: auto-calc memory= value
#2219
wish: all modules that create a new map should put the module call into history
#2294
t.rast.aggregate: Name output rasters based on start-time
#2341
GRASS 7.0.0. r.viewshed issue
#2369
Include map elements into GRASS workspaces
#2375
t.rast.import: add memory parameter
#2388
GRASS 7.0 Beta 3 for windows r.in.lidar cannot read .laz files
#2729
Missing Vect_new_map_struct
#3017
support for background option for grid labels in d.grid
#3025
support for color and background color in "Add text layer" from wx monitors
#3054
Adding Spot6/7 and Pleiades1A/B to i.atcorr
#3081
Add text after labels in d.legend
#3122
d.legend.vect: possibility to change text of displayed labels and select labels to show/not show
#3280
r.terraflow requires all output options to be given
#3301
r.seasons: add option to use an input map with per-cell thresholds
#3324
Better error message if v.in.wfs fails during networking
#3420
v.vect.stats: add "where" option
#3434
GUI: Make metadata accessible in Data tab
#3476
Patch to fix various spelling errors

Last modified 3 months ago Last modified on Mar 22, 2018 12:52:27 AM