Skip to main content
Spotlight

New Version of GRASS GIS Released with Leadership from Center for Geospatial Analytics Researchers

screenshot of the GRASS GIS interface
A new version of the GRASS GIS user interface included experimentally in the new 8.2. release.

Editor’s note: The following is a guest post by members of the NCSU GeoForAll Lab.

A new release of GRASS GIS is out thanks in large part to researchers and developers at the Center for Geospatial Analytics. GRASS GIS is an open-source geoprocessing engine developed by a community of organizations and individuals from around the world. This release, marked as 8.2, was heavily influenced by developers at the Center and contains contributions from several Center researchers.

Geospatial Analytics Ph.D. student Caitlin Haedrich was the primary developer of the grass.jupyter package, a subpackage of GRASS GIS that integrates GRASS GIS with Jupyter Notebooks. The package extends the existing GRASS Python API to allow Jupyter Notebook users to intuitively access, manage and visualize GRASS data. The package was a product of close collaboration with her mentors at the Center and the broader GRASS community through the GRASS Mini Grant program and Google Summer of Code, a stipend program by Google to financially support beginners in open source development. The grass.jupyter package can be tested online using mybinder.org.

Geospatial Research Software Engineer Vaclav Petras worked on the official release 8.2 itself. “The source code is always available, but triaging issues and preparing the final version for release is a multi-step process full of careful checks and even compromises,” Petras says. “This time it was special because I took up the role of release manager for 8.2 and worked closely with one of the development coordinators, Markus Neteler from the German company mundialis, to make the release procedure easier so that the next release manager can focus on releasing the software in the best state possible rather than worrying about technical details.”

This release is especially important for all users running GRASS GIS on high performance computing (HPC) clusters, because several commonly used tools were parallelized as part of Google Summer of Code 2021. Geospatial Research Software Engineer Anna Petrasova helped integrate the newly parallelized tools by providing code review, documentation and testing, and together with Vaclav Petras made several other improvements for running GRASS GIS on HPC clusters. “I use GRASS GIS on the university’s HPC to run FUTURES––the Center’s flagship model for projecting urban growth––but I was using various tricks to run data preprocessing in parallel on HPC,” Petrasova says. “Now, it is much more straightforward to set up my workflows.” The new version of GRASS GIS is readily available at NC State’s HPC Henry2 thanks to the maintenance efforts by Vaclav Petras.

The goal for this release was to make the results of Google Summer of Code 2021 available to the users. In 2021, Anna Petrasova, Vaclav Petras, and Center Associate Director Helena Mitasova were among the mentors in the GRASS GIS project mentoring Caitlin’s grass.jupyter project, parallelization of GRASS tools and one other project focused on improving the GRASS graphical user interface (see featured image, above).

Researchers and developers at the Center have been using the development version of GRASS GIS for some time already, but we worked on finalizing and releasing these features so that we, and anyone else, can use them more easily.

Jupyter Notebook with a mix of text, code and images generated by the code