<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://grasswiki.osgeo.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Annakrat</id>
	<title>GRASS-Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://grasswiki.osgeo.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Annakrat"/>
	<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/wiki/Special:Contributions/Annakrat"/>
	<updated>2026-05-26T18:13:28Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.41.0</generator>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS_GIS_Jupyter_notebooks&amp;diff=28884</id>
		<title>GRASS GIS Jupyter notebooks</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS_GIS_Jupyter_notebooks&amp;diff=28884"/>
		<updated>2026-05-15T17:15:44Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: Remove outdated information&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A Jupyter Notebook is a web application that allows you to create and share documents that contain scripts and code, equations, visualizations and explanatory text, combined.&lt;br /&gt;
&lt;br /&gt;
== Get started ==&lt;br /&gt;
Read [https://grass.osgeo.org/grass-stable/manuals/jupyter_intro.html GRASS Jupyter Notebooks Introduction].&lt;br /&gt;
Try [https://grass-tutorials.osgeo.org/content/tutorials/get_started/fast_track_grass_and_python.html Get started with GRASS &amp;amp; Python in Jupyter Notebooks] official tutorial. Browse additional [https://grass-tutorials.osgeo.org/ tutorials].&lt;br /&gt;
&lt;br /&gt;
== List of selected GRASS Jupyter notebooks ==&lt;br /&gt;
Note that the following list is community contributed and the notebooks may contain outdated information and old GRASS API usage. For up-to-date notebooks, see GRASS official [https://grass-tutorials.osgeo.org/ tutorial page].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Intro notebooks:'''&lt;br /&gt;
* [https://github.com/OSGeo/grass/blob/main/doc/notebooks Official notebooks in OSGeo/grass repo] ([https://mybinder.org/v2/gh/OSGeo/grass/main?urlpath=lab%2Ftree%2Fdoc%2Fnotebooks%2Fjupyter_example.ipynb jupyter_example.ipynb on Binder])&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/grass-gis-workshop-foss4g-2022 Unleash the power of GRASS GIS with Jupyter (FOSS4G 2022 workshop)]&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/grass-gis-workshop-FOSS4G-2021 GRASS GIS: From Beginner to Power User (FOSS4G 2021 workshop)]&lt;br /&gt;
* [https://github.com/wenzeslaus/try-grass-in-jupyter-with-bash wenzeslaus/try-grass-in-jupyter-with-bash] (experimental)&lt;br /&gt;
* NSF platform: https://wholetale.org/&lt;br /&gt;
** GRASS GIS Introduction, by Anna Petrasova: https://dashboard.wholetale.org/run/63d832bab4a0197e9a9ecdad?tab=files&lt;br /&gt;
&lt;br /&gt;
'''Windows related:'''&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/GIS714-assignments/blob/main/GRASS_GIS_Foundations/JupyterOnWindows_standalone_Tutorial.ipynb GRASS GIS Jupyter Notebooks on Windows standalone installer tutorial]&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/GIS714-assignments/blob/main/GRASS_GIS_Foundations/JupyterOnWindows_OSGeo4W_Tutorial.ipynb GRASS GIS Jupyter Notebooks on Windows with OSGeo4W]&lt;br /&gt;
&lt;br /&gt;
'''Mac related:'''&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/GIS714-assignments/blob/main/GRASS_GIS_Foundations/JupyterOnMac_Tutorial.ipynb GRASS GIS Jupyter Notebooks on Mac]&lt;br /&gt;
&lt;br /&gt;
'''Workbook Collections:'''&lt;br /&gt;
* [https://github.com/wenzeslaus/geospatial-modeling-course-jupyter/tree/master/notebooks 14 Jupyter Notebooks for learning geospatial analysis and modeling with GRASS GIS] (Python and command line versions)&lt;br /&gt;
&lt;br /&gt;
'''Species Distribution Modeling:'''&lt;br /&gt;
* NSF platform: https://wholetale.org/&lt;br /&gt;
** Using satellite data for Species Distribution Modeling with GRASS GIS and R, by Veronica Andreo https://dashboard.wholetale.org/run/64388157b3b74e434bd8f1ac?tab=files&lt;br /&gt;
&lt;br /&gt;
'''Image processing/OBIA:'''&lt;br /&gt;
* [https://github.com/veroandreo/foss4g2022_grass4rs GRASS GIS for remote sensing data processing and analysis]&lt;br /&gt;
* [https://github.com/neteler/jupyter_sentinel2_grass_gis GRASS GIS 8 and processing of multitemporal EO data]&lt;br /&gt;
* [https://github.com/tgrippa/Opensource_OBIA_processing_chain An open-source semi-automated processing chain for urban OBIA classification]&lt;br /&gt;
&lt;br /&gt;
'''Python and PyGRASS:'''&lt;br /&gt;
* [https://github.com/zarch/workshop-pygrass Workshop on PyGRASS using IPython notebook]&lt;br /&gt;
* [https://github.com/wenzeslaus/foss4g-2022-developing-custom-grass-tools Developing custom GRASS tools (FOSS4G 2022 workshop)]&lt;br /&gt;
* [https://github.com/wenzeslaus/python-grass-addon How to write a Python GRASS GIS 7 addon (FOSS4G Europe 2015 workshop)]&lt;br /&gt;
* [https://github.com/lucadelu/docker-stacks/tree/geospatial/geospatial-notebook Jupyter Notebook Geospatial Python Stack]&lt;br /&gt;
&lt;br /&gt;
'''R and GRASS GIS:'''&lt;br /&gt;
* [https://gist.github.com/joergsteinkamp/43fb13a82aeab9b5c0dcc4433f97f1a6 Simple Opensource GIS examples with GRASS GIS and R]&lt;br /&gt;
&lt;br /&gt;
'''Wildfire Modeling:'''&lt;br /&gt;
* [https://github.com/acoiman/wildfire_modeling Wildfire Modeling in Yosemite National Park]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category: Documentation]]&lt;br /&gt;
[[Category: Python]]&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=FUTURES_tutorial&amp;diff=28881</id>
		<title>FUTURES tutorial</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=FUTURES_tutorial&amp;diff=28881"/>
		<updated>2026-05-14T16:46:33Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: small updates&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[https://grass.osgeo.org/grass-stable/manuals/addons/r.futures.html r.futures.*] is an implementation of FUTure Urban-Regional Environment Simulation (FUTURES)&lt;br /&gt;
which is a model for multilevel simulations of emerging urban-rural landscape structure.&lt;br /&gt;
FUTURES produces regional projections of landscape patterns using coupled submodels that integrate nonstationary&lt;br /&gt;
drivers of land change: per capita demand (DEMAND submodel), site suitability (POTENTIAL submodel),&lt;br /&gt;
and the spatial structure of conversion events (PGA submodel).&lt;br /&gt;
&lt;br /&gt;
This tutorial shows how to prepare data and run the model. You can download [http://fatra.cnr.ncsu.edu/futures/FUTURES_triangle.zip sample dataset] and simulate urban growth&lt;br /&gt;
in [https://en.wikipedia.org/wiki/Research_Triangle The Triangle], region in the Piedmont of North Carolina in the United States with rapidly growing cities Raleigh, Durham and Chapel Hill.&lt;br /&gt;
&lt;br /&gt;
= Prerequisites =&lt;br /&gt;
&lt;br /&gt;
This tutorial requires basic knowledge of GRASS GIS. If you haven't used GRASS GIS before, you may want to first go through some of the introductory tutorials or alternative workshops linked from the [[#See also|See also section]].&lt;br /&gt;
&lt;br /&gt;
= Software =&lt;br /&gt;
Required software includes:&lt;br /&gt;
* GRASS GIS&lt;br /&gt;
* addons&lt;br /&gt;
** {{AddonCmd|r.futures.simulation}}&lt;br /&gt;
** {{AddonCmd|r.futures.potential}}&lt;br /&gt;
** {{AddonCmd|r.futures.demand}}&lt;br /&gt;
** {{AddonCmd|r.futures.devpressure}}&lt;br /&gt;
** {{AddonCmd|r.sample.category}}&lt;br /&gt;
* R (≥ 3.0.2) - needed for {{AddonCmd|r.futures.potential}}&lt;br /&gt;
* SciPy - useful for {{AddonCmd|r.futures.demand}}&lt;br /&gt;
&lt;br /&gt;
= Input data used in this tutorial =&lt;br /&gt;
Download [http://fatra.cnr.ncsu.edu/futures/FUTURES_triangle.zip sample dataset] containing:&lt;br /&gt;
* digital elevation model ([http://nationalmap.gov/elevation.html NED])&lt;br /&gt;
* [http://www.mrlc.gov/ NLCD] 2001, 2011&lt;br /&gt;
* NLCD 1992/2001 Retrofit Land Cover Change Product&lt;br /&gt;
* transportation network ([http://www.census.gov/geo/maps-data/data/tiger-line.html TIGER])&lt;br /&gt;
* county boundaries ([http://www.census.gov/geo/maps-data/data/tiger-line.html TIGER])&lt;br /&gt;
* protected areas ([http://www.conservationgateway.org/ConservationByGeography/NorthAmerica/UnitedStates/edc/reportsdata/terrestrial/secured/Pages/default.aspx  Secured Lands])&lt;br /&gt;
* cities above 20000 (USGS)&lt;br /&gt;
* county population past estimates and future projections ([https://www.osbm.nc.gov/demog/county-projections NC OSBM]) per county (nonspatial)&lt;br /&gt;
&lt;br /&gt;
= Workflow =&lt;br /&gt;
Download sample data and unzip it. Create &amp;lt;tt&amp;gt;grassdata&amp;lt;/tt&amp;gt; directory on your disk (or use the one you already have) and move there Location &amp;lt;tt&amp;gt;futures_ncspm&amp;lt;/tt&amp;gt;.&lt;br /&gt;
Launch GRASS GIS and select your &amp;lt;tt&amp;gt;grassdata&amp;lt;/tt&amp;gt; directory, Location &amp;lt;tt&amp;gt;futures_ncspm&amp;lt;/tt&amp;gt; and Mapset &amp;lt;tt&amp;gt;practice1&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Install addons:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
g.extension r.futures&lt;br /&gt;
g.extension r.sample.category&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Close GUI and restart it:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
g.gui&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To install the required R packages, go to the command line terminal which was started with GRASS GIS and R:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
R&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This starts the R command line where you need to execute the following code (and go through any dialogs about installation if R shows them):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;R&amp;quot;&amp;gt;&lt;br /&gt;
install.packages(c(&amp;quot;MuMIn&amp;quot;, &amp;quot;lme4&amp;quot;, &amp;quot;optparse&amp;quot;, &amp;quot;rgrass7&amp;quot;))&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Initial steps and data preparation ==&lt;br /&gt;
First we will set computational region of our analyses to an extent covering our study area and so that the cells are aligned with one of our landuse rasters:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;g.region raster=landuse_2011 -p&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We will derive urbanized areas from NLCD dataset for year 1992, 2001 and 2011&lt;br /&gt;
by extracting categories category 21 - 24 into a new binary map where developed is 1,&lt;br /&gt;
undeveloped 0 and NULL (no data) is area unsuitable for development (water, wetlands, protected areas).&lt;br /&gt;
First we will convert protected areas from vector to raster and set&lt;br /&gt;
NULLs to zeros (for simpler raster algebra expression in the next step):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
v.to.rast input=protected_areas output=protected_areas use=val&lt;br /&gt;
r.null map=protected_areas null=0&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And then create rasters of developed/undeveloped areas using raster algebra:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;white-space: pre-wrap; &lt;br /&gt;
white-space: -moz-pre-wrap; &lt;br /&gt;
white-space: -pre-wrap; &lt;br /&gt;
white-space: -o-pre-wrap; &lt;br /&gt;
word-wrap: break-word;&amp;quot;&amp;gt;&lt;br /&gt;
r.mapcalc &amp;quot;urban_1992 = if(landuse_1992 &amp;gt;= 21 &amp;amp;&amp;amp; landuse_1992 &amp;lt;= 24, 1, if(landuse_1992 == 11 || landuse_1992 &amp;gt;= 90 || protected_areas, null(), 0))&amp;quot;&lt;br /&gt;
r.mapcalc &amp;quot;urban_2001 = if(landuse_2001 &amp;gt;= 21 &amp;amp;&amp;amp; landuse_2001 &amp;lt;= 24, 1, if(landuse_2001 == 11 || landuse_2001 &amp;gt;= 90 || protected_areas, null(), 0))&amp;quot;&lt;br /&gt;
r.mapcalc &amp;quot;urban_2011 = if(landuse_2011 &amp;gt;= 21 &amp;amp;&amp;amp; landuse_2011 &amp;lt;= 24, 1, if(landuse_2011 == 11 || landuse_2011 &amp;gt;= 90 || protected_areas, null(), 0))&amp;quot;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We will convert vector counties to raster with the values of the FIPS attribute which links to population file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
v.to.rast input=counties type=area use=attr attribute_column=FIPS output=counties&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If we need to run FUTURES only for smaller number of counties, we can extract them based on the identifier:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;white-space: pre-wrap; &lt;br /&gt;
white-space: -moz-pre-wrap; &lt;br /&gt;
white-space: -pre-wrap; &lt;br /&gt;
white-space: -o-pre-wrap; &lt;br /&gt;
word-wrap: break-word;&amp;quot;&amp;gt;&lt;br /&gt;
v.to.rast input=counties type=area where=&amp;quot;FIPS in (37183, 37101)&amp;quot; use=attr attribute_column=FIPS output=counties_subset&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Before further steps, we will set our working directory so that the input population files and text files&lt;br /&gt;
we are going to create are saved in one directory and easily accessible.&lt;br /&gt;
You can do that from menu ''Settings'' → ''GRASS working environment'' → ''Change working directory''.&lt;br /&gt;
Select (or create) a directory and move there the downloaded files &amp;lt;tt&amp;gt;population_projection.csv&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;population_trend.csv&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Potential submodel ==&lt;br /&gt;
Module {{AddonCmd|r.futures.potential}} implements POTENTIAL submodel as a part of FUTURES land change model. POTENTIAL is implemented using a set of coefficients that relate a selection of site suitability factors to the probability of a place becoming developed. This is implemented using the parameter table in combination with maps of those site suitability factors (mapped predictors). The coefficients are obtained by conducting multilevel logistic regression in R with package lme4 where the coefficients may vary by county. The best model is selected automatically using dredge function from package [https://cran.r-project.org/web/packages/MuMIn/index.html MuMIn].&lt;br /&gt;
&lt;br /&gt;
First, we will derive couple of predictors. &lt;br /&gt;
=== Predictors ===&lt;br /&gt;
==== Slope ====&lt;br /&gt;
We will derive slope in degrees from digital elevation model using {{cmd|r.slope.aspect}} module:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;r.slope.aspect elevation=elevation_30m slope=slope&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Distance from lakes/rivers ====&lt;br /&gt;
First we will extract [http://www.mrlc.gov/nlcd11_leg.php category ''Open Water''] from 2011 NLCD dataset:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
r.mapcalc &amp;quot;water = if(landuse_2011 == 11, 1, null())&amp;quot;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then we compute the distance to water with module {{cmd|r.grow.distance}} and set color table to shades of blue:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
r.grow.distance input=water distance=dist_to_water&lt;br /&gt;
r.colors -n map=dist_to_water color=blues&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Distance from protected areas ====&lt;br /&gt;
We will use raster protected of protected areas we already created, but we will set NULL values to zero.&lt;br /&gt;
We compute the distance to protected areas with module {{cmd|r.grow.distance}} and set color table from green to red:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
r.null map=protected_areas setnull=0&lt;br /&gt;
r.grow.distance input=protected_areas distance=dist_to_protected&lt;br /&gt;
r.colors map=dist_to_protected color=gyr&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Forests ====&lt;br /&gt;
We will smooth the transition between forest and other land use, see NLCD [http://www.mrlc.gov/nlcd11_leg.php category ''Open Water'']:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
r.mapcalc &amp;quot;forest = if(landuse_2011 &amp;gt;= 41 &amp;amp;&amp;amp; landuse_2011 &amp;lt;= 43, 1, 0)&amp;quot;&lt;br /&gt;
r.neighbors -c input=forest output=forest_smooth size=15 method=average&lt;br /&gt;
r.colors map=forest_smooth color=ndvi&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Travel time to cities ====&lt;br /&gt;
Here we will compute travel time to cities (&amp;gt; population 20000)&lt;br /&gt;
as cumulative cost distance where cost is defined as travel time on roads.&lt;br /&gt;
First we specify the speed on different types of roads.&lt;br /&gt;
We copy the roads raster into our mapset so that we can change it&lt;br /&gt;
by adding a new attribute field &amp;lt;tt&amp;gt;speed&amp;lt;/tt&amp;gt;. Then we assign speed values (km/h) based on the type of road:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
g.copy vector=roads,myroads&lt;br /&gt;
v.db.addcolumn map=myroads columns=&amp;quot;speed double precision&amp;quot;&lt;br /&gt;
v.db.update map=myroads column=speed value=50 where=&amp;quot;MTFCC = 'S1400'&amp;quot;&lt;br /&gt;
v.db.update map=myroads column=speed value=100 where=&amp;quot;MTFCC IN ('S1100', 'S1200')&amp;quot;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now we rasterize the selected road types using the speed values from the attribute table as raster values.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;white-space: pre-wrap; &lt;br /&gt;
white-space: -moz-pre-wrap; &lt;br /&gt;
white-space: -pre-wrap; &lt;br /&gt;
white-space: -o-pre-wrap; &lt;br /&gt;
word-wrap: break-word;&amp;quot;&amp;gt;&lt;br /&gt;
v.to.rast input=myroads type=line where=&amp;quot;MTFCC IN ('S1100', 'S1200', 'S1400')&amp;quot; output=roads_speed use=attr attribute_column=speed&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We set the rest of the area to low speed and recompute the speed as time to travel through a 30m cell in minutes:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
r.null map=roads_speed null=5&lt;br /&gt;
r.mapcalc &amp;quot;roads_travel_time = 1.8 / roads_speed&amp;quot;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Finally we compute the travel time to larger cities using {{cmd|r.cost}}:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
r.cost input=roads_travel_time output=travel_time_cities start_points=cities_20000 memory=3000&lt;br /&gt;
r.colors map=travel_time_cities color=byr&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Road density ====&lt;br /&gt;
We will rasterize roads and use moving window analysis ({{cmd|r.neighbors}}) to compute road density:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
v.to.rast input=roads output=roads use=val&lt;br /&gt;
r.null map=roads null=0&lt;br /&gt;
r.neighbors -c input=roads output=road_dens size=25 method=average nprocs=4&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Distance to interchanges ====&lt;br /&gt;
&lt;br /&gt;
We will consider TIGER roads of type &amp;lt;tt&amp;gt;Ramp&amp;lt;/tt&amp;gt; as interchanges, rasterize them and compute euclidean distance to them:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
v.to.rast input=roads type=line where=&amp;quot;MTFCC = 'S1630'&amp;quot; output=interchanges use=val&lt;br /&gt;
r.grow.distance -m input=interchanges distance=dist_interchanges&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Development pressure ===&lt;br /&gt;
&lt;br /&gt;
We compute development pressure with {{AddonCmd|r.futures.devpressure}}. Development pressure is a predictor based on number of neighboring developed cells within search distance, weighted by distance. The development pressure variable plays a special role in the model, allowing for a feedback between predicted change and change in subsequent steps.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;white-space: pre-wrap; &lt;br /&gt;
white-space: -moz-pre-wrap; &lt;br /&gt;
white-space: -pre-wrap; &lt;br /&gt;
white-space: -o-pre-wrap; &lt;br /&gt;
word-wrap: break-word;&amp;quot;&amp;gt;&lt;br /&gt;
r.futures.devpressure -n input=urban_2011 output=devpressure_1 method=gravity size=10 gamma=1 scaling_factor=1&lt;br /&gt;
r.futures.devpressure -n input=urban_2011 output=devpressure_0_5 method=gravity size=30 gamma=0.5 scaling_factor=0.1&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When gamma increases, development influence decreases more rapidly with distance.&lt;br /&gt;
Size is half the size of the moving window. When gamma is low, local development influences more distant places.&lt;br /&gt;
We will derive 2 layers with different gamma and size parameters for the potential statistical model.&lt;br /&gt;
&lt;br /&gt;
=== Rescaling variables ===&lt;br /&gt;
&lt;br /&gt;
First we will look at the ranges of our predictor variables by running a short Python code snippet in Python tab in GUI:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;python&amp;quot; style=&amp;quot;white-space: pre-wrap; &lt;br /&gt;
white-space: -moz-pre-wrap; &lt;br /&gt;
white-space: -pre-wrap; &lt;br /&gt;
white-space: -o-pre-wrap; &lt;br /&gt;
word-wrap: break-word;&amp;quot;&amp;gt;&lt;br /&gt;
for name in ['slope', 'dist_to_water', 'dist_to_protected', 'forest_smooth', 'travel_time_cities', 'road_dens', 'dist_interchanges', 'devpressure_0_5', 'devpressure_1']:&lt;br /&gt;
    minmax = grass.raster_info(name)&lt;br /&gt;
    print name, minmax['min'], minmax['max']&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We will rescale some of our input variables:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
r.mapcalc &amp;quot;dist_to_water_km = dist_to_water / 1000&amp;quot;&lt;br /&gt;
r.mapcalc &amp;quot;dist_to_protected_km = dist_to_protected / 1000&amp;quot;&lt;br /&gt;
r.mapcalc &amp;quot;dist_interchanges_km = dist_interchanges / 1000&amp;quot;&lt;br /&gt;
r.mapcalc &amp;quot;road_dens_perc = road_dens * 100&amp;quot;&lt;br /&gt;
r.mapcalc &amp;quot;forest_smooth_perc = forest_smooth * 100&amp;quot;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Sampling ===&lt;br /&gt;
To sample only in the analyzed counties, we will clip development layer:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
r.mapcalc &amp;quot;urban_2011_clip = if(counties, urban_2011)&amp;quot;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To estimate the number of sampling points, we can use {{cmd|r.report}} to report number of developed/undeveloped cells and their ratio.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
r.report map=urban_2011 units=h,c,p&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We will sample the predictors and the response variable with 10000 random points in undeveloped areas and 2000 points in developed area:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;white-space: pre-wrap; &lt;br /&gt;
white-space: -moz-pre-wrap; &lt;br /&gt;
white-space: -pre-wrap; &lt;br /&gt;
white-space: -o-pre-wrap; &lt;br /&gt;
word-wrap: break-word;&amp;quot;&amp;gt;&lt;br /&gt;
r.sample.category input=urban_2011_clip output=sampling sampled=counties,devpressure_0_5,devpressure_1,slope,road_dens_perc,forest_smooth_perc,dist_to_water_km,dist_to_protected_km,dist_interchanges_km,travel_time_cities npoints=10000,2000&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The attribute table can be exported as CSV file (not necessary step):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;white-space: pre-wrap; &lt;br /&gt;
white-space: -moz-pre-wrap; &lt;br /&gt;
white-space: -pre-wrap; &lt;br /&gt;
white-space: -o-pre-wrap; &lt;br /&gt;
word-wrap: break-word;&amp;quot;&amp;gt;&lt;br /&gt;
v.db.select map=sampling columns=urban_2011_clip,counties,devpressure_0_5,devpressure_1,slope,road_dens_perc,forest_smooth_perc,dist_to_water_km,dist_to_protected_km,dist_interchanges_km,travel_time_cities separator=comma file=samples.csv&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Development potential ===&lt;br /&gt;
Now we find best model for predicting urbanization using {{AddonCmd|r.futures.potential}} which wraps an R script.&lt;br /&gt;
&lt;br /&gt;
We can play with different combinations of predictors, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;white-space: pre-wrap; &lt;br /&gt;
white-space: -moz-pre-wrap; &lt;br /&gt;
white-space: -pre-wrap; &lt;br /&gt;
white-space: -o-pre-wrap; &lt;br /&gt;
word-wrap: break-word;&amp;quot;&amp;gt;&lt;br /&gt;
r.futures.potential input=sampling output=potential.csv columns=devpressure_0_5,slope,road_dens_perc,forest_smooth_perc,dist_to_water_km,travel_time_cities developed_column=urban_2011_clip subregions_column=counties&lt;br /&gt;
r.futures.potential input=sampling output=potential.csv columns=devpressure_1,road_dens_perc,dist_to_water_km,dist_to_protected_km,travel_time_cities developed_column=urban_2011_clip subregions_column=counties&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Or we can run R [http://www.inside-r.org/packages/cran/MuMIn/docs/dredge dredge] function to find &amp;quot;best&amp;quot; model. We can specify minimum and maximum number of predictors the final model should use.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;white-space: pre-wrap; &lt;br /&gt;
white-space: -moz-pre-wrap; &lt;br /&gt;
white-space: -pre-wrap; &lt;br /&gt;
white-space: -o-pre-wrap; &lt;br /&gt;
word-wrap: break-word;&amp;quot;&amp;gt;&lt;br /&gt;
r.futures.potential -d input=sampling output=potential.csv columns=devpressure_1,slope,road_dens_perc,forest_smooth_perc,dist_to_water_km,dist_to_protected_km,dist_interchanges_km,travel_time_cities developed_column=urban_2011_clip subregions_column=counties min_variables=4 max_variables=7&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can then open the output file &amp;lt;tt&amp;gt;potential.csv&amp;lt;/tt&amp;gt;, which is a CSV file with tabs as separators.&lt;br /&gt;
&lt;br /&gt;
For this tutorial, the final potential is created with:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;white-space: pre-wrap; &lt;br /&gt;
white-space: -moz-pre-wrap; &lt;br /&gt;
white-space: -pre-wrap; &lt;br /&gt;
white-space: -o-pre-wrap; &lt;br /&gt;
word-wrap: break-word;&amp;quot;&amp;gt;&lt;br /&gt;
r.futures.potential  input=sampling output=potential.csv columns=devpressure_1,slope,forest_smooth_perc,dist_interchanges_km,travel_time_cities developed_column=urban_2011_clip subregions_column=counties --o&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Demand submodel ==&lt;br /&gt;
First we will mask out roads so that they don't influence into per capita land demand relation.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
v.to.rast input=roads type=line output=roads_mask use=val&lt;br /&gt;
r.mask roads_mask -i&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We will use {{AddonCmd|r.futures.demand}} which derives the population vs. development relation. The relation can be linear/logarithmic/logarithmic2/exponential/exponential approach.&lt;br /&gt;
Look for examples of the different relations in the manual.&lt;br /&gt;
&lt;br /&gt;
* linear: y = A + Bx&lt;br /&gt;
* logarithmic: y = A + Bln(x)&lt;br /&gt;
* logarithmic2: y = A + B * ln(x - C)&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;(requires SciPy)&lt;br /&gt;
* exponential: y = Ae^(BX)&lt;br /&gt;
* exp_approach: y = (1 - e^(-A(x - B))) + C&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;(requires SciPy)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The format of the input population CSV files is described in the manual. It is important to have synchronized categories of subregions and the column headers of the CSV files (in our case FIPS number). How to simply generate the list of years (for which demand is computed) is described in {{AddonCmd|r.futures.demand}} manual, for example run this in Python console:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
','.join([str(i) for i in range(2011, 2036)])&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then we can create the DEMAND file:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;white-space: pre-wrap; &lt;br /&gt;
white-space: -moz-pre-wrap; &lt;br /&gt;
white-space: -pre-wrap; &lt;br /&gt;
white-space: -o-pre-wrap; &lt;br /&gt;
word-wrap: break-word;&amp;quot;&amp;gt;&lt;br /&gt;
r.futures.demand development=urban_1992,urban_2001,urban_2011 subregions=counties observed_population=population_trend.csv projected_population=population_projection.csv simulation_times=2011,2012,2013,2014,2015,2016,2017,2018,2019,2020,2021,2022,2023,2024,2025,2026,2027,2028,2029,2030,2031,2032,2033,2034,2035 plot=plot_demand.pdf demand=demand.csv separator=comma&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In your current working directory, you should find files &amp;lt;tt&amp;gt;plot_demand.png&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;demand.csv&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
If you have SciPy installed, you can experiment with other methods for fitting the functions:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
r.futures.demand ... method=logarithmic2&lt;br /&gt;
r.futures.demand ... method=exp_approach&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
If necessary, you can create a set of demand files produced by fitting each method separately and&lt;br /&gt;
then pick for each county the method which seems best and manually create a new demand file.&lt;br /&gt;
&lt;br /&gt;
When you are finished, remove the mask as it is not needed for the next steps.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
r.mask -r&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Patch calibration ==&lt;br /&gt;
Patch calibration can be a very time consuming computation.&lt;br /&gt;
First we derive patches of new development by comparing historical and latest development.&lt;br /&gt;
We can run this on the entire area and keep only patches with minimum size 2 cells (1800 = 2 x 30 x 30 m).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
r.futures.calib development_start=urban_1992 development_end=urban_2011 subregions=counties patch_sizes=patches.txt patch_threshold=1800  -l&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
We obtained a file &amp;lt;tt&amp;gt;patches.txt&amp;lt;/tt&amp;gt; (used later in the PGA) - a patch size distribution file - containing sizes of all found patches.&lt;br /&gt;
&lt;br /&gt;
We can look at the distribution of the patch sizes:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
from matplotlib import pyplot as plt&lt;br /&gt;
with open('patches.txt') as f:&lt;br /&gt;
    patches = [int(patch) for patch in f.readlines()]&lt;br /&gt;
plt.hist(patches, 2000)&lt;br /&gt;
plt.xlim(0,50)&lt;br /&gt;
plt.show()&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
At this point, we start the calibration to get best parameters of patch shape &lt;br /&gt;
(for this tutorial, this step can be skipped and the suggested parameters are used).&lt;br /&gt;
First we select only one county to &lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
v.to.rast input=counties type=area where=&amp;quot;FIPS == 37183&amp;quot; use=attr attribute_column=FIPS output=calib_county&lt;br /&gt;
g.region raster=calib_county zoom=calib_county&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; &lt;br /&gt;
style=&amp;quot;white-space: pre-wrap; &lt;br /&gt;
white-space: -moz-pre-wrap; &lt;br /&gt;
white-space: -pre-wrap;&lt;br /&gt;
white-space: -o-pre-wrap; &lt;br /&gt;
word-wrap: break-word;&amp;quot;&amp;gt;&lt;br /&gt;
r.futures.calib development_start=urban_1992 development_end=urban_2011 subregions=calib_county patch_sizes=patches.txt calibration_results=calib.csv patch_threshold=1800 repeat=5 compactness_mean=0.1,0.3,0.5,0.7,0.9 compactness_range=0.1,0.05 discount_factor=0.1,0.3,0.5,0.7,0.9 predictors=slope,forest_smooth_perc,dist_interchanges_km,travel_time_cities demand=demand.csv devpot_params=potential.csv num_neighbors=4 seed_search=probability development_pressure=devpressure_1 development_pressure_approach=gravity n_dev_neighbourhood=10 gamma=1 scaling_factor=1 --o&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== FUTURES simulation ==&lt;br /&gt;
We will switch back to our previous region:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
g.region raster=landuse_2011 -p&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now we have all the inputs necessary for running {{AddonCmd|r.futures.simulation}}:&lt;br /&gt;
&lt;br /&gt;
The entire command is here:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;white-space: pre-wrap; &lt;br /&gt;
white-space: -moz-pre-wrap; &lt;br /&gt;
white-space: -pre-wrap; &lt;br /&gt;
white-space: -o-pre-wrap; &lt;br /&gt;
word-wrap: break-word;&amp;quot;&amp;gt;&lt;br /&gt;
r.futures.simulation subregions=counties developed=urban_2011 predictors=slope,forest_smooth_perc,dist_interchanges_km,travel_time_cities devpot_params=potential.csv development_pressure=devpressure_1 n_dev_neighbourhood=10 development_pressure_approach=gravity gamma=1 scaling_factor=1 demand=demand.csv discount_factor=0.3 compactness_mean=0.2 compactness_range=0.1 patch_sizes=patches.txt num_neighbors=4 seed_search=probability random_seed=1 output=final output_series=final&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Quick description ===&lt;br /&gt;
The command parameters and their values:&lt;br /&gt;
* raster map of counties with their categories&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
... subregions=counties ...&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* raster of developed (1), undeveloped (0) and NULLs for undevelopable areas&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
... developed=urban_2011 ...&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* predictors selected with {{AddonCmd|r.futures.potential}} and their coefficients in a &amp;lt;tt&amp;gt;potential.csv&amp;lt;/tt&amp;gt; file. The order of predictors must match the order in the file and the categories of the counties must match raster &amp;lt;tt&amp;gt;counties&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
... predictors=slope,forest_smooth_perc,dist_interchanges_km,travel_time_cities devpot_params=potential.csv ...&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* initial development pressure computed by {{AddonCmd|r.futures.devpressure}}, it's important to set here the same parameters&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
... development_pressure=devpressure_1 n_dev_neighbourhood=10 development_pressure_approach=gravity gamma=1 scaling_factor=1 ...&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* per capita land demand computed by {{AddonCmd|r.futures.demand}}, the categories of the counties must match raster &amp;lt;tt&amp;gt;counties&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
... demand=demand.csv ...&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* patch parameters from the calibration step&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
... discount_factor=0.3 compactness_mean=0.4 compactness_range=0.08 patch_sizes=patches.txt ...&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* recommended parameters for patch growing algorithm &lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
... num_neighbors=4 seed_search=probability ...&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* set random seed  for repeatable results or set flag &amp;lt;tt&amp;gt;-s&amp;lt;/tt&amp;gt; to generate seed automatically&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
... random_seed=1 ...&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* specify final output map and optionally basename for intermediate raster maps&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
output=final output_series=final&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Scenarios ===&lt;br /&gt;
&lt;br /&gt;
Scenarios involving policies that encourage infill versus sprawl can be explored using the &amp;lt;tt&amp;gt;incentive_power&amp;lt;/tt&amp;gt; parameter,&lt;br /&gt;
which uses a power function to transform the evenness of the probability gradient in POTENTIAL.&lt;br /&gt;
&lt;br /&gt;
The default value is 1. You can change the power to a number between 0.25 and 4 to test urban sprawl/infill scenarios.&lt;br /&gt;
Higher power leads to infill behavior, lower power to urban sprawl.&lt;br /&gt;
&lt;br /&gt;
= Postprocessing =&lt;br /&gt;
&lt;br /&gt;
Follow a [[Creating_animation_from_FUTURES_output_in_GRASS_GIS| tutorial how to make an animation from the results]].&lt;br /&gt;
&lt;br /&gt;
= See also =&lt;br /&gt;
&lt;br /&gt;
* [[From GRASS GIS novice to power user (workshop at FOSS4G Boston 2017)]]&lt;br /&gt;
* [[Unleash the power of GRASS GIS at US-IALE 2017]]&lt;br /&gt;
* [[Workshop on urban growth modeling with FUTURES]]&lt;br /&gt;
* [[R statistics|GRASS GIS and R]]&lt;br /&gt;
* [[GRASS Location Wizard]]&lt;br /&gt;
&lt;br /&gt;
[[Category: Tutorial]]&lt;br /&gt;
[[Category: FUTURES]]&lt;br /&gt;
[[Category: Urban]]&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=FUTURES_tutorial&amp;diff=28880</id>
		<title>FUTURES tutorial</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=FUTURES_tutorial&amp;diff=28880"/>
		<updated>2026-05-14T16:41:45Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: /* Travel time to cities */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[https://grass.osgeo.org/grass-stable/manuals/addons/r.futures.html r.futures.*] is an implementation of FUTure Urban-Regional Environment Simulation (FUTURES)&lt;br /&gt;
which is a model for multilevel simulations of emerging urban-rural landscape structure.&lt;br /&gt;
FUTURES produces regional projections of landscape patterns using coupled submodels that integrate nonstationary&lt;br /&gt;
drivers of land change: per capita demand (DEMAND submodel), site suitability (POTENTIAL submodel),&lt;br /&gt;
and the spatial structure of conversion events (PGA submodel).&lt;br /&gt;
&lt;br /&gt;
This tutorial shows how to prepare data and run the model. You can download [http://fatra.cnr.ncsu.edu/futures/FUTURES_triangle.zip sample dataset] and simulate urban growth&lt;br /&gt;
in [https://en.wikipedia.org/wiki/Research_Triangle The Triangle], region in the Piedmont of North Carolina in the United States with rapidly growing cities Raleigh, Durham and Chapel Hill.&lt;br /&gt;
&lt;br /&gt;
= Prerequisites =&lt;br /&gt;
&lt;br /&gt;
This tutorial requires basic knowledge of GRASS GIS. If you haven't used GRASS GIS before, you may want to first go through some of the introductory tutorials or alternative workshops linked from the [[#See also|See also section]].&lt;br /&gt;
&lt;br /&gt;
= Software =&lt;br /&gt;
Required software includes:&lt;br /&gt;
* GRASS GIS 7&lt;br /&gt;
* addons&lt;br /&gt;
** {{AddonCmd|r.futures.pga}}&lt;br /&gt;
** {{AddonCmd|r.futures.potential}}&lt;br /&gt;
** {{AddonCmd|r.futures.demand}}&lt;br /&gt;
** {{AddonCmd|r.futures.devpressure}}&lt;br /&gt;
** {{AddonCmd|r.sample.category}}&lt;br /&gt;
* R (≥ 3.0.2) - needed for {{AddonCmd|r.futures.potential}}&lt;br /&gt;
* SciPy - useful for {{AddonCmd|r.futures.demand}}&lt;br /&gt;
&lt;br /&gt;
= Input data used in this tutorial =&lt;br /&gt;
Download [http://fatra.cnr.ncsu.edu/futures/FUTURES_triangle.zip sample dataset] containing:&lt;br /&gt;
* digital elevation model ([http://nationalmap.gov/elevation.html NED])&lt;br /&gt;
* [http://www.mrlc.gov/ NLCD] 2001, 2011&lt;br /&gt;
* NLCD 1992/2001 Retrofit Land Cover Change Product&lt;br /&gt;
* transportation network ([http://www.census.gov/geo/maps-data/data/tiger-line.html TIGER])&lt;br /&gt;
* county boundaries ([http://www.census.gov/geo/maps-data/data/tiger-line.html TIGER])&lt;br /&gt;
* protected areas ([http://www.conservationgateway.org/ConservationByGeography/NorthAmerica/UnitedStates/edc/reportsdata/terrestrial/secured/Pages/default.aspx  Secured Lands])&lt;br /&gt;
* cities above 20000 (USGS)&lt;br /&gt;
* county population past estimates and future projections ([https://www.osbm.nc.gov/demog/county-projections NC OSBM]) per county (nonspatial)&lt;br /&gt;
&lt;br /&gt;
= Workflow =&lt;br /&gt;
Download sample data and unzip it. Create &amp;lt;tt&amp;gt;grassdata&amp;lt;/tt&amp;gt; directory on your disk (or use the one you already have) and move there Location &amp;lt;tt&amp;gt;futures_ncspm&amp;lt;/tt&amp;gt;.&lt;br /&gt;
Launch GRASS GIS and select your &amp;lt;tt&amp;gt;grassdata&amp;lt;/tt&amp;gt; directory, Location &amp;lt;tt&amp;gt;futures_ncspm&amp;lt;/tt&amp;gt; and Mapset &amp;lt;tt&amp;gt;practice1&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Install addons:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
g.extension r.futures&lt;br /&gt;
g.extension r.sample.category&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Close GUI and restart it:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
g.gui&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To install the required R packages, go to the command line terminal which was started with GRASS GIS and R:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
R&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This starts the R command line where you need to execute the following code (and go through any dialogs about installation if R shows them):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;R&amp;quot;&amp;gt;&lt;br /&gt;
install.packages(c(&amp;quot;MuMIn&amp;quot;, &amp;quot;lme4&amp;quot;, &amp;quot;optparse&amp;quot;, &amp;quot;rgrass7&amp;quot;))&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Initial steps and data preparation ==&lt;br /&gt;
First we will set computational region of our analyses to an extent covering our study area and so that the cells are aligned with one of our landuse rasters:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;g.region raster=landuse_2011 -p&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We will derive urbanized areas from NLCD dataset for year 1992, 2001 and 2011&lt;br /&gt;
by extracting categories category 21 - 24 into a new binary map where developed is 1,&lt;br /&gt;
undeveloped 0 and NULL (no data) is area unsuitable for development (water, wetlands, protected areas).&lt;br /&gt;
First we will convert protected areas from vector to raster and set&lt;br /&gt;
NULLs to zeros (for simpler raster algebra expression in the next step):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
v.to.rast input=protected_areas output=protected_areas use=val&lt;br /&gt;
r.null map=protected_areas null=0&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And then create rasters of developed/undeveloped areas using raster algebra:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;white-space: pre-wrap; &lt;br /&gt;
white-space: -moz-pre-wrap; &lt;br /&gt;
white-space: -pre-wrap; &lt;br /&gt;
white-space: -o-pre-wrap; &lt;br /&gt;
word-wrap: break-word;&amp;quot;&amp;gt;&lt;br /&gt;
r.mapcalc &amp;quot;urban_1992 = if(landuse_1992 &amp;gt;= 21 &amp;amp;&amp;amp; landuse_1992 &amp;lt;= 24, 1, if(landuse_1992 == 11 || landuse_1992 &amp;gt;= 90 || protected_areas, null(), 0))&amp;quot;&lt;br /&gt;
r.mapcalc &amp;quot;urban_2001 = if(landuse_2001 &amp;gt;= 21 &amp;amp;&amp;amp; landuse_2001 &amp;lt;= 24, 1, if(landuse_2001 == 11 || landuse_2001 &amp;gt;= 90 || protected_areas, null(), 0))&amp;quot;&lt;br /&gt;
r.mapcalc &amp;quot;urban_2011 = if(landuse_2011 &amp;gt;= 21 &amp;amp;&amp;amp; landuse_2011 &amp;lt;= 24, 1, if(landuse_2011 == 11 || landuse_2011 &amp;gt;= 90 || protected_areas, null(), 0))&amp;quot;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We will convert vector counties to raster with the values of the FIPS attribute which links to population file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
v.to.rast input=counties type=area use=attr attribute_column=FIPS output=counties&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If we need to run FUTURES only for smaller number of counties, we can extract them based on the identifier:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;white-space: pre-wrap; &lt;br /&gt;
white-space: -moz-pre-wrap; &lt;br /&gt;
white-space: -pre-wrap; &lt;br /&gt;
white-space: -o-pre-wrap; &lt;br /&gt;
word-wrap: break-word;&amp;quot;&amp;gt;&lt;br /&gt;
v.to.rast input=counties type=area where=&amp;quot;FIPS in (37183, 37101)&amp;quot; use=attr attribute_column=FIPS output=counties_subset&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Before further steps, we will set our working directory so that the input population files and text files&lt;br /&gt;
we are going to create are saved in one directory and easily accessible.&lt;br /&gt;
You can do that from menu ''Settings'' → ''GRASS working environment'' → ''Change working directory''.&lt;br /&gt;
Select (or create) a directory and move there the downloaded files &amp;lt;tt&amp;gt;population_projection.csv&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;population_trend.csv&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Potential submodel ==&lt;br /&gt;
Module {{AddonCmd|r.futures.potential}} implements POTENTIAL submodel as a part of FUTURES land change model. POTENTIAL is implemented using a set of coefficients that relate a selection of site suitability factors to the probability of a place becoming developed. This is implemented using the parameter table in combination with maps of those site suitability factors (mapped predictors). The coefficients are obtained by conducting multilevel logistic regression in R with package lme4 where the coefficients may vary by county. The best model is selected automatically using dredge function from package [https://cran.r-project.org/web/packages/MuMIn/index.html MuMIn].&lt;br /&gt;
&lt;br /&gt;
First, we will derive couple of predictors. &lt;br /&gt;
=== Predictors ===&lt;br /&gt;
==== Slope ====&lt;br /&gt;
We will derive slope in degrees from digital elevation model using {{cmd|r.slope.aspect}} module:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;r.slope.aspect elevation=elevation_30m slope=slope&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Distance from lakes/rivers ====&lt;br /&gt;
First we will extract [http://www.mrlc.gov/nlcd11_leg.php category ''Open Water''] from 2011 NLCD dataset:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
r.mapcalc &amp;quot;water = if(landuse_2011 == 11, 1, null())&amp;quot;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then we compute the distance to water with module {{cmd|r.grow.distance}} and set color table to shades of blue:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
r.grow.distance input=water distance=dist_to_water&lt;br /&gt;
r.colors -n map=dist_to_water color=blues&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Distance from protected areas ====&lt;br /&gt;
We will use raster protected of protected areas we already created, but we will set NULL values to zero.&lt;br /&gt;
We compute the distance to protected areas with module {{cmd|r.grow.distance}} and set color table from green to red:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
r.null map=protected_areas setnull=0&lt;br /&gt;
r.grow.distance input=protected_areas distance=dist_to_protected&lt;br /&gt;
r.colors map=dist_to_protected color=gyr&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Forests ====&lt;br /&gt;
We will smooth the transition between forest and other land use, see NLCD [http://www.mrlc.gov/nlcd11_leg.php category ''Open Water'']:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
r.mapcalc &amp;quot;forest = if(landuse_2011 &amp;gt;= 41 &amp;amp;&amp;amp; landuse_2011 &amp;lt;= 43, 1, 0)&amp;quot;&lt;br /&gt;
r.neighbors -c input=forest output=forest_smooth size=15 method=average&lt;br /&gt;
r.colors map=forest_smooth color=ndvi&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Travel time to cities ====&lt;br /&gt;
Here we will compute travel time to cities (&amp;gt; population 20000)&lt;br /&gt;
as cumulative cost distance where cost is defined as travel time on roads.&lt;br /&gt;
First we specify the speed on different types of roads.&lt;br /&gt;
We copy the roads raster into our mapset so that we can change it&lt;br /&gt;
by adding a new attribute field &amp;lt;tt&amp;gt;speed&amp;lt;/tt&amp;gt;. Then we assign speed values (km/h) based on the type of road:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
g.copy vector=roads,myroads&lt;br /&gt;
v.db.addcolumn map=myroads columns=&amp;quot;speed double precision&amp;quot;&lt;br /&gt;
v.db.update map=myroads column=speed value=50 where=&amp;quot;MTFCC = 'S1400'&amp;quot;&lt;br /&gt;
v.db.update map=myroads column=speed value=100 where=&amp;quot;MTFCC IN ('S1100', 'S1200')&amp;quot;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now we rasterize the selected road types using the speed values from the attribute table as raster values.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;white-space: pre-wrap; &lt;br /&gt;
white-space: -moz-pre-wrap; &lt;br /&gt;
white-space: -pre-wrap; &lt;br /&gt;
white-space: -o-pre-wrap; &lt;br /&gt;
word-wrap: break-word;&amp;quot;&amp;gt;&lt;br /&gt;
v.to.rast input=myroads type=line where=&amp;quot;MTFCC IN ('S1100', 'S1200', 'S1400')&amp;quot; output=roads_speed use=attr attribute_column=speed&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We set the rest of the area to low speed and recompute the speed as time to travel through a 30m cell in minutes:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
r.null map=roads_speed null=5&lt;br /&gt;
r.mapcalc &amp;quot;roads_travel_time = 1.8 / roads_speed&amp;quot;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Finally we compute the travel time to larger cities using {{cmd|r.cost}}:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
r.cost input=roads_travel_time output=travel_time_cities start_points=cities_20000 memory=3000&lt;br /&gt;
r.colors map=travel_time_cities color=byr&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Road density ====&lt;br /&gt;
We will rasterize roads and use moving window analysis ({{cmd|r.neighbors}}) to compute road density:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
v.to.rast input=roads output=roads use=val&lt;br /&gt;
r.null map=roads null=0&lt;br /&gt;
r.neighbors -c input=roads output=road_dens size=25 method=average&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Distance to interchanges ====&lt;br /&gt;
&lt;br /&gt;
We will consider TIGER roads of type &amp;lt;tt&amp;gt;Ramp&amp;lt;/tt&amp;gt; as interchanges, rasterize them and compute euclidean distance to them:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
v.to.rast input=roads type=line where=&amp;quot;MTFCC = 'S1630'&amp;quot; output=interchanges use=val&lt;br /&gt;
r.grow.distance -m input=interchanges distance=dist_interchanges&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Development pressure ===&lt;br /&gt;
&lt;br /&gt;
We compute development pressure with {{AddonCmd|r.futures.devpressure}}. Development pressure is a predictor based on number of neighboring developed cells within search distance, weighted by distance. The development pressure variable plays a special role in the model, allowing for a feedback between predicted change and change in subsequent steps.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;white-space: pre-wrap; &lt;br /&gt;
white-space: -moz-pre-wrap; &lt;br /&gt;
white-space: -pre-wrap; &lt;br /&gt;
white-space: -o-pre-wrap; &lt;br /&gt;
word-wrap: break-word;&amp;quot;&amp;gt;&lt;br /&gt;
r.futures.devpressure -n input=urban_2011 output=devpressure_1 method=gravity size=10 gamma=1 scaling_factor=1&lt;br /&gt;
r.futures.devpressure -n input=urban_2011 output=devpressure_0_5 method=gravity size=30 gamma=0.5 scaling_factor=0.1&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When gamma increases, development influence decreases more rapidly with distance.&lt;br /&gt;
Size is half the size of the moving window. When gamma is low, local development influences more distant places.&lt;br /&gt;
We will derive 2 layers with different gamma and size parameters for the potential statistical model.&lt;br /&gt;
&lt;br /&gt;
=== Rescaling variables ===&lt;br /&gt;
&lt;br /&gt;
First we will look at the ranges of our predictor variables by running a short Python code snippet in Python tab in GUI:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;python&amp;quot; style=&amp;quot;white-space: pre-wrap; &lt;br /&gt;
white-space: -moz-pre-wrap; &lt;br /&gt;
white-space: -pre-wrap; &lt;br /&gt;
white-space: -o-pre-wrap; &lt;br /&gt;
word-wrap: break-word;&amp;quot;&amp;gt;&lt;br /&gt;
for name in ['slope', 'dist_to_water', 'dist_to_protected', 'forest_smooth', 'travel_time_cities', 'road_dens', 'dist_interchanges', 'devpressure_0_5', 'devpressure_1']:&lt;br /&gt;
    minmax = grass.raster_info(name)&lt;br /&gt;
    print name, minmax['min'], minmax['max']&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We will rescale some of our input variables:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
r.mapcalc &amp;quot;dist_to_water_km = dist_to_water / 1000&amp;quot;&lt;br /&gt;
r.mapcalc &amp;quot;dist_to_protected_km = dist_to_protected / 1000&amp;quot;&lt;br /&gt;
r.mapcalc &amp;quot;dist_interchanges_km = dist_interchanges / 1000&amp;quot;&lt;br /&gt;
r.mapcalc &amp;quot;road_dens_perc = road_dens * 100&amp;quot;&lt;br /&gt;
r.mapcalc &amp;quot;forest_smooth_perc = forest_smooth * 100&amp;quot;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Sampling ===&lt;br /&gt;
To sample only in the analyzed counties, we will clip development layer:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
r.mapcalc &amp;quot;urban_2011_clip = if(counties, urban_2011)&amp;quot;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To estimate the number of sampling points, we can use {{cmd|r.report}} to report number of developed/undeveloped cells and their ratio.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
r.report map=urban_2011 units=h,c,p&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We will sample the predictors and the response variable with 10000 random points in undeveloped areas and 2000 points in developed area:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;white-space: pre-wrap; &lt;br /&gt;
white-space: -moz-pre-wrap; &lt;br /&gt;
white-space: -pre-wrap; &lt;br /&gt;
white-space: -o-pre-wrap; &lt;br /&gt;
word-wrap: break-word;&amp;quot;&amp;gt;&lt;br /&gt;
r.sample.category input=urban_2011_clip output=sampling sampled=counties,devpressure_0_5,devpressure_1,slope,road_dens_perc,forest_smooth_perc,dist_to_water_km,dist_to_protected_km,dist_interchanges_km,travel_time_cities npoints=10000,2000&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The attribute table can be exported as CSV file (not necessary step):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;white-space: pre-wrap; &lt;br /&gt;
white-space: -moz-pre-wrap; &lt;br /&gt;
white-space: -pre-wrap; &lt;br /&gt;
white-space: -o-pre-wrap; &lt;br /&gt;
word-wrap: break-word;&amp;quot;&amp;gt;&lt;br /&gt;
v.db.select map=sampling columns=urban_2011_clip,counties,devpressure_0_5,devpressure_1,slope,road_dens_perc,forest_smooth_perc,dist_to_water_km,dist_to_protected_km,dist_interchanges_km,travel_time_cities separator=comma file=samples.csv&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Development potential ===&lt;br /&gt;
Now we find best model for predicting urbanization using {{AddonCmd|r.futures.potential}} which wraps an R script.&lt;br /&gt;
&lt;br /&gt;
We can play with different combinations of predictors, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;white-space: pre-wrap; &lt;br /&gt;
white-space: -moz-pre-wrap; &lt;br /&gt;
white-space: -pre-wrap; &lt;br /&gt;
white-space: -o-pre-wrap; &lt;br /&gt;
word-wrap: break-word;&amp;quot;&amp;gt;&lt;br /&gt;
r.futures.potential input=sampling output=potential.csv columns=devpressure_0_5,slope,road_dens_perc,forest_smooth_perc,dist_to_water_km,travel_time_cities developed_column=urban_2011_clip subregions_column=counties&lt;br /&gt;
r.futures.potential input=sampling output=potential.csv columns=devpressure_1,road_dens_perc,dist_to_water_km,dist_to_protected_km,travel_time_cities developed_column=urban_2011_clip subregions_column=counties&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Or we can run R [http://www.inside-r.org/packages/cran/MuMIn/docs/dredge dredge] function to find &amp;quot;best&amp;quot; model. We can specify minimum and maximum number of predictors the final model should use.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;white-space: pre-wrap; &lt;br /&gt;
white-space: -moz-pre-wrap; &lt;br /&gt;
white-space: -pre-wrap; &lt;br /&gt;
white-space: -o-pre-wrap; &lt;br /&gt;
word-wrap: break-word;&amp;quot;&amp;gt;&lt;br /&gt;
r.futures.potential -d input=sampling output=potential.csv columns=devpressure_1,slope,road_dens_perc,forest_smooth_perc,dist_to_water_km,dist_to_protected_km,dist_interchanges_km,travel_time_cities developed_column=urban_2011_clip subregions_column=counties min_variables=4 max_variables=7&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can then open the output file &amp;lt;tt&amp;gt;potential.csv&amp;lt;/tt&amp;gt;, which is a CSV file with tabs as separators.&lt;br /&gt;
&lt;br /&gt;
For this tutorial, the final potential is created with:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;white-space: pre-wrap; &lt;br /&gt;
white-space: -moz-pre-wrap; &lt;br /&gt;
white-space: -pre-wrap; &lt;br /&gt;
white-space: -o-pre-wrap; &lt;br /&gt;
word-wrap: break-word;&amp;quot;&amp;gt;&lt;br /&gt;
r.futures.potential  input=sampling output=potential.csv columns=devpressure_1,slope,forest_smooth_perc,dist_interchanges_km,travel_time_cities developed_column=urban_2011_clip subregions_column=counties --o&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Demand submodel ==&lt;br /&gt;
First we will mask out roads so that they don't influence into per capita land demand relation.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
v.to.rast input=roads type=line output=roads_mask use=val&lt;br /&gt;
r.mask roads_mask -i&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We will use {{AddonCmd|r.futures.demand}} which derives the population vs. development relation. The relation can be linear/logarithmic/logarithmic2/exponential/exponential approach.&lt;br /&gt;
Look for examples of the different relations in the manual.&lt;br /&gt;
&lt;br /&gt;
* linear: y = A + Bx&lt;br /&gt;
* logarithmic: y = A + Bln(x)&lt;br /&gt;
* logarithmic2: y = A + B * ln(x - C)&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;(requires SciPy)&lt;br /&gt;
* exponential: y = Ae^(BX)&lt;br /&gt;
* exp_approach: y = (1 - e^(-A(x - B))) + C&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;(requires SciPy)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The format of the input population CSV files is described in the manual. It is important to have synchronized categories of subregions and the column headers of the CSV files (in our case FIPS number). How to simply generate the list of years (for which demand is computed) is described in {{AddonCmd|r.futures.demand}} manual, for example run this in Python console:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
','.join([str(i) for i in range(2011, 2036)])&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then we can create the DEMAND file:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;white-space: pre-wrap; &lt;br /&gt;
white-space: -moz-pre-wrap; &lt;br /&gt;
white-space: -pre-wrap; &lt;br /&gt;
white-space: -o-pre-wrap; &lt;br /&gt;
word-wrap: break-word;&amp;quot;&amp;gt;&lt;br /&gt;
r.futures.demand development=urban_1992,urban_2001,urban_2011 subregions=counties observed_population=population_trend.csv projected_population=population_projection.csv simulation_times=2011,2012,2013,2014,2015,2016,2017,2018,2019,2020,2021,2022,2023,2024,2025,2026,2027,2028,2029,2030,2031,2032,2033,2034,2035 plot=plot_demand.pdf demand=demand.csv separator=comma&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In your current working directory, you should find files &amp;lt;tt&amp;gt;plot_demand.png&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;demand.csv&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
If you have SciPy installed, you can experiment with other methods for fitting the functions:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
r.futures.demand ... method=logarithmic2&lt;br /&gt;
r.futures.demand ... method=exp_approach&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
If necessary, you can create a set of demand files produced by fitting each method separately and&lt;br /&gt;
then pick for each county the method which seems best and manually create a new demand file.&lt;br /&gt;
&lt;br /&gt;
When you are finished, remove the mask as it is not needed for the next steps.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
r.mask -r&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Patch calibration ==&lt;br /&gt;
Patch calibration can be a very time consuming computation.&lt;br /&gt;
First we derive patches of new development by comparing historical and latest development.&lt;br /&gt;
We can run this on the entire area and keep only patches with minimum size 2 cells (1800 = 2 x 30 x 30 m).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
r.futures.calib development_start=urban_1992 development_end=urban_2011 subregions=counties patch_sizes=patches.txt patch_threshold=1800  -l&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
We obtained a file &amp;lt;tt&amp;gt;patches.txt&amp;lt;/tt&amp;gt; (used later in the PGA) - a patch size distribution file - containing sizes of all found patches.&lt;br /&gt;
&lt;br /&gt;
We can look at the distribution of the patch sizes:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
from matplotlib import pyplot as plt&lt;br /&gt;
with open('patches.txt') as f:&lt;br /&gt;
    patches = [int(patch) for patch in f.readlines()]&lt;br /&gt;
plt.hist(patches, 2000)&lt;br /&gt;
plt.xlim(0,50)&lt;br /&gt;
plt.show()&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
At this point, we start the calibration to get best parameters of patch shape &lt;br /&gt;
(for this tutorial, this step can be skipped and the suggested parameters are used).&lt;br /&gt;
First we select only one county to &lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
v.to.rast input=counties type=area where=&amp;quot;FIPS == 37183&amp;quot; use=attr attribute_column=FIPS output=calib_county&lt;br /&gt;
g.region raster=calib_county zoom=calib_county&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; &lt;br /&gt;
style=&amp;quot;white-space: pre-wrap; &lt;br /&gt;
white-space: -moz-pre-wrap; &lt;br /&gt;
white-space: -pre-wrap;&lt;br /&gt;
white-space: -o-pre-wrap; &lt;br /&gt;
word-wrap: break-word;&amp;quot;&amp;gt;&lt;br /&gt;
r.futures.calib development_start=urban_1992 development_end=urban_2011 subregions=calib_county patch_sizes=patches.txt calibration_results=calib.csv patch_threshold=1800 repeat=5 compactness_mean=0.1,0.3,0.5,0.7,0.9 compactness_range=0.1,0.05 discount_factor=0.1,0.3,0.5,0.7,0.9 predictors=slope,forest_smooth_perc,dist_interchanges_km,travel_time_cities demand=demand.csv devpot_params=potential.csv num_neighbors=4 seed_search=2 development_pressure=devpressure_1 development_pressure_approach=gravity n_dev_neighbourhood=10 gamma=1 scaling_factor=1 --o&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== FUTURES simulation ==&lt;br /&gt;
We will switch back to our previous region:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
g.region raster=landuse_2011 -p&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now we have all the inputs necessary for running {{AddonCmd|r.futures.pga}}:&lt;br /&gt;
&lt;br /&gt;
The entire command is here:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;white-space: pre-wrap; &lt;br /&gt;
white-space: -moz-pre-wrap; &lt;br /&gt;
white-space: -pre-wrap; &lt;br /&gt;
white-space: -o-pre-wrap; &lt;br /&gt;
word-wrap: break-word;&amp;quot;&amp;gt;&lt;br /&gt;
r.futures.pga subregions=counties developed=urban_2011 predictors=slope,forest_smooth_perc,dist_interchanges_km,travel_time_cities devpot_params=potential.csv development_pressure=devpressure_1 n_dev_neighbourhood=10 development_pressure_approach=gravity gamma=1 scaling_factor=1 demand=demand.csv discount_factor=0.3 compactness_mean=0.2 compactness_range=0.1 patch_sizes=patches.txt num_neighbors=4 seed_search=2 random_seed=1 output=final output_series=final&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Quick description ===&lt;br /&gt;
The command parameters and their values:&lt;br /&gt;
* raster map of counties with their categories&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
... subregions=counties ...&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* raster of developed (1), undeveloped (0) and NULLs for undevelopable areas&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
... developed=urban_2011 ...&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* predictors selected with {{AddonCmd|r.futures.potential}} and their coefficients in a &amp;lt;tt&amp;gt;potential.csv&amp;lt;/tt&amp;gt; file. The order of predictors must match the order in the file and the categories of the counties must match raster &amp;lt;tt&amp;gt;counties&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
... predictors=slope,forest_smooth_perc,dist_interchanges_km,travel_time_cities devpot_params=potential.csv ...&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* initial development pressure computed by {{AddonCmd|r.futures.devpressure}}, it's important to set here the same parameters&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
... development_pressure=devpressure_1 n_dev_neighbourhood=10 development_pressure_approach=gravity gamma=1 scaling_factor=1 ...&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* per capita land demand computed by {{AddonCmd|r.futures.demand}}, the categories of the counties must match raster &amp;lt;tt&amp;gt;counties&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
... demand=demand.csv ...&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* patch parameters from the calibration step&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
... discount_factor=0.3 compactness_mean=0.4 compactness_range=0.08 patch_sizes=patches.txt ...&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* recommended parameters for patch growing algorithm &lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
... num_neighbors=4 seed_search=2 ...&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* set random seed  for repeatable results or set flag &amp;lt;tt&amp;gt;-s&amp;lt;/tt&amp;gt; to generate seed automatically&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
... random_seed=1 ...&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* specify final output map and optionally basename for intermediate raster maps&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
output=final output_series=final&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Scenarios ===&lt;br /&gt;
&lt;br /&gt;
Scenarios involving policies that encourage infill versus sprawl can be explored using the &amp;lt;tt&amp;gt;incentive_power&amp;lt;/tt&amp;gt; parameter,&lt;br /&gt;
which uses a power function to transform the evenness of the probability gradient in POTENTIAL.&lt;br /&gt;
&lt;br /&gt;
The default value is 1. You can change the power to a number between 0.25 and 4 to test urban sprawl/infill scenarios.&lt;br /&gt;
Higher power leads to infill behavior, lower power to urban sprawl.&lt;br /&gt;
&lt;br /&gt;
= Postprocessing =&lt;br /&gt;
&lt;br /&gt;
Follow a [[Creating_animation_from_FUTURES_output_in_GRASS_GIS| tutorial how to make an animation from the results]].&lt;br /&gt;
&lt;br /&gt;
= See also =&lt;br /&gt;
&lt;br /&gt;
* [[From GRASS GIS novice to power user (workshop at FOSS4G Boston 2017)]]&lt;br /&gt;
* [[Unleash the power of GRASS GIS at US-IALE 2017]]&lt;br /&gt;
* [[Workshop on urban growth modeling with FUTURES]]&lt;br /&gt;
* [[R statistics|GRASS GIS and R]]&lt;br /&gt;
* [[GRASS Location Wizard]]&lt;br /&gt;
&lt;br /&gt;
[[Category: Tutorial]]&lt;br /&gt;
[[Category: FUTURES]]&lt;br /&gt;
[[Category: Urban]]&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS_Community_Meeting_San_Michele_2026&amp;diff=28875</id>
		<title>GRASS Community Meeting San Michele 2026</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS_Community_Meeting_San_Michele_2026&amp;diff=28875"/>
		<updated>2026-05-08T16:32:10Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: /* Agenda */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[File:Sanmichele.png|frameless|center|1000px|San Michele all'Adige]]&lt;br /&gt;
&lt;br /&gt;
{{toc|right}}&lt;br /&gt;
&lt;br /&gt;
The ''GRASS Community Meeting'' for contributors and developers will be happening from '''July 11 -  19, 2026''' in [https://www.openstreetmap.org/relation/46990#map=12/46.1349/11.1947 San Michele all'Adige, Trentino, Italy].&lt;br /&gt;
&lt;br /&gt;
== Sponsors ==&lt;br /&gt;
&lt;br /&gt;
Sponsors make the event possible. Learn more about [https://grass.osgeo.org/contribute/sponsoring/ Sponsoring].&lt;br /&gt;
&lt;br /&gt;
* [https://www.osgeo.org/ OSGeo]: 2500 USD (see [https://wiki.osgeo.org/w/index.php?title=GRASS_Community_Meeting_2026:_Budget budget]]).&lt;br /&gt;
&lt;br /&gt;
[[File:Osgeo logo.png|none|left|alt=Light and dark green logo of OSGeo saying Your Open Source Compass|Open Source Geospatial Foundation]]&lt;br /&gt;
&lt;br /&gt;
== Purpose ==&lt;br /&gt;
The ''GRASS Community Meeting'' is a great occasion for folks to support the development by actively contributing to the project in different ways. These include  source code updates, documentation (manuals, wiki, tutorials), translations, website improvements or likewise. The community meeting is also a get-together where supporters, contributors, power users and developers make decisions and tackle larger problems related to the project, discuss and collaboratively resolve bugs, plan the direction for the project and work on new features. We welcome people committed to improving the GRASS  project and the interfaces to QGIS, GDAL, PostGIS, R, OGC Services and others.&lt;br /&gt;
&lt;br /&gt;
The focus is on GRASS maintenance, and interaction with other projects. Many maintenance tasks, infrastructure changes, and planning of large changes especially benefits from maintainers being in one place and time zone. While the specific topics highly depend on the participants, we will prioritize topics which require highly synchronous collaboration, such as the CMake build system transition and API transitions. The [https://grass.osgeo.org/news/2025_05_27_grass_dev_summit_report/ 2025 event report] gives an overview of what was achieved last year. &lt;br /&gt;
&lt;br /&gt;
We do require participants to work on GRASS or connections to other projects. However, we leave them the freedom to work on what they think is the best contribution to the project given their skills and time available.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Agenda ==&lt;br /&gt;
&lt;br /&gt;
Agenda is being refined.&lt;br /&gt;
&lt;br /&gt;
=== Saturday, July 11 ===&lt;br /&gt;
&lt;br /&gt;
Day of arrival. Contact organizers if you are interested in individualized program or helping with organization.&lt;br /&gt;
&lt;br /&gt;
=== Sunday, July 12 ===&lt;br /&gt;
&lt;br /&gt;
* Hybrid meeting about 8.6.0 with FHS and Jupyter in GUI updates &lt;br /&gt;
&lt;br /&gt;
=== Monday, July 13 ===&lt;br /&gt;
&lt;br /&gt;
* FHS&lt;br /&gt;
* Updating the GRASS Roadmap&lt;br /&gt;
&lt;br /&gt;
=== Tuesday, July 14 ===&lt;br /&gt;
&lt;br /&gt;
* GSoC (may be moved to different day)&lt;br /&gt;
* GeoAI&lt;br /&gt;
&lt;br /&gt;
=== Wednesday, July 15 ===&lt;br /&gt;
&lt;br /&gt;
* Python API review&lt;br /&gt;
* Plan PSC elections&lt;br /&gt;
&lt;br /&gt;
=== Thursday, July 16 ===&lt;br /&gt;
&lt;br /&gt;
* Reducing PR backlog &lt;br /&gt;
&lt;br /&gt;
=== Friday, July 17 ===&lt;br /&gt;
&lt;br /&gt;
* Address issues for 8.6.0 release&lt;br /&gt;
&lt;br /&gt;
=== Saturday, July 18 ===&lt;br /&gt;
&lt;br /&gt;
* Website review&lt;br /&gt;
&lt;br /&gt;
=== Sunday, July 19 ===&lt;br /&gt;
&lt;br /&gt;
Day of departure.&lt;br /&gt;
&lt;br /&gt;
== Participation ==&lt;br /&gt;
&lt;br /&gt;
Please add your name here:&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable sortable&amp;quot;   border=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;4&amp;quot; rules=&amp;quot;all&amp;quot; style=&amp;quot;margin:1em 1em 1em 0; border:solid 1px #AAAAAA; border-collapse:collapse; background-color:#edf9c7; font-size:95%; empty-cells:show;&amp;quot; &lt;br /&gt;
!width=50px|'''Number'''&lt;br /&gt;
!width=130px|'''Participant '''&lt;br /&gt;
!width=100px|'''Country'''&lt;br /&gt;
!width=100px|'''Arrival'''&lt;br /&gt;
!width=100px|'''Departure'''&lt;br /&gt;
!'''Topics'''&lt;br /&gt;
!'''Notes'''&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
| [[User:Lucadelu|Luca Delucchi]]&lt;br /&gt;
| Italy&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
| [[User:wenzeslaus|Vaclav Petras]]&lt;br /&gt;
| United States &lt;br /&gt;
| 11.07.&lt;br /&gt;
| 19.07.&lt;br /&gt;
| grass.tools, pytest, subcommands, reviews&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
| [[User:Annakrat|Anna Petrasova]]&lt;br /&gt;
| United States &lt;br /&gt;
| 11.07.&lt;br /&gt;
| 19.07.&lt;br /&gt;
| GSoC, reviews, PR backlog, tutorials&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
| [[User:Neteler|Markus Neteler]]&lt;br /&gt;
| Germany&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
| [[User:Sbl|Stefan Blumentrath]]&lt;br /&gt;
| Norway&lt;br /&gt;
| 11.07. (presumably)&lt;br /&gt;
| 18.07. (presumably)&lt;br /&gt;
| Handling Copernicus data with GRASS / actinia&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
| [[User:Hellik|Helmut Kudrnovsky]]&lt;br /&gt;
| Austria&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
| [[User:Veroandreo|Verónica Andreo]]&lt;br /&gt;
| Argentina&lt;br /&gt;
| 11.07. &lt;br /&gt;
| 19.07. &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
| [[User:Ctwhite|Corey White]]&lt;br /&gt;
| United States&lt;br /&gt;
| 11.07. &lt;br /&gt;
| 19.07. &lt;br /&gt;
| grass.jupyter, documentation, website, reviews, tutorials&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Registration is free; participants cover their own travel and lodging, often with employer support — thank you. Ideally we'd reimburse everyone, and every [https://numfocus.org/donate-to-grass donation] or [https://grass.osgeo.org/contribute/sponsoring/ employer sponsorship] of the project helps us get closer.&lt;br /&gt;
&lt;br /&gt;
== Venue ==&lt;br /&gt;
The meeting will be hosted at [https://fmach.it/ Fondazione Edmund Mach] (FEM) in San Michele all'Adige, Trentino, Italy — about 15 km north of Trento. FEM is a research and education center with on-site facilities that allow participants to work, sleep, and eat in the same location.&lt;br /&gt;
&lt;br /&gt;
[https://maps.app.goo.gl/5YEuEts6qXvky7HD9 Map]&lt;br /&gt;
&lt;br /&gt;
=== Getting there ===&lt;br /&gt;
&lt;br /&gt;
San Michele all'Adige is reachable by train on the Trento–Bolzano line (San Michele all'Adige–Mezzocorona station), with frequent connections from Trento (~15 minutes) and Verona (~1 hour). The nearest airports are Verona (VRN), Venice Marco Polo (VCE) and Treviso (TSF), Milan Bergamo (BGY), Malpensa (MXP), and Linate (LIN), Bologna (BLQ), and Innsbruck (INN) in Austria. Trento is also the host city of FOSS4G Italy 2026 (July 9–11), making it convenient to combine both events.&lt;br /&gt;
&lt;br /&gt;
== Accommodation and Costs ==&lt;br /&gt;
&lt;br /&gt;
''Registration is free''. However, participants should plan for the following costs:&lt;br /&gt;
&lt;br /&gt;
* Travel&lt;br /&gt;
* Lodging&lt;br /&gt;
&lt;br /&gt;
Participants can stay on-site at the FEM convitto (dormitory), keeping the community together for the full duration of the meeting:&lt;br /&gt;
&lt;br /&gt;
* €35 per person per night&lt;br /&gt;
* Double and triple rooms (triples include a small kitchen)&lt;br /&gt;
* A mandatory on-site supervisor is required at €200 per night (flat fee, shared across the group)&lt;br /&gt;
* Family members are welcome to stay in the dormitory as well&lt;br /&gt;
* [https://cif.fmach.it/content/download/2701/78358/file/brochure_convitto.pdf Brochure]&lt;br /&gt;
* Details to be communicated soon.&lt;br /&gt;
&lt;br /&gt;
For anyone preferring alternative lodging, hotels and B&amp;amp;Bs are available in San Michele and nearby Trento.&lt;br /&gt;
&lt;br /&gt;
Lunches on weekdays can be taken at the FEM canteen (mensa), located on the same campus. Details and pricing are being finalized.&lt;br /&gt;
&lt;br /&gt;
== Individual Preparation ==&lt;br /&gt;
&lt;br /&gt;
* Bring your own computer&lt;br /&gt;
* Bring {{wikipedia|AC power plugs and sockets|power adapter}} if needed (Italy: 230V, 50Hz, {{wikipedia|Europlug|Type C}}, {{wikipedia|Schuko|Type F}}, and {{wikipedia|AC power plugs and sockets: L|Type L}} sockets are common)&lt;br /&gt;
* Install git and the compiler tools, and come with a working GRASS development environment if possible. See [https://github.com/OSGeo/grass/blob/main/CONTRIBUTING.md here] for details.&lt;br /&gt;
&lt;br /&gt;
== FAQ ==&lt;br /&gt;
&lt;br /&gt;
* ''Is this a conference?''&lt;br /&gt;
** Talks or presentations may be included, but the purpose is to work together on the project. Among conference formats, the closest comparison would be a participatory workshop.&lt;br /&gt;
* ''Is this a hackathon?''&lt;br /&gt;
** While there is plenty of intensive coding, the meeting is not competitive. We meet to collaborate.&lt;br /&gt;
* ''Is the GRASS Community Meeting for developers only?''&lt;br /&gt;
** No, the meeting is open to all users, supporters, contributors, power users, and developers ''who want to make a meaningful contribution to the project''.&lt;br /&gt;
* ''What skills do I need?''&lt;br /&gt;
** Coding skills are not required. Contributions to documentation, tutorials, translations, website, and testing are all valuable. Practical help during the meeting, such as coordinating meals, photography, or reporting, is a real contribution too.&lt;br /&gt;
* ''Can I attend remotely?''&lt;br /&gt;
** The meeting is in-person, but everyone is welcome to use the same week for focused work on the project from wherever they are.&lt;br /&gt;
* ''What language is used during the meeting?''&lt;br /&gt;
** English is the working language, but you may hear several other languages spoken at the event.&lt;br /&gt;
* ''How was it last time?''&lt;br /&gt;
** Splendid! See [[GRASS Developer Summit Raleigh 2025]]!&lt;br /&gt;
* ''Where can I get help and more information about the community meeting?''&lt;br /&gt;
** Contact local organizer [[User:Lucadelu|Luca Delucchi]] (&amp;lt;tt&amp;gt;&amp;lt;lucadeluge at gmail com&amp;gt;&amp;lt;/tt&amp;gt;) or [[User:wenzeslaus|Vaclav Petras]] (&amp;lt;tt&amp;gt;&amp;lt;wenzeslaus at gmail com&amp;gt;&amp;lt;/tt&amp;gt;) for budget questions.&lt;br /&gt;
* ''What if I can't spend time on this?''&lt;br /&gt;
** Can you spend money instead? [https://numfocus.org/donate-to-grass Donate to GRASS through NumFOCUS] to help keep the project going.&lt;br /&gt;
&lt;br /&gt;
[[Category: Workshops]]&lt;br /&gt;
[[Category: Code Sprint]]&lt;br /&gt;
[[Category: 2026]]&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS_Community_Meeting_San_Michele_2026&amp;diff=28862</id>
		<title>GRASS Community Meeting San Michele 2026</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS_Community_Meeting_San_Michele_2026&amp;diff=28862"/>
		<updated>2026-05-05T13:23:32Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: /* Participation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[File:Sanmichele.png|frameless|center|1000px|San Michele all'Adige]]&lt;br /&gt;
&lt;br /&gt;
{{toc|right}}&lt;br /&gt;
&lt;br /&gt;
The ''GRASS Community Meeting'' for contributors and developers will be happening from '''July 11 -  19, 2026''' in [https://www.openstreetmap.org/relation/46990#map=12/46.1349/11.1947 San Michele all'Adige, Trentino, Italy].&lt;br /&gt;
&lt;br /&gt;
== Sponsors ==&lt;br /&gt;
&lt;br /&gt;
Sponsors make the event possible. Learn more about [https://grass.osgeo.org/contribute/sponsoring/ Sponsoring].&lt;br /&gt;
&lt;br /&gt;
* [https://www.osgeo.org/ OSGeo]: 2500 USD (see [https://wiki.osgeo.org/w/index.php?title=GRASS_Community_Meeting_2026:_Budget budget]]).&lt;br /&gt;
&lt;br /&gt;
[[File:Osgeo logo.png|none|left|alt=Light and dark green logo of OSGeo saying Your Open Source Compass|Open Source Geospatial Foundation]]&lt;br /&gt;
&lt;br /&gt;
== Purpose ==&lt;br /&gt;
The ''GRASS Community Meeting'' is a great occasion for folks to support the development by actively contributing to the project in different ways. These include  source code updates, documentation (manuals, wiki, tutorials), translations, website improvements or likewise. The community meeting is also a get-together where supporters, contributors, power users and developers make decisions and tackle larger problems related to the project, discuss and collaboratively resolve bugs, plan the direction for the project and work on new features. We welcome people committed to improving the GRASS  project and the interfaces to QGIS, GDAL, PostGIS, R, OGC Services and others.&lt;br /&gt;
&lt;br /&gt;
The focus is on GRASS maintenance, and interaction with other projects. Many maintenance tasks, infrastructure changes, and planning of large changes especially benefits from maintainers being in one place and time zone. While the specific topics highly depend on the participants, we will prioritize topics which require highly synchronous collaboration, such as the CMake build system transition and API transitions. The [https://grass.osgeo.org/news/2025_05_27_grass_dev_summit_report/ 2025 event report] gives an overview of what was achieved last year. &lt;br /&gt;
&lt;br /&gt;
We do require participants to work on GRASS or connections to other projects. However, we leave them the freedom to work on what they think is the best contribution to the project given their skills and time available.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Agenda ==&lt;br /&gt;
&lt;br /&gt;
Agenda is forthcoming.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Saturday, July 11 ===&lt;br /&gt;
&lt;br /&gt;
Day of arrival. Contact organizers if you are interested in individualized program or helping with organization.&lt;br /&gt;
&lt;br /&gt;
=== Sunday, July 12 ===&lt;br /&gt;
=== Monday, July 13 ===&lt;br /&gt;
=== Tuesday, July 14 ===&lt;br /&gt;
=== Wednesday, July 15 ===&lt;br /&gt;
=== Thursday, July 16 ===&lt;br /&gt;
=== Friday, July 17 ===&lt;br /&gt;
=== Saturday, July 18 ===&lt;br /&gt;
=== Sunday, July 19 ===&lt;br /&gt;
&lt;br /&gt;
Day of departure.&lt;br /&gt;
&lt;br /&gt;
== Participation ==&lt;br /&gt;
&lt;br /&gt;
Please add your name here:&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable sortable&amp;quot;   border=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;4&amp;quot; rules=&amp;quot;all&amp;quot; style=&amp;quot;margin:1em 1em 1em 0; border:solid 1px #AAAAAA; border-collapse:collapse; background-color:#edf9c7; font-size:95%; empty-cells:show;&amp;quot; &lt;br /&gt;
!width=50px|'''Number'''&lt;br /&gt;
!width=130px|'''Participant '''&lt;br /&gt;
!width=100px|'''Country'''&lt;br /&gt;
!width=100px|'''Arrival'''&lt;br /&gt;
!width=100px|'''Departure'''&lt;br /&gt;
!'''Topics'''&lt;br /&gt;
!'''Notes'''&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
| [[User:Lucadelu|Luca Delucchi]]&lt;br /&gt;
| Italy&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
| [[User:wenzeslaus|Vaclav Petras]]&lt;br /&gt;
| United States &lt;br /&gt;
| 11.07.&lt;br /&gt;
| 19.07.&lt;br /&gt;
| grass.tools, pytest, subcommands, reviews&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
| [[User:Annakrat|Anna Petrasova]]&lt;br /&gt;
| United States &lt;br /&gt;
| 11.07.&lt;br /&gt;
| 19.07.&lt;br /&gt;
| GSoC, reviews, PR backlog, tutorials&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
| [[User:Neteler|Markus Neteler]]&lt;br /&gt;
| Germany&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
| [[User:Sbl|Stefan Blumentrath]]&lt;br /&gt;
| Norway&lt;br /&gt;
| 11.07. (presumably)&lt;br /&gt;
| 18.07. (presumably)&lt;br /&gt;
| Handling Copernicus data with GRASS / actinia&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
| [[User:Hellik|Helmut Kudrnovsky]]&lt;br /&gt;
| Austria&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
| [[User:Veroandreo|Verónica Andreo]]&lt;br /&gt;
| Argentina&lt;br /&gt;
| 11.07. &lt;br /&gt;
| 19.07. &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Registration is free; participants cover their own travel and lodging, often with employer support — thank you. Ideally we'd reimburse everyone, and every [https://numfocus.org/donate-to-grass donation] or [https://grass.osgeo.org/contribute/sponsoring/ employer sponsorship] of the project helps us get closer.&lt;br /&gt;
&lt;br /&gt;
== Venue ==&lt;br /&gt;
The meeting will be hosted at [https://fmach.it/ Fondazione Edmund Mach] (FEM) in San Michele all'Adige, Trentino, Italy — about 15 km north of Trento. FEM is a research and education center with on-site facilities that allow participants to work, sleep, and eat in the same location.&lt;br /&gt;
&lt;br /&gt;
[https://maps.app.goo.gl/5YEuEts6qXvky7HD9 Map]&lt;br /&gt;
&lt;br /&gt;
=== Getting there ===&lt;br /&gt;
&lt;br /&gt;
San Michele all'Adige is reachable by train on the Trento–Bolzano line (San Michele all'Adige–Mezzocorona station), with frequent connections from Trento (~15 minutes) and Verona (~1 hour). The nearest airports are Verona (VRN), Venice Marco Polo (VCE) and Treviso (TSF), Milan Bergamo (BGY), Malpensa (MXP), and Linate (LIN), Bologna (BLQ), and Innsbruck (INN) in Austria. Trento is also the host city of FOSS4G Italy 2026 (July 9–11), making it convenient to combine both events.&lt;br /&gt;
&lt;br /&gt;
== Accommodation and Costs ==&lt;br /&gt;
&lt;br /&gt;
''Registration is free''. However, participants should plan for the following costs:&lt;br /&gt;
&lt;br /&gt;
* Travel&lt;br /&gt;
* Lodging&lt;br /&gt;
&lt;br /&gt;
Participants can stay on-site at the FEM convitto (dormitory), keeping the community together for the full duration of the meeting:&lt;br /&gt;
&lt;br /&gt;
* €35 per person per night&lt;br /&gt;
* Double and triple rooms (triples include a small kitchen)&lt;br /&gt;
* A mandatory on-site supervisor is required at €200 per night (flat fee, shared across the group)&lt;br /&gt;
* Family members are welcome to stay in the dormitory as well&lt;br /&gt;
* [https://cif.fmach.it/content/download/2701/78358/file/brochure_convitto.pdf Brochure]&lt;br /&gt;
* Details to be communicated soon.&lt;br /&gt;
&lt;br /&gt;
For anyone preferring alternative lodging, hotels and B&amp;amp;Bs are available in San Michele and nearby Trento.&lt;br /&gt;
&lt;br /&gt;
Lunches on weekdays can be taken at the FEM canteen (mensa), located on the same campus. Details and pricing are being finalized.&lt;br /&gt;
&lt;br /&gt;
== Individual Preparation ==&lt;br /&gt;
&lt;br /&gt;
* Bring your own computer&lt;br /&gt;
* Bring {{wikipedia|AC power plugs and sockets|power adapter}} if needed (Italy: 230V, 50Hz, {{wikipedia|Europlug|Type C}}, {{wikipedia|Schuko|Type F}}, and {{wikipedia|AC power plugs and sockets: L|Type L}} sockets are common)&lt;br /&gt;
* Install git and the compiler tools, and come with a working GRASS development environment if possible. See [https://github.com/OSGeo/grass/blob/main/CONTRIBUTING.md here] for details.&lt;br /&gt;
&lt;br /&gt;
== FAQ ==&lt;br /&gt;
&lt;br /&gt;
* ''Is this a conference?''&lt;br /&gt;
** Talks or presentations may be included, but the purpose is to work together on the project. Among conference formats, the closest comparison would be a participatory workshop.&lt;br /&gt;
* ''Is this a hackathon?''&lt;br /&gt;
** While there is plenty of intensive coding, the meeting is not competitive. We meet to collaborate.&lt;br /&gt;
* ''Is the GRASS Community Meeting for developers only?''&lt;br /&gt;
** No, the meeting is open to all users, supporters, contributors, power users, and developers ''who want to make a meaningful contribution to the project''.&lt;br /&gt;
* ''What skills do I need?''&lt;br /&gt;
** Coding skills are not required. Contributions to documentation, tutorials, translations, website, and testing are all valuable. Practical help during the meeting, such as coordinating meals, photography, or reporting, is a real contribution too.&lt;br /&gt;
* ''Can I attend remotely?''&lt;br /&gt;
** The meeting is in-person, but everyone is welcome to use the same week for focused work on the project from wherever they are.&lt;br /&gt;
* ''What language is used during the meeting?''&lt;br /&gt;
** English is the working language, but you may hear several other languages spoken at the event.&lt;br /&gt;
* ''How was it last time?''&lt;br /&gt;
** Splendid! See [[GRASS Developer Summit Raleigh 2025]]!&lt;br /&gt;
* ''Where can I get help and more information about the community meeting?''&lt;br /&gt;
** Contact local organizer [[User:Lucadelu|Luca Delucchi]] (&amp;lt;tt&amp;gt;&amp;lt;lucadeluge at gmail com&amp;gt;&amp;lt;/tt&amp;gt;) or [[User:wenzeslaus|Vaclav Petras]] (&amp;lt;tt&amp;gt;&amp;lt;wenzeslaus at gmail com&amp;gt;&amp;lt;/tt&amp;gt;) for budget questions.&lt;br /&gt;
* ''What if I can't spend time on this?''&lt;br /&gt;
** Can you spend money instead? [https://numfocus.org/donate-to-grass Donate to GRASS through NumFOCUS] to help keep the project going.&lt;br /&gt;
&lt;br /&gt;
[[Category: Workshops]]&lt;br /&gt;
[[Category: Code Sprint]]&lt;br /&gt;
[[Category: 2026]]&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS_GSoC_Ideas_2026&amp;diff=28857</id>
		<title>GRASS GSoC Ideas 2026</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS_GSoC_Ideas_2026&amp;diff=28857"/>
		<updated>2026-05-04T02:31:41Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: Add template for accepted ideas&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== About ==&lt;br /&gt;
Important: While we are still an OSGeo project, we changed our fiscal sponsor to [https://numfocus.org/ NumFOCUS].&lt;br /&gt;
&lt;br /&gt;
''As a result, GRASS participates in GSoC under the [https://numfocus.org/ NumFOCUS] umbrella organization.''&lt;br /&gt;
&lt;br /&gt;
Read more about our governance [https://grass.osgeo.org/about/governance/ on GRASS website].&lt;br /&gt;
&lt;br /&gt;
* [https://numfocus.org/programs/google-summer-code The NumFOCUS GSoC main page]&lt;br /&gt;
* [https://github.com/numfocus/gsoc/blob/master/CONTRIBUTING-contributors.md NumFOCUS guidelines for contributors].&lt;br /&gt;
* [https://summerofcode.withgoogle.com/ Official GSoC page at Google]&lt;br /&gt;
&lt;br /&gt;
== Accepted ideas ==&lt;br /&gt;
=== Idea title ===&lt;br /&gt;
* Student:&lt;br /&gt;
* Mentors:&lt;br /&gt;
* [[GRASS_GSoC_2025_Add_JSON_output_to_different_tools_in_C|Example of Wiki page]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== AI Tool Usage Policy ==&lt;br /&gt;
We acknowledge that applicants may use AI tools (like ChatGPT, Copilot, etc.) to assist with proposal writing and coding. However:&lt;br /&gt;
&lt;br /&gt;
* Your proposal should reflect your own understanding and voice. AI-generated &amp;quot;slop&amp;quot; (overly generic or regurgitated content) is easy to spot and will hurt your application.&lt;br /&gt;
* We evaluate applications primarily on GitHub contributions and communication with the GRASS community, not just proposal polish.&lt;br /&gt;
* Show us you understand the project through high-quality pull requests on GitHub.&lt;br /&gt;
* Disclose AI usage: If you use AI tools in your proposal or code contributions, please disclose the extent to which you used them (e.g., for brainstorming, proofreading, code suggestions, etc.).&lt;br /&gt;
&lt;br /&gt;
== Ideas ==&lt;br /&gt;
If you are a student you can suggest a new idea or pick up an existing one. In any case write about it to [https://discourse.osgeo.org/c/grass/developer/61 OSGeo Discourse forum for GRASS developers], [https://github.com/OSGeo/grass/discussions GitHub Discussions], or [https://gitter.im/grassgis/community Gitter].&lt;br /&gt;
&lt;br /&gt;
You are invited as well to have a close look at ideas from previous years ([https://trac.osgeo.org/grass/wiki/GSoC/2014 2014], [https://trac.osgeo.org/grass/wiki/GSoC/2015 2015], [https://trac.osgeo.org/grass/wiki/GSoC/2016 2016],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2017 2017],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2018 2018],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2019 2019],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2020 2020],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2021 2021],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2022 2022],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2023 2023])&lt;br /&gt;
which have not yet been implemented.&lt;br /&gt;
You can also look at accepted GRASS GSoC [https://trac.osgeo.org/grass/wiki/GSoC projects from previous years] for an idea of scope.''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Parallelization of existing tools ===&lt;br /&gt;
&lt;br /&gt;
There are several tools that would benefit from parallelization with OpenMP, e.g. r.texture, r.fill.stats, r/v.surf.idw, r.viewshed, v.to.rast, r.grow.distance, v.surf.bspline, r.proj, ...&lt;br /&gt;
For overview of current state, see [[Raster_Parallelization_with_OpenMP]].&lt;br /&gt;
&lt;br /&gt;
* Requirements: familiarity with C, OpenMP&lt;br /&gt;
* Mentor: Huidae Cho&lt;br /&gt;
* Co-mentor: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Rating: difficult&lt;br /&gt;
* Expected Outcomes: parallelized 2-5 tools, depending on complexity&lt;br /&gt;
* Test of skills (one or more):&lt;br /&gt;
** Address https://github.com/OSGeo/grass/issues/5776 (carefully read the existing conversation in the issue and linked PR)&lt;br /&gt;
** Pick a tool and develop prototype implementation of the parallelization.&lt;br /&gt;
&lt;br /&gt;
=== Improve GRASS user experience in Jupyter Notebook ===&lt;br /&gt;
[[File:Jupyter_interactive_viewshed.png|500px|thumb|right|InteractiveMap in grass.jupyter library]]&lt;br /&gt;
Python package [https://grass.osgeo.org/grass-stable/manuals/libpython/grass.jupyter.html grass.jupyter] was developed during [https://trac.osgeo.org/grass/wiki/GSoC/2021/JupyterAndGRASS GSoC 2021] to simplify running GRASS from Jupyter Notebooks and displaying data. This project could focus on adding features such as better symbology handling and adding legend to InteractiveMap and better integration with matplotlib.&lt;br /&gt;
&lt;br /&gt;
* Requirements: Python&lt;br /&gt;
* Mentor: Anna Petrasova&lt;br /&gt;
* Co-mentor: Vaclav Petras, Helena Mitasova, Corey White&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: improved user experience when using GRASS through notebooks&lt;br /&gt;
* Test of skills: write a test for [https://github.com/OSGeo/grass/tree/main/python/grass/jupyter grass.jupyter library] using python unittest or pytest, more info [https://grass.osgeo.org/grass-devel/manuals/libpython/gunittest_testing.html here] or rewrite some of the functions in grass.jupyter library using the new [https://grass.osgeo.org/grass-devel/manuals/python_intro.html#running-tools Tools API].&lt;br /&gt;
&lt;br /&gt;
=== Add JSON output to different tools ===&lt;br /&gt;
There are several tools in GRASS that would benefit from a JSON-formatted output.&lt;br /&gt;
Besides adding the JSON output, the work would also include adding tests and basic documentation.&lt;br /&gt;
* Requirements: C, Python&lt;br /&gt;
* Mentor: Vaclav Petras&lt;br /&gt;
* Co-mentor: Anna Petrasova, Corey White&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: 10-20 tools (depending on project length and complexity of the tool) tools with well tested JSON output&lt;br /&gt;
* Note: A lot of work on JSON was already done, but there is more! Some of the remaining tools require more design. There are also Python tools (not just C which was the focus previously) and then also the grass-addons repo. Some tools also don't have any machine readable output right now and should. Also current tools which use other tools should use the new JSON as opposed to what they are using now. Preparing a well-reasoned list of tasks is a part of the application.&lt;br /&gt;
* Test of skills (pick one or more): &lt;br /&gt;
** https://github.com/OSGeo/grass/issues/6968&lt;br /&gt;
** https://github.com/OSGeo/grass/issues/6969&lt;br /&gt;
** https://github.com/OSGeo/grass/issues/6970&lt;br /&gt;
&lt;br /&gt;
=== Support writing tests with pytest ===&lt;br /&gt;
&lt;br /&gt;
* The current testing framework, ''[https://grass.osgeo.org/grass-stable/manuals/libpython/gunittest.html grass.gunittest]'', was written before migration to Git/GitHub and when long free runs in 3rd party services were unthinkable. Additionally, some no longer relevant goals were prioritized, such as independence on the current code, detailed custom HTML reports, success tracking over time, and high specialization towards GRASS-specifics.&lt;br /&gt;
* ''grass.gunittest'' is based on Python ''unittest'' package and many projects since then migrated to //pytest//, e.g., GDAL and Numpy. While ''unittest'' is inspired by Java's JUnit, ''pytest'' is designed to support writing small, readable tests, and uses plain `assert` statements instead of many different assert methods.&lt;br /&gt;
* Using ''pytest'' should lead to tests which feel more like Python scripts and to minimum of testing-specific code.&lt;br /&gt;
* An example issue of ''grass.gunittest'' is that it doesn't work well with tests of the main GRASS executable (prominence of `grass ... --exec` is yet another new thing which changed since ''grass.gunittest'' was designed).&lt;br /&gt;
* Two main things needed:&lt;br /&gt;
** Create general comparison functions from the ''grass.gunittest'' assert methods so that they can be used with pytest.&lt;br /&gt;
** Current grass.script.setup.init function and grass.script.core.create_location function don't work well in the context of a pytest test function. More  &lt;br /&gt;
* Additional things needed:&lt;br /&gt;
** Fixture for pytest to set up and tear down a GRASS session in a temporary mapset.&lt;br /&gt;
&lt;br /&gt;
* Requirements: Python&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Mentor: Vaclav Petras&lt;br /&gt;
* Co-mentor: Stefan Blumentrath&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: Convenient way of writing tests with pytest&lt;br /&gt;
* Test of skills: Fix failing tests and/or write new tests (more is better). Alternatively, addressing a smaller problem in the testing framework is a good task, too.&lt;br /&gt;
&lt;br /&gt;
=== Fix known code defects ===&lt;br /&gt;
&lt;br /&gt;
* Fix code defects (security or code quality) such as those reported by Coverity Scan.&lt;br /&gt;
* Mentors: Vaclav Petras&lt;br /&gt;
* Co-mentors: Nicklas Larsson&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Requirements:&lt;br /&gt;
** Language: C&lt;br /&gt;
** Proposal: Define milestones which will be used during the evaluation.&lt;br /&gt;
* Expected outcomes:&lt;br /&gt;
** Reduction of issues by 70-100%.&lt;br /&gt;
** New tests for changed code if missing.&lt;br /&gt;
* Test and training tasks (complete more than one): Fix e.g., [https://gcc.gnu.org/onlinedocs/gcc/Static-Analyzer-Options.html GCC Static Analysis], [https://clang.llvm.org/docs/ClangStaticAnalyzer.html Clang Static Analyzer] or [https://cppcheck.sourceforge.io Cppcheck] issues.&lt;br /&gt;
&lt;br /&gt;
=== Subcommand CLI for GRASS ===&lt;br /&gt;
&lt;br /&gt;
* Make running of GRASS tools in command line as easy as possible.&lt;br /&gt;
** `grass run r.slope.aspect elevation=elevation.tiff slope=slope.tiff aspect=aspect.tiff`&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Requirements:&lt;br /&gt;
** Language: Python&lt;br /&gt;
** Proposal: Student needs to show sufficient understanding of data and project handling in GRASS. Furthermore, the proposal needs to present, at least, concrete formulation of ideas, identification of missing and existing parts, and new subcommands.&lt;br /&gt;
* Mentors: Vaclav Petras&lt;br /&gt;
* Co-mentors: Stefan Blumentrath, Corey White&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Expected outcomes:&lt;br /&gt;
** A subcommand which runs a GRASS tool on GeoTiff and GeoPackage in one step.&lt;br /&gt;
** A complete parity with the existing CLI.&lt;br /&gt;
** An underlying Python API which will be used to implement the CLI.&lt;br /&gt;
* Test and training tasks (complete one or more): Add a subcommand, sub-subcommand, or an option to the experimental interface (with tests).&lt;br /&gt;
** Add `--region` to set a temporary computational region for the execution, e.g. `--region=&amp;quot;raster=raster_name&amp;quot;`.&lt;br /&gt;
** Add `--import-raster=some/file.tiff` which imports (r.import) a raster file (same for vector and similarly for export).&lt;br /&gt;
** Add `--link-raster=some/file.tiff` which links (r.external) a raster file (same for vector and similarly for r.external.out).&lt;br /&gt;
&lt;br /&gt;
Current state:&lt;br /&gt;
&lt;br /&gt;
 # Reveals the existing subcommands&lt;br /&gt;
 PYTHONPATH=$(grass --config python-path) python -m grass.app --help&lt;br /&gt;
 # Allows running subset of commands&lt;br /&gt;
 grass run --help&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== STAC (SpatioTemporal Asset Catalog) Integration ===&lt;br /&gt;
&lt;br /&gt;
Create new import and export capabilities for GRASS which allow users to easily ingest data from STAC catalogs and export locations and mapsets as STAC specs for data discovery within STAC browsers. &lt;br /&gt;
&lt;br /&gt;
* Requirements: familiar with python, STAC specs&lt;br /&gt;
* Mentor: Corey White&lt;br /&gt;
* Co-mentor: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes: completion of t.in.stac and t.out.stac&lt;br /&gt;
* Test of skills:&lt;br /&gt;
** suggest or implement solution for implementing t.out.stac using the prototype STAC spec https://github.com/tomorrownow/grass-stac-extension &lt;br /&gt;
** suggest/implement solution for completing https://github.com/OSGeo/grass-addons/pull/802&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== GUI: Add space-time datasets support in Data Catalog ===&lt;br /&gt;
[[File:GUI_data_tab.png|400px|thumb|right|Data catalog]]&lt;br /&gt;
Currently GRASS Data Catalog shows only raster and vector maps. The goal of this project is to add support for space-time datasets. It is mainly space-time raster datasets. In the next phase of the project support for other types of space-time datasets (vector and 3D raster) could be added. Besides displaying space-time datasets in the layer tree, it is also about adding the equivalent functionality currently available for raster and vector layers from the context menu. &lt;br /&gt;
&lt;br /&gt;
* Requirements: familiar with Python&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Mentor: Martin Landa&lt;br /&gt;
* Co-mentor: Anna Petrasova&lt;br /&gt;
* Proposed by: Martin Landa&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes:  175 hours basic support for space-time raster datasets; 350 extended support also for other space-time datasets types (vector, 3D raster)&lt;br /&gt;
* Test of skills:&lt;br /&gt;
** suggest/implement solution for completing https://github.com/OSGeo/grass/issues/2599&lt;br /&gt;
&lt;br /&gt;
=== Searchable metadata in Space Time Datasets ===&lt;br /&gt;
The temporal framework in GRASS was initially developed almost 15 years ago. Spatio-temporal data has become more widely available since then and new standards emerged like e.g. ''[https://docs.ogc.org/cs/25-004/25-004.html STAC]'' with ''[https://github.com/stac-extensions/stac-extensions.github.io extensions]'', or the ''[https://cfconventions.org/ CF-conventions]''. The aim of this project is to extend the metadata model in the temporal framework to improve discoverability of map datasets registered in TGIS and to allow users to embed extended metadata with the registered maps in a Space Time Dataset in a searchable way. Ideally, the new model is able to account for the standards mentioned above.&lt;br /&gt;
 &lt;br /&gt;
See also: https://github.com/OSGeo/grass/issues/1938&lt;br /&gt;
&lt;br /&gt;
* Requirements: Python, SQL, JSON&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Mentor: Stefan Blumentrath&lt;br /&gt;
* Co-mentor: ???&lt;br /&gt;
* Proposed by: Stefan Blumentrath&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes:&lt;br /&gt;
** an updated TGIS database model (version 4) that:&lt;br /&gt;
*** is oriented on relevant metadata standards (STAC, CF-Convention, ...)&lt;br /&gt;
*** allows to use metadata in temporal_where to select relevant elements of Space time datasets&lt;br /&gt;
** updated tool to create space time datasets (t.create) in the TGIS database with extended metadata&lt;br /&gt;
** updated tool to register map datasets (t.register) in the TGIS database with extended metadata&lt;br /&gt;
** Conversion tool for database Upgrades (v3 to v4)&lt;br /&gt;
** a new tool to update / modify metadata in the TGIS database&lt;br /&gt;
** Storage of timeseries metadata for both C-based and temporal Tools&lt;br /&gt;
&lt;br /&gt;
* Test of skills (e.g.):&lt;br /&gt;
** address one or more sub-tasks from https://github.com/OSGeo/grass/issues/3427 (add append-mode to selected new tool(s))&lt;br /&gt;
** suggest/implement solution for https://github.com/OSGeo/grass/issues/3394 (more complex task)&lt;br /&gt;
** suggest/implement solution for https://github.com/OSGeo/grass/issues/7041&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Add {your research idea} to GRASS ===&lt;br /&gt;
&lt;br /&gt;
* In general, you can propose any topic, but you can specifically propose integrating your research or research idea into GRASS.&lt;br /&gt;
* Requirements:&lt;br /&gt;
** Language:&lt;br /&gt;
*** Depends on the project, often Python, sometimes C.&lt;br /&gt;
*** Adding your latest ecological analysis &lt;br /&gt;
** Proposal:&lt;br /&gt;
*** Discuss relevance to GRASS.&lt;br /&gt;
*** Describe technical steps needed for integration.&lt;br /&gt;
*** Describe whether it is an addition of a tool (module) or a change in one of the libraries. If it is a tool, specify if it should be included in the core grass repository or in grass-addons repository and why.&lt;br /&gt;
*** Specify what research was done and what needs to be accomplished in order to have usable product at the end of summer.&lt;br /&gt;
*** Specify who will provide the research expertise.&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Rating: from low to hard&lt;br /&gt;
* Mentors:&lt;br /&gt;
** GRASS project will provide technical mentors, but it is up to the applicant to ensure the research part is mentored well. An exception may be granted to applicants which can demonstrate that the research is finished or that they have enough expertise themselves.&lt;br /&gt;
** Possible technical mentors: Vaclav Petras, Anna Petrasova&lt;br /&gt;
** Research mentors: Bring in an expert from your field, e.g., your academic advisor or project principal investigator (if needed).&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Expected outcome: Working feature which is integrated and merged at the end of the project.&lt;br /&gt;
* Test and training tasks:&lt;br /&gt;
** Create a test in Python for an existing tool in the grass-addons repository or in the core grass repository.&lt;br /&gt;
&lt;br /&gt;
=== Title of idea ===&lt;br /&gt;
&lt;br /&gt;
Description here&lt;br /&gt;
&lt;br /&gt;
* Requirements:&lt;br /&gt;
* Project length: (175 or 350 hours) &lt;br /&gt;
* Mentor: &lt;br /&gt;
* Proposed by: &lt;br /&gt;
* Rating: &lt;br /&gt;
* Expected Outcomes:  &lt;br /&gt;
* Test of skills: &lt;br /&gt;
* Other:&lt;br /&gt;
&lt;br /&gt;
== Tips for students ==&lt;br /&gt;
* Follow official [https://github.com/numfocus/gsoc/blob/master/CONTRIBUTING-contributors.md NumFOCUS guidelines].&lt;br /&gt;
* Include &amp;quot;GRASS&amp;quot; in the title of our idea to easily distinguish ideas and projects inside NumFOCUS.&lt;br /&gt;
* If you have your own ideas we encourage you to propose them. Explain them on the [https://discourse.osgeo.org/c/grass/developer/61 on our Discourse].&lt;br /&gt;
* Follow some good practices in your ideas and proposals:&lt;br /&gt;
** Stress why the project would be useful.&lt;br /&gt;
** Show that you know how you will proceed. That is, make sure that you can demonstrate that the proposal is feasible in the given time frame.&lt;br /&gt;
** Be specific in the implementation (or at least as specific as you can).&lt;br /&gt;
** Explain what the final product will look like and how it will work. You can add drawings or mock-ups.&lt;br /&gt;
** Explain how the idea relates to existing GRASS functions, features, and needs.&lt;br /&gt;
** Do not include steps such as &amp;quot;install GRASS&amp;quot;, &amp;quot;compile GRASS libraries (on my machine)&amp;quot;, &amp;quot;read about the API&amp;quot;. You should do this before applying to GSoC.&lt;br /&gt;
* Compile GRASS from source and prepare environment for development:&lt;br /&gt;
** Read [https://github.com/OSGeo/grass/blob/main/CONTRIBUTING.md CONTRIBUTING file].&lt;br /&gt;
* Prove your worth by being active on the [https://discourse.osgeo.org/c/grass/developer/61 GRASS Discourse] or other channels ([https://github.com/OSGeo/grass/discussions GitHub Discussions], fix some [https://github.com/OSGeo/grass/issues bugs], and/or implement some (smaller) features, or write some (simpler) GRASS module, and post it to mailing list. There's no better way to demonstrate your willingness and abilities. Do this before start you apply to GSoC. &lt;br /&gt;
* Also note that fixing existing bugs and/or implementing enhancements will be a part of student evaluation.&lt;br /&gt;
&lt;br /&gt;
{{GSoC}}&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS_GSoC_Ideas_2026&amp;diff=28856</id>
		<title>GRASS GSoC Ideas 2026</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS_GSoC_Ideas_2026&amp;diff=28856"/>
		<updated>2026-05-04T02:30:26Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: Add template for accepted ideas&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== About ==&lt;br /&gt;
Important: While we are still an OSGeo project, we changed our fiscal sponsor to [https://numfocus.org/ NumFOCUS].&lt;br /&gt;
&lt;br /&gt;
''As a result, GRASS participates in GSoC under the [https://numfocus.org/ NumFOCUS] umbrella organization.''&lt;br /&gt;
&lt;br /&gt;
Read more about our governance [https://grass.osgeo.org/about/governance/ on GRASS website].&lt;br /&gt;
&lt;br /&gt;
* [https://numfocus.org/programs/google-summer-code The NumFOCUS GSoC main page]&lt;br /&gt;
* [https://github.com/numfocus/gsoc/blob/master/CONTRIBUTING-contributors.md NumFOCUS guidelines for contributors].&lt;br /&gt;
* [https://summerofcode.withgoogle.com/ Official GSoC page at Google]&lt;br /&gt;
&lt;br /&gt;
== AI Tool Usage Policy ==&lt;br /&gt;
We acknowledge that applicants may use AI tools (like ChatGPT, Copilot, etc.) to assist with proposal writing and coding. However:&lt;br /&gt;
&lt;br /&gt;
* Your proposal should reflect your own understanding and voice. AI-generated &amp;quot;slop&amp;quot; (overly generic or regurgitated content) is easy to spot and will hurt your application.&lt;br /&gt;
* We evaluate applications primarily on GitHub contributions and communication with the GRASS community, not just proposal polish.&lt;br /&gt;
* Show us you understand the project through high-quality pull requests on GitHub.&lt;br /&gt;
* Disclose AI usage: If you use AI tools in your proposal or code contributions, please disclose the extent to which you used them (e.g., for brainstorming, proofreading, code suggestions, etc.).&lt;br /&gt;
&lt;br /&gt;
== Ideas ==&lt;br /&gt;
If you are a student you can suggest a new idea or pick up an existing one. In any case write about it to [https://discourse.osgeo.org/c/grass/developer/61 OSGeo Discourse forum for GRASS developers], [https://github.com/OSGeo/grass/discussions GitHub Discussions], or [https://gitter.im/grassgis/community Gitter].&lt;br /&gt;
&lt;br /&gt;
You are invited as well to have a close look at ideas from previous years ([https://trac.osgeo.org/grass/wiki/GSoC/2014 2014], [https://trac.osgeo.org/grass/wiki/GSoC/2015 2015], [https://trac.osgeo.org/grass/wiki/GSoC/2016 2016],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2017 2017],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2018 2018],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2019 2019],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2020 2020],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2021 2021],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2022 2022],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2023 2023])&lt;br /&gt;
which have not yet been implemented.&lt;br /&gt;
You can also look at accepted GRASS GSoC [https://trac.osgeo.org/grass/wiki/GSoC projects from previous years] for an idea of scope.''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Parallelization of existing tools ===&lt;br /&gt;
&lt;br /&gt;
There are several tools that would benefit from parallelization with OpenMP, e.g. r.texture, r.fill.stats, r/v.surf.idw, r.viewshed, v.to.rast, r.grow.distance, v.surf.bspline, r.proj, ...&lt;br /&gt;
For overview of current state, see [[Raster_Parallelization_with_OpenMP]].&lt;br /&gt;
&lt;br /&gt;
* Requirements: familiarity with C, OpenMP&lt;br /&gt;
* Mentor: Huidae Cho&lt;br /&gt;
* Co-mentor: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Rating: difficult&lt;br /&gt;
* Expected Outcomes: parallelized 2-5 tools, depending on complexity&lt;br /&gt;
* Test of skills (one or more):&lt;br /&gt;
** Address https://github.com/OSGeo/grass/issues/5776 (carefully read the existing conversation in the issue and linked PR)&lt;br /&gt;
** Pick a tool and develop prototype implementation of the parallelization.&lt;br /&gt;
&lt;br /&gt;
=== Improve GRASS user experience in Jupyter Notebook ===&lt;br /&gt;
[[File:Jupyter_interactive_viewshed.png|500px|thumb|right|InteractiveMap in grass.jupyter library]]&lt;br /&gt;
Python package [https://grass.osgeo.org/grass-stable/manuals/libpython/grass.jupyter.html grass.jupyter] was developed during [https://trac.osgeo.org/grass/wiki/GSoC/2021/JupyterAndGRASS GSoC 2021] to simplify running GRASS from Jupyter Notebooks and displaying data. This project could focus on adding features such as better symbology handling and adding legend to InteractiveMap and better integration with matplotlib.&lt;br /&gt;
&lt;br /&gt;
* Requirements: Python&lt;br /&gt;
* Mentor: Anna Petrasova&lt;br /&gt;
* Co-mentor: Vaclav Petras, Helena Mitasova, Corey White&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: improved user experience when using GRASS through notebooks&lt;br /&gt;
* Test of skills: write a test for [https://github.com/OSGeo/grass/tree/main/python/grass/jupyter grass.jupyter library] using python unittest or pytest, more info [https://grass.osgeo.org/grass-devel/manuals/libpython/gunittest_testing.html here] or rewrite some of the functions in grass.jupyter library using the new [https://grass.osgeo.org/grass-devel/manuals/python_intro.html#running-tools Tools API].&lt;br /&gt;
&lt;br /&gt;
=== Add JSON output to different tools ===&lt;br /&gt;
There are several tools in GRASS that would benefit from a JSON-formatted output.&lt;br /&gt;
Besides adding the JSON output, the work would also include adding tests and basic documentation.&lt;br /&gt;
* Requirements: C, Python&lt;br /&gt;
* Mentor: Vaclav Petras&lt;br /&gt;
* Co-mentor: Anna Petrasova, Corey White&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: 10-20 tools (depending on project length and complexity of the tool) tools with well tested JSON output&lt;br /&gt;
* Note: A lot of work on JSON was already done, but there is more! Some of the remaining tools require more design. There are also Python tools (not just C which was the focus previously) and then also the grass-addons repo. Some tools also don't have any machine readable output right now and should. Also current tools which use other tools should use the new JSON as opposed to what they are using now. Preparing a well-reasoned list of tasks is a part of the application.&lt;br /&gt;
* Test of skills (pick one or more): &lt;br /&gt;
** https://github.com/OSGeo/grass/issues/6968&lt;br /&gt;
** https://github.com/OSGeo/grass/issues/6969&lt;br /&gt;
** https://github.com/OSGeo/grass/issues/6970&lt;br /&gt;
&lt;br /&gt;
=== Support writing tests with pytest ===&lt;br /&gt;
&lt;br /&gt;
* The current testing framework, ''[https://grass.osgeo.org/grass-stable/manuals/libpython/gunittest.html grass.gunittest]'', was written before migration to Git/GitHub and when long free runs in 3rd party services were unthinkable. Additionally, some no longer relevant goals were prioritized, such as independence on the current code, detailed custom HTML reports, success tracking over time, and high specialization towards GRASS-specifics.&lt;br /&gt;
* ''grass.gunittest'' is based on Python ''unittest'' package and many projects since then migrated to //pytest//, e.g., GDAL and Numpy. While ''unittest'' is inspired by Java's JUnit, ''pytest'' is designed to support writing small, readable tests, and uses plain `assert` statements instead of many different assert methods.&lt;br /&gt;
* Using ''pytest'' should lead to tests which feel more like Python scripts and to minimum of testing-specific code.&lt;br /&gt;
* An example issue of ''grass.gunittest'' is that it doesn't work well with tests of the main GRASS executable (prominence of `grass ... --exec` is yet another new thing which changed since ''grass.gunittest'' was designed).&lt;br /&gt;
* Two main things needed:&lt;br /&gt;
** Create general comparison functions from the ''grass.gunittest'' assert methods so that they can be used with pytest.&lt;br /&gt;
** Current grass.script.setup.init function and grass.script.core.create_location function don't work well in the context of a pytest test function. More  &lt;br /&gt;
* Additional things needed:&lt;br /&gt;
** Fixture for pytest to set up and tear down a GRASS session in a temporary mapset.&lt;br /&gt;
&lt;br /&gt;
* Requirements: Python&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Mentor: Vaclav Petras&lt;br /&gt;
* Co-mentor: Stefan Blumentrath&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: Convenient way of writing tests with pytest&lt;br /&gt;
* Test of skills: Fix failing tests and/or write new tests (more is better). Alternatively, addressing a smaller problem in the testing framework is a good task, too.&lt;br /&gt;
&lt;br /&gt;
=== Fix known code defects ===&lt;br /&gt;
&lt;br /&gt;
* Fix code defects (security or code quality) such as those reported by Coverity Scan.&lt;br /&gt;
* Mentors: Vaclav Petras&lt;br /&gt;
* Co-mentors: Nicklas Larsson&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Requirements:&lt;br /&gt;
** Language: C&lt;br /&gt;
** Proposal: Define milestones which will be used during the evaluation.&lt;br /&gt;
* Expected outcomes:&lt;br /&gt;
** Reduction of issues by 70-100%.&lt;br /&gt;
** New tests for changed code if missing.&lt;br /&gt;
* Test and training tasks (complete more than one): Fix e.g., [https://gcc.gnu.org/onlinedocs/gcc/Static-Analyzer-Options.html GCC Static Analysis], [https://clang.llvm.org/docs/ClangStaticAnalyzer.html Clang Static Analyzer] or [https://cppcheck.sourceforge.io Cppcheck] issues.&lt;br /&gt;
&lt;br /&gt;
=== Subcommand CLI for GRASS ===&lt;br /&gt;
&lt;br /&gt;
* Make running of GRASS tools in command line as easy as possible.&lt;br /&gt;
** `grass run r.slope.aspect elevation=elevation.tiff slope=slope.tiff aspect=aspect.tiff`&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Requirements:&lt;br /&gt;
** Language: Python&lt;br /&gt;
** Proposal: Student needs to show sufficient understanding of data and project handling in GRASS. Furthermore, the proposal needs to present, at least, concrete formulation of ideas, identification of missing and existing parts, and new subcommands.&lt;br /&gt;
* Mentors: Vaclav Petras&lt;br /&gt;
* Co-mentors: Stefan Blumentrath, Corey White&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Expected outcomes:&lt;br /&gt;
** A subcommand which runs a GRASS tool on GeoTiff and GeoPackage in one step.&lt;br /&gt;
** A complete parity with the existing CLI.&lt;br /&gt;
** An underlying Python API which will be used to implement the CLI.&lt;br /&gt;
* Test and training tasks (complete one or more): Add a subcommand, sub-subcommand, or an option to the experimental interface (with tests).&lt;br /&gt;
** Add `--region` to set a temporary computational region for the execution, e.g. `--region=&amp;quot;raster=raster_name&amp;quot;`.&lt;br /&gt;
** Add `--import-raster=some/file.tiff` which imports (r.import) a raster file (same for vector and similarly for export).&lt;br /&gt;
** Add `--link-raster=some/file.tiff` which links (r.external) a raster file (same for vector and similarly for r.external.out).&lt;br /&gt;
&lt;br /&gt;
Current state:&lt;br /&gt;
&lt;br /&gt;
 # Reveals the existing subcommands&lt;br /&gt;
 PYTHONPATH=$(grass --config python-path) python -m grass.app --help&lt;br /&gt;
 # Allows running subset of commands&lt;br /&gt;
 grass run --help&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== STAC (SpatioTemporal Asset Catalog) Integration ===&lt;br /&gt;
&lt;br /&gt;
Create new import and export capabilities for GRASS which allow users to easily ingest data from STAC catalogs and export locations and mapsets as STAC specs for data discovery within STAC browsers. &lt;br /&gt;
&lt;br /&gt;
* Requirements: familiar with python, STAC specs&lt;br /&gt;
* Mentor: Corey White&lt;br /&gt;
* Co-mentor: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes: completion of t.in.stac and t.out.stac&lt;br /&gt;
* Test of skills:&lt;br /&gt;
** suggest or implement solution for implementing t.out.stac using the prototype STAC spec https://github.com/tomorrownow/grass-stac-extension &lt;br /&gt;
** suggest/implement solution for completing https://github.com/OSGeo/grass-addons/pull/802&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== GUI: Add space-time datasets support in Data Catalog ===&lt;br /&gt;
[[File:GUI_data_tab.png|400px|thumb|right|Data catalog]]&lt;br /&gt;
Currently GRASS Data Catalog shows only raster and vector maps. The goal of this project is to add support for space-time datasets. It is mainly space-time raster datasets. In the next phase of the project support for other types of space-time datasets (vector and 3D raster) could be added. Besides displaying space-time datasets in the layer tree, it is also about adding the equivalent functionality currently available for raster and vector layers from the context menu. &lt;br /&gt;
&lt;br /&gt;
* Requirements: familiar with Python&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Mentor: Martin Landa&lt;br /&gt;
* Co-mentor: Anna Petrasova&lt;br /&gt;
* Proposed by: Martin Landa&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes:  175 hours basic support for space-time raster datasets; 350 extended support also for other space-time datasets types (vector, 3D raster)&lt;br /&gt;
* Test of skills:&lt;br /&gt;
** suggest/implement solution for completing https://github.com/OSGeo/grass/issues/2599&lt;br /&gt;
&lt;br /&gt;
=== Searchable metadata in Space Time Datasets ===&lt;br /&gt;
The temporal framework in GRASS was initially developed almost 15 years ago. Spatio-temporal data has become more widely available since then and new standards emerged like e.g. ''[https://docs.ogc.org/cs/25-004/25-004.html STAC]'' with ''[https://github.com/stac-extensions/stac-extensions.github.io extensions]'', or the ''[https://cfconventions.org/ CF-conventions]''. The aim of this project is to extend the metadata model in the temporal framework to improve discoverability of map datasets registered in TGIS and to allow users to embed extended metadata with the registered maps in a Space Time Dataset in a searchable way. Ideally, the new model is able to account for the standards mentioned above.&lt;br /&gt;
 &lt;br /&gt;
See also: https://github.com/OSGeo/grass/issues/1938&lt;br /&gt;
&lt;br /&gt;
* Requirements: Python, SQL, JSON&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Mentor: Stefan Blumentrath&lt;br /&gt;
* Co-mentor: ???&lt;br /&gt;
* Proposed by: Stefan Blumentrath&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes:&lt;br /&gt;
** an updated TGIS database model (version 4) that:&lt;br /&gt;
*** is oriented on relevant metadata standards (STAC, CF-Convention, ...)&lt;br /&gt;
*** allows to use metadata in temporal_where to select relevant elements of Space time datasets&lt;br /&gt;
** updated tool to create space time datasets (t.create) in the TGIS database with extended metadata&lt;br /&gt;
** updated tool to register map datasets (t.register) in the TGIS database with extended metadata&lt;br /&gt;
** Conversion tool for database Upgrades (v3 to v4)&lt;br /&gt;
** a new tool to update / modify metadata in the TGIS database&lt;br /&gt;
** Storage of timeseries metadata for both C-based and temporal Tools&lt;br /&gt;
&lt;br /&gt;
* Test of skills (e.g.):&lt;br /&gt;
** address one or more sub-tasks from https://github.com/OSGeo/grass/issues/3427 (add append-mode to selected new tool(s))&lt;br /&gt;
** suggest/implement solution for https://github.com/OSGeo/grass/issues/3394 (more complex task)&lt;br /&gt;
** suggest/implement solution for https://github.com/OSGeo/grass/issues/7041&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Add {your research idea} to GRASS ===&lt;br /&gt;
&lt;br /&gt;
* In general, you can propose any topic, but you can specifically propose integrating your research or research idea into GRASS.&lt;br /&gt;
* Requirements:&lt;br /&gt;
** Language:&lt;br /&gt;
*** Depends on the project, often Python, sometimes C.&lt;br /&gt;
*** Adding your latest ecological analysis &lt;br /&gt;
** Proposal:&lt;br /&gt;
*** Discuss relevance to GRASS.&lt;br /&gt;
*** Describe technical steps needed for integration.&lt;br /&gt;
*** Describe whether it is an addition of a tool (module) or a change in one of the libraries. If it is a tool, specify if it should be included in the core grass repository or in grass-addons repository and why.&lt;br /&gt;
*** Specify what research was done and what needs to be accomplished in order to have usable product at the end of summer.&lt;br /&gt;
*** Specify who will provide the research expertise.&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Rating: from low to hard&lt;br /&gt;
* Mentors:&lt;br /&gt;
** GRASS project will provide technical mentors, but it is up to the applicant to ensure the research part is mentored well. An exception may be granted to applicants which can demonstrate that the research is finished or that they have enough expertise themselves.&lt;br /&gt;
** Possible technical mentors: Vaclav Petras, Anna Petrasova&lt;br /&gt;
** Research mentors: Bring in an expert from your field, e.g., your academic advisor or project principal investigator (if needed).&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Expected outcome: Working feature which is integrated and merged at the end of the project.&lt;br /&gt;
* Test and training tasks:&lt;br /&gt;
** Create a test in Python for an existing tool in the grass-addons repository or in the core grass repository.&lt;br /&gt;
&lt;br /&gt;
=== Title of idea ===&lt;br /&gt;
&lt;br /&gt;
Description here&lt;br /&gt;
&lt;br /&gt;
* Requirements:&lt;br /&gt;
* Project length: (175 or 350 hours) &lt;br /&gt;
* Mentor: &lt;br /&gt;
* Proposed by: &lt;br /&gt;
* Rating: &lt;br /&gt;
* Expected Outcomes:  &lt;br /&gt;
* Test of skills: &lt;br /&gt;
* Other:&lt;br /&gt;
&lt;br /&gt;
== Tips for students ==&lt;br /&gt;
* Follow official [https://github.com/numfocus/gsoc/blob/master/CONTRIBUTING-contributors.md NumFOCUS guidelines].&lt;br /&gt;
* Include &amp;quot;GRASS&amp;quot; in the title of our idea to easily distinguish ideas and projects inside NumFOCUS.&lt;br /&gt;
* If you have your own ideas we encourage you to propose them. Explain them on the [https://discourse.osgeo.org/c/grass/developer/61 on our Discourse].&lt;br /&gt;
* Follow some good practices in your ideas and proposals:&lt;br /&gt;
** Stress why the project would be useful.&lt;br /&gt;
** Show that you know how you will proceed. That is, make sure that you can demonstrate that the proposal is feasible in the given time frame.&lt;br /&gt;
** Be specific in the implementation (or at least as specific as you can).&lt;br /&gt;
** Explain what the final product will look like and how it will work. You can add drawings or mock-ups.&lt;br /&gt;
** Explain how the idea relates to existing GRASS functions, features, and needs.&lt;br /&gt;
** Do not include steps such as &amp;quot;install GRASS&amp;quot;, &amp;quot;compile GRASS libraries (on my machine)&amp;quot;, &amp;quot;read about the API&amp;quot;. You should do this before applying to GSoC.&lt;br /&gt;
* Compile GRASS from source and prepare environment for development:&lt;br /&gt;
** Read [https://github.com/OSGeo/grass/blob/main/CONTRIBUTING.md CONTRIBUTING file].&lt;br /&gt;
* Prove your worth by being active on the [https://discourse.osgeo.org/c/grass/developer/61 GRASS Discourse] or other channels ([https://github.com/OSGeo/grass/discussions GitHub Discussions], fix some [https://github.com/OSGeo/grass/issues bugs], and/or implement some (smaller) features, or write some (simpler) GRASS module, and post it to mailing list. There's no better way to demonstrate your willingness and abilities. Do this before start you apply to GSoC. &lt;br /&gt;
* Also note that fixing existing bugs and/or implementing enhancements will be a part of student evaluation.&lt;br /&gt;
&lt;br /&gt;
{{GSoC}}&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS_GSoC_Ideas_2026&amp;diff=28855</id>
		<title>GRASS GSoC Ideas 2026</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS_GSoC_Ideas_2026&amp;diff=28855"/>
		<updated>2026-05-04T02:30:17Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: Add template for accepted ideas&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== About ==&lt;br /&gt;
Important: While we are still an OSGeo project, we changed our fiscal sponsor to [https://numfocus.org/ NumFOCUS].&lt;br /&gt;
&lt;br /&gt;
''As a result, GRASS participates in GSoC under the [https://numfocus.org/ NumFOCUS] umbrella organization.''&lt;br /&gt;
&lt;br /&gt;
Read more about our governance [https://grass.osgeo.org/about/governance/ on GRASS website].&lt;br /&gt;
&lt;br /&gt;
* [https://numfocus.org/programs/google-summer-code The NumFOCUS GSoC main page]&lt;br /&gt;
* [https://github.com/numfocus/gsoc/blob/master/CONTRIBUTING-contributors.md NumFOCUS guidelines for contributors].&lt;br /&gt;
* [https://summerofcode.withgoogle.com/ Official GSoC page at Google]&lt;br /&gt;
&lt;br /&gt;
== Accepted ideas ==&lt;br /&gt;
=== Accepted idea title ===&lt;br /&gt;
* Student: 	&lt;br /&gt;
* Mentors: &lt;br /&gt;
* [[GRASS_GSoC_2025_Add_JSON_output_to_different_tools_in_C|Example of Wiki page]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== AI Tool Usage Policy ==&lt;br /&gt;
We acknowledge that applicants may use AI tools (like ChatGPT, Copilot, etc.) to assist with proposal writing and coding. However:&lt;br /&gt;
&lt;br /&gt;
* Your proposal should reflect your own understanding and voice. AI-generated &amp;quot;slop&amp;quot; (overly generic or regurgitated content) is easy to spot and will hurt your application.&lt;br /&gt;
* We evaluate applications primarily on GitHub contributions and communication with the GRASS community, not just proposal polish.&lt;br /&gt;
* Show us you understand the project through high-quality pull requests on GitHub.&lt;br /&gt;
* Disclose AI usage: If you use AI tools in your proposal or code contributions, please disclose the extent to which you used them (e.g., for brainstorming, proofreading, code suggestions, etc.).&lt;br /&gt;
&lt;br /&gt;
== Ideas ==&lt;br /&gt;
If you are a student you can suggest a new idea or pick up an existing one. In any case write about it to [https://discourse.osgeo.org/c/grass/developer/61 OSGeo Discourse forum for GRASS developers], [https://github.com/OSGeo/grass/discussions GitHub Discussions], or [https://gitter.im/grassgis/community Gitter].&lt;br /&gt;
&lt;br /&gt;
You are invited as well to have a close look at ideas from previous years ([https://trac.osgeo.org/grass/wiki/GSoC/2014 2014], [https://trac.osgeo.org/grass/wiki/GSoC/2015 2015], [https://trac.osgeo.org/grass/wiki/GSoC/2016 2016],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2017 2017],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2018 2018],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2019 2019],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2020 2020],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2021 2021],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2022 2022],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2023 2023])&lt;br /&gt;
which have not yet been implemented.&lt;br /&gt;
You can also look at accepted GRASS GSoC [https://trac.osgeo.org/grass/wiki/GSoC projects from previous years] for an idea of scope.''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Parallelization of existing tools ===&lt;br /&gt;
&lt;br /&gt;
There are several tools that would benefit from parallelization with OpenMP, e.g. r.texture, r.fill.stats, r/v.surf.idw, r.viewshed, v.to.rast, r.grow.distance, v.surf.bspline, r.proj, ...&lt;br /&gt;
For overview of current state, see [[Raster_Parallelization_with_OpenMP]].&lt;br /&gt;
&lt;br /&gt;
* Requirements: familiarity with C, OpenMP&lt;br /&gt;
* Mentor: Huidae Cho&lt;br /&gt;
* Co-mentor: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Rating: difficult&lt;br /&gt;
* Expected Outcomes: parallelized 2-5 tools, depending on complexity&lt;br /&gt;
* Test of skills (one or more):&lt;br /&gt;
** Address https://github.com/OSGeo/grass/issues/5776 (carefully read the existing conversation in the issue and linked PR)&lt;br /&gt;
** Pick a tool and develop prototype implementation of the parallelization.&lt;br /&gt;
&lt;br /&gt;
=== Improve GRASS user experience in Jupyter Notebook ===&lt;br /&gt;
[[File:Jupyter_interactive_viewshed.png|500px|thumb|right|InteractiveMap in grass.jupyter library]]&lt;br /&gt;
Python package [https://grass.osgeo.org/grass-stable/manuals/libpython/grass.jupyter.html grass.jupyter] was developed during [https://trac.osgeo.org/grass/wiki/GSoC/2021/JupyterAndGRASS GSoC 2021] to simplify running GRASS from Jupyter Notebooks and displaying data. This project could focus on adding features such as better symbology handling and adding legend to InteractiveMap and better integration with matplotlib.&lt;br /&gt;
&lt;br /&gt;
* Requirements: Python&lt;br /&gt;
* Mentor: Anna Petrasova&lt;br /&gt;
* Co-mentor: Vaclav Petras, Helena Mitasova, Corey White&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: improved user experience when using GRASS through notebooks&lt;br /&gt;
* Test of skills: write a test for [https://github.com/OSGeo/grass/tree/main/python/grass/jupyter grass.jupyter library] using python unittest or pytest, more info [https://grass.osgeo.org/grass-devel/manuals/libpython/gunittest_testing.html here] or rewrite some of the functions in grass.jupyter library using the new [https://grass.osgeo.org/grass-devel/manuals/python_intro.html#running-tools Tools API].&lt;br /&gt;
&lt;br /&gt;
=== Add JSON output to different tools ===&lt;br /&gt;
There are several tools in GRASS that would benefit from a JSON-formatted output.&lt;br /&gt;
Besides adding the JSON output, the work would also include adding tests and basic documentation.&lt;br /&gt;
* Requirements: C, Python&lt;br /&gt;
* Mentor: Vaclav Petras&lt;br /&gt;
* Co-mentor: Anna Petrasova, Corey White&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: 10-20 tools (depending on project length and complexity of the tool) tools with well tested JSON output&lt;br /&gt;
* Note: A lot of work on JSON was already done, but there is more! Some of the remaining tools require more design. There are also Python tools (not just C which was the focus previously) and then also the grass-addons repo. Some tools also don't have any machine readable output right now and should. Also current tools which use other tools should use the new JSON as opposed to what they are using now. Preparing a well-reasoned list of tasks is a part of the application.&lt;br /&gt;
* Test of skills (pick one or more): &lt;br /&gt;
** https://github.com/OSGeo/grass/issues/6968&lt;br /&gt;
** https://github.com/OSGeo/grass/issues/6969&lt;br /&gt;
** https://github.com/OSGeo/grass/issues/6970&lt;br /&gt;
&lt;br /&gt;
=== Support writing tests with pytest ===&lt;br /&gt;
&lt;br /&gt;
* The current testing framework, ''[https://grass.osgeo.org/grass-stable/manuals/libpython/gunittest.html grass.gunittest]'', was written before migration to Git/GitHub and when long free runs in 3rd party services were unthinkable. Additionally, some no longer relevant goals were prioritized, such as independence on the current code, detailed custom HTML reports, success tracking over time, and high specialization towards GRASS-specifics.&lt;br /&gt;
* ''grass.gunittest'' is based on Python ''unittest'' package and many projects since then migrated to //pytest//, e.g., GDAL and Numpy. While ''unittest'' is inspired by Java's JUnit, ''pytest'' is designed to support writing small, readable tests, and uses plain `assert` statements instead of many different assert methods.&lt;br /&gt;
* Using ''pytest'' should lead to tests which feel more like Python scripts and to minimum of testing-specific code.&lt;br /&gt;
* An example issue of ''grass.gunittest'' is that it doesn't work well with tests of the main GRASS executable (prominence of `grass ... --exec` is yet another new thing which changed since ''grass.gunittest'' was designed).&lt;br /&gt;
* Two main things needed:&lt;br /&gt;
** Create general comparison functions from the ''grass.gunittest'' assert methods so that they can be used with pytest.&lt;br /&gt;
** Current grass.script.setup.init function and grass.script.core.create_location function don't work well in the context of a pytest test function. More  &lt;br /&gt;
* Additional things needed:&lt;br /&gt;
** Fixture for pytest to set up and tear down a GRASS session in a temporary mapset.&lt;br /&gt;
&lt;br /&gt;
* Requirements: Python&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Mentor: Vaclav Petras&lt;br /&gt;
* Co-mentor: Stefan Blumentrath&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: Convenient way of writing tests with pytest&lt;br /&gt;
* Test of skills: Fix failing tests and/or write new tests (more is better). Alternatively, addressing a smaller problem in the testing framework is a good task, too.&lt;br /&gt;
&lt;br /&gt;
=== Fix known code defects ===&lt;br /&gt;
&lt;br /&gt;
* Fix code defects (security or code quality) such as those reported by Coverity Scan.&lt;br /&gt;
* Mentors: Vaclav Petras&lt;br /&gt;
* Co-mentors: Nicklas Larsson&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Requirements:&lt;br /&gt;
** Language: C&lt;br /&gt;
** Proposal: Define milestones which will be used during the evaluation.&lt;br /&gt;
* Expected outcomes:&lt;br /&gt;
** Reduction of issues by 70-100%.&lt;br /&gt;
** New tests for changed code if missing.&lt;br /&gt;
* Test and training tasks (complete more than one): Fix e.g., [https://gcc.gnu.org/onlinedocs/gcc/Static-Analyzer-Options.html GCC Static Analysis], [https://clang.llvm.org/docs/ClangStaticAnalyzer.html Clang Static Analyzer] or [https://cppcheck.sourceforge.io Cppcheck] issues.&lt;br /&gt;
&lt;br /&gt;
=== Subcommand CLI for GRASS ===&lt;br /&gt;
&lt;br /&gt;
* Make running of GRASS tools in command line as easy as possible.&lt;br /&gt;
** `grass run r.slope.aspect elevation=elevation.tiff slope=slope.tiff aspect=aspect.tiff`&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Requirements:&lt;br /&gt;
** Language: Python&lt;br /&gt;
** Proposal: Student needs to show sufficient understanding of data and project handling in GRASS. Furthermore, the proposal needs to present, at least, concrete formulation of ideas, identification of missing and existing parts, and new subcommands.&lt;br /&gt;
* Mentors: Vaclav Petras&lt;br /&gt;
* Co-mentors: Stefan Blumentrath, Corey White&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Expected outcomes:&lt;br /&gt;
** A subcommand which runs a GRASS tool on GeoTiff and GeoPackage in one step.&lt;br /&gt;
** A complete parity with the existing CLI.&lt;br /&gt;
** An underlying Python API which will be used to implement the CLI.&lt;br /&gt;
* Test and training tasks (complete one or more): Add a subcommand, sub-subcommand, or an option to the experimental interface (with tests).&lt;br /&gt;
** Add `--region` to set a temporary computational region for the execution, e.g. `--region=&amp;quot;raster=raster_name&amp;quot;`.&lt;br /&gt;
** Add `--import-raster=some/file.tiff` which imports (r.import) a raster file (same for vector and similarly for export).&lt;br /&gt;
** Add `--link-raster=some/file.tiff` which links (r.external) a raster file (same for vector and similarly for r.external.out).&lt;br /&gt;
&lt;br /&gt;
Current state:&lt;br /&gt;
&lt;br /&gt;
 # Reveals the existing subcommands&lt;br /&gt;
 PYTHONPATH=$(grass --config python-path) python -m grass.app --help&lt;br /&gt;
 # Allows running subset of commands&lt;br /&gt;
 grass run --help&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== STAC (SpatioTemporal Asset Catalog) Integration ===&lt;br /&gt;
&lt;br /&gt;
Create new import and export capabilities for GRASS which allow users to easily ingest data from STAC catalogs and export locations and mapsets as STAC specs for data discovery within STAC browsers. &lt;br /&gt;
&lt;br /&gt;
* Requirements: familiar with python, STAC specs&lt;br /&gt;
* Mentor: Corey White&lt;br /&gt;
* Co-mentor: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes: completion of t.in.stac and t.out.stac&lt;br /&gt;
* Test of skills:&lt;br /&gt;
** suggest or implement solution for implementing t.out.stac using the prototype STAC spec https://github.com/tomorrownow/grass-stac-extension &lt;br /&gt;
** suggest/implement solution for completing https://github.com/OSGeo/grass-addons/pull/802&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
=== GUI: Add space-time datasets support in Data Catalog ===&lt;br /&gt;
[[File:GUI_data_tab.png|400px|thumb|right|Data catalog]]&lt;br /&gt;
Currently GRASS Data Catalog shows only raster and vector maps. The goal of this project is to add support for space-time datasets. It is mainly space-time raster datasets. In the next phase of the project support for other types of space-time datasets (vector and 3D raster) could be added. Besides displaying space-time datasets in the layer tree, it is also about adding the equivalent functionality currently available for raster and vector layers from the context menu. &lt;br /&gt;
&lt;br /&gt;
* Requirements: familiar with Python&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Mentor: Martin Landa&lt;br /&gt;
* Co-mentor: Anna Petrasova&lt;br /&gt;
* Proposed by: Martin Landa&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes:  175 hours basic support for space-time raster datasets; 350 extended support also for other space-time datasets types (vector, 3D raster)&lt;br /&gt;
* Test of skills:&lt;br /&gt;
** suggest/implement solution for completing https://github.com/OSGeo/grass/issues/2599&lt;br /&gt;
&lt;br /&gt;
=== Searchable metadata in Space Time Datasets ===&lt;br /&gt;
The temporal framework in GRASS was initially developed almost 15 years ago. Spatio-temporal data has become more widely available since then and new standards emerged like e.g. ''[https://docs.ogc.org/cs/25-004/25-004.html STAC]'' with ''[https://github.com/stac-extensions/stac-extensions.github.io extensions]'', or the ''[https://cfconventions.org/ CF-conventions]''. The aim of this project is to extend the metadata model in the temporal framework to improve discoverability of map datasets registered in TGIS and to allow users to embed extended metadata with the registered maps in a Space Time Dataset in a searchable way. Ideally, the new model is able to account for the standards mentioned above.&lt;br /&gt;
 &lt;br /&gt;
See also: https://github.com/OSGeo/grass/issues/1938&lt;br /&gt;
&lt;br /&gt;
* Requirements: Python, SQL, JSON&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Mentor: Stefan Blumentrath&lt;br /&gt;
* Co-mentor: ???&lt;br /&gt;
* Proposed by: Stefan Blumentrath&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes:&lt;br /&gt;
** an updated TGIS database model (version 4) that:&lt;br /&gt;
*** is oriented on relevant metadata standards (STAC, CF-Convention, ...)&lt;br /&gt;
*** allows to use metadata in temporal_where to select relevant elements of Space time datasets&lt;br /&gt;
** updated tool to create space time datasets (t.create) in the TGIS database with extended metadata&lt;br /&gt;
** updated tool to register map datasets (t.register) in the TGIS database with extended metadata&lt;br /&gt;
** Conversion tool for database Upgrades (v3 to v4)&lt;br /&gt;
** a new tool to update / modify metadata in the TGIS database&lt;br /&gt;
** Storage of timeseries metadata for both C-based and temporal Tools&lt;br /&gt;
&lt;br /&gt;
* Test of skills (e.g.):&lt;br /&gt;
** address one or more sub-tasks from https://github.com/OSGeo/grass/issues/3427 (add append-mode to selected new tool(s))&lt;br /&gt;
** suggest/implement solution for https://github.com/OSGeo/grass/issues/3394 (more complex task)&lt;br /&gt;
** suggest/implement solution for https://github.com/OSGeo/grass/issues/7041&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Add {your research idea} to GRASS ===&lt;br /&gt;
&lt;br /&gt;
* In general, you can propose any topic, but you can specifically propose integrating your research or research idea into GRASS.&lt;br /&gt;
* Requirements:&lt;br /&gt;
** Language:&lt;br /&gt;
*** Depends on the project, often Python, sometimes C.&lt;br /&gt;
*** Adding your latest ecological analysis &lt;br /&gt;
** Proposal:&lt;br /&gt;
*** Discuss relevance to GRASS.&lt;br /&gt;
*** Describe technical steps needed for integration.&lt;br /&gt;
*** Describe whether it is an addition of a tool (module) or a change in one of the libraries. If it is a tool, specify if it should be included in the core grass repository or in grass-addons repository and why.&lt;br /&gt;
*** Specify what research was done and what needs to be accomplished in order to have usable product at the end of summer.&lt;br /&gt;
*** Specify who will provide the research expertise.&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Rating: from low to hard&lt;br /&gt;
* Mentors:&lt;br /&gt;
** GRASS project will provide technical mentors, but it is up to the applicant to ensure the research part is mentored well. An exception may be granted to applicants which can demonstrate that the research is finished or that they have enough expertise themselves.&lt;br /&gt;
** Possible technical mentors: Vaclav Petras, Anna Petrasova&lt;br /&gt;
** Research mentors: Bring in an expert from your field, e.g., your academic advisor or project principal investigator (if needed).&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Expected outcome: Working feature which is integrated and merged at the end of the project.&lt;br /&gt;
* Test and training tasks:&lt;br /&gt;
** Create a test in Python for an existing tool in the grass-addons repository or in the core grass repository.&lt;br /&gt;
&lt;br /&gt;
=== Title of idea ===&lt;br /&gt;
&lt;br /&gt;
Description here&lt;br /&gt;
&lt;br /&gt;
* Requirements:&lt;br /&gt;
* Project length: (175 or 350 hours) &lt;br /&gt;
* Mentor: &lt;br /&gt;
* Proposed by: &lt;br /&gt;
* Rating: &lt;br /&gt;
* Expected Outcomes:  &lt;br /&gt;
* Test of skills: &lt;br /&gt;
* Other:&lt;br /&gt;
&lt;br /&gt;
== Tips for students ==&lt;br /&gt;
* Follow official [https://github.com/numfocus/gsoc/blob/master/CONTRIBUTING-contributors.md NumFOCUS guidelines].&lt;br /&gt;
* Include &amp;quot;GRASS&amp;quot; in the title of our idea to easily distinguish ideas and projects inside NumFOCUS.&lt;br /&gt;
* If you have your own ideas we encourage you to propose them. Explain them on the [https://discourse.osgeo.org/c/grass/developer/61 on our Discourse].&lt;br /&gt;
* Follow some good practices in your ideas and proposals:&lt;br /&gt;
** Stress why the project would be useful.&lt;br /&gt;
** Show that you know how you will proceed. That is, make sure that you can demonstrate that the proposal is feasible in the given time frame.&lt;br /&gt;
** Be specific in the implementation (or at least as specific as you can).&lt;br /&gt;
** Explain what the final product will look like and how it will work. You can add drawings or mock-ups.&lt;br /&gt;
** Explain how the idea relates to existing GRASS functions, features, and needs.&lt;br /&gt;
** Do not include steps such as &amp;quot;install GRASS&amp;quot;, &amp;quot;compile GRASS libraries (on my machine)&amp;quot;, &amp;quot;read about the API&amp;quot;. You should do this before applying to GSoC.&lt;br /&gt;
* Compile GRASS from source and prepare environment for development:&lt;br /&gt;
** Read [https://github.com/OSGeo/grass/blob/main/CONTRIBUTING.md CONTRIBUTING file].&lt;br /&gt;
* Prove your worth by being active on the [https://discourse.osgeo.org/c/grass/developer/61 GRASS Discourse] or other channels ([https://github.com/OSGeo/grass/discussions GitHub Discussions], fix some [https://github.com/OSGeo/grass/issues bugs], and/or implement some (smaller) features, or write some (simpler) GRASS module, and post it to mailing list. There's no better way to demonstrate your willingness and abilities. Do this before start you apply to GSoC. &lt;br /&gt;
* Also note that fixing existing bugs and/or implementing enhancements will be a part of student evaluation.&lt;br /&gt;
&lt;br /&gt;
{{GSoC}}&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS_Community_Meeting_San_Michele_2026&amp;diff=28837</id>
		<title>GRASS Community Meeting San Michele 2026</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS_Community_Meeting_San_Michele_2026&amp;diff=28837"/>
		<updated>2026-04-15T18:29:41Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{toc|right}}&lt;br /&gt;
The ''GRASS Community Meeting'' for contributors and developers will be happening from '''July 11 -  19, 2026''' in [https://www.openstreetmap.org/relation/46990#map=12/46.1349/11.1947 San Michele all'Adige, Trentino, Italy].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Sanmichele.png|frameless|center|1000px|San Michele all'Adige]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sponsors ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.osgeo.org/ OSGeo]: 2500 USD (see [https://wiki.osgeo.org/w/index.php?title=GRASS_Community_Meeting_2026:_Budget budget]]).&lt;br /&gt;
&lt;br /&gt;
[[File:Osgeo logo.png|none|left|alt=Light and dark green logo of OSGeo saying Your Open Source Compass|Open Source Geospatial Foundation]]&lt;br /&gt;
&lt;br /&gt;
== Purpose ==&lt;br /&gt;
The ''GRASS Community Meeting'' is a great occasion for folks to support the development by actively contributing to the project in different ways. These include  source code updates, documentation (manuals, wiki, tutorials), translations, website improvements or likewise. The community meeting is also a get-together where supporters, contributors, power users and developers make decisions and tackle larger problems related to the project, discuss and collaboratively resolve bugs, plan the direction for the project and work on new features. We welcome people committed to improving the GRASS  project and the interfaces to QGIS, GDAL, PostGIS, R, OGC Services and others.&lt;br /&gt;
&lt;br /&gt;
The focus is on GRASS maintenance, and interaction with other projects. Many maintenance tasks, infrastructure changes, and planning of large changes especially benefits from maintainers being in one place and time zone. While the specific topics highly depend on the participants, we will prioritize topics which require highly synchronous collaboration, such as the CMake build system transition and API transitions. The [https://grass.osgeo.org/news/2025_05_27_grass_dev_summit_report/ 2025 event report] gives an overview of what was achieved last year. &lt;br /&gt;
&lt;br /&gt;
We do require participants to work on GRASS or connections to other projects. However, we leave them the freedom to work on what they think is the best contribution to the project given their skills and time available.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Agenda ==&lt;br /&gt;
&lt;br /&gt;
Agenda is forthcoming.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Saturday, July 11 ===&lt;br /&gt;
&lt;br /&gt;
Day of arrival. Contact organizers if you are interested in individualized program or helping with organization.&lt;br /&gt;
&lt;br /&gt;
=== Sunday, July 12 ===&lt;br /&gt;
=== Monday, July 13 ===&lt;br /&gt;
=== Tuesday, July 14 ===&lt;br /&gt;
=== Wednesday, July 15 ===&lt;br /&gt;
=== Thursday, July 16 ===&lt;br /&gt;
=== Friday, July 17 ===&lt;br /&gt;
=== Saturday, July 18 ===&lt;br /&gt;
=== Sunday, July 19 ===&lt;br /&gt;
&lt;br /&gt;
Day of departure.&lt;br /&gt;
&lt;br /&gt;
== Participation ==&lt;br /&gt;
&lt;br /&gt;
Please add your name here:&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable sortable&amp;quot;   border=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;4&amp;quot; rules=&amp;quot;all&amp;quot; style=&amp;quot;margin:1em 1em 1em 0; border:solid 1px #AAAAAA; border-collapse:collapse; background-color:#edf9c7; font-size:95%; empty-cells:show;&amp;quot; &lt;br /&gt;
!width=50px|'''Number'''&lt;br /&gt;
!width=130px|'''Participant '''&lt;br /&gt;
!width=100px|'''Country'''&lt;br /&gt;
!width=100px|'''Arrival'''&lt;br /&gt;
!width=100px|'''Departure'''&lt;br /&gt;
!'''Topics'''&lt;br /&gt;
!'''Notes'''&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
| [[User:Lucadelu|Luca Delucchi]]&lt;br /&gt;
| Italy&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
| [[User:wenzeslaus|Vaclav Petras]]&lt;br /&gt;
| United States &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
| [[User:Annakrat|Anna Petrasova]]&lt;br /&gt;
| United States &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
| [[User:Neteler|Markus Neteler]]&lt;br /&gt;
| Germany&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Venue ==&lt;br /&gt;
The meeting will be hosted at [https://fmach.it/ Fondazione Edmund Mach] (FEM) in San Michele all'Adige, Trentino, Italy — about 15 km north of Trento. FEM is a research and education center with on-site facilities that allow participants to work, sleep, and eat in the same location.&lt;br /&gt;
&lt;br /&gt;
[https://maps.app.goo.gl/5YEuEts6qXvky7HD9 Map]&lt;br /&gt;
&lt;br /&gt;
=== Getting there ===&lt;br /&gt;
&lt;br /&gt;
San Michele all'Adige is reachable by train on the Trento–Bolzano line (San Michele all'Adige–Mezzocorona station), with frequent connections from Trento (~15 minutes) and Verona (~1 hour). The nearest airports are Verona (VRN), Venice Marco Polo (VCE) and Treviso (TSF), Milan Bergamo (BGY), Malpensa (MXP), and Linate (LIN), Bologna (BLQ), and Innsbruck (INN) in Austria. Trento is also the host city of FOSS4G Italy 2026 (July 9–11), making it convenient to combine both events.&lt;br /&gt;
&lt;br /&gt;
== Accommodation and Costs ==&lt;br /&gt;
&lt;br /&gt;
''Participation is free of charge''. However, participants should plan for the following costs:&lt;br /&gt;
&lt;br /&gt;
* Travel&lt;br /&gt;
* Lodging&lt;br /&gt;
&lt;br /&gt;
Participants can stay on-site at the FEM convitto (dormitory), keeping the community together for the full duration of the meeting:&lt;br /&gt;
&lt;br /&gt;
* €35 per person per night&lt;br /&gt;
* Double and triple rooms (triples include a small kitchen)&lt;br /&gt;
* A mandatory on-site supervisor is required at €200 per night (flat fee, shared across the group)&lt;br /&gt;
* Family members are welcome to stay in the dormitory as well&lt;br /&gt;
* [https://cif.fmach.it/content/download/2701/78358/file/brochure_convitto.pdf Brochure]&lt;br /&gt;
&lt;br /&gt;
For anyone preferring alternative lodging, hotels and B&amp;amp;Bs are available in San Michele and nearby Trento.&lt;br /&gt;
&lt;br /&gt;
Lunches on weekdays can be taken at the FEM canteen (mensa), located on the same campus. Details and pricing are being finalized.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Individual Preparation ==&lt;br /&gt;
&lt;br /&gt;
* Bring your own computer&lt;br /&gt;
* Bring {{wikipedia|AC power plugs and sockets|power adapter}} if needed (Italy: 230V, 50Hz, {{wikipedia|Europlug|Type C}}, {{wikipedia|Schuko|Type F}}, and {{wikipedia|AC power plugs and sockets: L|Type L}} sockets are common)&lt;br /&gt;
* Install git and the compiler tools, and come with a working GRASS development environment if possible. See [https://github.com/OSGeo/grass/blob/main/CONTRIBUTING.md here] for details.&lt;br /&gt;
&lt;br /&gt;
== FAQ ==&lt;br /&gt;
&lt;br /&gt;
* ''How was it last time?''&lt;br /&gt;
** Splendid! See [[GRASS Developer Summit Raleigh 2025]]!&lt;br /&gt;
* ''Is the GRASS Community Meeting for developers only?''&lt;br /&gt;
** No, the meeting is open to all users, supporters, contributors, power users and developers ''who want to make a meaningful contribution to the project''.&lt;br /&gt;
* ''Where can I get help and more information about the community meeting?''&lt;br /&gt;
** Contact local organizer [[User:Lucadelu|Luca Delucchi]] (&amp;lt;tt&amp;gt;&amp;lt;lucadeluge at gmail com&amp;gt;&amp;lt;/tt&amp;gt;) or [[User:wenzeslaus|Vaclav Petras]] (&amp;lt;tt&amp;gt;&amp;lt;wenzeslaus at gmail com&amp;gt;&amp;lt;/tt&amp;gt;) for budget questions.&lt;br /&gt;
&lt;br /&gt;
[[Category: Workshops]]&lt;br /&gt;
[[Category: Code Sprint]]&lt;br /&gt;
[[Category: 2026]]&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS-Wiki&amp;diff=28833</id>
		<title>GRASS-Wiki</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS-Wiki&amp;diff=28833"/>
		<updated>2026-04-15T03:40:27Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: /* Governance */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
[[Image:grasslogo_vector_small.png|110x123 px|right|link=https://grass.osgeo.org]]&lt;br /&gt;
&lt;br /&gt;
== Welcome to the GRASS Wiki ==&lt;br /&gt;
&lt;br /&gt;
This wiki is used by the GRASS community mainly for '''governance''', '''event planning''', and '''community coordination'''.&lt;br /&gt;
&lt;br /&gt;
Looking for how to use GRASS? Visit our main website and learning resources:&lt;br /&gt;
&lt;br /&gt;
* [https://grass.osgeo.org/ Main GRASS Website]&lt;br /&gt;
* [https://grass.osgeo.org/grass-stable/manuals/index.html Documentation &amp;amp; Manuals]&lt;br /&gt;
* [https://grass-tutorials.osgeo.org/ Tutorials &amp;amp; Learning Resources]&lt;br /&gt;
* [https://grass.osgeo.org/download/ Download GRASS]&lt;br /&gt;
* [https://github.com/OSGeo/grass GitHub Repository]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Support GRASS development: [https://grass.osgeo.org/contribute/sponsoring/ Donate here]'''&lt;br /&gt;
&lt;br /&gt;
== Governance ==&lt;br /&gt;
&lt;br /&gt;
* [[PSC|Project Steering Committee (PSC)]]&lt;br /&gt;
* [[PSC#PSC_meeting_agenda_and_minutes|Meeting Minutes]]&lt;br /&gt;
* [[GRASS_Budget_2026|2026 Budget]]&lt;br /&gt;
&lt;br /&gt;
== Latest Events &amp;amp; Planning ==&lt;br /&gt;
&lt;br /&gt;
* [[GRASS Community Meeting San Michele 2026]]&lt;br /&gt;
* [[GRASS_GSoC_Ideas_2026|Google Summer of Code 2026]]&lt;br /&gt;
* [[Local GRASS Meetup at NC State Center for Geospatial Analytics 2025]]&lt;br /&gt;
&lt;br /&gt;
== Relevant Categories ==&lt;br /&gt;
* [[:Category:GSoC|GSoC]]&lt;br /&gt;
* [[:Category:Code_Sprint|Code sprints]]&lt;br /&gt;
* [[:Category:Workshops|Workshops]]&lt;br /&gt;
* [[:Category:Conferences|Conferences]]&lt;br /&gt;
* [[:Category:Installation|Installation]]&lt;br /&gt;
* [[:Category:Budget|Budget]]&lt;br /&gt;
* [[Special:Categories|Further categories]]&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS-Wiki&amp;diff=28832</id>
		<title>GRASS-Wiki</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS-Wiki&amp;diff=28832"/>
		<updated>2026-04-15T03:40:07Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: /* Governance */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
[[Image:grasslogo_vector_small.png|110x123 px|right|link=https://grass.osgeo.org]]&lt;br /&gt;
&lt;br /&gt;
== Welcome to the GRASS Wiki ==&lt;br /&gt;
&lt;br /&gt;
This wiki is used by the GRASS community mainly for '''governance''', '''event planning''', and '''community coordination'''.&lt;br /&gt;
&lt;br /&gt;
Looking for how to use GRASS? Visit our main website and learning resources:&lt;br /&gt;
&lt;br /&gt;
* [https://grass.osgeo.org/ Main GRASS Website]&lt;br /&gt;
* [https://grass.osgeo.org/grass-stable/manuals/index.html Documentation &amp;amp; Manuals]&lt;br /&gt;
* [https://grass-tutorials.osgeo.org/ Tutorials &amp;amp; Learning Resources]&lt;br /&gt;
* [https://grass.osgeo.org/download/ Download GRASS]&lt;br /&gt;
* [https://github.com/OSGeo/grass GitHub Repository]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Support GRASS development: [https://grass.osgeo.org/contribute/sponsoring/ Donate here]'''&lt;br /&gt;
&lt;br /&gt;
== Governance ==&lt;br /&gt;
&lt;br /&gt;
* [[PSC|Project Steering Committee (PSC)]]&lt;br /&gt;
* [[PSC#PSC_meeting_agenda_and_minutes|Meeting Minutes]]&lt;br /&gt;
* [[GRASS_GIS_Budget_2026|2026 Budget]]&lt;br /&gt;
&lt;br /&gt;
== Latest Events &amp;amp; Planning ==&lt;br /&gt;
&lt;br /&gt;
* [[GRASS Community Meeting San Michele 2026]]&lt;br /&gt;
* [[GRASS_GSoC_Ideas_2026|Google Summer of Code 2026]]&lt;br /&gt;
* [[Local GRASS Meetup at NC State Center for Geospatial Analytics 2025]]&lt;br /&gt;
&lt;br /&gt;
== Relevant Categories ==&lt;br /&gt;
* [[:Category:GSoC|GSoC]]&lt;br /&gt;
* [[:Category:Code_Sprint|Code sprints]]&lt;br /&gt;
* [[:Category:Workshops|Workshops]]&lt;br /&gt;
* [[:Category:Conferences|Conferences]]&lt;br /&gt;
* [[:Category:Installation|Installation]]&lt;br /&gt;
* [[:Category:Budget|Budget]]&lt;br /&gt;
* [[Special:Categories|Further categories]]&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS-Wiki&amp;diff=28831</id>
		<title>GRASS-Wiki</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS-Wiki&amp;diff=28831"/>
		<updated>2026-04-15T03:38:50Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: /* Latest Events &amp;amp; Planning */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
[[Image:grasslogo_vector_small.png|110x123 px|right|link=https://grass.osgeo.org]]&lt;br /&gt;
&lt;br /&gt;
== Welcome to the GRASS Wiki ==&lt;br /&gt;
&lt;br /&gt;
This wiki is used by the GRASS community mainly for '''governance''', '''event planning''', and '''community coordination'''.&lt;br /&gt;
&lt;br /&gt;
Looking for how to use GRASS? Visit our main website and learning resources:&lt;br /&gt;
&lt;br /&gt;
* [https://grass.osgeo.org/ Main GRASS Website]&lt;br /&gt;
* [https://grass.osgeo.org/grass-stable/manuals/index.html Documentation &amp;amp; Manuals]&lt;br /&gt;
* [https://grass-tutorials.osgeo.org/ Tutorials &amp;amp; Learning Resources]&lt;br /&gt;
* [https://grass.osgeo.org/download/ Download GRASS]&lt;br /&gt;
* [https://github.com/OSGeo/grass GitHub Repository]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Support GRASS development: [https://grass.osgeo.org/contribute/sponsoring/ Donate here]'''&lt;br /&gt;
&lt;br /&gt;
== Governance ==&lt;br /&gt;
&lt;br /&gt;
* [[PSC|Project Steering Committee (PSC)]]&lt;br /&gt;
* [[PSC#PSC_meeting_agenda_and_minutes|Meeting Minutes]]&lt;br /&gt;
* [[GRASS_GIS_Budget_2025|2025 Budget]]&lt;br /&gt;
&lt;br /&gt;
== Latest Events &amp;amp; Planning ==&lt;br /&gt;
&lt;br /&gt;
* [[GRASS Community Meeting San Michele 2026]]&lt;br /&gt;
* [[GRASS_GSoC_Ideas_2026|Google Summer of Code 2026]]&lt;br /&gt;
* [[Local GRASS Meetup at NC State Center for Geospatial Analytics 2025]]&lt;br /&gt;
&lt;br /&gt;
== Relevant Categories ==&lt;br /&gt;
* [[:Category:GSoC|GSoC]]&lt;br /&gt;
* [[:Category:Code_Sprint|Code sprints]]&lt;br /&gt;
* [[:Category:Workshops|Workshops]]&lt;br /&gt;
* [[:Category:Conferences|Conferences]]&lt;br /&gt;
* [[:Category:Installation|Installation]]&lt;br /&gt;
* [[:Category:Budget|Budget]]&lt;br /&gt;
* [[Special:Categories|Further categories]]&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS_Community_Meeting_San_Michele_2026&amp;diff=28830</id>
		<title>GRASS Community Meeting San Michele 2026</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS_Community_Meeting_San_Michele_2026&amp;diff=28830"/>
		<updated>2026-04-15T03:36:11Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: /* Participation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{toc|right}}&lt;br /&gt;
The ''GRASS Community Meeting'' for contributors and developers will be happening from '''July 11 to June 19, 2026''' in [https://www.openstreetmap.org/relation/46990#map=12/46.1349/11.1947 San Michele all'Adige, Trentino, Italy].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Sanmichele.png|frameless|center|1000px|San Michele all'Adige]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sponsors ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.osgeo.org/ OSGeo]: 2500 USD (see [https://wiki.osgeo.org/w/index.php?title=GRASS_Community_Meeting_2026:_Budget budget]]).&lt;br /&gt;
&lt;br /&gt;
[[File:Osgeo logo.png|none|left|alt=Light and dark green logo of OSGeo saying Your Open Source Compass|Open Source Geospatial Foundation]]&lt;br /&gt;
&lt;br /&gt;
== Purpose ==&lt;br /&gt;
The ''GRASS Community Meeting'' is a great occasion for folks to support the development by actively contributing to the project in different ways. These include  source code updates, documentation (manuals, wiki, tutorials), translations, website improvements or likewise. The community meeting is also a get-together where supporters, contributors, power users and developers make decisions and tackle larger problems related to the project, discuss and collaboratively resolve bugs, plan the direction for the project and work on new features. We welcome people committed to improving the GRASS  project and the interfaces to QGIS, GDAL, PostGIS, R, OGC Services and others.&lt;br /&gt;
&lt;br /&gt;
The focus is on GRASS maintenance, and interaction with other projects. Many maintenance tasks, infrastructure changes, and planning of large changes especially benefits from maintainers being in one place and time zone. While the specific topics highly depend on the participants, we will prioritize topics which require highly synchronous collaboration, such as the CMake build system transition and API transitions. The [https://grass.osgeo.org/news/2025_05_27_grass_dev_summit_report/ 2025 event report] gives an overview of what was achieved last year. &lt;br /&gt;
&lt;br /&gt;
We do require participants to work on GRASS or connections to other projects. However, we leave them the freedom to work on what they think is the best contribution to the project given their skills and time available.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Agenda ==&lt;br /&gt;
&lt;br /&gt;
Agenda is forthcoming.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Saturday, July 11 ===&lt;br /&gt;
&lt;br /&gt;
Day of arrival. Contact organizers if you are interested in individualized program or helping with organization.&lt;br /&gt;
&lt;br /&gt;
=== Sunday, July 12 ===&lt;br /&gt;
=== Monday, July 13 ===&lt;br /&gt;
=== Tuesday, July 14 ===&lt;br /&gt;
=== Wednesday, July 15 ===&lt;br /&gt;
=== Thursday, July 16 ===&lt;br /&gt;
=== Friday, July 17 ===&lt;br /&gt;
=== Saturday, July 18 ===&lt;br /&gt;
=== Sunday, July 19 ===&lt;br /&gt;
&lt;br /&gt;
Day of departure.&lt;br /&gt;
&lt;br /&gt;
== Participation ==&lt;br /&gt;
&lt;br /&gt;
Please add your name here:&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable sortable&amp;quot;   border=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;4&amp;quot; rules=&amp;quot;all&amp;quot; style=&amp;quot;margin:1em 1em 1em 0; border:solid 1px #AAAAAA; border-collapse:collapse; background-color:#edf9c7; font-size:95%; empty-cells:show;&amp;quot; &lt;br /&gt;
!width=50px|'''Number'''&lt;br /&gt;
!width=130px|'''Participant '''&lt;br /&gt;
!width=100px|'''Country'''&lt;br /&gt;
!width=100px|'''Arrival'''&lt;br /&gt;
!width=100px|'''Departure'''&lt;br /&gt;
!'''Topics'''&lt;br /&gt;
!'''Notes'''&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
| [[User:Lucadelu|Luca Delucchi]]&lt;br /&gt;
| Italy&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
| [[User:wenzeslaus|Vaclav Petras]]&lt;br /&gt;
| United States &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
| [[User:Annakrat|Anna Petrasova]]&lt;br /&gt;
| United States &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Venue ==&lt;br /&gt;
The meeting will be hosted at [https://fmach.it/ Fondazione Edmund Mach] (FEM) in San Michele all'Adige, Trentino, Italy — about 15 km north of Trento. FEM is a research and education center with on-site facilities that allow participants to work, sleep, and eat in the same location.&lt;br /&gt;
&lt;br /&gt;
[https://maps.app.goo.gl/5YEuEts6qXvky7HD9 Map]&lt;br /&gt;
&lt;br /&gt;
=== Getting there ===&lt;br /&gt;
&lt;br /&gt;
San Michele all'Adige is reachable by train on the Trento–Bolzano line (San Michele all'Adige–Mezzocorona station), with frequent connections from Trento (~15 minutes) and Verona (~1 hour). The nearest airports are Verona (VRN), Venice Marco Polo (VCE) and Treviso (TSF), Milan Bergamo (BGY), Malpensa (MXP), and Linate (LIN), Bologna (BLQ), and Innsbruck (INN) in Austria. Trento is also the host city of FOSS4G Italy 2026 (July 9–11), making it convenient to combine both events.&lt;br /&gt;
&lt;br /&gt;
== Accommodation and Costs ==&lt;br /&gt;
&lt;br /&gt;
''Participation is free of charge''. However, participants should plan for the following costs:&lt;br /&gt;
&lt;br /&gt;
* Travel&lt;br /&gt;
* Lodging&lt;br /&gt;
&lt;br /&gt;
Participants can stay on-site at the FEM convitto (dormitory), keeping the community together for the full duration of the meeting:&lt;br /&gt;
&lt;br /&gt;
* €35 per person per night&lt;br /&gt;
* Double and triple rooms (triples include a small kitchen)&lt;br /&gt;
* A mandatory on-site supervisor is required at €200 per night (flat fee, shared across the group)&lt;br /&gt;
* Family members are welcome to stay in the dormitory as well&lt;br /&gt;
* [https://cif.fmach.it/content/download/2701/78358/file/brochure_convitto.pdf Brochure]&lt;br /&gt;
&lt;br /&gt;
For anyone preferring alternative lodging, hotels and B&amp;amp;Bs are available in San Michele and nearby Trento.&lt;br /&gt;
&lt;br /&gt;
Lunches on weekdays can be taken at the FEM canteen (mensa), located on the same campus. Details and pricing are being finalized.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Individual Preparation ==&lt;br /&gt;
&lt;br /&gt;
* Bring your own computer&lt;br /&gt;
* Bring {{wikipedia|AC power plugs and sockets|power adapter}} if needed (Italy: 230V, 50Hz, {{wikipedia|Europlug|Type C}}, {{wikipedia|Schuko|Type F}}, and {{wikipedia|AC power plugs and sockets: L|Type L}} sockets are common)&lt;br /&gt;
* Install git and the compiler tools, and come with a working GRASS development environment if possible. See [https://github.com/OSGeo/grass/blob/main/CONTRIBUTING.md here] for details.&lt;br /&gt;
&lt;br /&gt;
== FAQ ==&lt;br /&gt;
&lt;br /&gt;
* ''How was it last time?''&lt;br /&gt;
** Splendid! See [[GRASS Developer Summit Raleigh 2025]]!&lt;br /&gt;
* ''Is the GRASS Community Meeting for developers only?''&lt;br /&gt;
** No, the meeting is open to all users, supporters, contributors, power users and developers ''who want to make a meaningful contribution to the project''.&lt;br /&gt;
* ''Where can I get help and more information about the community meeting?''&lt;br /&gt;
** Contact local organizer [[User:Lucadelu|Luca Delucchi]] (&amp;lt;tt&amp;gt;&amp;lt;lucadeluge at gmail com&amp;gt;&amp;lt;/tt&amp;gt;) or [[User:wenzeslaus|Vaclav Petras]] (&amp;lt;tt&amp;gt;&amp;lt;wenzeslaus at gmail com&amp;gt;&amp;lt;/tt&amp;gt;) for budget questions.&lt;br /&gt;
&lt;br /&gt;
[[Category: Workshops]]&lt;br /&gt;
[[Category: Code Sprint]]&lt;br /&gt;
[[Category: 2026]]&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS_Community_Meeting_San_Michele_2026&amp;diff=28829</id>
		<title>GRASS Community Meeting San Michele 2026</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS_Community_Meeting_San_Michele_2026&amp;diff=28829"/>
		<updated>2026-04-15T03:34:08Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: add image&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{toc|right}}&lt;br /&gt;
The ''GRASS Community Meeting'' for contributors and developers will be happening from '''July 11 to June 19, 2026''' in [https://www.openstreetmap.org/relation/46990#map=12/46.1349/11.1947 San Michele all'Adige, Trentino, Italy].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Sanmichele.png|frameless|center|1000px|San Michele all'Adige]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sponsors ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.osgeo.org/ OSGeo]: 2500 USD (see [https://wiki.osgeo.org/w/index.php?title=GRASS_Community_Meeting_2026:_Budget budget]]).&lt;br /&gt;
&lt;br /&gt;
[[File:Osgeo logo.png|none|left|alt=Light and dark green logo of OSGeo saying Your Open Source Compass|Open Source Geospatial Foundation]]&lt;br /&gt;
&lt;br /&gt;
== Purpose ==&lt;br /&gt;
The ''GRASS Community Meeting'' is a great occasion for folks to support the development by actively contributing to the project in different ways. These include  source code updates, documentation (manuals, wiki, tutorials), translations, website improvements or likewise. The community meeting is also a get-together where supporters, contributors, power users and developers make decisions and tackle larger problems related to the project, discuss and collaboratively resolve bugs, plan the direction for the project and work on new features. We welcome people committed to improving the GRASS  project and the interfaces to QGIS, GDAL, PostGIS, R, OGC Services and others.&lt;br /&gt;
&lt;br /&gt;
The focus is on GRASS maintenance, and interaction with other projects. Many maintenance tasks, infrastructure changes, and planning of large changes especially benefits from maintainers being in one place and time zone. While the specific topics highly depend on the participants, we will prioritize topics which require highly synchronous collaboration, such as the CMake build system transition and API transitions. The [https://grass.osgeo.org/news/2025_05_27_grass_dev_summit_report/ 2025 event report] gives an overview of what was achieved last year. &lt;br /&gt;
&lt;br /&gt;
We do require participants to work on GRASS or connections to other projects. However, we leave them the freedom to work on what they think is the best contribution to the project given their skills and time available.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Agenda ==&lt;br /&gt;
&lt;br /&gt;
Agenda is forthcoming.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Saturday, July 11 ===&lt;br /&gt;
&lt;br /&gt;
Day of arrival. Contact organizers if you are interested in individualized program or helping with organization.&lt;br /&gt;
&lt;br /&gt;
=== Sunday, July 12 ===&lt;br /&gt;
=== Monday, July 13 ===&lt;br /&gt;
=== Tuesday, July 14 ===&lt;br /&gt;
=== Wednesday, July 15 ===&lt;br /&gt;
=== Thursday, July 16 ===&lt;br /&gt;
=== Friday, July 17 ===&lt;br /&gt;
=== Saturday, July 18 ===&lt;br /&gt;
=== Sunday, July 19 ===&lt;br /&gt;
&lt;br /&gt;
Day of departure.&lt;br /&gt;
&lt;br /&gt;
== Participation ==&lt;br /&gt;
&lt;br /&gt;
Please add your name here:&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable sortable&amp;quot;   border=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;4&amp;quot; rules=&amp;quot;all&amp;quot; style=&amp;quot;margin:1em 1em 1em 0; border:solid 1px #AAAAAA; border-collapse:collapse; background-color:#edf9c7; font-size:95%; empty-cells:show;&amp;quot; &lt;br /&gt;
!width=50px|'''Number'''&lt;br /&gt;
!width=130px|'''Participant '''&lt;br /&gt;
!width=100px|'''Country'''&lt;br /&gt;
!width=100px|'''Arrival'''&lt;br /&gt;
!width=100px|'''Departure'''&lt;br /&gt;
!'''Topics'''&lt;br /&gt;
!'''Notes'''&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
| [[User:wenzeslaus|Vaclav Petras]]&lt;br /&gt;
| United States &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
| [[User:Annakrat|Anna Petrasova]]&lt;br /&gt;
| United States &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
If you are arriving or departing on the days of the event, please specify the time, too.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Venue ==&lt;br /&gt;
The meeting will be hosted at [https://fmach.it/ Fondazione Edmund Mach] (FEM) in San Michele all'Adige, Trentino, Italy — about 15 km north of Trento. FEM is a research and education center with on-site facilities that allow participants to work, sleep, and eat in the same location.&lt;br /&gt;
&lt;br /&gt;
[https://maps.app.goo.gl/5YEuEts6qXvky7HD9 Map]&lt;br /&gt;
&lt;br /&gt;
=== Getting there ===&lt;br /&gt;
&lt;br /&gt;
San Michele all'Adige is reachable by train on the Trento–Bolzano line (San Michele all'Adige–Mezzocorona station), with frequent connections from Trento (~15 minutes) and Verona (~1 hour). The nearest airports are Verona (VRN), Venice Marco Polo (VCE) and Treviso (TSF), Milan Bergamo (BGY), Malpensa (MXP), and Linate (LIN), Bologna (BLQ), and Innsbruck (INN) in Austria. Trento is also the host city of FOSS4G Italy 2026 (July 9–11), making it convenient to combine both events.&lt;br /&gt;
&lt;br /&gt;
== Accommodation and Costs ==&lt;br /&gt;
&lt;br /&gt;
''Participation is free of charge''. However, participants should plan for the following costs:&lt;br /&gt;
&lt;br /&gt;
* Travel&lt;br /&gt;
* Lodging&lt;br /&gt;
&lt;br /&gt;
Participants can stay on-site at the FEM convitto (dormitory), keeping the community together for the full duration of the meeting:&lt;br /&gt;
&lt;br /&gt;
* €35 per person per night&lt;br /&gt;
* Double and triple rooms (triples include a small kitchen)&lt;br /&gt;
* A mandatory on-site supervisor is required at €200 per night (flat fee, shared across the group)&lt;br /&gt;
* Family members are welcome to stay in the dormitory as well&lt;br /&gt;
* [https://cif.fmach.it/content/download/2701/78358/file/brochure_convitto.pdf Brochure]&lt;br /&gt;
&lt;br /&gt;
For anyone preferring alternative lodging, hotels and B&amp;amp;Bs are available in San Michele and nearby Trento.&lt;br /&gt;
&lt;br /&gt;
Lunches on weekdays can be taken at the FEM canteen (mensa), located on the same campus. Details and pricing are being finalized.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Individual Preparation ==&lt;br /&gt;
&lt;br /&gt;
* Bring your own computer&lt;br /&gt;
* Bring {{wikipedia|AC power plugs and sockets|power adapter}} if needed (Italy: 230V, 50Hz, {{wikipedia|Europlug|Type C}}, {{wikipedia|Schuko|Type F}}, and {{wikipedia|AC power plugs and sockets: L|Type L}} sockets are common)&lt;br /&gt;
* Install git and the compiler tools, and come with a working GRASS development environment if possible. See [https://github.com/OSGeo/grass/blob/main/CONTRIBUTING.md here] for details.&lt;br /&gt;
&lt;br /&gt;
== FAQ ==&lt;br /&gt;
&lt;br /&gt;
* ''How was it last time?''&lt;br /&gt;
** Splendid! See [[GRASS Developer Summit Raleigh 2025]]!&lt;br /&gt;
* ''Is the GRASS Community Meeting for developers only?''&lt;br /&gt;
** No, the meeting is open to all users, supporters, contributors, power users and developers ''who want to make a meaningful contribution to the project''.&lt;br /&gt;
* ''Where can I get help and more information about the community meeting?''&lt;br /&gt;
** Contact local organizer [[User:Lucadelu|Luca Delucchi]] (&amp;lt;tt&amp;gt;&amp;lt;lucadeluge at gmail com&amp;gt;&amp;lt;/tt&amp;gt;) or [[User:wenzeslaus|Vaclav Petras]] (&amp;lt;tt&amp;gt;&amp;lt;wenzeslaus at gmail com&amp;gt;&amp;lt;/tt&amp;gt;) for budget questions.&lt;br /&gt;
&lt;br /&gt;
[[Category: Workshops]]&lt;br /&gt;
[[Category: Code Sprint]]&lt;br /&gt;
[[Category: 2026]]&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=File:Sanmichele.png&amp;diff=28828</id>
		<title>File:Sanmichele.png</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=File:Sanmichele.png&amp;diff=28828"/>
		<updated>2026-04-15T03:28:00Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: Images capturing San Michele all'Adige for community meeting promo. Source is personal photos.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
Images capturing San Michele all'Adige for community meeting promo. Source is personal photos.&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS_Community_Meeting_San_Michele_2026&amp;diff=28827</id>
		<title>GRASS Community Meeting San Michele 2026</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS_Community_Meeting_San_Michele_2026&amp;diff=28827"/>
		<updated>2026-04-15T02:59:24Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: wrong year&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{toc|right}}&lt;br /&gt;
The ''GRASS Community Meeting'' for contributors and developers will be happening from '''July 11 to June 19, 2026''' in [https://www.openstreetmap.org/relation/46990#map=12/46.1349/11.1947 San Michele all'Adige, Trentino, Italy].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sponsors ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.osgeo.org/ OSGeo]: 2500 USD (see [https://wiki.osgeo.org/w/index.php?title=GRASS_Community_Meeting_2026:_Budget budget]]).&lt;br /&gt;
&lt;br /&gt;
[[File:Osgeo logo.png|none|left|alt=Light and dark green logo of OSGeo saying Your Open Source Compass|Open Source Geospatial Foundation]]&lt;br /&gt;
&lt;br /&gt;
== Purpose ==&lt;br /&gt;
The ''GRASS Community Meeting'' is a great occasion for folks to support the development by actively contributing to the project in different ways. These include  source code updates, documentation (manuals, wiki, tutorials), translations, website improvements or likewise. The community meeting is also a get-together where supporters, contributors, power users and developers make decisions and tackle larger problems related to the project, discuss and collaboratively resolve bugs, plan the direction for the project and work on new features. We welcome people committed to improving the GRASS  project and the interfaces to QGIS, GDAL, PostGIS, R, OGC Services and others.&lt;br /&gt;
&lt;br /&gt;
The focus is on GRASS maintenance, and interaction with other projects. Many maintenance tasks, infrastructure changes, and planning of large changes especially benefits from maintainers being in one place and time zone. While the specific topics highly depend on the participants, we will prioritize topics which require highly synchronous collaboration, such as the CMake build system transition and API transitions. The [https://grass.osgeo.org/news/2025_05_27_grass_dev_summit_report/ 2025 event report] gives an overview of what was achieved last year. &lt;br /&gt;
&lt;br /&gt;
We do require participants to work on GRASS or connections to other projects. However, we leave them the freedom to work on what they think is the best contribution to the project given their skills and time available.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Agenda ==&lt;br /&gt;
&lt;br /&gt;
Agenda is forthcoming.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Saturday, July 11 ===&lt;br /&gt;
&lt;br /&gt;
Day of arrival. Contact organizers if you are interested in individualized program or helping with organization.&lt;br /&gt;
&lt;br /&gt;
=== Sunday, July 12 ===&lt;br /&gt;
=== Monday, July 13 ===&lt;br /&gt;
=== Tuesday, July 14 ===&lt;br /&gt;
=== Wednesday, July 15 ===&lt;br /&gt;
=== Thursday, July 16 ===&lt;br /&gt;
=== Friday, July 17 ===&lt;br /&gt;
=== Saturday, July 18 ===&lt;br /&gt;
=== Sunday, July 19 ===&lt;br /&gt;
&lt;br /&gt;
Day of departure.&lt;br /&gt;
&lt;br /&gt;
== Participation ==&lt;br /&gt;
&lt;br /&gt;
Please add your name here:&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable sortable&amp;quot;   border=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;4&amp;quot; rules=&amp;quot;all&amp;quot; style=&amp;quot;margin:1em 1em 1em 0; border:solid 1px #AAAAAA; border-collapse:collapse; background-color:#edf9c7; font-size:95%; empty-cells:show;&amp;quot; &lt;br /&gt;
!width=50px|'''Number'''&lt;br /&gt;
!width=130px|'''Participant '''&lt;br /&gt;
!width=100px|'''Country'''&lt;br /&gt;
!width=100px|'''Arrival'''&lt;br /&gt;
!width=100px|'''Departure'''&lt;br /&gt;
!'''Topics'''&lt;br /&gt;
!'''Notes'''&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
| [[User:wenzeslaus|Vaclav Petras]]&lt;br /&gt;
| United States &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
| [[User:Annakrat|Anna Petrasova]]&lt;br /&gt;
| United States &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
If you are arriving or departing on the days of the event, please specify the time, too.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Venue ==&lt;br /&gt;
The meeting will be hosted at [https://fmach.it/ Fondazione Edmund Mach] (FEM) in San Michele all'Adige, Trentino, Italy — about 15 km north of Trento. FEM is a research and education center with on-site facilities that allow participants to work, sleep, and eat in the same location.&lt;br /&gt;
&lt;br /&gt;
[https://maps.app.goo.gl/5YEuEts6qXvky7HD9 Map]&lt;br /&gt;
&lt;br /&gt;
=== Getting there ===&lt;br /&gt;
&lt;br /&gt;
San Michele all'Adige is reachable by train on the Trento–Bolzano line (San Michele all'Adige–Mezzocorona station), with frequent connections from Trento (~15 minutes) and Verona (~1 hour). The nearest airports are Verona (VRN), Venice Marco Polo (VCE) and Treviso (TSF), Milan Bergamo (BGY), Malpensa (MXP), and Linate (LIN), Bologna (BLQ), and Innsbruck (INN) in Austria. Trento is also the host city of FOSS4G Italy 2026 (July 9–11), making it convenient to combine both events.&lt;br /&gt;
&lt;br /&gt;
== Accommodation and Costs ==&lt;br /&gt;
&lt;br /&gt;
''Participation is free of charge''. However, participants should plan for the following costs:&lt;br /&gt;
&lt;br /&gt;
* Travel&lt;br /&gt;
* Lodging&lt;br /&gt;
&lt;br /&gt;
Participants can stay on-site at the FEM convitto (dormitory), keeping the community together for the full duration of the meeting:&lt;br /&gt;
&lt;br /&gt;
* €35 per person per night&lt;br /&gt;
* Double and triple rooms (triples include a small kitchen)&lt;br /&gt;
* A mandatory on-site supervisor is required at €200 per night (flat fee, shared across the group)&lt;br /&gt;
* Family members are welcome to stay in the dormitory as well&lt;br /&gt;
* [https://cif.fmach.it/content/download/2701/78358/file/brochure_convitto.pdf Brochure]&lt;br /&gt;
&lt;br /&gt;
For anyone preferring alternative lodging, hotels and B&amp;amp;Bs are available in San Michele and nearby Trento.&lt;br /&gt;
&lt;br /&gt;
Lunches on weekdays can be taken at the FEM canteen (mensa), located on the same campus. Details and pricing are being finalized.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Individual Preparation ==&lt;br /&gt;
&lt;br /&gt;
* Bring your own computer&lt;br /&gt;
* Bring {{wikipedia|AC power plugs and sockets|power adapter}} if needed (Italy: 230V, 50Hz, {{wikipedia|Europlug|Type C}}, {{wikipedia|Schuko|Type F}}, and {{wikipedia|AC power plugs and sockets: L|Type L}} sockets are common)&lt;br /&gt;
* Install git and the compiler tools, and come with a working GRASS development environment if possible. See [https://github.com/OSGeo/grass/blob/main/CONTRIBUTING.md here] for details.&lt;br /&gt;
&lt;br /&gt;
== FAQ ==&lt;br /&gt;
&lt;br /&gt;
* ''How was it last time?''&lt;br /&gt;
** Splendid! See [[GRASS Developer Summit Raleigh 2025]]!&lt;br /&gt;
* ''Is the GRASS Community Meeting for developers only?''&lt;br /&gt;
** No, the meeting is open to all users, supporters, contributors, power users and developers ''who want to make a meaningful contribution to the project''.&lt;br /&gt;
* ''Where can I get help and more information about the community meeting?''&lt;br /&gt;
** Contact local organizer [[User:Lucadelu|Luca Delucchi]] (&amp;lt;tt&amp;gt;&amp;lt;lucadeluge at gmail com&amp;gt;&amp;lt;/tt&amp;gt;) or [[User:wenzeslaus|Vaclav Petras]] (&amp;lt;tt&amp;gt;&amp;lt;wenzeslaus at gmail com&amp;gt;&amp;lt;/tt&amp;gt;) for budget questions.&lt;br /&gt;
&lt;br /&gt;
[[Category: Workshops]]&lt;br /&gt;
[[Category: Code Sprint]]&lt;br /&gt;
[[Category: 2026]]&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS_Community_Meeting_San_Michele_2026&amp;diff=28826</id>
		<title>GRASS Community Meeting San Michele 2026</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS_Community_Meeting_San_Michele_2026&amp;diff=28826"/>
		<updated>2026-04-15T02:58:58Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: Initial page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{toc|right}}&lt;br /&gt;
The ''GRASS Community Meeting'' for contributors and developers will be happening from '''July 11 to June 19, 2026''' in [https://www.openstreetmap.org/relation/46990#map=12/46.1349/11.1947 San Michele all'Adige, Trentino, Italy].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Sponsors ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.osgeo.org/ OSGeo]: 2500 USD (see [https://wiki.osgeo.org/w/index.php?title=GRASS_Community_Meeting_2026:_Budget budget]]).&lt;br /&gt;
&lt;br /&gt;
[[File:Osgeo logo.png|none|left|alt=Light and dark green logo of OSGeo saying Your Open Source Compass|Open Source Geospatial Foundation]]&lt;br /&gt;
&lt;br /&gt;
== Purpose ==&lt;br /&gt;
The ''GRASS Community Meeting'' is a great occasion for folks to support the development by actively contributing to the project in different ways. These include  source code updates, documentation (manuals, wiki, tutorials), translations, website improvements or likewise. The community meeting is also a get-together where supporters, contributors, power users and developers make decisions and tackle larger problems related to the project, discuss and collaboratively resolve bugs, plan the direction for the project and work on new features. We welcome people committed to improving the GRASS  project and the interfaces to QGIS, GDAL, PostGIS, R, OGC Services and others.&lt;br /&gt;
&lt;br /&gt;
The focus is on GRASS maintenance, and interaction with other projects. Many maintenance tasks, infrastructure changes, and planning of large changes especially benefits from maintainers being in one place and time zone. While the specific topics highly depend on the participants, we will prioritize topics which require highly synchronous collaboration, such as the CMake build system transition and API transitions. The [https://grass.osgeo.org/news/2025_05_27_grass_dev_summit_report/ 2025 event report] gives an overview of what was achieved last year. &lt;br /&gt;
&lt;br /&gt;
We do require participants to work on GRASS or connections to other projects. However, we leave them the freedom to work on what they think is the best contribution to the project given their skills and time available.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Agenda ==&lt;br /&gt;
&lt;br /&gt;
Agenda is forthcoming.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Saturday, July 11 ===&lt;br /&gt;
&lt;br /&gt;
Day of arrival. Contact organizers if you are interested in individualized program or helping with organization.&lt;br /&gt;
&lt;br /&gt;
=== Sunday, July 12 ===&lt;br /&gt;
=== Monday, July 13 ===&lt;br /&gt;
=== Tuesday, July 14 ===&lt;br /&gt;
=== Wednesday, July 15 ===&lt;br /&gt;
=== Thursday, July 16 ===&lt;br /&gt;
=== Friday, July 17 ===&lt;br /&gt;
=== Saturday, July 18 ===&lt;br /&gt;
=== Sunday, July 19 ===&lt;br /&gt;
&lt;br /&gt;
Day of departure.&lt;br /&gt;
&lt;br /&gt;
== Participation ==&lt;br /&gt;
&lt;br /&gt;
Please add your name here:&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable sortable&amp;quot;   border=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;4&amp;quot; rules=&amp;quot;all&amp;quot; style=&amp;quot;margin:1em 1em 1em 0; border:solid 1px #AAAAAA; border-collapse:collapse; background-color:#edf9c7; font-size:95%; empty-cells:show;&amp;quot; &lt;br /&gt;
!width=50px|'''Number'''&lt;br /&gt;
!width=130px|'''Participant '''&lt;br /&gt;
!width=100px|'''Country'''&lt;br /&gt;
!width=100px|'''Arrival'''&lt;br /&gt;
!width=100px|'''Departure'''&lt;br /&gt;
!'''Topics'''&lt;br /&gt;
!'''Notes'''&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
| [[User:wenzeslaus|Vaclav Petras]]&lt;br /&gt;
| United States &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
| [[User:Annakrat|Anna Petrasova]]&lt;br /&gt;
| United States &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
If you are arriving or departing on the days of the event, please specify the time, too.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Venue ==&lt;br /&gt;
The meeting will be hosted at [https://fmach.it/ Fondazione Edmund Mach] (FEM) in San Michele all'Adige, Trentino, Italy — about 15 km north of Trento. FEM is a research and education center with on-site facilities that allow participants to work, sleep, and eat in the same location.&lt;br /&gt;
&lt;br /&gt;
[https://maps.app.goo.gl/5YEuEts6qXvky7HD9 Map]&lt;br /&gt;
&lt;br /&gt;
=== Getting there ===&lt;br /&gt;
&lt;br /&gt;
San Michele all'Adige is reachable by train on the Trento–Bolzano line (San Michele all'Adige–Mezzocorona station), with frequent connections from Trento (~15 minutes) and Verona (~1 hour). The nearest airports are Verona (VRN), Venice Marco Polo (VCE) and Treviso (TSF), Milan Bergamo (BGY), Malpensa (MXP), and Linate (LIN), Bologna (BLQ), and Innsbruck (INN) in Austria. Trento is also the host city of FOSS4G Italy 2026 (July 9–11), making it convenient to combine both events.&lt;br /&gt;
&lt;br /&gt;
== Accommodation and Costs ==&lt;br /&gt;
&lt;br /&gt;
''Participation is free of charge''. However, participants should plan for the following costs:&lt;br /&gt;
&lt;br /&gt;
* Travel&lt;br /&gt;
* Lodging&lt;br /&gt;
&lt;br /&gt;
Participants can stay on-site at the FEM convitto (dormitory), keeping the community together for the full duration of the meeting:&lt;br /&gt;
&lt;br /&gt;
* €35 per person per night&lt;br /&gt;
* Double and triple rooms (triples include a small kitchen)&lt;br /&gt;
* A mandatory on-site supervisor is required at €200 per night (flat fee, shared across the group)&lt;br /&gt;
* Family members are welcome to stay in the dormitory as well&lt;br /&gt;
* [https://cif.fmach.it/content/download/2701/78358/file/brochure_convitto.pdf Brochure]&lt;br /&gt;
&lt;br /&gt;
For anyone preferring alternative lodging, hotels and B&amp;amp;Bs are available in San Michele and nearby Trento.&lt;br /&gt;
&lt;br /&gt;
Lunches on weekdays can be taken at the FEM canteen (mensa), located on the same campus. Details and pricing are being finalized.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Individual Preparation ==&lt;br /&gt;
&lt;br /&gt;
* Bring your own computer&lt;br /&gt;
* Bring {{wikipedia|AC power plugs and sockets|power adapter}} if needed (Italy: 230V, 50Hz, {{wikipedia|Europlug|Type C}}, {{wikipedia|Schuko|Type F}}, and {{wikipedia|AC power plugs and sockets: L|Type L}} sockets are common)&lt;br /&gt;
* Install git and the compiler tools, and come with a working GRASS development environment if possible. See [https://github.com/OSGeo/grass/blob/main/CONTRIBUTING.md here] for details.&lt;br /&gt;
&lt;br /&gt;
== FAQ ==&lt;br /&gt;
&lt;br /&gt;
* ''How was it last time?''&lt;br /&gt;
** Splendid! See [[GRASS Developer Summit Raleigh 2025]]!&lt;br /&gt;
* ''Is the GRASS Community Meeting for developers only?''&lt;br /&gt;
** No, the meeting is open to all users, supporters, contributors, power users and developers ''who want to make a meaningful contribution to the project''.&lt;br /&gt;
* ''Where can I get help and more information about the community meeting?''&lt;br /&gt;
** Contact local organizer [[User:Lucadelu|Luca Delucchi]] (&amp;lt;tt&amp;gt;&amp;lt;lucadeluge at gmail com&amp;gt;&amp;lt;/tt&amp;gt;) or [[User:wenzeslaus|Vaclav Petras]] (&amp;lt;tt&amp;gt;&amp;lt;wenzeslaus at gmail com&amp;gt;&amp;lt;/tt&amp;gt;) for budget questions.&lt;br /&gt;
&lt;br /&gt;
[[Category: Workshops]]&lt;br /&gt;
[[Category: Code Sprint]]&lt;br /&gt;
[[Category: 2024]]&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=PSC_Meeting_2026-02-13&amp;diff=28804</id>
		<title>PSC Meeting 2026-02-13</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=PSC_Meeting_2026-02-13&amp;diff=28804"/>
		<updated>2026-02-19T19:01:49Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: /* Minutes */ add link, remove one level of bullet points&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Participants ==&lt;br /&gt;
&lt;br /&gt;
* Anna&lt;br /&gt;
* Vashek&lt;br /&gt;
* Nicklas&lt;br /&gt;
* Markus&lt;br /&gt;
* Paulo&lt;br /&gt;
* Linda&lt;br /&gt;
* Helli&lt;br /&gt;
* Huidae&lt;br /&gt;
* Vero&lt;br /&gt;
* Luca (guest)&lt;br /&gt;
&lt;br /&gt;
== Agenda ==&lt;br /&gt;
&lt;br /&gt;
The topics proposed are:&lt;br /&gt;
&lt;br /&gt;
* Annual budget request submitted to OSGeo&lt;br /&gt;
* Community Meeting - San Michele: date, planning, budget requests&lt;br /&gt;
* Releases&lt;br /&gt;
* GSoC&lt;br /&gt;
* [https://github.com/OSGeo/grass/blob/main/CONTRIBUTING.md#ai-use-policy AI policy]&lt;br /&gt;
* Plan PSC elections/role changes for later this year (some of us have been in PSC since Feb 2021)&lt;br /&gt;
* Budget&lt;br /&gt;
** Where are we at time?&lt;br /&gt;
** Fundraising efforts&lt;br /&gt;
&lt;br /&gt;
== Minutes ==&lt;br /&gt;
&lt;br /&gt;
1. Budget&lt;br /&gt;
* OSGeo: &lt;br /&gt;
** The annual budget request was submitted. See https://wiki.osgeo.org/wiki/GRASS_Budget_2026. OSGeo has allocated $1,600 of the $2,000 originally requested. Budget for swags should be requested from the Marketing Committee, which is why they cut 400 USD.&lt;br /&gt;
* Numfocus&lt;br /&gt;
** Their interface for money is not as transparent as OpenCollective; there’s no public view of the contributors or the money we have in their bucket&lt;br /&gt;
** We've been with them for a year now, and they are still not our fiscal hosts in Redbubble and OpenCollective. They are also going through a transition.&lt;br /&gt;
&lt;br /&gt;
2. Community Meeting - San Michele&lt;br /&gt;
* OSGeo allocated 2500 USD, originally requested 5500 USD. See: https://wiki.osgeo.org/wiki/GRASS_Community_Meeting_2026:_Budget.&lt;br /&gt;
* By the beginning of March, Luca will meet FEM director, and we should then have an idea if we can stay at Convito in San Michele, so everything happens in San Michele, or if not, we search for university options in Trento, i.e., working rooms and housing.&lt;br /&gt;
* [Action] Create a wiki for the event.&lt;br /&gt;
* [Action] FOSSGIS e.V. request: will be handled by MN based on the one from [https://www.fossgis.de/wiki/Förderanträge/GRASS_GIS_Community_Meeting_2024 2024]&lt;br /&gt;
&lt;br /&gt;
3. Annual report 2025 &lt;br /&gt;
* Published as a [https://grass.osgeo.org/news/2025_12_31_annual_report/ news item] on the website&lt;br /&gt;
* It also served to meet the OSGeo requirement for budget request&lt;br /&gt;
* Nice new writing style with mentions to people actually doing things, as well as funding&lt;br /&gt;
&lt;br /&gt;
4. Releases&lt;br /&gt;
* MN, NL, and Edouard had a branching session&lt;br /&gt;
* New 8.5 branch: https://github.com/OSGeo/grass/tree/releasebranch_8_5&lt;br /&gt;
* Waiting for Martin Landa to create the branch on Windows server&lt;br /&gt;
* Jupyter integration should be ready soon and will be backported to 8.5, to be part of the release.&lt;br /&gt;
* CMake is mostly functional, even for addons (those that were added), but documentation cannot yet be built with CMake.&lt;br /&gt;
* NL requested us to test CMake: https://grasswiki.osgeo.org/wiki/Compile_and_Install_With_CMake&lt;br /&gt;
* HC: Fixing issues in CMake for Windows.&lt;br /&gt;
* FHS is not ready yet; there's a big PR waiting for after the release. &lt;br /&gt;
* Conda: HC is working on a conda package for Windows.&lt;br /&gt;
* Documentation: Materials for Mkdocs style is retiring, we should transition to a supported theme. Just maybe not for the 8.5 release.&lt;br /&gt;
&lt;br /&gt;
5. GSoC&lt;br /&gt;
* First year we participate under Numfocus if they are accepted&lt;br /&gt;
* We don’t know how many students we’ll get; it’s not clear how it works with Numfocus (is there a GSoC liaison/responsible person as in OSGeo?)&lt;br /&gt;
&lt;br /&gt;
6. GRASS website&lt;br /&gt;
* There's a new version of packages and dependencies soon to be deployed&lt;br /&gt;
* Build to be moved to github-actions. Then the artifact has to be uploaded to OSGeo server (limitation: it needs a token that expires yearly).&lt;br /&gt;
* Corey to be added to the list of GRASS people with access to the OSGeo server &lt;br /&gt;
** [Action] VP will invite him, then create the SAC ticket needed&lt;br /&gt;
* conda missing from the download page, [https://github.com/OSGeo/grass-website/issues/601 issue] created&lt;br /&gt;
* download logos were broken for &amp;gt; half a year (?) and nobody realized this, [https://github.com/OSGeo/grass-website/issues/602 issue] created&lt;br /&gt;
&lt;br /&gt;
7. AI policy &lt;br /&gt;
* Included in the main repo: https://github.com/OSGeo/grass/blob/main/CONTRIBUTING.md#ai-use-policy&lt;br /&gt;
* Simple - straightforward criteria that people might actually read, sort of guarantee/reference to close bad/meaningless PRs.&lt;br /&gt;
* Anna wrote it in response to the huge amount of PRs we are getting lately that are clearly created with AI, with no further understanding of GRASS.&lt;br /&gt;
* Many PRs are about tests, but they are not meaningful tests. It would be interesting to have instructions to create tests, so that contributors can train AI with instructions and create better tests.&lt;br /&gt;
** Corey is preparing instructions for Copilot, so it has context for code writing/reviewing.&lt;br /&gt;
&lt;br /&gt;
8. PSC elections&lt;br /&gt;
* Some PSC members have been in PSC since Feb 2021, and as we decided back then, [https://trac.osgeo.org/grass/wiki/PSC/Minutes/PSC_Meeting_20210203#Electiondebrief mandates should last max 6 years].&lt;br /&gt;
* [Action] Start planning by July, during the Community Meeting.&lt;br /&gt;
&lt;br /&gt;
9. Mailman &lt;br /&gt;
* Move translation, grass-gui and grass-stats lists to read-only mode; make a last post saying we are closing it, and ask SAC to do so (keeping their archives).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:PSC]]&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS_GSoC_Ideas_2026&amp;diff=28768</id>
		<title>GRASS GSoC Ideas 2026</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS_GSoC_Ideas_2026&amp;diff=28768"/>
		<updated>2026-02-03T18:15:31Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: /* Ideas */ make all project sizes large&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== About ==&lt;br /&gt;
Important: While we are still an OSGeo project, we changed our fiscal sponsor to [https://numfocus.org/ NumFOCUS].&lt;br /&gt;
&lt;br /&gt;
''As a result, GRASS participates in GSoC under the [https://numfocus.org/ NumFOCUS] umbrella organization.''&lt;br /&gt;
&lt;br /&gt;
Read more about our governance [https://grass.osgeo.org/about/governance/ on GRASS website].&lt;br /&gt;
&lt;br /&gt;
* [https://numfocus.org/programs/google-summer-code The NumFOCUS GSoC main page]&lt;br /&gt;
* [https://github.com/numfocus/gsoc/blob/master/CONTRIBUTING-contributors.md NumFOCUS guidelines for contributors].&lt;br /&gt;
* [https://summerofcode.withgoogle.com/ Official GSoC page at Google]&lt;br /&gt;
&lt;br /&gt;
== AI Tool Usage Policy ==&lt;br /&gt;
We acknowledge that applicants may use AI tools (like ChatGPT, Copilot, etc.) to assist with proposal writing and coding. However:&lt;br /&gt;
&lt;br /&gt;
* Your proposal should reflect your own understanding and voice. AI-generated &amp;quot;slop&amp;quot; (overly generic or regurgitated content) is easy to spot and will hurt your application.&lt;br /&gt;
* We evaluate applications primarily on GitHub contributions and communication with the GRASS community, not just proposal polish.&lt;br /&gt;
* Show us you understand the project through high-quality pull requests on GitHub.&lt;br /&gt;
* Disclose AI usage: If you use AI tools in your proposal or code contributions, please disclose the extent to which you used them (e.g., for brainstorming, proofreading, code suggestions, etc.).&lt;br /&gt;
&lt;br /&gt;
== Ideas ==&lt;br /&gt;
If you are a student you can suggest a new idea or pick up an existing one. In any case write about it to [https://discourse.osgeo.org/c/grass/developer/61 OSGeo Discourse forum for GRASS developers], [https://github.com/OSGeo/grass/discussions GitHub Discussions], or [https://gitter.im/grassgis/community Gitter].&lt;br /&gt;
&lt;br /&gt;
You are invited as well to have a close look at ideas from previous years ([https://trac.osgeo.org/grass/wiki/GSoC/2014 2014], [https://trac.osgeo.org/grass/wiki/GSoC/2015 2015], [https://trac.osgeo.org/grass/wiki/GSoC/2016 2016],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2017 2017],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2018 2018],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2019 2019],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2020 2020],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2021 2021],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2022 2022],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2023 2023])&lt;br /&gt;
which have not yet been implemented.&lt;br /&gt;
You can also look at accepted GRASS GSoC [https://trac.osgeo.org/grass/wiki/GSoC projects from previous years] for an idea of scope.''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Parallelization of existing tools ===&lt;br /&gt;
&lt;br /&gt;
There are several tools that would benefit from parallelization with OpenMP, e.g. r.texture, r.fill.stats, r/v.surf.idw, r.viewshed, v.to.rast, r.grow.distance, v.surf.bspline, r.proj, ...&lt;br /&gt;
For overview of current state, see [[Raster_Parallelization_with_OpenMP]].&lt;br /&gt;
&lt;br /&gt;
* Requirements: familiarity with C, OpenMP&lt;br /&gt;
* Mentor: Huidae Cho&lt;br /&gt;
* Co-mentor: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Rating: difficult&lt;br /&gt;
* Expected Outcomes: parallelized 2-5 tools, depending on complexity&lt;br /&gt;
* Test of skills (one or more):&lt;br /&gt;
** Address https://github.com/OSGeo/grass/issues/5776 (carefully read the existing conversation in the issue and linked PR)&lt;br /&gt;
** Pick a tool and develop prototype implementation of the parallelization.&lt;br /&gt;
&lt;br /&gt;
=== Improve GRASS user experience in Jupyter Notebook ===&lt;br /&gt;
[[File:Jupyter_interactive_viewshed.png|500px|thumb|right|InteractiveMap in grass.jupyter library]]&lt;br /&gt;
Python package [https://grass.osgeo.org/grass-stable/manuals/libpython/grass.jupyter.html grass.jupyter] was developed during [https://trac.osgeo.org/grass/wiki/GSoC/2021/JupyterAndGRASS GSoC 2021] to simplify running GRASS from Jupyter Notebooks and displaying data. This project could focus on adding features such as better symbology handling and adding legend to InteractiveMap and better integration with matplotlib.&lt;br /&gt;
&lt;br /&gt;
* Requirements: Python&lt;br /&gt;
* Mentor: Anna Petrasova&lt;br /&gt;
* Co-mentor: Vaclav Petras, Helena Mitasova, Corey White&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: improved user experience when using GRASS through notebooks&lt;br /&gt;
* Test of skills: write a test for [https://github.com/OSGeo/grass/tree/main/python/grass/jupyter grass.jupyter library] using python unittest or pytest, more info [https://grass.osgeo.org/grass-devel/manuals/libpython/gunittest_testing.html here] or rewrite some of the functions in grass.jupyter library using the new [https://grass.osgeo.org/grass-devel/manuals/python_intro.html#running-tools Tools API].&lt;br /&gt;
&lt;br /&gt;
=== Add JSON output to different tools ===&lt;br /&gt;
There are several tools in GRASS that would benefit from a JSON-formatted output.&lt;br /&gt;
Besides adding the JSON output, the work would also include adding tests and basic documentation.&lt;br /&gt;
* Requirements: C, Python&lt;br /&gt;
* Mentor: Vaclav Petras&lt;br /&gt;
* Co-mentor: Anna Petrasova, Corey White&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: 10-20 tools (depending on project length and complexity of the tool) tools with well tested JSON output&lt;br /&gt;
* Test of skills (pick one or more): &lt;br /&gt;
** https://github.com/OSGeo/grass/issues/6968&lt;br /&gt;
** https://github.com/OSGeo/grass/issues/6969&lt;br /&gt;
** https://github.com/OSGeo/grass/issues/6970&lt;br /&gt;
&lt;br /&gt;
=== Support writing tests with pytest ===&lt;br /&gt;
&lt;br /&gt;
* The current testing framework, ''[https://grass.osgeo.org/grass-stable/manuals/libpython/gunittest.html grass.gunittest]'', was written before migration to Git/GitHub and when long free runs in 3rd party services were unthinkable. Additionally, some no longer relevant goals were prioritized, such as independence on the current code, detailed custom HTML reports, success tracking over time, and high specialization towards GRASS-specifics.&lt;br /&gt;
* ''grass.gunittest'' is based on Python ''unittest'' package and many projects since then migrated to //pytest//, e.g., GDAL and Numpy. While ''unittest'' is inspired by Java's JUnit, ''pytest'' is designed to support writing small, readable tests, and uses plain `assert` statements instead of many different assert methods.&lt;br /&gt;
* Using ''pytest'' should lead to tests which feel more like Python scripts and to minimum of testing-specific code.&lt;br /&gt;
* An example issue of ''grass.gunittest'' is that it doesn't work well with tests of the main GRASS executable (prominence of `grass ... --exec` is yet another new thing which changed since ''grass.gunittest'' was designed).&lt;br /&gt;
* Two main things needed:&lt;br /&gt;
** Create general comparison functions from the ''grass.gunittest'' assert methods so that they can be used with pytest.&lt;br /&gt;
** Current grass.script.setup.init function and grass.script.core.create_location function don't work well in the context of a pytest test function. More  &lt;br /&gt;
* Additional things needed:&lt;br /&gt;
** Fixture for pytest to set up and tear down a GRASS session in a temporary mapset.&lt;br /&gt;
&lt;br /&gt;
* Requirements: Python&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Mentor: Vaclav Petras&lt;br /&gt;
* Co-mentor: Stefan Blumentrath&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: Convenient way of writing tests with pytest&lt;br /&gt;
* Test of skills: Fix failing tests and/or write new tests (more is better). Alternatively, addressing a smaller problem in the testing framework is a good task, too.&lt;br /&gt;
&lt;br /&gt;
=== Fix known code defects ===&lt;br /&gt;
&lt;br /&gt;
* Fix code defects (security or code quality) such as those reported by Coverity Scan.&lt;br /&gt;
* Mentors: Vaclav Petras&lt;br /&gt;
* Co-mentors: ?&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Requirements:&lt;br /&gt;
** Language: C&lt;br /&gt;
** Proposal: Define milestones which will be used during the evaluation.&lt;br /&gt;
* Expected outcomes:&lt;br /&gt;
** Reduction of issues by 70-100%.&lt;br /&gt;
** New tests for changed code if missing.&lt;br /&gt;
* Test and training tasks (complete more than one): Fix cppcheck issue.&lt;br /&gt;
&lt;br /&gt;
=== Subcommand CLI for GRASS ===&lt;br /&gt;
&lt;br /&gt;
* Make running of GRASS tools in command line as easy as possible.&lt;br /&gt;
** `grass run r.slope.aspect elevation=elevation.tiff slope=slope.tiff aspect=aspect.tiff`&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Requirements:&lt;br /&gt;
** Language: Python&lt;br /&gt;
** Proposal: Student needs to show sufficient understanding of data and project handling in GRASS. Furthermore, the proposal needs to present, at least, concrete formulation of ideas, identification of missing and existing parts, and new subcommands.&lt;br /&gt;
* Mentors: Vaclav Petras&lt;br /&gt;
* Co-mentors: Stefan Blumentrath, Corey White&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Expected outcomes:&lt;br /&gt;
** A subcommand which runs a GRASS tool on GeoTiff and GeoPackage in one step.&lt;br /&gt;
** A complete parity with the existing CLI.&lt;br /&gt;
** An underlying Python API which will be used to implement the CLI.&lt;br /&gt;
* Test and training tasks (complete one or more): Add a subcommand, sub-subcommand, or an option to the experimental interface (with tests).&lt;br /&gt;
** Add `--region` to set a temporary computational region for the execution, e.g. `--region=&amp;quot;raster=raster_name&amp;quot;`.&lt;br /&gt;
** Add `--import-raster=some/file.tiff` which imports (r.import) a raster file (same for vector and similarly for export).&lt;br /&gt;
** Add `--link-raster=some/file.tiff` which links (r.external) a raster file (same for vector and similarly for r.external.out).&lt;br /&gt;
&lt;br /&gt;
Current state:&lt;br /&gt;
&lt;br /&gt;
 # Reveals the existing subcommands&lt;br /&gt;
 PYTHONPATH=$(grass --config python-path) python -m grass.app --help&lt;br /&gt;
 # Allows running subset of commands&lt;br /&gt;
 grass run --help&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== STAC (SpatioTemporal Asset Catalog) Integration ===&lt;br /&gt;
&lt;br /&gt;
Create new import and export capabilities for GRASS which allow users to easily ingest data from STAC catalogs and export locations and mapsets as STAC specs for data discovery within STAC browsers. &lt;br /&gt;
&lt;br /&gt;
* Requirements: familiar with python, STAC specs&lt;br /&gt;
* Mentor: Corey White&lt;br /&gt;
* Co-mentor: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes: completion of t.in.stac and t.out.stac&lt;br /&gt;
* Test of skills:&lt;br /&gt;
** suggest or implement solution for implementing t.out.stac using the prototype STAC spec https://github.com/tomorrownow/grass-stac-extension &lt;br /&gt;
** suggest/implement solution for completing https://github.com/OSGeo/grass-addons/pull/802&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== GUI: Add space-time datasets support in Data Catalog ===&lt;br /&gt;
[[File:GUI_data_tab.png|400px|thumb|right|Data catalog]]&lt;br /&gt;
Currently GRASS Data Catalog shows only raster and vector maps. The goal of this project is to add support for space-time datasets. It is mainly space-time raster datasets. In the next phase of the project support for other types of space-time datasets (vector and 3D raster) could be added. Besides displaying space-time datasets in the layer tree, it is also about adding the equivalent functionality currently available for raster and vector layers from the context menu. &lt;br /&gt;
&lt;br /&gt;
* Requirements: familiar with Python&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Mentor: Martin Landa&lt;br /&gt;
* Co-mentor: Anna Petrasova&lt;br /&gt;
* Proposed by: Martin Landa&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes:  175 hours basic support for space-time raster datasets; 350 extended support also for other space-time datasets types (vector, 3D raster)&lt;br /&gt;
* Test of skills:&lt;br /&gt;
** suggest/implement solution for completing https://github.com/OSGeo/grass/issues/2599&lt;br /&gt;
&lt;br /&gt;
=== Add {your research idea} to GRASS ===&lt;br /&gt;
&lt;br /&gt;
* In general, you can propose any topic, but you can specifically propose integrating your research or research idea into GRASS.&lt;br /&gt;
* Requirements:&lt;br /&gt;
** Language:&lt;br /&gt;
*** Depends on the project, often Python, sometimes C.&lt;br /&gt;
*** Adding your latest ecological analysis &lt;br /&gt;
** Proposal:&lt;br /&gt;
*** Discuss relevance to GRASS.&lt;br /&gt;
*** Describe technical steps needed for integration.&lt;br /&gt;
*** Describe whether it is an addition of a tool (module) or a change in one of the libraries. If it is a tool, specify if it should be included in the core grass repository or in grass-addons repository and why.&lt;br /&gt;
*** Specify what research was done and what needs to be accomplished in order to have usable product at the end of summer.&lt;br /&gt;
*** Specify who will provide the research expertise.&lt;br /&gt;
* Project length: Large (350 hours)&lt;br /&gt;
* Rating: from low to hard&lt;br /&gt;
* Mentors:&lt;br /&gt;
** GRASS project will provide technical mentors, but it is up to the applicant to ensure the research part is mentored well. An exception may be granted to applicants which can demonstrate that the research is finished or that they have enough expertise themselves.&lt;br /&gt;
** Possible technical mentors: Vaclav Petras, Anna Petrasova&lt;br /&gt;
** Research mentors: Bring in an expert from your field, e.g., your academic advisor or project principal investigator (if needed).&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Expected outcome: Working feature which is integrated and merged at the end of the project.&lt;br /&gt;
* Test and training tasks:&lt;br /&gt;
** Create a test in Python for an existing tool in the grass-addons repository or in the core grass repository.&lt;br /&gt;
&lt;br /&gt;
=== Title of idea ===&lt;br /&gt;
&lt;br /&gt;
Description here&lt;br /&gt;
&lt;br /&gt;
* Requirements:&lt;br /&gt;
* Project length: (175 or 350 hours) &lt;br /&gt;
* Mentor: &lt;br /&gt;
* Proposed by: &lt;br /&gt;
* Rating: &lt;br /&gt;
* Expected Outcomes:  &lt;br /&gt;
* Test of skills: &lt;br /&gt;
* Other:&lt;br /&gt;
&lt;br /&gt;
== Tips for students ==&lt;br /&gt;
* Follow official [https://github.com/numfocus/gsoc/blob/master/CONTRIBUTING-contributors.md NumFOCUS guidelines].&lt;br /&gt;
* Include &amp;quot;GRASS&amp;quot; in the title of our idea to easily distinguish ideas and projects inside NumFOCUS.&lt;br /&gt;
* If you have your own ideas we encourage you to propose them. Explain them on the [https://discourse.osgeo.org/c/grass/developer/61 on our Discourse].&lt;br /&gt;
* Follow some good practices in your ideas and proposals:&lt;br /&gt;
** Stress why the project would be useful.&lt;br /&gt;
** Show that you know how you will proceed. That is, make sure that you can demonstrate that the proposal is feasible in the given time frame.&lt;br /&gt;
** Be specific in the implementation (or at least as specific as you can).&lt;br /&gt;
** Explain what the final product will look like and how it will work. You can add drawings or mock-ups.&lt;br /&gt;
** Explain how the idea relates to existing GRASS functions, features, and needs.&lt;br /&gt;
** Do not include steps such as &amp;quot;install GRASS&amp;quot;, &amp;quot;compile GRASS libraries (on my machine)&amp;quot;, &amp;quot;read about the API&amp;quot;. You should do this before applying to GSoC.&lt;br /&gt;
* Compile GRASS from source and prepare environment for development:&lt;br /&gt;
** Read [https://github.com/OSGeo/grass/blob/main/CONTRIBUTING.md CONTRIBUTING file].&lt;br /&gt;
* Prove your worth by being active on the [https://discourse.osgeo.org/c/grass/developer/61 GRASS Discourse] or other channels ([https://github.com/OSGeo/grass/discussions GitHub Discussions], fix some [https://github.com/OSGeo/grass/issues bugs], and/or implement some (smaller) features, or write some (simpler) GRASS module, and post it to mailing list. There's no better way to demonstrate your willingness and abilities. Do this before start you apply to GSoC. &lt;br /&gt;
* Also note that fixing existing bugs and/or implementing enhancements will be a part of student evaluation.&lt;br /&gt;
&lt;br /&gt;
{{GSoC}}&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS_GSoC_Ideas_2026&amp;diff=28767</id>
		<title>GRASS GSoC Ideas 2026</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS_GSoC_Ideas_2026&amp;diff=28767"/>
		<updated>2026-01-29T17:58:06Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: /* Improve GRASS user experience in Jupyter Notebook */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== About ==&lt;br /&gt;
Important: While we are still an OSGeo project, we changed our fiscal sponsor to [https://numfocus.org/ NumFOCUS].&lt;br /&gt;
&lt;br /&gt;
''As a result, GRASS participates in GSoC under the [https://numfocus.org/ NumFOCUS] umbrella organization.''&lt;br /&gt;
&lt;br /&gt;
Read more about our governance [https://grass.osgeo.org/about/governance/ on GRASS website].&lt;br /&gt;
&lt;br /&gt;
* [https://numfocus.org/programs/google-summer-code The NumFOCUS GSoC main page]&lt;br /&gt;
* [https://github.com/numfocus/gsoc/blob/master/CONTRIBUTING-contributors.md NumFOCUS guidelines for contributors].&lt;br /&gt;
* [https://summerofcode.withgoogle.com/ Official GSoC page at Google]&lt;br /&gt;
&lt;br /&gt;
== AI Tool Usage Policy ==&lt;br /&gt;
We acknowledge that applicants may use AI tools (like ChatGPT, Copilot, etc.) to assist with proposal writing and coding. However:&lt;br /&gt;
&lt;br /&gt;
* Your proposal should reflect your own understanding and voice. AI-generated &amp;quot;slop&amp;quot; (overly generic or regurgitated content) is easy to spot and will hurt your application.&lt;br /&gt;
* We evaluate applications primarily on GitHub contributions and communication with the GRASS community, not just proposal polish.&lt;br /&gt;
* Show us you understand the project through high-quality pull requests on GitHub.&lt;br /&gt;
* Disclose AI usage: If you use AI tools in your proposal or code contributions, please disclose the extent to which you used them (e.g., for brainstorming, proofreading, code suggestions, etc.).&lt;br /&gt;
&lt;br /&gt;
== Ideas ==&lt;br /&gt;
If you are a student you can suggest a new idea or pick up an existing one. In any case write about it to [https://discourse.osgeo.org/c/grass/developer/61 OSGeo Discourse forum for GRASS developers], [https://github.com/OSGeo/grass/discussions GitHub Discussions], or [https://gitter.im/grassgis/community Gitter].&lt;br /&gt;
&lt;br /&gt;
You are invited as well to have a close look at ideas from previous years ([https://trac.osgeo.org/grass/wiki/GSoC/2014 2014], [https://trac.osgeo.org/grass/wiki/GSoC/2015 2015], [https://trac.osgeo.org/grass/wiki/GSoC/2016 2016],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2017 2017],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2018 2018],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2019 2019],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2020 2020],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2021 2021],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2022 2022],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2023 2023])&lt;br /&gt;
which have not yet been implemented.&lt;br /&gt;
You can also look at accepted GRASS GSoC [https://trac.osgeo.org/grass/wiki/GSoC projects from previous years] for an idea of scope.''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Parallelization of existing tools ===&lt;br /&gt;
&lt;br /&gt;
There are several tools that would benefit from parallelization with OpenMP, e.g. r.texture, r.fill.stats, r/v.surf.idw, r.viewshed, v.to.rast, r.grow.distance, v.surf.bspline, r.proj, ...&lt;br /&gt;
For overview of current state, see [[Raster_Parallelization_with_OpenMP]].&lt;br /&gt;
&lt;br /&gt;
* Requirements: familiarity with C, OpenMP&lt;br /&gt;
* Mentor: Huidae Cho&lt;br /&gt;
* Co-mentor: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: difficult&lt;br /&gt;
* Expected Outcomes: parallelized 2-5 tools, depending on complexity&lt;br /&gt;
* Test of skills (one or more):&lt;br /&gt;
** Address https://github.com/OSGeo/grass/issues/5776 (carefully read the existing conversation in the issue and linked PR)&lt;br /&gt;
** Pick a tool and develop prototype implementation of the parallelization.&lt;br /&gt;
&lt;br /&gt;
=== Improve GRASS user experience in Jupyter Notebook ===&lt;br /&gt;
[[File:Jupyter_interactive_viewshed.png|500px|thumb|right|InteractiveMap in grass.jupyter library]]&lt;br /&gt;
Python package [https://grass.osgeo.org/grass-stable/manuals/libpython/grass.jupyter.html grass.jupyter] was developed during [https://trac.osgeo.org/grass/wiki/GSoC/2021/JupyterAndGRASS GSoC 2021] to simplify running GRASS from Jupyter Notebooks and displaying data. This project could focus on adding features such as better symbology handling and adding legend to InteractiveMap and better integration with matplotlib.&lt;br /&gt;
&lt;br /&gt;
* Requirements: Python&lt;br /&gt;
* Mentor: Anna Petrasova&lt;br /&gt;
* Co-mentor: Vaclav Petras, Helena Mitasova, Corey White&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: improved user experience when using GRASS through notebooks&lt;br /&gt;
* Test of skills: write a test for [https://github.com/OSGeo/grass/tree/main/python/grass/jupyter grass.jupyter library] using python unittest or pytest, more info [https://grass.osgeo.org/grass-devel/manuals/libpython/gunittest_testing.html here] or rewrite some of the functions in grass.jupyter library using the new [https://grass.osgeo.org/grass-devel/manuals/python_intro.html#running-tools Tools API].&lt;br /&gt;
&lt;br /&gt;
=== Add JSON output to different tools ===&lt;br /&gt;
There are several tools in GRASS that would benefit from a JSON-formatted output.&lt;br /&gt;
Besides adding the JSON output, the work would also include adding tests and basic documentation.&lt;br /&gt;
* Requirements: C, Python&lt;br /&gt;
* Mentor: Vaclav Petras&lt;br /&gt;
* Co-mentor: Anna Petrasova, Corey White&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: 10-20 tools (depending on project length and complexity of the tool) tools with well tested JSON output&lt;br /&gt;
* Test of skills (pick one or more): &lt;br /&gt;
** https://github.com/OSGeo/grass/issues/6968&lt;br /&gt;
** https://github.com/OSGeo/grass/issues/6969&lt;br /&gt;
** https://github.com/OSGeo/grass/issues/6970&lt;br /&gt;
&lt;br /&gt;
=== Support writing tests with pytest ===&lt;br /&gt;
&lt;br /&gt;
* The current testing framework, ''[https://grass.osgeo.org/grass-stable/manuals/libpython/gunittest.html grass.gunittest]'', was written before migration to Git/GitHub and when long free runs in 3rd party services were unthinkable. Additionally, some no longer relevant goals were prioritized, such as independence on the current code, detailed custom HTML reports, success tracking over time, and high specialization towards GRASS-specifics.&lt;br /&gt;
* ''grass.gunittest'' is based on Python ''unittest'' package and many projects since then migrated to //pytest//, e.g., GDAL and Numpy. While ''unittest'' is inspired by Java's JUnit, ''pytest'' is designed to support writing small, readable tests, and uses plain `assert` statements instead of many different assert methods.&lt;br /&gt;
* Using ''pytest'' should lead to tests which feel more like Python scripts and to minimum of testing-specific code.&lt;br /&gt;
* An example issue of ''grass.gunittest'' is that it doesn't work well with tests of the main GRASS executable (prominence of `grass ... --exec` is yet another new thing which changed since ''grass.gunittest'' was designed).&lt;br /&gt;
* Two main things needed:&lt;br /&gt;
** Create general comparison functions from the ''grass.gunittest'' assert methods so that they can be used with pytest.&lt;br /&gt;
** Current grass.script.setup.init function and grass.script.core.create_location function don't work well in the context of a pytest test function. More  &lt;br /&gt;
* Additional things needed:&lt;br /&gt;
** Fixture for pytest to set up and tear down a GRASS session in a temporary mapset.&lt;br /&gt;
&lt;br /&gt;
* Requirements: Python&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Mentor: Vaclav Petras&lt;br /&gt;
* Co-mentor: Stefan Blumentrath&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: Convenient way of writing tests with pytest&lt;br /&gt;
* Test of skills: Fix failing tests and/or write new tests (more is better). Alternatively, addressing a smaller problem in the testing framework is a good task, too.&lt;br /&gt;
&lt;br /&gt;
=== Fix known code defects ===&lt;br /&gt;
&lt;br /&gt;
* Fix code defects (security or code quality) such as those reported by Coverity Scan.&lt;br /&gt;
* Mentors: Vaclav Petras&lt;br /&gt;
* Co-mentors: ?&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Project length: 175 or 350 hours (flexible)&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Requirements:&lt;br /&gt;
** Language: C&lt;br /&gt;
** Proposal: Define milestones which will be used during the evaluation.&lt;br /&gt;
* Expected outcomes:&lt;br /&gt;
** Reduction of issues by 70-100%.&lt;br /&gt;
** New tests for changed code if missing.&lt;br /&gt;
* Test and training tasks (complete more than one): Fix cppcheck issue.&lt;br /&gt;
&lt;br /&gt;
=== Subcommand CLI for GRASS ===&lt;br /&gt;
&lt;br /&gt;
* Make running of GRASS tools in command line as easy as possible.&lt;br /&gt;
** `grass run r.slope.aspect elevation=elevation.tiff slope=slope.tiff aspect=aspect.tiff`&lt;br /&gt;
* Project length: 350 hours&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Requirements:&lt;br /&gt;
** Language: Python&lt;br /&gt;
** Proposal: Student needs to show sufficient understanding of data and project handling in GRASS. Furthermore, the proposal needs to present, at least, concrete formulation of ideas, identification of missing and existing parts, and new subcommands.&lt;br /&gt;
* Mentors: Vaclav Petras&lt;br /&gt;
* Co-mentors: Stefan Blumentrath, Corey White&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Expected outcomes:&lt;br /&gt;
** A subcommand which runs a GRASS tool on GeoTiff and GeoPackage in one step.&lt;br /&gt;
** A complete parity with the existing CLI.&lt;br /&gt;
** An underlying Python API which will be used to implement the CLI.&lt;br /&gt;
* Test and training tasks (complete one or more): Add a subcommand, sub-subcommand, or an option to the experimental interface (with tests).&lt;br /&gt;
** Add `--region` to set a temporary computational region for the execution, e.g. `--region=&amp;quot;raster=raster_name&amp;quot;`.&lt;br /&gt;
** Add `--import-raster=some/file.tiff` which imports (r.import) a raster file (same for vector and similarly for export).&lt;br /&gt;
** Add `--link-raster=some/file.tiff` which links (r.external) a raster file (same for vector and similarly for r.external.out).&lt;br /&gt;
&lt;br /&gt;
Current state:&lt;br /&gt;
&lt;br /&gt;
 # Reveals the existing subcommands&lt;br /&gt;
 PYTHONPATH=$(grass --config python-path) python -m grass.app --help&lt;br /&gt;
 # Allows running subset of commands&lt;br /&gt;
 grass run --help&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== STAC (SpatioTemporal Asset Catalog) Integration ===&lt;br /&gt;
&lt;br /&gt;
Create new import and export capabilities for GRASS which allow users to easily ingest data from STAC catalogs and export locations and mapsets as STAC specs for data discovery within STAC browsers. &lt;br /&gt;
&lt;br /&gt;
* Requirements: familiar with python, STAC specs&lt;br /&gt;
* Mentor: Corey White&lt;br /&gt;
* Co-mentor: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes: completion of t.in.stac and t.out.stac&lt;br /&gt;
* Test of skills:&lt;br /&gt;
** suggest or implement solution for implementing t.out.stac using the prototype STAC spec https://github.com/tomorrownow/grass-stac-extension &lt;br /&gt;
** suggest/implement solution for completing https://github.com/OSGeo/grass-addons/pull/802&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== GUI: Add space-time datasets support in Data Catalog ===&lt;br /&gt;
[[File:GUI_data_tab.png|400px|thumb|right|Data catalog]]&lt;br /&gt;
Currently GRASS Data Catalog shows only raster and vector maps. The goal of this project is to add support for space-time datasets. It is mainly space-time raster datasets. In the next phase of the project support for other types of space-time datasets (vector and 3D raster) could be added. Besides displaying space-time datasets in the layer tree, it is also about adding the equivalent functionality currently available for raster and vector layers from the context menu. &lt;br /&gt;
&lt;br /&gt;
* Requirements: familiar with Python&lt;br /&gt;
* Project length: 175 or 350 hours&lt;br /&gt;
* Mentor: Martin Landa&lt;br /&gt;
* Co-mentor: Anna Petrasova&lt;br /&gt;
* Proposed by: Martin Landa&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes:  175 hours basic support for space-time raster datasets; 350 extended support also for other space-time datasets types (vector, 3D raster)&lt;br /&gt;
* Test of skills:&lt;br /&gt;
** suggest/implement solution for completing https://github.com/OSGeo/grass/issues/2599&lt;br /&gt;
&lt;br /&gt;
=== Add {your research idea} to GRASS ===&lt;br /&gt;
&lt;br /&gt;
* In general, you can propose any topic, but you can specifically propose integrating your research or research idea into GRASS.&lt;br /&gt;
* Requirements:&lt;br /&gt;
** Language:&lt;br /&gt;
*** Depends on the project, often Python, sometimes C.&lt;br /&gt;
*** Adding your latest ecological analysis &lt;br /&gt;
** Proposal:&lt;br /&gt;
*** Discuss relevance to GRASS.&lt;br /&gt;
*** Describe technical steps needed for integration.&lt;br /&gt;
*** Describe whether it is an addition of a tool (module) or a change in one of the libraries. If it is a tool, specify if it should be included in the core grass repository or in grass-addons repository and why.&lt;br /&gt;
*** Specify what research was done and what needs to be accomplished in order to have usable product at the end of summer.&lt;br /&gt;
*** Specify who will provide the research expertise.&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: from low to hard&lt;br /&gt;
* Mentors:&lt;br /&gt;
** GRASS project will provide technical mentors, but it is up to the applicant to ensure the research part is mentored well. An exception may be granted to applicants which can demonstrate that the research is finished or that they have enough expertise themselves.&lt;br /&gt;
** Possible technical mentors: Vaclav Petras, Anna Petrasova&lt;br /&gt;
** Research mentors: Bring in an expert from your field, e.g., your academic advisor or project principal investigator (if needed).&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Expected outcome: Working feature which is integrated and merged at the end of the project.&lt;br /&gt;
* Test and training tasks:&lt;br /&gt;
** Create a test in Python for an existing tool in the grass-addons repository or in the core grass repository.&lt;br /&gt;
&lt;br /&gt;
=== Title of idea ===&lt;br /&gt;
&lt;br /&gt;
Description here&lt;br /&gt;
&lt;br /&gt;
* Requirements:&lt;br /&gt;
* Project length: (175 or 350 hours) &lt;br /&gt;
* Mentor: &lt;br /&gt;
* Proposed by: &lt;br /&gt;
* Rating: &lt;br /&gt;
* Expected Outcomes:  &lt;br /&gt;
* Test of skills: &lt;br /&gt;
* Other:&lt;br /&gt;
&lt;br /&gt;
== Tips for students ==&lt;br /&gt;
* Follow official [https://github.com/numfocus/gsoc/blob/master/CONTRIBUTING-contributors.md NumFOCUS guidelines].&lt;br /&gt;
* Include &amp;quot;GRASS&amp;quot; in the title of our idea to easily distinguish ideas and projects inside NumFOCUS.&lt;br /&gt;
* If you have your own ideas we encourage you to propose them. Explain them on the [https://discourse.osgeo.org/c/grass/developer/61 on our Discourse].&lt;br /&gt;
* Follow some good practices in your ideas and proposals:&lt;br /&gt;
** Stress why the project would be useful.&lt;br /&gt;
** Show that you know how you will proceed. That is, make sure that you can demonstrate that the proposal is feasible in the given time frame.&lt;br /&gt;
** Be specific in the implementation (or at least as specific as you can).&lt;br /&gt;
** Explain what the final product will look like and how it will work. You can add drawings or mock-ups.&lt;br /&gt;
** Explain how the idea relates to existing GRASS functions, features, and needs.&lt;br /&gt;
** Do not include steps such as &amp;quot;install GRASS&amp;quot;, &amp;quot;compile GRASS libraries (on my machine)&amp;quot;, &amp;quot;read about the API&amp;quot;. You should do this before applying to GSoC.&lt;br /&gt;
* Compile GRASS from source and prepare environment for development:&lt;br /&gt;
** Read [https://github.com/OSGeo/grass/blob/main/CONTRIBUTING.md CONTRIBUTING file].&lt;br /&gt;
* Prove your worth by being active on the [https://discourse.osgeo.org/c/grass/developer/61 GRASS Discourse] or other channels ([https://github.com/OSGeo/grass/discussions GitHub Discussions], fix some [https://github.com/OSGeo/grass/issues bugs], and/or implement some (smaller) features, or write some (simpler) GRASS module, and post it to mailing list. There's no better way to demonstrate your willingness and abilities. Do this before start you apply to GSoC. &lt;br /&gt;
* Also note that fixing existing bugs and/or implementing enhancements will be a part of student evaluation.&lt;br /&gt;
&lt;br /&gt;
{{GSoC}}&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS_GSoC_Ideas_2026&amp;diff=28765</id>
		<title>GRASS GSoC Ideas 2026</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS_GSoC_Ideas_2026&amp;diff=28765"/>
		<updated>2026-01-26T04:26:15Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: /* Improve GRASS user experience in Jupyter Notebook */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== About ==&lt;br /&gt;
Important: While we are still an OSGeo project, we changed our fiscal sponsor to [https://numfocus.org/ NumFOCUS].&lt;br /&gt;
&lt;br /&gt;
''As a result, GRASS participates in GSoC under the [https://numfocus.org/ NumFOCUS] umbrella organization.''&lt;br /&gt;
&lt;br /&gt;
Read more about our governance [https://grass.osgeo.org/about/governance/ on GRASS website].&lt;br /&gt;
&lt;br /&gt;
* [https://numfocus.org/programs/google-summer-code The NumFOCUS GSoC main page]&lt;br /&gt;
* [https://github.com/numfocus/gsoc/blob/master/CONTRIBUTING-contributors.md NumFOCUS guidelines for contributors].&lt;br /&gt;
* [https://summerofcode.withgoogle.com/ Official GSoC page at Google]&lt;br /&gt;
&lt;br /&gt;
== AI Tool Usage Policy ==&lt;br /&gt;
We acknowledge that applicants may use AI tools (like ChatGPT, Copilot, etc.) to assist with proposal writing and coding. However:&lt;br /&gt;
&lt;br /&gt;
* Your proposal should reflect your own understanding and voice. AI-generated &amp;quot;slop&amp;quot; (overly generic or regurgitated content) is easy to spot and will hurt your application.&lt;br /&gt;
* We evaluate applications primarily on GitHub contributions and communication with the GRASS community, not just proposal polish.&lt;br /&gt;
* Show us you understand the project through high-quality pull requests on GitHub.&lt;br /&gt;
* Disclose AI usage: If you use AI tools in your proposal or code contributions, please disclose the extent to which you used them (e.g., for brainstorming, proofreading, code suggestions, etc.).&lt;br /&gt;
&lt;br /&gt;
== Ideas ==&lt;br /&gt;
If you are a student you can suggest a new idea or pick up an existing one. In any case write about it to [https://discourse.osgeo.org/c/grass/developer/61 OSGeo Discourse forum for GRASS developers], [https://github.com/OSGeo/grass/discussions GitHub Discussions], or [https://gitter.im/grassgis/community Gitter].&lt;br /&gt;
&lt;br /&gt;
You are invited as well to have a close look at ideas from previous years ([https://trac.osgeo.org/grass/wiki/GSoC/2014 2014], [https://trac.osgeo.org/grass/wiki/GSoC/2015 2015], [https://trac.osgeo.org/grass/wiki/GSoC/2016 2016],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2017 2017],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2018 2018],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2019 2019],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2020 2020],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2021 2021],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2022 2022],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2023 2023])&lt;br /&gt;
which have not yet been implemented.&lt;br /&gt;
You can also look at accepted GRASS GSoC [https://trac.osgeo.org/grass/wiki/GSoC projects from previous years] for an idea of scope.''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Parallelization of existing tools ===&lt;br /&gt;
&lt;br /&gt;
There are several tools that would benefit from parallelization with OpenMP, e.g. r.texture, r.fill.stats, r/v.surf.idw, r.viewshed, v.to.rast, r.grow.distance, v.surf.bspline, r.proj, ...&lt;br /&gt;
For overview of current state, see [[Raster_Parallelization_with_OpenMP]].&lt;br /&gt;
&lt;br /&gt;
* Requirements: familiarity with C, OpenMP&lt;br /&gt;
* Mentor: Huidae Cho&lt;br /&gt;
* Co-mentor: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: difficult&lt;br /&gt;
* Expected Outcomes: parallelized 2-5 tools, depending on complexity&lt;br /&gt;
* Test of skills (one or more):&lt;br /&gt;
** Address https://github.com/OSGeo/grass/issues/5776 (carefully read the existing conversation in the issue and linked PR)&lt;br /&gt;
** Pick a tool and develop prototype implementation of the parallelization.&lt;br /&gt;
&lt;br /&gt;
=== Improve GRASS user experience in Jupyter Notebook ===&lt;br /&gt;
[[File:Jupyter_interactive_viewshed.png|500px|thumb|right|InteractiveMap in grass.jupyter library]]&lt;br /&gt;
Python package [https://grass.osgeo.org/grass-stable/manuals/libpython/grass.jupyter.html grass.jupyter] was developed during [https://trac.osgeo.org/grass/wiki/GSoC/2021/JupyterAndGRASS GSoC 2021] to simplify running GRASS from Jupyter Notebooks and displaying data. This project could focus on adding features such as better symbology handling and adding legend to InteractiveMap and better integration with matplotlib.&lt;br /&gt;
&lt;br /&gt;
* Requirements: Python&lt;br /&gt;
* Mentor: Anna Petrasova&lt;br /&gt;
* Co-mentor: Vaclav Petras, Helena Mitasova, Corey White&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: improved user experience when using GRASS through notebooks&lt;br /&gt;
* Test of skills: write a test for [https://github.com/OSGeo/grass/tree/main/python/grass/jupyter grass.jupyter library] using python unittest or pytest, more info [https://grass.osgeo.org/grass-devel/manuals/libpython/gunittest_testing.html here].&lt;br /&gt;
&lt;br /&gt;
=== Add JSON output to different tools ===&lt;br /&gt;
There are several tools in GRASS that would benefit from a JSON-formatted output.&lt;br /&gt;
Besides adding the JSON output, the work would also include adding tests and basic documentation.&lt;br /&gt;
* Requirements: C, Python&lt;br /&gt;
* Mentor: Vaclav Petras&lt;br /&gt;
* Co-mentor: Anna Petrasova, Corey White&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: 10-20 tools (depending on project length and complexity of the tool) tools with well tested JSON output&lt;br /&gt;
* Test of skills (pick one or more): &lt;br /&gt;
** https://github.com/OSGeo/grass/issues/6968&lt;br /&gt;
** https://github.com/OSGeo/grass/issues/6969&lt;br /&gt;
** https://github.com/OSGeo/grass/issues/6970&lt;br /&gt;
&lt;br /&gt;
=== Support writing tests with pytest ===&lt;br /&gt;
&lt;br /&gt;
* The current testing framework, ''[https://grass.osgeo.org/grass-stable/manuals/libpython/gunittest.html grass.gunittest]'', was written before migration to Git/GitHub and when long free runs in 3rd party services were unthinkable. Additionally, some no longer relevant goals were prioritized, such as independence on the current code, detailed custom HTML reports, success tracking over time, and high specialization towards GRASS-specifics.&lt;br /&gt;
* ''grass.gunittest'' is based on Python ''unittest'' package and many projects since then migrated to //pytest//, e.g., GDAL and Numpy. While ''unittest'' is inspired by Java's JUnit, ''pytest'' is designed to support writing small, readable tests, and uses plain `assert` statements instead of many different assert methods.&lt;br /&gt;
* Using ''pytest'' should lead to tests which feel more like Python scripts and to minimum of testing-specific code.&lt;br /&gt;
* An example issue of ''grass.gunittest'' is that it doesn't work well with tests of the main GRASS executable (prominence of `grass ... --exec` is yet another new thing which changed since ''grass.gunittest'' was designed).&lt;br /&gt;
* Two main things needed:&lt;br /&gt;
** Create general comparison functions from the ''grass.gunittest'' assert methods so that they can be used with pytest.&lt;br /&gt;
** Current grass.script.setup.init function and grass.script.core.create_location function don't work well in the context of a pytest test function. More  &lt;br /&gt;
* Additional things needed:&lt;br /&gt;
** Fixture for pytest to set up and tear down a GRASS session in a temporary mapset.&lt;br /&gt;
&lt;br /&gt;
* Requirements: Python&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Mentor: Vaclav Petras&lt;br /&gt;
* Co-mentor: Stefan Blumentrath&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: Convenient way of writing tests with pytest&lt;br /&gt;
* Test of skills: Fix failing tests and/or write new tests (more is better). Alternatively, addressing a smaller problem in the testing framework is a good task, too.&lt;br /&gt;
&lt;br /&gt;
=== Fix known code defects ===&lt;br /&gt;
&lt;br /&gt;
* Fix code defects (security or code quality) such as those reported by Coverity Scan.&lt;br /&gt;
* Mentors: Vaclav Petras&lt;br /&gt;
* Co-mentors: ?&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Project length: 175 or 350 hours (flexible)&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Requirements:&lt;br /&gt;
** Language: C&lt;br /&gt;
** Proposal: Define milestones which will be used during the evaluation.&lt;br /&gt;
* Expected outcomes:&lt;br /&gt;
** Reduction of issues by 70-100%.&lt;br /&gt;
** New tests for changed code if missing.&lt;br /&gt;
* Test and training tasks (complete more than one): Fix cppcheck issue.&lt;br /&gt;
&lt;br /&gt;
=== Subcommand CLI for GRASS ===&lt;br /&gt;
&lt;br /&gt;
* Make running of GRASS tools in command line as easy as possible.&lt;br /&gt;
** `grass run r.slope.aspect elevation=elevation.tiff slope=slope.tiff aspect=aspect.tiff`&lt;br /&gt;
* Project length: 350 hours&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Requirements:&lt;br /&gt;
** Language: Python&lt;br /&gt;
** Proposal: Student needs to show sufficient understanding of data and project handling in GRASS. Furthermore, the proposal needs to present, at least, concrete formulation of ideas, identification of missing and existing parts, and new subcommands.&lt;br /&gt;
* Mentors: Vaclav Petras&lt;br /&gt;
* Co-mentors: Stefan Blumentrath, Corey White&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Expected outcomes:&lt;br /&gt;
** A subcommand which runs a GRASS tool on GeoTiff and GeoPackage in one step.&lt;br /&gt;
** A complete parity with the existing CLI.&lt;br /&gt;
** An underlying Python API which will be used to implement the CLI.&lt;br /&gt;
* Test and training tasks (complete one or more): Add a subcommand, sub-subcommand, or an option to the experimental interface (with tests).&lt;br /&gt;
** Add `--region` to set a temporary computational region for the execution, e.g. `--region=&amp;quot;raster=raster_name&amp;quot;`.&lt;br /&gt;
** Add `--import-raster=some/file.tiff` which imports (r.import) a raster file (same for vector and similarly for export).&lt;br /&gt;
** Add `--link-raster=some/file.tiff` which links (r.external) a raster file (same for vector and similarly for r.external.out).&lt;br /&gt;
&lt;br /&gt;
Current state:&lt;br /&gt;
&lt;br /&gt;
 # Reveals the existing subcommands&lt;br /&gt;
 PYTHONPATH=$(grass --config python-path) python -m grass.app --help&lt;br /&gt;
 # Allows running subset of commands&lt;br /&gt;
 grass run --help&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== STAC (SpatioTemporal Asset Catalog) Integration ===&lt;br /&gt;
&lt;br /&gt;
Create new import and export capabilities for GRASS which allow users to easily ingest data from STAC catalogs and export locations and mapsets as STAC specs for data discovery within STAC browsers. &lt;br /&gt;
&lt;br /&gt;
* Requirements: familiar with python, STAC specs&lt;br /&gt;
* Mentor: Corey White&lt;br /&gt;
* Co-mentor: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes: completion of t.in.stac and t.out.stac&lt;br /&gt;
* Test of skills:&lt;br /&gt;
** suggest or implement solution for implementing t.out.stac using the prototype STAC spec https://github.com/tomorrownow/grass-stac-extension &lt;br /&gt;
** suggest/implement solution for completing https://github.com/OSGeo/grass-addons/pull/802&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== GUI: Add space-time datasets support in Data Catalog ===&lt;br /&gt;
[[File:GUI_data_tab.png|400px|thumb|right|Data catalog]]&lt;br /&gt;
Currently GRASS Data Catalog shows only raster and vector maps. The goal of this project is to add support for space-time datasets. It is mainly space-time raster datasets. In the next phase of the project support for other types of space-time datasets (vector and 3D raster) could be added. Besides displaying space-time datasets in the layer tree, it is also about adding the equivalent functionality currently available for raster and vector layers from the context menu. &lt;br /&gt;
&lt;br /&gt;
* Requirements: familiar with Python&lt;br /&gt;
* Project length: 175 or 350 hours&lt;br /&gt;
* Mentor: Martin Landa&lt;br /&gt;
* Co-mentor: Anna Petrasova&lt;br /&gt;
* Proposed by: Martin Landa&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes:  175 hours basic support for space-time raster datasets; 350 extended support also for other space-time datasets types (vector, 3D raster)&lt;br /&gt;
* Test of skills:&lt;br /&gt;
** suggest/implement solution for completing https://github.com/OSGeo/grass/issues/2599&lt;br /&gt;
&lt;br /&gt;
=== Add {your research idea} to GRASS ===&lt;br /&gt;
&lt;br /&gt;
* In general, you can propose any topic, but you can specifically propose integrating your research or research idea into GRASS.&lt;br /&gt;
* Requirements:&lt;br /&gt;
** Language:&lt;br /&gt;
*** Depends on the project, often Python, sometimes C.&lt;br /&gt;
*** Adding your latest ecological analysis &lt;br /&gt;
** Proposal:&lt;br /&gt;
*** Discuss relevance to GRASS.&lt;br /&gt;
*** Describe technical steps needed for integration.&lt;br /&gt;
*** Describe whether it is an addition of a tool (module) or a change in one of the libraries. If it is a tool, specify if it should be included in the core grass repository or in grass-addons repository and why.&lt;br /&gt;
*** Specify what research was done and what needs to be accomplished in order to have usable product at the end of summer.&lt;br /&gt;
*** Specify who will provide the research expertise.&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: from low to hard&lt;br /&gt;
* Mentors:&lt;br /&gt;
** GRASS project will provide technical mentors, but it is up to the applicant to ensure the research part is mentored well. An exception may be granted to applicants which can demonstrate that the research is finished or that they have enough expertise themselves.&lt;br /&gt;
** Possible technical mentors: Vaclav Petras, Anna Petrasova&lt;br /&gt;
** Research mentors: Bring in an expert from your field, e.g., your academic advisor or project principal investigator (if needed).&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Expected outcome: Working feature which is integrated and merged at the end of the project.&lt;br /&gt;
* Test and training tasks:&lt;br /&gt;
** Create a test in Python for an existing tool in the grass-addons repository or in the core grass repository.&lt;br /&gt;
&lt;br /&gt;
=== Title of idea ===&lt;br /&gt;
&lt;br /&gt;
Description here&lt;br /&gt;
&lt;br /&gt;
* Requirements:&lt;br /&gt;
* Project length: (175 or 350 hours) &lt;br /&gt;
* Mentor: &lt;br /&gt;
* Proposed by: &lt;br /&gt;
* Rating: &lt;br /&gt;
* Expected Outcomes:  &lt;br /&gt;
* Test of skills: &lt;br /&gt;
* Other:&lt;br /&gt;
&lt;br /&gt;
== Tips for students ==&lt;br /&gt;
* Follow official [https://github.com/numfocus/gsoc/blob/master/CONTRIBUTING-contributors.md NumFOCUS guidelines].&lt;br /&gt;
* Include &amp;quot;GRASS&amp;quot; in the title of our idea to easily distinguish ideas and projects inside NumFOCUS.&lt;br /&gt;
* If you have your own ideas we encourage you to propose them. Explain them on the [https://discourse.osgeo.org/c/grass/developer/61 on our Discourse].&lt;br /&gt;
* Follow some good practices in your ideas and proposals:&lt;br /&gt;
** Stress why the project would be useful.&lt;br /&gt;
** Show that you know how you will proceed. That is, make sure that you can demonstrate that the proposal is feasible in the given time frame.&lt;br /&gt;
** Be specific in the implementation (or at least as specific as you can).&lt;br /&gt;
** Explain what the final product will look like and how it will work. You can add drawings or mock-ups.&lt;br /&gt;
** Explain how the idea relates to existing GRASS functions, features, and needs.&lt;br /&gt;
** Do not include steps such as &amp;quot;install GRASS&amp;quot;, &amp;quot;compile GRASS libraries (on my machine)&amp;quot;, &amp;quot;read about the API&amp;quot;. You should do this before applying to GSoC.&lt;br /&gt;
* Compile GRASS from source and prepare environment for development:&lt;br /&gt;
** Read [https://github.com/OSGeo/grass/blob/main/CONTRIBUTING.md CONTRIBUTING file].&lt;br /&gt;
* Prove your worth by being active on the [https://discourse.osgeo.org/c/grass/developer/61 GRASS Discourse] or other channels ([https://github.com/OSGeo/grass/discussions GitHub Discussions], fix some [https://github.com/OSGeo/grass/issues bugs], and/or implement some (smaller) features, or write some (simpler) GRASS module, and post it to mailing list. There's no better way to demonstrate your willingness and abilities. Do this before start you apply to GSoC. &lt;br /&gt;
* Also note that fixing existing bugs and/or implementing enhancements will be a part of student evaluation.&lt;br /&gt;
&lt;br /&gt;
{{GSoC}}&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS_GSoC_Ideas_2026&amp;diff=28764</id>
		<title>GRASS GSoC Ideas 2026</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS_GSoC_Ideas_2026&amp;diff=28764"/>
		<updated>2026-01-26T04:15:24Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: /* Parallelization of existing tools */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== About ==&lt;br /&gt;
Important: While we are still an OSGeo project, we changed our fiscal sponsor to [https://numfocus.org/ NumFOCUS].&lt;br /&gt;
&lt;br /&gt;
''As a result, GRASS participates in GSoC under the [https://numfocus.org/ NumFOCUS] umbrella organization.''&lt;br /&gt;
&lt;br /&gt;
Read more about our governance [https://grass.osgeo.org/about/governance/ on GRASS website].&lt;br /&gt;
&lt;br /&gt;
* [https://numfocus.org/programs/google-summer-code The NumFOCUS GSoC main page]&lt;br /&gt;
* [https://github.com/numfocus/gsoc/blob/master/CONTRIBUTING-contributors.md NumFOCUS guidelines for contributors].&lt;br /&gt;
* [https://summerofcode.withgoogle.com/ Official GSoC page at Google]&lt;br /&gt;
&lt;br /&gt;
== AI Tool Usage Policy ==&lt;br /&gt;
We acknowledge that applicants may use AI tools (like ChatGPT, Copilot, etc.) to assist with proposal writing and coding. However:&lt;br /&gt;
&lt;br /&gt;
* Your proposal should reflect your own understanding and voice. AI-generated &amp;quot;slop&amp;quot; (overly generic or regurgitated content) is easy to spot and will hurt your application.&lt;br /&gt;
* We evaluate applications primarily on GitHub contributions and communication with the GRASS community, not just proposal polish.&lt;br /&gt;
* Show us you understand the project through high-quality pull requests on GitHub.&lt;br /&gt;
* Disclose AI usage: If you use AI tools in your proposal or code contributions, please disclose the extent to which you used them (e.g., for brainstorming, proofreading, code suggestions, etc.).&lt;br /&gt;
&lt;br /&gt;
== Ideas ==&lt;br /&gt;
If you are a student you can suggest a new idea or pick up an existing one. In any case write about it to [https://discourse.osgeo.org/c/grass/developer/61 OSGeo Discourse forum for GRASS developers], [https://github.com/OSGeo/grass/discussions GitHub Discussions], or [https://gitter.im/grassgis/community Gitter].&lt;br /&gt;
&lt;br /&gt;
You are invited as well to have a close look at ideas from previous years ([https://trac.osgeo.org/grass/wiki/GSoC/2014 2014], [https://trac.osgeo.org/grass/wiki/GSoC/2015 2015], [https://trac.osgeo.org/grass/wiki/GSoC/2016 2016],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2017 2017],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2018 2018],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2019 2019],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2020 2020],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2021 2021],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2022 2022],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2023 2023])&lt;br /&gt;
which have not yet been implemented.&lt;br /&gt;
You can also look at accepted GRASS GSoC [https://trac.osgeo.org/grass/wiki/GSoC projects from previous years] for an idea of scope.''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Parallelization of existing tools ===&lt;br /&gt;
&lt;br /&gt;
There are several tools that would benefit from parallelization with OpenMP, e.g. r.texture, r.fill.stats, r/v.surf.idw, r.viewshed, v.to.rast, r.grow.distance, v.surf.bspline, r.proj, ...&lt;br /&gt;
For overview of current state, see [[Raster_Parallelization_with_OpenMP]].&lt;br /&gt;
&lt;br /&gt;
* Requirements: familiarity with C, OpenMP&lt;br /&gt;
* Mentor: Huidae Cho&lt;br /&gt;
* Co-mentor: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: difficult&lt;br /&gt;
* Expected Outcomes: parallelized 2-5 tools, depending on complexity&lt;br /&gt;
* Test of skills (one or more):&lt;br /&gt;
** Address https://github.com/OSGeo/grass/issues/5776 (carefully read the existing conversation in the issue and linked PR)&lt;br /&gt;
** Pick a tool and develop prototype implementation of the parallelization.&lt;br /&gt;
&lt;br /&gt;
=== Improve GRASS user experience in Jupyter Notebook ===&lt;br /&gt;
[[File:Jupyter_interactive_viewshed.png|500px|thumb|right|InteractiveMap in grass.jupyter library]]&lt;br /&gt;
Python package [https://grass.osgeo.org/grass-stable/manuals/libpython/grass.jupyter.html grass.jupyter] was developed during [https://trac.osgeo.org/grass/wiki/GSoC/2021/JupyterAndGRASS GSoC 2021] to simplify running GRASS from Jupyter Notebooks and displaying data. This project could focus on adding features such as increasing interactivity of displayed data using ipyleaflet, adding API for managing projects and subprojects (i.e., locations/mapsets), creating GUI for commands, ...&lt;br /&gt;
&lt;br /&gt;
* Requirements: Python&lt;br /&gt;
* Mentor: Anna Petrasova&lt;br /&gt;
* Co-mentor: Vaclav Petras, Helena Mitasova, Corey White&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: improved user experience when using GRASS through notebooks&lt;br /&gt;
* Test of skills: https://github.com/OSGeo/grass/issues/3276, or write a test for [https://github.com/OSGeo/grass/tree/main/python/grass/jupyter grass.jupyter library] using python unittest or pytest, more info [https://grass.osgeo.org/grass-devel/manuals/libpython/gunittest_testing.html here].&lt;br /&gt;
&lt;br /&gt;
=== Add JSON output to different tools ===&lt;br /&gt;
There are several tools in GRASS that would benefit from a JSON-formatted output.&lt;br /&gt;
Besides adding the JSON output, the work would also include adding tests and basic documentation.&lt;br /&gt;
* Requirements: C, Python&lt;br /&gt;
* Mentor: Vaclav Petras&lt;br /&gt;
* Co-mentor: Anna Petrasova, Corey White&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: 10-20 tools (depending on project length and complexity of the tool) tools with well tested JSON output&lt;br /&gt;
* Test of skills (pick one or more): &lt;br /&gt;
** https://github.com/OSGeo/grass/issues/6968&lt;br /&gt;
** https://github.com/OSGeo/grass/issues/6969&lt;br /&gt;
** https://github.com/OSGeo/grass/issues/6970&lt;br /&gt;
&lt;br /&gt;
=== Support writing tests with pytest ===&lt;br /&gt;
&lt;br /&gt;
* The current testing framework, ''[https://grass.osgeo.org/grass-stable/manuals/libpython/gunittest.html grass.gunittest]'', was written before migration to Git/GitHub and when long free runs in 3rd party services were unthinkable. Additionally, some no longer relevant goals were prioritized, such as independence on the current code, detailed custom HTML reports, success tracking over time, and high specialization towards GRASS-specifics.&lt;br /&gt;
* ''grass.gunittest'' is based on Python ''unittest'' package and many projects since then migrated to //pytest//, e.g., GDAL and Numpy. While ''unittest'' is inspired by Java's JUnit, ''pytest'' is designed to support writing small, readable tests, and uses plain `assert` statements instead of many different assert methods.&lt;br /&gt;
* Using ''pytest'' should lead to tests which feel more like Python scripts and to minimum of testing-specific code.&lt;br /&gt;
* An example issue of ''grass.gunittest'' is that it doesn't work well with tests of the main GRASS executable (prominence of `grass ... --exec` is yet another new thing which changed since ''grass.gunittest'' was designed).&lt;br /&gt;
* Two main things needed:&lt;br /&gt;
** Create general comparison functions from the ''grass.gunittest'' assert methods so that they can be used with pytest.&lt;br /&gt;
** Current grass.script.setup.init function and grass.script.core.create_location function don't work well in the context of a pytest test function. More  &lt;br /&gt;
* Additional things needed:&lt;br /&gt;
** Fixture for pytest to set up and tear down a GRASS session in a temporary mapset.&lt;br /&gt;
&lt;br /&gt;
* Requirements: Python&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Mentor: Vaclav Petras&lt;br /&gt;
* Co-mentor: Stefan Blumentrath&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: Convenient way of writing tests with pytest&lt;br /&gt;
* Test of skills: Fix failing tests and/or write new tests (more is better). Alternatively, addressing a smaller problem in the testing framework is a good task, too.&lt;br /&gt;
&lt;br /&gt;
=== Fix known code defects ===&lt;br /&gt;
&lt;br /&gt;
* Fix code defects (security or code quality) such as those reported by Coverity Scan.&lt;br /&gt;
* Mentors: Vaclav Petras&lt;br /&gt;
* Co-mentors: ?&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Project length: 175 or 350 hours (flexible)&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Requirements:&lt;br /&gt;
** Language: C&lt;br /&gt;
** Proposal: Define milestones which will be used during the evaluation.&lt;br /&gt;
* Expected outcomes:&lt;br /&gt;
** Reduction of issues by 70-100%.&lt;br /&gt;
** New tests for changed code if missing.&lt;br /&gt;
* Test and training tasks (complete more than one): Fix cppcheck issue.&lt;br /&gt;
&lt;br /&gt;
=== Subcommand CLI for GRASS ===&lt;br /&gt;
&lt;br /&gt;
* Make running of GRASS tools in command line as easy as possible.&lt;br /&gt;
** `grass run r.slope.aspect elevation=elevation.tiff slope=slope.tiff aspect=aspect.tiff`&lt;br /&gt;
* Project length: 350 hours&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Requirements:&lt;br /&gt;
** Language: Python&lt;br /&gt;
** Proposal: Student needs to show sufficient understanding of data and project handling in GRASS. Furthermore, the proposal needs to present, at least, concrete formulation of ideas, identification of missing and existing parts, and new subcommands.&lt;br /&gt;
* Mentors: Vaclav Petras&lt;br /&gt;
* Co-mentors: Stefan Blumentrath, Corey White&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Expected outcomes:&lt;br /&gt;
** A subcommand which runs a GRASS tool on GeoTiff and GeoPackage in one step.&lt;br /&gt;
** A complete parity with the existing CLI.&lt;br /&gt;
** An underlying Python API which will be used to implement the CLI.&lt;br /&gt;
* Test and training tasks (complete one or more): Add a subcommand, sub-subcommand, or an option to the experimental interface (with tests).&lt;br /&gt;
** Add `--region` to set a temporary computational region for the execution, e.g. `--region=&amp;quot;raster=raster_name&amp;quot;`.&lt;br /&gt;
** Add `--import-raster=some/file.tiff` which imports (r.import) a raster file (same for vector and similarly for export).&lt;br /&gt;
** Add `--link-raster=some/file.tiff` which links (r.external) a raster file (same for vector and similarly for r.external.out).&lt;br /&gt;
&lt;br /&gt;
Current state:&lt;br /&gt;
&lt;br /&gt;
 # Reveals the existing subcommands&lt;br /&gt;
 PYTHONPATH=$(grass --config python-path) python -m grass.app --help&lt;br /&gt;
 # Allows running subset of commands&lt;br /&gt;
 grass run --help&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== STAC (SpatioTemporal Asset Catalog) Integration ===&lt;br /&gt;
&lt;br /&gt;
Create new import and export capabilities for GRASS which allow users to easily ingest data from STAC catalogs and export locations and mapsets as STAC specs for data discovery within STAC browsers. &lt;br /&gt;
&lt;br /&gt;
* Requirements: familiar with python, STAC specs&lt;br /&gt;
* Mentor: Corey White&lt;br /&gt;
* Co-mentor: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes: completion of t.in.stac and t.out.stac&lt;br /&gt;
* Test of skills:&lt;br /&gt;
** suggest or implement solution for implementing t.out.stac using the prototype STAC spec https://github.com/tomorrownow/grass-stac-extension &lt;br /&gt;
** suggest/implement solution for completing https://github.com/OSGeo/grass-addons/pull/802&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== GUI: Add space-time datasets support in Data Catalog ===&lt;br /&gt;
[[File:GUI_data_tab.png|400px|thumb|right|Data catalog]]&lt;br /&gt;
Currently GRASS Data Catalog shows only raster and vector maps. The goal of this project is to add support for space-time datasets. It is mainly space-time raster datasets. In the next phase of the project support for other types of space-time datasets (vector and 3D raster) could be added. Besides displaying space-time datasets in the layer tree, it is also about adding the equivalent functionality currently available for raster and vector layers from the context menu. &lt;br /&gt;
&lt;br /&gt;
* Requirements: familiar with Python&lt;br /&gt;
* Project length: 175 or 350 hours&lt;br /&gt;
* Mentor: Martin Landa&lt;br /&gt;
* Co-mentor: Anna Petrasova&lt;br /&gt;
* Proposed by: Martin Landa&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes:  175 hours basic support for space-time raster datasets; 350 extended support also for other space-time datasets types (vector, 3D raster)&lt;br /&gt;
* Test of skills:&lt;br /&gt;
** suggest/implement solution for completing https://github.com/OSGeo/grass/issues/2599&lt;br /&gt;
&lt;br /&gt;
=== Add {your research idea} to GRASS ===&lt;br /&gt;
&lt;br /&gt;
* In general, you can propose any topic, but you can specifically propose integrating your research or research idea into GRASS.&lt;br /&gt;
* Requirements:&lt;br /&gt;
** Language:&lt;br /&gt;
*** Depends on the project, often Python, sometimes C.&lt;br /&gt;
*** Adding your latest ecological analysis &lt;br /&gt;
** Proposal:&lt;br /&gt;
*** Discuss relevance to GRASS.&lt;br /&gt;
*** Describe technical steps needed for integration.&lt;br /&gt;
*** Describe whether it is an addition of a tool (module) or a change in one of the libraries. If it is a tool, specify if it should be included in the core grass repository or in grass-addons repository and why.&lt;br /&gt;
*** Specify what research was done and what needs to be accomplished in order to have usable product at the end of summer.&lt;br /&gt;
*** Specify who will provide the research expertise.&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: from low to hard&lt;br /&gt;
* Mentors:&lt;br /&gt;
** GRASS project will provide technical mentors, but it is up to the applicant to ensure the research part is mentored well. An exception may be granted to applicants which can demonstrate that the research is finished or that they have enough expertise themselves.&lt;br /&gt;
** Possible technical mentors: Vaclav Petras, Anna Petrasova&lt;br /&gt;
** Research mentors: Bring in an expert from your field, e.g., your academic advisor or project principal investigator (if needed).&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Expected outcome: Working feature which is integrated and merged at the end of the project.&lt;br /&gt;
* Test and training tasks:&lt;br /&gt;
** Create a test in Python for an existing tool in the grass-addons repository or in the core grass repository.&lt;br /&gt;
&lt;br /&gt;
=== Title of idea ===&lt;br /&gt;
&lt;br /&gt;
Description here&lt;br /&gt;
&lt;br /&gt;
* Requirements:&lt;br /&gt;
* Project length: (175 or 350 hours) &lt;br /&gt;
* Mentor: &lt;br /&gt;
* Proposed by: &lt;br /&gt;
* Rating: &lt;br /&gt;
* Expected Outcomes:  &lt;br /&gt;
* Test of skills: &lt;br /&gt;
* Other:&lt;br /&gt;
&lt;br /&gt;
== Tips for students ==&lt;br /&gt;
* Follow official [https://github.com/numfocus/gsoc/blob/master/CONTRIBUTING-contributors.md NumFOCUS guidelines].&lt;br /&gt;
* Include &amp;quot;GRASS&amp;quot; in the title of our idea to easily distinguish ideas and projects inside NumFOCUS.&lt;br /&gt;
* If you have your own ideas we encourage you to propose them. Explain them on the [https://discourse.osgeo.org/c/grass/developer/61 on our Discourse].&lt;br /&gt;
* Follow some good practices in your ideas and proposals:&lt;br /&gt;
** Stress why the project would be useful.&lt;br /&gt;
** Show that you know how you will proceed. That is, make sure that you can demonstrate that the proposal is feasible in the given time frame.&lt;br /&gt;
** Be specific in the implementation (or at least as specific as you can).&lt;br /&gt;
** Explain what the final product will look like and how it will work. You can add drawings or mock-ups.&lt;br /&gt;
** Explain how the idea relates to existing GRASS functions, features, and needs.&lt;br /&gt;
** Do not include steps such as &amp;quot;install GRASS&amp;quot;, &amp;quot;compile GRASS libraries (on my machine)&amp;quot;, &amp;quot;read about the API&amp;quot;. You should do this before applying to GSoC.&lt;br /&gt;
* Compile GRASS from source and prepare environment for development:&lt;br /&gt;
** Read [https://github.com/OSGeo/grass/blob/main/CONTRIBUTING.md CONTRIBUTING file].&lt;br /&gt;
* Prove your worth by being active on the [https://discourse.osgeo.org/c/grass/developer/61 GRASS Discourse] or other channels ([https://github.com/OSGeo/grass/discussions GitHub Discussions], fix some [https://github.com/OSGeo/grass/issues bugs], and/or implement some (smaller) features, or write some (simpler) GRASS module, and post it to mailing list. There's no better way to demonstrate your willingness and abilities. Do this before start you apply to GSoC. &lt;br /&gt;
* Also note that fixing existing bugs and/or implementing enhancements will be a part of student evaluation.&lt;br /&gt;
&lt;br /&gt;
{{GSoC}}&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS_GSoC_Ideas_2026&amp;diff=28763</id>
		<title>GRASS GSoC Ideas 2026</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS_GSoC_Ideas_2026&amp;diff=28763"/>
		<updated>2026-01-26T03:52:07Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: /* Add JSON output to different tools in C */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== About ==&lt;br /&gt;
Important: While we are still an OSGeo project, we changed our fiscal sponsor to [https://numfocus.org/ NumFOCUS].&lt;br /&gt;
&lt;br /&gt;
''As a result, GRASS participates in GSoC under the [https://numfocus.org/ NumFOCUS] umbrella organization.''&lt;br /&gt;
&lt;br /&gt;
Read more about our governance [https://grass.osgeo.org/about/governance/ on GRASS website].&lt;br /&gt;
&lt;br /&gt;
* [https://numfocus.org/programs/google-summer-code The NumFOCUS GSoC main page]&lt;br /&gt;
* [https://github.com/numfocus/gsoc/blob/master/CONTRIBUTING-contributors.md NumFOCUS guidelines for contributors].&lt;br /&gt;
* [https://summerofcode.withgoogle.com/ Official GSoC page at Google]&lt;br /&gt;
&lt;br /&gt;
== AI Tool Usage Policy ==&lt;br /&gt;
We acknowledge that applicants may use AI tools (like ChatGPT, Copilot, etc.) to assist with proposal writing and coding. However:&lt;br /&gt;
&lt;br /&gt;
* Your proposal should reflect your own understanding and voice. AI-generated &amp;quot;slop&amp;quot; (overly generic or regurgitated content) is easy to spot and will hurt your application.&lt;br /&gt;
* We evaluate applications primarily on GitHub contributions and communication with the GRASS community, not just proposal polish.&lt;br /&gt;
* Show us you understand the project through high-quality pull requests on GitHub.&lt;br /&gt;
* Disclose AI usage: If you use AI tools in your proposal or code contributions, please disclose the extent to which you used them (e.g., for brainstorming, proofreading, code suggestions, etc.).&lt;br /&gt;
&lt;br /&gt;
== Ideas ==&lt;br /&gt;
If you are a student you can suggest a new idea or pick up an existing one. In any case write about it to [https://discourse.osgeo.org/c/grass/developer/61 OSGeo Discourse forum for GRASS developers], [https://github.com/OSGeo/grass/discussions GitHub Discussions], or [https://gitter.im/grassgis/community Gitter].&lt;br /&gt;
&lt;br /&gt;
You are invited as well to have a close look at ideas from previous years ([https://trac.osgeo.org/grass/wiki/GSoC/2014 2014], [https://trac.osgeo.org/grass/wiki/GSoC/2015 2015], [https://trac.osgeo.org/grass/wiki/GSoC/2016 2016],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2017 2017],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2018 2018],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2019 2019],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2020 2020],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2021 2021],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2022 2022],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2023 2023])&lt;br /&gt;
which have not yet been implemented.&lt;br /&gt;
You can also look at accepted GRASS GSoC [https://trac.osgeo.org/grass/wiki/GSoC projects from previous years] for an idea of scope.''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Parallelization of existing tools ===&lt;br /&gt;
&lt;br /&gt;
There are several tools that would benefit from parallelization with OpenMP, e.g. r.texture, r.horizon, r.fill.stats, r/v.surf.idw, r.viewshed, v.to.rast, r.grow.distance, v.surf.bspline, ...&lt;br /&gt;
For overview of current state, see [[Raster_Parallelization_with_OpenMP]].&lt;br /&gt;
&lt;br /&gt;
* Requirements: familiarity with C, OpenMP&lt;br /&gt;
* Mentor: Huidae Cho&lt;br /&gt;
* Co-mentor: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes: parallelized module or modules, depending on complexity&lt;br /&gt;
&lt;br /&gt;
=== Improve GRASS user experience in Jupyter Notebook ===&lt;br /&gt;
[[File:Jupyter_interactive_viewshed.png|500px|thumb|right|InteractiveMap in grass.jupyter library]]&lt;br /&gt;
Python package [https://grass.osgeo.org/grass-stable/manuals/libpython/grass.jupyter.html grass.jupyter] was developed during [https://trac.osgeo.org/grass/wiki/GSoC/2021/JupyterAndGRASS GSoC 2021] to simplify running GRASS from Jupyter Notebooks and displaying data. This project could focus on adding features such as increasing interactivity of displayed data using ipyleaflet, adding API for managing projects and subprojects (i.e., locations/mapsets), creating GUI for commands, ...&lt;br /&gt;
&lt;br /&gt;
* Requirements: Python&lt;br /&gt;
* Mentor: Anna Petrasova&lt;br /&gt;
* Co-mentor: Vaclav Petras, Helena Mitasova, Corey White&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: improved user experience when using GRASS through notebooks&lt;br /&gt;
* Test of skills: https://github.com/OSGeo/grass/issues/3276, or write a test for [https://github.com/OSGeo/grass/tree/main/python/grass/jupyter grass.jupyter library] using python unittest or pytest, more info [https://grass.osgeo.org/grass-devel/manuals/libpython/gunittest_testing.html here].&lt;br /&gt;
&lt;br /&gt;
=== Add JSON output to different tools ===&lt;br /&gt;
There are several tools in GRASS that would benefit from a JSON-formatted output.&lt;br /&gt;
Besides adding the JSON output, the work would also include adding tests and basic documentation.&lt;br /&gt;
* Requirements: C, Python&lt;br /&gt;
* Mentor: Vaclav Petras&lt;br /&gt;
* Co-mentor: Anna Petrasova, Corey White&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: 10-20 tools (depending on project length and complexity of the tool) tools with well tested JSON output&lt;br /&gt;
* Test of skills (pick one or more): &lt;br /&gt;
** https://github.com/OSGeo/grass/issues/6968&lt;br /&gt;
** https://github.com/OSGeo/grass/issues/6969&lt;br /&gt;
** https://github.com/OSGeo/grass/issues/6970&lt;br /&gt;
&lt;br /&gt;
=== Support writing tests with pytest ===&lt;br /&gt;
&lt;br /&gt;
* The current testing framework, ''[https://grass.osgeo.org/grass-stable/manuals/libpython/gunittest.html grass.gunittest]'', was written before migration to Git/GitHub and when long free runs in 3rd party services were unthinkable. Additionally, some no longer relevant goals were prioritized, such as independence on the current code, detailed custom HTML reports, success tracking over time, and high specialization towards GRASS-specifics.&lt;br /&gt;
* ''grass.gunittest'' is based on Python ''unittest'' package and many projects since then migrated to //pytest//, e.g., GDAL and Numpy. While ''unittest'' is inspired by Java's JUnit, ''pytest'' is designed to support writing small, readable tests, and uses plain `assert` statements instead of many different assert methods.&lt;br /&gt;
* Using ''pytest'' should lead to tests which feel more like Python scripts and to minimum of testing-specific code.&lt;br /&gt;
* An example issue of ''grass.gunittest'' is that it doesn't work well with tests of the main GRASS executable (prominence of `grass ... --exec` is yet another new thing which changed since ''grass.gunittest'' was designed).&lt;br /&gt;
* Two main things needed:&lt;br /&gt;
** Create general comparison functions from the ''grass.gunittest'' assert methods so that they can be used with pytest.&lt;br /&gt;
** Current grass.script.setup.init function and grass.script.core.create_location function don't work well in the context of a pytest test function. More  &lt;br /&gt;
* Additional things needed:&lt;br /&gt;
** Fixture for pytest to set up and tear down a GRASS session in a temporary mapset.&lt;br /&gt;
&lt;br /&gt;
* Requirements: Python&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Mentor: Vaclav Petras&lt;br /&gt;
* Co-mentor: Stefan Blumentrath&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: Convenient way of writing tests with pytest&lt;br /&gt;
* Test of skills: Fix failing tests and/or write new tests (more is better). Alternatively, addressing a smaller problem in the testing framework is a good task, too.&lt;br /&gt;
&lt;br /&gt;
=== Fix known code defects ===&lt;br /&gt;
&lt;br /&gt;
* Fix code defects (security or code quality) such as those reported by Coverity Scan.&lt;br /&gt;
* Mentors: Vaclav Petras&lt;br /&gt;
* Co-mentors: ?&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Project length: 175 or 350 hours (flexible)&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Requirements:&lt;br /&gt;
** Language: C&lt;br /&gt;
** Proposal: Define milestones which will be used during the evaluation.&lt;br /&gt;
* Expected outcomes:&lt;br /&gt;
** Reduction of issues by 70-100%.&lt;br /&gt;
** New tests for changed code if missing.&lt;br /&gt;
* Test and training tasks (complete more than one): Fix cppcheck issue.&lt;br /&gt;
&lt;br /&gt;
=== Subcommand CLI for GRASS ===&lt;br /&gt;
&lt;br /&gt;
* Make running of GRASS tools in command line as easy as possible.&lt;br /&gt;
** `grass run r.slope.aspect elevation=elevation.tiff slope=slope.tiff aspect=aspect.tiff`&lt;br /&gt;
* Project length: 350 hours&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Requirements:&lt;br /&gt;
** Language: Python&lt;br /&gt;
** Proposal: Student needs to show sufficient understanding of data and project handling in GRASS. Furthermore, the proposal needs to present, at least, concrete formulation of ideas, identification of missing and existing parts, and new subcommands.&lt;br /&gt;
* Mentors: Vaclav Petras&lt;br /&gt;
* Co-mentors: Stefan Blumentrath, Corey White&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Expected outcomes:&lt;br /&gt;
** A subcommand which runs a GRASS tool on GeoTiff and GeoPackage in one step.&lt;br /&gt;
** A complete parity with the existing CLI.&lt;br /&gt;
** An underlying Python API which will be used to implement the CLI.&lt;br /&gt;
* Test and training tasks (complete one or more): Add a subcommand, sub-subcommand, or an option to the experimental interface (with tests).&lt;br /&gt;
** Add `--region` to set a temporary computational region for the execution, e.g. `--region=&amp;quot;raster=raster_name&amp;quot;`.&lt;br /&gt;
** Add `--import-raster=some/file.tiff` which imports (r.import) a raster file (same for vector and similarly for export).&lt;br /&gt;
** Add `--link-raster=some/file.tiff` which links (r.external) a raster file (same for vector and similarly for r.external.out).&lt;br /&gt;
&lt;br /&gt;
Current state:&lt;br /&gt;
&lt;br /&gt;
 # Reveals the existing subcommands&lt;br /&gt;
 PYTHONPATH=$(grass --config python-path) python -m grass.app --help&lt;br /&gt;
 # Allows running subset of commands&lt;br /&gt;
 grass run --help&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== STAC (SpatioTemporal Asset Catalog) Integration ===&lt;br /&gt;
&lt;br /&gt;
Create new import and export capabilities for GRASS which allow users to easily ingest data from STAC catalogs and export locations and mapsets as STAC specs for data discovery within STAC browsers. &lt;br /&gt;
&lt;br /&gt;
* Requirements: familiar with python, STAC specs&lt;br /&gt;
* Mentor: Corey White&lt;br /&gt;
* Co-mentor: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes: completion of t.in.stac and t.out.stac&lt;br /&gt;
* Test of skills:&lt;br /&gt;
** suggest or implement solution for implementing t.out.stac using the prototype STAC spec https://github.com/tomorrownow/grass-stac-extension &lt;br /&gt;
** suggest/implement solution for completing https://github.com/OSGeo/grass-addons/pull/802&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== GUI: Add space-time datasets support in Data Catalog ===&lt;br /&gt;
[[File:GUI_data_tab.png|400px|thumb|right|Data catalog]]&lt;br /&gt;
Currently GRASS Data Catalog shows only raster and vector maps. The goal of this project is to add support for space-time datasets. It is mainly space-time raster datasets. In the next phase of the project support for other types of space-time datasets (vector and 3D raster) could be added. Besides displaying space-time datasets in the layer tree, it is also about adding the equivalent functionality currently available for raster and vector layers from the context menu. &lt;br /&gt;
&lt;br /&gt;
* Requirements: familiar with Python&lt;br /&gt;
* Project length: 175 or 350 hours&lt;br /&gt;
* Mentor: Martin Landa&lt;br /&gt;
* Co-mentor: Anna Petrasova&lt;br /&gt;
* Proposed by: Martin Landa&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes:  175 hours basic support for space-time raster datasets; 350 extended support also for other space-time datasets types (vector, 3D raster)&lt;br /&gt;
* Test of skills:&lt;br /&gt;
** suggest/implement solution for completing https://github.com/OSGeo/grass/issues/2599&lt;br /&gt;
&lt;br /&gt;
=== Add {your research idea} to GRASS ===&lt;br /&gt;
&lt;br /&gt;
* In general, you can propose any topic, but you can specifically propose integrating your research or research idea into GRASS.&lt;br /&gt;
* Requirements:&lt;br /&gt;
** Language:&lt;br /&gt;
*** Depends on the project, often Python, sometimes C.&lt;br /&gt;
*** Adding your latest ecological analysis &lt;br /&gt;
** Proposal:&lt;br /&gt;
*** Discuss relevance to GRASS.&lt;br /&gt;
*** Describe technical steps needed for integration.&lt;br /&gt;
*** Describe whether it is an addition of a tool (module) or a change in one of the libraries. If it is a tool, specify if it should be included in the core grass repository or in grass-addons repository and why.&lt;br /&gt;
*** Specify what research was done and what needs to be accomplished in order to have usable product at the end of summer.&lt;br /&gt;
*** Specify who will provide the research expertise.&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: from low to hard&lt;br /&gt;
* Mentors:&lt;br /&gt;
** GRASS project will provide technical mentors, but it is up to the applicant to ensure the research part is mentored well. An exception may be granted to applicants which can demonstrate that the research is finished or that they have enough expertise themselves.&lt;br /&gt;
** Possible technical mentors: Vaclav Petras, Anna Petrasova&lt;br /&gt;
** Research mentors: Bring in an expert from your field, e.g., your academic advisor or project principal investigator (if needed).&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Expected outcome: Working feature which is integrated and merged at the end of the project.&lt;br /&gt;
* Test and training tasks:&lt;br /&gt;
** Create a test in Python for an existing tool in the grass-addons repository or in the core grass repository.&lt;br /&gt;
&lt;br /&gt;
=== Title of idea ===&lt;br /&gt;
&lt;br /&gt;
Description here&lt;br /&gt;
&lt;br /&gt;
* Requirements:&lt;br /&gt;
* Project length: (175 or 350 hours) &lt;br /&gt;
* Mentor: &lt;br /&gt;
* Proposed by: &lt;br /&gt;
* Rating: &lt;br /&gt;
* Expected Outcomes:  &lt;br /&gt;
* Test of skills: &lt;br /&gt;
* Other:&lt;br /&gt;
&lt;br /&gt;
== Tips for students ==&lt;br /&gt;
* Follow official [https://github.com/numfocus/gsoc/blob/master/CONTRIBUTING-contributors.md NumFOCUS guidelines].&lt;br /&gt;
* Include &amp;quot;GRASS&amp;quot; in the title of our idea to easily distinguish ideas and projects inside NumFOCUS.&lt;br /&gt;
* If you have your own ideas we encourage you to propose them. Explain them on the [https://discourse.osgeo.org/c/grass/developer/61 on our Discourse].&lt;br /&gt;
* Follow some good practices in your ideas and proposals:&lt;br /&gt;
** Stress why the project would be useful.&lt;br /&gt;
** Show that you know how you will proceed. That is, make sure that you can demonstrate that the proposal is feasible in the given time frame.&lt;br /&gt;
** Be specific in the implementation (or at least as specific as you can).&lt;br /&gt;
** Explain what the final product will look like and how it will work. You can add drawings or mock-ups.&lt;br /&gt;
** Explain how the idea relates to existing GRASS functions, features, and needs.&lt;br /&gt;
** Do not include steps such as &amp;quot;install GRASS&amp;quot;, &amp;quot;compile GRASS libraries (on my machine)&amp;quot;, &amp;quot;read about the API&amp;quot;. You should do this before applying to GSoC.&lt;br /&gt;
* Compile GRASS from source and prepare environment for development:&lt;br /&gt;
** Read [https://github.com/OSGeo/grass/blob/main/CONTRIBUTING.md CONTRIBUTING file].&lt;br /&gt;
* Prove your worth by being active on the [https://discourse.osgeo.org/c/grass/developer/61 GRASS Discourse] or other channels ([https://github.com/OSGeo/grass/discussions GitHub Discussions], fix some [https://github.com/OSGeo/grass/issues bugs], and/or implement some (smaller) features, or write some (simpler) GRASS module, and post it to mailing list. There's no better way to demonstrate your willingness and abilities. Do this before start you apply to GSoC. &lt;br /&gt;
* Also note that fixing existing bugs and/or implementing enhancements will be a part of student evaluation.&lt;br /&gt;
&lt;br /&gt;
{{GSoC}}&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS_GSoC_Ideas_2026&amp;diff=28759</id>
		<title>GRASS GSoC Ideas 2026</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS_GSoC_Ideas_2026&amp;diff=28759"/>
		<updated>2026-01-21T20:15:14Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: /* AI Tool Usage Policy */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== About ==&lt;br /&gt;
Important: While we are still an OSGeo project, we changed our fiscal sponsor to [https://numfocus.org/ NumFOCUS].&lt;br /&gt;
&lt;br /&gt;
''As a result, GRASS participates in GSoC under the [https://numfocus.org/ NumFOCUS] umbrella organization.''&lt;br /&gt;
&lt;br /&gt;
Read more about our governance [https://grass.osgeo.org/about/governance/ on GRASS website].&lt;br /&gt;
&lt;br /&gt;
* [https://numfocus.org/programs/google-summer-code The NumFOCUS GSoC main page]&lt;br /&gt;
* [https://github.com/numfocus/gsoc/blob/master/CONTRIBUTING-contributors.md NumFOCUS guidelines for contributors].&lt;br /&gt;
* [https://summerofcode.withgoogle.com/ Official GSoC page at Google]&lt;br /&gt;
&lt;br /&gt;
== AI Tool Usage Policy ==&lt;br /&gt;
We acknowledge that applicants may use AI tools (like ChatGPT, Copilot, etc.) to assist with proposal writing and coding. However:&lt;br /&gt;
&lt;br /&gt;
* Your proposal should reflect your own understanding and voice. AI-generated &amp;quot;slop&amp;quot; (overly generic or regurgitated content) is easy to spot and will hurt your application.&lt;br /&gt;
* We evaluate applications primarily on GitHub contributions and communication with the GRASS community, not just proposal polish.&lt;br /&gt;
* Show us you understand the project through high-quality pull requests on GitHub.&lt;br /&gt;
* Disclose AI usage: If you use AI tools in your proposal or code contributions, please disclose the extent to which you used them (e.g., for brainstorming, proofreading, code suggestions, etc.).&lt;br /&gt;
&lt;br /&gt;
== Ideas ==&lt;br /&gt;
If you are a student you can suggest a new idea or pick up an existing one. In any case write about it to [https://discourse.osgeo.org/c/grass/developer/61 OSGeo Discourse forum for GRASS developers], [https://github.com/OSGeo/grass/discussions GitHub Discussions], or [https://gitter.im/grassgis/community Gitter].&lt;br /&gt;
&lt;br /&gt;
You are invited as well to have a close look at ideas from previous years ([https://trac.osgeo.org/grass/wiki/GSoC/2014 2014], [https://trac.osgeo.org/grass/wiki/GSoC/2015 2015], [https://trac.osgeo.org/grass/wiki/GSoC/2016 2016],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2017 2017],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2018 2018],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2019 2019],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2020 2020],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2021 2021],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2022 2022],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2023 2023])&lt;br /&gt;
which have not yet been implemented.&lt;br /&gt;
You can also look at accepted GRASS GSoC [https://trac.osgeo.org/grass/wiki/GSoC projects from previous years] for an idea of scope.''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Parallelization of existing tools ===&lt;br /&gt;
&lt;br /&gt;
There are several tools that would benefit from parallelization with OpenMP, e.g. r.texture, r.horizon, r.fill.stats, r/v.surf.idw, r.viewshed, v.to.rast, r.grow.distance, v.surf.bspline, ...&lt;br /&gt;
For overview of current state, see [[Raster_Parallelization_with_OpenMP]].&lt;br /&gt;
&lt;br /&gt;
* Requirements: familiarity with C, OpenMP&lt;br /&gt;
* Mentor: Huidae Cho&lt;br /&gt;
* Co-mentor: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes: parallelized module or modules, depending on complexity&lt;br /&gt;
&lt;br /&gt;
=== Improve GRASS user experience in Jupyter Notebook ===&lt;br /&gt;
[[File:Jupyter_interactive_viewshed.png|500px|thumb|right|InteractiveMap in grass.jupyter library]]&lt;br /&gt;
Python package [https://grass.osgeo.org/grass-stable/manuals/libpython/grass.jupyter.html grass.jupyter] was developed during [https://trac.osgeo.org/grass/wiki/GSoC/2021/JupyterAndGRASS GSoC 2021] to simplify running GRASS from Jupyter Notebooks and displaying data. This project could focus on adding features such as increasing interactivity of displayed data using ipyleaflet, adding API for managing projects and subprojects (i.e., locations/mapsets), creating GUI for commands, ...&lt;br /&gt;
&lt;br /&gt;
* Requirements: Python&lt;br /&gt;
* Mentor: Anna Petrasova&lt;br /&gt;
* Co-mentor: Vaclav Petras, Helena Mitasova, Corey White&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: improved user experience when using GRASS through notebooks&lt;br /&gt;
* Test of skills: https://github.com/OSGeo/grass/issues/3276, or write a test for [https://github.com/OSGeo/grass/tree/main/python/grass/jupyter grass.jupyter library] using python unittest or pytest, more info [https://grass.osgeo.org/grass-devel/manuals/libpython/gunittest_testing.html here].&lt;br /&gt;
&lt;br /&gt;
=== Add JSON output to different tools in C ===&lt;br /&gt;
There are several tools in GRASS that would benefit from a JSON-formatted output, see [https://github.com/OSGeo/grass/issues/3020 this issue for a list of tools]. Besides adding the JSON output, the work would also include adding tests and basic documentation.&lt;br /&gt;
* Requirements: C, Python for tests&lt;br /&gt;
* Mentor: Vaclav Petras&lt;br /&gt;
* Co-mentor: Anna Petrasova, Corey White&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: one or more (depending on project length and complexity of the tool) tools with well tested JSON output&lt;br /&gt;
* Test of skills: Address https://github.com/OSGeo/grass/issues/1044 for r.surf.fractal&lt;br /&gt;
&lt;br /&gt;
=== Support writing tests with pytest ===&lt;br /&gt;
&lt;br /&gt;
* The current testing framework, ''[https://grass.osgeo.org/grass-stable/manuals/libpython/gunittest.html grass.gunittest]'', was written before migration to Git/GitHub and when long free runs in 3rd party services were unthinkable. Additionally, some no longer relevant goals were prioritized, such as independence on the current code, detailed custom HTML reports, success tracking over time, and high specialization towards GRASS-specifics.&lt;br /&gt;
* ''grass.gunittest'' is based on Python ''unittest'' package and many projects since then migrated to //pytest//, e.g., GDAL and Numpy. While ''unittest'' is inspired by Java's JUnit, ''pytest'' is designed to support writing small, readable tests, and uses plain `assert` statements instead of many different assert methods.&lt;br /&gt;
* Using ''pytest'' should lead to tests which feel more like Python scripts and to minimum of testing-specific code.&lt;br /&gt;
* An example issue of ''grass.gunittest'' is that it doesn't work well with tests of the main GRASS executable (prominence of `grass ... --exec` is yet another new thing which changed since ''grass.gunittest'' was designed).&lt;br /&gt;
* Two main things needed:&lt;br /&gt;
** Create general comparison functions from the ''grass.gunittest'' assert methods so that they can be used with pytest.&lt;br /&gt;
** Current grass.script.setup.init function and grass.script.core.create_location function don't work well in the context of a pytest test function. More  &lt;br /&gt;
* Additional things needed:&lt;br /&gt;
** Fixture for pytest to set up and tear down a GRASS session in a temporary mapset.&lt;br /&gt;
&lt;br /&gt;
* Requirements: Python&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Mentor: Vaclav Petras&lt;br /&gt;
* Co-mentor: Stefan Blumentrath&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: Convenient way of writing tests with pytest&lt;br /&gt;
* Test of skills: Fix failing tests and/or write new tests (more is better). Alternatively, addressing a smaller problem in the testing framework is a good task, too.&lt;br /&gt;
&lt;br /&gt;
=== New easy-to-use CLI and API for GRASS GIS ===&lt;br /&gt;
&lt;br /&gt;
* Make running of GRASS GIS modules as easy as it is to run GDAL commands.&lt;br /&gt;
** `grass run r.slope.aspect elevation=elevation.tiff slope=slope.tiff aspect=aspect.tiff`&lt;br /&gt;
** CLI like GDAL has.&lt;br /&gt;
** No GRASS Database, Location, Mapset to deal with.&lt;br /&gt;
** No import, export from user perspective.&lt;br /&gt;
** Reasonable defaults for things like region.&lt;br /&gt;
** CLI and API still allows user to specify any of the above.&lt;br /&gt;
* Idea page with details: wiki:GSoC/2021/EasyToUseCliAndApiIdea&lt;br /&gt;
* Project length: 350 hours&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Requirements:&lt;br /&gt;
** Language: Python&lt;br /&gt;
** Proposal: Student needs to show sufficient understanding of the GRASS GIS Database structure and significantly extend on text below in terms of more concrete formulation of ideas and identification of missing and existing parts.&lt;br /&gt;
* Mentors: Vaclav Petras&lt;br /&gt;
* Co-mentors: Stefan Blumentrath, Corey White&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Expected outcomes: New subcommand which easily runs a GRASS module on GeoTiff and GeoPackage.&lt;br /&gt;
* Test and training tasks:&lt;br /&gt;
** Solve one of the tickets linked at the idea page.&lt;br /&gt;
** Add features to `grass` executable interface:&lt;br /&gt;
*** Make it possible to associate `*.gxw` files with `grass` executable (#1204) or at least add `--gui-workspace` or preferably just recognize it in the command line (distinguish it from database/location/mapset).&lt;br /&gt;
** Extend `--exec` functionality:&lt;br /&gt;
*** Add `--region` to set a temporary computational region for the execution, e.g. `--region=&amp;quot;raster=raster_name&amp;quot;`&lt;br /&gt;
*** Add `--import-raster=some/file.tiff` which imports (r.import) a raster file (same for vector and similarly for export).&lt;br /&gt;
*** Add `--link-raster=some/file.tiff` which links (r.external) a raster file (same for vector and similarly for r.external.out).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== STAC (SpatioTemporal Asset Catalog) Integration ===&lt;br /&gt;
&lt;br /&gt;
Create new import and export capabilities for GRASS GIS which allow users to easily ingest data from STAC catalogs and export locations and mapsets as STAC specs for data discovery within STAC browsers. &lt;br /&gt;
&lt;br /&gt;
* Requirements: familiar with python, STAC specs&lt;br /&gt;
* Mentor: Corey White&lt;br /&gt;
* Co-mentor: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes: completion of t.in.stac and t.out.stac&lt;br /&gt;
* Test of skills:&lt;br /&gt;
** suggest or implement solution for implementing t.out.stac using the prototype STAC spec https://github.com/tomorrownow/grass-stac-extension &lt;br /&gt;
** suggest/implement solution for completing https://github.com/OSGeo/grass-addons/pull/802&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== GUI: Add space-time datasets support in Data Catalog ===&lt;br /&gt;
[[File:GUI_data_tab.png|400px|thumb|right|Data catalog]]&lt;br /&gt;
Currently GRASS Data Catalog shows only raster and vector maps. The goal of this project is to add support for space-time datasets. It is mainly space-time raster datasets. In the next phase of the project support for other types of space-time datasets (vector and 3D raster) could be added. Besides displaying space-time datasets in the layer tree, it is also about adding the equivalent functionality currently available for raster and vector layers from the context menu. &lt;br /&gt;
&lt;br /&gt;
* Requirements: familiar with Python&lt;br /&gt;
* Project length: 175 or 350 hours&lt;br /&gt;
* Mentor: Martin Landa&lt;br /&gt;
* Co-mentor: Anna Petrasova&lt;br /&gt;
* Proposed by: Martin Landa&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes:  175 hours basic support for space-time raster datasets; 350 extended support also for other space-time datasets types (vector, 3D raster)&lt;br /&gt;
* Test of skills:&lt;br /&gt;
** suggest/implement solution for completing https://github.com/OSGeo/grass/issues/2599&lt;br /&gt;
&lt;br /&gt;
=== Add {your research idea} to GRASS GIS ===&lt;br /&gt;
&lt;br /&gt;
* In general, you can propose any topic, but you can specifically propose integrating your research or research idea into GRASS GIS.&lt;br /&gt;
* Requirements:&lt;br /&gt;
** Language:&lt;br /&gt;
*** Depends on the project, often Python, sometimes C.&lt;br /&gt;
*** Adding your latest ecological analysis &lt;br /&gt;
** Proposal:&lt;br /&gt;
*** Discuss relevance to GRASS GIS.&lt;br /&gt;
*** Describe technical steps needed for integration.&lt;br /&gt;
*** Describe whether it is an addition of a tool (module) or a change in one of the libraries. If it is a tool, specify if it should be included in the core grass repository or in grass-addons repository and why.&lt;br /&gt;
*** Specify what research was done and what needs to be accomplished in order to have usable product at the end of summer.&lt;br /&gt;
*** Specify who will provide the research expertise.&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: from low to hard&lt;br /&gt;
* Mentors:&lt;br /&gt;
** GRASS GIS project will provide technical mentors, but it is up to the applicant to ensure the research part is mentored well. An exception may be granted to applicants which can demonstrate that the research is finished or that they have enough expertise themselves.&lt;br /&gt;
** Possible technical mentors: Vaclav Petras, Anna Petrasova&lt;br /&gt;
** Research mentors: Bring in an expert from your field, e.g., your academic advisor or project principal investigator (if needed).&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Expected outcome: Working feature which is integrated and merged at the end of the project.&lt;br /&gt;
* Test and training tasks:&lt;br /&gt;
** Create a test in Python for an existing tool in the grass-addons repository or in the core grass repository.&lt;br /&gt;
&lt;br /&gt;
=== Title of idea ===&lt;br /&gt;
&lt;br /&gt;
Description here&lt;br /&gt;
&lt;br /&gt;
* Requirements:&lt;br /&gt;
* Project length: (175 or 350 hours) &lt;br /&gt;
* Mentor: &lt;br /&gt;
* Proposed by: &lt;br /&gt;
* Rating: &lt;br /&gt;
* Expected Outcomes:  &lt;br /&gt;
* Test of skills: &lt;br /&gt;
* Other:&lt;br /&gt;
&lt;br /&gt;
== Tips for students ==&lt;br /&gt;
* Follow official [https://github.com/numfocus/gsoc/blob/master/CONTRIBUTING-contributors.md NumFOCUS guidelines].&lt;br /&gt;
* Include &amp;quot;GRASS&amp;quot; in the title of our idea to easily distinguish ideas and projects inside NumFOCUS.&lt;br /&gt;
* If you have your own ideas we encourage you to propose them. Explain them on the [https://discourse.osgeo.org/c/grass/developer/61 on our Discourse].&lt;br /&gt;
* Follow some good practices in your ideas and proposals:&lt;br /&gt;
** Stress why the project would be useful.&lt;br /&gt;
** Show that you know how you will proceed. That is, make sure that you can demonstrate that the proposal is feasible in the given time frame.&lt;br /&gt;
** Be specific in the implementation (or at least as specific as you can).&lt;br /&gt;
** Explain what the final product will look like and how it will work. You can add drawings or mock-ups.&lt;br /&gt;
** Explain how the idea relates to existing GRASS functions, features, and needs.&lt;br /&gt;
** Do not include steps such as &amp;quot;install GRASS&amp;quot;, &amp;quot;compile GRASS libraries (on my machine)&amp;quot;, &amp;quot;read about the API&amp;quot;. You should do this before applying to GSoC.&lt;br /&gt;
* Compile GRASS from source and prepare environment for development:&lt;br /&gt;
** Read [https://github.com/OSGeo/grass/blob/main/CONTRIBUTING.md CONTRIBUTING file].&lt;br /&gt;
* Prove your worth by being active on the [https://discourse.osgeo.org/c/grass/developer/61 GRASS Discourse] or other channels ([https://github.com/OSGeo/grass/discussions GitHub Discussions], fix some [https://github.com/OSGeo/grass/issues bugs], and/or implement some (smaller) features, or write some (simpler) GRASS module, and post it to mailing list. There's no better way to demonstrate your willingness and abilities. Do this before start you apply to GSoC. &lt;br /&gt;
* Also note that fixing existing bugs and/or implementing enhancements will be a part of student evaluation.&lt;br /&gt;
&lt;br /&gt;
{{GSoC}}&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS-Wiki&amp;diff=28758</id>
		<title>GRASS-Wiki</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS-Wiki&amp;diff=28758"/>
		<updated>2026-01-21T20:12:59Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: /* Welcome to the GRASS Wiki */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
[[Image:grasslogo_vector_small.png|110x123 px|right|link=https://grass.osgeo.org]]&lt;br /&gt;
&lt;br /&gt;
== Welcome to the GRASS Wiki ==&lt;br /&gt;
&lt;br /&gt;
This wiki is used by the GRASS community mainly for '''governance''', '''event planning''', and '''community coordination'''.&lt;br /&gt;
&lt;br /&gt;
Looking for how to use GRASS? Visit our main website and learning resources:&lt;br /&gt;
&lt;br /&gt;
* [https://grass.osgeo.org/ Main GRASS Website]&lt;br /&gt;
* [https://grass.osgeo.org/grass-stable/manuals/index.html Documentation &amp;amp; Manuals]&lt;br /&gt;
* [https://grass-tutorials.osgeo.org/ Tutorials &amp;amp; Learning Resources]&lt;br /&gt;
* [https://grass.osgeo.org/download/ Download GRASS]&lt;br /&gt;
* [https://github.com/OSGeo/grass GitHub Repository]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Support GRASS development: [https://grass.osgeo.org/contribute/sponsoring/ Donate here]'''&lt;br /&gt;
&lt;br /&gt;
== Governance ==&lt;br /&gt;
&lt;br /&gt;
* [[PSC|Project Steering Committee (PSC)]]&lt;br /&gt;
* [[PSC#PSC_meeting_agenda_and_minutes|Meeting Minutes]]&lt;br /&gt;
* [[GRASS_GIS_Budget_2025|2025 Budget]]&lt;br /&gt;
&lt;br /&gt;
== Latest Events &amp;amp; Planning ==&lt;br /&gt;
&lt;br /&gt;
* [[GRASS_GSoC_Ideas_2026|Google Summer of Code 2026]]&lt;br /&gt;
* [[Local GRASS Meetup at NC State Center for Geospatial Analytics 2025]]&lt;br /&gt;
* [[GRASS_Developer_Summit_Raleigh_2025|GRASS Developer Summit in Raleigh 2025]]&lt;br /&gt;
&lt;br /&gt;
== Relevant Categories ==&lt;br /&gt;
* [[:Category:GSoC|GSoC]]&lt;br /&gt;
* [[:Category:Code_Sprint|Code sprints]]&lt;br /&gt;
* [[:Category:Workshops|Workshops]]&lt;br /&gt;
* [[:Category:Conferences|Conferences]]&lt;br /&gt;
* [[:Category:Installation|Installation]]&lt;br /&gt;
* [[:Category:Budget|Budget]]&lt;br /&gt;
* [[Special:Categories|Further categories]]&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS-Wiki&amp;diff=28757</id>
		<title>GRASS-Wiki</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS-Wiki&amp;diff=28757"/>
		<updated>2026-01-21T20:12:04Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: /* Latest Events &amp;amp; Planning */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
[[Image:grasslogo_vector_small.png|110x123 px|right|link=https://grass.osgeo.org]]&lt;br /&gt;
&lt;br /&gt;
== Welcome to the GRASS Wiki ==&lt;br /&gt;
&lt;br /&gt;
This wiki is used by the GRASS community mainly for '''governance''', '''event planning''', and '''community coordination'''.&lt;br /&gt;
&lt;br /&gt;
Looking for how to use GRASS? Visit our main website and learning resources:&lt;br /&gt;
&lt;br /&gt;
* [https://grass.osgeo.org/ Main GRASS Website]&lt;br /&gt;
* [https://grass.osgeo.org/grass84/manuals/index.html Documentation &amp;amp; Manuals]&lt;br /&gt;
* [https://grass-tutorials.osgeo.org/ Tutorials &amp;amp; Learning Resources]&lt;br /&gt;
* [https://grass.osgeo.org/download/ Download GRASS]&lt;br /&gt;
* [https://github.com/OSGeo/grass GitHub Repository]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Support GRASS development: [https://grass.osgeo.org/contribute/sponsoring/ Donate here]'''&lt;br /&gt;
&lt;br /&gt;
== Governance ==&lt;br /&gt;
&lt;br /&gt;
* [[PSC|Project Steering Committee (PSC)]]&lt;br /&gt;
* [[PSC#PSC_meeting_agenda_and_minutes|Meeting Minutes]]&lt;br /&gt;
* [[GRASS_GIS_Budget_2025|2025 Budget]]&lt;br /&gt;
&lt;br /&gt;
== Latest Events &amp;amp; Planning ==&lt;br /&gt;
&lt;br /&gt;
* [[GRASS_GSoC_Ideas_2026|Google Summer of Code 2026]]&lt;br /&gt;
* [[Local GRASS Meetup at NC State Center for Geospatial Analytics 2025]]&lt;br /&gt;
* [[GRASS_Developer_Summit_Raleigh_2025|GRASS Developer Summit in Raleigh 2025]]&lt;br /&gt;
&lt;br /&gt;
== Relevant Categories ==&lt;br /&gt;
* [[:Category:GSoC|GSoC]]&lt;br /&gt;
* [[:Category:Code_Sprint|Code sprints]]&lt;br /&gt;
* [[:Category:Workshops|Workshops]]&lt;br /&gt;
* [[:Category:Conferences|Conferences]]&lt;br /&gt;
* [[:Category:Installation|Installation]]&lt;br /&gt;
* [[:Category:Budget|Budget]]&lt;br /&gt;
* [[Special:Categories|Further categories]]&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS_GSoC_Ideas_2026&amp;diff=28756</id>
		<title>GRASS GSoC Ideas 2026</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS_GSoC_Ideas_2026&amp;diff=28756"/>
		<updated>2026-01-21T20:11:07Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: /* AI Policy */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== About ==&lt;br /&gt;
Important: While we are still an OSGeo project, we changed our fiscal sponsor to [https://numfocus.org/ NumFOCUS].&lt;br /&gt;
&lt;br /&gt;
''As a result, GRASS participates in GSoC under the [https://numfocus.org/ NumFOCUS] umbrella organization.''&lt;br /&gt;
&lt;br /&gt;
Read more about our governance [https://grass.osgeo.org/about/governance/ on GRASS website].&lt;br /&gt;
&lt;br /&gt;
* [https://numfocus.org/programs/google-summer-code The NumFOCUS GSoC main page]&lt;br /&gt;
* [https://github.com/numfocus/gsoc/blob/master/CONTRIBUTING-contributors.md NumFOCUS guidelines for contributors].&lt;br /&gt;
* [https://summerofcode.withgoogle.com/ Official GSoC page at Google]&lt;br /&gt;
&lt;br /&gt;
== AI Tool Usage Policy ==&lt;br /&gt;
We acknowledge that applicants may use AI tools (like ChatGPT, Copilot, etc.) to assist with proposal writing and coding. However:&lt;br /&gt;
&lt;br /&gt;
* Your proposal should reflect your own understanding and voice. AI-generated &amp;quot;slop&amp;quot; (overly generic or regurgitated content) is easy to spot and will hurt your application.&lt;br /&gt;
* We evaluate applications primarily on GitHub contributions and communication with the GRASS community, not just proposal polish.&lt;br /&gt;
* Show us you understand the project through high-quality pull requests on GitHub.&lt;br /&gt;
&lt;br /&gt;
== Ideas ==&lt;br /&gt;
If you are a student you can suggest a new idea or pick up an existing one. In any case write about it to [https://discourse.osgeo.org/c/grass/developer/61 OSGeo Discourse forum for GRASS developers], [https://github.com/OSGeo/grass/discussions GitHub Discussions], or [https://gitter.im/grassgis/community Gitter].&lt;br /&gt;
&lt;br /&gt;
You are invited as well to have a close look at ideas from previous years ([https://trac.osgeo.org/grass/wiki/GSoC/2014 2014], [https://trac.osgeo.org/grass/wiki/GSoC/2015 2015], [https://trac.osgeo.org/grass/wiki/GSoC/2016 2016],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2017 2017],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2018 2018],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2019 2019],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2020 2020],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2021 2021],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2022 2022],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2023 2023])&lt;br /&gt;
which have not yet been implemented.&lt;br /&gt;
You can also look at accepted GRASS GSoC [https://trac.osgeo.org/grass/wiki/GSoC projects from previous years] for an idea of scope.''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Parallelization of existing tools ===&lt;br /&gt;
&lt;br /&gt;
There are several tools that would benefit from parallelization with OpenMP, e.g. r.texture, r.horizon, r.fill.stats, r/v.surf.idw, r.viewshed, v.to.rast, r.grow.distance, v.surf.bspline, ...&lt;br /&gt;
For overview of current state, see [[Raster_Parallelization_with_OpenMP]].&lt;br /&gt;
&lt;br /&gt;
* Requirements: familiarity with C, OpenMP&lt;br /&gt;
* Mentor: Huidae Cho&lt;br /&gt;
* Co-mentor: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes: parallelized module or modules, depending on complexity&lt;br /&gt;
&lt;br /&gt;
=== Improve GRASS user experience in Jupyter Notebook ===&lt;br /&gt;
[[File:Jupyter_interactive_viewshed.png|500px|thumb|right|InteractiveMap in grass.jupyter library]]&lt;br /&gt;
Python package [https://grass.osgeo.org/grass-stable/manuals/libpython/grass.jupyter.html grass.jupyter] was developed during [https://trac.osgeo.org/grass/wiki/GSoC/2021/JupyterAndGRASS GSoC 2021] to simplify running GRASS from Jupyter Notebooks and displaying data. This project could focus on adding features such as increasing interactivity of displayed data using ipyleaflet, adding API for managing projects and subprojects (i.e., locations/mapsets), creating GUI for commands, ...&lt;br /&gt;
&lt;br /&gt;
* Requirements: Python&lt;br /&gt;
* Mentor: Anna Petrasova&lt;br /&gt;
* Co-mentor: Vaclav Petras, Helena Mitasova, Corey White&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: improved user experience when using GRASS through notebooks&lt;br /&gt;
* Test of skills: https://github.com/OSGeo/grass/issues/3276, or write a test for [https://github.com/OSGeo/grass/tree/main/python/grass/jupyter grass.jupyter library] using python unittest or pytest, more info [https://grass.osgeo.org/grass-devel/manuals/libpython/gunittest_testing.html here].&lt;br /&gt;
&lt;br /&gt;
=== Add JSON output to different tools in C ===&lt;br /&gt;
There are several tools in GRASS that would benefit from a JSON-formatted output, see [https://github.com/OSGeo/grass/issues/3020 this issue for a list of tools]. Besides adding the JSON output, the work would also include adding tests and basic documentation.&lt;br /&gt;
* Requirements: C, Python for tests&lt;br /&gt;
* Mentor: Vaclav Petras&lt;br /&gt;
* Co-mentor: Anna Petrasova, Corey White&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: one or more (depending on project length and complexity of the tool) tools with well tested JSON output&lt;br /&gt;
* Test of skills: Address https://github.com/OSGeo/grass/issues/1044 for r.surf.fractal&lt;br /&gt;
&lt;br /&gt;
=== Support writing tests with pytest ===&lt;br /&gt;
&lt;br /&gt;
* The current testing framework, ''[https://grass.osgeo.org/grass-stable/manuals/libpython/gunittest.html grass.gunittest]'', was written before migration to Git/GitHub and when long free runs in 3rd party services were unthinkable. Additionally, some no longer relevant goals were prioritized, such as independence on the current code, detailed custom HTML reports, success tracking over time, and high specialization towards GRASS-specifics.&lt;br /&gt;
* ''grass.gunittest'' is based on Python ''unittest'' package and many projects since then migrated to //pytest//, e.g., GDAL and Numpy. While ''unittest'' is inspired by Java's JUnit, ''pytest'' is designed to support writing small, readable tests, and uses plain `assert` statements instead of many different assert methods.&lt;br /&gt;
* Using ''pytest'' should lead to tests which feel more like Python scripts and to minimum of testing-specific code.&lt;br /&gt;
* An example issue of ''grass.gunittest'' is that it doesn't work well with tests of the main GRASS executable (prominence of `grass ... --exec` is yet another new thing which changed since ''grass.gunittest'' was designed).&lt;br /&gt;
* Two main things needed:&lt;br /&gt;
** Create general comparison functions from the ''grass.gunittest'' assert methods so that they can be used with pytest.&lt;br /&gt;
** Current grass.script.setup.init function and grass.script.core.create_location function don't work well in the context of a pytest test function. More  &lt;br /&gt;
* Additional things needed:&lt;br /&gt;
** Fixture for pytest to set up and tear down a GRASS session in a temporary mapset.&lt;br /&gt;
&lt;br /&gt;
* Requirements: Python&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Mentor: Vaclav Petras&lt;br /&gt;
* Co-mentor: Stefan Blumentrath&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: Convenient way of writing tests with pytest&lt;br /&gt;
* Test of skills: Fix failing tests and/or write new tests (more is better). Alternatively, addressing a smaller problem in the testing framework is a good task, too.&lt;br /&gt;
&lt;br /&gt;
=== New easy-to-use CLI and API for GRASS GIS ===&lt;br /&gt;
&lt;br /&gt;
* Make running of GRASS GIS modules as easy as it is to run GDAL commands.&lt;br /&gt;
** `grass run r.slope.aspect elevation=elevation.tiff slope=slope.tiff aspect=aspect.tiff`&lt;br /&gt;
** CLI like GDAL has.&lt;br /&gt;
** No GRASS Database, Location, Mapset to deal with.&lt;br /&gt;
** No import, export from user perspective.&lt;br /&gt;
** Reasonable defaults for things like region.&lt;br /&gt;
** CLI and API still allows user to specify any of the above.&lt;br /&gt;
* Idea page with details: wiki:GSoC/2021/EasyToUseCliAndApiIdea&lt;br /&gt;
* Project length: 350 hours&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Requirements:&lt;br /&gt;
** Language: Python&lt;br /&gt;
** Proposal: Student needs to show sufficient understanding of the GRASS GIS Database structure and significantly extend on text below in terms of more concrete formulation of ideas and identification of missing and existing parts.&lt;br /&gt;
* Mentors: Vaclav Petras&lt;br /&gt;
* Co-mentors: Stefan Blumentrath, Corey White&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Expected outcomes: New subcommand which easily runs a GRASS module on GeoTiff and GeoPackage.&lt;br /&gt;
* Test and training tasks:&lt;br /&gt;
** Solve one of the tickets linked at the idea page.&lt;br /&gt;
** Add features to `grass` executable interface:&lt;br /&gt;
*** Make it possible to associate `*.gxw` files with `grass` executable (#1204) or at least add `--gui-workspace` or preferably just recognize it in the command line (distinguish it from database/location/mapset).&lt;br /&gt;
** Extend `--exec` functionality:&lt;br /&gt;
*** Add `--region` to set a temporary computational region for the execution, e.g. `--region=&amp;quot;raster=raster_name&amp;quot;`&lt;br /&gt;
*** Add `--import-raster=some/file.tiff` which imports (r.import) a raster file (same for vector and similarly for export).&lt;br /&gt;
*** Add `--link-raster=some/file.tiff` which links (r.external) a raster file (same for vector and similarly for r.external.out).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== STAC (SpatioTemporal Asset Catalog) Integration ===&lt;br /&gt;
&lt;br /&gt;
Create new import and export capabilities for GRASS GIS which allow users to easily ingest data from STAC catalogs and export locations and mapsets as STAC specs for data discovery within STAC browsers. &lt;br /&gt;
&lt;br /&gt;
* Requirements: familiar with python, STAC specs&lt;br /&gt;
* Mentor: Corey White&lt;br /&gt;
* Co-mentor: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes: completion of t.in.stac and t.out.stac&lt;br /&gt;
* Test of skills:&lt;br /&gt;
** suggest or implement solution for implementing t.out.stac using the prototype STAC spec https://github.com/tomorrownow/grass-stac-extension &lt;br /&gt;
** suggest/implement solution for completing https://github.com/OSGeo/grass-addons/pull/802&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== GUI: Add space-time datasets support in Data Catalog ===&lt;br /&gt;
[[File:GUI_data_tab.png|400px|thumb|right|Data catalog]]&lt;br /&gt;
Currently GRASS Data Catalog shows only raster and vector maps. The goal of this project is to add support for space-time datasets. It is mainly space-time raster datasets. In the next phase of the project support for other types of space-time datasets (vector and 3D raster) could be added. Besides displaying space-time datasets in the layer tree, it is also about adding the equivalent functionality currently available for raster and vector layers from the context menu. &lt;br /&gt;
&lt;br /&gt;
* Requirements: familiar with Python&lt;br /&gt;
* Project length: 175 or 350 hours&lt;br /&gt;
* Mentor: Martin Landa&lt;br /&gt;
* Co-mentor: Anna Petrasova&lt;br /&gt;
* Proposed by: Martin Landa&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes:  175 hours basic support for space-time raster datasets; 350 extended support also for other space-time datasets types (vector, 3D raster)&lt;br /&gt;
* Test of skills:&lt;br /&gt;
** suggest/implement solution for completing https://github.com/OSGeo/grass/issues/2599&lt;br /&gt;
&lt;br /&gt;
=== Add {your research idea} to GRASS GIS ===&lt;br /&gt;
&lt;br /&gt;
* In general, you can propose any topic, but you can specifically propose integrating your research or research idea into GRASS GIS.&lt;br /&gt;
* Requirements:&lt;br /&gt;
** Language:&lt;br /&gt;
*** Depends on the project, often Python, sometimes C.&lt;br /&gt;
*** Adding your latest ecological analysis &lt;br /&gt;
** Proposal:&lt;br /&gt;
*** Discuss relevance to GRASS GIS.&lt;br /&gt;
*** Describe technical steps needed for integration.&lt;br /&gt;
*** Describe whether it is an addition of a tool (module) or a change in one of the libraries. If it is a tool, specify if it should be included in the core grass repository or in grass-addons repository and why.&lt;br /&gt;
*** Specify what research was done and what needs to be accomplished in order to have usable product at the end of summer.&lt;br /&gt;
*** Specify who will provide the research expertise.&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: from low to hard&lt;br /&gt;
* Mentors:&lt;br /&gt;
** GRASS GIS project will provide technical mentors, but it is up to the applicant to ensure the research part is mentored well. An exception may be granted to applicants which can demonstrate that the research is finished or that they have enough expertise themselves.&lt;br /&gt;
** Possible technical mentors: Vaclav Petras, Anna Petrasova&lt;br /&gt;
** Research mentors: Bring in an expert from your field, e.g., your academic advisor or project principal investigator (if needed).&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Expected outcome: Working feature which is integrated and merged at the end of the project.&lt;br /&gt;
* Test and training tasks:&lt;br /&gt;
** Create a test in Python for an existing tool in the grass-addons repository or in the core grass repository.&lt;br /&gt;
&lt;br /&gt;
=== Title of idea ===&lt;br /&gt;
&lt;br /&gt;
Description here&lt;br /&gt;
&lt;br /&gt;
* Requirements:&lt;br /&gt;
* Project length: (175 or 350 hours) &lt;br /&gt;
* Mentor: &lt;br /&gt;
* Proposed by: &lt;br /&gt;
* Rating: &lt;br /&gt;
* Expected Outcomes:  &lt;br /&gt;
* Test of skills: &lt;br /&gt;
* Other:&lt;br /&gt;
&lt;br /&gt;
== Tips for students ==&lt;br /&gt;
* Follow official [https://github.com/numfocus/gsoc/blob/master/CONTRIBUTING-contributors.md NumFOCUS guidelines].&lt;br /&gt;
* Include &amp;quot;GRASS&amp;quot; in the title of our idea to easily distinguish ideas and projects inside NumFOCUS.&lt;br /&gt;
* If you have your own ideas we encourage you to propose them. Explain them on the [https://discourse.osgeo.org/c/grass/developer/61 on our Discourse].&lt;br /&gt;
* Follow some good practices in your ideas and proposals:&lt;br /&gt;
** Stress why the project would be useful.&lt;br /&gt;
** Show that you know how you will proceed. That is, make sure that you can demonstrate that the proposal is feasible in the given time frame.&lt;br /&gt;
** Be specific in the implementation (or at least as specific as you can).&lt;br /&gt;
** Explain what the final product will look like and how it will work. You can add drawings or mock-ups.&lt;br /&gt;
** Explain how the idea relates to existing GRASS functions, features, and needs.&lt;br /&gt;
** Do not include steps such as &amp;quot;install GRASS&amp;quot;, &amp;quot;compile GRASS libraries (on my machine)&amp;quot;, &amp;quot;read about the API&amp;quot;. You should do this before applying to GSoC.&lt;br /&gt;
* Compile GRASS from source and prepare environment for development:&lt;br /&gt;
** Read [https://github.com/OSGeo/grass/blob/main/CONTRIBUTING.md CONTRIBUTING file].&lt;br /&gt;
* Prove your worth by being active on the [https://discourse.osgeo.org/c/grass/developer/61 GRASS Discourse] or other channels ([https://github.com/OSGeo/grass/discussions GitHub Discussions], fix some [https://github.com/OSGeo/grass/issues bugs], and/or implement some (smaller) features, or write some (simpler) GRASS module, and post it to mailing list. There's no better way to demonstrate your willingness and abilities. Do this before start you apply to GSoC. &lt;br /&gt;
* Also note that fixing existing bugs and/or implementing enhancements will be a part of student evaluation.&lt;br /&gt;
&lt;br /&gt;
{{GSoC}}&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS_GSoC_Ideas_2026&amp;diff=28755</id>
		<title>GRASS GSoC Ideas 2026</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS_GSoC_Ideas_2026&amp;diff=28755"/>
		<updated>2026-01-21T16:09:17Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== About ==&lt;br /&gt;
Important: While we are still an OSGeo project, we changed our fiscal sponsor to [https://numfocus.org/ NumFOCUS].&lt;br /&gt;
&lt;br /&gt;
''As a result, GRASS participates in GSoC under the [https://numfocus.org/ NumFOCUS] umbrella organization.''&lt;br /&gt;
&lt;br /&gt;
Read more about our governance [https://grass.osgeo.org/about/governance/ on GRASS website].&lt;br /&gt;
&lt;br /&gt;
* [https://numfocus.org/programs/google-summer-code The NumFOCUS GSoC main page]&lt;br /&gt;
* [https://github.com/numfocus/gsoc/blob/master/CONTRIBUTING-contributors.md NumFOCUS guidelines for contributors].&lt;br /&gt;
* [https://summerofcode.withgoogle.com/ Official GSoC page at Google]&lt;br /&gt;
&lt;br /&gt;
== AI Policy ==&lt;br /&gt;
TBD&lt;br /&gt;
&lt;br /&gt;
== Ideas ==&lt;br /&gt;
If you are a student you can suggest a new idea or pick up an existing one. In any case write about it to [https://discourse.osgeo.org/c/grass/developer/61 OSGeo Discourse forum for GRASS developers], [https://github.com/OSGeo/grass/discussions GitHub Discussions], or [https://gitter.im/grassgis/community Gitter].&lt;br /&gt;
&lt;br /&gt;
You are invited as well to have a close look at ideas from previous years ([https://trac.osgeo.org/grass/wiki/GSoC/2014 2014], [https://trac.osgeo.org/grass/wiki/GSoC/2015 2015], [https://trac.osgeo.org/grass/wiki/GSoC/2016 2016],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2017 2017],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2018 2018],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2019 2019],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2020 2020],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2021 2021],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2022 2022],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2023 2023])&lt;br /&gt;
which have not yet been implemented.&lt;br /&gt;
You can also look at accepted GRASS GSoC [https://trac.osgeo.org/grass/wiki/GSoC projects from previous years] for an idea of scope.''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Parallelization of existing tools ===&lt;br /&gt;
&lt;br /&gt;
There are several tools that would benefit from parallelization with OpenMP, e.g. r.texture, r.horizon, r.fill.stats, r/v.surf.idw, r.viewshed, v.to.rast, r.grow.distance, v.surf.bspline, ...&lt;br /&gt;
For overview of current state, see [[Raster_Parallelization_with_OpenMP]].&lt;br /&gt;
&lt;br /&gt;
* Requirements: familiarity with C, OpenMP&lt;br /&gt;
* Mentor: Huidae Cho&lt;br /&gt;
* Co-mentor: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes: parallelized module or modules, depending on complexity&lt;br /&gt;
&lt;br /&gt;
=== Improve GRASS user experience in Jupyter Notebook ===&lt;br /&gt;
[[File:Jupyter_interactive_viewshed.png|500px|thumb|right|InteractiveMap in grass.jupyter library]]&lt;br /&gt;
Python package [https://grass.osgeo.org/grass-stable/manuals/libpython/grass.jupyter.html grass.jupyter] was developed during [https://trac.osgeo.org/grass/wiki/GSoC/2021/JupyterAndGRASS GSoC 2021] to simplify running GRASS from Jupyter Notebooks and displaying data. This project could focus on adding features such as increasing interactivity of displayed data using ipyleaflet, adding API for managing projects and subprojects (i.e., locations/mapsets), creating GUI for commands, ...&lt;br /&gt;
&lt;br /&gt;
* Requirements: Python&lt;br /&gt;
* Mentor: Anna Petrasova&lt;br /&gt;
* Co-mentor: Vaclav Petras, Helena Mitasova, Corey White&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: improved user experience when using GRASS through notebooks&lt;br /&gt;
* Test of skills: https://github.com/OSGeo/grass/issues/3276, or write a test for [https://github.com/OSGeo/grass/tree/main/python/grass/jupyter grass.jupyter library] using python unittest or pytest, more info [https://grass.osgeo.org/grass-devel/manuals/libpython/gunittest_testing.html here].&lt;br /&gt;
&lt;br /&gt;
=== Add JSON output to different tools in C ===&lt;br /&gt;
There are several tools in GRASS that would benefit from a JSON-formatted output, see [https://github.com/OSGeo/grass/issues/3020 this issue for a list of tools]. Besides adding the JSON output, the work would also include adding tests and basic documentation.&lt;br /&gt;
* Requirements: C, Python for tests&lt;br /&gt;
* Mentor: Vaclav Petras&lt;br /&gt;
* Co-mentor: Anna Petrasova, Corey White&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: one or more (depending on project length and complexity of the tool) tools with well tested JSON output&lt;br /&gt;
* Test of skills: Address https://github.com/OSGeo/grass/issues/1044 for r.surf.fractal&lt;br /&gt;
&lt;br /&gt;
=== Support writing tests with pytest ===&lt;br /&gt;
&lt;br /&gt;
* The current testing framework, ''[https://grass.osgeo.org/grass-stable/manuals/libpython/gunittest.html grass.gunittest]'', was written before migration to Git/GitHub and when long free runs in 3rd party services were unthinkable. Additionally, some no longer relevant goals were prioritized, such as independence on the current code, detailed custom HTML reports, success tracking over time, and high specialization towards GRASS-specifics.&lt;br /&gt;
* ''grass.gunittest'' is based on Python ''unittest'' package and many projects since then migrated to //pytest//, e.g., GDAL and Numpy. While ''unittest'' is inspired by Java's JUnit, ''pytest'' is designed to support writing small, readable tests, and uses plain `assert` statements instead of many different assert methods.&lt;br /&gt;
* Using ''pytest'' should lead to tests which feel more like Python scripts and to minimum of testing-specific code.&lt;br /&gt;
* An example issue of ''grass.gunittest'' is that it doesn't work well with tests of the main GRASS executable (prominence of `grass ... --exec` is yet another new thing which changed since ''grass.gunittest'' was designed).&lt;br /&gt;
* Two main things needed:&lt;br /&gt;
** Create general comparison functions from the ''grass.gunittest'' assert methods so that they can be used with pytest.&lt;br /&gt;
** Current grass.script.setup.init function and grass.script.core.create_location function don't work well in the context of a pytest test function. More  &lt;br /&gt;
* Additional things needed:&lt;br /&gt;
** Fixture for pytest to set up and tear down a GRASS session in a temporary mapset.&lt;br /&gt;
&lt;br /&gt;
* Requirements: Python&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Mentor: Vaclav Petras&lt;br /&gt;
* Co-mentor: Stefan Blumentrath&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: Convenient way of writing tests with pytest&lt;br /&gt;
* Test of skills: Fix failing tests and/or write new tests (more is better). Alternatively, addressing a smaller problem in the testing framework is a good task, too.&lt;br /&gt;
&lt;br /&gt;
=== New easy-to-use CLI and API for GRASS GIS ===&lt;br /&gt;
&lt;br /&gt;
* Make running of GRASS GIS modules as easy as it is to run GDAL commands.&lt;br /&gt;
** `grass run r.slope.aspect elevation=elevation.tiff slope=slope.tiff aspect=aspect.tiff`&lt;br /&gt;
** CLI like GDAL has.&lt;br /&gt;
** No GRASS Database, Location, Mapset to deal with.&lt;br /&gt;
** No import, export from user perspective.&lt;br /&gt;
** Reasonable defaults for things like region.&lt;br /&gt;
** CLI and API still allows user to specify any of the above.&lt;br /&gt;
* Idea page with details: wiki:GSoC/2021/EasyToUseCliAndApiIdea&lt;br /&gt;
* Project length: 350 hours&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Requirements:&lt;br /&gt;
** Language: Python&lt;br /&gt;
** Proposal: Student needs to show sufficient understanding of the GRASS GIS Database structure and significantly extend on text below in terms of more concrete formulation of ideas and identification of missing and existing parts.&lt;br /&gt;
* Mentors: Vaclav Petras&lt;br /&gt;
* Co-mentors: Stefan Blumentrath, Corey White&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Expected outcomes: New subcommand which easily runs a GRASS module on GeoTiff and GeoPackage.&lt;br /&gt;
* Test and training tasks:&lt;br /&gt;
** Solve one of the tickets linked at the idea page.&lt;br /&gt;
** Add features to `grass` executable interface:&lt;br /&gt;
*** Make it possible to associate `*.gxw` files with `grass` executable (#1204) or at least add `--gui-workspace` or preferably just recognize it in the command line (distinguish it from database/location/mapset).&lt;br /&gt;
** Extend `--exec` functionality:&lt;br /&gt;
*** Add `--region` to set a temporary computational region for the execution, e.g. `--region=&amp;quot;raster=raster_name&amp;quot;`&lt;br /&gt;
*** Add `--import-raster=some/file.tiff` which imports (r.import) a raster file (same for vector and similarly for export).&lt;br /&gt;
*** Add `--link-raster=some/file.tiff` which links (r.external) a raster file (same for vector and similarly for r.external.out).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== STAC (SpatioTemporal Asset Catalog) Integration ===&lt;br /&gt;
&lt;br /&gt;
Create new import and export capabilities for GRASS GIS which allow users to easily ingest data from STAC catalogs and export locations and mapsets as STAC specs for data discovery within STAC browsers. &lt;br /&gt;
&lt;br /&gt;
* Requirements: familiar with python, STAC specs&lt;br /&gt;
* Mentor: Corey White&lt;br /&gt;
* Co-mentor: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes: completion of t.in.stac and t.out.stac&lt;br /&gt;
* Test of skills:&lt;br /&gt;
** suggest or implement solution for implementing t.out.stac using the prototype STAC spec https://github.com/tomorrownow/grass-stac-extension &lt;br /&gt;
** suggest/implement solution for completing https://github.com/OSGeo/grass-addons/pull/802&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== GUI: Add space-time datasets support in Data Catalog ===&lt;br /&gt;
[[File:GUI_data_tab.png|400px|thumb|right|Data catalog]]&lt;br /&gt;
Currently GRASS Data Catalog shows only raster and vector maps. The goal of this project is to add support for space-time datasets. It is mainly space-time raster datasets. In the next phase of the project support for other types of space-time datasets (vector and 3D raster) could be added. Besides displaying space-time datasets in the layer tree, it is also about adding the equivalent functionality currently available for raster and vector layers from the context menu. &lt;br /&gt;
&lt;br /&gt;
* Requirements: familiar with Python&lt;br /&gt;
* Project length: 175 or 350 hours&lt;br /&gt;
* Mentor: Martin Landa&lt;br /&gt;
* Co-mentor: Anna Petrasova&lt;br /&gt;
* Proposed by: Martin Landa&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes:  175 hours basic support for space-time raster datasets; 350 extended support also for other space-time datasets types (vector, 3D raster)&lt;br /&gt;
* Test of skills:&lt;br /&gt;
** suggest/implement solution for completing https://github.com/OSGeo/grass/issues/2599&lt;br /&gt;
&lt;br /&gt;
=== Add {your research idea} to GRASS GIS ===&lt;br /&gt;
&lt;br /&gt;
* In general, you can propose any topic, but you can specifically propose integrating your research or research idea into GRASS GIS.&lt;br /&gt;
* Requirements:&lt;br /&gt;
** Language:&lt;br /&gt;
*** Depends on the project, often Python, sometimes C.&lt;br /&gt;
*** Adding your latest ecological analysis &lt;br /&gt;
** Proposal:&lt;br /&gt;
*** Discuss relevance to GRASS GIS.&lt;br /&gt;
*** Describe technical steps needed for integration.&lt;br /&gt;
*** Describe whether it is an addition of a tool (module) or a change in one of the libraries. If it is a tool, specify if it should be included in the core grass repository or in grass-addons repository and why.&lt;br /&gt;
*** Specify what research was done and what needs to be accomplished in order to have usable product at the end of summer.&lt;br /&gt;
*** Specify who will provide the research expertise.&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: from low to hard&lt;br /&gt;
* Mentors:&lt;br /&gt;
** GRASS GIS project will provide technical mentors, but it is up to the applicant to ensure the research part is mentored well. An exception may be granted to applicants which can demonstrate that the research is finished or that they have enough expertise themselves.&lt;br /&gt;
** Possible technical mentors: Vaclav Petras, Anna Petrasova&lt;br /&gt;
** Research mentors: Bring in an expert from your field, e.g., your academic advisor or project principal investigator (if needed).&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Expected outcome: Working feature which is integrated and merged at the end of the project.&lt;br /&gt;
* Test and training tasks:&lt;br /&gt;
** Create a test in Python for an existing tool in the grass-addons repository or in the core grass repository.&lt;br /&gt;
&lt;br /&gt;
=== Title of idea ===&lt;br /&gt;
&lt;br /&gt;
Description here&lt;br /&gt;
&lt;br /&gt;
* Requirements:&lt;br /&gt;
* Project length: (175 or 350 hours) &lt;br /&gt;
* Mentor: &lt;br /&gt;
* Proposed by: &lt;br /&gt;
* Rating: &lt;br /&gt;
* Expected Outcomes:  &lt;br /&gt;
* Test of skills: &lt;br /&gt;
* Other:&lt;br /&gt;
&lt;br /&gt;
== Tips for students ==&lt;br /&gt;
* Follow official [https://github.com/numfocus/gsoc/blob/master/CONTRIBUTING-contributors.md NumFOCUS guidelines].&lt;br /&gt;
* Include &amp;quot;GRASS&amp;quot; in the title of our idea to easily distinguish ideas and projects inside NumFOCUS.&lt;br /&gt;
* If you have your own ideas we encourage you to propose them. Explain them on the [https://discourse.osgeo.org/c/grass/developer/61 on our Discourse].&lt;br /&gt;
* Follow some good practices in your ideas and proposals:&lt;br /&gt;
** Stress why the project would be useful.&lt;br /&gt;
** Show that you know how you will proceed. That is, make sure that you can demonstrate that the proposal is feasible in the given time frame.&lt;br /&gt;
** Be specific in the implementation (or at least as specific as you can).&lt;br /&gt;
** Explain what the final product will look like and how it will work. You can add drawings or mock-ups.&lt;br /&gt;
** Explain how the idea relates to existing GRASS functions, features, and needs.&lt;br /&gt;
** Do not include steps such as &amp;quot;install GRASS&amp;quot;, &amp;quot;compile GRASS libraries (on my machine)&amp;quot;, &amp;quot;read about the API&amp;quot;. You should do this before applying to GSoC.&lt;br /&gt;
* Compile GRASS from source and prepare environment for development:&lt;br /&gt;
** Read [https://github.com/OSGeo/grass/blob/main/CONTRIBUTING.md CONTRIBUTING file].&lt;br /&gt;
* Prove your worth by being active on the [https://discourse.osgeo.org/c/grass/developer/61 GRASS Discourse] or other channels ([https://github.com/OSGeo/grass/discussions GitHub Discussions], fix some [https://github.com/OSGeo/grass/issues bugs], and/or implement some (smaller) features, or write some (simpler) GRASS module, and post it to mailing list. There's no better way to demonstrate your willingness and abilities. Do this before start you apply to GSoC. &lt;br /&gt;
* Also note that fixing existing bugs and/or implementing enhancements will be a part of student evaluation.&lt;br /&gt;
&lt;br /&gt;
{{GSoC}}&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS_GSoC_Ideas_2026&amp;diff=28754</id>
		<title>GRASS GSoC Ideas 2026</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS_GSoC_Ideas_2026&amp;diff=28754"/>
		<updated>2026-01-21T15:55:00Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: Create 2026 page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== About ==&lt;br /&gt;
Important: While we are still an OSGeo project, we changed our fiscal sponsor to [https://numfocus.org/ NumFOCUS].&lt;br /&gt;
&lt;br /&gt;
''As a result, GRASS participates in GSoC under the [https://numfocus.org/ NumFOCUS] umbrella organization.''&lt;br /&gt;
&lt;br /&gt;
Read more about our governance [https://grass.osgeo.org/about/governance/ on GRASS website].&lt;br /&gt;
&lt;br /&gt;
* [https://numfocus.org/programs/google-summer-code The NumFOCUS GSoC main page]&lt;br /&gt;
* [https://github.com/numfocus/gsoc/blob/master/CONTRIBUTING-contributors.md NumFOCUS guidelines for contributors].&lt;br /&gt;
* [https://summerofcode.withgoogle.com/ Official GSoC page at Google]&lt;br /&gt;
&lt;br /&gt;
== Ideas ==&lt;br /&gt;
If you are a student you can suggest a new idea or pick up an existing one. In any case write about it to [https://discourse.osgeo.org/c/grass/developer/61 OSGeo Discourse forum for GRASS developers],[https://github.com/OSGeo/grass/discussions GitHub Discussions], or [https://gitter.im/grassgis/community Gitter].&lt;br /&gt;
&lt;br /&gt;
You are invited as well to have a close look at ideas from previous years ([https://trac.osgeo.org/grass/wiki/GSoC/2014 2014], [https://trac.osgeo.org/grass/wiki/GSoC/2015 2015], [https://trac.osgeo.org/grass/wiki/GSoC/2016 2016],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2017 2017],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2018 2018],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2019 2019],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2020 2020],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2021 2021],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2022 2022],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2023 2023])&lt;br /&gt;
which have not yet been implemented.&lt;br /&gt;
You can also look at accepted GRASS GSoC [https://trac.osgeo.org/grass/wiki/GSoC projects from previous years] for an idea of scope.''&lt;br /&gt;
&lt;br /&gt;
Include &amp;quot;GRASS&amp;quot; in the title of our idea to easily distinguish ideas and projects inside NumFOCUS.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Parallelization of existing tools ===&lt;br /&gt;
&lt;br /&gt;
There are several tools that would benefit from parallelization with OpenMP, e.g. r.texture, r.horizon, r.fill.stats, r/v.surf.idw, r.viewshed, v.to.rast, r.grow.distance, v.surf.bspline, ...&lt;br /&gt;
For overview of current state, see [[Raster_Parallelization_with_OpenMP]].&lt;br /&gt;
&lt;br /&gt;
* Requirements: familiarity with C, OpenMP&lt;br /&gt;
* Mentor: Huidae Cho&lt;br /&gt;
* Co-mentor: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes: parallelized module or modules, depending on complexity&lt;br /&gt;
&lt;br /&gt;
=== Improve GRASS user experience in Jupyter Notebook ===&lt;br /&gt;
[[File:Jupyter_interactive_viewshed.png|500px|thumb|right|InteractiveMap in grass.jupyter library]]&lt;br /&gt;
Python package [https://grass.osgeo.org/grass-stable/manuals/libpython/grass.jupyter.html grass.jupyter] was developed during [https://trac.osgeo.org/grass/wiki/GSoC/2021/JupyterAndGRASS GSoC 2021] to simplify running GRASS from Jupyter Notebooks and displaying data. This project could focus on adding features such as increasing interactivity of displayed data using ipyleaflet, adding API for managing projects and subprojects (i.e., locations/mapsets), creating GUI for commands, ...&lt;br /&gt;
&lt;br /&gt;
* Requirements: Python&lt;br /&gt;
* Mentor: Anna Petrasova&lt;br /&gt;
* Co-mentor: Vaclav Petras, Helena Mitasova, Corey White&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: improved user experience when using GRASS through notebooks&lt;br /&gt;
* Test of skills: https://github.com/OSGeo/grass/issues/3276, or write a test for [https://github.com/OSGeo/grass/tree/main/python/grass/jupyter grass.jupyter library] using python unittest or pytest, more info [https://grass.osgeo.org/grass-devel/manuals/libpython/gunittest_testing.html here].&lt;br /&gt;
&lt;br /&gt;
=== Add JSON output to different tools in C ===&lt;br /&gt;
There are several tools in GRASS that would benefit from a JSON-formatted output, see [https://github.com/OSGeo/grass/issues/3020 this issue for a list of tools]. Besides adding the JSON output, the work would also include adding tests and basic documentation.&lt;br /&gt;
* Requirements: C, Python for tests&lt;br /&gt;
* Mentor: Vaclav Petras&lt;br /&gt;
* Co-mentor: Anna Petrasova, Corey White&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: one or more (depending on project length and complexity of the tool) tools with well tested JSON output&lt;br /&gt;
* Test of skills: Address https://github.com/OSGeo/grass/issues/1044 for r.surf.fractal&lt;br /&gt;
&lt;br /&gt;
=== Support writing tests with pytest ===&lt;br /&gt;
&lt;br /&gt;
* The current testing framework, ''[https://grass.osgeo.org/grass-stable/manuals/libpython/gunittest.html grass.gunittest]'', was written before migration to Git/GitHub and when long free runs in 3rd party services were unthinkable. Additionally, some no longer relevant goals were prioritized, such as independence on the current code, detailed custom HTML reports, success tracking over time, and high specialization towards GRASS-specifics.&lt;br /&gt;
* ''grass.gunittest'' is based on Python ''unittest'' package and many projects since then migrated to //pytest//, e.g., GDAL and Numpy. While ''unittest'' is inspired by Java's JUnit, ''pytest'' is designed to support writing small, readable tests, and uses plain `assert` statements instead of many different assert methods.&lt;br /&gt;
* Using ''pytest'' should lead to tests which feel more like Python scripts and to minimum of testing-specific code.&lt;br /&gt;
* An example issue of ''grass.gunittest'' is that it doesn't work well with tests of the main GRASS executable (prominence of `grass ... --exec` is yet another new thing which changed since ''grass.gunittest'' was designed).&lt;br /&gt;
* Two main things needed:&lt;br /&gt;
** Create general comparison functions from the ''grass.gunittest'' assert methods so that they can be used with pytest.&lt;br /&gt;
** Current grass.script.setup.init function and grass.script.core.create_location function don't work well in the context of a pytest test function. More  &lt;br /&gt;
* Additional things needed:&lt;br /&gt;
** Fixture for pytest to set up and tear down a GRASS session in a temporary mapset.&lt;br /&gt;
&lt;br /&gt;
* Requirements: Python&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Mentor: Vaclav Petras&lt;br /&gt;
* Co-mentor: Stefan Blumentrath&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: Convenient way of writing tests with pytest&lt;br /&gt;
* Test of skills: Fix failing tests and/or write new tests (more is better). Alternatively, addressing a smaller problem in the testing framework is a good task, too.&lt;br /&gt;
&lt;br /&gt;
=== New easy-to-use CLI and API for GRASS GIS ===&lt;br /&gt;
&lt;br /&gt;
* Make running of GRASS GIS modules as easy as it is to run GDAL commands.&lt;br /&gt;
** `grass run r.slope.aspect elevation=elevation.tiff slope=slope.tiff aspect=aspect.tiff`&lt;br /&gt;
** CLI like GDAL has.&lt;br /&gt;
** No GRASS Database, Location, Mapset to deal with.&lt;br /&gt;
** No import, export from user perspective.&lt;br /&gt;
** Reasonable defaults for things like region.&lt;br /&gt;
** CLI and API still allows user to specify any of the above.&lt;br /&gt;
* Idea page with details: wiki:GSoC/2021/EasyToUseCliAndApiIdea&lt;br /&gt;
* Project length: 350 hours&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Requirements:&lt;br /&gt;
** Language: Python&lt;br /&gt;
** Proposal: Student needs to show sufficient understanding of the GRASS GIS Database structure and significantly extend on text below in terms of more concrete formulation of ideas and identification of missing and existing parts.&lt;br /&gt;
* Mentors: Vaclav Petras&lt;br /&gt;
* Co-mentors: Stefan Blumentrath, Corey White&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Expected outcomes: New subcommand which easily runs a GRASS module on GeoTiff and GeoPackage.&lt;br /&gt;
* Test and training tasks:&lt;br /&gt;
** Solve one of the tickets linked at the idea page.&lt;br /&gt;
** Add features to `grass` executable interface:&lt;br /&gt;
*** Make it possible to associate `*.gxw` files with `grass` executable (#1204) or at least add `--gui-workspace` or preferably just recognize it in the command line (distinguish it from database/location/mapset).&lt;br /&gt;
** Extend `--exec` functionality:&lt;br /&gt;
*** Add `--region` to set a temporary computational region for the execution, e.g. `--region=&amp;quot;raster=raster_name&amp;quot;`&lt;br /&gt;
*** Add `--import-raster=some/file.tiff` which imports (r.import) a raster file (same for vector and similarly for export).&lt;br /&gt;
*** Add `--link-raster=some/file.tiff` which links (r.external) a raster file (same for vector and similarly for r.external.out).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== STAC (SpatioTemporal Asset Catalog) Integration ===&lt;br /&gt;
&lt;br /&gt;
Create new import and export capabilities for GRASS GIS which allow users to easily ingest data from STAC catalogs and export locations and mapsets as STAC specs for data discovery within STAC browsers. &lt;br /&gt;
&lt;br /&gt;
* Requirements: familiar with python, STAC specs&lt;br /&gt;
* Mentor: Corey White&lt;br /&gt;
* Co-mentor: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes: completion of t.in.stac and t.out.stac&lt;br /&gt;
* Test of skills:&lt;br /&gt;
** suggest or implement solution for implementing t.out.stac using the prototype STAC spec https://github.com/tomorrownow/grass-stac-extension &lt;br /&gt;
** suggest/implement solution for completing https://github.com/OSGeo/grass-addons/pull/802&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== GUI: Add space-time datasets support in Data Catalog ===&lt;br /&gt;
[[File:GUI_data_tab.png|400px|thumb|right|Data catalog]]&lt;br /&gt;
Currently GRASS Data Catalog shows only raster and vector maps. The goal of this project is to add support for space-time datasets. It is mainly space-time raster datasets. In the next phase of the project support for other types of space-time datasets (vector and 3D raster) could be added. Besides displaying space-time datasets in the layer tree, it is also about adding the equivalent functionality currently available for raster and vector layers from the context menu. &lt;br /&gt;
&lt;br /&gt;
* Requirements: familiar with Python&lt;br /&gt;
* Project length: 175 or 350 hours&lt;br /&gt;
* Mentor: Martin Landa&lt;br /&gt;
* Co-mentor: Anna Petrasova&lt;br /&gt;
* Proposed by: Martin Landa&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes:  175 hours basic support for space-time raster datasets; 350 extended support also for other space-time datasets types (vector, 3D raster)&lt;br /&gt;
* Test of skills:&lt;br /&gt;
** suggest/implement solution for completing https://github.com/OSGeo/grass/issues/2599&lt;br /&gt;
&lt;br /&gt;
=== Add {your research idea} to GRASS GIS ===&lt;br /&gt;
&lt;br /&gt;
* In general, you can propose any topic, but you can specifically propose integrating your research or research idea into GRASS GIS.&lt;br /&gt;
* Requirements:&lt;br /&gt;
** Language:&lt;br /&gt;
*** Depends on the project, often Python, sometimes C.&lt;br /&gt;
*** Adding your latest ecological analysis &lt;br /&gt;
** Proposal:&lt;br /&gt;
*** Discuss relevance to GRASS GIS.&lt;br /&gt;
*** Describe technical steps needed for integration.&lt;br /&gt;
*** Describe whether it is an addition of a tool (module) or a change in one of the libraries. If it is a tool, specify if it should be included in the core grass repository or in grass-addons repository and why.&lt;br /&gt;
*** Specify what research was done and what needs to be accomplished in order to have usable product at the end of summer.&lt;br /&gt;
*** Specify who will provide the research expertise.&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: from low to hard&lt;br /&gt;
* Mentors:&lt;br /&gt;
** GRASS GIS project will provide technical mentors, but it is up to the applicant to ensure the research part is mentored well. An exception may be granted to applicants which can demonstrate that the research is finished or that they have enough expertise themselves.&lt;br /&gt;
** Possible technical mentors: Vaclav Petras, Anna Petrasova&lt;br /&gt;
** Research mentors: Bring in an expert from your field, e.g., your academic advisor or project principal investigator (if needed).&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Expected outcome: Working feature which is integrated and merged at the end of the project.&lt;br /&gt;
* Test and training tasks:&lt;br /&gt;
** Create a test in Python for an existing tool in the grass-addons repository or in the core grass repository.&lt;br /&gt;
&lt;br /&gt;
=== Title of idea ===&lt;br /&gt;
&lt;br /&gt;
Description here&lt;br /&gt;
&lt;br /&gt;
* Requirements:&lt;br /&gt;
* Project length: (175 or 350 hours) &lt;br /&gt;
* Mentor: &lt;br /&gt;
* Proposed by: &lt;br /&gt;
* Rating: &lt;br /&gt;
* Expected Outcomes:  &lt;br /&gt;
* Test of skills: &lt;br /&gt;
* Other:&lt;br /&gt;
&lt;br /&gt;
== Tips for students ==&lt;br /&gt;
* See the official [https://github.com/numfocus/gsoc/blob/master/CONTRIBUTING-contributors.md NumFOCUS guidelines].&lt;br /&gt;
* If you have your own ideas we encourage you to propose them. Explain them on the [https://discourse.osgeo.org/c/grass/developer/61 on our Discourse].&lt;br /&gt;
* Follow some good practices in your ideas and proposals:&lt;br /&gt;
** Stress why the project would be useful.&lt;br /&gt;
** Show that you know how you will proceed. That is, make sure that you can demonstrate that the proposal is feasible in the given time frame.&lt;br /&gt;
** Be specific in the implementation (or at least as specific as you can).&lt;br /&gt;
** Explain what the final product will look like and how it will work. You can add drawings or mock-ups.&lt;br /&gt;
** Explain how the idea relates to existing GRASS functions, features, and needs.&lt;br /&gt;
** Do not include steps such as &amp;quot;install GRASS&amp;quot;, &amp;quot;compile GRASS libraries (on my machine)&amp;quot;, &amp;quot;read about the API&amp;quot;. You should do this before applying to GSoC.&lt;br /&gt;
* Compile GRASS from source and prepare environment for development:&lt;br /&gt;
** Read [https://github.com/OSGeo/grass/blob/main/CONTRIBUTING.md CONTRIBUTING file].&lt;br /&gt;
* Prove your worth by being active on the [https://discourse.osgeo.org/c/grass/developer/61 GRASS Discourse] or other channels ([https://github.com/OSGeo/grass/discussions GitHub Discussions], fix some [https://github.com/OSGeo/grass/issues bugs], and/or implement some (smaller) features, or write some (simpler) GRASS module, and post it to mailing list. There's no better way to demonstrate your willingness and abilities. Do this before start you apply to GSoC. &lt;br /&gt;
* Also note that fixing existing bugs and/or implementing enhancements will be a part of student evaluation.&lt;br /&gt;
&lt;br /&gt;
{{GSoC}}&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=PSC_Meeting_2025-11-14&amp;diff=28743</id>
		<title>PSC Meeting 2025-11-14</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=PSC_Meeting_2025-11-14&amp;diff=28743"/>
		<updated>2025-12-16T17:30:31Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: /* Minutes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Participants ==&lt;br /&gt;
&lt;br /&gt;
* Anna Petrasova&lt;br /&gt;
* Huidae Cho&lt;br /&gt;
* Linda Karlovska&lt;br /&gt;
* Markus Neteler&lt;br /&gt;
* Nicklas Larsson&lt;br /&gt;
* Paulo van Breugel&lt;br /&gt;
* Vaclav Petras&lt;br /&gt;
* Veronica Andreo&lt;br /&gt;
&lt;br /&gt;
== Agenda ==&lt;br /&gt;
&lt;br /&gt;
The topics proposed are:&lt;br /&gt;
&lt;br /&gt;
* Report from NumFOCUS Project Summit (VP)&lt;br /&gt;
* GRASS Wiki under DDOS attack, see https://discourse.osgeo.org/t/grass-wiki-under-ddos-attack/150717&lt;br /&gt;
* New wiki page: [[Organizing GRASS Contributor Events]]&lt;br /&gt;
* GRASS Meeting 2026 - Luca's proposal&lt;br /&gt;
* Upcoming releases:&lt;br /&gt;
** Release 8.4.2 (due to relevant [https://github.com/OSGeo/grass/compare/8.4.1...releasebranch_8_4 fixes]; the branch-CI is also functional again) - [https://github.com/OSGeo/grass/milestone/27 milestone]&lt;br /&gt;
** Release 8.5.0 - [https://github.com/OSGeo/grass/milestone/22 milestone]&lt;br /&gt;
* Reimburse Alen for stickers he bought to take to NZ&lt;br /&gt;
&lt;br /&gt;
== Minutes ==&lt;br /&gt;
&lt;br /&gt;
* Report from NumFOCUS Project Summit:&lt;br /&gt;
** VP participated of the NumFOCUS projects summit; there were not many other projects attending.&lt;br /&gt;
** There are calls for small grants (USD 10K per project per year), that we should apply for, and ideally use them for development. &lt;br /&gt;
** It seems we need to apply as a project, but it is not clear who submits. In any case, the person interested in the money should lead the effort. See: https://numfocus.org/programs/small-development-grants.&lt;br /&gt;
** We had a meeting with them on Tue 18th, but AP will ask them to move it because neither VP nor VA can attend. New date: Dec 10th, 2025.&lt;br /&gt;
&lt;br /&gt;
* GRASS wiki under attack by botnet:&lt;br /&gt;
** MN set up countermeasures on the server, instructions to be dumped in our  infrastructure shared doc&lt;br /&gt;
** Not everyone has access to that doc, so we shall review and discuss our shared folder and files access “policy”.&lt;br /&gt;
&lt;br /&gt;
* New wiki page on organizing GRASS events: &lt;br /&gt;
** https://grasswiki.osgeo.org/wiki/Organizing_GRASS_Contributor_Events&lt;br /&gt;
&lt;br /&gt;
* GRASS meeting San Michele 2026:&lt;br /&gt;
** See [https://lists.osgeo.org/pipermail/grass-psc/2025-September/003054.html Luca's proposal].&lt;br /&gt;
** Nicklas is not available for any of the proposed dates.&lt;br /&gt;
** For AP and VP any of the dates are fine.&lt;br /&gt;
** Paulo: 50% with the second date.&lt;br /&gt;
** HC: probably the second date.&lt;br /&gt;
** MN and VA: any date fine for now.&lt;br /&gt;
** Linda: new baby coming! Congrats!&lt;br /&gt;
&lt;br /&gt;
* Release 8.4.2: &lt;br /&gt;
** VP and MN will agree on a date soon to do the release together.&lt;br /&gt;
** Edouard will be invited, too.&lt;br /&gt;
&lt;br /&gt;
* Release 8.5: &lt;br /&gt;
** It will have CMake in the source code as experimental feature to try for users who compile code themselves (but extensions won’t work for them).&lt;br /&gt;
** FHS won’t work with CMake yet.&lt;br /&gt;
** It’s a matter of communication about what’s there in the source code. Binaries will be with autotools, so addons will work.&lt;br /&gt;
** Blockers: there’s an issue with r.blend and something with r.patch with vrt and nprocs &amp;gt; 1 (the latter found by Metz, but still unreported)&lt;br /&gt;
** New python API, VP will call for a webinar on it by mid-dec, to show how it works and collect some feedback, too.&lt;br /&gt;
** JSON stuff and mkdocs is in good shape to go.&lt;br /&gt;
** Jupyter notebook PR needs to be reviewed, it does not work in windows, but this is not a blocker, we can mark it as experimental.&lt;br /&gt;
** Drop support for PROJ &amp;lt; 8 and GDAL &amp;lt; 3? Nicklas created issues to get feedback, it could be done before the release. See [https://github.com/OSGeo/grass/issues/6628 #6628] and [https://github.com/OSGeo/grass/issues/6629 #6629].&lt;br /&gt;
&lt;br /&gt;
* Motion proposed and passed to reimburse Alen for the stickers. VP will contact Michael Smith, so Alen gets reimbursed.&lt;br /&gt;
&lt;br /&gt;
* Plan extraordinary meeting - PSC + Luca to plan 2026 budget + community meeting when the call for OSGeo budget is out.&lt;br /&gt;
** VP proposal: include an item to promote GRASS in other than FOSS4G conferences.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:PSC]]&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS_Developer_Summit_Raleigh_2025&amp;diff=28699</id>
		<title>GRASS Developer Summit Raleigh 2025</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS_Developer_Summit_Raleigh_2025&amp;diff=28699"/>
		<updated>2025-09-22T18:33:24Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: /* Venue */ fix typo to test watching this page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{toc|right}}&lt;br /&gt;
The main meeting of the GRASS Project in 2025 is a 6-day '''GRASS Developer Summit''' to be held at North Carolina State University from '''Monday, May 19th through Saturday, May 24th''' in Raleigh, North Carolina, USA.&lt;br /&gt;
&lt;br /&gt;
Quick links: [[#GRASS_Lightning_Talks_&amp;amp;_Reception|Lightning Talks]] | [[Talk:GRASS_Developer_Summit_Raleigh_2025#Participant_reports|Participant reports]] | [[Talk:GRASS_Developer_Summit_Raleigh_2025#Detailed_Schedule|Schedule]] | [[#Sponsors|Sponsors]] | [https://grass.osgeo.org/news/2025_05_27_grass_dev_summit_report/ Press release]&lt;br /&gt;
&lt;br /&gt;
[[File:Grass developer summit 2025 group picture.jpg|frameless|center|800px|NCSU venue and organizers|alt=Group of smiling people in GRASS t-shirts at stairs outside of a building]]&lt;br /&gt;
&lt;br /&gt;
[[File:NCSU developer summit venue 2025 collage.jpg|thumb|Venue and area]]&lt;br /&gt;
&lt;br /&gt;
== Sponsors ==&lt;br /&gt;
&lt;br /&gt;
[[File:NSF Official logo.png|none|left|200px|alt=Logo of US NSF|U.S. National Science Foundation]] [[File:Bohannan_Huston_Inc_Logo.png|none|left|400px|alt=Logo of Bohannan Huston, Inc.|Bohannan Huston, Inc.]]&lt;br /&gt;
&lt;br /&gt;
* U.S. National Science Foundation, award [https://www.nsf.gov/awardsearch/showAward?AWD_ID=2303651 2303651]: Planning, preparation, event venue, participant travel&lt;br /&gt;
&lt;br /&gt;
* [https://bhinc.com/ Bohannan Huston, Inc.]: 2,000 USD&lt;br /&gt;
&lt;br /&gt;
* Lightning Talks &amp;amp; Reception sponsor: [https://geospatial.ncsu.edu/ Center for Geospatial Analytics], North Carolina State University: Venue, technology, reception&lt;br /&gt;
&lt;br /&gt;
* Individual contributors at [https://opencollective.com/grass/contribute/grass-developer-summit-2025-84759/ Open Collective]&lt;br /&gt;
&lt;br /&gt;
'''Why should you become a sponsor?''' While all major parts of this event are supported by the NSF POSE award mentioned above, we welcome any additional support for ancillary costs associated with the event, as not everything can be covered, for good reasons, by the U.S. federal funding.&lt;br /&gt;
&lt;br /&gt;
To sponsor the event, use [https://opencollective.com/osgeo/projects/grass/contribute/grass-developer-summit-2025-84759/checkout Open Collective] or contact [[User:wenzeslaus|Vaclav Petras]] &amp;lt;tt&amp;gt;&amp;lt;wenzeslaus at gmail com&amp;gt;&amp;lt;/tt&amp;gt; for invoicing options.&lt;br /&gt;
&lt;br /&gt;
== Purpose ==&lt;br /&gt;
&lt;br /&gt;
The purpose of this in-person Developer Summit is to identify challenges in the adoption of GRASS as a geoprocessing engine and to foster the growth of the contributor community by connecting new and experienced developers. Attendees will contribute their unique skills to GRASS, evaluate the progress of the project, and participate in long-term planning for GRASS. The goal of the event is to generate actionable feedback for future improvements and to prepare the ground for expanding the geoprocessing capabilities of GRASS.&lt;br /&gt;
&lt;br /&gt;
== Agenda ==&lt;br /&gt;
&lt;br /&gt;
Each day will consist of a block of scheduled sessions (tentative topics below), a block of self-organized sessions (determined by the attendees and organizers), three business meals (breakfast, lunch, and dinner), and dedicated time for attendees to individually contribute to the project by coding, documenting, testing, or making other improvements.&lt;br /&gt;
&lt;br /&gt;
See [[Talk:GRASS_Developer_Summit_Raleigh_2025#Detailed_Schedule|Detailed Agenda for each day]] on Discussion page.&lt;br /&gt;
&lt;br /&gt;
Overview:&lt;br /&gt;
* '''Day 1 (Monday, May 19):''' What to expect from the event, contributing to GRASS using Git and GitHub, making your first contribution.&lt;br /&gt;
* '''Day 2 (Tuesday, May 20):''' Introduction to writing GRASS tools, interfacing with QGIS (gathering user feedback, testing, discussing with developers, developing action items).&lt;br /&gt;
* '''Day 3 (Wednesday, May 21):''' Introduction to non-coding contributions, deep dive into new documentation, natural language translation and internationalization (procedures, glossaries, code customization, translation).&lt;br /&gt;
* '''Day 4 (Thursday, May 22):''' Project vision, computational engine (missing features, documentation, user groups), lightning talks for external audience followed by reception at the Center for Geospatial Analytics at NC State.&lt;br /&gt;
* '''Day 5 (Friday, May 23):''' Project Steering Committee meeting, interfacing with R (gathering user feedback, testing, discussing with developers, developing action items).&lt;br /&gt;
* '''Day 6 (Saturday, May 24):''' NSF POSE project evaluation, contributor community feedback, charting the project's future course.&lt;br /&gt;
&lt;br /&gt;
General daily schedule:&lt;br /&gt;
* '''Breakfast (8-9am):''' Start the day, meet people, and plan your personal agenda for the day.&lt;br /&gt;
* '''Morning opening sessions (9-10am):''' Introductions to contributing, the project, and its vision, program for the day.&lt;br /&gt;
* '''Self-organized feedback sessions (11-noon):''' Three impromptu 20-minute sessions to gather feedback on a topic (10-minute presentation and 10-minute discussion).&lt;br /&gt;
* '''Lunch (noon-1pm):''' Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
* '''Focus time (10-11am and 1-5pm):''' Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
* '''Dinner (evening):''' Evaluate the day's accomplishments, plan and prioritize for the next few days.&lt;br /&gt;
&lt;br /&gt;
You don't have to participate in all discussions or contribute to all topics. You are welcome to pick and choose the ones that are more relevant to your interests and expertise. The rest of the time you are free to work on your own contributions to GRASS. While the main language of communication at the event will be English, participants are welcome to use other languages as they see fit. Currently, native speakers of eight languages other than English have confirmed their participation.&lt;br /&gt;
&lt;br /&gt;
== GRASS Lightning Talks &amp;amp; Reception ==&lt;br /&gt;
&lt;br /&gt;
Hosted and co-sponsored by Center for Geospatial Analytics at NC State University and the US National Science Foundation, '''GRASS Lightning Talks &amp;amp; Reception''' on Thursday, May 22nd will feature speakers from mundialis, Natrx, Bohannan Huston, government, and academia, showcasing real-world applications of GRASS. We’ll kick things off at 4:00 PM with a series of fast-paced talks. A reception will follow at 5:00 PM, offering time to connect with researchers, government professionals, and industry collaborators.&lt;br /&gt;
&lt;br /&gt;
* Host: Vaclav Petras, North Carolina State University&lt;br /&gt;
* Markus Metz &amp;amp; Markus Neteler, mundialis, ''Optimizing Urban Infrastructure: Automated Trench Planning with GRASS'' (presented by Vaclav Petras)&lt;br /&gt;
* Anna Petrasova, North Carolina State University, ''Scaling Up Urban Growth Projections with FUTURES''&lt;br /&gt;
* Verónica Andreo, CONICET – Instituto Gulich, ''GRASS-fed Species Distribution Models''&lt;br /&gt;
* Rob Dzur, Bohannan Huston, Inc., ''Going with the Flow: How GRASS Helps Us Navigate Elevation-Derived Hydrography (EDH) Breakthroughs''&lt;br /&gt;
* Nick Brady, Natrx, ''Distributed GRASS for Erosion Assessments''&lt;br /&gt;
* Huidae Cho, New Mexico State University, ''Continental-Scale Hydrologic Modeling Using GRASS''&lt;br /&gt;
* Gregory Power, Town of Cary, ''Using GRASS for Open Data Pipelines''&lt;br /&gt;
* Doug Newcomb, ''Hydro Flattening Impounded Water Bodies from LiDAR Point Cloud Data''&lt;br /&gt;
* Caitlin Haedrich, North Carolina State University, ''Modeling Agricultural Runoff with Tangible Landscape and GRASS''&lt;br /&gt;
&lt;br /&gt;
== Venue ==&lt;br /&gt;
&lt;br /&gt;
[[File:std_dataset_nc_shaded_elevation.png|thumb|Elevation in the NC sample dataset]]&lt;br /&gt;
&lt;br /&gt;
[[File:Ncsu logo.jpg|240px|frameless|left]]&lt;br /&gt;
[https://www.ncsu.edu/ NC State University, Raleigh, North Carolina, USA]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The developer summit is hosted on the NC State University campus, taking advantage of modern facilities including [https://studentcenters.ncsu.edu/location/talley/ Talley Student Union], [https://www.lib.ncsu.edu/hunt Hunt Library] and the [https://cnr.ncsu.edu/geospatial/ Center for Geospatial Analytics].&lt;br /&gt;
&lt;br /&gt;
Recommended accommodation for its proximity and accomodation used for sponsored participants is Aloft Raleigh, 2100 Hillsborough St, Raleigh, NC 27607. Contact organizers for a possibility of using a negotiated lower rate.&lt;br /&gt;
&lt;br /&gt;
Fun fact: Raleigh in North Carolina is the home of the famous GRASS [https://grass.osgeo.org/download/data/#NorthCarolinaDataset North Carolina sample dataset].&lt;br /&gt;
&lt;br /&gt;
== Participation ==&lt;br /&gt;
&lt;br /&gt;
Registration is now open. Please, help us plan better by filling out the registration form as soon as you decide to come:&lt;br /&gt;
&lt;br /&gt;
[https://forms.gle/q6zzsGeHo2YkUVnx5 Summit registration form.]&lt;br /&gt;
&lt;br /&gt;
We are expecting over [[Talk:GRASS_Developer_Summit_Raleigh_2025#Participant_reports|30 people]]!&lt;br /&gt;
&lt;br /&gt;
== FAQ ==&lt;br /&gt;
&lt;br /&gt;
* ''How these events look like?''&lt;br /&gt;
** See [[GRASS Community Meeting Prague 2024]] and [[GRASS Community Meeting Prague 2023]] for last two events which were both great!&lt;br /&gt;
* ''Is the meeting focused on coding?''&lt;br /&gt;
** The focus is contributing to the project. The project is build on contributions in the form of code, documentation, translations, promotion and more. &lt;br /&gt;
* ''Is the meeting for developers only?''&lt;br /&gt;
** No, anybody can help, with testing, checking out bugs and fixes, documentation and more. The goal is to develop GRASS and make it easier to develop workflows and software on top of GRASS. &lt;br /&gt;
* ''Do I have to be a contributor to come?''&lt;br /&gt;
** You don't make contributions prior to the meeting, but the goal is to improve the project, so we ask that you discuss and plan your contributions before coming to the meeting. If you are a committed newcomer, contact us and we will gladly find a way for you to meaningfully contribute.&lt;br /&gt;
* ''Where can I get help and more information about the event?''&lt;br /&gt;
** Contact [[User:wenzeslaus|Vaclav (Vashek) Petras]] &amp;lt;tt&amp;gt;&amp;lt;wenzeslaus at gmail com&amp;gt;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Organizing Committee ==&lt;br /&gt;
&lt;br /&gt;
* Vaclav Petras, North Carolina State University, Center for Geospatial Analytics ''as a Chair''&lt;br /&gt;
* Anna Petrasova, North Carolina State University, Center for Geospatial Analytics ''as a Developer Representative''&lt;br /&gt;
* Corey White, North Carolina State University, Center for Geospatial Analytics ''as a Contributor Representative''&lt;br /&gt;
* Lois Utt, North Carolina State University, Center for Geospatial Analytics ''as a NC State University Liaison''&lt;br /&gt;
* Sarah White, North Carolina State University ''as a Program and Design Consultant''&lt;br /&gt;
* Doug Newcomb, U.S. Fish and Wildlife Service ''as a User Representative''&lt;br /&gt;
* Huidae Cho, New Mexico State University ''as an Representative of US Participants''&lt;br /&gt;
* Veronica Andreo, CONICET, Argentina ''as a Representative of International Participants''&lt;br /&gt;
&lt;br /&gt;
[[Category: Code Sprint]]&lt;br /&gt;
[[Category: Conferences]]&lt;br /&gt;
[[Category: 2025]]&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS_GSoC_2025_Add_JSON_output_to_different_tools_in_C&amp;diff=28638</id>
		<title>GRASS GSoC 2025 Add JSON output to different tools in C</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS_GSoC_2025_Add_JSON_output_to_different_tools_in_C&amp;diff=28638"/>
		<updated>2025-08-20T14:19:11Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: add category gsoc&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
| '''Student Name''' || Nishant Bansal&lt;br /&gt;
|-&lt;br /&gt;
| '''Organization''' || [https://www.osgeo.org/ ​OSGeo - Open Source Geospatial Foundation]&lt;br /&gt;
|-&lt;br /&gt;
| '''Mentor Name''' || Anna Petrasova, Corey White, Vaclav Petras&lt;br /&gt;
|-&lt;br /&gt;
| '''GitHub Fork''' || [https://github.com/NishantBansal2003/grass View Repo]&lt;br /&gt;
|-&lt;br /&gt;
| '''GSoC proposal''' || [https://docs.google.com/document/d/1ZPQ9RXU7b_RUDmBmAMeK7ZjFAV1WC7Urd1Zlz678jyw/edit?tab=t.0#heading=h.z6ne0og04bp5 View Proposal]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Abstract =&lt;br /&gt;
Currently, most GRASS tools produce data in plain text by default. This means that users who want to process the output in Python need to create custom parsing code. To make this easier, several modules could be improved by oﬀering JSON as an alternative output format. Recently, the Parson library was added to the GRASS codebase to support JSON output in addition to plain text. Building on the advancements made during the last GSoC, my project aims to expand JSON output capabilities to more tools using the Parson library. I will also work on making the JSON structure introduced in the previous GSoC more useful and consistent. Additionally, I plan to add support for SHELL and CSV output formats to the relevant tools where appropriate.&lt;br /&gt;
&lt;br /&gt;
= Goal =&lt;br /&gt;
&lt;br /&gt;
# Working with mentors to finalize the structure of the JSON output.&lt;br /&gt;
# Adding an option to choose the output format (plain text or JSON) for each updated tool.&lt;br /&gt;
# Make the JSON structure introduced during the last GSoC more useful and consistent across tools.&lt;br /&gt;
# Developing Python test cases to ensure that the JSON output works correctly and to avoid future issues.&lt;br /&gt;
# Providing basic documentation and example JSON outputs for each modified tool.&lt;br /&gt;
# Adding support for SHELL and CSV output formats to the relevant tools where appropriate.&lt;br /&gt;
# Develop simple examples demonstrating how to use JSON output in a data science workflow, such as reading JSON data into pandas or python.&lt;br /&gt;
&lt;br /&gt;
= Timeline =&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Period !! Timeline  !! Tasks   !! Status &lt;br /&gt;
|-&lt;br /&gt;
| Bonding Period &lt;br /&gt;
||&lt;br /&gt;
May 8 - June 1  &lt;br /&gt;
|| &lt;br /&gt;
# Reviewed the work done during the last GSoC to stabilize the JSON output.&lt;br /&gt;
# Discussed the priority tools for adding JSON support.&lt;br /&gt;
# Read GRASS documentation to add Python and JSON examples to the documentation.&lt;br /&gt;
|| &lt;br /&gt;
OK&amp;lt;br&amp;gt;OK&amp;lt;br&amp;gt;OK&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; | Official Coding Period &lt;br /&gt;
|-&lt;br /&gt;
| '''Week 1''' (June 2 - June 8) || &lt;br /&gt;
# Add JSON support for g.mapset [https://github.com/OSGeo/grass/pull/5810 #5810]&lt;br /&gt;
# Fix uninitialized zone_value in r.univar [https://github.com/OSGeo/grass/pull/5821 #5821]&lt;br /&gt;
# Add JSON support for r.what.color [https://github.com/OSGeo/grass/pull/5822 #5822]&lt;br /&gt;
# Update test file in r.info [https://github.com/OSGeo/grass/pull/5842 #5842]&lt;br /&gt;
# Improve interface for r.info [https://github.com/OSGeo/grass/pull/5859 #5859]&lt;br /&gt;
||&lt;br /&gt;
OK&amp;lt;br&amp;gt;OK&amp;lt;br&amp;gt;OK&amp;lt;br&amp;gt;OK&amp;lt;br&amp;gt;OK&lt;br /&gt;
|-&lt;br /&gt;
| '''Week 2''' (June 9 - June 15) ||&lt;br /&gt;
# Add JSON support for g.version [https://github.com/OSGeo/grass/pull/5863 #5863]&lt;br /&gt;
# Add JSON support for i.group [https://github.com/OSGeo/grass/pull/5870 #5870]&lt;br /&gt;
# Add test file in r.stats [https://github.com/OSGeo/grass/pull/5879 #5879]&lt;br /&gt;
# Add tests for JSON output in r.stats [https://github.com/OSGeo/grass/pull/5892 #5892]&lt;br /&gt;
||&lt;br /&gt;
OK&amp;lt;br&amp;gt;OK&amp;lt;br&amp;gt;OK&amp;lt;br&amp;gt;OK&lt;br /&gt;
|-&lt;br /&gt;
| '''Week 3''' (June 16 - June 22) ||&lt;br /&gt;
# Update the JSON output schema of v.distance [https://github.com/OSGeo/grass/pull/5898 #5898]&lt;br /&gt;
# Fix uninitialized window variable in r.stats [https://github.com/OSGeo/grass/pull/5900 #5900]&lt;br /&gt;
# Add test file in g.list [https://github.com/OSGeo/grass/pull/5906 #5906]&lt;br /&gt;
# Add JSON support for g.list [https://github.com/OSGeo/grass/pull/5921 #5921]&lt;br /&gt;
# Update the JSON output schema of g.region [https://github.com/OSGeo/grass/pull/5929 #5929]&lt;br /&gt;
||&lt;br /&gt;
OK&amp;lt;br&amp;gt;OK&amp;lt;br&amp;gt;OK&amp;lt;br&amp;gt;OK&amp;lt;br&amp;gt;OK&lt;br /&gt;
|-&lt;br /&gt;
| '''Week 4''' (June 23 - June 29) ||&lt;br /&gt;
# Update the JSON output schema of v.to.db [https://github.com/OSGeo/grass/pull/5946 #5946]&lt;br /&gt;
# Update the JSON output schema of r.profile [https://github.com/OSGeo/grass/pull/5962 #5962]&lt;br /&gt;
# Add SHELL and CSV output support for r.univar [https://github.com/OSGeo/grass/pull/5966 #5966]&lt;br /&gt;
||&lt;br /&gt;
OK&amp;lt;br&amp;gt;OK&amp;lt;br&amp;gt;OK&lt;br /&gt;
|-&lt;br /&gt;
| '''Week 5''' (June 30 - July 6) ||&lt;br /&gt;
# Add test file in r.regression.line [https://github.com/OSGeo/grass/pull/5990 #5990]&lt;br /&gt;
# Add JSON support for r.regression.line [https://github.com/OSGeo/grass/pull/5993 #5993]&lt;br /&gt;
# Add test file in r.stats.quantile [https://github.com/OSGeo/grass/pull/6002 #6002]&lt;br /&gt;
# Add JSON support for r.stats.quantile [https://github.com/OSGeo/grass/pull/6007 #6007]&lt;br /&gt;
# Add test file in r.volume [https://github.com/OSGeo/grass/pull/6027 #6027]&lt;br /&gt;
# Add JSON support for r.volume [https://github.com/OSGeo/grass/pull/6036 #6036]&lt;br /&gt;
||&lt;br /&gt;
OK&amp;lt;br&amp;gt;OK&amp;lt;br&amp;gt;OK&amp;lt;br&amp;gt;OK&amp;lt;br&amp;gt;OK&amp;lt;br&amp;gt;OK&lt;br /&gt;
|-&lt;br /&gt;
| '''Week 6''' (July 7 - July 13) ||&lt;br /&gt;
# Add JSON support for db.columns [https://github.com/OSGeo/grass/pull/6042 #6042]&lt;br /&gt;
# Add test file in m.measure [https://github.com/OSGeo/grass/pull/6051 #6051]&lt;br /&gt;
# Add test file in db.connect [https://github.com/OSGeo/grass/pull/6052 #6052]&lt;br /&gt;
# Add JSON support for m.measure [https://github.com/OSGeo/grass/pull/6053 #6053]&lt;br /&gt;
# Add JSON support for db.connect [https://github.com/OSGeo/grass/pull/6059 #6059]&lt;br /&gt;
||&lt;br /&gt;
OK&amp;lt;br&amp;gt;OK&amp;lt;br&amp;gt;OK&amp;lt;br&amp;gt;OK&amp;lt;br&amp;gt;OK&lt;br /&gt;
|-&lt;br /&gt;
| '''Week 7''' (July 14 - July 20) ||&lt;br /&gt;
# Add test file in r.regression.multi [https://github.com/OSGeo/grass/pull/6066 #6066]&lt;br /&gt;
# Add test file in v.db.connect [https://github.com/OSGeo/grass/pull/6067 #6067]&lt;br /&gt;
# Add JSON support for r.regression.multi [https://github.com/OSGeo/grass/pull/6075 #6075]&lt;br /&gt;
# Add JSON support for v.db.connect [https://github.com/OSGeo/grass/pull/6077 #6077]&lt;br /&gt;
||&lt;br /&gt;
OK&amp;lt;br&amp;gt;OK&amp;lt;br&amp;gt;OK&amp;lt;br&amp;gt;OK&lt;br /&gt;
|-&lt;br /&gt;
| '''Week 8''' (July 21 - July 27) ||&lt;br /&gt;
# Add JSON support for g.findfile [https://github.com/OSGeo/grass/pull/6091 #6091]&lt;br /&gt;
# Add test file in r3.info [https://github.com/OSGeo/grass/pull/6098 #6098]&lt;br /&gt;
# Add JSON support for r3.info [https://github.com/OSGeo/grass/pull/6103 #6103]&lt;br /&gt;
# Add test file in v.what.rast [https://github.com/OSGeo/grass/pull/6109 #6109]&lt;br /&gt;
||&lt;br /&gt;
OK&amp;lt;br&amp;gt;OK&amp;lt;br&amp;gt;OK&amp;lt;br&amp;gt;OK&lt;br /&gt;
|-&lt;br /&gt;
| '''Week 9''' (July 28 - August 3) ||&lt;br /&gt;
# Update format to CSV instead of shell in v.category [https://github.com/OSGeo/grass/pull/6132 #6132]&lt;br /&gt;
# Add CSV output support to r.stats [https://github.com/OSGeo/grass/pull/6133 #6133]&lt;br /&gt;
# Add CSV headers to r.volume [https://github.com/OSGeo/grass/pull/6134 #6134]&lt;br /&gt;
# Add JSON support for v.what.rast [https://github.com/OSGeo/grass/pull/6140 #6140]&lt;br /&gt;
# Add CSV output support to r.profile [https://github.com/OSGeo/grass/pull/6145 #6145]&lt;br /&gt;
# Update test cases in r.distance [https://github.com/OSGeo/grass/pull/6150 #6150]&lt;br /&gt;
||&lt;br /&gt;
OK&amp;lt;br&amp;gt;OK&amp;lt;br&amp;gt;OK&amp;lt;br&amp;gt;OK&amp;lt;br&amp;gt;OK&amp;lt;br&amp;gt;OK&lt;br /&gt;
|-&lt;br /&gt;
| '''Week 10''' (August 4 - August 10) ||&lt;br /&gt;
# Address review comments on my open PRs.&lt;br /&gt;
||&lt;br /&gt;
OK&lt;br /&gt;
|-&lt;br /&gt;
| '''Week 11''' (August 11 - August 17) ||&lt;br /&gt;
# Add JSON and CSV support for r.distance [https://github.com/OSGeo/grass/pull/6204 #6204]&lt;br /&gt;
# Add more test cases in v.class [https://github.com/OSGeo/grass/pull/6205 #6205]&lt;br /&gt;
# Add JSON and CSV support for v.class [https://github.com/OSGeo/grass/pull/6210 #6210]&lt;br /&gt;
||&lt;br /&gt;
OK&amp;lt;br&amp;gt;OK&amp;lt;br&amp;gt;OK&lt;br /&gt;
|-&lt;br /&gt;
| '''Week 12''' (August 18 - August 24) ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; | Evaluation Period &lt;br /&gt;
|-&lt;br /&gt;
| August 25 - September 1 ||  || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Reports =&lt;br /&gt;
== Community Bonding Period ==&lt;br /&gt;
&lt;br /&gt;
'''What did I get done this week?'''&lt;br /&gt;
* Introduced myself on the [https://discourse.osgeo.org/t/gsoc-2025-introduction-nishant-bansal/147005 OSGeo Discourse mailing list].&lt;br /&gt;
* Created both my [https://wiki.osgeo.org/wiki/User:Nishantbansal2003 personal Wiki page] and the [https://grasswiki.osgeo.org/wiki/GRASS_GSoC_2025_Add_JSON_output_to_different_tools_in_C project Wiki page], adding all necessary project-related information.&lt;br /&gt;
* Read GRASS documentation to support the addition of Python and JSON examples.&lt;br /&gt;
* Worked on the following pull requests:&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/5688 #5688]&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/5773 #5773]&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/5775 #5775]&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/5784 #5784]&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/5785 #5785]&lt;br /&gt;
&lt;br /&gt;
'''What do I plan on doing next week?'''&lt;br /&gt;
* Add JSON output support to the g.mapset and r.what.color modules.&lt;br /&gt;
* If time permits, I will begin improving the r.info interface: [https://github.com/OSGeo/grass/issues/5793 Issue #5793]&lt;br /&gt;
&lt;br /&gt;
'''Am I blocked on anything?'''&lt;br /&gt;
* No, I am not currently blocked on anything.&lt;br /&gt;
&lt;br /&gt;
'''Project Discussions and Meetings'''&lt;br /&gt;
* '''14 May 2025''': Introductory meeting discussing JSON support and overall project milestones.&lt;br /&gt;
* '''21 May 2025''': Introduction with fellow developers. Discussed priority tools, adding Python/Pandas examples, and approaches for finalizing the JSON schema for each module.&lt;br /&gt;
&lt;br /&gt;
== Week-1 ==&lt;br /&gt;
&lt;br /&gt;
'''What did I get done this week?'''&lt;br /&gt;
* '''g.mapset''': Added JSON output support, now you can use -p and -l flags to get JSON-formatted results.&lt;br /&gt;
* '''r.univar''': Fixed a bug causing an uninitialized zone_value.&lt;br /&gt;
* '''r.what.color''': Implemented JSON output support. (See PR [https://github.com/OSGeo/grass/pull/5822 #5822])&lt;br /&gt;
* '''r.info (regression tests)''': To maintain backward compatibility while updating its interface, I added strong regression tests.&lt;br /&gt;
* '''r.info (interface improvements)''': Began improving the module’s interface. (See PR [https://github.com/OSGeo/grass/pull/5859 #5859])&lt;br /&gt;
&lt;br /&gt;
'''What do I plan on doing next week?'''&lt;br /&gt;
* Address review comments on my open PRs.&lt;br /&gt;
* Add JSON output support to g.version (see issue [https://github.com/OSGeo/grass/issues/5816 #5816]).&lt;br /&gt;
* Add JSON output support to i.group (see issue [https://github.com/OSGeo/grass/issues/5815 #5815]).&lt;br /&gt;
* If time permits, write tests for r.stats (see issue [https://github.com/OSGeo/grass/issues/5814 #5814]).&lt;br /&gt;
&lt;br /&gt;
'''Am I blocked on anything?'''&lt;br /&gt;
* No, I am not currently blocked on anything.&lt;br /&gt;
&lt;br /&gt;
== Week-2 ==&lt;br /&gt;
&lt;br /&gt;
'''What did I get done this week?'''&lt;br /&gt;
* '''g.version''': Implemented JSON output support. (See PR [https://github.com/OSGeo/grass/pull/5863 #5863])&lt;br /&gt;
* '''i.group''': Implemented JSON output support. (See PR [https://github.com/OSGeo/grass/pull/5870 #5870])&lt;br /&gt;
* '''r.stats (regression tests)''': To maintain backward compatibility while adding JSON format, I added strong regression tests.&lt;br /&gt;
* '''r.stats''': Added tests for JSON output; this uncovered a bug, which was fixed alongside.&lt;br /&gt;
&lt;br /&gt;
'''What do I plan on doing next week?'''&lt;br /&gt;
* Address review comments on my open PRs.&lt;br /&gt;
* Update JSON output format of v.distance (see issue [https://github.com/OSGeo/grass/issues/5846 #5846]).&lt;br /&gt;
* Add JSON output support to g.list (see issue [https://github.com/OSGeo/grass/issues/5848 #5848]).&lt;br /&gt;
* If time permits, fix the JSON output format of g.region (see issue [https://github.com/OSGeo/grass/issues/5828 #5828]).&lt;br /&gt;
&lt;br /&gt;
'''Am I blocked on anything?'''&lt;br /&gt;
* No, I am not currently blocked on anything.&lt;br /&gt;
&lt;br /&gt;
== Week-3 ==&lt;br /&gt;
&lt;br /&gt;
'''What did I get done this week?'''&lt;br /&gt;
* '''v.distance''': Updated the JSON output schema. (See PR [https://github.com/OSGeo/grass/pull/5898 #5898])&lt;br /&gt;
* '''r.stats''': Fixed a bug causing an uninitialized &amp;lt;code&amp;gt;window&amp;lt;/code&amp;gt; variable.&lt;br /&gt;
* '''g.list (regression tests)''': To maintain backward compatibility while adding JSON format, I added strong regression tests.&lt;br /&gt;
* '''g.list''': Implemented JSON output support. (See PR [https://github.com/OSGeo/grass/pull/5921 #5921])&lt;br /&gt;
* '''g.region''': Updated the JSON output schema. (See PR [https://github.com/OSGeo/grass/pull/5929 #5929])&lt;br /&gt;
&lt;br /&gt;
'''What do I plan on doing next week?'''&lt;br /&gt;
* Address review comments on my open PRs.&lt;br /&gt;
* Update JSON output format of v.to.db (see issue [https://github.com/OSGeo/grass/pull/5711 #5711]).&lt;br /&gt;
* Update JSON output format and documentation of r.profile (see issue [https://github.com/OSGeo/grass/pull/5834 #5834]).&lt;br /&gt;
* If time permits, add shell and csv output formats to r.univar (see issue [https://github.com/OSGeo/grass/pull/5824 #5824]).&lt;br /&gt;
&lt;br /&gt;
'''Am I blocked on anything?'''&lt;br /&gt;
* No, I am not currently blocked on anything.&lt;br /&gt;
&lt;br /&gt;
== Week-4 ==&lt;br /&gt;
&lt;br /&gt;
'''What did I get done this week?'''&lt;br /&gt;
* '''v.to.db''': Updated the JSON output schema. (See PR [https://github.com/OSGeo/grass/pull/5946 #5946])&lt;br /&gt;
* '''r.profile''': Updated the JSON output schema. (See PR [https://github.com/OSGeo/grass/pull/5962 #5962])&lt;br /&gt;
* '''r.univar''': Implemented SHELL and CSV output support. (See PR [https://github.com/OSGeo/grass/pull/5966 #5966])&lt;br /&gt;
&lt;br /&gt;
'''What do I plan on doing next week?'''&lt;br /&gt;
* Add JSON output support to r.regression.line (see issue [https://github.com/OSGeo/grass/pull/5950 #5950]).&lt;br /&gt;
* Add JSON output support to r.stats.quantile (see issue [https://github.com/OSGeo/grass/pull/5951 #5951]).&lt;br /&gt;
* Add JSON output support to r.volume (see issue [https://github.com/OSGeo/grass/pull/5949 #5949]).&lt;br /&gt;
&lt;br /&gt;
'''Am I blocked on anything?'''&lt;br /&gt;
* No, I am not currently blocked on anything.&lt;br /&gt;
&lt;br /&gt;
== Week-5 ==&lt;br /&gt;
&lt;br /&gt;
'''What did I get done this week?'''&lt;br /&gt;
* '''r.regression.line (regression tests)''': To maintain backward compatibility while adding JSON format, I added strong regression tests.&lt;br /&gt;
* '''r.regression.line''': Implemented JSON output support. (See PR [https://github.com/OSGeo/grass/pull/5993 #5993])&lt;br /&gt;
* '''r.stats.quantile (regression tests)''': To maintain backward compatibility while adding JSON format, I added strong regression tests.&lt;br /&gt;
* '''r.stats.quantile''': Implemented JSON output support. (See PR [https://github.com/OSGeo/grass/pull/6007 #6007])&lt;br /&gt;
* '''r.volume (regression tests)''': To maintain backward compatibility while adding JSON format, I added strong regression tests.&lt;br /&gt;
* '''r.volume''': Implemented JSON output support. (See PR [https://github.com/OSGeo/grass/pull/6036 #6036])&lt;br /&gt;
&lt;br /&gt;
'''What do I plan on doing next week?'''&lt;br /&gt;
* Add JSON output support to m.measure (see issue [https://github.com/OSGeo/grass/pull/6006 #6006]).&lt;br /&gt;
* Add JSON output support to db.columns (see issue [https://github.com/OSGeo/grass/pull/6008 #6008]).&lt;br /&gt;
* Add JSON output support to db.connect (see issue [https://github.com/OSGeo/grass/pull/6009 #6009]).&lt;br /&gt;
&lt;br /&gt;
'''Am I blocked on anything?'''&lt;br /&gt;
* No, I am not currently blocked on anything.&lt;br /&gt;
&lt;br /&gt;
== Week-6 ==&lt;br /&gt;
&lt;br /&gt;
'''What did I get done this week?'''&lt;br /&gt;
* '''db.columns''': Implemented JSON output support. (See PR [https://github.com/OSGeo/grass/pull/6042 #6042])&lt;br /&gt;
* '''m.measure (regression tests)''': To maintain backward compatibility while adding JSON format, I added strong regression tests.&lt;br /&gt;
* '''db.connect (regression tests)''': To maintain backward compatibility while adding JSON format, I added strong regression tests.&lt;br /&gt;
* '''m.measure''': Implemented JSON output support. (See PR [https://github.com/OSGeo/grass/pull/6053 #6053])&lt;br /&gt;
* '''db.connect''': Implemented JSON output support. (See PR [https://github.com/OSGeo/grass/pull/6059 #6059])&lt;br /&gt;
&lt;br /&gt;
'''What do I plan on doing next week?'''&lt;br /&gt;
* Add JSON output support to v.db.connect (see issue [https://github.com/OSGeo/grass/pull/6014 #6014]).&lt;br /&gt;
* Add JSON output support to r.regression.multi (see issue [https://github.com/OSGeo/grass/pull/6010 #6010]).&lt;br /&gt;
* If time permits, add JSON output support to g.findfile (see issue [https://github.com/OSGeo/grass/pull/6005 #6005]).&lt;br /&gt;
* If time permits, add JSON output support to r3.info (see issue [https://github.com/OSGeo/grass/pull/5995 #5995]).&lt;br /&gt;
&lt;br /&gt;
'''Am I blocked on anything?'''&lt;br /&gt;
* No, I am not currently blocked on anything.&lt;br /&gt;
&lt;br /&gt;
== Week-7 ==&lt;br /&gt;
&lt;br /&gt;
'''What did I get done this week?'''&lt;br /&gt;
* '''r.regression.multi (regression tests)''': To maintain backward compatibility while adding JSON format, I added strong regression tests.&lt;br /&gt;
* '''v.db.connect (regression tests)''': To maintain backward compatibility while adding JSON format, I added strong regression tests.&lt;br /&gt;
* '''r.regression.multi''': Implemented JSON output support. (See PR [https://github.com/OSGeo/grass/pull/6075 #6075])&lt;br /&gt;
* '''v.db.connect''': Implemented JSON output support. (See PR [https://github.com/OSGeo/grass/pull/6077 #6077])&lt;br /&gt;
&lt;br /&gt;
'''What do I plan on doing next week?'''&lt;br /&gt;
* Address review comments on my open PRs.&lt;br /&gt;
* Add JSON output support to g.findfile (see issue [https://github.com/OSGeo/grass/pull/6005 #6005]).&lt;br /&gt;
* Add JSON output support to r3.info (see issue [https://github.com/OSGeo/grass/pull/5995 #5995]).&lt;br /&gt;
* If time permits, add JSON output support to v.what.rast (see issue [https://github.com/OSGeo/grass/pull/6024 #6024]).&lt;br /&gt;
&lt;br /&gt;
'''Am I blocked on anything?'''&lt;br /&gt;
* No, I am not currently blocked on anything.&lt;br /&gt;
&lt;br /&gt;
== Week-8 ==&lt;br /&gt;
&lt;br /&gt;
'''What did I get done this week?'''&lt;br /&gt;
* '''g.findfile''': Implemented JSON output support. (See PR [https://github.com/OSGeo/grass/pull/6091 #6091])&lt;br /&gt;
* '''r3.info (regression tests)''': Added regression tests to ensure backward compatibility with new JSON support and fixed a flag-handling bug.&lt;br /&gt;
* '''r3.info''': Implemented JSON output support. (See PR [https://github.com/OSGeo/grass/pull/6103 #6103])&lt;br /&gt;
* '''v.what.rast (regression tests)''': Added regression tests to ensure backward compatibility with new JSON support and fixed a sorting bug.&lt;br /&gt;
&lt;br /&gt;
'''What do I plan on doing next week?'''&lt;br /&gt;
* Address review comments on my open PRs.&lt;br /&gt;
* Add JSON output support to v.what.rast (see issue [https://github.com/OSGeo/grass/pull/6024 #6024]).&lt;br /&gt;
* Update format to CSV instead of shell in v.category (see issue [https://github.com/OSGeo/grass/pull/6025 #6025]).&lt;br /&gt;
* Add CSV output support to r.stats (see issue [https://github.com/OSGeo/grass/issues/5835 #5835]).&lt;br /&gt;
* If time permits, add CSV output support to r.profile (see issue [https://github.com/OSGeo/grass/issues/5958 #5958]).&lt;br /&gt;
* If time permits, add CSV headers to r.volume (see issue [https://github.com/OSGeo/grass/issues/6049 #6049]).&lt;br /&gt;
&lt;br /&gt;
'''Am I blocked on anything?'''&lt;br /&gt;
* No, I don’t have any blockers this week. However, I’ll be a little busy with some personal work from August 3 to August 10, so I’ll try to complete next week’s tasks this week itself.&lt;br /&gt;
&lt;br /&gt;
== Week-9 ==&lt;br /&gt;
&lt;br /&gt;
'''What did I get done this week?'''&lt;br /&gt;
* '''v.category''': Updated format to CSV instead of shell. (See PR [https://github.com/OSGeo/grass/pull/6132 #6132])&lt;br /&gt;
* '''r.stats''': Implemented CSV output support. (See PR [https://github.com/OSGeo/grass/pull/6133 #6133])&lt;br /&gt;
* '''r.volume''': Implemented CSV column headers support. (See PR [https://github.com/OSGeo/grass/pull/6134 #6134])&lt;br /&gt;
* '''v.what.rast''': Implemented JSON output support. (See PR [https://github.com/OSGeo/grass/pull/6140 #6140])&lt;br /&gt;
* '''r.profile''': Implemented CSV output support. (See PR [https://github.com/OSGeo/grass/pull/6145 #6145])&lt;br /&gt;
* '''r.distance (regression tests)''': Updated regression tests to ensure backward compatibility with new JSON support. (See PR [https://github.com/OSGeo/grass/pull/6150 #6150])&lt;br /&gt;
&lt;br /&gt;
'''What do I plan on doing next week?'''&lt;br /&gt;
* I’ll be a bit busy with some personal work from August 3 to 10, so I completed next week’s tasks last week itself. I’ve already informed my mentors about my limited availability.&lt;br /&gt;
&lt;br /&gt;
'''Am I blocked on anything?'''&lt;br /&gt;
* Yes, I’ll be a bit busy with some personal work from August 3 to 10.&lt;br /&gt;
&lt;br /&gt;
== Week-10 ==&lt;br /&gt;
&lt;br /&gt;
'''What did I get done this week?'''&lt;br /&gt;
* This week I was busy with some personal work, so I did not complete any additional tasks. However, I had already finished this week’s tasks last week. This week, I mostly focused on handling reviews for those PRs.&lt;br /&gt;
&lt;br /&gt;
'''What do I plan on doing next week?'''&lt;br /&gt;
* Add JSON output support to r.distance (see issue [https://github.com/OSGeo/grass/issues/6135 #6135]).&lt;br /&gt;
* Add JSON output support to v.class (see issue [https://github.com/OSGeo/grass/issues/6136 #6136]).&lt;br /&gt;
&lt;br /&gt;
'''Am I blocked on anything?'''&lt;br /&gt;
* No, I am not currently blocked on anything.&lt;br /&gt;
&lt;br /&gt;
== Week-11 ==&lt;br /&gt;
&lt;br /&gt;
'''What did I get done this week?'''&lt;br /&gt;
* '''r.distance''': Implemented JSON and CSV output support. (See PR [https://github.com/OSGeo/grass/pull/6204 #6204])&lt;br /&gt;
* '''v.class''': Updated regression tests to ensure backward compatibility with new JSON support and fixed a out-of-bounds bug. (See PR [https://github.com/OSGeo/grass/pull/6205 #6205])&lt;br /&gt;
* '''v.class''': Implemented JSON and CSV output support. (See PR [https://github.com/OSGeo/grass/pull/6210 #6210])&lt;br /&gt;
&lt;br /&gt;
'''What do I plan on doing next week?'''&lt;br /&gt;
* Address review comments on my open PRs.&lt;br /&gt;
* Discuss next week’s tasks with my mentors, if no issues are assigned, I’ll identify tools that currently lack JSON support and evaluate which ones are feasible to add it to.&lt;br /&gt;
* Write the final GSoC report summarizing the work completed, changes merged, and next steps.&lt;br /&gt;
&lt;br /&gt;
'''Am I blocked on anything?'''&lt;br /&gt;
* No, I am not currently blocked on anything.&lt;br /&gt;
&lt;br /&gt;
= Log of Pull Requests =&lt;br /&gt;
Below is a list of pull requests submitted to the GRASS repository during GSoC 2025:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Pull Request !! Description  !! Date   !! Status &lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/5688 #5688] || r.univar: Fix JSON structure || May 20, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/5773 #5773] || r.what.color: Add test file || May 25, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/5775 #5775] || g.mapset: Add test file || May 26, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/5784 #5784] || r.info: Add Python example || May 28, 2025  || Closed&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/5785 #5785] || g.region: Add Python example || May 28, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/5810 #5810] || g.mapset: Add JSON support || June 2, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/5821 #5821] || r.univar: Fix uninitialized zone_value || June 3, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/5822 #5822] || r.what.color: Add JSON support || June 3, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/5842 #5842] || r.info: Update test file || June 5, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/5859 #5859] || r.info: Improve interface || June 7, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/5863 #5863] || g.version: Add JSON support || June 9, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/5870 #5870] || i.group: Add JSON support || June 10, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/5879 #5879] || r.stats: Add test file || June 12, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/5892 #5892] || r.stats: Add tests for JSON output || June 14, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/5898 #5898] || v.distance: Update JSON format || June 16, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/5900 #5900] || r.stats: fix uninitialised window value || June 17, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/5906 #5906] || g.list: Add test file || June 17, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/5921 #5921] || g.list: Add JSON support || June 20, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/5929 #5929] || g.region: Update JSON format || June 21, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/5946 #5946] || v.to.db: Update JSON format || June 23, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/5962 #5962] || r.profile: Update JSON format || June 25, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/5966 #5966] || r.univar: Add shell and CSV format || June 25, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/5990 #5990] || r.regression.line: Add test file || June 30, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/5993 #5993] || r.regression.line: Add JSON support || June 30, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/6002 #6002] || r.stats.quantile: Add test file || July 1, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/6007 #6007] || r.stats.quantile: Add JSON support || July 1, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/6027 #6027] || r.volume: Add test file || July 4, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/6036 #6036] || r.volume: Add JSON support || July 6, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/6042 #6042] || db.columns: Add JSON support || July 7, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/6051 #6051] || m.measure: Add test file || July 10, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/6052 #6052] || db.connect: Add test file || July 10, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/6053 #6053] || m.measure: Add JSON support || July 11, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/6059 #6059] || db.connect: Add JSON support || July 12, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/6066 #6066] || r.regression.multi: Add test file || July 15, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/6067 #6067] || v.db.connect: Add test file || July 15, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/6075 #6075] || r.regression.multi: Add JSON support || July 18, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/6077 #6077] || v.db.connect: Add JSON support || July 19, 2025  || Open&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/6091 #6091] || g.findfile: Add JSON support || July 21, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/6098 #6098] || r3.info: Add test file || July 22, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/6103 #6103] || r3.info: Add JSON support || July 23, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/6109 #6109] || v.what.rast: Add test file || July 24, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/6132 #6132] || v.category: Use CSV format instead of shell format || July 28, 2025  || Open&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/6133 #6133] || r.stats: add CSV support || July 28, 2025  || Open&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/6134 #6134] || r.volume: add csv column headers || July 28, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/6140 #6140] || v.what.rast: Add JSON support || July 29, 2025  || Open&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/6145 #6145] || r.profile: Add CSV support || July 30, 2025  || Open&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/6150 #6150] || r.distance: Update existing test cases || August 1, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/6204 #6204] || r.distance: Add JSON and CSV support || August 12, 2025  || Open&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/6205 #6205] || v.class: Add more test cases and fix out-of-bounds bug || August 12, 2025  || Merged&lt;br /&gt;
|-&lt;br /&gt;
| [https://github.com/OSGeo/grass/pull/6210 #6210] || v.class: Add JSON and CSV support || August 15, 2025  || Open&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{GSoC}}&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS_GSoC_Ideas_2025&amp;diff=28637</id>
		<title>GRASS GSoC Ideas 2025</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS_GSoC_Ideas_2025&amp;diff=28637"/>
		<updated>2025-08-20T14:18:28Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: accepted ideas&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== About ==&lt;br /&gt;
&lt;br /&gt;
* [https://wiki.osgeo.org/wiki/Google_Summer_of_Code_2025_Ideas The OSGeo GSoC 2025 main page]&lt;br /&gt;
* [https://summerofcode.withgoogle.com/ Official GSoC page at Google]&lt;br /&gt;
&lt;br /&gt;
== Accepted ideas ==&lt;br /&gt;
=== Add JSON output to different GRASS tools in C ===&lt;br /&gt;
* Student: 	Nishant Bansal&lt;br /&gt;
* Mentors: Anna Petrasova, Vaclav Petras and Corey White&lt;br /&gt;
* [[GRASS_GSoC_2025_Add_JSON_output_to_different_tools_in_C|Wiki page]]&lt;br /&gt;
&lt;br /&gt;
== Ideas ==&lt;br /&gt;
If you are a student you can suggest a new idea or pick up an existing one. In any case write about it to [https://discourse.osgeo.org/c/grass/developer/61 OSGeo Discourse forum for GRASS developers],[https://github.com/OSGeo/grass/discussions GitHub Discussions], or [https://gitter.im/grassgis/community Gitter].&lt;br /&gt;
&lt;br /&gt;
You are invited as well to have a close look at ideas from previous years ([https://trac.osgeo.org/grass/wiki/GSoC/2014 2014], [https://trac.osgeo.org/grass/wiki/GSoC/2015 2015], [https://trac.osgeo.org/grass/wiki/GSoC/2016 2016],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2017 2017],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2018 2018],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2019 2019],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2020 2020],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2021 2021],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2022 2022],&lt;br /&gt;
[https://trac.osgeo.org/grass/wiki/GSoC/2023 2023])&lt;br /&gt;
which have not yet been implemented.&lt;br /&gt;
You can also look at accepted GRASS GSoC [https://trac.osgeo.org/grass/wiki/GSoC projects from previous years] for an idea of scope.''&lt;br /&gt;
&lt;br /&gt;
Include &amp;quot;GRASS GIS&amp;quot; in the title of our idea to easily distinguish ideas and projects inside OSGeo.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Parallelization of existing tools ===&lt;br /&gt;
&lt;br /&gt;
There are several tools that would benefit from parallelization with OpenMP, e.g. r.texture, r.horizon, r.fill.stats, r/v.surf.idw, r.viewshed, v.to.rast, r.grow.distance, v.surf.bspline, ...&lt;br /&gt;
For overview of current state, see [[Raster_Parallelization_with_OpenMP]].&lt;br /&gt;
&lt;br /&gt;
* Requirements: familiarity with C, OpenMP&lt;br /&gt;
* Mentor: Huidae Cho&lt;br /&gt;
* Co-mentor: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes: parallelized module or modules, depending on complexity&lt;br /&gt;
* Test of skills: suggest/implement solution for https://github.com/OSGeo/grass/issues/2644&lt;br /&gt;
&lt;br /&gt;
=== Improve GRASS user experience in Jupyter Notebook ===&lt;br /&gt;
[[File:Jupyter_interactive_viewshed.png|500px|thumb|right|InteractiveMap in grass.jupyter library]]&lt;br /&gt;
Python package [https://grass.osgeo.org/grass-stable/manuals/libpython/grass.jupyter.html grass.jupyter] was developed during [https://trac.osgeo.org/grass/wiki/GSoC/2021/JupyterAndGRASS GSoC 2021] to simplify running GRASS from Jupyter Notebooks and displaying data. This project could focus on adding features such as increasing interactivity of displayed data using ipyleaflet, adding API for managing projects and subprojects (i.e., locations/mapsets), creating GUI for commands, ...&lt;br /&gt;
&lt;br /&gt;
* Requirements: Python&lt;br /&gt;
* Mentor: Anna Petrasova&lt;br /&gt;
* Co-mentor: Vaclav Petras, Helena Mitasova, Corey White&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: improved user experience when using GRASS through notebooks&lt;br /&gt;
* Test of skills: https://github.com/OSGeo/grass/issues/3276, or write a test for [https://github.com/OSGeo/grass/tree/main/python/grass/jupyter grass.jupyter library] using python unittest or pytest, more info [https://grass.osgeo.org/grass-devel/manuals/libpython/gunittest_testing.html here].&lt;br /&gt;
&lt;br /&gt;
=== Add JSON output to different tools in C ===&lt;br /&gt;
There are several tools in GRASS that would benefit from a JSON-formatted output, see [https://github.com/OSGeo/grass/issues/3020 this issue for a list of tools]. Besides adding the JSON output, the work would also include adding tests and basic documentation.&lt;br /&gt;
* Requirements: C, Python for tests&lt;br /&gt;
* Mentor: Vaclav Petras&lt;br /&gt;
* Co-mentor: Anna Petrasova, Corey White&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: one or more (depending on project length and complexity of the tool) tools with well tested JSON output&lt;br /&gt;
* Test of skills: Address https://github.com/OSGeo/grass/issues/1044 for r.surf.fractal&lt;br /&gt;
&lt;br /&gt;
=== Support writing tests with pytest ===&lt;br /&gt;
&lt;br /&gt;
* The current testing framework, ''[https://grass.osgeo.org/grass-stable/manuals/libpython/gunittest.html grass.gunittest]'', was written before migration to Git/GitHub and when long free runs in 3rd party services were unthinkable. Additionally, some no longer relevant goals were prioritized, such as independence on the current code, detailed custom HTML reports, success tracking over time, and high specialization towards GRASS-specifics.&lt;br /&gt;
* ''grass.gunittest'' is based on Python ''unittest'' package and many projects since then migrated to //pytest//, e.g., GDAL and Numpy. While ''unittest'' is inspired by Java's JUnit, ''pytest'' is designed to support writing small, readable tests, and uses plain `assert` statements instead of many different assert methods.&lt;br /&gt;
* Using ''pytest'' should lead to tests which feel more like Python scripts and to minimum of testing-specific code.&lt;br /&gt;
* An example issue of ''grass.gunittest'' is that it doesn't work well with tests of the main GRASS executable (prominence of `grass ... --exec` is yet another new thing which changed since ''grass.gunittest'' was designed).&lt;br /&gt;
* Two main things needed:&lt;br /&gt;
** Create general comparison functions from the ''grass.gunittest'' assert methods so that they can be used with pytest.&lt;br /&gt;
** Current grass.script.setup.init function and grass.script.core.create_location function don't work well in the context of a pytest test function. More  &lt;br /&gt;
* Additional things needed:&lt;br /&gt;
** Fixture for pytest to set up and tear down a GRASS session in a temporary mapset.&lt;br /&gt;
&lt;br /&gt;
* Requirements: Python&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Mentor: Vaclav Petras&lt;br /&gt;
* Co-mentor: Stefan Blumentrath&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Rating: easy to medium&lt;br /&gt;
* Expected Outcomes: Convenient way of writing tests with pytest&lt;br /&gt;
* Test of skills: Fix failing tests and/or write new tests (more is better). Alternatively, addressing a smaller problem in the testing framework is a good task, too.&lt;br /&gt;
&lt;br /&gt;
=== New easy-to-use CLI and API for GRASS GIS ===&lt;br /&gt;
&lt;br /&gt;
* Make running of GRASS GIS modules as easy as it is to run GDAL commands.&lt;br /&gt;
** `grass run r.slope.aspect elevation=elevation.tiff slope=slope.tiff aspect=aspect.tiff`&lt;br /&gt;
** CLI like GDAL has.&lt;br /&gt;
** No GRASS Database, Location, Mapset to deal with.&lt;br /&gt;
** No import, export from user perspective.&lt;br /&gt;
** Reasonable defaults for things like region.&lt;br /&gt;
** CLI and API still allows user to specify any of the above.&lt;br /&gt;
* Idea page with details: wiki:GSoC/2021/EasyToUseCliAndApiIdea&lt;br /&gt;
* Project length: 350 hours&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Requirements:&lt;br /&gt;
** Language: Python&lt;br /&gt;
** Proposal: Student needs to show sufficient understanding of the GRASS GIS Database structure and significantly extend on text below in terms of more concrete formulation of ideas and identification of missing and existing parts.&lt;br /&gt;
* Mentors: Vaclav Petras&lt;br /&gt;
* Co-mentors: Stefan Blumentrath, Corey White&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Expected outcomes: New subcommand which easily runs a GRASS module on GeoTiff and GeoPackage.&lt;br /&gt;
* Test and training tasks:&lt;br /&gt;
** Solve one of the tickets linked at the idea page.&lt;br /&gt;
** Add features to `grass` executable interface:&lt;br /&gt;
*** Make it possible to associate `*.gxw` files with `grass` executable (#1204) or at least add `--gui-workspace` or preferably just recognize it in the command line (distinguish it from database/location/mapset).&lt;br /&gt;
** Extend `--exec` functionality:&lt;br /&gt;
*** Add `--region` to set a temporary computational region for the execution, e.g. `--region=&amp;quot;raster=raster_name&amp;quot;`&lt;br /&gt;
*** Add `--import-raster=some/file.tiff` which imports (r.import) a raster file (same for vector and similarly for export).&lt;br /&gt;
*** Add `--link-raster=some/file.tiff` which links (r.external) a raster file (same for vector and similarly for r.external.out).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
=== STAC (SpatioTemporal Asset Catalog) Integration ===&lt;br /&gt;
&lt;br /&gt;
Create new import and export capabilities for GRASS GIS which allow users to easily ingest data from STAC catalogs and export locations and mapsets as STAC specs for data discovery within STAC browsers. &lt;br /&gt;
&lt;br /&gt;
* Requirements: familiar with python, STAC specs&lt;br /&gt;
* Mentor: Corey White&lt;br /&gt;
* Co-mentor: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes: completion of t.in.stac and t.out.stac&lt;br /&gt;
* Test of skills:&lt;br /&gt;
** suggest or implement solution for implementing t.out.stac using the prototype STAC spec https://github.com/tomorrownow/grass-stac-extension &lt;br /&gt;
** suggest/implement solution for completing https://github.com/OSGeo/grass-addons/pull/802&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== GUI: Add space-time datasets support in Data Catalog ===&lt;br /&gt;
[[File:GUI_data_tab.png|400px|thumb|right|Data catalog]]&lt;br /&gt;
Currently GRASS Data Catalog shows only raster and vector maps. The goal of this project is to add support for space-time datasets. It is mainly space-time raster datasets. In the next phase of the project support for other types of space-time datasets (vector and 3D raster) could be added. Besides displaying space-time datasets in the layer tree, it is also about adding the equivalent functionality currently available for raster and vector layers from the context menu. &lt;br /&gt;
&lt;br /&gt;
* Requirements: familiar with Python&lt;br /&gt;
* Project length: 175 or 350 hours&lt;br /&gt;
* Mentor: Martin Landa&lt;br /&gt;
* Co-mentor: Anna Petrasova&lt;br /&gt;
* Proposed by: Martin Landa&lt;br /&gt;
* Rating: medium&lt;br /&gt;
* Expected Outcomes:  175 hours basic support for space-time raster datasets; 350 extended support also for other space-time datasets types (vector, 3D raster)&lt;br /&gt;
* Test of skills:&lt;br /&gt;
** suggest/implement solution for completing https://github.com/OSGeo/grass/issues/2599&lt;br /&gt;
&lt;br /&gt;
=== Add {your research idea} to GRASS GIS ===&lt;br /&gt;
&lt;br /&gt;
* In general, you can propose any topic, but you can specifically propose integrating your research or research idea into GRASS GIS.&lt;br /&gt;
* Requirements:&lt;br /&gt;
** Language:&lt;br /&gt;
*** Depends on the project, often Python, sometimes C.&lt;br /&gt;
*** Adding your latest ecological analysis &lt;br /&gt;
** Proposal:&lt;br /&gt;
*** Discuss relevance to GRASS GIS.&lt;br /&gt;
*** Describe technical steps needed for integration.&lt;br /&gt;
*** Describe whether it is an addition of a tool (module) or a change in one of the libraries. If it is a tool, specify if it should be included in the core grass repository or in grass-addons repository and why.&lt;br /&gt;
*** Specify what research was done and what needs to be accomplished in order to have usable product at the end of summer.&lt;br /&gt;
*** Specify who will provide the research expertise.&lt;br /&gt;
* Project length: 175 or 350 hours (take your pick)&lt;br /&gt;
* Rating: from low to hard&lt;br /&gt;
* Mentors:&lt;br /&gt;
** GRASS GIS project will provide technical mentors, but it is up to the applicant to ensure the research part is mentored well. An exception may be granted to applicants which can demonstrate that the research is finished or that they have enough expertise themselves.&lt;br /&gt;
** Possible technical mentors: Vaclav Petras, Anna Petrasova&lt;br /&gt;
** Research mentors: Bring in an expert from your field, e.g., your academic advisor or project principal investigator (if needed).&lt;br /&gt;
* Proposed by: Vaclav Petras&lt;br /&gt;
* Expected outcome: Working feature which is integrated and merged at the end of the project.&lt;br /&gt;
* Test and training tasks:&lt;br /&gt;
** Create a test in Python for an existing tool in the grass-addons repository or in the core grass repository.&lt;br /&gt;
&lt;br /&gt;
=== Title of idea ===&lt;br /&gt;
&lt;br /&gt;
Description here&lt;br /&gt;
&lt;br /&gt;
* Requirements:&lt;br /&gt;
* Project length: (175 or 350 hours) &lt;br /&gt;
* Mentor: &lt;br /&gt;
* Proposed by: &lt;br /&gt;
* Rating: &lt;br /&gt;
* Expected Outcomes:  &lt;br /&gt;
* Test of skills: &lt;br /&gt;
* Other:&lt;br /&gt;
&lt;br /&gt;
== Tips for students ==&lt;br /&gt;
&lt;br /&gt;
* If you have your own ideas we encourage you to propose them. Explain them on the [https://lists.osgeo.org/listinfo/grass-dev grass-dev mailing list].&lt;br /&gt;
* If you like some idea here or from previous yeas, write about it on [https://lists.osgeo.org/listinfo/grass-dev grass-dev mailing list] and any ideas of your own which could improve it.&lt;br /&gt;
* Follow some good practices in your ideas and proposals:&lt;br /&gt;
** Stress why the project would be useful.&lt;br /&gt;
** Show that you know how you will proceed. That is, make sure that you can demonstrate that the proposal is feasible in the given time frame.&lt;br /&gt;
** Be specific in the implementation (or at least as specific as you can).&lt;br /&gt;
** Explain what the final product will look like and how it will work. You can add drawings or mock-ups.&lt;br /&gt;
** Explain how the idea relates to existing GRASS GIS functions, features, and needs.&lt;br /&gt;
** Do not include steps such as &amp;quot;install GRASS&amp;quot;, &amp;quot;compile GRASS libraries (on my machine)&amp;quot;, &amp;quot;read about the API&amp;quot;. You should do this before applying to GSoC.&lt;br /&gt;
* Compile GRASS GIS from source and prepare environment for development:&lt;br /&gt;
** Read [https://github.com/OSGeo/grass/blob/main/CONTRIBUTING.md CONTRIBUTING file] and [https://grasswiki.osgeo.org/wiki/Compile_and_Install compilation instructions].&lt;br /&gt;
** If you get stuck with the setup, feel free to consult the [https://lists.osgeo.org/listinfo/grass-user grass-user mailing list].&lt;br /&gt;
** Familiarize yourself with wiki:Submitting rules.&lt;br /&gt;
* Prove your worth by being active on the GRASS mailing lists ([https://lists.osgeo.org/listinfo/grass-user grass-user], [https://lists.osgeo.org/listinfo/grass-dev grass-dev]) or other channels ([https://github.com/OSGeo/grass/discussions GitHub Discussions], [https://gitter.im/grassgis/community Gitter]), fix some [https://github.com/OSGeo/grass/issues bugs], and/or implement some (smaller) features, or write some (simpler) GRASS module, and post it to mailing list. There's no better way to demonstrate your willingness and abilities. Do this before start you apply to GSoC. &lt;br /&gt;
* Also note that fixing existing bugs and/or implementing enhancements will be a part of student evaluation.&lt;br /&gt;
&lt;br /&gt;
* Every year GRASS GIS hopes to participate and participates in GSoC as part of the [https://www.osgeo.org/ OSGeo Foundation]'s GSoC program umbrella. See the official OSGeo template for application details and other important information at the [https://wiki.osgeo.org/wiki/Google_Summer_of_Code_Recommendations_for_Students OSGeo Recommendations for Students].&lt;br /&gt;
&lt;br /&gt;
{{GSoC}}&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=NSF_POSE_Project_2023-2025_Timeline&amp;diff=28490</id>
		<title>NSF POSE Project 2023-2025 Timeline</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=NSF_POSE_Project_2023-2025_Timeline&amp;diff=28490"/>
		<updated>2025-06-05T20:04:23Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: /* Y2 4th quarter report (06/25 - 08/25) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:NSF_grant_announcement.png|500px|right|none]]&lt;br /&gt;
&lt;br /&gt;
To inform GRASS community about the work done as part of the award [https://www.nsf.gov/awardsearch/showAward?AWD_ID=2303651 2303651] from the U.S. National Science Foundation (NSF) to enhance GRASS ecosystem, the following report summarizes the progress and outcomes in quarterly reports and presents the roadmap for the project.&lt;br /&gt;
&lt;br /&gt;
The two main goals of the project are: 1) to facilitate the adoption of GRASS GIS as a key geoprocessing engine by a growing number of researchers and geospatial practitioners in academia, governments, and industry; and 2) to expand and diversify the developer community, especially through supporting next-generation scientists to gain expertise to maintain and innovate GRASS software.&lt;br /&gt;
&lt;br /&gt;
Principal investigators and senior personnel:&lt;br /&gt;
&lt;br /&gt;
* Helena Mitasova, North Carolina State University (Principal Investigator)&lt;br /&gt;
* Vaclav Petras, North Carolina State University (Co-Principal Investigator)&lt;br /&gt;
* Anna Petrasova, North Carolina State University (Co-Principal Investigator)&lt;br /&gt;
* C Michael Barton, Arizona State University (Co-Principal Investigator)&lt;br /&gt;
* Huidae Cho, New Mexico State University (Co-Principal Investigator)&lt;br /&gt;
* Giuseppe Amatulli, Yale (Senior Personnel)&lt;br /&gt;
&lt;br /&gt;
Other personnel who is joining for the execution of the grant is listed below when relevant.&lt;br /&gt;
&lt;br /&gt;
== Y1 1st quarter report (09/23 - 11/23) ==&lt;br /&gt;
=== Project Announcements and Communication ===&lt;br /&gt;
* Announcement on [https://grass.osgeo.org/news/2023_09_06_nsf_grant_awarded/ GRASS website].&lt;br /&gt;
* Info session to explain the POSE Project ([https://lists.osgeo.org/pipermail/grass-user/2023-September/083423.html Announcement on GRASS user mailing list], 2 sessions for different time zones).&lt;br /&gt;
* Collected statistics from GitHub, X and others and set up automated collection for GitHub.&lt;br /&gt;
&lt;br /&gt;
=== Conference Presentations ===&lt;br /&gt;
* [https://petrasovaa.github.io/FUTURES-CONUS-talk/foss4gNA2023.html#/ Parallelization Tips for Geoprocessing with GRASS GIS] by Anna Petrasova at FOSS4GNA, October 2023.&lt;br /&gt;
* [https://wenzeslaus.github.io/grass-gis-talks/foss4gna2023.html#/ GRASS GIS: Not What You Think] by Vaclav Petras at FOSS4GNA, October 2023. &lt;br /&gt;
* [https://docs.google.com/presentation/d/1D-Fh1cLSPINyeXdVaxlakrE9IjB8kK5lIw3D12yX1bk Computational Notebooks for Reproducible Geospatial Computation in Research and Education] by Caitlin Haedrich at FOSS4GNA, October 2023.&lt;br /&gt;
* [https://github.com/HuidaeCho/grass-gis-talk-foss4g-asia-2023 State of GRASS GIS: 40 Years Strong and Counting] by Huidae Cho at FOSS4G Asia, November 2023.&lt;br /&gt;
&lt;br /&gt;
=== Training and Workshops ===&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/grass-gis-workshop-foss4gna-2023 Unlock the power of GRASS GIS] by Anna Petrasova and Caitlin Haedrich at FOSS4GNA, October 2023. &lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/develop-tools-with-grass-foss4gna-2023 Develop Geospatial Workflows and Custom Tools with GRASS GIS] by Vaclav Petras and Corey White at FOSS4GNA, October 2023.&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/grass-workshop-gis-week-2023 Big Data Computing with GRASS GIS] by Anna Petrasova and Vaclav Petras at NC State GIS week, November 2023.&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/grass-gis-on-hpc-henry2/blob/8564c72e9b8929c9ef4d25ada1ef36b569991221/docs/tutorial.md GIS Week Workshop: High Performance Computing for Geospatial Analysis (GRASS GIS part)] by Vaclav Petras (main lecture lead by Andrew Petersen from NCSU OIT) at NC State GIS week, November 2023.&lt;br /&gt;
* [https://spatial-ecology.net/docs/build/html/COURSESAROUNDTHEWORLD/course_geocomp_ml_04-05_2024.html Geocomputation and Machine Learning for Environmental Applications] training course [https://spatial-ecology.net/course-geocomputation-machine-learning-for-environmental-applications-intermediate-level-2024/ announced]. GRASS GIS part led by Giuseppe Amatulli is free of charge thanks to the support by NSF.&lt;br /&gt;
&lt;br /&gt;
=== Community Sprint Participation ===&lt;br /&gt;
Anna Petrasova and Vaclav Petras remotely participated in [https://wiki.osgeo.org/wiki/OSGeo_Community_Sprint_2023 OSGeo 2023 code sprint] doing PR reviews and maintenance of GRASS GIS code, documentation, and website.&lt;br /&gt;
&lt;br /&gt;
=== Mentoring Program ===&lt;br /&gt;
* Started a development-oriented mentoring program [https://grass.osgeo.org/news/2023_10_11_mentoring_program_announced/ announced] with details available on a [https://grasswiki.osgeo.org/wiki/Mentoring_Program wiki page].&lt;br /&gt;
* Program now has 4 participants (from 12 responses) supported by email and video calls.&lt;br /&gt;
* Program already resulted in improvements to GRASS GIS core and addons:&lt;br /&gt;
** merged PR: [https://github.com/OSGeo/grass/pull/3206 grass.script: ensure memmap content is flushed before writing to a raster]&lt;br /&gt;
** radar addon toolset PR: [https://github.com/OSGeo/grass-addons/pull/949 Add i.saocom and i.sar toolsets]&lt;br /&gt;
Mentoring Program is a new effort started and so-far performed only by the POSE team.&lt;br /&gt;
&lt;br /&gt;
=== Student Grants Program ===&lt;br /&gt;
Student grants [https://grass.osgeo.org/news/2023_11_09_student_grants_announced/ announced] with topics at a [https://grasswiki.osgeo.org/wiki/GRASS_GIS_Student_Grants wiki page]. Student Grants Program is an existing effort which the POSE team participates in.&lt;br /&gt;
&lt;br /&gt;
=== Working Groups ===&lt;br /&gt;
&lt;br /&gt;
Four [https://grasswiki.osgeo.org/wiki/Working_Groups working groups] created (scope, wiki page, coordinator, and a list of people for each).&lt;br /&gt;
&lt;br /&gt;
=== Citations ===&lt;br /&gt;
&lt;br /&gt;
* GRASS GIS Google Scholar [https://scholar.google.com/citations?user=gJ0ZB0cAAAAJ account] updated with more complete records.&lt;br /&gt;
* A [https://forms.gle/cDEvMJu7d6nvxLKn9 form] was created to collect new and missing records.&lt;br /&gt;
* Profile link added to GRASS website [https://grass.osgeo.org/contribute/ Contribute] and [https://grass.osgeo.org/about/citation/ Citation] page.&lt;br /&gt;
&lt;br /&gt;
== Y1 2nd quarter report (12/23 - 02/24) ==&lt;br /&gt;
=== NSF I-Corps program ===&lt;br /&gt;
Corey White, Vaclav Petras, and Anna Petrasova participated in a 4-week long intensive mandatory training that draws on the methods, customer discovery, and curriculum of the [https://new.nsf.gov/funding/initiatives/i-corps NSF Innovation Corps] and applies them to open-source projects.&lt;br /&gt;
&lt;br /&gt;
The program included conducting 70+ 30-minute interviews with both GRASS users and non-users to better shape the future path of GRASS GIS and the POSE project. So far, the interviews focused on educators, companies, researchers, influencers and it focused more on non-users than users.&lt;br /&gt;
&lt;br /&gt;
Next steps, include processing the collected qualitative data, developing possible future directions for sustainability of the project, discussing these with the Project Steering Committee, the core team of developers, and the broader community.&lt;br /&gt;
&lt;br /&gt;
=== Mentoring Program ===&lt;br /&gt;
The development oriented [https://grass.osgeo.org/news/2023_10_11_mentoring_program_announced/ mentoring program] welcomed 5 new participants from various institutions including universities, USGS, US Army Corps of Engineers, and local municipalities. The discussed topics covered developing workflows for topography and network analysis, environmental modeling, and geophysics. Participants were supported by email and video calls.&lt;br /&gt;
&lt;br /&gt;
=== Conference Presentations ===&lt;br /&gt;
* [https://agu.confex.com/agu/fm23/meetingapp.cgi/Paper/1342418 Modeling vegetated stream buffer impacts on water depth and discharge at the watershed scale with GRASS GIS and Jupyter Notebooks] by Caitlin Haedrich at AGU, December 2023.&lt;br /&gt;
* [https://agu.confex.com/agu/fm23/meetingapp.cgi/Paper/1420596 OpenPlains: A Web-Based Platform to Democratize Geospatial Participatory Modeling on the Cloud] by Corey White at AGU, December 2023.&lt;br /&gt;
&lt;br /&gt;
=== Presentations and Workshops ===&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/grass-gis-workshop-vanderbilt-2024 Intro to GRASS GIS] by Vaclav Petras and Anna Petrasova was remotely delivered to geographers at Vanderbilt University in February 2024. The  workshop was developed in Jupyter Lab and run using [https://wholetale.org WholeTale] online platform.&lt;br /&gt;
* [https://github.com/tomorrownow/intro-to-geoprocessing-workshop Introduction to GRASS GIS Geospatial Processing] by Corey White at [https://smathhacks.ncssm.edu/ SMathHacks hackathon], March 2nd (supported also by Veronica Andreo and Vaclav Petras). SMathHacks is the annual 36-hour hackathon hosted by the NC School of Science and Math, open to all North Carolina students. Students collaborate to build innovative software projects, explore new technologies, and have fun along the way. The workshop was delivered in person with students using [https://colab.research.google.com/ Google Colab].&lt;br /&gt;
&lt;br /&gt;
=== Student Grant Program ===&lt;br /&gt;
Linda Karlovska participates in the [https://grasswiki.osgeo.org/wiki/GRASS_GIS_Student_Grants Student Grant program] with her project [https://trac.osgeo.org/grass/wiki/wxGUIDevelopment/EasyCommandHistoryNavigation Easy command history navigation through the History browser panel] mentored by Anna Petrasova (POSE team) and Martin Landa (FCE CTU). Student Grants Program is an existing effort which the POSE team participates in by mentoring.&lt;br /&gt;
&lt;br /&gt;
=== Code Security ===&lt;br /&gt;
Vaclav Petras mentors four students who create code security improvements in their NCSU class ''CSC 472: Cybersecurity Practicum''. So far, the students created two PRs which were successfully merged: &lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/3444 grass.script: Change insecure mktemp to NamedTemporaryFile #3444]&lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/3451 utils: fixed shell vulnerability in mkrest.py #3451]&lt;br /&gt;
&lt;br /&gt;
Two other PRs are open and more work is underway to do first steps for new approach to a more secure code.&lt;br /&gt;
&lt;br /&gt;
=== Localized Basic Datasets ===&lt;br /&gt;
* NCSU and ASU teams worked on localized versions of GRASS basic data set following the [https://grass.osgeo.org/sampledata/north_carolina/nc_basic_spm_grass7.zip North Carolina basic data set example], preparing Flagstaff, Arizona and Nepal draft version with basic layers&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Y1 3rd quarter report (03/24 - 05/24) ==&lt;br /&gt;
&lt;br /&gt;
=== Mentoring Activities ===&lt;br /&gt;
The mentoring program form received 2 new responses and mentors were actively working with 3 mentees.&lt;br /&gt;
It resulted in fixes in [https://github.com/OSGeo/grass-addons/pull/1042 v.transects] and [https://github.com/OSGeo/grass-addons/pull/1077 r.accumulate].&lt;br /&gt;
&lt;br /&gt;
Linda Kladivova finished her project developing [https://trac.osgeo.org/grass/wiki/wxGUIDevelopment/EasyCommandHistoryNavigation History browser] in the GRASS GUI as part of the GRASS Student Grant Program. Mentor's time was covered by POSE.&lt;br /&gt;
&lt;br /&gt;
GRASS GIS has [https://grass.osgeo.org/news/2024_05_27_gsoc_2024_students/ 3 students this year for Google Summer of Code]. Time spent managing GSoC for GRASS GIS was covered by POSE.&lt;br /&gt;
&lt;br /&gt;
The topics covered by GSoC projects are:&lt;br /&gt;
* [https://grasswiki.osgeo.org/wiki/GRASS_GSoC_2024_EODAG_Support Add EODAG support to GRASS GIS]&lt;br /&gt;
* [https://grasswiki.osgeo.org/wiki/GRASS_GSoC_2024_Improve_user_experience_in_Jupyter_Notebooks Improve GRASS user experience in Jupyter Notebook]&lt;br /&gt;
* [https://grasswiki.osgeo.org/wiki/GRASS_GSoC_2024_Add_JSON_output Add JSON output to different GRASS tools in C]&lt;br /&gt;
&lt;br /&gt;
=== Presentations, Workshops, Event Planning ===&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/tngic-2024 GRASS 101: From GUI Clicks to Writing Scripts (TNGIC 2024)] by Veronica Andreo and Caitlin Haedrich&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/csdms-grass-2024 Coastal evolution analysis and inundation modeling with GRASS GIS (CSDMS Workshop 2024)] by Caitlin Haedrich and Pratikshya Regmi, see also [https://cnr.ncsu.edu/geospatial/news/2024/06/03/students-teach-grass-gis-for-coastal-hazard-analysis/ blog post with images]&lt;br /&gt;
&lt;br /&gt;
* Organization of [[GRASS Community Meeting Prague 2024]] and budget planning by Vaclav Petras&lt;br /&gt;
&lt;br /&gt;
=== CMake transition ===&lt;br /&gt;
Ongoing work on [https://github.com/OSGeo/grass/pull/3621 CMake compilation] was partially covered by POSE.&lt;br /&gt;
&lt;br /&gt;
=== Code Quality and Security ===&lt;br /&gt;
&lt;br /&gt;
Code quality improvements in Python code:&lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/3541 PR addressing Flake8 E501] (long lines in 158 files not fixable by automated tools)&lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/3535 PR addressing Flake8 E401] (unused imports)&lt;br /&gt;
&lt;br /&gt;
Vaclav Petras mentored a team of four students who create code security improvements in their NCSU class ''CSC 472: Cybersecurity Practicum''. The team created 12 PRs which were successfully merged, 7 additional experimental PRs (not merged) and 2 PRs which are still open at this time. Specifically, the team achieved the following:&lt;br /&gt;
&lt;br /&gt;
* With the involvement and help from the other contributors, the team introduced Bandit and Coverity Scan as additional code scanning tools for Python and C, respectively.&lt;br /&gt;
* The team analyzed issues reported CodeQL, Bandit, and Coverity Scan and reported on relevance of different issues to the project (report privately shared with the GRASS Development Team).&lt;br /&gt;
* Vulnerability Triage Guide (also privately shared with the GRASS Development Team).&lt;br /&gt;
* The team also developed a [https://github.com/OSGeo/grass/security/policy security policy] for the project.&lt;br /&gt;
* The vulnerability reporting and security advisories were enabled based on the team recommendations.&lt;br /&gt;
* The team fixed several specific security issues in the code:&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3469  packaging: Use subprocess instead of os.popen for change log creation #3469] (merged)&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3549  lib raster: fixed security vulnerabilities and weaknesses #3549] (merged)&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3451  utils: fixed shell vulnerability in mkrest.py #3451] (merged)&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3444  grass.script: Change insecure mktemp to NamedTemporaryFile #3444] (merged)&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3551  lib/psdriver: Fix issues with wrong type of arguments to printf #3551] (PR open)&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3452 g.region/r.to.rast3elev: fixed scanf error to recognize EOF as a possible return value #3452] (PR open)&lt;br /&gt;
&lt;br /&gt;
=== Documentation ===&lt;br /&gt;
* Documentation and Education Working Group met and planned the development of new tutorials. Veronica Andreo met other GRASS developers and contributors to coordinate further tutorials development.&lt;br /&gt;
* Development of new [https://github.com/ncsu-geoforall-lab/tutorials tutorials] in progress, topics include:&lt;br /&gt;
** Getting started with GRASS GIS&lt;br /&gt;
** GRASS GIS in Google Colab&lt;br /&gt;
** GRASS GIS and Python&lt;br /&gt;
** GRASS GIS and R&lt;br /&gt;
** GRASS R and Python comparison&lt;br /&gt;
** Making plots in GRASS GIS&lt;br /&gt;
* New [https://github.com/OSGeo/grass/blob/main/doc/development/style_guide.md GRASS Programming Style Guide]&lt;br /&gt;
* [https://github.com/petrasovaa/cookiecutter-grass-addon New addon template powered by Cookiecutter]&lt;br /&gt;
* Analysis of options names and functionality in plotting tools:&lt;br /&gt;
** [https://github.com/OSGeo/grass-addons/issues/1071 Addons for plotting: Standardize parameters and flags]&lt;br /&gt;
&lt;br /&gt;
=== Communication and outreach ===&lt;br /&gt;
&lt;br /&gt;
* Creation of 4 news post in the [https://grass.osgeo.org/news/ GRASS website]&lt;br /&gt;
* Social media:&lt;br /&gt;
** [https://twitter.com/GRASSGIS Twitter]: 9 new posts/threads&lt;br /&gt;
** [https://fosstodon.org/@grassgis Fosstodon]: 9 new posts/threads&lt;br /&gt;
&lt;br /&gt;
=== Other sustainability activities ===&lt;br /&gt;
* [https://github.com/OSGeo/grass/blob/main/CODE_OF_CONDUCT.md Code of Conduct added to the main repository]&lt;br /&gt;
* [https://github.com/OSGeo/grass/blob/main/.github/ISSUE_TEMPLATE/bug_report.md revised Issue template]&lt;br /&gt;
* New [https://github.com/OSGeo/grass/pull/3673 RFC for a Release Policy]&lt;br /&gt;
* Revised [https://github.com/OSGeo/grass/pull/2815 RFC for Release Procedure]&lt;br /&gt;
* WIP: GRASS GIS Roadmap&lt;br /&gt;
* [https://github.com/OSGeo/grass-website/issues/414 GRASS website: ongoing restructuring]&lt;br /&gt;
* [[PSC]] page moved from trac wiki to media wiki&lt;br /&gt;
&lt;br /&gt;
== Y1 4th quarter report (06/24 - 08/24) ==&lt;br /&gt;
&lt;br /&gt;
=== Mentoring Activities ===&lt;br /&gt;
The mentoring program form received 3 new responses and mentors were actively working with 3 mentees.&lt;br /&gt;
Results include parallelization of r.texture, r.horizon, improved grass.benchmarking library and a new tutorial on lidar data.&lt;br /&gt;
&lt;br /&gt;
GSoC successfully completed their projects:&lt;br /&gt;
* [https://grasswiki.osgeo.org/wiki/GRASS_GSoC_2024_EODAG_Support Add EODAG support to GRASS GIS]&lt;br /&gt;
* [https://grasswiki.osgeo.org/wiki/GRASS_GSoC_2024_Improve_user_experience_in_Jupyter_Notebooks Improve GRASS user experience in Jupyter Notebook]&lt;br /&gt;
* [https://grasswiki.osgeo.org/wiki/GRASS_GSoC_2024_Add_JSON_output Add JSON output to different GRASS tools in C]&lt;br /&gt;
&lt;br /&gt;
Time spent by mentoring was covered by NSF.&lt;br /&gt;
&lt;br /&gt;
=== Presentations, Workshops, Event Planning ===&lt;br /&gt;
&lt;br /&gt;
* [https://veroandreo.github.io/grass_foss4geu_2024/ Let's combine GRASS, Python and R: Satellite time series data for species distribution modeling]. Workshop by Veronica Andreo. FOSS4G Europe 2024, Tartu.&lt;br /&gt;
* [https://veroandreo.github.io/grass-gis-talks/foss4gEU2024.html#/ Status of GRASS GIS project]. Talk by Veronica Andreo. FOSS4G Europe 2024, Tartu.&lt;br /&gt;
* [https://veroandreo.github.io/grass-gis-talks/useR2024.html#/ Boost Spatial Data Science Workflows with GRASS GIS and R]. Talk  by Veronica Andreo. useR Conference 2024, Salzburg.&lt;br /&gt;
* [https://ncsu-geoforall-lab.github.io/usdoi-webinar/notebooks/grass_jupyter.html Geoprocessing with GRASS GIS and Jupyter Notebooks]. Webinar by Corey White. U.S. DOI, August 2024, NCSU.&lt;br /&gt;
* [[GRASS Community Meeting Prague 2024]]&lt;br /&gt;
&lt;br /&gt;
* [https://spatial-ecology.net/docs/build/html/COURSESAROUNDTHEWORLD/course_GEO-OPEN-HACK-2024_06_2024.html GEO-OPEN-HACK-2024: Big Geospatial Data Hackathon with Open Infrastructure and Tools]  training course delivered ([https://iiasa.ac.at/events/jun-2024/geo-open-hack-2024-big-geospatial-data-hackathon-with-open-infrastructure-and-tools announcement]). The GRASS material has been developed as part of the NSF grant. &lt;br /&gt;
&lt;br /&gt;
* Planning GRASS Dev summit 2025 at NCSU&lt;br /&gt;
&lt;br /&gt;
* Planning AGU (4 abstract submitted), AGU booth for GRASS GIS reserved and payed&lt;br /&gt;
&lt;br /&gt;
* Submitted workshop, talk and keynote to FOSS4G 2024 - Brazil.&lt;br /&gt;
&lt;br /&gt;
=== CMake transition ===&lt;br /&gt;
Ongoing work on [https://github.com/OSGeo/grass/pull/3621 CMake compilation] was partially covered by POSE.&lt;br /&gt;
&lt;br /&gt;
=== Code Quality and Security ===&lt;br /&gt;
&lt;br /&gt;
* Code quality improvements in Python code:&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3763 Flake8 W605 Invalid escape sequence #3763]&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3926 Flake8 E741 Do not use variables named 'I', 'O', or 'l' in wxGUI code #3926]&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3928 Flake8 E741 for the rest of code base #3928]&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/4200  grass.temporal: Flake8 F841 Local variable assigned to but never used #4200]&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/4113  grass.pygrass: Remove unused arg in ctypes.CFUNCTYPE #4113]&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/4206 t.rast.to.vect: Fix passing column parameter to r.to.vect, fix flake8 F841 #4206]&lt;br /&gt;
&lt;br /&gt;
* Code quality and security improvements in C and C++ code are in 36 PRs with fixes for more than 25 tools, specifically in:&lt;br /&gt;
** raster: r.path, r.out.mpeg, r.out.png, r.in.xyz, r.terraflow, r.statistics, r.spreadpath, r.sim.water, r.sim.erosion, r.object.geometry, r.coin&lt;br /&gt;
** imagery: i.atcorr, i.aster.toar, i.ortho.photo, i.landsat.acca, i.segment, i.smap&lt;br /&gt;
** display: d.linegraph, d.legend.vect, d.histogram, d.labels&lt;br /&gt;
** raster 3D: r3.in.v5d, r3.info, r3.mapcalc&lt;br /&gt;
** other: lib/gis, lib/vector/diglib, g.findfile, g.setproj, ps.map, lib/cdhc&lt;br /&gt;
&lt;br /&gt;
Changes by author: [https://github.com/OSGeo/grass/pulls?q=author%3AShubhamDesai+is%3Apr+is%3Aclosed+merged%3A2024-06-01..2024-08-31+base%3Amain+sort%3Aupdated-desc+ ShubhamDesai], [https://github.com/OSGeo/grass/pulls?q=author%3Amshukuno+is%3Apr+is%3Aclosed+merged%3A2024-06-01..2024-08-31+base%3Amain+sort%3Aupdated-desc+ Makiko Shukunobe], [https://github.com/OSGeo/grass/pulls?q=author%3Aymdatta+is%3Apr+is%3Aclosed+merged%3A2024-06-01..2024-08-31+base%3Amain+sort%3Aupdated-desc+ ymdatta]&lt;br /&gt;
&lt;br /&gt;
Several reviewers, not supported by the NSF POSE project, played crucial role not only in reviewing, but also in determining the right fixes.&lt;br /&gt;
&lt;br /&gt;
Fixed issues were reported by Flake8, Coverity Scan, and Cppcheck.&lt;br /&gt;
&lt;br /&gt;
=== Tests ===&lt;br /&gt;
&lt;br /&gt;
Changes by author: [https://github.com/OSGeo/grass/pulls?q=author%3AShreshth-Malik+is%3Apr+is%3Aclosed+merged%3A2024-12-01..2025-02-28+base%3Amain+sort%3Aupdated-desc+ Shreshth-Malik]&lt;br /&gt;
&lt;br /&gt;
=== Documentation ===&lt;br /&gt;
&lt;br /&gt;
* Veronica Andreo met some GRASS developers and contributors to follow up on tutorials development.&lt;br /&gt;
* 7 new [https://github.com/ncsu-geoforall-lab/tutorials tutorials] on time series:&lt;br /&gt;
** Management and visualization&lt;br /&gt;
** Aggregation&lt;br /&gt;
** Algebra&lt;br /&gt;
** Accumulation&lt;br /&gt;
** Gap filling&lt;br /&gt;
** Querying raster time series with vectors&lt;br /&gt;
** Subset, import and export&lt;br /&gt;
* Tutorial on how to set up Jupyter and GRASS in Windows&lt;br /&gt;
* New [https://github.com/OSGeo/grass-tutorials repository] under OSGeo organization to host the upcoming quarto based website for GRASS tutorials&lt;br /&gt;
* PR template created - [https://github.com/OSGeo/grass/community GitHub Community Standards] all checked complete&lt;br /&gt;
&lt;br /&gt;
=== Communication and outreach ===&lt;br /&gt;
&lt;br /&gt;
* Creation of 4 news posts in the [https://grass.osgeo.org/news/ GRASS website]&lt;br /&gt;
* Social media:&lt;br /&gt;
** [https://twitter.com/GRASSGIS Twitter]: 25 new posts&lt;br /&gt;
** [https://fosstodon.org/@grassgis Fosstodon]: 25 new posts&lt;br /&gt;
* New GRASS GIS LinkedIn page at: [https://www.linkedin.com/company/grass-gis/ https://www.linkedin.com/company/grass-gis/]&lt;br /&gt;
* Requested transition of [https://discourse.osgeo.org/t/osgeo-3255-migrate-grass-dev-mailing-list-to-discourse/49796 grass-dev mailing list to discourse.osgeo.org]&lt;br /&gt;
* Set up GRASS GIS swag shop on Redbubble&lt;br /&gt;
&lt;br /&gt;
=== Governance ===&lt;br /&gt;
* [https://grass.osgeo.org/about/roadmap/ Roadmap] and [https://grass.osgeo.org/about/governance/ Governance] pages added to the website &lt;br /&gt;
* PSC elections:&lt;br /&gt;
** Documented criteria to define people entitled to vote&lt;br /&gt;
** Documented procedure to compile the list of voters&lt;br /&gt;
** Elections [https://www.mail-archive.com/grass-user@lists.osgeo.org/msg41102.html announcement] sent out&lt;br /&gt;
&lt;br /&gt;
== Y2 1st quarter report (09/24 - 11/24) ==&lt;br /&gt;
&lt;br /&gt;
=== Presentations and Workshops ===&lt;br /&gt;
FOSS4GNA 2024 in St. Louis, Missouri:&lt;br /&gt;
&lt;br /&gt;
* Vaclav Petras. State of GRASS GIS. FOSS4G NA St. Louis, September 9-11, 2024 ([https://wenzeslaus.github.io/grass-gis-talks/foss4gna2024.html slides])&lt;br /&gt;
* Huidae Cho. Evolution of GRASS GIS. FOSS4G NA St. Louis, September 9-11, 2024 ([https://htmlpreview.github.io/?https://github.com/HuidaeCho/grass-talks/blob/main/foss4g-na-2024.html slides])&lt;br /&gt;
* Huidae Cho. An OpenMP Algorithm for Delineating a Large Number of Watersheds. FOSS4G NA St. Louis, September 9-11, 2024&lt;br /&gt;
* Corey T. White. Developing Web-Applications with GRASS GIS. Workshop. FOSS4G NA St. Louis, September 9-11, 2024&lt;br /&gt;
* Corey T. White. GRASS GIS as a Geospatial Computational Engine. FOSS4G NA St. Louis, September 9-11, 2024&lt;br /&gt;
&lt;br /&gt;
=== Communication and outreach ===&lt;br /&gt;
* Transition of grass-dev mailing list to [https://discourse.osgeo.org/c/grass/developer/61 discourse.osgeo.org] finished.&lt;br /&gt;
&lt;br /&gt;
=== Code Quality and Security ===&lt;br /&gt;
* Python code quality issues addressed in more than 70 PRs, reducing the list of per-file ignores by more than 60%.&lt;br /&gt;
* Code quality and security improvements in C and C++ code are in more than 80 PRs.&lt;br /&gt;
* In total, these changes improve more than 60 tools, specifically:&lt;br /&gt;
** raster: r.water.outlet, r.watershed, r.mfilter, r.to.vect, r.in.poly, r.carve, r.thin, r.fill.dir, r.clump, r.in.gridatb, r.out.png, r.in.wms, r.viewshed, r.fillnulls, r.in.srtm, r.in.pdal, r.in.xyz&lt;br /&gt;
** vector: v.out.dxf, v.build.polylines, v.external.out, v.net, v.univar, v.in.ascii, v.delaunay, v.hull , v.net.timetable, v.kernel, v.to.db, v.colors, v.rectify, v.reclass, v.generalize, v.transform, v.vol.rst, v.cluster, v.to.3d, v.out.ogr, v.external, v.in.dwg, v.report, v.unpack, v.import&lt;br /&gt;
** imagery: i.topo.corr, i.attcorr, i.ortho.photo, i.segment, i.rectify, i.topo.corr, i.panshrapen&lt;br /&gt;
** display: d.vect, d.mon, d.frame, d.rast.edit&lt;br /&gt;
** other: GUI, grass main executable, g.proj, g.version, db.out.ogr, ps.map, r3.in.v5d, r3.in.v5d, lib/vector/Vlib, lib/ogsf, lib/gis, lib/db, lib/lidar, lib/linkm, grass.temporal, grass.script&lt;br /&gt;
&lt;br /&gt;
Changes by author: [https://github.com/OSGeo/grass/pulls?q=author%3AShubhamDesai+is%3Apr+is%3Aclosed+merged%3A2024-09-01..2024-11-30+base%3Amain+sort%3Aupdated-desc+ ShubhamDesai], [https://github.com/OSGeo/grass/pulls?q=author%3Aymdatta+is%3Apr+is%3Aclosed+merged%3A2024-09-01..2024-11-30+base%3Amain+sort%3Aupdated-desc+ ymdatta],&lt;br /&gt;
[https://github.com/OSGeo/grass/pulls?q=author%3Aarohanajit+is%3Apr+is%3Aclosed+merged%3A2024-09-01..2024-11-30+base%3Amain+sort%3Aupdated-desc+ Arohan Ajit]&lt;br /&gt;
&lt;br /&gt;
Several reviewers, not supported by the NSF POSE project, played crucial role not only in reviewing, but also in determining the right fixes. The NSF POSE project personnel focused on fixing issues reported by Flake8, Coverity Scan, and Cppcheck, however also Ruff and Pylint are utilized in GRASS GIS thanks to other contributors.&lt;br /&gt;
&lt;br /&gt;
A configure file for Cppcheck is now included in the repository highlighting the level of compliance and aiding contributors in local analysis and subsequent implementation of fixes ([https://github.com/OSGeo/grass/pull/4766 PR #4766]).&lt;br /&gt;
&lt;br /&gt;
Finally, we created a new public GitHub project in the OSGeo GitHub organization for [https://github.com/orgs/OSGeo/projects/11 GRASS GIS Security] to track and communicate progress on the security front with 147 resolved items and 8 in-progress items at the time of writing.&lt;br /&gt;
&lt;br /&gt;
=== Documentation, both Internal and External ===&lt;br /&gt;
&lt;br /&gt;
* To improve indexing of GRASS GIS manual pages, we revised our current sitemap ([https://github.com/OSGeo/grass-website/pull/482 grass-website/pull/482)]), added a updated sitemap to Google Search Console and Bing, fixed robots.txt, and triggered and re-triggered the indexing many times to make Google consume the new content. While before, some searches gave outdated documentation, experimental websites, or unofficial resources only, now the official website and stable documentation is returned as the first search result.&lt;br /&gt;
* All older manuals, including version 6.4 and 6.5, are now available (restored) so that search engines can consume them and old links and indices continue to work. They now newly contain the canonical URLs so that search engines understand the structure and don't penalize duplicate content.&lt;br /&gt;
* On OSGeo server which hosts GRASS GIS website, we replaced some of the redirects in Apache by local soft links so that URL like grass.osgeo.org/grass-stable stay as is for both humans and machines and don't redirect to specific version (easier to copy-paste from a browser URL bar and easier for search engine to understand what is the page to show).&lt;br /&gt;
* We implemented the necessary changes into the cronjobs and did overall updates to enable build of the server-side documentation jobs locally for testing purposes. The most relevant PRs are:&lt;br /&gt;
** [https://github.com/OSGeo/grass-addons/pull/1241 Inject canonical URLs into older manual pages (SEO) #1241]&lt;br /&gt;
** [https://github.com/OSGeo/grass-addons/pull/1173 Fix red new version box injection and script documentation #1173]&lt;br /&gt;
** [https://github.com/OSGeo/grass-addons/pull/1215 Expand script to run stand-alone #1215]&lt;br /&gt;
* We advanced the [https://github.com/orgs/OSGeo/projects/9 GRASS Markdown Documentation project].&lt;br /&gt;
* New and better wording for intro to imagery tools: [https://github.com/OSGeo/grass/pull/4536 Add intro text to imageryintro.html #4536]&lt;br /&gt;
* List of GRASS GIS profiles on different websites is now in an internal PSC document.&lt;br /&gt;
* Documentation of all the internal infrastructure, especially that of grass.osgeo.org server, is now in an internal PSC document.&lt;br /&gt;
* We painstakingly identified and described all maintenance procedures performed by Markus Neteler in OSGeo SAC capacity for GRASS GIS and as a contributor to GRASS GIS for better work distribution.&lt;br /&gt;
* Most of the work on the documentation was done through a contract with Markus Neteler with additional help from Martin Landa for the transition to Markdown.&lt;br /&gt;
&lt;br /&gt;
=== Mentoring Activities ===&lt;br /&gt;
Mentors were actively working with 3 mentees.&lt;br /&gt;
&lt;br /&gt;
=== Event Planning and Organizing ===&lt;br /&gt;
&lt;br /&gt;
[[File:Raleigh_2016_11_05.jpg|500px|thumb|right|alt=Rooms, tables and large open space|Smaller space utilized in the past for a local GRASS GIS meetup in Hunt library at NC State University campus (photos are from a [[GRASS GIS Raleigh meetups 2016|2016 meetup]])]]&lt;br /&gt;
&lt;br /&gt;
We are planning and organizing GRASS GIS Developer Summit in Raleigh, NC, USA at North Carolina State University.&lt;br /&gt;
&lt;br /&gt;
* High-demand spaces reserved at NCSU (some since May 2024, other since September 2024).&lt;br /&gt;
* A [https://discourse.osgeo.org/t/grass-dev-save-the-date-grass-developer-summit-raleigh-2025/85540 save-the-date post for grass-dev], interest form, and first round of additional invites. (Date established earlier in spring 2024 by NSF POSE team after a survey of PSC members and Core Development Team members.)&lt;br /&gt;
* We addressed participant's visa needs based on the responses to the interest form.&lt;br /&gt;
* We formed the initial Organizing Committee formed and rough event agenda created.&lt;br /&gt;
* Page created: [[GRASS Developer Summit Raleigh 2025]].&lt;br /&gt;
&lt;br /&gt;
== Y2 2nd quarter report (12/24 - 02/25) ==&lt;br /&gt;
&lt;br /&gt;
=== Presentations, Workshops, Event Planning ===&lt;br /&gt;
&lt;br /&gt;
[[File:GRASS GIS booth AGU24.jpg|500px|thumb|right|alt=GRASS GIS booth at AGU24|GRASS GIS booth at AGU24, Washington, DC]]&lt;br /&gt;
&lt;br /&gt;
AGU24 Annual Meeting, Washington, DC, USA:&lt;br /&gt;
* GRASS GIS booth in the Exhibit Hall with a banner, new flyers, and a Tangible Landscape setup to demonstrate some of the capabilities of GRASS GIS (Monday afternoon - Thursday morning)&lt;br /&gt;
* GRASS GIS for Advanced Earth Systems Analysis and Modeling (eLightning) by Vaclav Petras&lt;br /&gt;
* Perspectives from an Open Source Geospatial Modeling Platform Maintainer (poster) by Anna Petrasova&lt;br /&gt;
* GRASS GIS Is FAIR: Its Evolution Towards Open Science (poster) by Huidae Cho&lt;br /&gt;
* GRASS GIS as a Platform for Dissemination of Reusable Geocomputational Research (poster) by Vaclav Petras&lt;br /&gt;
&lt;br /&gt;
Beyond the GIS Map: Open Source Tools for Geospatial Research, Workshop at the Institute for Social Science   Research Arizona State University. 11 December 2024  &lt;br /&gt;
* Michael Barton and Eunice Villaseñor Iribe, instructors  &lt;br /&gt;
* Topics  &lt;br /&gt;
** Introduction to GRASS&lt;br /&gt;
** Modeling Terrain in GRASS&lt;br /&gt;
** Modeling Movement in GRASS&lt;br /&gt;
** Remote Sensing With GRASS&lt;br /&gt;
&lt;br /&gt;
Physically-based hydrologic modeling using GRASS GIS r.topmodel, Workshop at New Mexico State University. January 31, 2025, 1pm-5pm.&lt;br /&gt;
* Instructor: Huidae Cho&lt;br /&gt;
* Assistant: Nelson Kandel&lt;br /&gt;
* Participants: 17&lt;br /&gt;
* Topics&lt;br /&gt;
** Introduction to GRASS&lt;br /&gt;
** Hydrologic Modeling Using GRASS&lt;br /&gt;
** Model Calibration and Validation&lt;br /&gt;
&lt;br /&gt;
=== Code Quality and Security ===&lt;br /&gt;
&lt;br /&gt;
Changes by author: [https://github.com/OSGeo/grass/pulls?q=author%3AShubhamDesai+is%3Apr+is%3Aclosed+merged%3A2024-12-01..2025-02-28+base%3Amain+sort%3Aupdated-desc+ ShubhamDesai], [https://github.com/OSGeo/grass/pulls?q=author%3Aarohanajit+is%3Apr+is%3Aclosed+merged%3A2024-12-01..2025-02-28+base%3Amain+sort%3Aupdated-desc+ Arohan Ajit]&lt;br /&gt;
&lt;br /&gt;
=== Tests ===&lt;br /&gt;
&lt;br /&gt;
Changes by author: [https://github.com/OSGeo/grass/pulls?q=author%3AShreshth-Malik+is%3Apr+is%3Aclosed+merged%3A2024-12-01..2025-02-28+base%3Amain+sort%3Aupdated-desc+ Shreshth-Malik], [https://github.com/OSGeo/grass/pulls?q=author%3Ajayneel-shah18+is%3Apr+is%3Aclosed+merged%3A2024-12-01..2025-02-28+base%3Amain+sort%3Aupdated-desc+ jayneel-shah18]&lt;br /&gt;
&lt;br /&gt;
=== Documentation and Tutorials ===&lt;br /&gt;
We finalized and prepared for launch Quarto-based tutorial website editable through GitHub. OSGeo provided a new domain [https://grass-tutorials.osgeo.org/ grass-tutorials.osgeo.org]. Initial set of tutorials were created by Veronica Andreo when she was part of the NSF POSE team (some tutorials will be finalized and released later). Anna Petrasova did the reviews, curation, posts for external tutorials, and transition from list of tutorials at the main website.&lt;br /&gt;
&lt;br /&gt;
We did a major push to create Markdown files in the source code and enable the compilation of documentation for mkdocs. We also configured the mkdocs and revised the Markdown syntax in the files.&lt;br /&gt;
&lt;br /&gt;
=== Communication and outreach ===&lt;br /&gt;
&lt;br /&gt;
Renewed [https://www.youtube.com/@grass-gis Youtube channel @grass-gis] by adding playlists, organizing videos, and updating branding.&lt;br /&gt;
&lt;br /&gt;
=== Governance ===&lt;br /&gt;
Submitted application for GRASS GIS to join NumFocus.&lt;br /&gt;
&lt;br /&gt;
=== Event Planning and Organizing ===&lt;br /&gt;
&lt;br /&gt;
* Created draft of schedule, agenda, and budget.&lt;br /&gt;
* Identified participants eligible for travel support.&lt;br /&gt;
** While the meeting is open to anyone, the NSF-funded travel support is based on priorities set in the NSF POSE project for the Developer Summit.&lt;br /&gt;
** Specifically, we are inviting individuals identified based on the following criteria (in this order; moving to the next group if there is still available places):&lt;br /&gt;
*** Top 20 contributors to OSGeo/grass in the last two years (2023-2024), but not a bot or NSF POSE personnel (contributing only within NSF POSE). (After exclusions, this is less than 10 people.) &lt;br /&gt;
*** PSC member before or after 2024 elections, but not NSF POSE personnel at the time of the meeting. (With PSC members currently contributing code as well, this is only a couple of people after exclusions.)&lt;br /&gt;
*** Active participant in one of the mentoring programs. (Participant demonstrated the activity by attending meetings, reporting progress, or submitting code for feedback or review.)&lt;br /&gt;
*** Contributors to connections and interfaces prioritized in or during the NSF POSE project:&lt;br /&gt;
**** R packages (2 slots for active contributors or maintainers determined by previously established contacts in the given community through their activity on a relevant code base.)&lt;br /&gt;
**** GRASS GIS code in QGIS (2 slots for active contributors or maintainers determined by previously established contacts in the given community through their activity on a relevant code base.)&lt;br /&gt;
*** Contributors in &amp;quot;write&amp;quot; teams for OSGeo/grass, OSGeo/grass-addons, OSGeo/grass-website, and OSGeo/grass-tutorials repositories. (Almost all fall into one of the above groups.)&lt;br /&gt;
*** Contributors to closely related projects, specifically actinia, the GRASS GDAL driver, and the GRASS GeoServer datastore.&lt;br /&gt;
* Sent individual invites to participants eligible for travel support. (ongoing)&lt;br /&gt;
&lt;br /&gt;
== Y2 3rd quarter report (03/25 - 05/25) ==&lt;br /&gt;
&lt;br /&gt;
=== Governance ===&lt;br /&gt;
* GRASS accepted NumFOCUS (more steps to make it official)&lt;br /&gt;
&lt;br /&gt;
=== Presentations, Workshops, Event Planning ===  &lt;br /&gt;
* Beyond the GIS Map: Open Source Tools for Geospatial Research, Workshop at the Institute for Social Science   Research Arizona State University. 25 March 2025 &lt;br /&gt;
** Michael Barton and Eunice Villaseñor Iribe, instructors  &lt;br /&gt;
** Topics: Introduction, Modeling Terrain, Modeling Movement, Remote Sensing with GRASS&lt;br /&gt;
* IALE-NA: [https://github.com/ncsu-geoforall-lab/iale-2025-workshop-tl Building Geospatial Models in GRASS: From Python Workflows to Tangible Landscape], April 15th, hosted by the Center for Geospatial Analytics&lt;br /&gt;
** Anna Petrasova and Caitlin Haedrich&lt;br /&gt;
** 20 participants&lt;br /&gt;
&lt;br /&gt;
* [[GRASS_Developer_Summit_Raleigh_2025]] (see the page for details)&lt;br /&gt;
&lt;br /&gt;
== Y2 4th quarter report (06/25 - 08/25) ==&lt;br /&gt;
&lt;br /&gt;
=== Governance ===&lt;br /&gt;
* GRASS onboarding with NumFOCUS&lt;br /&gt;
&lt;br /&gt;
=== Presentations, Workshops, Event Planning ===  &lt;br /&gt;
* Geomorphometry workshop - Corey White and Caitlin Haedrich&lt;br /&gt;
&lt;br /&gt;
=== Documentation and Tutorials ===&lt;br /&gt;
* contributed tutorials &lt;br /&gt;
** fasterRaster by Adam Smith&lt;br /&gt;
** Intro to RS by Michael Barton&lt;br /&gt;
** Time series tutorials by Veronica Andreo&lt;br /&gt;
&lt;br /&gt;
=== Mentoring ===&lt;br /&gt;
* new addons:&lt;br /&gt;
** r.earthworks by Brendan Harmon&lt;br /&gt;
** r.gravity.correction by David Farris&lt;br /&gt;
** r.curvenumber by Abdullah Azzam&lt;br /&gt;
** improvements to r.hydro.flatten by Doug Newcomb&lt;br /&gt;
* Xarray backend for GRASS by Laurent Courty&lt;br /&gt;
* GSoC: Adding JSON to tool output&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
;Mentoring program (fall 2023 - summer 2025)&lt;br /&gt;
:Free developer-oriented mentoring program to support researchers and software developers to integrate GRASS GIS into their workflows and contribute to GRASS GIS.&lt;br /&gt;
&lt;br /&gt;
; Streamline contributor onboarding (spring 2024 - fall 2024)&lt;br /&gt;
: Includes updating and creating guidelines for code and non-code contributions.&lt;br /&gt;
&lt;br /&gt;
; Streamline user onboarding (spring 2024 - fall 2024)&lt;br /&gt;
: Includes modernizing tool documentation, developing tutorials.&lt;br /&gt;
: Creating sample datasets for localized tutorials.&lt;br /&gt;
: Developing online training materials for big data processing.&lt;br /&gt;
&lt;br /&gt;
; Training sessions (fall 2023 - summer 2025)&lt;br /&gt;
: Local training sessions (at universities and conferences) introducing GRASS GIS to students and researchers.&lt;br /&gt;
: Training program for big data processing delivered online.&lt;br /&gt;
&lt;br /&gt;
; Engaging industry partners and user (January 2024 - August 2025)&lt;br /&gt;
: Identify and engage industry partners to gather feedback and to start industry partnership program.&lt;br /&gt;
&lt;br /&gt;
; Conferences&lt;br /&gt;
: Presence (talks, workshops, networking) at FOSS4GNA 2023, FOSS4G Asia 2023, AGU 2023, CSDMD 2024, FOSS4G Europe 2024, FOSS4G 2024, AGU 2024&lt;br /&gt;
&lt;br /&gt;
; Community sprints&lt;br /&gt;
: Virtual or in-person participation in OSGeo community sprints, GRASS GIS community sprints&lt;br /&gt;
&lt;br /&gt;
; Software distribution (January 2024 - May 2025)&lt;br /&gt;
: Transition to CMake build system&lt;br /&gt;
: Develop conda package&lt;br /&gt;
&lt;br /&gt;
;Simplify maintenance of GRASS integrations with QGIS and R (2024-2025)&lt;br /&gt;
: Virtual meetings with QGIS and R developers and GRASS GIS developers (spring 2024).&lt;br /&gt;
: Identify and implement improvements to the integration.&lt;br /&gt;
&lt;br /&gt;
;Improve code quality, security, and quality assurance &lt;br /&gt;
: Code quality (Flake8, Pylint, Cppcheck), first half of 2024.&lt;br /&gt;
: Security (CodeQL), second half of 2024.&lt;br /&gt;
: Quality assurance (better pytest integration), second half of 2024.&lt;br /&gt;
&lt;br /&gt;
; In-person developer summit (May 19 - May 24, 2025)&lt;br /&gt;
: Hosted by NC State University, Raleigh, NC, USA.&lt;br /&gt;
: Identify additional challenges for adoption of GRASS GIS as geoprocessing engine.&lt;br /&gt;
: Long-term planning beyond the POSE project.&lt;br /&gt;
&lt;br /&gt;
== Acknowledgements ==&lt;br /&gt;
&lt;br /&gt;
The funding is provided by the U.S. National Science Foundation, award 2303651.&lt;br /&gt;
[[File:NSF Official logo.png|frameless|left]]&lt;br /&gt;
&lt;br /&gt;
[[Category: Community]]&lt;br /&gt;
[[Category: Conferences‏‎]]&lt;br /&gt;
[[Category: 2023]]&lt;br /&gt;
[[Category: 2024]]&lt;br /&gt;
[[Category: 2025]]&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=NSF_POSE_Project_2023-2025_Timeline&amp;diff=28489</id>
		<title>NSF POSE Project 2023-2025 Timeline</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=NSF_POSE_Project_2023-2025_Timeline&amp;diff=28489"/>
		<updated>2025-06-05T20:03:37Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: /* Y2 4th quarter report (06/25 - 08/25) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:NSF_grant_announcement.png|500px|right|none]]&lt;br /&gt;
&lt;br /&gt;
To inform GRASS community about the work done as part of the award [https://www.nsf.gov/awardsearch/showAward?AWD_ID=2303651 2303651] from the U.S. National Science Foundation (NSF) to enhance GRASS ecosystem, the following report summarizes the progress and outcomes in quarterly reports and presents the roadmap for the project.&lt;br /&gt;
&lt;br /&gt;
The two main goals of the project are: 1) to facilitate the adoption of GRASS GIS as a key geoprocessing engine by a growing number of researchers and geospatial practitioners in academia, governments, and industry; and 2) to expand and diversify the developer community, especially through supporting next-generation scientists to gain expertise to maintain and innovate GRASS software.&lt;br /&gt;
&lt;br /&gt;
Principal investigators and senior personnel:&lt;br /&gt;
&lt;br /&gt;
* Helena Mitasova, North Carolina State University (Principal Investigator)&lt;br /&gt;
* Vaclav Petras, North Carolina State University (Co-Principal Investigator)&lt;br /&gt;
* Anna Petrasova, North Carolina State University (Co-Principal Investigator)&lt;br /&gt;
* C Michael Barton, Arizona State University (Co-Principal Investigator)&lt;br /&gt;
* Huidae Cho, New Mexico State University (Co-Principal Investigator)&lt;br /&gt;
* Giuseppe Amatulli, Yale (Senior Personnel)&lt;br /&gt;
&lt;br /&gt;
Other personnel who is joining for the execution of the grant is listed below when relevant.&lt;br /&gt;
&lt;br /&gt;
== Y1 1st quarter report (09/23 - 11/23) ==&lt;br /&gt;
=== Project Announcements and Communication ===&lt;br /&gt;
* Announcement on [https://grass.osgeo.org/news/2023_09_06_nsf_grant_awarded/ GRASS website].&lt;br /&gt;
* Info session to explain the POSE Project ([https://lists.osgeo.org/pipermail/grass-user/2023-September/083423.html Announcement on GRASS user mailing list], 2 sessions for different time zones).&lt;br /&gt;
* Collected statistics from GitHub, X and others and set up automated collection for GitHub.&lt;br /&gt;
&lt;br /&gt;
=== Conference Presentations ===&lt;br /&gt;
* [https://petrasovaa.github.io/FUTURES-CONUS-talk/foss4gNA2023.html#/ Parallelization Tips for Geoprocessing with GRASS GIS] by Anna Petrasova at FOSS4GNA, October 2023.&lt;br /&gt;
* [https://wenzeslaus.github.io/grass-gis-talks/foss4gna2023.html#/ GRASS GIS: Not What You Think] by Vaclav Petras at FOSS4GNA, October 2023. &lt;br /&gt;
* [https://docs.google.com/presentation/d/1D-Fh1cLSPINyeXdVaxlakrE9IjB8kK5lIw3D12yX1bk Computational Notebooks for Reproducible Geospatial Computation in Research and Education] by Caitlin Haedrich at FOSS4GNA, October 2023.&lt;br /&gt;
* [https://github.com/HuidaeCho/grass-gis-talk-foss4g-asia-2023 State of GRASS GIS: 40 Years Strong and Counting] by Huidae Cho at FOSS4G Asia, November 2023.&lt;br /&gt;
&lt;br /&gt;
=== Training and Workshops ===&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/grass-gis-workshop-foss4gna-2023 Unlock the power of GRASS GIS] by Anna Petrasova and Caitlin Haedrich at FOSS4GNA, October 2023. &lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/develop-tools-with-grass-foss4gna-2023 Develop Geospatial Workflows and Custom Tools with GRASS GIS] by Vaclav Petras and Corey White at FOSS4GNA, October 2023.&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/grass-workshop-gis-week-2023 Big Data Computing with GRASS GIS] by Anna Petrasova and Vaclav Petras at NC State GIS week, November 2023.&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/grass-gis-on-hpc-henry2/blob/8564c72e9b8929c9ef4d25ada1ef36b569991221/docs/tutorial.md GIS Week Workshop: High Performance Computing for Geospatial Analysis (GRASS GIS part)] by Vaclav Petras (main lecture lead by Andrew Petersen from NCSU OIT) at NC State GIS week, November 2023.&lt;br /&gt;
* [https://spatial-ecology.net/docs/build/html/COURSESAROUNDTHEWORLD/course_geocomp_ml_04-05_2024.html Geocomputation and Machine Learning for Environmental Applications] training course [https://spatial-ecology.net/course-geocomputation-machine-learning-for-environmental-applications-intermediate-level-2024/ announced]. GRASS GIS part led by Giuseppe Amatulli is free of charge thanks to the support by NSF.&lt;br /&gt;
&lt;br /&gt;
=== Community Sprint Participation ===&lt;br /&gt;
Anna Petrasova and Vaclav Petras remotely participated in [https://wiki.osgeo.org/wiki/OSGeo_Community_Sprint_2023 OSGeo 2023 code sprint] doing PR reviews and maintenance of GRASS GIS code, documentation, and website.&lt;br /&gt;
&lt;br /&gt;
=== Mentoring Program ===&lt;br /&gt;
* Started a development-oriented mentoring program [https://grass.osgeo.org/news/2023_10_11_mentoring_program_announced/ announced] with details available on a [https://grasswiki.osgeo.org/wiki/Mentoring_Program wiki page].&lt;br /&gt;
* Program now has 4 participants (from 12 responses) supported by email and video calls.&lt;br /&gt;
* Program already resulted in improvements to GRASS GIS core and addons:&lt;br /&gt;
** merged PR: [https://github.com/OSGeo/grass/pull/3206 grass.script: ensure memmap content is flushed before writing to a raster]&lt;br /&gt;
** radar addon toolset PR: [https://github.com/OSGeo/grass-addons/pull/949 Add i.saocom and i.sar toolsets]&lt;br /&gt;
Mentoring Program is a new effort started and so-far performed only by the POSE team.&lt;br /&gt;
&lt;br /&gt;
=== Student Grants Program ===&lt;br /&gt;
Student grants [https://grass.osgeo.org/news/2023_11_09_student_grants_announced/ announced] with topics at a [https://grasswiki.osgeo.org/wiki/GRASS_GIS_Student_Grants wiki page]. Student Grants Program is an existing effort which the POSE team participates in.&lt;br /&gt;
&lt;br /&gt;
=== Working Groups ===&lt;br /&gt;
&lt;br /&gt;
Four [https://grasswiki.osgeo.org/wiki/Working_Groups working groups] created (scope, wiki page, coordinator, and a list of people for each).&lt;br /&gt;
&lt;br /&gt;
=== Citations ===&lt;br /&gt;
&lt;br /&gt;
* GRASS GIS Google Scholar [https://scholar.google.com/citations?user=gJ0ZB0cAAAAJ account] updated with more complete records.&lt;br /&gt;
* A [https://forms.gle/cDEvMJu7d6nvxLKn9 form] was created to collect new and missing records.&lt;br /&gt;
* Profile link added to GRASS website [https://grass.osgeo.org/contribute/ Contribute] and [https://grass.osgeo.org/about/citation/ Citation] page.&lt;br /&gt;
&lt;br /&gt;
== Y1 2nd quarter report (12/23 - 02/24) ==&lt;br /&gt;
=== NSF I-Corps program ===&lt;br /&gt;
Corey White, Vaclav Petras, and Anna Petrasova participated in a 4-week long intensive mandatory training that draws on the methods, customer discovery, and curriculum of the [https://new.nsf.gov/funding/initiatives/i-corps NSF Innovation Corps] and applies them to open-source projects.&lt;br /&gt;
&lt;br /&gt;
The program included conducting 70+ 30-minute interviews with both GRASS users and non-users to better shape the future path of GRASS GIS and the POSE project. So far, the interviews focused on educators, companies, researchers, influencers and it focused more on non-users than users.&lt;br /&gt;
&lt;br /&gt;
Next steps, include processing the collected qualitative data, developing possible future directions for sustainability of the project, discussing these with the Project Steering Committee, the core team of developers, and the broader community.&lt;br /&gt;
&lt;br /&gt;
=== Mentoring Program ===&lt;br /&gt;
The development oriented [https://grass.osgeo.org/news/2023_10_11_mentoring_program_announced/ mentoring program] welcomed 5 new participants from various institutions including universities, USGS, US Army Corps of Engineers, and local municipalities. The discussed topics covered developing workflows for topography and network analysis, environmental modeling, and geophysics. Participants were supported by email and video calls.&lt;br /&gt;
&lt;br /&gt;
=== Conference Presentations ===&lt;br /&gt;
* [https://agu.confex.com/agu/fm23/meetingapp.cgi/Paper/1342418 Modeling vegetated stream buffer impacts on water depth and discharge at the watershed scale with GRASS GIS and Jupyter Notebooks] by Caitlin Haedrich at AGU, December 2023.&lt;br /&gt;
* [https://agu.confex.com/agu/fm23/meetingapp.cgi/Paper/1420596 OpenPlains: A Web-Based Platform to Democratize Geospatial Participatory Modeling on the Cloud] by Corey White at AGU, December 2023.&lt;br /&gt;
&lt;br /&gt;
=== Presentations and Workshops ===&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/grass-gis-workshop-vanderbilt-2024 Intro to GRASS GIS] by Vaclav Petras and Anna Petrasova was remotely delivered to geographers at Vanderbilt University in February 2024. The  workshop was developed in Jupyter Lab and run using [https://wholetale.org WholeTale] online platform.&lt;br /&gt;
* [https://github.com/tomorrownow/intro-to-geoprocessing-workshop Introduction to GRASS GIS Geospatial Processing] by Corey White at [https://smathhacks.ncssm.edu/ SMathHacks hackathon], March 2nd (supported also by Veronica Andreo and Vaclav Petras). SMathHacks is the annual 36-hour hackathon hosted by the NC School of Science and Math, open to all North Carolina students. Students collaborate to build innovative software projects, explore new technologies, and have fun along the way. The workshop was delivered in person with students using [https://colab.research.google.com/ Google Colab].&lt;br /&gt;
&lt;br /&gt;
=== Student Grant Program ===&lt;br /&gt;
Linda Karlovska participates in the [https://grasswiki.osgeo.org/wiki/GRASS_GIS_Student_Grants Student Grant program] with her project [https://trac.osgeo.org/grass/wiki/wxGUIDevelopment/EasyCommandHistoryNavigation Easy command history navigation through the History browser panel] mentored by Anna Petrasova (POSE team) and Martin Landa (FCE CTU). Student Grants Program is an existing effort which the POSE team participates in by mentoring.&lt;br /&gt;
&lt;br /&gt;
=== Code Security ===&lt;br /&gt;
Vaclav Petras mentors four students who create code security improvements in their NCSU class ''CSC 472: Cybersecurity Practicum''. So far, the students created two PRs which were successfully merged: &lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/3444 grass.script: Change insecure mktemp to NamedTemporaryFile #3444]&lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/3451 utils: fixed shell vulnerability in mkrest.py #3451]&lt;br /&gt;
&lt;br /&gt;
Two other PRs are open and more work is underway to do first steps for new approach to a more secure code.&lt;br /&gt;
&lt;br /&gt;
=== Localized Basic Datasets ===&lt;br /&gt;
* NCSU and ASU teams worked on localized versions of GRASS basic data set following the [https://grass.osgeo.org/sampledata/north_carolina/nc_basic_spm_grass7.zip North Carolina basic data set example], preparing Flagstaff, Arizona and Nepal draft version with basic layers&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Y1 3rd quarter report (03/24 - 05/24) ==&lt;br /&gt;
&lt;br /&gt;
=== Mentoring Activities ===&lt;br /&gt;
The mentoring program form received 2 new responses and mentors were actively working with 3 mentees.&lt;br /&gt;
It resulted in fixes in [https://github.com/OSGeo/grass-addons/pull/1042 v.transects] and [https://github.com/OSGeo/grass-addons/pull/1077 r.accumulate].&lt;br /&gt;
&lt;br /&gt;
Linda Kladivova finished her project developing [https://trac.osgeo.org/grass/wiki/wxGUIDevelopment/EasyCommandHistoryNavigation History browser] in the GRASS GUI as part of the GRASS Student Grant Program. Mentor's time was covered by POSE.&lt;br /&gt;
&lt;br /&gt;
GRASS GIS has [https://grass.osgeo.org/news/2024_05_27_gsoc_2024_students/ 3 students this year for Google Summer of Code]. Time spent managing GSoC for GRASS GIS was covered by POSE.&lt;br /&gt;
&lt;br /&gt;
The topics covered by GSoC projects are:&lt;br /&gt;
* [https://grasswiki.osgeo.org/wiki/GRASS_GSoC_2024_EODAG_Support Add EODAG support to GRASS GIS]&lt;br /&gt;
* [https://grasswiki.osgeo.org/wiki/GRASS_GSoC_2024_Improve_user_experience_in_Jupyter_Notebooks Improve GRASS user experience in Jupyter Notebook]&lt;br /&gt;
* [https://grasswiki.osgeo.org/wiki/GRASS_GSoC_2024_Add_JSON_output Add JSON output to different GRASS tools in C]&lt;br /&gt;
&lt;br /&gt;
=== Presentations, Workshops, Event Planning ===&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/tngic-2024 GRASS 101: From GUI Clicks to Writing Scripts (TNGIC 2024)] by Veronica Andreo and Caitlin Haedrich&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/csdms-grass-2024 Coastal evolution analysis and inundation modeling with GRASS GIS (CSDMS Workshop 2024)] by Caitlin Haedrich and Pratikshya Regmi, see also [https://cnr.ncsu.edu/geospatial/news/2024/06/03/students-teach-grass-gis-for-coastal-hazard-analysis/ blog post with images]&lt;br /&gt;
&lt;br /&gt;
* Organization of [[GRASS Community Meeting Prague 2024]] and budget planning by Vaclav Petras&lt;br /&gt;
&lt;br /&gt;
=== CMake transition ===&lt;br /&gt;
Ongoing work on [https://github.com/OSGeo/grass/pull/3621 CMake compilation] was partially covered by POSE.&lt;br /&gt;
&lt;br /&gt;
=== Code Quality and Security ===&lt;br /&gt;
&lt;br /&gt;
Code quality improvements in Python code:&lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/3541 PR addressing Flake8 E501] (long lines in 158 files not fixable by automated tools)&lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/3535 PR addressing Flake8 E401] (unused imports)&lt;br /&gt;
&lt;br /&gt;
Vaclav Petras mentored a team of four students who create code security improvements in their NCSU class ''CSC 472: Cybersecurity Practicum''. The team created 12 PRs which were successfully merged, 7 additional experimental PRs (not merged) and 2 PRs which are still open at this time. Specifically, the team achieved the following:&lt;br /&gt;
&lt;br /&gt;
* With the involvement and help from the other contributors, the team introduced Bandit and Coverity Scan as additional code scanning tools for Python and C, respectively.&lt;br /&gt;
* The team analyzed issues reported CodeQL, Bandit, and Coverity Scan and reported on relevance of different issues to the project (report privately shared with the GRASS Development Team).&lt;br /&gt;
* Vulnerability Triage Guide (also privately shared with the GRASS Development Team).&lt;br /&gt;
* The team also developed a [https://github.com/OSGeo/grass/security/policy security policy] for the project.&lt;br /&gt;
* The vulnerability reporting and security advisories were enabled based on the team recommendations.&lt;br /&gt;
* The team fixed several specific security issues in the code:&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3469  packaging: Use subprocess instead of os.popen for change log creation #3469] (merged)&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3549  lib raster: fixed security vulnerabilities and weaknesses #3549] (merged)&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3451  utils: fixed shell vulnerability in mkrest.py #3451] (merged)&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3444  grass.script: Change insecure mktemp to NamedTemporaryFile #3444] (merged)&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3551  lib/psdriver: Fix issues with wrong type of arguments to printf #3551] (PR open)&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3452 g.region/r.to.rast3elev: fixed scanf error to recognize EOF as a possible return value #3452] (PR open)&lt;br /&gt;
&lt;br /&gt;
=== Documentation ===&lt;br /&gt;
* Documentation and Education Working Group met and planned the development of new tutorials. Veronica Andreo met other GRASS developers and contributors to coordinate further tutorials development.&lt;br /&gt;
* Development of new [https://github.com/ncsu-geoforall-lab/tutorials tutorials] in progress, topics include:&lt;br /&gt;
** Getting started with GRASS GIS&lt;br /&gt;
** GRASS GIS in Google Colab&lt;br /&gt;
** GRASS GIS and Python&lt;br /&gt;
** GRASS GIS and R&lt;br /&gt;
** GRASS R and Python comparison&lt;br /&gt;
** Making plots in GRASS GIS&lt;br /&gt;
* New [https://github.com/OSGeo/grass/blob/main/doc/development/style_guide.md GRASS Programming Style Guide]&lt;br /&gt;
* [https://github.com/petrasovaa/cookiecutter-grass-addon New addon template powered by Cookiecutter]&lt;br /&gt;
* Analysis of options names and functionality in plotting tools:&lt;br /&gt;
** [https://github.com/OSGeo/grass-addons/issues/1071 Addons for plotting: Standardize parameters and flags]&lt;br /&gt;
&lt;br /&gt;
=== Communication and outreach ===&lt;br /&gt;
&lt;br /&gt;
* Creation of 4 news post in the [https://grass.osgeo.org/news/ GRASS website]&lt;br /&gt;
* Social media:&lt;br /&gt;
** [https://twitter.com/GRASSGIS Twitter]: 9 new posts/threads&lt;br /&gt;
** [https://fosstodon.org/@grassgis Fosstodon]: 9 new posts/threads&lt;br /&gt;
&lt;br /&gt;
=== Other sustainability activities ===&lt;br /&gt;
* [https://github.com/OSGeo/grass/blob/main/CODE_OF_CONDUCT.md Code of Conduct added to the main repository]&lt;br /&gt;
* [https://github.com/OSGeo/grass/blob/main/.github/ISSUE_TEMPLATE/bug_report.md revised Issue template]&lt;br /&gt;
* New [https://github.com/OSGeo/grass/pull/3673 RFC for a Release Policy]&lt;br /&gt;
* Revised [https://github.com/OSGeo/grass/pull/2815 RFC for Release Procedure]&lt;br /&gt;
* WIP: GRASS GIS Roadmap&lt;br /&gt;
* [https://github.com/OSGeo/grass-website/issues/414 GRASS website: ongoing restructuring]&lt;br /&gt;
* [[PSC]] page moved from trac wiki to media wiki&lt;br /&gt;
&lt;br /&gt;
== Y1 4th quarter report (06/24 - 08/24) ==&lt;br /&gt;
&lt;br /&gt;
=== Mentoring Activities ===&lt;br /&gt;
The mentoring program form received 3 new responses and mentors were actively working with 3 mentees.&lt;br /&gt;
Results include parallelization of r.texture, r.horizon, improved grass.benchmarking library and a new tutorial on lidar data.&lt;br /&gt;
&lt;br /&gt;
GSoC successfully completed their projects:&lt;br /&gt;
* [https://grasswiki.osgeo.org/wiki/GRASS_GSoC_2024_EODAG_Support Add EODAG support to GRASS GIS]&lt;br /&gt;
* [https://grasswiki.osgeo.org/wiki/GRASS_GSoC_2024_Improve_user_experience_in_Jupyter_Notebooks Improve GRASS user experience in Jupyter Notebook]&lt;br /&gt;
* [https://grasswiki.osgeo.org/wiki/GRASS_GSoC_2024_Add_JSON_output Add JSON output to different GRASS tools in C]&lt;br /&gt;
&lt;br /&gt;
Time spent by mentoring was covered by NSF.&lt;br /&gt;
&lt;br /&gt;
=== Presentations, Workshops, Event Planning ===&lt;br /&gt;
&lt;br /&gt;
* [https://veroandreo.github.io/grass_foss4geu_2024/ Let's combine GRASS, Python and R: Satellite time series data for species distribution modeling]. Workshop by Veronica Andreo. FOSS4G Europe 2024, Tartu.&lt;br /&gt;
* [https://veroandreo.github.io/grass-gis-talks/foss4gEU2024.html#/ Status of GRASS GIS project]. Talk by Veronica Andreo. FOSS4G Europe 2024, Tartu.&lt;br /&gt;
* [https://veroandreo.github.io/grass-gis-talks/useR2024.html#/ Boost Spatial Data Science Workflows with GRASS GIS and R]. Talk  by Veronica Andreo. useR Conference 2024, Salzburg.&lt;br /&gt;
* [https://ncsu-geoforall-lab.github.io/usdoi-webinar/notebooks/grass_jupyter.html Geoprocessing with GRASS GIS and Jupyter Notebooks]. Webinar by Corey White. U.S. DOI, August 2024, NCSU.&lt;br /&gt;
* [[GRASS Community Meeting Prague 2024]]&lt;br /&gt;
&lt;br /&gt;
* [https://spatial-ecology.net/docs/build/html/COURSESAROUNDTHEWORLD/course_GEO-OPEN-HACK-2024_06_2024.html GEO-OPEN-HACK-2024: Big Geospatial Data Hackathon with Open Infrastructure and Tools]  training course delivered ([https://iiasa.ac.at/events/jun-2024/geo-open-hack-2024-big-geospatial-data-hackathon-with-open-infrastructure-and-tools announcement]). The GRASS material has been developed as part of the NSF grant. &lt;br /&gt;
&lt;br /&gt;
* Planning GRASS Dev summit 2025 at NCSU&lt;br /&gt;
&lt;br /&gt;
* Planning AGU (4 abstract submitted), AGU booth for GRASS GIS reserved and payed&lt;br /&gt;
&lt;br /&gt;
* Submitted workshop, talk and keynote to FOSS4G 2024 - Brazil.&lt;br /&gt;
&lt;br /&gt;
=== CMake transition ===&lt;br /&gt;
Ongoing work on [https://github.com/OSGeo/grass/pull/3621 CMake compilation] was partially covered by POSE.&lt;br /&gt;
&lt;br /&gt;
=== Code Quality and Security ===&lt;br /&gt;
&lt;br /&gt;
* Code quality improvements in Python code:&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3763 Flake8 W605 Invalid escape sequence #3763]&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3926 Flake8 E741 Do not use variables named 'I', 'O', or 'l' in wxGUI code #3926]&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3928 Flake8 E741 for the rest of code base #3928]&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/4200  grass.temporal: Flake8 F841 Local variable assigned to but never used #4200]&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/4113  grass.pygrass: Remove unused arg in ctypes.CFUNCTYPE #4113]&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/4206 t.rast.to.vect: Fix passing column parameter to r.to.vect, fix flake8 F841 #4206]&lt;br /&gt;
&lt;br /&gt;
* Code quality and security improvements in C and C++ code are in 36 PRs with fixes for more than 25 tools, specifically in:&lt;br /&gt;
** raster: r.path, r.out.mpeg, r.out.png, r.in.xyz, r.terraflow, r.statistics, r.spreadpath, r.sim.water, r.sim.erosion, r.object.geometry, r.coin&lt;br /&gt;
** imagery: i.atcorr, i.aster.toar, i.ortho.photo, i.landsat.acca, i.segment, i.smap&lt;br /&gt;
** display: d.linegraph, d.legend.vect, d.histogram, d.labels&lt;br /&gt;
** raster 3D: r3.in.v5d, r3.info, r3.mapcalc&lt;br /&gt;
** other: lib/gis, lib/vector/diglib, g.findfile, g.setproj, ps.map, lib/cdhc&lt;br /&gt;
&lt;br /&gt;
Changes by author: [https://github.com/OSGeo/grass/pulls?q=author%3AShubhamDesai+is%3Apr+is%3Aclosed+merged%3A2024-06-01..2024-08-31+base%3Amain+sort%3Aupdated-desc+ ShubhamDesai], [https://github.com/OSGeo/grass/pulls?q=author%3Amshukuno+is%3Apr+is%3Aclosed+merged%3A2024-06-01..2024-08-31+base%3Amain+sort%3Aupdated-desc+ Makiko Shukunobe], [https://github.com/OSGeo/grass/pulls?q=author%3Aymdatta+is%3Apr+is%3Aclosed+merged%3A2024-06-01..2024-08-31+base%3Amain+sort%3Aupdated-desc+ ymdatta]&lt;br /&gt;
&lt;br /&gt;
Several reviewers, not supported by the NSF POSE project, played crucial role not only in reviewing, but also in determining the right fixes.&lt;br /&gt;
&lt;br /&gt;
Fixed issues were reported by Flake8, Coverity Scan, and Cppcheck.&lt;br /&gt;
&lt;br /&gt;
=== Tests ===&lt;br /&gt;
&lt;br /&gt;
Changes by author: [https://github.com/OSGeo/grass/pulls?q=author%3AShreshth-Malik+is%3Apr+is%3Aclosed+merged%3A2024-12-01..2025-02-28+base%3Amain+sort%3Aupdated-desc+ Shreshth-Malik]&lt;br /&gt;
&lt;br /&gt;
=== Documentation ===&lt;br /&gt;
&lt;br /&gt;
* Veronica Andreo met some GRASS developers and contributors to follow up on tutorials development.&lt;br /&gt;
* 7 new [https://github.com/ncsu-geoforall-lab/tutorials tutorials] on time series:&lt;br /&gt;
** Management and visualization&lt;br /&gt;
** Aggregation&lt;br /&gt;
** Algebra&lt;br /&gt;
** Accumulation&lt;br /&gt;
** Gap filling&lt;br /&gt;
** Querying raster time series with vectors&lt;br /&gt;
** Subset, import and export&lt;br /&gt;
* Tutorial on how to set up Jupyter and GRASS in Windows&lt;br /&gt;
* New [https://github.com/OSGeo/grass-tutorials repository] under OSGeo organization to host the upcoming quarto based website for GRASS tutorials&lt;br /&gt;
* PR template created - [https://github.com/OSGeo/grass/community GitHub Community Standards] all checked complete&lt;br /&gt;
&lt;br /&gt;
=== Communication and outreach ===&lt;br /&gt;
&lt;br /&gt;
* Creation of 4 news posts in the [https://grass.osgeo.org/news/ GRASS website]&lt;br /&gt;
* Social media:&lt;br /&gt;
** [https://twitter.com/GRASSGIS Twitter]: 25 new posts&lt;br /&gt;
** [https://fosstodon.org/@grassgis Fosstodon]: 25 new posts&lt;br /&gt;
* New GRASS GIS LinkedIn page at: [https://www.linkedin.com/company/grass-gis/ https://www.linkedin.com/company/grass-gis/]&lt;br /&gt;
* Requested transition of [https://discourse.osgeo.org/t/osgeo-3255-migrate-grass-dev-mailing-list-to-discourse/49796 grass-dev mailing list to discourse.osgeo.org]&lt;br /&gt;
* Set up GRASS GIS swag shop on Redbubble&lt;br /&gt;
&lt;br /&gt;
=== Governance ===&lt;br /&gt;
* [https://grass.osgeo.org/about/roadmap/ Roadmap] and [https://grass.osgeo.org/about/governance/ Governance] pages added to the website &lt;br /&gt;
* PSC elections:&lt;br /&gt;
** Documented criteria to define people entitled to vote&lt;br /&gt;
** Documented procedure to compile the list of voters&lt;br /&gt;
** Elections [https://www.mail-archive.com/grass-user@lists.osgeo.org/msg41102.html announcement] sent out&lt;br /&gt;
&lt;br /&gt;
== Y2 1st quarter report (09/24 - 11/24) ==&lt;br /&gt;
&lt;br /&gt;
=== Presentations and Workshops ===&lt;br /&gt;
FOSS4GNA 2024 in St. Louis, Missouri:&lt;br /&gt;
&lt;br /&gt;
* Vaclav Petras. State of GRASS GIS. FOSS4G NA St. Louis, September 9-11, 2024 ([https://wenzeslaus.github.io/grass-gis-talks/foss4gna2024.html slides])&lt;br /&gt;
* Huidae Cho. Evolution of GRASS GIS. FOSS4G NA St. Louis, September 9-11, 2024 ([https://htmlpreview.github.io/?https://github.com/HuidaeCho/grass-talks/blob/main/foss4g-na-2024.html slides])&lt;br /&gt;
* Huidae Cho. An OpenMP Algorithm for Delineating a Large Number of Watersheds. FOSS4G NA St. Louis, September 9-11, 2024&lt;br /&gt;
* Corey T. White. Developing Web-Applications with GRASS GIS. Workshop. FOSS4G NA St. Louis, September 9-11, 2024&lt;br /&gt;
* Corey T. White. GRASS GIS as a Geospatial Computational Engine. FOSS4G NA St. Louis, September 9-11, 2024&lt;br /&gt;
&lt;br /&gt;
=== Communication and outreach ===&lt;br /&gt;
* Transition of grass-dev mailing list to [https://discourse.osgeo.org/c/grass/developer/61 discourse.osgeo.org] finished.&lt;br /&gt;
&lt;br /&gt;
=== Code Quality and Security ===&lt;br /&gt;
* Python code quality issues addressed in more than 70 PRs, reducing the list of per-file ignores by more than 60%.&lt;br /&gt;
* Code quality and security improvements in C and C++ code are in more than 80 PRs.&lt;br /&gt;
* In total, these changes improve more than 60 tools, specifically:&lt;br /&gt;
** raster: r.water.outlet, r.watershed, r.mfilter, r.to.vect, r.in.poly, r.carve, r.thin, r.fill.dir, r.clump, r.in.gridatb, r.out.png, r.in.wms, r.viewshed, r.fillnulls, r.in.srtm, r.in.pdal, r.in.xyz&lt;br /&gt;
** vector: v.out.dxf, v.build.polylines, v.external.out, v.net, v.univar, v.in.ascii, v.delaunay, v.hull , v.net.timetable, v.kernel, v.to.db, v.colors, v.rectify, v.reclass, v.generalize, v.transform, v.vol.rst, v.cluster, v.to.3d, v.out.ogr, v.external, v.in.dwg, v.report, v.unpack, v.import&lt;br /&gt;
** imagery: i.topo.corr, i.attcorr, i.ortho.photo, i.segment, i.rectify, i.topo.corr, i.panshrapen&lt;br /&gt;
** display: d.vect, d.mon, d.frame, d.rast.edit&lt;br /&gt;
** other: GUI, grass main executable, g.proj, g.version, db.out.ogr, ps.map, r3.in.v5d, r3.in.v5d, lib/vector/Vlib, lib/ogsf, lib/gis, lib/db, lib/lidar, lib/linkm, grass.temporal, grass.script&lt;br /&gt;
&lt;br /&gt;
Changes by author: [https://github.com/OSGeo/grass/pulls?q=author%3AShubhamDesai+is%3Apr+is%3Aclosed+merged%3A2024-09-01..2024-11-30+base%3Amain+sort%3Aupdated-desc+ ShubhamDesai], [https://github.com/OSGeo/grass/pulls?q=author%3Aymdatta+is%3Apr+is%3Aclosed+merged%3A2024-09-01..2024-11-30+base%3Amain+sort%3Aupdated-desc+ ymdatta],&lt;br /&gt;
[https://github.com/OSGeo/grass/pulls?q=author%3Aarohanajit+is%3Apr+is%3Aclosed+merged%3A2024-09-01..2024-11-30+base%3Amain+sort%3Aupdated-desc+ Arohan Ajit]&lt;br /&gt;
&lt;br /&gt;
Several reviewers, not supported by the NSF POSE project, played crucial role not only in reviewing, but also in determining the right fixes. The NSF POSE project personnel focused on fixing issues reported by Flake8, Coverity Scan, and Cppcheck, however also Ruff and Pylint are utilized in GRASS GIS thanks to other contributors.&lt;br /&gt;
&lt;br /&gt;
A configure file for Cppcheck is now included in the repository highlighting the level of compliance and aiding contributors in local analysis and subsequent implementation of fixes ([https://github.com/OSGeo/grass/pull/4766 PR #4766]).&lt;br /&gt;
&lt;br /&gt;
Finally, we created a new public GitHub project in the OSGeo GitHub organization for [https://github.com/orgs/OSGeo/projects/11 GRASS GIS Security] to track and communicate progress on the security front with 147 resolved items and 8 in-progress items at the time of writing.&lt;br /&gt;
&lt;br /&gt;
=== Documentation, both Internal and External ===&lt;br /&gt;
&lt;br /&gt;
* To improve indexing of GRASS GIS manual pages, we revised our current sitemap ([https://github.com/OSGeo/grass-website/pull/482 grass-website/pull/482)]), added a updated sitemap to Google Search Console and Bing, fixed robots.txt, and triggered and re-triggered the indexing many times to make Google consume the new content. While before, some searches gave outdated documentation, experimental websites, or unofficial resources only, now the official website and stable documentation is returned as the first search result.&lt;br /&gt;
* All older manuals, including version 6.4 and 6.5, are now available (restored) so that search engines can consume them and old links and indices continue to work. They now newly contain the canonical URLs so that search engines understand the structure and don't penalize duplicate content.&lt;br /&gt;
* On OSGeo server which hosts GRASS GIS website, we replaced some of the redirects in Apache by local soft links so that URL like grass.osgeo.org/grass-stable stay as is for both humans and machines and don't redirect to specific version (easier to copy-paste from a browser URL bar and easier for search engine to understand what is the page to show).&lt;br /&gt;
* We implemented the necessary changes into the cronjobs and did overall updates to enable build of the server-side documentation jobs locally for testing purposes. The most relevant PRs are:&lt;br /&gt;
** [https://github.com/OSGeo/grass-addons/pull/1241 Inject canonical URLs into older manual pages (SEO) #1241]&lt;br /&gt;
** [https://github.com/OSGeo/grass-addons/pull/1173 Fix red new version box injection and script documentation #1173]&lt;br /&gt;
** [https://github.com/OSGeo/grass-addons/pull/1215 Expand script to run stand-alone #1215]&lt;br /&gt;
* We advanced the [https://github.com/orgs/OSGeo/projects/9 GRASS Markdown Documentation project].&lt;br /&gt;
* New and better wording for intro to imagery tools: [https://github.com/OSGeo/grass/pull/4536 Add intro text to imageryintro.html #4536]&lt;br /&gt;
* List of GRASS GIS profiles on different websites is now in an internal PSC document.&lt;br /&gt;
* Documentation of all the internal infrastructure, especially that of grass.osgeo.org server, is now in an internal PSC document.&lt;br /&gt;
* We painstakingly identified and described all maintenance procedures performed by Markus Neteler in OSGeo SAC capacity for GRASS GIS and as a contributor to GRASS GIS for better work distribution.&lt;br /&gt;
* Most of the work on the documentation was done through a contract with Markus Neteler with additional help from Martin Landa for the transition to Markdown.&lt;br /&gt;
&lt;br /&gt;
=== Mentoring Activities ===&lt;br /&gt;
Mentors were actively working with 3 mentees.&lt;br /&gt;
&lt;br /&gt;
=== Event Planning and Organizing ===&lt;br /&gt;
&lt;br /&gt;
[[File:Raleigh_2016_11_05.jpg|500px|thumb|right|alt=Rooms, tables and large open space|Smaller space utilized in the past for a local GRASS GIS meetup in Hunt library at NC State University campus (photos are from a [[GRASS GIS Raleigh meetups 2016|2016 meetup]])]]&lt;br /&gt;
&lt;br /&gt;
We are planning and organizing GRASS GIS Developer Summit in Raleigh, NC, USA at North Carolina State University.&lt;br /&gt;
&lt;br /&gt;
* High-demand spaces reserved at NCSU (some since May 2024, other since September 2024).&lt;br /&gt;
* A [https://discourse.osgeo.org/t/grass-dev-save-the-date-grass-developer-summit-raleigh-2025/85540 save-the-date post for grass-dev], interest form, and first round of additional invites. (Date established earlier in spring 2024 by NSF POSE team after a survey of PSC members and Core Development Team members.)&lt;br /&gt;
* We addressed participant's visa needs based on the responses to the interest form.&lt;br /&gt;
* We formed the initial Organizing Committee formed and rough event agenda created.&lt;br /&gt;
* Page created: [[GRASS Developer Summit Raleigh 2025]].&lt;br /&gt;
&lt;br /&gt;
== Y2 2nd quarter report (12/24 - 02/25) ==&lt;br /&gt;
&lt;br /&gt;
=== Presentations, Workshops, Event Planning ===&lt;br /&gt;
&lt;br /&gt;
[[File:GRASS GIS booth AGU24.jpg|500px|thumb|right|alt=GRASS GIS booth at AGU24|GRASS GIS booth at AGU24, Washington, DC]]&lt;br /&gt;
&lt;br /&gt;
AGU24 Annual Meeting, Washington, DC, USA:&lt;br /&gt;
* GRASS GIS booth in the Exhibit Hall with a banner, new flyers, and a Tangible Landscape setup to demonstrate some of the capabilities of GRASS GIS (Monday afternoon - Thursday morning)&lt;br /&gt;
* GRASS GIS for Advanced Earth Systems Analysis and Modeling (eLightning) by Vaclav Petras&lt;br /&gt;
* Perspectives from an Open Source Geospatial Modeling Platform Maintainer (poster) by Anna Petrasova&lt;br /&gt;
* GRASS GIS Is FAIR: Its Evolution Towards Open Science (poster) by Huidae Cho&lt;br /&gt;
* GRASS GIS as a Platform for Dissemination of Reusable Geocomputational Research (poster) by Vaclav Petras&lt;br /&gt;
&lt;br /&gt;
Beyond the GIS Map: Open Source Tools for Geospatial Research, Workshop at the Institute for Social Science   Research Arizona State University. 11 December 2024  &lt;br /&gt;
* Michael Barton and Eunice Villaseñor Iribe, instructors  &lt;br /&gt;
* Topics  &lt;br /&gt;
** Introduction to GRASS&lt;br /&gt;
** Modeling Terrain in GRASS&lt;br /&gt;
** Modeling Movement in GRASS&lt;br /&gt;
** Remote Sensing With GRASS&lt;br /&gt;
&lt;br /&gt;
Physically-based hydrologic modeling using GRASS GIS r.topmodel, Workshop at New Mexico State University. January 31, 2025, 1pm-5pm.&lt;br /&gt;
* Instructor: Huidae Cho&lt;br /&gt;
* Assistant: Nelson Kandel&lt;br /&gt;
* Participants: 17&lt;br /&gt;
* Topics&lt;br /&gt;
** Introduction to GRASS&lt;br /&gt;
** Hydrologic Modeling Using GRASS&lt;br /&gt;
** Model Calibration and Validation&lt;br /&gt;
&lt;br /&gt;
=== Code Quality and Security ===&lt;br /&gt;
&lt;br /&gt;
Changes by author: [https://github.com/OSGeo/grass/pulls?q=author%3AShubhamDesai+is%3Apr+is%3Aclosed+merged%3A2024-12-01..2025-02-28+base%3Amain+sort%3Aupdated-desc+ ShubhamDesai], [https://github.com/OSGeo/grass/pulls?q=author%3Aarohanajit+is%3Apr+is%3Aclosed+merged%3A2024-12-01..2025-02-28+base%3Amain+sort%3Aupdated-desc+ Arohan Ajit]&lt;br /&gt;
&lt;br /&gt;
=== Tests ===&lt;br /&gt;
&lt;br /&gt;
Changes by author: [https://github.com/OSGeo/grass/pulls?q=author%3AShreshth-Malik+is%3Apr+is%3Aclosed+merged%3A2024-12-01..2025-02-28+base%3Amain+sort%3Aupdated-desc+ Shreshth-Malik], [https://github.com/OSGeo/grass/pulls?q=author%3Ajayneel-shah18+is%3Apr+is%3Aclosed+merged%3A2024-12-01..2025-02-28+base%3Amain+sort%3Aupdated-desc+ jayneel-shah18]&lt;br /&gt;
&lt;br /&gt;
=== Documentation and Tutorials ===&lt;br /&gt;
We finalized and prepared for launch Quarto-based tutorial website editable through GitHub. OSGeo provided a new domain [https://grass-tutorials.osgeo.org/ grass-tutorials.osgeo.org]. Initial set of tutorials were created by Veronica Andreo when she was part of the NSF POSE team (some tutorials will be finalized and released later). Anna Petrasova did the reviews, curation, posts for external tutorials, and transition from list of tutorials at the main website.&lt;br /&gt;
&lt;br /&gt;
We did a major push to create Markdown files in the source code and enable the compilation of documentation for mkdocs. We also configured the mkdocs and revised the Markdown syntax in the files.&lt;br /&gt;
&lt;br /&gt;
=== Communication and outreach ===&lt;br /&gt;
&lt;br /&gt;
Renewed [https://www.youtube.com/@grass-gis Youtube channel @grass-gis] by adding playlists, organizing videos, and updating branding.&lt;br /&gt;
&lt;br /&gt;
=== Governance ===&lt;br /&gt;
Submitted application for GRASS GIS to join NumFocus.&lt;br /&gt;
&lt;br /&gt;
=== Event Planning and Organizing ===&lt;br /&gt;
&lt;br /&gt;
* Created draft of schedule, agenda, and budget.&lt;br /&gt;
* Identified participants eligible for travel support.&lt;br /&gt;
** While the meeting is open to anyone, the NSF-funded travel support is based on priorities set in the NSF POSE project for the Developer Summit.&lt;br /&gt;
** Specifically, we are inviting individuals identified based on the following criteria (in this order; moving to the next group if there is still available places):&lt;br /&gt;
*** Top 20 contributors to OSGeo/grass in the last two years (2023-2024), but not a bot or NSF POSE personnel (contributing only within NSF POSE). (After exclusions, this is less than 10 people.) &lt;br /&gt;
*** PSC member before or after 2024 elections, but not NSF POSE personnel at the time of the meeting. (With PSC members currently contributing code as well, this is only a couple of people after exclusions.)&lt;br /&gt;
*** Active participant in one of the mentoring programs. (Participant demonstrated the activity by attending meetings, reporting progress, or submitting code for feedback or review.)&lt;br /&gt;
*** Contributors to connections and interfaces prioritized in or during the NSF POSE project:&lt;br /&gt;
**** R packages (2 slots for active contributors or maintainers determined by previously established contacts in the given community through their activity on a relevant code base.)&lt;br /&gt;
**** GRASS GIS code in QGIS (2 slots for active contributors or maintainers determined by previously established contacts in the given community through their activity on a relevant code base.)&lt;br /&gt;
*** Contributors in &amp;quot;write&amp;quot; teams for OSGeo/grass, OSGeo/grass-addons, OSGeo/grass-website, and OSGeo/grass-tutorials repositories. (Almost all fall into one of the above groups.)&lt;br /&gt;
*** Contributors to closely related projects, specifically actinia, the GRASS GDAL driver, and the GRASS GeoServer datastore.&lt;br /&gt;
* Sent individual invites to participants eligible for travel support. (ongoing)&lt;br /&gt;
&lt;br /&gt;
== Y2 3rd quarter report (03/25 - 05/25) ==&lt;br /&gt;
&lt;br /&gt;
=== Governance ===&lt;br /&gt;
* GRASS accepted NumFOCUS (more steps to make it official)&lt;br /&gt;
&lt;br /&gt;
=== Presentations, Workshops, Event Planning ===  &lt;br /&gt;
* Beyond the GIS Map: Open Source Tools for Geospatial Research, Workshop at the Institute for Social Science   Research Arizona State University. 25 March 2025 &lt;br /&gt;
** Michael Barton and Eunice Villaseñor Iribe, instructors  &lt;br /&gt;
** Topics: Introduction, Modeling Terrain, Modeling Movement, Remote Sensing with GRASS&lt;br /&gt;
* IALE-NA: [https://github.com/ncsu-geoforall-lab/iale-2025-workshop-tl Building Geospatial Models in GRASS: From Python Workflows to Tangible Landscape], April 15th, hosted by the Center for Geospatial Analytics&lt;br /&gt;
** Anna Petrasova and Caitlin Haedrich&lt;br /&gt;
** 20 participants&lt;br /&gt;
&lt;br /&gt;
* [[GRASS_Developer_Summit_Raleigh_2025]] (see the page for details)&lt;br /&gt;
&lt;br /&gt;
== Y2 4th quarter report (06/25 - 08/25) ==&lt;br /&gt;
&lt;br /&gt;
=== Governance ===&lt;br /&gt;
* GRASS onboarding with NumFOCUS&lt;br /&gt;
&lt;br /&gt;
=== Presentations, Workshops, Event Planning ===  &lt;br /&gt;
* Geomorphometry workshop - Corey White and Caitlin Haedrich&lt;br /&gt;
&lt;br /&gt;
=== Documentation and Tutorials ===&lt;br /&gt;
* contributed tutorials &lt;br /&gt;
** fasterRaster by Adam Smith&lt;br /&gt;
** Intro to RS by Michael Barton&lt;br /&gt;
** Time series tutorials by Veronica Andreo&lt;br /&gt;
&lt;br /&gt;
=== Mentoring ===&lt;br /&gt;
* new addons:&lt;br /&gt;
** r.earthworks by Brendan Harmon&lt;br /&gt;
** r.gravity.correction by David Farris&lt;br /&gt;
** r.curvenumber by Abdullah Azzam&lt;br /&gt;
** improvements to r.hydro.flatten by Doug Newcomb&lt;br /&gt;
* Xarray backend for GRASS by Laurent Courty&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
;Mentoring program (fall 2023 - summer 2025)&lt;br /&gt;
:Free developer-oriented mentoring program to support researchers and software developers to integrate GRASS GIS into their workflows and contribute to GRASS GIS.&lt;br /&gt;
&lt;br /&gt;
; Streamline contributor onboarding (spring 2024 - fall 2024)&lt;br /&gt;
: Includes updating and creating guidelines for code and non-code contributions.&lt;br /&gt;
&lt;br /&gt;
; Streamline user onboarding (spring 2024 - fall 2024)&lt;br /&gt;
: Includes modernizing tool documentation, developing tutorials.&lt;br /&gt;
: Creating sample datasets for localized tutorials.&lt;br /&gt;
: Developing online training materials for big data processing.&lt;br /&gt;
&lt;br /&gt;
; Training sessions (fall 2023 - summer 2025)&lt;br /&gt;
: Local training sessions (at universities and conferences) introducing GRASS GIS to students and researchers.&lt;br /&gt;
: Training program for big data processing delivered online.&lt;br /&gt;
&lt;br /&gt;
; Engaging industry partners and user (January 2024 - August 2025)&lt;br /&gt;
: Identify and engage industry partners to gather feedback and to start industry partnership program.&lt;br /&gt;
&lt;br /&gt;
; Conferences&lt;br /&gt;
: Presence (talks, workshops, networking) at FOSS4GNA 2023, FOSS4G Asia 2023, AGU 2023, CSDMD 2024, FOSS4G Europe 2024, FOSS4G 2024, AGU 2024&lt;br /&gt;
&lt;br /&gt;
; Community sprints&lt;br /&gt;
: Virtual or in-person participation in OSGeo community sprints, GRASS GIS community sprints&lt;br /&gt;
&lt;br /&gt;
; Software distribution (January 2024 - May 2025)&lt;br /&gt;
: Transition to CMake build system&lt;br /&gt;
: Develop conda package&lt;br /&gt;
&lt;br /&gt;
;Simplify maintenance of GRASS integrations with QGIS and R (2024-2025)&lt;br /&gt;
: Virtual meetings with QGIS and R developers and GRASS GIS developers (spring 2024).&lt;br /&gt;
: Identify and implement improvements to the integration.&lt;br /&gt;
&lt;br /&gt;
;Improve code quality, security, and quality assurance &lt;br /&gt;
: Code quality (Flake8, Pylint, Cppcheck), first half of 2024.&lt;br /&gt;
: Security (CodeQL), second half of 2024.&lt;br /&gt;
: Quality assurance (better pytest integration), second half of 2024.&lt;br /&gt;
&lt;br /&gt;
; In-person developer summit (May 19 - May 24, 2025)&lt;br /&gt;
: Hosted by NC State University, Raleigh, NC, USA.&lt;br /&gt;
: Identify additional challenges for adoption of GRASS GIS as geoprocessing engine.&lt;br /&gt;
: Long-term planning beyond the POSE project.&lt;br /&gt;
&lt;br /&gt;
== Acknowledgements ==&lt;br /&gt;
&lt;br /&gt;
The funding is provided by the U.S. National Science Foundation, award 2303651.&lt;br /&gt;
[[File:NSF Official logo.png|frameless|left]]&lt;br /&gt;
&lt;br /&gt;
[[Category: Community]]&lt;br /&gt;
[[Category: Conferences‏‎]]&lt;br /&gt;
[[Category: 2023]]&lt;br /&gt;
[[Category: 2024]]&lt;br /&gt;
[[Category: 2025]]&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=NSF_POSE_Project_2023-2025_Timeline&amp;diff=28488</id>
		<title>NSF POSE Project 2023-2025 Timeline</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=NSF_POSE_Project_2023-2025_Timeline&amp;diff=28488"/>
		<updated>2025-06-05T19:55:12Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: /* Y2 4th quarter report (06/25 - 08/25) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:NSF_grant_announcement.png|500px|right|none]]&lt;br /&gt;
&lt;br /&gt;
To inform GRASS community about the work done as part of the award [https://www.nsf.gov/awardsearch/showAward?AWD_ID=2303651 2303651] from the U.S. National Science Foundation (NSF) to enhance GRASS ecosystem, the following report summarizes the progress and outcomes in quarterly reports and presents the roadmap for the project.&lt;br /&gt;
&lt;br /&gt;
The two main goals of the project are: 1) to facilitate the adoption of GRASS GIS as a key geoprocessing engine by a growing number of researchers and geospatial practitioners in academia, governments, and industry; and 2) to expand and diversify the developer community, especially through supporting next-generation scientists to gain expertise to maintain and innovate GRASS software.&lt;br /&gt;
&lt;br /&gt;
Principal investigators and senior personnel:&lt;br /&gt;
&lt;br /&gt;
* Helena Mitasova, North Carolina State University (Principal Investigator)&lt;br /&gt;
* Vaclav Petras, North Carolina State University (Co-Principal Investigator)&lt;br /&gt;
* Anna Petrasova, North Carolina State University (Co-Principal Investigator)&lt;br /&gt;
* C Michael Barton, Arizona State University (Co-Principal Investigator)&lt;br /&gt;
* Huidae Cho, New Mexico State University (Co-Principal Investigator)&lt;br /&gt;
* Giuseppe Amatulli, Yale (Senior Personnel)&lt;br /&gt;
&lt;br /&gt;
Other personnel who is joining for the execution of the grant is listed below when relevant.&lt;br /&gt;
&lt;br /&gt;
== Y1 1st quarter report (09/23 - 11/23) ==&lt;br /&gt;
=== Project Announcements and Communication ===&lt;br /&gt;
* Announcement on [https://grass.osgeo.org/news/2023_09_06_nsf_grant_awarded/ GRASS website].&lt;br /&gt;
* Info session to explain the POSE Project ([https://lists.osgeo.org/pipermail/grass-user/2023-September/083423.html Announcement on GRASS user mailing list], 2 sessions for different time zones).&lt;br /&gt;
* Collected statistics from GitHub, X and others and set up automated collection for GitHub.&lt;br /&gt;
&lt;br /&gt;
=== Conference Presentations ===&lt;br /&gt;
* [https://petrasovaa.github.io/FUTURES-CONUS-talk/foss4gNA2023.html#/ Parallelization Tips for Geoprocessing with GRASS GIS] by Anna Petrasova at FOSS4GNA, October 2023.&lt;br /&gt;
* [https://wenzeslaus.github.io/grass-gis-talks/foss4gna2023.html#/ GRASS GIS: Not What You Think] by Vaclav Petras at FOSS4GNA, October 2023. &lt;br /&gt;
* [https://docs.google.com/presentation/d/1D-Fh1cLSPINyeXdVaxlakrE9IjB8kK5lIw3D12yX1bk Computational Notebooks for Reproducible Geospatial Computation in Research and Education] by Caitlin Haedrich at FOSS4GNA, October 2023.&lt;br /&gt;
* [https://github.com/HuidaeCho/grass-gis-talk-foss4g-asia-2023 State of GRASS GIS: 40 Years Strong and Counting] by Huidae Cho at FOSS4G Asia, November 2023.&lt;br /&gt;
&lt;br /&gt;
=== Training and Workshops ===&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/grass-gis-workshop-foss4gna-2023 Unlock the power of GRASS GIS] by Anna Petrasova and Caitlin Haedrich at FOSS4GNA, October 2023. &lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/develop-tools-with-grass-foss4gna-2023 Develop Geospatial Workflows and Custom Tools with GRASS GIS] by Vaclav Petras and Corey White at FOSS4GNA, October 2023.&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/grass-workshop-gis-week-2023 Big Data Computing with GRASS GIS] by Anna Petrasova and Vaclav Petras at NC State GIS week, November 2023.&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/grass-gis-on-hpc-henry2/blob/8564c72e9b8929c9ef4d25ada1ef36b569991221/docs/tutorial.md GIS Week Workshop: High Performance Computing for Geospatial Analysis (GRASS GIS part)] by Vaclav Petras (main lecture lead by Andrew Petersen from NCSU OIT) at NC State GIS week, November 2023.&lt;br /&gt;
* [https://spatial-ecology.net/docs/build/html/COURSESAROUNDTHEWORLD/course_geocomp_ml_04-05_2024.html Geocomputation and Machine Learning for Environmental Applications] training course [https://spatial-ecology.net/course-geocomputation-machine-learning-for-environmental-applications-intermediate-level-2024/ announced]. GRASS GIS part led by Giuseppe Amatulli is free of charge thanks to the support by NSF.&lt;br /&gt;
&lt;br /&gt;
=== Community Sprint Participation ===&lt;br /&gt;
Anna Petrasova and Vaclav Petras remotely participated in [https://wiki.osgeo.org/wiki/OSGeo_Community_Sprint_2023 OSGeo 2023 code sprint] doing PR reviews and maintenance of GRASS GIS code, documentation, and website.&lt;br /&gt;
&lt;br /&gt;
=== Mentoring Program ===&lt;br /&gt;
* Started a development-oriented mentoring program [https://grass.osgeo.org/news/2023_10_11_mentoring_program_announced/ announced] with details available on a [https://grasswiki.osgeo.org/wiki/Mentoring_Program wiki page].&lt;br /&gt;
* Program now has 4 participants (from 12 responses) supported by email and video calls.&lt;br /&gt;
* Program already resulted in improvements to GRASS GIS core and addons:&lt;br /&gt;
** merged PR: [https://github.com/OSGeo/grass/pull/3206 grass.script: ensure memmap content is flushed before writing to a raster]&lt;br /&gt;
** radar addon toolset PR: [https://github.com/OSGeo/grass-addons/pull/949 Add i.saocom and i.sar toolsets]&lt;br /&gt;
Mentoring Program is a new effort started and so-far performed only by the POSE team.&lt;br /&gt;
&lt;br /&gt;
=== Student Grants Program ===&lt;br /&gt;
Student grants [https://grass.osgeo.org/news/2023_11_09_student_grants_announced/ announced] with topics at a [https://grasswiki.osgeo.org/wiki/GRASS_GIS_Student_Grants wiki page]. Student Grants Program is an existing effort which the POSE team participates in.&lt;br /&gt;
&lt;br /&gt;
=== Working Groups ===&lt;br /&gt;
&lt;br /&gt;
Four [https://grasswiki.osgeo.org/wiki/Working_Groups working groups] created (scope, wiki page, coordinator, and a list of people for each).&lt;br /&gt;
&lt;br /&gt;
=== Citations ===&lt;br /&gt;
&lt;br /&gt;
* GRASS GIS Google Scholar [https://scholar.google.com/citations?user=gJ0ZB0cAAAAJ account] updated with more complete records.&lt;br /&gt;
* A [https://forms.gle/cDEvMJu7d6nvxLKn9 form] was created to collect new and missing records.&lt;br /&gt;
* Profile link added to GRASS website [https://grass.osgeo.org/contribute/ Contribute] and [https://grass.osgeo.org/about/citation/ Citation] page.&lt;br /&gt;
&lt;br /&gt;
== Y1 2nd quarter report (12/23 - 02/24) ==&lt;br /&gt;
=== NSF I-Corps program ===&lt;br /&gt;
Corey White, Vaclav Petras, and Anna Petrasova participated in a 4-week long intensive mandatory training that draws on the methods, customer discovery, and curriculum of the [https://new.nsf.gov/funding/initiatives/i-corps NSF Innovation Corps] and applies them to open-source projects.&lt;br /&gt;
&lt;br /&gt;
The program included conducting 70+ 30-minute interviews with both GRASS users and non-users to better shape the future path of GRASS GIS and the POSE project. So far, the interviews focused on educators, companies, researchers, influencers and it focused more on non-users than users.&lt;br /&gt;
&lt;br /&gt;
Next steps, include processing the collected qualitative data, developing possible future directions for sustainability of the project, discussing these with the Project Steering Committee, the core team of developers, and the broader community.&lt;br /&gt;
&lt;br /&gt;
=== Mentoring Program ===&lt;br /&gt;
The development oriented [https://grass.osgeo.org/news/2023_10_11_mentoring_program_announced/ mentoring program] welcomed 5 new participants from various institutions including universities, USGS, US Army Corps of Engineers, and local municipalities. The discussed topics covered developing workflows for topography and network analysis, environmental modeling, and geophysics. Participants were supported by email and video calls.&lt;br /&gt;
&lt;br /&gt;
=== Conference Presentations ===&lt;br /&gt;
* [https://agu.confex.com/agu/fm23/meetingapp.cgi/Paper/1342418 Modeling vegetated stream buffer impacts on water depth and discharge at the watershed scale with GRASS GIS and Jupyter Notebooks] by Caitlin Haedrich at AGU, December 2023.&lt;br /&gt;
* [https://agu.confex.com/agu/fm23/meetingapp.cgi/Paper/1420596 OpenPlains: A Web-Based Platform to Democratize Geospatial Participatory Modeling on the Cloud] by Corey White at AGU, December 2023.&lt;br /&gt;
&lt;br /&gt;
=== Presentations and Workshops ===&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/grass-gis-workshop-vanderbilt-2024 Intro to GRASS GIS] by Vaclav Petras and Anna Petrasova was remotely delivered to geographers at Vanderbilt University in February 2024. The  workshop was developed in Jupyter Lab and run using [https://wholetale.org WholeTale] online platform.&lt;br /&gt;
* [https://github.com/tomorrownow/intro-to-geoprocessing-workshop Introduction to GRASS GIS Geospatial Processing] by Corey White at [https://smathhacks.ncssm.edu/ SMathHacks hackathon], March 2nd (supported also by Veronica Andreo and Vaclav Petras). SMathHacks is the annual 36-hour hackathon hosted by the NC School of Science and Math, open to all North Carolina students. Students collaborate to build innovative software projects, explore new technologies, and have fun along the way. The workshop was delivered in person with students using [https://colab.research.google.com/ Google Colab].&lt;br /&gt;
&lt;br /&gt;
=== Student Grant Program ===&lt;br /&gt;
Linda Karlovska participates in the [https://grasswiki.osgeo.org/wiki/GRASS_GIS_Student_Grants Student Grant program] with her project [https://trac.osgeo.org/grass/wiki/wxGUIDevelopment/EasyCommandHistoryNavigation Easy command history navigation through the History browser panel] mentored by Anna Petrasova (POSE team) and Martin Landa (FCE CTU). Student Grants Program is an existing effort which the POSE team participates in by mentoring.&lt;br /&gt;
&lt;br /&gt;
=== Code Security ===&lt;br /&gt;
Vaclav Petras mentors four students who create code security improvements in their NCSU class ''CSC 472: Cybersecurity Practicum''. So far, the students created two PRs which were successfully merged: &lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/3444 grass.script: Change insecure mktemp to NamedTemporaryFile #3444]&lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/3451 utils: fixed shell vulnerability in mkrest.py #3451]&lt;br /&gt;
&lt;br /&gt;
Two other PRs are open and more work is underway to do first steps for new approach to a more secure code.&lt;br /&gt;
&lt;br /&gt;
=== Localized Basic Datasets ===&lt;br /&gt;
* NCSU and ASU teams worked on localized versions of GRASS basic data set following the [https://grass.osgeo.org/sampledata/north_carolina/nc_basic_spm_grass7.zip North Carolina basic data set example], preparing Flagstaff, Arizona and Nepal draft version with basic layers&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Y1 3rd quarter report (03/24 - 05/24) ==&lt;br /&gt;
&lt;br /&gt;
=== Mentoring Activities ===&lt;br /&gt;
The mentoring program form received 2 new responses and mentors were actively working with 3 mentees.&lt;br /&gt;
It resulted in fixes in [https://github.com/OSGeo/grass-addons/pull/1042 v.transects] and [https://github.com/OSGeo/grass-addons/pull/1077 r.accumulate].&lt;br /&gt;
&lt;br /&gt;
Linda Kladivova finished her project developing [https://trac.osgeo.org/grass/wiki/wxGUIDevelopment/EasyCommandHistoryNavigation History browser] in the GRASS GUI as part of the GRASS Student Grant Program. Mentor's time was covered by POSE.&lt;br /&gt;
&lt;br /&gt;
GRASS GIS has [https://grass.osgeo.org/news/2024_05_27_gsoc_2024_students/ 3 students this year for Google Summer of Code]. Time spent managing GSoC for GRASS GIS was covered by POSE.&lt;br /&gt;
&lt;br /&gt;
The topics covered by GSoC projects are:&lt;br /&gt;
* [https://grasswiki.osgeo.org/wiki/GRASS_GSoC_2024_EODAG_Support Add EODAG support to GRASS GIS]&lt;br /&gt;
* [https://grasswiki.osgeo.org/wiki/GRASS_GSoC_2024_Improve_user_experience_in_Jupyter_Notebooks Improve GRASS user experience in Jupyter Notebook]&lt;br /&gt;
* [https://grasswiki.osgeo.org/wiki/GRASS_GSoC_2024_Add_JSON_output Add JSON output to different GRASS tools in C]&lt;br /&gt;
&lt;br /&gt;
=== Presentations, Workshops, Event Planning ===&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/tngic-2024 GRASS 101: From GUI Clicks to Writing Scripts (TNGIC 2024)] by Veronica Andreo and Caitlin Haedrich&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/csdms-grass-2024 Coastal evolution analysis and inundation modeling with GRASS GIS (CSDMS Workshop 2024)] by Caitlin Haedrich and Pratikshya Regmi, see also [https://cnr.ncsu.edu/geospatial/news/2024/06/03/students-teach-grass-gis-for-coastal-hazard-analysis/ blog post with images]&lt;br /&gt;
&lt;br /&gt;
* Organization of [[GRASS Community Meeting Prague 2024]] and budget planning by Vaclav Petras&lt;br /&gt;
&lt;br /&gt;
=== CMake transition ===&lt;br /&gt;
Ongoing work on [https://github.com/OSGeo/grass/pull/3621 CMake compilation] was partially covered by POSE.&lt;br /&gt;
&lt;br /&gt;
=== Code Quality and Security ===&lt;br /&gt;
&lt;br /&gt;
Code quality improvements in Python code:&lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/3541 PR addressing Flake8 E501] (long lines in 158 files not fixable by automated tools)&lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/3535 PR addressing Flake8 E401] (unused imports)&lt;br /&gt;
&lt;br /&gt;
Vaclav Petras mentored a team of four students who create code security improvements in their NCSU class ''CSC 472: Cybersecurity Practicum''. The team created 12 PRs which were successfully merged, 7 additional experimental PRs (not merged) and 2 PRs which are still open at this time. Specifically, the team achieved the following:&lt;br /&gt;
&lt;br /&gt;
* With the involvement and help from the other contributors, the team introduced Bandit and Coverity Scan as additional code scanning tools for Python and C, respectively.&lt;br /&gt;
* The team analyzed issues reported CodeQL, Bandit, and Coverity Scan and reported on relevance of different issues to the project (report privately shared with the GRASS Development Team).&lt;br /&gt;
* Vulnerability Triage Guide (also privately shared with the GRASS Development Team).&lt;br /&gt;
* The team also developed a [https://github.com/OSGeo/grass/security/policy security policy] for the project.&lt;br /&gt;
* The vulnerability reporting and security advisories were enabled based on the team recommendations.&lt;br /&gt;
* The team fixed several specific security issues in the code:&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3469  packaging: Use subprocess instead of os.popen for change log creation #3469] (merged)&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3549  lib raster: fixed security vulnerabilities and weaknesses #3549] (merged)&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3451  utils: fixed shell vulnerability in mkrest.py #3451] (merged)&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3444  grass.script: Change insecure mktemp to NamedTemporaryFile #3444] (merged)&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3551  lib/psdriver: Fix issues with wrong type of arguments to printf #3551] (PR open)&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3452 g.region/r.to.rast3elev: fixed scanf error to recognize EOF as a possible return value #3452] (PR open)&lt;br /&gt;
&lt;br /&gt;
=== Documentation ===&lt;br /&gt;
* Documentation and Education Working Group met and planned the development of new tutorials. Veronica Andreo met other GRASS developers and contributors to coordinate further tutorials development.&lt;br /&gt;
* Development of new [https://github.com/ncsu-geoforall-lab/tutorials tutorials] in progress, topics include:&lt;br /&gt;
** Getting started with GRASS GIS&lt;br /&gt;
** GRASS GIS in Google Colab&lt;br /&gt;
** GRASS GIS and Python&lt;br /&gt;
** GRASS GIS and R&lt;br /&gt;
** GRASS R and Python comparison&lt;br /&gt;
** Making plots in GRASS GIS&lt;br /&gt;
* New [https://github.com/OSGeo/grass/blob/main/doc/development/style_guide.md GRASS Programming Style Guide]&lt;br /&gt;
* [https://github.com/petrasovaa/cookiecutter-grass-addon New addon template powered by Cookiecutter]&lt;br /&gt;
* Analysis of options names and functionality in plotting tools:&lt;br /&gt;
** [https://github.com/OSGeo/grass-addons/issues/1071 Addons for plotting: Standardize parameters and flags]&lt;br /&gt;
&lt;br /&gt;
=== Communication and outreach ===&lt;br /&gt;
&lt;br /&gt;
* Creation of 4 news post in the [https://grass.osgeo.org/news/ GRASS website]&lt;br /&gt;
* Social media:&lt;br /&gt;
** [https://twitter.com/GRASSGIS Twitter]: 9 new posts/threads&lt;br /&gt;
** [https://fosstodon.org/@grassgis Fosstodon]: 9 new posts/threads&lt;br /&gt;
&lt;br /&gt;
=== Other sustainability activities ===&lt;br /&gt;
* [https://github.com/OSGeo/grass/blob/main/CODE_OF_CONDUCT.md Code of Conduct added to the main repository]&lt;br /&gt;
* [https://github.com/OSGeo/grass/blob/main/.github/ISSUE_TEMPLATE/bug_report.md revised Issue template]&lt;br /&gt;
* New [https://github.com/OSGeo/grass/pull/3673 RFC for a Release Policy]&lt;br /&gt;
* Revised [https://github.com/OSGeo/grass/pull/2815 RFC for Release Procedure]&lt;br /&gt;
* WIP: GRASS GIS Roadmap&lt;br /&gt;
* [https://github.com/OSGeo/grass-website/issues/414 GRASS website: ongoing restructuring]&lt;br /&gt;
* [[PSC]] page moved from trac wiki to media wiki&lt;br /&gt;
&lt;br /&gt;
== Y1 4th quarter report (06/24 - 08/24) ==&lt;br /&gt;
&lt;br /&gt;
=== Mentoring Activities ===&lt;br /&gt;
The mentoring program form received 3 new responses and mentors were actively working with 3 mentees.&lt;br /&gt;
Results include parallelization of r.texture, r.horizon, improved grass.benchmarking library and a new tutorial on lidar data.&lt;br /&gt;
&lt;br /&gt;
GSoC successfully completed their projects:&lt;br /&gt;
* [https://grasswiki.osgeo.org/wiki/GRASS_GSoC_2024_EODAG_Support Add EODAG support to GRASS GIS]&lt;br /&gt;
* [https://grasswiki.osgeo.org/wiki/GRASS_GSoC_2024_Improve_user_experience_in_Jupyter_Notebooks Improve GRASS user experience in Jupyter Notebook]&lt;br /&gt;
* [https://grasswiki.osgeo.org/wiki/GRASS_GSoC_2024_Add_JSON_output Add JSON output to different GRASS tools in C]&lt;br /&gt;
&lt;br /&gt;
Time spent by mentoring was covered by NSF.&lt;br /&gt;
&lt;br /&gt;
=== Presentations, Workshops, Event Planning ===&lt;br /&gt;
&lt;br /&gt;
* [https://veroandreo.github.io/grass_foss4geu_2024/ Let's combine GRASS, Python and R: Satellite time series data for species distribution modeling]. Workshop by Veronica Andreo. FOSS4G Europe 2024, Tartu.&lt;br /&gt;
* [https://veroandreo.github.io/grass-gis-talks/foss4gEU2024.html#/ Status of GRASS GIS project]. Talk by Veronica Andreo. FOSS4G Europe 2024, Tartu.&lt;br /&gt;
* [https://veroandreo.github.io/grass-gis-talks/useR2024.html#/ Boost Spatial Data Science Workflows with GRASS GIS and R]. Talk  by Veronica Andreo. useR Conference 2024, Salzburg.&lt;br /&gt;
* [https://ncsu-geoforall-lab.github.io/usdoi-webinar/notebooks/grass_jupyter.html Geoprocessing with GRASS GIS and Jupyter Notebooks]. Webinar by Corey White. U.S. DOI, August 2024, NCSU.&lt;br /&gt;
* [[GRASS Community Meeting Prague 2024]]&lt;br /&gt;
&lt;br /&gt;
* [https://spatial-ecology.net/docs/build/html/COURSESAROUNDTHEWORLD/course_GEO-OPEN-HACK-2024_06_2024.html GEO-OPEN-HACK-2024: Big Geospatial Data Hackathon with Open Infrastructure and Tools]  training course delivered ([https://iiasa.ac.at/events/jun-2024/geo-open-hack-2024-big-geospatial-data-hackathon-with-open-infrastructure-and-tools announcement]). The GRASS material has been developed as part of the NSF grant. &lt;br /&gt;
&lt;br /&gt;
* Planning GRASS Dev summit 2025 at NCSU&lt;br /&gt;
&lt;br /&gt;
* Planning AGU (4 abstract submitted), AGU booth for GRASS GIS reserved and payed&lt;br /&gt;
&lt;br /&gt;
* Submitted workshop, talk and keynote to FOSS4G 2024 - Brazil.&lt;br /&gt;
&lt;br /&gt;
=== CMake transition ===&lt;br /&gt;
Ongoing work on [https://github.com/OSGeo/grass/pull/3621 CMake compilation] was partially covered by POSE.&lt;br /&gt;
&lt;br /&gt;
=== Code Quality and Security ===&lt;br /&gt;
&lt;br /&gt;
* Code quality improvements in Python code:&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3763 Flake8 W605 Invalid escape sequence #3763]&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3926 Flake8 E741 Do not use variables named 'I', 'O', or 'l' in wxGUI code #3926]&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3928 Flake8 E741 for the rest of code base #3928]&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/4200  grass.temporal: Flake8 F841 Local variable assigned to but never used #4200]&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/4113  grass.pygrass: Remove unused arg in ctypes.CFUNCTYPE #4113]&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/4206 t.rast.to.vect: Fix passing column parameter to r.to.vect, fix flake8 F841 #4206]&lt;br /&gt;
&lt;br /&gt;
* Code quality and security improvements in C and C++ code are in 36 PRs with fixes for more than 25 tools, specifically in:&lt;br /&gt;
** raster: r.path, r.out.mpeg, r.out.png, r.in.xyz, r.terraflow, r.statistics, r.spreadpath, r.sim.water, r.sim.erosion, r.object.geometry, r.coin&lt;br /&gt;
** imagery: i.atcorr, i.aster.toar, i.ortho.photo, i.landsat.acca, i.segment, i.smap&lt;br /&gt;
** display: d.linegraph, d.legend.vect, d.histogram, d.labels&lt;br /&gt;
** raster 3D: r3.in.v5d, r3.info, r3.mapcalc&lt;br /&gt;
** other: lib/gis, lib/vector/diglib, g.findfile, g.setproj, ps.map, lib/cdhc&lt;br /&gt;
&lt;br /&gt;
Changes by author: [https://github.com/OSGeo/grass/pulls?q=author%3AShubhamDesai+is%3Apr+is%3Aclosed+merged%3A2024-06-01..2024-08-31+base%3Amain+sort%3Aupdated-desc+ ShubhamDesai], [https://github.com/OSGeo/grass/pulls?q=author%3Amshukuno+is%3Apr+is%3Aclosed+merged%3A2024-06-01..2024-08-31+base%3Amain+sort%3Aupdated-desc+ Makiko Shukunobe], [https://github.com/OSGeo/grass/pulls?q=author%3Aymdatta+is%3Apr+is%3Aclosed+merged%3A2024-06-01..2024-08-31+base%3Amain+sort%3Aupdated-desc+ ymdatta]&lt;br /&gt;
&lt;br /&gt;
Several reviewers, not supported by the NSF POSE project, played crucial role not only in reviewing, but also in determining the right fixes.&lt;br /&gt;
&lt;br /&gt;
Fixed issues were reported by Flake8, Coverity Scan, and Cppcheck.&lt;br /&gt;
&lt;br /&gt;
=== Tests ===&lt;br /&gt;
&lt;br /&gt;
Changes by author: [https://github.com/OSGeo/grass/pulls?q=author%3AShreshth-Malik+is%3Apr+is%3Aclosed+merged%3A2024-12-01..2025-02-28+base%3Amain+sort%3Aupdated-desc+ Shreshth-Malik]&lt;br /&gt;
&lt;br /&gt;
=== Documentation ===&lt;br /&gt;
&lt;br /&gt;
* Veronica Andreo met some GRASS developers and contributors to follow up on tutorials development.&lt;br /&gt;
* 7 new [https://github.com/ncsu-geoforall-lab/tutorials tutorials] on time series:&lt;br /&gt;
** Management and visualization&lt;br /&gt;
** Aggregation&lt;br /&gt;
** Algebra&lt;br /&gt;
** Accumulation&lt;br /&gt;
** Gap filling&lt;br /&gt;
** Querying raster time series with vectors&lt;br /&gt;
** Subset, import and export&lt;br /&gt;
* Tutorial on how to set up Jupyter and GRASS in Windows&lt;br /&gt;
* New [https://github.com/OSGeo/grass-tutorials repository] under OSGeo organization to host the upcoming quarto based website for GRASS tutorials&lt;br /&gt;
* PR template created - [https://github.com/OSGeo/grass/community GitHub Community Standards] all checked complete&lt;br /&gt;
&lt;br /&gt;
=== Communication and outreach ===&lt;br /&gt;
&lt;br /&gt;
* Creation of 4 news posts in the [https://grass.osgeo.org/news/ GRASS website]&lt;br /&gt;
* Social media:&lt;br /&gt;
** [https://twitter.com/GRASSGIS Twitter]: 25 new posts&lt;br /&gt;
** [https://fosstodon.org/@grassgis Fosstodon]: 25 new posts&lt;br /&gt;
* New GRASS GIS LinkedIn page at: [https://www.linkedin.com/company/grass-gis/ https://www.linkedin.com/company/grass-gis/]&lt;br /&gt;
* Requested transition of [https://discourse.osgeo.org/t/osgeo-3255-migrate-grass-dev-mailing-list-to-discourse/49796 grass-dev mailing list to discourse.osgeo.org]&lt;br /&gt;
* Set up GRASS GIS swag shop on Redbubble&lt;br /&gt;
&lt;br /&gt;
=== Governance ===&lt;br /&gt;
* [https://grass.osgeo.org/about/roadmap/ Roadmap] and [https://grass.osgeo.org/about/governance/ Governance] pages added to the website &lt;br /&gt;
* PSC elections:&lt;br /&gt;
** Documented criteria to define people entitled to vote&lt;br /&gt;
** Documented procedure to compile the list of voters&lt;br /&gt;
** Elections [https://www.mail-archive.com/grass-user@lists.osgeo.org/msg41102.html announcement] sent out&lt;br /&gt;
&lt;br /&gt;
== Y2 1st quarter report (09/24 - 11/24) ==&lt;br /&gt;
&lt;br /&gt;
=== Presentations and Workshops ===&lt;br /&gt;
FOSS4GNA 2024 in St. Louis, Missouri:&lt;br /&gt;
&lt;br /&gt;
* Vaclav Petras. State of GRASS GIS. FOSS4G NA St. Louis, September 9-11, 2024 ([https://wenzeslaus.github.io/grass-gis-talks/foss4gna2024.html slides])&lt;br /&gt;
* Huidae Cho. Evolution of GRASS GIS. FOSS4G NA St. Louis, September 9-11, 2024 ([https://htmlpreview.github.io/?https://github.com/HuidaeCho/grass-talks/blob/main/foss4g-na-2024.html slides])&lt;br /&gt;
* Huidae Cho. An OpenMP Algorithm for Delineating a Large Number of Watersheds. FOSS4G NA St. Louis, September 9-11, 2024&lt;br /&gt;
* Corey T. White. Developing Web-Applications with GRASS GIS. Workshop. FOSS4G NA St. Louis, September 9-11, 2024&lt;br /&gt;
* Corey T. White. GRASS GIS as a Geospatial Computational Engine. FOSS4G NA St. Louis, September 9-11, 2024&lt;br /&gt;
&lt;br /&gt;
=== Communication and outreach ===&lt;br /&gt;
* Transition of grass-dev mailing list to [https://discourse.osgeo.org/c/grass/developer/61 discourse.osgeo.org] finished.&lt;br /&gt;
&lt;br /&gt;
=== Code Quality and Security ===&lt;br /&gt;
* Python code quality issues addressed in more than 70 PRs, reducing the list of per-file ignores by more than 60%.&lt;br /&gt;
* Code quality and security improvements in C and C++ code are in more than 80 PRs.&lt;br /&gt;
* In total, these changes improve more than 60 tools, specifically:&lt;br /&gt;
** raster: r.water.outlet, r.watershed, r.mfilter, r.to.vect, r.in.poly, r.carve, r.thin, r.fill.dir, r.clump, r.in.gridatb, r.out.png, r.in.wms, r.viewshed, r.fillnulls, r.in.srtm, r.in.pdal, r.in.xyz&lt;br /&gt;
** vector: v.out.dxf, v.build.polylines, v.external.out, v.net, v.univar, v.in.ascii, v.delaunay, v.hull , v.net.timetable, v.kernel, v.to.db, v.colors, v.rectify, v.reclass, v.generalize, v.transform, v.vol.rst, v.cluster, v.to.3d, v.out.ogr, v.external, v.in.dwg, v.report, v.unpack, v.import&lt;br /&gt;
** imagery: i.topo.corr, i.attcorr, i.ortho.photo, i.segment, i.rectify, i.topo.corr, i.panshrapen&lt;br /&gt;
** display: d.vect, d.mon, d.frame, d.rast.edit&lt;br /&gt;
** other: GUI, grass main executable, g.proj, g.version, db.out.ogr, ps.map, r3.in.v5d, r3.in.v5d, lib/vector/Vlib, lib/ogsf, lib/gis, lib/db, lib/lidar, lib/linkm, grass.temporal, grass.script&lt;br /&gt;
&lt;br /&gt;
Changes by author: [https://github.com/OSGeo/grass/pulls?q=author%3AShubhamDesai+is%3Apr+is%3Aclosed+merged%3A2024-09-01..2024-11-30+base%3Amain+sort%3Aupdated-desc+ ShubhamDesai], [https://github.com/OSGeo/grass/pulls?q=author%3Aymdatta+is%3Apr+is%3Aclosed+merged%3A2024-09-01..2024-11-30+base%3Amain+sort%3Aupdated-desc+ ymdatta],&lt;br /&gt;
[https://github.com/OSGeo/grass/pulls?q=author%3Aarohanajit+is%3Apr+is%3Aclosed+merged%3A2024-09-01..2024-11-30+base%3Amain+sort%3Aupdated-desc+ Arohan Ajit]&lt;br /&gt;
&lt;br /&gt;
Several reviewers, not supported by the NSF POSE project, played crucial role not only in reviewing, but also in determining the right fixes. The NSF POSE project personnel focused on fixing issues reported by Flake8, Coverity Scan, and Cppcheck, however also Ruff and Pylint are utilized in GRASS GIS thanks to other contributors.&lt;br /&gt;
&lt;br /&gt;
A configure file for Cppcheck is now included in the repository highlighting the level of compliance and aiding contributors in local analysis and subsequent implementation of fixes ([https://github.com/OSGeo/grass/pull/4766 PR #4766]).&lt;br /&gt;
&lt;br /&gt;
Finally, we created a new public GitHub project in the OSGeo GitHub organization for [https://github.com/orgs/OSGeo/projects/11 GRASS GIS Security] to track and communicate progress on the security front with 147 resolved items and 8 in-progress items at the time of writing.&lt;br /&gt;
&lt;br /&gt;
=== Documentation, both Internal and External ===&lt;br /&gt;
&lt;br /&gt;
* To improve indexing of GRASS GIS manual pages, we revised our current sitemap ([https://github.com/OSGeo/grass-website/pull/482 grass-website/pull/482)]), added a updated sitemap to Google Search Console and Bing, fixed robots.txt, and triggered and re-triggered the indexing many times to make Google consume the new content. While before, some searches gave outdated documentation, experimental websites, or unofficial resources only, now the official website and stable documentation is returned as the first search result.&lt;br /&gt;
* All older manuals, including version 6.4 and 6.5, are now available (restored) so that search engines can consume them and old links and indices continue to work. They now newly contain the canonical URLs so that search engines understand the structure and don't penalize duplicate content.&lt;br /&gt;
* On OSGeo server which hosts GRASS GIS website, we replaced some of the redirects in Apache by local soft links so that URL like grass.osgeo.org/grass-stable stay as is for both humans and machines and don't redirect to specific version (easier to copy-paste from a browser URL bar and easier for search engine to understand what is the page to show).&lt;br /&gt;
* We implemented the necessary changes into the cronjobs and did overall updates to enable build of the server-side documentation jobs locally for testing purposes. The most relevant PRs are:&lt;br /&gt;
** [https://github.com/OSGeo/grass-addons/pull/1241 Inject canonical URLs into older manual pages (SEO) #1241]&lt;br /&gt;
** [https://github.com/OSGeo/grass-addons/pull/1173 Fix red new version box injection and script documentation #1173]&lt;br /&gt;
** [https://github.com/OSGeo/grass-addons/pull/1215 Expand script to run stand-alone #1215]&lt;br /&gt;
* We advanced the [https://github.com/orgs/OSGeo/projects/9 GRASS Markdown Documentation project].&lt;br /&gt;
* New and better wording for intro to imagery tools: [https://github.com/OSGeo/grass/pull/4536 Add intro text to imageryintro.html #4536]&lt;br /&gt;
* List of GRASS GIS profiles on different websites is now in an internal PSC document.&lt;br /&gt;
* Documentation of all the internal infrastructure, especially that of grass.osgeo.org server, is now in an internal PSC document.&lt;br /&gt;
* We painstakingly identified and described all maintenance procedures performed by Markus Neteler in OSGeo SAC capacity for GRASS GIS and as a contributor to GRASS GIS for better work distribution.&lt;br /&gt;
* Most of the work on the documentation was done through a contract with Markus Neteler with additional help from Martin Landa for the transition to Markdown.&lt;br /&gt;
&lt;br /&gt;
=== Mentoring Activities ===&lt;br /&gt;
Mentors were actively working with 3 mentees.&lt;br /&gt;
&lt;br /&gt;
=== Event Planning and Organizing ===&lt;br /&gt;
&lt;br /&gt;
[[File:Raleigh_2016_11_05.jpg|500px|thumb|right|alt=Rooms, tables and large open space|Smaller space utilized in the past for a local GRASS GIS meetup in Hunt library at NC State University campus (photos are from a [[GRASS GIS Raleigh meetups 2016|2016 meetup]])]]&lt;br /&gt;
&lt;br /&gt;
We are planning and organizing GRASS GIS Developer Summit in Raleigh, NC, USA at North Carolina State University.&lt;br /&gt;
&lt;br /&gt;
* High-demand spaces reserved at NCSU (some since May 2024, other since September 2024).&lt;br /&gt;
* A [https://discourse.osgeo.org/t/grass-dev-save-the-date-grass-developer-summit-raleigh-2025/85540 save-the-date post for grass-dev], interest form, and first round of additional invites. (Date established earlier in spring 2024 by NSF POSE team after a survey of PSC members and Core Development Team members.)&lt;br /&gt;
* We addressed participant's visa needs based on the responses to the interest form.&lt;br /&gt;
* We formed the initial Organizing Committee formed and rough event agenda created.&lt;br /&gt;
* Page created: [[GRASS Developer Summit Raleigh 2025]].&lt;br /&gt;
&lt;br /&gt;
== Y2 2nd quarter report (12/24 - 02/25) ==&lt;br /&gt;
&lt;br /&gt;
=== Presentations, Workshops, Event Planning ===&lt;br /&gt;
&lt;br /&gt;
[[File:GRASS GIS booth AGU24.jpg|500px|thumb|right|alt=GRASS GIS booth at AGU24|GRASS GIS booth at AGU24, Washington, DC]]&lt;br /&gt;
&lt;br /&gt;
AGU24 Annual Meeting, Washington, DC, USA:&lt;br /&gt;
* GRASS GIS booth in the Exhibit Hall with a banner, new flyers, and a Tangible Landscape setup to demonstrate some of the capabilities of GRASS GIS (Monday afternoon - Thursday morning)&lt;br /&gt;
* GRASS GIS for Advanced Earth Systems Analysis and Modeling (eLightning) by Vaclav Petras&lt;br /&gt;
* Perspectives from an Open Source Geospatial Modeling Platform Maintainer (poster) by Anna Petrasova&lt;br /&gt;
* GRASS GIS Is FAIR: Its Evolution Towards Open Science (poster) by Huidae Cho&lt;br /&gt;
* GRASS GIS as a Platform for Dissemination of Reusable Geocomputational Research (poster) by Vaclav Petras&lt;br /&gt;
&lt;br /&gt;
Beyond the GIS Map: Open Source Tools for Geospatial Research, Workshop at the Institute for Social Science   Research Arizona State University. 11 December 2024  &lt;br /&gt;
* Michael Barton and Eunice Villaseñor Iribe, instructors  &lt;br /&gt;
* Topics  &lt;br /&gt;
** Introduction to GRASS&lt;br /&gt;
** Modeling Terrain in GRASS&lt;br /&gt;
** Modeling Movement in GRASS&lt;br /&gt;
** Remote Sensing With GRASS&lt;br /&gt;
&lt;br /&gt;
Physically-based hydrologic modeling using GRASS GIS r.topmodel, Workshop at New Mexico State University. January 31, 2025, 1pm-5pm.&lt;br /&gt;
* Instructor: Huidae Cho&lt;br /&gt;
* Assistant: Nelson Kandel&lt;br /&gt;
* Participants: 17&lt;br /&gt;
* Topics&lt;br /&gt;
** Introduction to GRASS&lt;br /&gt;
** Hydrologic Modeling Using GRASS&lt;br /&gt;
** Model Calibration and Validation&lt;br /&gt;
&lt;br /&gt;
=== Code Quality and Security ===&lt;br /&gt;
&lt;br /&gt;
Changes by author: [https://github.com/OSGeo/grass/pulls?q=author%3AShubhamDesai+is%3Apr+is%3Aclosed+merged%3A2024-12-01..2025-02-28+base%3Amain+sort%3Aupdated-desc+ ShubhamDesai], [https://github.com/OSGeo/grass/pulls?q=author%3Aarohanajit+is%3Apr+is%3Aclosed+merged%3A2024-12-01..2025-02-28+base%3Amain+sort%3Aupdated-desc+ Arohan Ajit]&lt;br /&gt;
&lt;br /&gt;
=== Tests ===&lt;br /&gt;
&lt;br /&gt;
Changes by author: [https://github.com/OSGeo/grass/pulls?q=author%3AShreshth-Malik+is%3Apr+is%3Aclosed+merged%3A2024-12-01..2025-02-28+base%3Amain+sort%3Aupdated-desc+ Shreshth-Malik], [https://github.com/OSGeo/grass/pulls?q=author%3Ajayneel-shah18+is%3Apr+is%3Aclosed+merged%3A2024-12-01..2025-02-28+base%3Amain+sort%3Aupdated-desc+ jayneel-shah18]&lt;br /&gt;
&lt;br /&gt;
=== Documentation and Tutorials ===&lt;br /&gt;
We finalized and prepared for launch Quarto-based tutorial website editable through GitHub. OSGeo provided a new domain [https://grass-tutorials.osgeo.org/ grass-tutorials.osgeo.org]. Initial set of tutorials were created by Veronica Andreo when she was part of the NSF POSE team (some tutorials will be finalized and released later). Anna Petrasova did the reviews, curation, posts for external tutorials, and transition from list of tutorials at the main website.&lt;br /&gt;
&lt;br /&gt;
We did a major push to create Markdown files in the source code and enable the compilation of documentation for mkdocs. We also configured the mkdocs and revised the Markdown syntax in the files.&lt;br /&gt;
&lt;br /&gt;
=== Communication and outreach ===&lt;br /&gt;
&lt;br /&gt;
Renewed [https://www.youtube.com/@grass-gis Youtube channel @grass-gis] by adding playlists, organizing videos, and updating branding.&lt;br /&gt;
&lt;br /&gt;
=== Governance ===&lt;br /&gt;
Submitted application for GRASS GIS to join NumFocus.&lt;br /&gt;
&lt;br /&gt;
=== Event Planning and Organizing ===&lt;br /&gt;
&lt;br /&gt;
* Created draft of schedule, agenda, and budget.&lt;br /&gt;
* Identified participants eligible for travel support.&lt;br /&gt;
** While the meeting is open to anyone, the NSF-funded travel support is based on priorities set in the NSF POSE project for the Developer Summit.&lt;br /&gt;
** Specifically, we are inviting individuals identified based on the following criteria (in this order; moving to the next group if there is still available places):&lt;br /&gt;
*** Top 20 contributors to OSGeo/grass in the last two years (2023-2024), but not a bot or NSF POSE personnel (contributing only within NSF POSE). (After exclusions, this is less than 10 people.) &lt;br /&gt;
*** PSC member before or after 2024 elections, but not NSF POSE personnel at the time of the meeting. (With PSC members currently contributing code as well, this is only a couple of people after exclusions.)&lt;br /&gt;
*** Active participant in one of the mentoring programs. (Participant demonstrated the activity by attending meetings, reporting progress, or submitting code for feedback or review.)&lt;br /&gt;
*** Contributors to connections and interfaces prioritized in or during the NSF POSE project:&lt;br /&gt;
**** R packages (2 slots for active contributors or maintainers determined by previously established contacts in the given community through their activity on a relevant code base.)&lt;br /&gt;
**** GRASS GIS code in QGIS (2 slots for active contributors or maintainers determined by previously established contacts in the given community through their activity on a relevant code base.)&lt;br /&gt;
*** Contributors in &amp;quot;write&amp;quot; teams for OSGeo/grass, OSGeo/grass-addons, OSGeo/grass-website, and OSGeo/grass-tutorials repositories. (Almost all fall into one of the above groups.)&lt;br /&gt;
*** Contributors to closely related projects, specifically actinia, the GRASS GDAL driver, and the GRASS GeoServer datastore.&lt;br /&gt;
* Sent individual invites to participants eligible for travel support. (ongoing)&lt;br /&gt;
&lt;br /&gt;
== Y2 3rd quarter report (03/25 - 05/25) ==&lt;br /&gt;
&lt;br /&gt;
=== Governance ===&lt;br /&gt;
* GRASS accepted NumFOCUS (more steps to make it official)&lt;br /&gt;
&lt;br /&gt;
=== Presentations, Workshops, Event Planning ===  &lt;br /&gt;
* Beyond the GIS Map: Open Source Tools for Geospatial Research, Workshop at the Institute for Social Science   Research Arizona State University. 25 March 2025 &lt;br /&gt;
** Michael Barton and Eunice Villaseñor Iribe, instructors  &lt;br /&gt;
** Topics: Introduction, Modeling Terrain, Modeling Movement, Remote Sensing with GRASS&lt;br /&gt;
* IALE-NA: [https://github.com/ncsu-geoforall-lab/iale-2025-workshop-tl Building Geospatial Models in GRASS: From Python Workflows to Tangible Landscape], April 15th, hosted by the Center for Geospatial Analytics&lt;br /&gt;
** Anna Petrasova and Caitlin Haedrich&lt;br /&gt;
** 20 participants&lt;br /&gt;
&lt;br /&gt;
* [[GRASS_Developer_Summit_Raleigh_2025]] (see the page for details)&lt;br /&gt;
&lt;br /&gt;
== Y2 4th quarter report (06/25 - 08/25) ==&lt;br /&gt;
&lt;br /&gt;
=== Governance ===&lt;br /&gt;
* GRASS onboarding with NumFOCUS&lt;br /&gt;
&lt;br /&gt;
=== Presentations, Workshops, Event Planning ===  &lt;br /&gt;
* Geomorphometry workshop - Corey White and Caitlin Haedrich&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
;Mentoring program (fall 2023 - summer 2025)&lt;br /&gt;
:Free developer-oriented mentoring program to support researchers and software developers to integrate GRASS GIS into their workflows and contribute to GRASS GIS.&lt;br /&gt;
&lt;br /&gt;
; Streamline contributor onboarding (spring 2024 - fall 2024)&lt;br /&gt;
: Includes updating and creating guidelines for code and non-code contributions.&lt;br /&gt;
&lt;br /&gt;
; Streamline user onboarding (spring 2024 - fall 2024)&lt;br /&gt;
: Includes modernizing tool documentation, developing tutorials.&lt;br /&gt;
: Creating sample datasets for localized tutorials.&lt;br /&gt;
: Developing online training materials for big data processing.&lt;br /&gt;
&lt;br /&gt;
; Training sessions (fall 2023 - summer 2025)&lt;br /&gt;
: Local training sessions (at universities and conferences) introducing GRASS GIS to students and researchers.&lt;br /&gt;
: Training program for big data processing delivered online.&lt;br /&gt;
&lt;br /&gt;
; Engaging industry partners and user (January 2024 - August 2025)&lt;br /&gt;
: Identify and engage industry partners to gather feedback and to start industry partnership program.&lt;br /&gt;
&lt;br /&gt;
; Conferences&lt;br /&gt;
: Presence (talks, workshops, networking) at FOSS4GNA 2023, FOSS4G Asia 2023, AGU 2023, CSDMD 2024, FOSS4G Europe 2024, FOSS4G 2024, AGU 2024&lt;br /&gt;
&lt;br /&gt;
; Community sprints&lt;br /&gt;
: Virtual or in-person participation in OSGeo community sprints, GRASS GIS community sprints&lt;br /&gt;
&lt;br /&gt;
; Software distribution (January 2024 - May 2025)&lt;br /&gt;
: Transition to CMake build system&lt;br /&gt;
: Develop conda package&lt;br /&gt;
&lt;br /&gt;
;Simplify maintenance of GRASS integrations with QGIS and R (2024-2025)&lt;br /&gt;
: Virtual meetings with QGIS and R developers and GRASS GIS developers (spring 2024).&lt;br /&gt;
: Identify and implement improvements to the integration.&lt;br /&gt;
&lt;br /&gt;
;Improve code quality, security, and quality assurance &lt;br /&gt;
: Code quality (Flake8, Pylint, Cppcheck), first half of 2024.&lt;br /&gt;
: Security (CodeQL), second half of 2024.&lt;br /&gt;
: Quality assurance (better pytest integration), second half of 2024.&lt;br /&gt;
&lt;br /&gt;
; In-person developer summit (May 19 - May 24, 2025)&lt;br /&gt;
: Hosted by NC State University, Raleigh, NC, USA.&lt;br /&gt;
: Identify additional challenges for adoption of GRASS GIS as geoprocessing engine.&lt;br /&gt;
: Long-term planning beyond the POSE project.&lt;br /&gt;
&lt;br /&gt;
== Acknowledgements ==&lt;br /&gt;
&lt;br /&gt;
The funding is provided by the U.S. National Science Foundation, award 2303651.&lt;br /&gt;
[[File:NSF Official logo.png|frameless|left]]&lt;br /&gt;
&lt;br /&gt;
[[Category: Community]]&lt;br /&gt;
[[Category: Conferences‏‎]]&lt;br /&gt;
[[Category: 2023]]&lt;br /&gt;
[[Category: 2024]]&lt;br /&gt;
[[Category: 2025]]&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=NSF_POSE_Project_2023-2025_Timeline&amp;diff=28487</id>
		<title>NSF POSE Project 2023-2025 Timeline</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=NSF_POSE_Project_2023-2025_Timeline&amp;diff=28487"/>
		<updated>2025-06-05T19:53:29Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:NSF_grant_announcement.png|500px|right|none]]&lt;br /&gt;
&lt;br /&gt;
To inform GRASS community about the work done as part of the award [https://www.nsf.gov/awardsearch/showAward?AWD_ID=2303651 2303651] from the U.S. National Science Foundation (NSF) to enhance GRASS ecosystem, the following report summarizes the progress and outcomes in quarterly reports and presents the roadmap for the project.&lt;br /&gt;
&lt;br /&gt;
The two main goals of the project are: 1) to facilitate the adoption of GRASS GIS as a key geoprocessing engine by a growing number of researchers and geospatial practitioners in academia, governments, and industry; and 2) to expand and diversify the developer community, especially through supporting next-generation scientists to gain expertise to maintain and innovate GRASS software.&lt;br /&gt;
&lt;br /&gt;
Principal investigators and senior personnel:&lt;br /&gt;
&lt;br /&gt;
* Helena Mitasova, North Carolina State University (Principal Investigator)&lt;br /&gt;
* Vaclav Petras, North Carolina State University (Co-Principal Investigator)&lt;br /&gt;
* Anna Petrasova, North Carolina State University (Co-Principal Investigator)&lt;br /&gt;
* C Michael Barton, Arizona State University (Co-Principal Investigator)&lt;br /&gt;
* Huidae Cho, New Mexico State University (Co-Principal Investigator)&lt;br /&gt;
* Giuseppe Amatulli, Yale (Senior Personnel)&lt;br /&gt;
&lt;br /&gt;
Other personnel who is joining for the execution of the grant is listed below when relevant.&lt;br /&gt;
&lt;br /&gt;
== Y1 1st quarter report (09/23 - 11/23) ==&lt;br /&gt;
=== Project Announcements and Communication ===&lt;br /&gt;
* Announcement on [https://grass.osgeo.org/news/2023_09_06_nsf_grant_awarded/ GRASS website].&lt;br /&gt;
* Info session to explain the POSE Project ([https://lists.osgeo.org/pipermail/grass-user/2023-September/083423.html Announcement on GRASS user mailing list], 2 sessions for different time zones).&lt;br /&gt;
* Collected statistics from GitHub, X and others and set up automated collection for GitHub.&lt;br /&gt;
&lt;br /&gt;
=== Conference Presentations ===&lt;br /&gt;
* [https://petrasovaa.github.io/FUTURES-CONUS-talk/foss4gNA2023.html#/ Parallelization Tips for Geoprocessing with GRASS GIS] by Anna Petrasova at FOSS4GNA, October 2023.&lt;br /&gt;
* [https://wenzeslaus.github.io/grass-gis-talks/foss4gna2023.html#/ GRASS GIS: Not What You Think] by Vaclav Petras at FOSS4GNA, October 2023. &lt;br /&gt;
* [https://docs.google.com/presentation/d/1D-Fh1cLSPINyeXdVaxlakrE9IjB8kK5lIw3D12yX1bk Computational Notebooks for Reproducible Geospatial Computation in Research and Education] by Caitlin Haedrich at FOSS4GNA, October 2023.&lt;br /&gt;
* [https://github.com/HuidaeCho/grass-gis-talk-foss4g-asia-2023 State of GRASS GIS: 40 Years Strong and Counting] by Huidae Cho at FOSS4G Asia, November 2023.&lt;br /&gt;
&lt;br /&gt;
=== Training and Workshops ===&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/grass-gis-workshop-foss4gna-2023 Unlock the power of GRASS GIS] by Anna Petrasova and Caitlin Haedrich at FOSS4GNA, October 2023. &lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/develop-tools-with-grass-foss4gna-2023 Develop Geospatial Workflows and Custom Tools with GRASS GIS] by Vaclav Petras and Corey White at FOSS4GNA, October 2023.&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/grass-workshop-gis-week-2023 Big Data Computing with GRASS GIS] by Anna Petrasova and Vaclav Petras at NC State GIS week, November 2023.&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/grass-gis-on-hpc-henry2/blob/8564c72e9b8929c9ef4d25ada1ef36b569991221/docs/tutorial.md GIS Week Workshop: High Performance Computing for Geospatial Analysis (GRASS GIS part)] by Vaclav Petras (main lecture lead by Andrew Petersen from NCSU OIT) at NC State GIS week, November 2023.&lt;br /&gt;
* [https://spatial-ecology.net/docs/build/html/COURSESAROUNDTHEWORLD/course_geocomp_ml_04-05_2024.html Geocomputation and Machine Learning for Environmental Applications] training course [https://spatial-ecology.net/course-geocomputation-machine-learning-for-environmental-applications-intermediate-level-2024/ announced]. GRASS GIS part led by Giuseppe Amatulli is free of charge thanks to the support by NSF.&lt;br /&gt;
&lt;br /&gt;
=== Community Sprint Participation ===&lt;br /&gt;
Anna Petrasova and Vaclav Petras remotely participated in [https://wiki.osgeo.org/wiki/OSGeo_Community_Sprint_2023 OSGeo 2023 code sprint] doing PR reviews and maintenance of GRASS GIS code, documentation, and website.&lt;br /&gt;
&lt;br /&gt;
=== Mentoring Program ===&lt;br /&gt;
* Started a development-oriented mentoring program [https://grass.osgeo.org/news/2023_10_11_mentoring_program_announced/ announced] with details available on a [https://grasswiki.osgeo.org/wiki/Mentoring_Program wiki page].&lt;br /&gt;
* Program now has 4 participants (from 12 responses) supported by email and video calls.&lt;br /&gt;
* Program already resulted in improvements to GRASS GIS core and addons:&lt;br /&gt;
** merged PR: [https://github.com/OSGeo/grass/pull/3206 grass.script: ensure memmap content is flushed before writing to a raster]&lt;br /&gt;
** radar addon toolset PR: [https://github.com/OSGeo/grass-addons/pull/949 Add i.saocom and i.sar toolsets]&lt;br /&gt;
Mentoring Program is a new effort started and so-far performed only by the POSE team.&lt;br /&gt;
&lt;br /&gt;
=== Student Grants Program ===&lt;br /&gt;
Student grants [https://grass.osgeo.org/news/2023_11_09_student_grants_announced/ announced] with topics at a [https://grasswiki.osgeo.org/wiki/GRASS_GIS_Student_Grants wiki page]. Student Grants Program is an existing effort which the POSE team participates in.&lt;br /&gt;
&lt;br /&gt;
=== Working Groups ===&lt;br /&gt;
&lt;br /&gt;
Four [https://grasswiki.osgeo.org/wiki/Working_Groups working groups] created (scope, wiki page, coordinator, and a list of people for each).&lt;br /&gt;
&lt;br /&gt;
=== Citations ===&lt;br /&gt;
&lt;br /&gt;
* GRASS GIS Google Scholar [https://scholar.google.com/citations?user=gJ0ZB0cAAAAJ account] updated with more complete records.&lt;br /&gt;
* A [https://forms.gle/cDEvMJu7d6nvxLKn9 form] was created to collect new and missing records.&lt;br /&gt;
* Profile link added to GRASS website [https://grass.osgeo.org/contribute/ Contribute] and [https://grass.osgeo.org/about/citation/ Citation] page.&lt;br /&gt;
&lt;br /&gt;
== Y1 2nd quarter report (12/23 - 02/24) ==&lt;br /&gt;
=== NSF I-Corps program ===&lt;br /&gt;
Corey White, Vaclav Petras, and Anna Petrasova participated in a 4-week long intensive mandatory training that draws on the methods, customer discovery, and curriculum of the [https://new.nsf.gov/funding/initiatives/i-corps NSF Innovation Corps] and applies them to open-source projects.&lt;br /&gt;
&lt;br /&gt;
The program included conducting 70+ 30-minute interviews with both GRASS users and non-users to better shape the future path of GRASS GIS and the POSE project. So far, the interviews focused on educators, companies, researchers, influencers and it focused more on non-users than users.&lt;br /&gt;
&lt;br /&gt;
Next steps, include processing the collected qualitative data, developing possible future directions for sustainability of the project, discussing these with the Project Steering Committee, the core team of developers, and the broader community.&lt;br /&gt;
&lt;br /&gt;
=== Mentoring Program ===&lt;br /&gt;
The development oriented [https://grass.osgeo.org/news/2023_10_11_mentoring_program_announced/ mentoring program] welcomed 5 new participants from various institutions including universities, USGS, US Army Corps of Engineers, and local municipalities. The discussed topics covered developing workflows for topography and network analysis, environmental modeling, and geophysics. Participants were supported by email and video calls.&lt;br /&gt;
&lt;br /&gt;
=== Conference Presentations ===&lt;br /&gt;
* [https://agu.confex.com/agu/fm23/meetingapp.cgi/Paper/1342418 Modeling vegetated stream buffer impacts on water depth and discharge at the watershed scale with GRASS GIS and Jupyter Notebooks] by Caitlin Haedrich at AGU, December 2023.&lt;br /&gt;
* [https://agu.confex.com/agu/fm23/meetingapp.cgi/Paper/1420596 OpenPlains: A Web-Based Platform to Democratize Geospatial Participatory Modeling on the Cloud] by Corey White at AGU, December 2023.&lt;br /&gt;
&lt;br /&gt;
=== Presentations and Workshops ===&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/grass-gis-workshop-vanderbilt-2024 Intro to GRASS GIS] by Vaclav Petras and Anna Petrasova was remotely delivered to geographers at Vanderbilt University in February 2024. The  workshop was developed in Jupyter Lab and run using [https://wholetale.org WholeTale] online platform.&lt;br /&gt;
* [https://github.com/tomorrownow/intro-to-geoprocessing-workshop Introduction to GRASS GIS Geospatial Processing] by Corey White at [https://smathhacks.ncssm.edu/ SMathHacks hackathon], March 2nd (supported also by Veronica Andreo and Vaclav Petras). SMathHacks is the annual 36-hour hackathon hosted by the NC School of Science and Math, open to all North Carolina students. Students collaborate to build innovative software projects, explore new technologies, and have fun along the way. The workshop was delivered in person with students using [https://colab.research.google.com/ Google Colab].&lt;br /&gt;
&lt;br /&gt;
=== Student Grant Program ===&lt;br /&gt;
Linda Karlovska participates in the [https://grasswiki.osgeo.org/wiki/GRASS_GIS_Student_Grants Student Grant program] with her project [https://trac.osgeo.org/grass/wiki/wxGUIDevelopment/EasyCommandHistoryNavigation Easy command history navigation through the History browser panel] mentored by Anna Petrasova (POSE team) and Martin Landa (FCE CTU). Student Grants Program is an existing effort which the POSE team participates in by mentoring.&lt;br /&gt;
&lt;br /&gt;
=== Code Security ===&lt;br /&gt;
Vaclav Petras mentors four students who create code security improvements in their NCSU class ''CSC 472: Cybersecurity Practicum''. So far, the students created two PRs which were successfully merged: &lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/3444 grass.script: Change insecure mktemp to NamedTemporaryFile #3444]&lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/3451 utils: fixed shell vulnerability in mkrest.py #3451]&lt;br /&gt;
&lt;br /&gt;
Two other PRs are open and more work is underway to do first steps for new approach to a more secure code.&lt;br /&gt;
&lt;br /&gt;
=== Localized Basic Datasets ===&lt;br /&gt;
* NCSU and ASU teams worked on localized versions of GRASS basic data set following the [https://grass.osgeo.org/sampledata/north_carolina/nc_basic_spm_grass7.zip North Carolina basic data set example], preparing Flagstaff, Arizona and Nepal draft version with basic layers&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Y1 3rd quarter report (03/24 - 05/24) ==&lt;br /&gt;
&lt;br /&gt;
=== Mentoring Activities ===&lt;br /&gt;
The mentoring program form received 2 new responses and mentors were actively working with 3 mentees.&lt;br /&gt;
It resulted in fixes in [https://github.com/OSGeo/grass-addons/pull/1042 v.transects] and [https://github.com/OSGeo/grass-addons/pull/1077 r.accumulate].&lt;br /&gt;
&lt;br /&gt;
Linda Kladivova finished her project developing [https://trac.osgeo.org/grass/wiki/wxGUIDevelopment/EasyCommandHistoryNavigation History browser] in the GRASS GUI as part of the GRASS Student Grant Program. Mentor's time was covered by POSE.&lt;br /&gt;
&lt;br /&gt;
GRASS GIS has [https://grass.osgeo.org/news/2024_05_27_gsoc_2024_students/ 3 students this year for Google Summer of Code]. Time spent managing GSoC for GRASS GIS was covered by POSE.&lt;br /&gt;
&lt;br /&gt;
The topics covered by GSoC projects are:&lt;br /&gt;
* [https://grasswiki.osgeo.org/wiki/GRASS_GSoC_2024_EODAG_Support Add EODAG support to GRASS GIS]&lt;br /&gt;
* [https://grasswiki.osgeo.org/wiki/GRASS_GSoC_2024_Improve_user_experience_in_Jupyter_Notebooks Improve GRASS user experience in Jupyter Notebook]&lt;br /&gt;
* [https://grasswiki.osgeo.org/wiki/GRASS_GSoC_2024_Add_JSON_output Add JSON output to different GRASS tools in C]&lt;br /&gt;
&lt;br /&gt;
=== Presentations, Workshops, Event Planning ===&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/tngic-2024 GRASS 101: From GUI Clicks to Writing Scripts (TNGIC 2024)] by Veronica Andreo and Caitlin Haedrich&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/csdms-grass-2024 Coastal evolution analysis and inundation modeling with GRASS GIS (CSDMS Workshop 2024)] by Caitlin Haedrich and Pratikshya Regmi, see also [https://cnr.ncsu.edu/geospatial/news/2024/06/03/students-teach-grass-gis-for-coastal-hazard-analysis/ blog post with images]&lt;br /&gt;
&lt;br /&gt;
* Organization of [[GRASS Community Meeting Prague 2024]] and budget planning by Vaclav Petras&lt;br /&gt;
&lt;br /&gt;
=== CMake transition ===&lt;br /&gt;
Ongoing work on [https://github.com/OSGeo/grass/pull/3621 CMake compilation] was partially covered by POSE.&lt;br /&gt;
&lt;br /&gt;
=== Code Quality and Security ===&lt;br /&gt;
&lt;br /&gt;
Code quality improvements in Python code:&lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/3541 PR addressing Flake8 E501] (long lines in 158 files not fixable by automated tools)&lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/3535 PR addressing Flake8 E401] (unused imports)&lt;br /&gt;
&lt;br /&gt;
Vaclav Petras mentored a team of four students who create code security improvements in their NCSU class ''CSC 472: Cybersecurity Practicum''. The team created 12 PRs which were successfully merged, 7 additional experimental PRs (not merged) and 2 PRs which are still open at this time. Specifically, the team achieved the following:&lt;br /&gt;
&lt;br /&gt;
* With the involvement and help from the other contributors, the team introduced Bandit and Coverity Scan as additional code scanning tools for Python and C, respectively.&lt;br /&gt;
* The team analyzed issues reported CodeQL, Bandit, and Coverity Scan and reported on relevance of different issues to the project (report privately shared with the GRASS Development Team).&lt;br /&gt;
* Vulnerability Triage Guide (also privately shared with the GRASS Development Team).&lt;br /&gt;
* The team also developed a [https://github.com/OSGeo/grass/security/policy security policy] for the project.&lt;br /&gt;
* The vulnerability reporting and security advisories were enabled based on the team recommendations.&lt;br /&gt;
* The team fixed several specific security issues in the code:&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3469  packaging: Use subprocess instead of os.popen for change log creation #3469] (merged)&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3549  lib raster: fixed security vulnerabilities and weaknesses #3549] (merged)&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3451  utils: fixed shell vulnerability in mkrest.py #3451] (merged)&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3444  grass.script: Change insecure mktemp to NamedTemporaryFile #3444] (merged)&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3551  lib/psdriver: Fix issues with wrong type of arguments to printf #3551] (PR open)&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3452 g.region/r.to.rast3elev: fixed scanf error to recognize EOF as a possible return value #3452] (PR open)&lt;br /&gt;
&lt;br /&gt;
=== Documentation ===&lt;br /&gt;
* Documentation and Education Working Group met and planned the development of new tutorials. Veronica Andreo met other GRASS developers and contributors to coordinate further tutorials development.&lt;br /&gt;
* Development of new [https://github.com/ncsu-geoforall-lab/tutorials tutorials] in progress, topics include:&lt;br /&gt;
** Getting started with GRASS GIS&lt;br /&gt;
** GRASS GIS in Google Colab&lt;br /&gt;
** GRASS GIS and Python&lt;br /&gt;
** GRASS GIS and R&lt;br /&gt;
** GRASS R and Python comparison&lt;br /&gt;
** Making plots in GRASS GIS&lt;br /&gt;
* New [https://github.com/OSGeo/grass/blob/main/doc/development/style_guide.md GRASS Programming Style Guide]&lt;br /&gt;
* [https://github.com/petrasovaa/cookiecutter-grass-addon New addon template powered by Cookiecutter]&lt;br /&gt;
* Analysis of options names and functionality in plotting tools:&lt;br /&gt;
** [https://github.com/OSGeo/grass-addons/issues/1071 Addons for plotting: Standardize parameters and flags]&lt;br /&gt;
&lt;br /&gt;
=== Communication and outreach ===&lt;br /&gt;
&lt;br /&gt;
* Creation of 4 news post in the [https://grass.osgeo.org/news/ GRASS website]&lt;br /&gt;
* Social media:&lt;br /&gt;
** [https://twitter.com/GRASSGIS Twitter]: 9 new posts/threads&lt;br /&gt;
** [https://fosstodon.org/@grassgis Fosstodon]: 9 new posts/threads&lt;br /&gt;
&lt;br /&gt;
=== Other sustainability activities ===&lt;br /&gt;
* [https://github.com/OSGeo/grass/blob/main/CODE_OF_CONDUCT.md Code of Conduct added to the main repository]&lt;br /&gt;
* [https://github.com/OSGeo/grass/blob/main/.github/ISSUE_TEMPLATE/bug_report.md revised Issue template]&lt;br /&gt;
* New [https://github.com/OSGeo/grass/pull/3673 RFC for a Release Policy]&lt;br /&gt;
* Revised [https://github.com/OSGeo/grass/pull/2815 RFC for Release Procedure]&lt;br /&gt;
* WIP: GRASS GIS Roadmap&lt;br /&gt;
* [https://github.com/OSGeo/grass-website/issues/414 GRASS website: ongoing restructuring]&lt;br /&gt;
* [[PSC]] page moved from trac wiki to media wiki&lt;br /&gt;
&lt;br /&gt;
== Y1 4th quarter report (06/24 - 08/24) ==&lt;br /&gt;
&lt;br /&gt;
=== Mentoring Activities ===&lt;br /&gt;
The mentoring program form received 3 new responses and mentors were actively working with 3 mentees.&lt;br /&gt;
Results include parallelization of r.texture, r.horizon, improved grass.benchmarking library and a new tutorial on lidar data.&lt;br /&gt;
&lt;br /&gt;
GSoC successfully completed their projects:&lt;br /&gt;
* [https://grasswiki.osgeo.org/wiki/GRASS_GSoC_2024_EODAG_Support Add EODAG support to GRASS GIS]&lt;br /&gt;
* [https://grasswiki.osgeo.org/wiki/GRASS_GSoC_2024_Improve_user_experience_in_Jupyter_Notebooks Improve GRASS user experience in Jupyter Notebook]&lt;br /&gt;
* [https://grasswiki.osgeo.org/wiki/GRASS_GSoC_2024_Add_JSON_output Add JSON output to different GRASS tools in C]&lt;br /&gt;
&lt;br /&gt;
Time spent by mentoring was covered by NSF.&lt;br /&gt;
&lt;br /&gt;
=== Presentations, Workshops, Event Planning ===&lt;br /&gt;
&lt;br /&gt;
* [https://veroandreo.github.io/grass_foss4geu_2024/ Let's combine GRASS, Python and R: Satellite time series data for species distribution modeling]. Workshop by Veronica Andreo. FOSS4G Europe 2024, Tartu.&lt;br /&gt;
* [https://veroandreo.github.io/grass-gis-talks/foss4gEU2024.html#/ Status of GRASS GIS project]. Talk by Veronica Andreo. FOSS4G Europe 2024, Tartu.&lt;br /&gt;
* [https://veroandreo.github.io/grass-gis-talks/useR2024.html#/ Boost Spatial Data Science Workflows with GRASS GIS and R]. Talk  by Veronica Andreo. useR Conference 2024, Salzburg.&lt;br /&gt;
* [https://ncsu-geoforall-lab.github.io/usdoi-webinar/notebooks/grass_jupyter.html Geoprocessing with GRASS GIS and Jupyter Notebooks]. Webinar by Corey White. U.S. DOI, August 2024, NCSU.&lt;br /&gt;
* [[GRASS Community Meeting Prague 2024]]&lt;br /&gt;
&lt;br /&gt;
* [https://spatial-ecology.net/docs/build/html/COURSESAROUNDTHEWORLD/course_GEO-OPEN-HACK-2024_06_2024.html GEO-OPEN-HACK-2024: Big Geospatial Data Hackathon with Open Infrastructure and Tools]  training course delivered ([https://iiasa.ac.at/events/jun-2024/geo-open-hack-2024-big-geospatial-data-hackathon-with-open-infrastructure-and-tools announcement]). The GRASS material has been developed as part of the NSF grant. &lt;br /&gt;
&lt;br /&gt;
* Planning GRASS Dev summit 2025 at NCSU&lt;br /&gt;
&lt;br /&gt;
* Planning AGU (4 abstract submitted), AGU booth for GRASS GIS reserved and payed&lt;br /&gt;
&lt;br /&gt;
* Submitted workshop, talk and keynote to FOSS4G 2024 - Brazil.&lt;br /&gt;
&lt;br /&gt;
=== CMake transition ===&lt;br /&gt;
Ongoing work on [https://github.com/OSGeo/grass/pull/3621 CMake compilation] was partially covered by POSE.&lt;br /&gt;
&lt;br /&gt;
=== Code Quality and Security ===&lt;br /&gt;
&lt;br /&gt;
* Code quality improvements in Python code:&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3763 Flake8 W605 Invalid escape sequence #3763]&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3926 Flake8 E741 Do not use variables named 'I', 'O', or 'l' in wxGUI code #3926]&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3928 Flake8 E741 for the rest of code base #3928]&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/4200  grass.temporal: Flake8 F841 Local variable assigned to but never used #4200]&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/4113  grass.pygrass: Remove unused arg in ctypes.CFUNCTYPE #4113]&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/4206 t.rast.to.vect: Fix passing column parameter to r.to.vect, fix flake8 F841 #4206]&lt;br /&gt;
&lt;br /&gt;
* Code quality and security improvements in C and C++ code are in 36 PRs with fixes for more than 25 tools, specifically in:&lt;br /&gt;
** raster: r.path, r.out.mpeg, r.out.png, r.in.xyz, r.terraflow, r.statistics, r.spreadpath, r.sim.water, r.sim.erosion, r.object.geometry, r.coin&lt;br /&gt;
** imagery: i.atcorr, i.aster.toar, i.ortho.photo, i.landsat.acca, i.segment, i.smap&lt;br /&gt;
** display: d.linegraph, d.legend.vect, d.histogram, d.labels&lt;br /&gt;
** raster 3D: r3.in.v5d, r3.info, r3.mapcalc&lt;br /&gt;
** other: lib/gis, lib/vector/diglib, g.findfile, g.setproj, ps.map, lib/cdhc&lt;br /&gt;
&lt;br /&gt;
Changes by author: [https://github.com/OSGeo/grass/pulls?q=author%3AShubhamDesai+is%3Apr+is%3Aclosed+merged%3A2024-06-01..2024-08-31+base%3Amain+sort%3Aupdated-desc+ ShubhamDesai], [https://github.com/OSGeo/grass/pulls?q=author%3Amshukuno+is%3Apr+is%3Aclosed+merged%3A2024-06-01..2024-08-31+base%3Amain+sort%3Aupdated-desc+ Makiko Shukunobe], [https://github.com/OSGeo/grass/pulls?q=author%3Aymdatta+is%3Apr+is%3Aclosed+merged%3A2024-06-01..2024-08-31+base%3Amain+sort%3Aupdated-desc+ ymdatta]&lt;br /&gt;
&lt;br /&gt;
Several reviewers, not supported by the NSF POSE project, played crucial role not only in reviewing, but also in determining the right fixes.&lt;br /&gt;
&lt;br /&gt;
Fixed issues were reported by Flake8, Coverity Scan, and Cppcheck.&lt;br /&gt;
&lt;br /&gt;
=== Tests ===&lt;br /&gt;
&lt;br /&gt;
Changes by author: [https://github.com/OSGeo/grass/pulls?q=author%3AShreshth-Malik+is%3Apr+is%3Aclosed+merged%3A2024-12-01..2025-02-28+base%3Amain+sort%3Aupdated-desc+ Shreshth-Malik]&lt;br /&gt;
&lt;br /&gt;
=== Documentation ===&lt;br /&gt;
&lt;br /&gt;
* Veronica Andreo met some GRASS developers and contributors to follow up on tutorials development.&lt;br /&gt;
* 7 new [https://github.com/ncsu-geoforall-lab/tutorials tutorials] on time series:&lt;br /&gt;
** Management and visualization&lt;br /&gt;
** Aggregation&lt;br /&gt;
** Algebra&lt;br /&gt;
** Accumulation&lt;br /&gt;
** Gap filling&lt;br /&gt;
** Querying raster time series with vectors&lt;br /&gt;
** Subset, import and export&lt;br /&gt;
* Tutorial on how to set up Jupyter and GRASS in Windows&lt;br /&gt;
* New [https://github.com/OSGeo/grass-tutorials repository] under OSGeo organization to host the upcoming quarto based website for GRASS tutorials&lt;br /&gt;
* PR template created - [https://github.com/OSGeo/grass/community GitHub Community Standards] all checked complete&lt;br /&gt;
&lt;br /&gt;
=== Communication and outreach ===&lt;br /&gt;
&lt;br /&gt;
* Creation of 4 news posts in the [https://grass.osgeo.org/news/ GRASS website]&lt;br /&gt;
* Social media:&lt;br /&gt;
** [https://twitter.com/GRASSGIS Twitter]: 25 new posts&lt;br /&gt;
** [https://fosstodon.org/@grassgis Fosstodon]: 25 new posts&lt;br /&gt;
* New GRASS GIS LinkedIn page at: [https://www.linkedin.com/company/grass-gis/ https://www.linkedin.com/company/grass-gis/]&lt;br /&gt;
* Requested transition of [https://discourse.osgeo.org/t/osgeo-3255-migrate-grass-dev-mailing-list-to-discourse/49796 grass-dev mailing list to discourse.osgeo.org]&lt;br /&gt;
* Set up GRASS GIS swag shop on Redbubble&lt;br /&gt;
&lt;br /&gt;
=== Governance ===&lt;br /&gt;
* [https://grass.osgeo.org/about/roadmap/ Roadmap] and [https://grass.osgeo.org/about/governance/ Governance] pages added to the website &lt;br /&gt;
* PSC elections:&lt;br /&gt;
** Documented criteria to define people entitled to vote&lt;br /&gt;
** Documented procedure to compile the list of voters&lt;br /&gt;
** Elections [https://www.mail-archive.com/grass-user@lists.osgeo.org/msg41102.html announcement] sent out&lt;br /&gt;
&lt;br /&gt;
== Y2 1st quarter report (09/24 - 11/24) ==&lt;br /&gt;
&lt;br /&gt;
=== Presentations and Workshops ===&lt;br /&gt;
FOSS4GNA 2024 in St. Louis, Missouri:&lt;br /&gt;
&lt;br /&gt;
* Vaclav Petras. State of GRASS GIS. FOSS4G NA St. Louis, September 9-11, 2024 ([https://wenzeslaus.github.io/grass-gis-talks/foss4gna2024.html slides])&lt;br /&gt;
* Huidae Cho. Evolution of GRASS GIS. FOSS4G NA St. Louis, September 9-11, 2024 ([https://htmlpreview.github.io/?https://github.com/HuidaeCho/grass-talks/blob/main/foss4g-na-2024.html slides])&lt;br /&gt;
* Huidae Cho. An OpenMP Algorithm for Delineating a Large Number of Watersheds. FOSS4G NA St. Louis, September 9-11, 2024&lt;br /&gt;
* Corey T. White. Developing Web-Applications with GRASS GIS. Workshop. FOSS4G NA St. Louis, September 9-11, 2024&lt;br /&gt;
* Corey T. White. GRASS GIS as a Geospatial Computational Engine. FOSS4G NA St. Louis, September 9-11, 2024&lt;br /&gt;
&lt;br /&gt;
=== Communication and outreach ===&lt;br /&gt;
* Transition of grass-dev mailing list to [https://discourse.osgeo.org/c/grass/developer/61 discourse.osgeo.org] finished.&lt;br /&gt;
&lt;br /&gt;
=== Code Quality and Security ===&lt;br /&gt;
* Python code quality issues addressed in more than 70 PRs, reducing the list of per-file ignores by more than 60%.&lt;br /&gt;
* Code quality and security improvements in C and C++ code are in more than 80 PRs.&lt;br /&gt;
* In total, these changes improve more than 60 tools, specifically:&lt;br /&gt;
** raster: r.water.outlet, r.watershed, r.mfilter, r.to.vect, r.in.poly, r.carve, r.thin, r.fill.dir, r.clump, r.in.gridatb, r.out.png, r.in.wms, r.viewshed, r.fillnulls, r.in.srtm, r.in.pdal, r.in.xyz&lt;br /&gt;
** vector: v.out.dxf, v.build.polylines, v.external.out, v.net, v.univar, v.in.ascii, v.delaunay, v.hull , v.net.timetable, v.kernel, v.to.db, v.colors, v.rectify, v.reclass, v.generalize, v.transform, v.vol.rst, v.cluster, v.to.3d, v.out.ogr, v.external, v.in.dwg, v.report, v.unpack, v.import&lt;br /&gt;
** imagery: i.topo.corr, i.attcorr, i.ortho.photo, i.segment, i.rectify, i.topo.corr, i.panshrapen&lt;br /&gt;
** display: d.vect, d.mon, d.frame, d.rast.edit&lt;br /&gt;
** other: GUI, grass main executable, g.proj, g.version, db.out.ogr, ps.map, r3.in.v5d, r3.in.v5d, lib/vector/Vlib, lib/ogsf, lib/gis, lib/db, lib/lidar, lib/linkm, grass.temporal, grass.script&lt;br /&gt;
&lt;br /&gt;
Changes by author: [https://github.com/OSGeo/grass/pulls?q=author%3AShubhamDesai+is%3Apr+is%3Aclosed+merged%3A2024-09-01..2024-11-30+base%3Amain+sort%3Aupdated-desc+ ShubhamDesai], [https://github.com/OSGeo/grass/pulls?q=author%3Aymdatta+is%3Apr+is%3Aclosed+merged%3A2024-09-01..2024-11-30+base%3Amain+sort%3Aupdated-desc+ ymdatta],&lt;br /&gt;
[https://github.com/OSGeo/grass/pulls?q=author%3Aarohanajit+is%3Apr+is%3Aclosed+merged%3A2024-09-01..2024-11-30+base%3Amain+sort%3Aupdated-desc+ Arohan Ajit]&lt;br /&gt;
&lt;br /&gt;
Several reviewers, not supported by the NSF POSE project, played crucial role not only in reviewing, but also in determining the right fixes. The NSF POSE project personnel focused on fixing issues reported by Flake8, Coverity Scan, and Cppcheck, however also Ruff and Pylint are utilized in GRASS GIS thanks to other contributors.&lt;br /&gt;
&lt;br /&gt;
A configure file for Cppcheck is now included in the repository highlighting the level of compliance and aiding contributors in local analysis and subsequent implementation of fixes ([https://github.com/OSGeo/grass/pull/4766 PR #4766]).&lt;br /&gt;
&lt;br /&gt;
Finally, we created a new public GitHub project in the OSGeo GitHub organization for [https://github.com/orgs/OSGeo/projects/11 GRASS GIS Security] to track and communicate progress on the security front with 147 resolved items and 8 in-progress items at the time of writing.&lt;br /&gt;
&lt;br /&gt;
=== Documentation, both Internal and External ===&lt;br /&gt;
&lt;br /&gt;
* To improve indexing of GRASS GIS manual pages, we revised our current sitemap ([https://github.com/OSGeo/grass-website/pull/482 grass-website/pull/482)]), added a updated sitemap to Google Search Console and Bing, fixed robots.txt, and triggered and re-triggered the indexing many times to make Google consume the new content. While before, some searches gave outdated documentation, experimental websites, or unofficial resources only, now the official website and stable documentation is returned as the first search result.&lt;br /&gt;
* All older manuals, including version 6.4 and 6.5, are now available (restored) so that search engines can consume them and old links and indices continue to work. They now newly contain the canonical URLs so that search engines understand the structure and don't penalize duplicate content.&lt;br /&gt;
* On OSGeo server which hosts GRASS GIS website, we replaced some of the redirects in Apache by local soft links so that URL like grass.osgeo.org/grass-stable stay as is for both humans and machines and don't redirect to specific version (easier to copy-paste from a browser URL bar and easier for search engine to understand what is the page to show).&lt;br /&gt;
* We implemented the necessary changes into the cronjobs and did overall updates to enable build of the server-side documentation jobs locally for testing purposes. The most relevant PRs are:&lt;br /&gt;
** [https://github.com/OSGeo/grass-addons/pull/1241 Inject canonical URLs into older manual pages (SEO) #1241]&lt;br /&gt;
** [https://github.com/OSGeo/grass-addons/pull/1173 Fix red new version box injection and script documentation #1173]&lt;br /&gt;
** [https://github.com/OSGeo/grass-addons/pull/1215 Expand script to run stand-alone #1215]&lt;br /&gt;
* We advanced the [https://github.com/orgs/OSGeo/projects/9 GRASS Markdown Documentation project].&lt;br /&gt;
* New and better wording for intro to imagery tools: [https://github.com/OSGeo/grass/pull/4536 Add intro text to imageryintro.html #4536]&lt;br /&gt;
* List of GRASS GIS profiles on different websites is now in an internal PSC document.&lt;br /&gt;
* Documentation of all the internal infrastructure, especially that of grass.osgeo.org server, is now in an internal PSC document.&lt;br /&gt;
* We painstakingly identified and described all maintenance procedures performed by Markus Neteler in OSGeo SAC capacity for GRASS GIS and as a contributor to GRASS GIS for better work distribution.&lt;br /&gt;
* Most of the work on the documentation was done through a contract with Markus Neteler with additional help from Martin Landa for the transition to Markdown.&lt;br /&gt;
&lt;br /&gt;
=== Mentoring Activities ===&lt;br /&gt;
Mentors were actively working with 3 mentees.&lt;br /&gt;
&lt;br /&gt;
=== Event Planning and Organizing ===&lt;br /&gt;
&lt;br /&gt;
[[File:Raleigh_2016_11_05.jpg|500px|thumb|right|alt=Rooms, tables and large open space|Smaller space utilized in the past for a local GRASS GIS meetup in Hunt library at NC State University campus (photos are from a [[GRASS GIS Raleigh meetups 2016|2016 meetup]])]]&lt;br /&gt;
&lt;br /&gt;
We are planning and organizing GRASS GIS Developer Summit in Raleigh, NC, USA at North Carolina State University.&lt;br /&gt;
&lt;br /&gt;
* High-demand spaces reserved at NCSU (some since May 2024, other since September 2024).&lt;br /&gt;
* A [https://discourse.osgeo.org/t/grass-dev-save-the-date-grass-developer-summit-raleigh-2025/85540 save-the-date post for grass-dev], interest form, and first round of additional invites. (Date established earlier in spring 2024 by NSF POSE team after a survey of PSC members and Core Development Team members.)&lt;br /&gt;
* We addressed participant's visa needs based on the responses to the interest form.&lt;br /&gt;
* We formed the initial Organizing Committee formed and rough event agenda created.&lt;br /&gt;
* Page created: [[GRASS Developer Summit Raleigh 2025]].&lt;br /&gt;
&lt;br /&gt;
== Y2 2nd quarter report (12/24 - 02/25) ==&lt;br /&gt;
&lt;br /&gt;
=== Presentations, Workshops, Event Planning ===&lt;br /&gt;
&lt;br /&gt;
[[File:GRASS GIS booth AGU24.jpg|500px|thumb|right|alt=GRASS GIS booth at AGU24|GRASS GIS booth at AGU24, Washington, DC]]&lt;br /&gt;
&lt;br /&gt;
AGU24 Annual Meeting, Washington, DC, USA:&lt;br /&gt;
* GRASS GIS booth in the Exhibit Hall with a banner, new flyers, and a Tangible Landscape setup to demonstrate some of the capabilities of GRASS GIS (Monday afternoon - Thursday morning)&lt;br /&gt;
* GRASS GIS for Advanced Earth Systems Analysis and Modeling (eLightning) by Vaclav Petras&lt;br /&gt;
* Perspectives from an Open Source Geospatial Modeling Platform Maintainer (poster) by Anna Petrasova&lt;br /&gt;
* GRASS GIS Is FAIR: Its Evolution Towards Open Science (poster) by Huidae Cho&lt;br /&gt;
* GRASS GIS as a Platform for Dissemination of Reusable Geocomputational Research (poster) by Vaclav Petras&lt;br /&gt;
&lt;br /&gt;
Beyond the GIS Map: Open Source Tools for Geospatial Research, Workshop at the Institute for Social Science   Research Arizona State University. 11 December 2024  &lt;br /&gt;
* Michael Barton and Eunice Villaseñor Iribe, instructors  &lt;br /&gt;
* Topics  &lt;br /&gt;
** Introduction to GRASS&lt;br /&gt;
** Modeling Terrain in GRASS&lt;br /&gt;
** Modeling Movement in GRASS&lt;br /&gt;
** Remote Sensing With GRASS&lt;br /&gt;
&lt;br /&gt;
Physically-based hydrologic modeling using GRASS GIS r.topmodel, Workshop at New Mexico State University. January 31, 2025, 1pm-5pm.&lt;br /&gt;
* Instructor: Huidae Cho&lt;br /&gt;
* Assistant: Nelson Kandel&lt;br /&gt;
* Participants: 17&lt;br /&gt;
* Topics&lt;br /&gt;
** Introduction to GRASS&lt;br /&gt;
** Hydrologic Modeling Using GRASS&lt;br /&gt;
** Model Calibration and Validation&lt;br /&gt;
&lt;br /&gt;
=== Code Quality and Security ===&lt;br /&gt;
&lt;br /&gt;
Changes by author: [https://github.com/OSGeo/grass/pulls?q=author%3AShubhamDesai+is%3Apr+is%3Aclosed+merged%3A2024-12-01..2025-02-28+base%3Amain+sort%3Aupdated-desc+ ShubhamDesai], [https://github.com/OSGeo/grass/pulls?q=author%3Aarohanajit+is%3Apr+is%3Aclosed+merged%3A2024-12-01..2025-02-28+base%3Amain+sort%3Aupdated-desc+ Arohan Ajit]&lt;br /&gt;
&lt;br /&gt;
=== Tests ===&lt;br /&gt;
&lt;br /&gt;
Changes by author: [https://github.com/OSGeo/grass/pulls?q=author%3AShreshth-Malik+is%3Apr+is%3Aclosed+merged%3A2024-12-01..2025-02-28+base%3Amain+sort%3Aupdated-desc+ Shreshth-Malik], [https://github.com/OSGeo/grass/pulls?q=author%3Ajayneel-shah18+is%3Apr+is%3Aclosed+merged%3A2024-12-01..2025-02-28+base%3Amain+sort%3Aupdated-desc+ jayneel-shah18]&lt;br /&gt;
&lt;br /&gt;
=== Documentation and Tutorials ===&lt;br /&gt;
We finalized and prepared for launch Quarto-based tutorial website editable through GitHub. OSGeo provided a new domain [https://grass-tutorials.osgeo.org/ grass-tutorials.osgeo.org]. Initial set of tutorials were created by Veronica Andreo when she was part of the NSF POSE team (some tutorials will be finalized and released later). Anna Petrasova did the reviews, curation, posts for external tutorials, and transition from list of tutorials at the main website.&lt;br /&gt;
&lt;br /&gt;
We did a major push to create Markdown files in the source code and enable the compilation of documentation for mkdocs. We also configured the mkdocs and revised the Markdown syntax in the files.&lt;br /&gt;
&lt;br /&gt;
=== Communication and outreach ===&lt;br /&gt;
&lt;br /&gt;
Renewed [https://www.youtube.com/@grass-gis Youtube channel @grass-gis] by adding playlists, organizing videos, and updating branding.&lt;br /&gt;
&lt;br /&gt;
=== Governance ===&lt;br /&gt;
Submitted application for GRASS GIS to join NumFocus.&lt;br /&gt;
&lt;br /&gt;
=== Event Planning and Organizing ===&lt;br /&gt;
&lt;br /&gt;
* Created draft of schedule, agenda, and budget.&lt;br /&gt;
* Identified participants eligible for travel support.&lt;br /&gt;
** While the meeting is open to anyone, the NSF-funded travel support is based on priorities set in the NSF POSE project for the Developer Summit.&lt;br /&gt;
** Specifically, we are inviting individuals identified based on the following criteria (in this order; moving to the next group if there is still available places):&lt;br /&gt;
*** Top 20 contributors to OSGeo/grass in the last two years (2023-2024), but not a bot or NSF POSE personnel (contributing only within NSF POSE). (After exclusions, this is less than 10 people.) &lt;br /&gt;
*** PSC member before or after 2024 elections, but not NSF POSE personnel at the time of the meeting. (With PSC members currently contributing code as well, this is only a couple of people after exclusions.)&lt;br /&gt;
*** Active participant in one of the mentoring programs. (Participant demonstrated the activity by attending meetings, reporting progress, or submitting code for feedback or review.)&lt;br /&gt;
*** Contributors to connections and interfaces prioritized in or during the NSF POSE project:&lt;br /&gt;
**** R packages (2 slots for active contributors or maintainers determined by previously established contacts in the given community through their activity on a relevant code base.)&lt;br /&gt;
**** GRASS GIS code in QGIS (2 slots for active contributors or maintainers determined by previously established contacts in the given community through their activity on a relevant code base.)&lt;br /&gt;
*** Contributors in &amp;quot;write&amp;quot; teams for OSGeo/grass, OSGeo/grass-addons, OSGeo/grass-website, and OSGeo/grass-tutorials repositories. (Almost all fall into one of the above groups.)&lt;br /&gt;
*** Contributors to closely related projects, specifically actinia, the GRASS GDAL driver, and the GRASS GeoServer datastore.&lt;br /&gt;
* Sent individual invites to participants eligible for travel support. (ongoing)&lt;br /&gt;
&lt;br /&gt;
== Y2 3rd quarter report (03/25 - 05/25) ==&lt;br /&gt;
&lt;br /&gt;
=== Governance ===&lt;br /&gt;
* GRASS accepted NumFOCUS (more steps to make it official)&lt;br /&gt;
&lt;br /&gt;
=== Presentations, Workshops, Event Planning ===  &lt;br /&gt;
* Beyond the GIS Map: Open Source Tools for Geospatial Research, Workshop at the Institute for Social Science   Research Arizona State University. 25 March 2025 &lt;br /&gt;
** Michael Barton and Eunice Villaseñor Iribe, instructors  &lt;br /&gt;
** Topics: Introduction, Modeling Terrain, Modeling Movement, Remote Sensing with GRASS&lt;br /&gt;
* IALE-NA: [https://github.com/ncsu-geoforall-lab/iale-2025-workshop-tl Building Geospatial Models in GRASS: From Python Workflows to Tangible Landscape], April 15th, hosted by the Center for Geospatial Analytics&lt;br /&gt;
** Anna Petrasova and Caitlin Haedrich&lt;br /&gt;
** 20 participants&lt;br /&gt;
&lt;br /&gt;
* [[GRASS_Developer_Summit_Raleigh_2025]] (see the page for details)&lt;br /&gt;
&lt;br /&gt;
== Y2 4th quarter report (06/25 - 08/25) ==&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
;Mentoring program (fall 2023 - summer 2025)&lt;br /&gt;
:Free developer-oriented mentoring program to support researchers and software developers to integrate GRASS GIS into their workflows and contribute to GRASS GIS.&lt;br /&gt;
&lt;br /&gt;
; Streamline contributor onboarding (spring 2024 - fall 2024)&lt;br /&gt;
: Includes updating and creating guidelines for code and non-code contributions.&lt;br /&gt;
&lt;br /&gt;
; Streamline user onboarding (spring 2024 - fall 2024)&lt;br /&gt;
: Includes modernizing tool documentation, developing tutorials.&lt;br /&gt;
: Creating sample datasets for localized tutorials.&lt;br /&gt;
: Developing online training materials for big data processing.&lt;br /&gt;
&lt;br /&gt;
; Training sessions (fall 2023 - summer 2025)&lt;br /&gt;
: Local training sessions (at universities and conferences) introducing GRASS GIS to students and researchers.&lt;br /&gt;
: Training program for big data processing delivered online.&lt;br /&gt;
&lt;br /&gt;
; Engaging industry partners and user (January 2024 - August 2025)&lt;br /&gt;
: Identify and engage industry partners to gather feedback and to start industry partnership program.&lt;br /&gt;
&lt;br /&gt;
; Conferences&lt;br /&gt;
: Presence (talks, workshops, networking) at FOSS4GNA 2023, FOSS4G Asia 2023, AGU 2023, CSDMD 2024, FOSS4G Europe 2024, FOSS4G 2024, AGU 2024&lt;br /&gt;
&lt;br /&gt;
; Community sprints&lt;br /&gt;
: Virtual or in-person participation in OSGeo community sprints, GRASS GIS community sprints&lt;br /&gt;
&lt;br /&gt;
; Software distribution (January 2024 - May 2025)&lt;br /&gt;
: Transition to CMake build system&lt;br /&gt;
: Develop conda package&lt;br /&gt;
&lt;br /&gt;
;Simplify maintenance of GRASS integrations with QGIS and R (2024-2025)&lt;br /&gt;
: Virtual meetings with QGIS and R developers and GRASS GIS developers (spring 2024).&lt;br /&gt;
: Identify and implement improvements to the integration.&lt;br /&gt;
&lt;br /&gt;
;Improve code quality, security, and quality assurance &lt;br /&gt;
: Code quality (Flake8, Pylint, Cppcheck), first half of 2024.&lt;br /&gt;
: Security (CodeQL), second half of 2024.&lt;br /&gt;
: Quality assurance (better pytest integration), second half of 2024.&lt;br /&gt;
&lt;br /&gt;
; In-person developer summit (May 19 - May 24, 2025)&lt;br /&gt;
: Hosted by NC State University, Raleigh, NC, USA.&lt;br /&gt;
: Identify additional challenges for adoption of GRASS GIS as geoprocessing engine.&lt;br /&gt;
: Long-term planning beyond the POSE project.&lt;br /&gt;
&lt;br /&gt;
== Acknowledgements ==&lt;br /&gt;
&lt;br /&gt;
The funding is provided by the U.S. National Science Foundation, award 2303651.&lt;br /&gt;
[[File:NSF Official logo.png|frameless|left]]&lt;br /&gt;
&lt;br /&gt;
[[Category: Community]]&lt;br /&gt;
[[Category: Conferences‏‎]]&lt;br /&gt;
[[Category: 2023]]&lt;br /&gt;
[[Category: 2024]]&lt;br /&gt;
[[Category: 2025]]&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=NSF_POSE_Project_2023-2025_Timeline&amp;diff=28486</id>
		<title>NSF POSE Project 2023-2025 Timeline</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=NSF_POSE_Project_2023-2025_Timeline&amp;diff=28486"/>
		<updated>2025-06-05T19:52:03Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:NSF_grant_announcement.png|500px|right|none]]&lt;br /&gt;
&lt;br /&gt;
To inform GRASS community about the work done as part of the award [https://www.nsf.gov/awardsearch/showAward?AWD_ID=2303651 2303651] from the U.S. National Science Foundation (NSF) to enhance GRASS ecosystem, the following report summarizes the progress and outcomes in quarterly reports and presents the roadmap for the project.&lt;br /&gt;
&lt;br /&gt;
The two main goals of the project are: 1) to facilitate the adoption of GRASS GIS as a key geoprocessing engine by a growing number of researchers and geospatial practitioners in academia, governments, and industry; and 2) to expand and diversify the developer community, especially through supporting next-generation scientists to gain expertise to maintain and innovate GRASS software.&lt;br /&gt;
&lt;br /&gt;
Principal investigators and senior personnel:&lt;br /&gt;
&lt;br /&gt;
* Helena Mitasova, North Carolina State University (Principal Investigator)&lt;br /&gt;
* Vaclav Petras, North Carolina State University (Co-Principal Investigator)&lt;br /&gt;
* Anna Petrasova, North Carolina State University (Co-Principal Investigator)&lt;br /&gt;
* C Michael Barton, Arizona State University (Co-Principal Investigator)&lt;br /&gt;
* Huidae Cho, New Mexico State University (Co-Principal Investigator)&lt;br /&gt;
* Giuseppe Amatulli, Yale (Senior Personnel)&lt;br /&gt;
&lt;br /&gt;
Other personnel who is joining for the execution of the grant is listed below when relevant.&lt;br /&gt;
&lt;br /&gt;
== Y1 1st quarter report (09/23 - 11/23) ==&lt;br /&gt;
=== Project Announcements and Communication ===&lt;br /&gt;
* Announcement on [https://grass.osgeo.org/news/2023_09_06_nsf_grant_awarded/ GRASS website].&lt;br /&gt;
* Info session to explain the POSE Project ([https://lists.osgeo.org/pipermail/grass-user/2023-September/083423.html Announcement on GRASS user mailing list], 2 sessions for different time zones).&lt;br /&gt;
* Collected statistics from GitHub, X and others and set up automated collection for GitHub.&lt;br /&gt;
&lt;br /&gt;
=== Conference Presentations ===&lt;br /&gt;
* [https://petrasovaa.github.io/FUTURES-CONUS-talk/foss4gNA2023.html#/ Parallelization Tips for Geoprocessing with GRASS GIS] by Anna Petrasova at FOSS4GNA, October 2023.&lt;br /&gt;
* [https://wenzeslaus.github.io/grass-gis-talks/foss4gna2023.html#/ GRASS GIS: Not What You Think] by Vaclav Petras at FOSS4GNA, October 2023. &lt;br /&gt;
* [https://docs.google.com/presentation/d/1D-Fh1cLSPINyeXdVaxlakrE9IjB8kK5lIw3D12yX1bk Computational Notebooks for Reproducible Geospatial Computation in Research and Education] by Caitlin Haedrich at FOSS4GNA, October 2023.&lt;br /&gt;
* [https://github.com/HuidaeCho/grass-gis-talk-foss4g-asia-2023 State of GRASS GIS: 40 Years Strong and Counting] by Huidae Cho at FOSS4G Asia, November 2023.&lt;br /&gt;
&lt;br /&gt;
=== Training and Workshops ===&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/grass-gis-workshop-foss4gna-2023 Unlock the power of GRASS GIS] by Anna Petrasova and Caitlin Haedrich at FOSS4GNA, October 2023. &lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/develop-tools-with-grass-foss4gna-2023 Develop Geospatial Workflows and Custom Tools with GRASS GIS] by Vaclav Petras and Corey White at FOSS4GNA, October 2023.&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/grass-workshop-gis-week-2023 Big Data Computing with GRASS GIS] by Anna Petrasova and Vaclav Petras at NC State GIS week, November 2023.&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/grass-gis-on-hpc-henry2/blob/8564c72e9b8929c9ef4d25ada1ef36b569991221/docs/tutorial.md GIS Week Workshop: High Performance Computing for Geospatial Analysis (GRASS GIS part)] by Vaclav Petras (main lecture lead by Andrew Petersen from NCSU OIT) at NC State GIS week, November 2023.&lt;br /&gt;
* [https://spatial-ecology.net/docs/build/html/COURSESAROUNDTHEWORLD/course_geocomp_ml_04-05_2024.html Geocomputation and Machine Learning for Environmental Applications] training course [https://spatial-ecology.net/course-geocomputation-machine-learning-for-environmental-applications-intermediate-level-2024/ announced]. GRASS GIS part led by Giuseppe Amatulli is free of charge thanks to the support by NSF.&lt;br /&gt;
&lt;br /&gt;
=== Community Sprint Participation ===&lt;br /&gt;
Anna Petrasova and Vaclav Petras remotely participated in [https://wiki.osgeo.org/wiki/OSGeo_Community_Sprint_2023 OSGeo 2023 code sprint] doing PR reviews and maintenance of GRASS GIS code, documentation, and website.&lt;br /&gt;
&lt;br /&gt;
=== Mentoring Program ===&lt;br /&gt;
* Started a development-oriented mentoring program [https://grass.osgeo.org/news/2023_10_11_mentoring_program_announced/ announced] with details available on a [https://grasswiki.osgeo.org/wiki/Mentoring_Program wiki page].&lt;br /&gt;
* Program now has 4 participants (from 12 responses) supported by email and video calls.&lt;br /&gt;
* Program already resulted in improvements to GRASS GIS core and addons:&lt;br /&gt;
** merged PR: [https://github.com/OSGeo/grass/pull/3206 grass.script: ensure memmap content is flushed before writing to a raster]&lt;br /&gt;
** radar addon toolset PR: [https://github.com/OSGeo/grass-addons/pull/949 Add i.saocom and i.sar toolsets]&lt;br /&gt;
Mentoring Program is a new effort started and so-far performed only by the POSE team.&lt;br /&gt;
&lt;br /&gt;
=== Student Grants Program ===&lt;br /&gt;
Student grants [https://grass.osgeo.org/news/2023_11_09_student_grants_announced/ announced] with topics at a [https://grasswiki.osgeo.org/wiki/GRASS_GIS_Student_Grants wiki page]. Student Grants Program is an existing effort which the POSE team participates in.&lt;br /&gt;
&lt;br /&gt;
=== Working Groups ===&lt;br /&gt;
&lt;br /&gt;
Four [https://grasswiki.osgeo.org/wiki/Working_Groups working groups] created (scope, wiki page, coordinator, and a list of people for each).&lt;br /&gt;
&lt;br /&gt;
=== Citations ===&lt;br /&gt;
&lt;br /&gt;
* GRASS GIS Google Scholar [https://scholar.google.com/citations?user=gJ0ZB0cAAAAJ account] updated with more complete records.&lt;br /&gt;
* A [https://forms.gle/cDEvMJu7d6nvxLKn9 form] was created to collect new and missing records.&lt;br /&gt;
* Profile link added to GRASS website [https://grass.osgeo.org/contribute/ Contribute] and [https://grass.osgeo.org/about/citation/ Citation] page.&lt;br /&gt;
&lt;br /&gt;
== Y1 2nd quarter report (12/23 - 02/24) ==&lt;br /&gt;
=== NSF I-Corps program ===&lt;br /&gt;
Corey White, Vaclav Petras, and Anna Petrasova participated in a 4-week long intensive mandatory training that draws on the methods, customer discovery, and curriculum of the [https://new.nsf.gov/funding/initiatives/i-corps NSF Innovation Corps] and applies them to open-source projects.&lt;br /&gt;
&lt;br /&gt;
The program included conducting 70+ 30-minute interviews with both GRASS users and non-users to better shape the future path of GRASS GIS and the POSE project. So far, the interviews focused on educators, companies, researchers, influencers and it focused more on non-users than users.&lt;br /&gt;
&lt;br /&gt;
Next steps, include processing the collected qualitative data, developing possible future directions for sustainability of the project, discussing these with the Project Steering Committee, the core team of developers, and the broader community.&lt;br /&gt;
&lt;br /&gt;
=== Mentoring Program ===&lt;br /&gt;
The development oriented [https://grass.osgeo.org/news/2023_10_11_mentoring_program_announced/ mentoring program] welcomed 5 new participants from various institutions including universities, USGS, US Army Corps of Engineers, and local municipalities. The discussed topics covered developing workflows for topography and network analysis, environmental modeling, and geophysics. Participants were supported by email and video calls.&lt;br /&gt;
&lt;br /&gt;
=== Conference Presentations ===&lt;br /&gt;
* [https://agu.confex.com/agu/fm23/meetingapp.cgi/Paper/1342418 Modeling vegetated stream buffer impacts on water depth and discharge at the watershed scale with GRASS GIS and Jupyter Notebooks] by Caitlin Haedrich at AGU, December 2023.&lt;br /&gt;
* [https://agu.confex.com/agu/fm23/meetingapp.cgi/Paper/1420596 OpenPlains: A Web-Based Platform to Democratize Geospatial Participatory Modeling on the Cloud] by Corey White at AGU, December 2023.&lt;br /&gt;
&lt;br /&gt;
=== Presentations and Workshops ===&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/grass-gis-workshop-vanderbilt-2024 Intro to GRASS GIS] by Vaclav Petras and Anna Petrasova was remotely delivered to geographers at Vanderbilt University in February 2024. The  workshop was developed in Jupyter Lab and run using [https://wholetale.org WholeTale] online platform.&lt;br /&gt;
* [https://github.com/tomorrownow/intro-to-geoprocessing-workshop Introduction to GRASS GIS Geospatial Processing] by Corey White at [https://smathhacks.ncssm.edu/ SMathHacks hackathon], March 2nd (supported also by Veronica Andreo and Vaclav Petras). SMathHacks is the annual 36-hour hackathon hosted by the NC School of Science and Math, open to all North Carolina students. Students collaborate to build innovative software projects, explore new technologies, and have fun along the way. The workshop was delivered in person with students using [https://colab.research.google.com/ Google Colab].&lt;br /&gt;
&lt;br /&gt;
=== Student Grant Program ===&lt;br /&gt;
Linda Karlovska participates in the [https://grasswiki.osgeo.org/wiki/GRASS_GIS_Student_Grants Student Grant program] with her project [https://trac.osgeo.org/grass/wiki/wxGUIDevelopment/EasyCommandHistoryNavigation Easy command history navigation through the History browser panel] mentored by Anna Petrasova (POSE team) and Martin Landa (FCE CTU). Student Grants Program is an existing effort which the POSE team participates in by mentoring.&lt;br /&gt;
&lt;br /&gt;
=== Code Security ===&lt;br /&gt;
Vaclav Petras mentors four students who create code security improvements in their NCSU class ''CSC 472: Cybersecurity Practicum''. So far, the students created two PRs which were successfully merged: &lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/3444 grass.script: Change insecure mktemp to NamedTemporaryFile #3444]&lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/3451 utils: fixed shell vulnerability in mkrest.py #3451]&lt;br /&gt;
&lt;br /&gt;
Two other PRs are open and more work is underway to do first steps for new approach to a more secure code.&lt;br /&gt;
&lt;br /&gt;
=== Localized Basic Datasets ===&lt;br /&gt;
* NCSU and ASU teams worked on localized versions of GRASS basic data set following the [https://grass.osgeo.org/sampledata/north_carolina/nc_basic_spm_grass7.zip North Carolina basic data set example], preparing Flagstaff, Arizona and Nepal draft version with basic layers&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Y1 3rd quarter report (03/24 - 05/24) ==&lt;br /&gt;
&lt;br /&gt;
=== Mentoring Activities ===&lt;br /&gt;
The mentoring program form received 2 new responses and mentors were actively working with 3 mentees.&lt;br /&gt;
It resulted in fixes in [https://github.com/OSGeo/grass-addons/pull/1042 v.transects] and [https://github.com/OSGeo/grass-addons/pull/1077 r.accumulate].&lt;br /&gt;
&lt;br /&gt;
Linda Kladivova finished her project developing [https://trac.osgeo.org/grass/wiki/wxGUIDevelopment/EasyCommandHistoryNavigation History browser] in the GRASS GUI as part of the GRASS Student Grant Program. Mentor's time was covered by POSE.&lt;br /&gt;
&lt;br /&gt;
GRASS GIS has [https://grass.osgeo.org/news/2024_05_27_gsoc_2024_students/ 3 students this year for Google Summer of Code]. Time spent managing GSoC for GRASS GIS was covered by POSE.&lt;br /&gt;
&lt;br /&gt;
The topics covered by GSoC projects are:&lt;br /&gt;
* [https://grasswiki.osgeo.org/wiki/GRASS_GSoC_2024_EODAG_Support Add EODAG support to GRASS GIS]&lt;br /&gt;
* [https://grasswiki.osgeo.org/wiki/GRASS_GSoC_2024_Improve_user_experience_in_Jupyter_Notebooks Improve GRASS user experience in Jupyter Notebook]&lt;br /&gt;
* [https://grasswiki.osgeo.org/wiki/GRASS_GSoC_2024_Add_JSON_output Add JSON output to different GRASS tools in C]&lt;br /&gt;
&lt;br /&gt;
=== Presentations, Workshops, Event Planning ===&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/tngic-2024 GRASS 101: From GUI Clicks to Writing Scripts (TNGIC 2024)] by Veronica Andreo and Caitlin Haedrich&lt;br /&gt;
* [https://github.com/ncsu-geoforall-lab/csdms-grass-2024 Coastal evolution analysis and inundation modeling with GRASS GIS (CSDMS Workshop 2024)] by Caitlin Haedrich and Pratikshya Regmi, see also [https://cnr.ncsu.edu/geospatial/news/2024/06/03/students-teach-grass-gis-for-coastal-hazard-analysis/ blog post with images]&lt;br /&gt;
&lt;br /&gt;
* Organization of [[GRASS Community Meeting Prague 2024]] and budget planning by Vaclav Petras&lt;br /&gt;
&lt;br /&gt;
=== CMake transition ===&lt;br /&gt;
Ongoing work on [https://github.com/OSGeo/grass/pull/3621 CMake compilation] was partially covered by POSE.&lt;br /&gt;
&lt;br /&gt;
=== Code Quality and Security ===&lt;br /&gt;
&lt;br /&gt;
Code quality improvements in Python code:&lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/3541 PR addressing Flake8 E501] (long lines in 158 files not fixable by automated tools)&lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/3535 PR addressing Flake8 E401] (unused imports)&lt;br /&gt;
&lt;br /&gt;
Vaclav Petras mentored a team of four students who create code security improvements in their NCSU class ''CSC 472: Cybersecurity Practicum''. The team created 12 PRs which were successfully merged, 7 additional experimental PRs (not merged) and 2 PRs which are still open at this time. Specifically, the team achieved the following:&lt;br /&gt;
&lt;br /&gt;
* With the involvement and help from the other contributors, the team introduced Bandit and Coverity Scan as additional code scanning tools for Python and C, respectively.&lt;br /&gt;
* The team analyzed issues reported CodeQL, Bandit, and Coverity Scan and reported on relevance of different issues to the project (report privately shared with the GRASS Development Team).&lt;br /&gt;
* Vulnerability Triage Guide (also privately shared with the GRASS Development Team).&lt;br /&gt;
* The team also developed a [https://github.com/OSGeo/grass/security/policy security policy] for the project.&lt;br /&gt;
* The vulnerability reporting and security advisories were enabled based on the team recommendations.&lt;br /&gt;
* The team fixed several specific security issues in the code:&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3469  packaging: Use subprocess instead of os.popen for change log creation #3469] (merged)&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3549  lib raster: fixed security vulnerabilities and weaknesses #3549] (merged)&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3451  utils: fixed shell vulnerability in mkrest.py #3451] (merged)&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3444  grass.script: Change insecure mktemp to NamedTemporaryFile #3444] (merged)&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3551  lib/psdriver: Fix issues with wrong type of arguments to printf #3551] (PR open)&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3452 g.region/r.to.rast3elev: fixed scanf error to recognize EOF as a possible return value #3452] (PR open)&lt;br /&gt;
&lt;br /&gt;
=== Documentation ===&lt;br /&gt;
* Documentation and Education Working Group met and planned the development of new tutorials. Veronica Andreo met other GRASS developers and contributors to coordinate further tutorials development.&lt;br /&gt;
* Development of new [https://github.com/ncsu-geoforall-lab/tutorials tutorials] in progress, topics include:&lt;br /&gt;
** Getting started with GRASS GIS&lt;br /&gt;
** GRASS GIS in Google Colab&lt;br /&gt;
** GRASS GIS and Python&lt;br /&gt;
** GRASS GIS and R&lt;br /&gt;
** GRASS R and Python comparison&lt;br /&gt;
** Making plots in GRASS GIS&lt;br /&gt;
* New [https://github.com/OSGeo/grass/blob/main/doc/development/style_guide.md GRASS Programming Style Guide]&lt;br /&gt;
* [https://github.com/petrasovaa/cookiecutter-grass-addon New addon template powered by Cookiecutter]&lt;br /&gt;
* Analysis of options names and functionality in plotting tools:&lt;br /&gt;
** [https://github.com/OSGeo/grass-addons/issues/1071 Addons for plotting: Standardize parameters and flags]&lt;br /&gt;
&lt;br /&gt;
=== Communication and outreach ===&lt;br /&gt;
&lt;br /&gt;
* Creation of 4 news post in the [https://grass.osgeo.org/news/ GRASS website]&lt;br /&gt;
* Social media:&lt;br /&gt;
** [https://twitter.com/GRASSGIS Twitter]: 9 new posts/threads&lt;br /&gt;
** [https://fosstodon.org/@grassgis Fosstodon]: 9 new posts/threads&lt;br /&gt;
&lt;br /&gt;
=== Other sustainability activities ===&lt;br /&gt;
* [https://github.com/OSGeo/grass/blob/main/CODE_OF_CONDUCT.md Code of Conduct added to the main repository]&lt;br /&gt;
* [https://github.com/OSGeo/grass/blob/main/.github/ISSUE_TEMPLATE/bug_report.md revised Issue template]&lt;br /&gt;
* New [https://github.com/OSGeo/grass/pull/3673 RFC for a Release Policy]&lt;br /&gt;
* Revised [https://github.com/OSGeo/grass/pull/2815 RFC for Release Procedure]&lt;br /&gt;
* WIP: GRASS GIS Roadmap&lt;br /&gt;
* [https://github.com/OSGeo/grass-website/issues/414 GRASS website: ongoing restructuring]&lt;br /&gt;
* [[PSC]] page moved from trac wiki to media wiki&lt;br /&gt;
&lt;br /&gt;
== Y1 4th quarter report (06/24 - 08/24) ==&lt;br /&gt;
&lt;br /&gt;
=== Mentoring Activities ===&lt;br /&gt;
The mentoring program form received 3 new responses and mentors were actively working with 3 mentees.&lt;br /&gt;
Results include parallelization of r.texture, r.horizon, improved grass.benchmarking library and a new tutorial on lidar data.&lt;br /&gt;
&lt;br /&gt;
GSoC successfully completed their projects:&lt;br /&gt;
* [https://grasswiki.osgeo.org/wiki/GRASS_GSoC_2024_EODAG_Support Add EODAG support to GRASS GIS]&lt;br /&gt;
* [https://grasswiki.osgeo.org/wiki/GRASS_GSoC_2024_Improve_user_experience_in_Jupyter_Notebooks Improve GRASS user experience in Jupyter Notebook]&lt;br /&gt;
* [https://grasswiki.osgeo.org/wiki/GRASS_GSoC_2024_Add_JSON_output Add JSON output to different GRASS tools in C]&lt;br /&gt;
&lt;br /&gt;
Time spent by mentoring was covered by NSF.&lt;br /&gt;
&lt;br /&gt;
=== Presentations, Workshops, Event Planning ===&lt;br /&gt;
&lt;br /&gt;
* [https://veroandreo.github.io/grass_foss4geu_2024/ Let's combine GRASS, Python and R: Satellite time series data for species distribution modeling]. Workshop by Veronica Andreo. FOSS4G Europe 2024, Tartu.&lt;br /&gt;
* [https://veroandreo.github.io/grass-gis-talks/foss4gEU2024.html#/ Status of GRASS GIS project]. Talk by Veronica Andreo. FOSS4G Europe 2024, Tartu.&lt;br /&gt;
* [https://veroandreo.github.io/grass-gis-talks/useR2024.html#/ Boost Spatial Data Science Workflows with GRASS GIS and R]. Talk  by Veronica Andreo. useR Conference 2024, Salzburg.&lt;br /&gt;
* [https://ncsu-geoforall-lab.github.io/usdoi-webinar/notebooks/grass_jupyter.html Geoprocessing with GRASS GIS and Jupyter Notebooks]. Webinar by Corey White. U.S. DOI, August 2024, NCSU.&lt;br /&gt;
* [[GRASS Community Meeting Prague 2024]]&lt;br /&gt;
&lt;br /&gt;
* [https://spatial-ecology.net/docs/build/html/COURSESAROUNDTHEWORLD/course_GEO-OPEN-HACK-2024_06_2024.html GEO-OPEN-HACK-2024: Big Geospatial Data Hackathon with Open Infrastructure and Tools]  training course delivered ([https://iiasa.ac.at/events/jun-2024/geo-open-hack-2024-big-geospatial-data-hackathon-with-open-infrastructure-and-tools announcement]). The GRASS material has been developed as part of the NSF grant. &lt;br /&gt;
&lt;br /&gt;
* Planning GRASS Dev summit 2025 at NCSU&lt;br /&gt;
&lt;br /&gt;
* Planning AGU (4 abstract submitted), AGU booth for GRASS GIS reserved and payed&lt;br /&gt;
&lt;br /&gt;
* Submitted workshop, talk and keynote to FOSS4G 2024 - Brazil.&lt;br /&gt;
&lt;br /&gt;
=== CMake transition ===&lt;br /&gt;
Ongoing work on [https://github.com/OSGeo/grass/pull/3621 CMake compilation] was partially covered by POSE.&lt;br /&gt;
&lt;br /&gt;
=== Code Quality and Security ===&lt;br /&gt;
&lt;br /&gt;
* Code quality improvements in Python code:&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3763 Flake8 W605 Invalid escape sequence #3763]&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3926 Flake8 E741 Do not use variables named 'I', 'O', or 'l' in wxGUI code #3926]&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/3928 Flake8 E741 for the rest of code base #3928]&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/4200  grass.temporal: Flake8 F841 Local variable assigned to but never used #4200]&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/4113  grass.pygrass: Remove unused arg in ctypes.CFUNCTYPE #4113]&lt;br /&gt;
** [https://github.com/OSGeo/grass/pull/4206 t.rast.to.vect: Fix passing column parameter to r.to.vect, fix flake8 F841 #4206]&lt;br /&gt;
&lt;br /&gt;
* Code quality and security improvements in C and C++ code are in 36 PRs with fixes for more than 25 tools, specifically in:&lt;br /&gt;
** raster: r.path, r.out.mpeg, r.out.png, r.in.xyz, r.terraflow, r.statistics, r.spreadpath, r.sim.water, r.sim.erosion, r.object.geometry, r.coin&lt;br /&gt;
** imagery: i.atcorr, i.aster.toar, i.ortho.photo, i.landsat.acca, i.segment, i.smap&lt;br /&gt;
** display: d.linegraph, d.legend.vect, d.histogram, d.labels&lt;br /&gt;
** raster 3D: r3.in.v5d, r3.info, r3.mapcalc&lt;br /&gt;
** other: lib/gis, lib/vector/diglib, g.findfile, g.setproj, ps.map, lib/cdhc&lt;br /&gt;
&lt;br /&gt;
Changes by author: [https://github.com/OSGeo/grass/pulls?q=author%3AShubhamDesai+is%3Apr+is%3Aclosed+merged%3A2024-06-01..2024-08-31+base%3Amain+sort%3Aupdated-desc+ ShubhamDesai], [https://github.com/OSGeo/grass/pulls?q=author%3Amshukuno+is%3Apr+is%3Aclosed+merged%3A2024-06-01..2024-08-31+base%3Amain+sort%3Aupdated-desc+ Makiko Shukunobe], [https://github.com/OSGeo/grass/pulls?q=author%3Aymdatta+is%3Apr+is%3Aclosed+merged%3A2024-06-01..2024-08-31+base%3Amain+sort%3Aupdated-desc+ ymdatta]&lt;br /&gt;
&lt;br /&gt;
Several reviewers, not supported by the NSF POSE project, played crucial role not only in reviewing, but also in determining the right fixes.&lt;br /&gt;
&lt;br /&gt;
Fixed issues were reported by Flake8, Coverity Scan, and Cppcheck.&lt;br /&gt;
&lt;br /&gt;
=== Tests ===&lt;br /&gt;
&lt;br /&gt;
Changes by author: [https://github.com/OSGeo/grass/pulls?q=author%3AShreshth-Malik+is%3Apr+is%3Aclosed+merged%3A2024-12-01..2025-02-28+base%3Amain+sort%3Aupdated-desc+ Shreshth-Malik]&lt;br /&gt;
&lt;br /&gt;
=== Documentation ===&lt;br /&gt;
&lt;br /&gt;
* Veronica Andreo met some GRASS developers and contributors to follow up on tutorials development.&lt;br /&gt;
* 7 new [https://github.com/ncsu-geoforall-lab/tutorials tutorials] on time series:&lt;br /&gt;
** Management and visualization&lt;br /&gt;
** Aggregation&lt;br /&gt;
** Algebra&lt;br /&gt;
** Accumulation&lt;br /&gt;
** Gap filling&lt;br /&gt;
** Querying raster time series with vectors&lt;br /&gt;
** Subset, import and export&lt;br /&gt;
* Tutorial on how to set up Jupyter and GRASS in Windows&lt;br /&gt;
* New [https://github.com/OSGeo/grass-tutorials repository] under OSGeo organization to host the upcoming quarto based website for GRASS tutorials&lt;br /&gt;
* PR template created - [https://github.com/OSGeo/grass/community GitHub Community Standards] all checked complete&lt;br /&gt;
&lt;br /&gt;
=== Communication and outreach ===&lt;br /&gt;
&lt;br /&gt;
* Creation of 4 news posts in the [https://grass.osgeo.org/news/ GRASS website]&lt;br /&gt;
* Social media:&lt;br /&gt;
** [https://twitter.com/GRASSGIS Twitter]: 25 new posts&lt;br /&gt;
** [https://fosstodon.org/@grassgis Fosstodon]: 25 new posts&lt;br /&gt;
* New GRASS GIS LinkedIn page at: [https://www.linkedin.com/company/grass-gis/ https://www.linkedin.com/company/grass-gis/]&lt;br /&gt;
* Requested transition of [https://discourse.osgeo.org/t/osgeo-3255-migrate-grass-dev-mailing-list-to-discourse/49796 grass-dev mailing list to discourse.osgeo.org]&lt;br /&gt;
* Set up GRASS GIS swag shop on Redbubble&lt;br /&gt;
&lt;br /&gt;
=== Governance ===&lt;br /&gt;
* [https://grass.osgeo.org/about/roadmap/ Roadmap] and [https://grass.osgeo.org/about/governance/ Governance] pages added to the website &lt;br /&gt;
* PSC elections:&lt;br /&gt;
** Documented criteria to define people entitled to vote&lt;br /&gt;
** Documented procedure to compile the list of voters&lt;br /&gt;
** Elections [https://www.mail-archive.com/grass-user@lists.osgeo.org/msg41102.html announcement] sent out&lt;br /&gt;
&lt;br /&gt;
== Y2 1st quarter report (09/24 - 11/24) ==&lt;br /&gt;
&lt;br /&gt;
=== Presentations and Workshops ===&lt;br /&gt;
FOSS4GNA 2024 in St. Louis, Missouri:&lt;br /&gt;
&lt;br /&gt;
* Vaclav Petras. State of GRASS GIS. FOSS4G NA St. Louis, September 9-11, 2024 ([https://wenzeslaus.github.io/grass-gis-talks/foss4gna2024.html slides])&lt;br /&gt;
* Huidae Cho. Evolution of GRASS GIS. FOSS4G NA St. Louis, September 9-11, 2024 ([https://htmlpreview.github.io/?https://github.com/HuidaeCho/grass-talks/blob/main/foss4g-na-2024.html slides])&lt;br /&gt;
* Huidae Cho. An OpenMP Algorithm for Delineating a Large Number of Watersheds. FOSS4G NA St. Louis, September 9-11, 2024&lt;br /&gt;
* Corey T. White. Developing Web-Applications with GRASS GIS. Workshop. FOSS4G NA St. Louis, September 9-11, 2024&lt;br /&gt;
* Corey T. White. GRASS GIS as a Geospatial Computational Engine. FOSS4G NA St. Louis, September 9-11, 2024&lt;br /&gt;
&lt;br /&gt;
=== Communication and outreach ===&lt;br /&gt;
* Transition of grass-dev mailing list to [https://discourse.osgeo.org/c/grass/developer/61 discourse.osgeo.org] finished.&lt;br /&gt;
&lt;br /&gt;
=== Code Quality and Security ===&lt;br /&gt;
* Python code quality issues addressed in more than 70 PRs, reducing the list of per-file ignores by more than 60%.&lt;br /&gt;
* Code quality and security improvements in C and C++ code are in more than 80 PRs.&lt;br /&gt;
* In total, these changes improve more than 60 tools, specifically:&lt;br /&gt;
** raster: r.water.outlet, r.watershed, r.mfilter, r.to.vect, r.in.poly, r.carve, r.thin, r.fill.dir, r.clump, r.in.gridatb, r.out.png, r.in.wms, r.viewshed, r.fillnulls, r.in.srtm, r.in.pdal, r.in.xyz&lt;br /&gt;
** vector: v.out.dxf, v.build.polylines, v.external.out, v.net, v.univar, v.in.ascii, v.delaunay, v.hull , v.net.timetable, v.kernel, v.to.db, v.colors, v.rectify, v.reclass, v.generalize, v.transform, v.vol.rst, v.cluster, v.to.3d, v.out.ogr, v.external, v.in.dwg, v.report, v.unpack, v.import&lt;br /&gt;
** imagery: i.topo.corr, i.attcorr, i.ortho.photo, i.segment, i.rectify, i.topo.corr, i.panshrapen&lt;br /&gt;
** display: d.vect, d.mon, d.frame, d.rast.edit&lt;br /&gt;
** other: GUI, grass main executable, g.proj, g.version, db.out.ogr, ps.map, r3.in.v5d, r3.in.v5d, lib/vector/Vlib, lib/ogsf, lib/gis, lib/db, lib/lidar, lib/linkm, grass.temporal, grass.script&lt;br /&gt;
&lt;br /&gt;
Changes by author: [https://github.com/OSGeo/grass/pulls?q=author%3AShubhamDesai+is%3Apr+is%3Aclosed+merged%3A2024-09-01..2024-11-30+base%3Amain+sort%3Aupdated-desc+ ShubhamDesai], [https://github.com/OSGeo/grass/pulls?q=author%3Aymdatta+is%3Apr+is%3Aclosed+merged%3A2024-09-01..2024-11-30+base%3Amain+sort%3Aupdated-desc+ ymdatta],&lt;br /&gt;
[https://github.com/OSGeo/grass/pulls?q=author%3Aarohanajit+is%3Apr+is%3Aclosed+merged%3A2024-09-01..2024-11-30+base%3Amain+sort%3Aupdated-desc+ Arohan Ajit]&lt;br /&gt;
&lt;br /&gt;
Several reviewers, not supported by the NSF POSE project, played crucial role not only in reviewing, but also in determining the right fixes. The NSF POSE project personnel focused on fixing issues reported by Flake8, Coverity Scan, and Cppcheck, however also Ruff and Pylint are utilized in GRASS GIS thanks to other contributors.&lt;br /&gt;
&lt;br /&gt;
A configure file for Cppcheck is now included in the repository highlighting the level of compliance and aiding contributors in local analysis and subsequent implementation of fixes ([https://github.com/OSGeo/grass/pull/4766 PR #4766]).&lt;br /&gt;
&lt;br /&gt;
Finally, we created a new public GitHub project in the OSGeo GitHub organization for [https://github.com/orgs/OSGeo/projects/11 GRASS GIS Security] to track and communicate progress on the security front with 147 resolved items and 8 in-progress items at the time of writing.&lt;br /&gt;
&lt;br /&gt;
=== Documentation, both Internal and External ===&lt;br /&gt;
&lt;br /&gt;
* To improve indexing of GRASS GIS manual pages, we revised our current sitemap ([https://github.com/OSGeo/grass-website/pull/482 grass-website/pull/482)]), added a updated sitemap to Google Search Console and Bing, fixed robots.txt, and triggered and re-triggered the indexing many times to make Google consume the new content. While before, some searches gave outdated documentation, experimental websites, or unofficial resources only, now the official website and stable documentation is returned as the first search result.&lt;br /&gt;
* All older manuals, including version 6.4 and 6.5, are now available (restored) so that search engines can consume them and old links and indices continue to work. They now newly contain the canonical URLs so that search engines understand the structure and don't penalize duplicate content.&lt;br /&gt;
* On OSGeo server which hosts GRASS GIS website, we replaced some of the redirects in Apache by local soft links so that URL like grass.osgeo.org/grass-stable stay as is for both humans and machines and don't redirect to specific version (easier to copy-paste from a browser URL bar and easier for search engine to understand what is the page to show).&lt;br /&gt;
* We implemented the necessary changes into the cronjobs and did overall updates to enable build of the server-side documentation jobs locally for testing purposes. The most relevant PRs are:&lt;br /&gt;
** [https://github.com/OSGeo/grass-addons/pull/1241 Inject canonical URLs into older manual pages (SEO) #1241]&lt;br /&gt;
** [https://github.com/OSGeo/grass-addons/pull/1173 Fix red new version box injection and script documentation #1173]&lt;br /&gt;
** [https://github.com/OSGeo/grass-addons/pull/1215 Expand script to run stand-alone #1215]&lt;br /&gt;
* We advanced the [https://github.com/orgs/OSGeo/projects/9 GRASS Markdown Documentation project].&lt;br /&gt;
* New and better wording for intro to imagery tools: [https://github.com/OSGeo/grass/pull/4536 Add intro text to imageryintro.html #4536]&lt;br /&gt;
* List of GRASS GIS profiles on different websites is now in an internal PSC document.&lt;br /&gt;
* Documentation of all the internal infrastructure, especially that of grass.osgeo.org server, is now in an internal PSC document.&lt;br /&gt;
* We painstakingly identified and described all maintenance procedures performed by Markus Neteler in OSGeo SAC capacity for GRASS GIS and as a contributor to GRASS GIS for better work distribution.&lt;br /&gt;
* Most of the work on the documentation was done through a contract with Markus Neteler with additional help from Martin Landa for the transition to Markdown.&lt;br /&gt;
&lt;br /&gt;
=== Mentoring Activities ===&lt;br /&gt;
Mentors were actively working with 3 mentees.&lt;br /&gt;
&lt;br /&gt;
=== Event Planning and Organizing ===&lt;br /&gt;
&lt;br /&gt;
[[File:Raleigh_2016_11_05.jpg|500px|thumb|right|alt=Rooms, tables and large open space|Smaller space utilized in the past for a local GRASS GIS meetup in Hunt library at NC State University campus (photos are from a [[GRASS GIS Raleigh meetups 2016|2016 meetup]])]]&lt;br /&gt;
&lt;br /&gt;
We are planning and organizing GRASS GIS Developer Summit in Raleigh, NC, USA at North Carolina State University.&lt;br /&gt;
&lt;br /&gt;
* High-demand spaces reserved at NCSU (some since May 2024, other since September 2024).&lt;br /&gt;
* A [https://discourse.osgeo.org/t/grass-dev-save-the-date-grass-developer-summit-raleigh-2025/85540 save-the-date post for grass-dev], interest form, and first round of additional invites. (Date established earlier in spring 2024 by NSF POSE team after a survey of PSC members and Core Development Team members.)&lt;br /&gt;
* We addressed participant's visa needs based on the responses to the interest form.&lt;br /&gt;
* We formed the initial Organizing Committee formed and rough event agenda created.&lt;br /&gt;
* Page created: [[GRASS Developer Summit Raleigh 2025]].&lt;br /&gt;
&lt;br /&gt;
== Y2 2nd quarter report (12/24 - 02/25) ==&lt;br /&gt;
&lt;br /&gt;
=== Presentations, Workshops, Event Planning ===&lt;br /&gt;
&lt;br /&gt;
[[File:GRASS GIS booth AGU24.jpg|500px|thumb|right|alt=GRASS GIS booth at AGU24|GRASS GIS booth at AGU24, Washington, DC]]&lt;br /&gt;
&lt;br /&gt;
AGU24 Annual Meeting, Washington, DC, USA:&lt;br /&gt;
* GRASS GIS booth in the Exhibit Hall with a banner, new flyers, and a Tangible Landscape setup to demonstrate some of the capabilities of GRASS GIS (Monday afternoon - Thursday morning)&lt;br /&gt;
* GRASS GIS for Advanced Earth Systems Analysis and Modeling (eLightning) by Vaclav Petras&lt;br /&gt;
* Perspectives from an Open Source Geospatial Modeling Platform Maintainer (poster) by Anna Petrasova&lt;br /&gt;
* GRASS GIS Is FAIR: Its Evolution Towards Open Science (poster) by Huidae Cho&lt;br /&gt;
* GRASS GIS as a Platform for Dissemination of Reusable Geocomputational Research (poster) by Vaclav Petras&lt;br /&gt;
&lt;br /&gt;
Beyond the GIS Map: Open Source Tools for Geospatial Research, Workshop at the Institute for Social Science   Research Arizona State University. 11 December 2024  &lt;br /&gt;
* Michael Barton and Eunice Villaseñor Iribe, instructors  &lt;br /&gt;
* Topics  &lt;br /&gt;
** Introduction to GRASS&lt;br /&gt;
** Modeling Terrain in GRASS&lt;br /&gt;
** Modeling Movement in GRASS&lt;br /&gt;
** Remote Sensing With GRASS&lt;br /&gt;
&lt;br /&gt;
Physically-based hydrologic modeling using GRASS GIS r.topmodel, Workshop at New Mexico State University. January 31, 2025, 1pm-5pm.&lt;br /&gt;
* Instructor: Huidae Cho&lt;br /&gt;
* Assistant: Nelson Kandel&lt;br /&gt;
* Participants: 17&lt;br /&gt;
* Topics&lt;br /&gt;
** Introduction to GRASS&lt;br /&gt;
** Hydrologic Modeling Using GRASS&lt;br /&gt;
** Model Calibration and Validation&lt;br /&gt;
&lt;br /&gt;
=== Code Quality and Security ===&lt;br /&gt;
&lt;br /&gt;
Changes by author: [https://github.com/OSGeo/grass/pulls?q=author%3AShubhamDesai+is%3Apr+is%3Aclosed+merged%3A2024-12-01..2025-02-28+base%3Amain+sort%3Aupdated-desc+ ShubhamDesai], [https://github.com/OSGeo/grass/pulls?q=author%3Aarohanajit+is%3Apr+is%3Aclosed+merged%3A2024-12-01..2025-02-28+base%3Amain+sort%3Aupdated-desc+ Arohan Ajit]&lt;br /&gt;
&lt;br /&gt;
=== Tests ===&lt;br /&gt;
&lt;br /&gt;
Changes by author: [https://github.com/OSGeo/grass/pulls?q=author%3AShreshth-Malik+is%3Apr+is%3Aclosed+merged%3A2024-12-01..2025-02-28+base%3Amain+sort%3Aupdated-desc+ Shreshth-Malik], [https://github.com/OSGeo/grass/pulls?q=author%3Ajayneel-shah18+is%3Apr+is%3Aclosed+merged%3A2024-12-01..2025-02-28+base%3Amain+sort%3Aupdated-desc+ jayneel-shah18]&lt;br /&gt;
&lt;br /&gt;
=== Documentation and Tutorials ===&lt;br /&gt;
We finalized and prepared for launch Quarto-based tutorial website editable through GitHub. OSGeo provided a new domain [https://grass-tutorials.osgeo.org/ grass-tutorials.osgeo.org]. Initial set of tutorials were created by Veronica Andreo when she was part of the NSF POSE team (some tutorials will be finalized and released later). Anna Petrasova did the reviews, curation, posts for external tutorials, and transition from list of tutorials at the main website.&lt;br /&gt;
&lt;br /&gt;
We did a major push to create Markdown files in the source code and enable the compilation of documentation for mkdocs. We also configured the mkdocs and revised the Markdown syntax in the files.&lt;br /&gt;
&lt;br /&gt;
=== Communication and outreach ===&lt;br /&gt;
&lt;br /&gt;
Renewed [https://www.youtube.com/@grass-gis Youtube channel @grass-gis] by adding playlists, organizing videos, and updating branding.&lt;br /&gt;
&lt;br /&gt;
=== Governance ===&lt;br /&gt;
Submitted application for GRASS GIS to join NumFocus.&lt;br /&gt;
&lt;br /&gt;
=== Event Planning and Organizing ===&lt;br /&gt;
&lt;br /&gt;
* Created draft of schedule, agenda, and budget.&lt;br /&gt;
* Identified participants eligible for travel support.&lt;br /&gt;
** While the meeting is open to anyone, the NSF-funded travel support is based on priorities set in the NSF POSE project for the Developer Summit.&lt;br /&gt;
** Specifically, we are inviting individuals identified based on the following criteria (in this order; moving to the next group if there is still available places):&lt;br /&gt;
*** Top 20 contributors to OSGeo/grass in the last two years (2023-2024), but not a bot or NSF POSE personnel (contributing only within NSF POSE). (After exclusions, this is less than 10 people.) &lt;br /&gt;
*** PSC member before or after 2024 elections, but not NSF POSE personnel at the time of the meeting. (With PSC members currently contributing code as well, this is only a couple of people after exclusions.)&lt;br /&gt;
*** Active participant in one of the mentoring programs. (Participant demonstrated the activity by attending meetings, reporting progress, or submitting code for feedback or review.)&lt;br /&gt;
*** Contributors to connections and interfaces prioritized in or during the NSF POSE project:&lt;br /&gt;
**** R packages (2 slots for active contributors or maintainers determined by previously established contacts in the given community through their activity on a relevant code base.)&lt;br /&gt;
**** GRASS GIS code in QGIS (2 slots for active contributors or maintainers determined by previously established contacts in the given community through their activity on a relevant code base.)&lt;br /&gt;
*** Contributors in &amp;quot;write&amp;quot; teams for OSGeo/grass, OSGeo/grass-addons, OSGeo/grass-website, and OSGeo/grass-tutorials repositories. (Almost all fall into one of the above groups.)&lt;br /&gt;
*** Contributors to closely related projects, specifically actinia, the GRASS GDAL driver, and the GRASS GeoServer datastore.&lt;br /&gt;
* Sent individual invites to participants eligible for travel support. (ongoing)&lt;br /&gt;
&lt;br /&gt;
== Y2 3rd quarter report (03/25 - 05/25) ==&lt;br /&gt;
* [[GRASS_Developer_Summit_Raleigh_2025]] &lt;br /&gt;
&lt;br /&gt;
== Y2 4th quarter report (06/25 - 08/25) ==&lt;br /&gt;
&lt;br /&gt;
=== Governance ===&lt;br /&gt;
* GRASS accepted NumFOCUS (more steps to make it official)&lt;br /&gt;
&lt;br /&gt;
=== Presentations, Workshops, Event Planning ===  &lt;br /&gt;
* Beyond the GIS Map: Open Source Tools for Geospatial Research, Workshop at the Institute for Social Science   Research Arizona State University. 25 March 2025 &lt;br /&gt;
** Michael Barton and Eunice Villaseñor Iribe, instructors  &lt;br /&gt;
** Topics: Introduction, Modeling Terrain, Modeling Movement, Remote Sensing with GRASS&lt;br /&gt;
* IALE-NA: [https://github.com/ncsu-geoforall-lab/iale-2025-workshop-tl Building Geospatial Models in GRASS: From Python Workflows to Tangible Landscape], April 15th, hosted by the Center for Geospatial Analytics&lt;br /&gt;
** Anna Petrasova and Caitlin Haedrich&lt;br /&gt;
** 20 participants&lt;br /&gt;
&lt;br /&gt;
== Roadmap ==&lt;br /&gt;
;Mentoring program (fall 2023 - summer 2025)&lt;br /&gt;
:Free developer-oriented mentoring program to support researchers and software developers to integrate GRASS GIS into their workflows and contribute to GRASS GIS.&lt;br /&gt;
&lt;br /&gt;
; Streamline contributor onboarding (spring 2024 - fall 2024)&lt;br /&gt;
: Includes updating and creating guidelines for code and non-code contributions.&lt;br /&gt;
&lt;br /&gt;
; Streamline user onboarding (spring 2024 - fall 2024)&lt;br /&gt;
: Includes modernizing tool documentation, developing tutorials.&lt;br /&gt;
: Creating sample datasets for localized tutorials.&lt;br /&gt;
: Developing online training materials for big data processing.&lt;br /&gt;
&lt;br /&gt;
; Training sessions (fall 2023 - summer 2025)&lt;br /&gt;
: Local training sessions (at universities and conferences) introducing GRASS GIS to students and researchers.&lt;br /&gt;
: Training program for big data processing delivered online.&lt;br /&gt;
&lt;br /&gt;
; Engaging industry partners and user (January 2024 - August 2025)&lt;br /&gt;
: Identify and engage industry partners to gather feedback and to start industry partnership program.&lt;br /&gt;
&lt;br /&gt;
; Conferences&lt;br /&gt;
: Presence (talks, workshops, networking) at FOSS4GNA 2023, FOSS4G Asia 2023, AGU 2023, CSDMD 2024, FOSS4G Europe 2024, FOSS4G 2024, AGU 2024&lt;br /&gt;
&lt;br /&gt;
; Community sprints&lt;br /&gt;
: Virtual or in-person participation in OSGeo community sprints, GRASS GIS community sprints&lt;br /&gt;
&lt;br /&gt;
; Software distribution (January 2024 - May 2025)&lt;br /&gt;
: Transition to CMake build system&lt;br /&gt;
: Develop conda package&lt;br /&gt;
&lt;br /&gt;
;Simplify maintenance of GRASS integrations with QGIS and R (2024-2025)&lt;br /&gt;
: Virtual meetings with QGIS and R developers and GRASS GIS developers (spring 2024).&lt;br /&gt;
: Identify and implement improvements to the integration.&lt;br /&gt;
&lt;br /&gt;
;Improve code quality, security, and quality assurance &lt;br /&gt;
: Code quality (Flake8, Pylint, Cppcheck), first half of 2024.&lt;br /&gt;
: Security (CodeQL), second half of 2024.&lt;br /&gt;
: Quality assurance (better pytest integration), second half of 2024.&lt;br /&gt;
&lt;br /&gt;
; In-person developer summit (May 19 - May 24, 2025)&lt;br /&gt;
: Hosted by NC State University, Raleigh, NC, USA.&lt;br /&gt;
: Identify additional challenges for adoption of GRASS GIS as geoprocessing engine.&lt;br /&gt;
: Long-term planning beyond the POSE project.&lt;br /&gt;
&lt;br /&gt;
== Acknowledgements ==&lt;br /&gt;
&lt;br /&gt;
The funding is provided by the U.S. National Science Foundation, award 2303651.&lt;br /&gt;
[[File:NSF Official logo.png|frameless|left]]&lt;br /&gt;
&lt;br /&gt;
[[Category: Community]]&lt;br /&gt;
[[Category: Conferences‏‎]]&lt;br /&gt;
[[Category: 2023]]&lt;br /&gt;
[[Category: 2024]]&lt;br /&gt;
[[Category: 2025]]&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Talk:GRASS_Developer_Summit_Raleigh_2025&amp;diff=28408</id>
		<title>Talk:GRASS Developer Summit Raleigh 2025</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Talk:GRASS_Developer_Summit_Raleigh_2025&amp;diff=28408"/>
		<updated>2025-05-24T03:04:33Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: /* Anna Petrasova | NC State University */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{toc|right}}&lt;br /&gt;
&lt;br /&gt;
Quick links: [[GRASS Developer Summit Raleigh 2025|Meeting page]] | [[#Participant_reports|Reports]]  |  [[GRASS_Developer_Summit_Raleigh_2025#Sponsors|Sponsors]]&lt;br /&gt;
&lt;br /&gt;
== Organizing Team ==&lt;br /&gt;
&lt;br /&gt;
* Initial planning: Vaclav Petras, Anna Petrasova, Veronica Andreo, Corey White, Lois Utt, Sarah White, Doug Newcomb, Huidae Cho, Veronica Andreo ([[GRASS_Developer_Summit_Raleigh_2025#Organizing_Committee|Organizing Committee]])&lt;br /&gt;
* Budget: Vaclav Petras, Lois Utt, Anna Petrasova&lt;br /&gt;
* Raising support: Helena Mitasova, Vaclav Petras, Anna Petrasova, Michael Barton, Giuseppe Amatulli ([[NSF POSE Project 2023-2025 Timeline|NSF POSE project]] proposal authors)&lt;br /&gt;
* Travel: Lois Utt&lt;br /&gt;
* Venue: Vaclav Petras, Lois Utt&lt;br /&gt;
* Meals: Lois Utt, Sarah White, Vaclav Petras, Corey White, Anna Petrasova&lt;br /&gt;
* Agenda: Vaclav Petras, Huidae Cho, Anna Petrasova&lt;br /&gt;
* Wiki page: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Swag: Sarah White, Vaclav Petras, Anna Petrasova, Corey White&lt;br /&gt;
* Promotion, invitations, and social media: Vaclav Petras, Sarah White, Corey White, John Vogler&lt;br /&gt;
* Lightning talks organization: Vaclav Petras, Zachary Arcaro, John Vogler&lt;br /&gt;
* Lightning talk speakers: Vaclav Petras (welcome), Markus Metz and Markus Neteler (talk presented by Vaclav Petras), Anna Petrasova, Veronica Andreo, Robert Dzur, Nick Brady, Huidae Cho, Gregory Power, Doug Newcomb, Caitlin Haedrich&lt;br /&gt;
* Photography: Caitlin Haedrich, Māris Nartišs, Pratikshya Regmi&lt;br /&gt;
* Portrait photography: Riya, Caitlin Haedrich, Natalie Trso&lt;br /&gt;
&lt;br /&gt;
== Detailed Schedule ==&lt;br /&gt;
&lt;br /&gt;
=== Day 1, Monday, May 19 ===&lt;br /&gt;
&lt;br /&gt;
Location: Talley Student Union, 2610 Cates Ave ([https://www.google.com/maps/place/Talley+Student+Union/data=!4m2!3m1!1s0x0:0x38989377c96adef0?sa=X&amp;amp;ved=1t:2428&amp;amp;ictx=111 map])&lt;br /&gt;
&lt;br /&gt;
Room: 5101-Executive Board Room&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''Contributing to GRASS. Getting started. Is it easy to contribute?''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:30-9:00 || Breakfast || Catered breakfast on site. Meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || What to expect from the event, contributing to GRASS using Git and GitHub, making your first contribution.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || i.hyper: Integrating Hyperspectral Imagery Processing into GRASS - Alen Mangafić&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || &lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Project Image - Vaclav Petras&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || Catered food on site.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || We will walk to [https://www.trophybrewing.com/brewing-pizza Trophy Brewing &amp;amp; Pizza] ([https://maps.app.goo.gl/ggnZ7EvXbWqDUmvP9 directions], 30 min walk from Talley)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 2, Tuesday, May 20 ===&lt;br /&gt;
&lt;br /&gt;
Location: Talley Student Union, 2610 Cates Ave ([https://www.google.com/maps/place/Talley+Student+Union/data=!4m2!3m1!1s0x0:0x38989377c96adef0?sa=X&amp;amp;ved=1t:2428&amp;amp;ictx=111 map])&lt;br /&gt;
&lt;br /&gt;
Room: 5101-Executive Board Room&lt;br /&gt;
&lt;br /&gt;
Highlighted topics: ''Hydrology and Interfacing with R and QGIS (gathering user feedback, testing, discussing with developers, developing action items)''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:30-9:00 || Breakfast || Breakfast on site. Start the day, meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || Introduction to writing GRASS tools, program for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || fasterRaster R package - Adam Smith&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Hydography90m + Geocomputation Courses - Giuseppe&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Flood modelling with grass and itzi ([https://itzi.org]) - Laurent Courty&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || [https://maps.app.goo.gl/womSkce9DrE8CTnR8 Case dining hall]&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || [https://maps.app.goo.gl/CQiWoCAQNt1ymZkb7 Served in Jordan Hall at the Center for Geospatial Analytics], evaluate the day's accomplishments, plan and prioritize for the next few days.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 3, Wednesday, May 21 ===&lt;br /&gt;
&lt;br /&gt;
Location: Talley Student Union, 2610 Cates Ave ([https://www.google.com/maps/place/Talley+Student+Union/data=!4m2!3m1!1s0x0:0x38989377c96adef0?sa=X&amp;amp;ved=1t:2428&amp;amp;ictx=111 map])&lt;br /&gt;
&lt;br /&gt;
Room: 5101-Executive Board Room&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''Non-coding contributions, natural language translation, and internationalization.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 7:00-9:00 || Breakfast || [https://maps.app.goo.gl/eZ8VK8Mx6TjMt9NP8 Case dining hall]&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || Introduction to non-coding contributions, tutorials, contributing examples, natural language translation and internationalization (procedures, glossaries, code customization, translation).&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || Easier access to GRASS tools - Vaclav Petras&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || &lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || GRASS backend for xarray and temporal framework global variables ([https://github.com/OSGeo/grass/issues/629]) - Laurent Courty&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || Served on site. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || [https://maps.app.goo.gl/1E39eySMVaxYJUUS8 Picnic at Pullen Park, shelter #3. In case of bad weather, dinner at the Center for Geospatial Analytics.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 4, Thursday, May 22 ===&lt;br /&gt;
&lt;br /&gt;
Location: Center for Geospatial Analytics, Jordan Hall, 2800 Faucette Drive ([https://www.google.com/maps/search/Jordan+Hall/@35.7816832,-78.6772765,18z/data=!3m1!4b1?entry=ttu&amp;amp;g_ep=EgoyMDI1MDQyMC4wIKXMDSoJLDEwMjExNDUzSAFQAw%3D%3D map])&lt;br /&gt;
&lt;br /&gt;
Room: 5103 (straight from the two elevators, at the end of the hallway)&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''Project vision and computational engine use case.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:00-9:00 || Breakfast || On site. Start the day, meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || Project vision and the computational engine use case (missing features, documentation, user groups).&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || NSF POSE I-Corps Interviews - Corey White&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback session || YAIT - Yet Another Interface to Tools - Vaclav Petras &lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback session || Modernizing Color Tables (Brendan)&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || On site. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-16:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 16:00-17:00 || Lightning talks || Fast-paced talks, showcasing applications of GRASS, room 5111.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Reception || Connect with researchers, government professionals, and industry collaborators, rooms 5111 and 5119.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 5, Friday, May 23 ===&lt;br /&gt;
&lt;br /&gt;
Location: James B. Hunt Jr. Library, 1070 Partners Way - Centennial Campus ([https://www.google.com/maps/place/James+B.+Hunt+Jr.+Library/@35.7693736,-78.679167,17z/data=!3m1!5s0x89acf5759f5a31df:0xc547454a0151c440!4m10!1m2!2m1!1shunt+library!3m6!1s0x89acf5759f591f41:0xbe0266269ce37f59!8m2!3d35.7693215!4d-78.6764409!15sCgxodW50IGxpYnJhcnlaDiIMaHVudCBsaWJyYXJ5kgESdW5pdmVyc2l0eV9saWJyYXJ54AEA!16s%2Fm%2F0r4wjf_?entry=ttu&amp;amp;g_ep=EgoyMDI1MDQyMC4wIKXMDSoJLDEwMjExNDUzSAFQAw%3D%3D map])&lt;br /&gt;
&lt;br /&gt;
Room: Faculty Research Commons - 5100 ([https://www.lib.ncsu.edu/hunt/map floor plan])&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''GRASS project's future course.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 7:45-8:15 || Breakfast || '''Hotel Aloft (2nd floor).''' Search for Lois!&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || GRASS project's future course.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-12:00 || PSC meeting || Project Steering Committee meets (public).&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Rescheduled for Saturday&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || Walk to [https://maps.app.goo.gl/kHVHY62QxTd6wHKd9 On the Oval Culinary Creations]. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || Dinner on your own. Corey White will organize trip to downtown. Bus 41 from Hunt library to hotel and then walk.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 6, Saturday, May 24 ===&lt;br /&gt;
&lt;br /&gt;
Location: James B. Hunt Jr. Library, 1070 Partners Way - Centennial Campus ([https://www.google.com/maps/place/James+B.+Hunt+Jr.+Library/@35.7693736,-78.679167,17z/data=!3m1!5s0x89acf5759f5a31df:0xc547454a0151c440!4m10!1m2!2m1!1shunt+library!3m6!1s0x89acf5759f591f41:0xbe0266269ce37f59!8m2!3d35.7693215!4d-78.6764409!15sCgxodW50IGxpYnJhcnlaDiIMaHVudCBsaWJyYXJ5kgESdW5pdmVyc2l0eV9saWJyYXJ54AEA!16s%2Fm%2F0r4wjf_?entry=ttu&amp;amp;g_ep=EgoyMDI1MDQyMC4wIKXMDSoJLDEwMjExNDUzSAFQAw%3D%3D map])&lt;br /&gt;
&lt;br /&gt;
'''Take bus 41 at 8.30 from Aloft.'''&lt;br /&gt;
&lt;br /&gt;
Room: Faculty Research Commons - 5100 ([https://www.lib.ncsu.edu/hunt/map floor plan])&lt;br /&gt;
&lt;br /&gt;
Highlighted topics: ''NSF POSE project evaluation.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:30-10:00 || Breakfast || We will have breakfast (yogurt, granola, pastries) at [https://maps.app.goo.gl/EwzNxeovv4rTivjK9 Lake Raleigh]. Feel free to bring your own coffee.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || Your topic here (10-minute presentation and 10-minute discussion)&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || GRASS tools: core and additional functionality (MartinL)&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || Pizza. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || Player's Retreat. &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Daily tasks for participants ==&lt;br /&gt;
&lt;br /&gt;
* List all the things you are working on in the Participant reports section below. Update the list each day. Include things you work on with other people.&lt;br /&gt;
* If you want to discuss something with the whole group, add yourself to a Self-organized feedback sessions slot in the schedule above or tell Vaclav (Vashek) Petras.&lt;br /&gt;
* For people with triage access and above: If you are or will be working on an issue or on a PR which is not originally submitted by you, assign yourself to the issue or PR. (You can unassign yourself later if you change your mind.)&lt;br /&gt;
&lt;br /&gt;
== Participant reports ==&lt;br /&gt;
&lt;br /&gt;
Per-person reports from the meeting.&lt;br /&gt;
&lt;br /&gt;
=== Giuseppe Amatulli | Yale University ===&lt;br /&gt;
&lt;br /&gt;
* Testing r.watershed and r.stream.* for handling large datasets&lt;br /&gt;
* Running r.flowaccumulation at global level using water direction from hydrography90m &lt;br /&gt;
* Preparing the grass tutorial material for the https://www.geomorphometry2025.org/ conference&lt;br /&gt;
&lt;br /&gt;
=== Veronica Andreo | CONICET - Instituto Gulich ===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/veroandreo?tab=overview&amp;amp;from=2025-05-12&amp;amp;to=2025-05-24 GitHub contributions]&lt;br /&gt;
* Enhanced the website footer.&lt;br /&gt;
* Sync icons on the Tutorials website footer to those on the main website.&lt;br /&gt;
* Fix descriptions and their display on the tutorials website.&lt;br /&gt;
* Fix GRASS page on OSGeo website [https://www.osgeo.org/projects/grass-gis/] &lt;br /&gt;
** Changed logo, removed GIS from the name, fixed old links.&lt;br /&gt;
* Social media posts.&lt;br /&gt;
* Discussion about hyperspectral with Alen and Anna.&lt;br /&gt;
* Expand the GRASS acronym on the home page.&lt;br /&gt;
* Remove GIS from GRASS name on the website.&lt;br /&gt;
* Review tutorials by Huidae and Adam Smith.&lt;br /&gt;
* Add external tutorials by Huidae and the one from FOSS4G 2024.&lt;br /&gt;
* Started adding the time series tutorials.&lt;br /&gt;
* Add lightbox class in get-started tutorials so images can be clicked on.&lt;br /&gt;
* GRASS PSC admin stuff.&lt;br /&gt;
* Participated of the PSC meeting.&lt;br /&gt;
* Talk to Tonis Kardi from FOSS4G EU LOC to have a &amp;quot;State of GRASS&amp;quot; talk in the program. Alen will be presenting.&lt;br /&gt;
* Gave a lightning talk: GRASS-fed species distribution models.&lt;br /&gt;
* Discussed with Corey and Mimi about tutorials.&lt;br /&gt;
&lt;br /&gt;
=== Abdullah Azzam | New Mexico State University ===&lt;br /&gt;
&lt;br /&gt;
* Created first PR; fixed broken links on the website [https://github.com/OSGeo/grass-website/pull/538 #538]&lt;br /&gt;
* Pushed a new GRASS Addon ''r.curvenumber'' [https://github.com/OSGeo/grass-addons/pull/1403 #1403]&lt;br /&gt;
&lt;br /&gt;
=== Michael Barton | Arizona State University ===&lt;br /&gt;
&lt;br /&gt;
* POSE related activities&lt;br /&gt;
&lt;br /&gt;
=== Laura Belica | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* have been working on developing a workflow-tool tutorial template that facilitates GRASS learners who tend to 'jump in' or have a 'choose your own adventure' approach to learning GRASS (i.e., want to use their data for their study area for their objective from the start).  The structure of the tutorial template is a concise, basic, general description/instructions of the workflow with optional links to pertinent explanatory/deeper dive content  (e.g.,  plain language explainers of the tool, options, defaults, etc.) in a variety of formats (e.g., captioned images, short tool demo videos (30 sec to 2 min)) in addition to the more comprehensive resources available (e.g. documentation, examples, tutorials).  The main motivation for this approach is to help new and occasional GRASS users avoid some of the common pitfalls and to learn how to find workarounds for some of the unanticipated challenges they may encounter with their specific datasets or use cases so that they can learn as they go.  Another motivation for this approach is to facilitate the translation, extension, and updating of workflow tutorials by the community over time (e.g., providing audio and closed captioning for one of the tool-demo videos in another language, replacing an outdated GUI demo with one for the current release, or incorporating a new add-on as an option in the workflow).&lt;br /&gt;
&lt;br /&gt;
* my focus this week is on developing a draft/test tutorial (in Quarto) for a standard hydrological modelling workflow that begins with the crucial pre-work of how to figure out the appropriate project/location, etc. as well as considerations of some of the downstream impacts of resolution, extent, region etc. It may not be ready for sharing by the end of the week, but suggestions and advice are welcomed in advance.&lt;br /&gt;
&lt;br /&gt;
19 May&lt;br /&gt;
* discussed a novice user issue with 'moving' vector data from one location to another with Vero and learned a neat GUI option &lt;br /&gt;
* revised and added workflow tutorial text&lt;br /&gt;
&lt;br /&gt;
=== Shonil Sateesh Bhide | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* CI optimization&lt;br /&gt;
&lt;br /&gt;
=== Huidae Cho | New Mexico State University ===&lt;br /&gt;
&lt;br /&gt;
* CMake, conda, CI, Mentoring&lt;br /&gt;
&lt;br /&gt;
Monday 5/19&lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/5680 CMake: Recognize conda installation path at runtime]: Replaced by [https://github.com/HuidaeCho/grass-conda/blob/master/recipe/post-link.sh conda post-link.sh]&lt;br /&gt;
* CMake and Conda Testing on Linux&lt;br /&gt;
* CMake Testing on Windows&lt;br /&gt;
* Mentoring: Chung-Yuan, Abdullah&lt;br /&gt;
&lt;br /&gt;
Tuesday 5/20&lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/5712 CMake: Define custom complex types for MSVC LAPACKE]&lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/5713 CMake: Fix build output directories for MSVC]&lt;br /&gt;
* CMake and Conda Testing on Linux&lt;br /&gt;
* CMake Testing on Windows&lt;br /&gt;
&lt;br /&gt;
Wednesday 5/21&lt;br /&gt;
* Translation Talk&lt;br /&gt;
* Translation Discussion with Edouard&lt;br /&gt;
* Flow Direction Meeting with Ondrej, Ondrej's Student, Martin, and Markus Metz&lt;br /&gt;
* CMake and Conda Testing on Linux&lt;br /&gt;
* CMake Testing on Windows&lt;br /&gt;
* Mentoring: Chung-Yuan, Abdullah&lt;br /&gt;
&lt;br /&gt;
Thursday 5/22&lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/5740 CMake: Fix the parameter is incorrect: . error for MSVC]&lt;br /&gt;
* Lightning Talk&lt;br /&gt;
* CMake and Conda Testing on Linux&lt;br /&gt;
* CMake Testing on Windows&lt;br /&gt;
* CI: Discussion with Edouard&lt;br /&gt;
* Mentoring: Chung-Yuan, Abdullah&lt;br /&gt;
&lt;br /&gt;
=== Edouard Choinière ===&lt;br /&gt;
&lt;br /&gt;
* Quick ideas, way too much for a week: Helping others (may take a reasonable part of the time), managing CI, setting up localization template updating workflow, backporting tool? Pytest/coverage improvements? Discuss and design other projects, to work on during the year. Open to change on other priorities once there, anything that is useful. Maybe make a little progress on high dpi GUI, especially on Windows.&lt;br /&gt;
&lt;br /&gt;
* Weekend before sprint:&lt;br /&gt;
** Clear up Renovate PRs to not use CI time during the sprint, reviewing and merging: [https://github.com/OSGeo/grass/pull/5664 #5664], [https://github.com/OSGeo/grass/pull/5665 #5665], [https://github.com/OSGeo/grass/pull/5666 #5666], [https://github.com/OSGeo/grass/pull/5667 #5667], [https://github.com/OSGeo/grass/pull/5668 #5668]&lt;br /&gt;
** PR to avoid some CI run time for the sprint: [https://github.com/OSGeo/grass/pull/5670 #5670]&lt;br /&gt;
** Reviewed open PRs for PRs that were mergeable before the sprint, updated outdated PRs to avoid having it needing CI time during sprint. Only ended up merging [https://github.com/OSGeo/grass/pull/5658 #5658], but another reviewed one that might still need changes: [https://github.com/OSGeo/grass/pull/5628 #5628]&lt;br /&gt;
* Monday May 19, 2025:&lt;br /&gt;
** PR got merged: [https://github.com/OSGeo/grass/pull/5670 #5670],[https://github.com/OSGeo/grass/pull/5550 #5550]&lt;br /&gt;
** Reviewed PRs: [https://github.com/OSGeo/grass/pull/5671 #5671], [https://github.com/OSGeo/grass/pull/5672 #5672]&lt;br /&gt;
** Discussions:&lt;br /&gt;
*** Shonil Sateesh Bhid &amp;amp; Shuham on their CI &amp;amp; pytest work and project.&lt;br /&gt;
*** Māris Nartišs about a potential issue and improvement for it. Will be discussed in the security reporting tab, also allowing to test the security vulnerability reporting process. + Research on existing solutions&lt;br /&gt;
** Reviewed: [https://github.com/OSGeo/grass/pull/5682 #5682], [https://github.com/OSGeo/grass/pull/5660 #5660],&lt;br /&gt;
** Reviewed, edited and merged: [https://github.com/OSGeo/grass/pull/3672 #3672]&lt;br /&gt;
** Discussed/helped user for: [https://github.com/OSGeo/grass/pull/5678 #5678] and [https://github.com/OSGeo/grass/pull/5684 #5684]&lt;br /&gt;
** Long discussion and vision planning for windows scripting with Vaclav, concerning [https://github.com/OSGeo/grass/pull/5624 #5624]. Tested alternatives and tried the consequences of that PR. This older PR finally got merged.&lt;br /&gt;
** Created PRs for NSIS installer: [https://github.com/OSGeo/grass/pull/5685 #5685] and also [https://github.com/OSGeo/grass/pull/5686 #5686], which should address [https://github.com/OSGeo/grass/issues/5663 #5663]. Still needs to test it.&lt;br /&gt;
** Agreed on convention for titles with Vaclav, unblocking [https://github.com/OSGeo/grass/pull/5341 #5341]&lt;br /&gt;
** Found a name with Ondrej and finally merged older PRs of an external contributor [https://github.com/OSGeo/grass/pull/5473 #5473] and [https://github.com/OSGeo/grass/pull/5474 #5474]&lt;br /&gt;
* Thursday May 20, 2025:&lt;br /&gt;
** Reviewed: [https://github.com/OSGeo/grass/pull/5695 #5695]&lt;br /&gt;
** Merged PRs: [https://github.com/OSGeo/grass/pull/5673 #5673], [https://github.com/OSGeo/grass/pull/5691 #5691], [https://github.com/OSGeo/grass/pull/5690 #5690], [https://github.com/OSGeo/grass/pull/5684 #5684],&lt;br /&gt;
** Discussed with author of [https://github.com/OSGeo/grass/pull/5660 #5660] and [https://github.com/OSGeo/grass/issues/5659 #5659] about rgb/hsl bug and tests for help.&lt;br /&gt;
** Worked with Corey to adjust markdown links for new markdownlint rule, finishing up [https://github.com/OSGeo/grass/pull/5669 #5669]&lt;br /&gt;
** Created PRs: [https://github.com/OSGeo/grass/pull/5692 #5692], [https://github.com/OSGeo/grass/pull/5694 #5694], [https://github.com/OSGeo/grass/pull/5689 #5689]&lt;br /&gt;
* Wednesday May 21, 2025:&lt;br /&gt;
** Created a new set of GitHub rulesets for the required checks, applied with Vaclav. One of them is separated in order to increase velocity during the sprint&lt;br /&gt;
** Reviewed the branch protection rules for grass-addons repo with Vaclav. Creating rulesets will be possible after the sprint with the info collected.&lt;br /&gt;
** Reviewed the security reporting settings and secret scanning settings with Vaclav for the main grass repo.&lt;br /&gt;
** Got shown by Huidae Cho how to update the translation files, and reviewed Weblate settings. No settings changed, but a backup stored for 30 days was kept.&lt;br /&gt;
** Created a first implementation of a translation file update workflow&lt;br /&gt;
** Tested out the two NSIS installer PRs, the first one, for installing the VC runtime earlier doesn't work as expected, and after more research I don't know enough to fix it. The second PR with High-DPI improvement was correct and got merged [https://github.com/OSGeo/grass/pull/5685 #5685]&lt;br /&gt;
** Helped a student set up a grass installation on WSL with conda.&lt;br /&gt;
** PRs created: [https://github.com/OSGeo/grass/pull/5736 #5736], [https://github.com/OSGeo/grass/pull/5734 #5734]&lt;br /&gt;
** My PRs that got merged: [https://github.com/OSGeo/grass/pull/5685 #5685], [https://github.com/OSGeo/grass/pull/5341 #5341], [https://github.com/OSGeo/grass/pull/5689 #5689]&lt;br /&gt;
** Reviewed and merged multiple PRs, restarting failed required checks of the previous night.&lt;br /&gt;
&lt;br /&gt;
=== Laurent Courty ===&lt;br /&gt;
&lt;br /&gt;
* Objectives: An xarray backend for GRASS STRDS. Fixing related issues&lt;br /&gt;
* May 20&lt;br /&gt;
** Presented itzi&lt;br /&gt;
** Uploaded arm64 wheels to PyPI for MacOS and Linux ([https://pypi.org/project/itzi/#files])&lt;br /&gt;
** Discussed with other developers about issue #629&lt;br /&gt;
* May 21&lt;br /&gt;
** Uploaded xarray-grass to PyPI&lt;br /&gt;
** Added CI tests to xarray-grass&lt;br /&gt;
** Discussed with the group about the xarray-grass backend&lt;br /&gt;
** Discussed with the group about solving mapset switching in the temporal framework (issue #629)&lt;br /&gt;
** Created PR #5735 to address issue #629&lt;br /&gt;
* May 22&lt;br /&gt;
** Fix bug in PR #5735&lt;br /&gt;
&lt;br /&gt;
=== Robert S. Dzur | Bohannan Huston, Inc. ===&lt;br /&gt;
&lt;br /&gt;
* r.in.pdal&lt;br /&gt;
&lt;br /&gt;
=== David W. Farris | East Carolina University ===&lt;br /&gt;
&lt;br /&gt;
* A tool to calculate gravity terrain corrections&lt;br /&gt;
&lt;br /&gt;
=== Neel Ghoshal | NC State University ===&lt;br /&gt;
• LLM for helping users find tools&amp;lt;br&amp;gt;&lt;br /&gt;
5/19&amp;lt;br&amp;gt;&lt;br /&gt;
• Learnt how to PR (#5674)&amp;lt;br&amp;gt;&lt;br /&gt;
• Setup GRASS on system&amp;lt;br&amp;gt;&lt;br /&gt;
• Found small issue with compilation document&amp;lt;br&amp;gt;&lt;br /&gt;
• Discussed about the possible use case of LLM for helping users find tools&amp;lt;br&amp;gt;&lt;br /&gt;
5/20&amp;lt;br&amp;gt;&lt;br /&gt;
• Learnt about cookie cutter&amp;lt;br&amp;gt;&lt;br /&gt;
• Set up wsl on system&amp;lt;br&amp;gt;&lt;br /&gt;
• Compiled GRASS&amp;lt;br&amp;gt;&lt;br /&gt;
• Listed data sources for LLM training&amp;lt;br&amp;gt;&lt;br /&gt;
5/21&amp;lt;br&amp;gt;&lt;br /&gt;
• Extracted tool information from Markdown files&amp;lt;br&amp;gt;&lt;br /&gt;
• Started off with data cleaning&amp;lt;br&amp;gt;&lt;br /&gt;
5/22&amp;lt;br&amp;gt;&lt;br /&gt;
• Worked on LLM setup&amp;lt;br&amp;gt;&lt;br /&gt;
5/23&amp;lt;br&amp;gt;&lt;br /&gt;
• Ran and finetuned a basic test LLM model for extracted data&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Caitlin Haedrich | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* Event photographs, food coordination&lt;br /&gt;
* git/github mentoring&lt;br /&gt;
* GRASS mentoring&lt;br /&gt;
* Lightning Talk preparation&lt;br /&gt;
* Preparing workshop for [https://www.geomorphometry2025.org/ Geomorphometry2025]&lt;br /&gt;
&lt;br /&gt;
=== Brendan Harmon | Louisiana State University ===&lt;br /&gt;
&lt;br /&gt;
* Developing ([https://github.com/baharmon/r.earthworks r.earthworks]) addon &amp;amp; tutorials&lt;br /&gt;
* [https://github.com/baharmon?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
&lt;br /&gt;
=== Linda Karlovska | Czech Technical University in Prague ===&lt;br /&gt;
&lt;br /&gt;
* Fix uninitialized variables in DOutFile() method: ([https://github.com/OSGeo/grass/pull/5650 PR])&lt;br /&gt;
* Update figures related to GUI: ([https://github.com/OSGeo/grass/pull/5651  PR])&lt;br /&gt;
&lt;br /&gt;
Working on integration of the Jupyter notebooks to GUI (work for the whole week :-))&lt;br /&gt;
&lt;br /&gt;
=== Martin Landa | Czech Technical University in Prague ===&lt;br /&gt;
&lt;br /&gt;
* Tutorial: GISMentors courses updated ([https://github.com/OSGeo/grass-tutorials/pull/45 PR])&lt;br /&gt;
* libgis: G__usage_markdown() include tool label in metadata if defined ([https://github.com/OSGeo/grass/pull/5677 PR])&lt;br /&gt;
* PyGRASS: Module description property not defined always ([https://github.com/OSGeo/grass/pull/5681 PR])&lt;br /&gt;
* Website: OpenGeoLabs commercial support ([https://github.com/OSGeo/grass-website/pull/537 PR])&lt;br /&gt;
* v.select: create output also when no features found ([https://github.com/OSGeo/grass/pull/5696 PR])&lt;br /&gt;
* wxGUI: avoid creating nested list of errors (Graphical modeler) ([https://github.com/OSGeo/grass/pull/5700 PR])&lt;br /&gt;
* wxGUI/gmodeler: refactor - move ModelParamDialog to dialogs.py ([https://github.com/OSGeo/grass/pull/5715 PR])&lt;br /&gt;
* GUI: make Python editor dockable ([https://github.com/OSGeo/grass/pull/5733 PR])&lt;br /&gt;
* r.relief: module label changed to description ([https://github.com/OSGeo/grass/pull/5741 PR])&lt;br /&gt;
* GUI: propagate previously defined where option value ([https://github.com/OSGeo/grass/pull/5747 PR])&lt;br /&gt;
* GUI: always show 'Close dialog on finish' option ([https://github.com/OSGeo/grass/pull/5751 PR])&lt;br /&gt;
* GUI: do not remove parameter value on dialog update event ([https://github.com/OSGeo/grass/pull/5760 PR])&lt;br /&gt;
* documentation: add miscellaneous tools too full index (markdown) ([https://github.com/OSGeo/grass/pull/5761 PR])&lt;br /&gt;
&lt;br /&gt;
=== Nicklas Larsson | Hungarian National Museum ===&lt;br /&gt;
&lt;br /&gt;
Planned work: CMake build system; perhaps Conda recipe&lt;br /&gt;
&lt;br /&gt;
[https://github.com/nilason?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
&lt;br /&gt;
* Preparation for CMake build conforming to Filesystem Hierarchy Standard (FHS), resolving resource paths for both the current and FHS in code. In collaboration with Huidae Cho and with important input from Vaclav Petras ([https://github.com/OSGeo/grass/pull/5630 PR5630])&lt;br /&gt;
&lt;br /&gt;
* Helped young students in build configuration and debugging techniques.&lt;br /&gt;
&lt;br /&gt;
* Discussion with several participants on solutions to publish a GRASS package to Conda-forge.&lt;br /&gt;
&lt;br /&gt;
=== Chung-Yuan Liang ===&lt;br /&gt;
&lt;br /&gt;
* parallelize some modules, improve testing&lt;br /&gt;
&lt;br /&gt;
=== Andres Lucero | Bohannan Huston Inc ===&lt;br /&gt;
&lt;br /&gt;
* r.in.pdal&lt;br /&gt;
&lt;br /&gt;
=== Alen Mangafić | Geodetic Institute of Slovenia ===&lt;br /&gt;
Monday May 19 &lt;br /&gt;
* Presentationf of i.hyper, add-on which offers hyperspectral data support in GRASS.&lt;br /&gt;
* Architecture of the multi-module addon&lt;br /&gt;
Tuesday May 20&lt;br /&gt;
* i.hyper.import module: importing EnMAP imagery as 3D raster map&lt;br /&gt;
* i.hyper.preproc module: draft&lt;br /&gt;
Wednesday May 21&lt;br /&gt;
* fixing the i.hyper.import module&lt;br /&gt;
* i.hyper.preproc module: implementing Savitzky-Golay filter&lt;br /&gt;
&lt;br /&gt;
=== Helena Mitasova | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* standardized data set and related tutorials&lt;br /&gt;
* documentation for interpolation tools&lt;br /&gt;
* collaborate/coordinate/discuss hydrology tools (analytics, simulations, soil properties inputs)&lt;br /&gt;
* assist with wiki cleanup if needed&lt;br /&gt;
&lt;br /&gt;
Monday May 19&lt;br /&gt;
* investigated issues with v.surf.rst documentation in source code, tested and identified fixes needed&lt;br /&gt;
* discussed coupling GRASS with Blender versus potree for 3D object rendering with Brendan, Anna and Caitlin (for TL activities and other applications)&lt;br /&gt;
* discussed soil data for runoff estimation and other hydro topics, to be worked on on day 2&lt;br /&gt;
&lt;br /&gt;
Tuesday May 20&lt;br /&gt;
* worked with Corey on fixing v.surf.rst documentation, discussed ideas for improvements and for documentation / tutorial for cross-valiadation&lt;br /&gt;
* discussed suggestions for graphics and examples to be inculded in v.surf.rst docs with Michelle &lt;br /&gt;
* discussed new developments in hydrology tools&lt;br /&gt;
* experimented with basic/standardized versus specialized data sets for documentation and tutorials&lt;br /&gt;
&lt;br /&gt;
Wednesday May 21&lt;br /&gt;
* explored existing tutorials, emailed Paulo about finishing the one on interpolation&lt;br /&gt;
* tested NM basic data set with GIS582 class assignment (very cool)&lt;br /&gt;
* discussed design of Jnotebooks that would work with various localized data with Caitlin&lt;br /&gt;
&lt;br /&gt;
Thursday May 22&lt;br /&gt;
* discussed needed capabilities for a more advanced color ramp processing tool with Brendan&lt;br /&gt;
* added further ideas to basic dataset document after talking to Vero - we just need standardized names for the localized tutorials to work&lt;br /&gt;
* discussed infiltration fix pull request for r.sim.water with Anna - more work is needed&lt;br /&gt;
&lt;br /&gt;
=== Michael Mulqueen | MassGIS ===&lt;br /&gt;
&lt;br /&gt;
* depth to water, hydro from lidar, etc&lt;br /&gt;
&lt;br /&gt;
=== Māris Nartišs ===&lt;br /&gt;
&lt;br /&gt;
* Taking photos of the event&lt;br /&gt;
* Introduced a new GRASS core module r.smooth.edgepreserve&lt;br /&gt;
* Discussed architecture of hyperspectral data import and per-processing tool&lt;br /&gt;
* Discussed testing and organizing AI modules downloading data from internet&lt;br /&gt;
* Prepared and gave a presentation on code preparation for translations (best practice)&lt;br /&gt;
* Debugging translation file updating with Edouard&lt;br /&gt;
* Changed default multiprocessor setting to always use maximum number of available threads&lt;br /&gt;
* Unified max process setting handling in all modules that use default parser parameter&lt;br /&gt;
* Discovered and supervised fixing a bug in r.univar parallelization code&lt;br /&gt;
* Discussing requirements for raster data reading parallelization (GRASS 9)&lt;br /&gt;
&lt;br /&gt;
=== Ondřej Pešek | Czech Technical University in Prague ===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/pesekon2?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
* Refactoring, fixing, improving, discussing g.gui.gmodeler&lt;br /&gt;
* Discussing hyperspectral with Alen Mangafic&lt;br /&gt;
* Discussing jupyter in single GUI with Linda Karlovska&lt;br /&gt;
* PyGRASS&lt;br /&gt;
* Docs&lt;br /&gt;
* CQ&lt;br /&gt;
* Reviewing PRs, PR archeology&lt;br /&gt;
&lt;br /&gt;
=== Vaclav (Vashek) Petras | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/wenzeslaus?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
* My focus: Getting feedback and ideas for computational engine use case, APIs, funding.&lt;br /&gt;
* Summit organizing&lt;br /&gt;
* Implementing rebranding on GitHub (repos, teams)&lt;br /&gt;
* Feedback session on project image&lt;br /&gt;
* Feedback session on easier access to tools&lt;br /&gt;
* Discussed LLMs with Neel Ghoshal, Riya&lt;br /&gt;
* Discussed session setupp  Martin Landa&lt;br /&gt;
* Discussed conda with Nicklas Larsson&lt;br /&gt;
* Discussed hyperspectral with Alen Mangafić, Veronica Andreo, and Anna Petrasova&lt;br /&gt;
* Discussed code for new smoothing tool, integer overflows, translations with Māris Nartišs&lt;br /&gt;
* Compared setup of GRASS session and project in fasterRaster, QGIS, and GRASS itself with Adam Smith&lt;br /&gt;
* Discussed potential of Pixi for packaging or compilation with Gregory Power&lt;br /&gt;
* Discussed itzi model distribution issues with Laurent Courty&lt;br /&gt;
* Discussed r.horizon parallelization with Chung-Yuan Liang and Anna Petrasova&lt;br /&gt;
* Answered coding and setup questions for Neel Ghoshal, Abdullah Azzam, and Alen Mangafić&lt;br /&gt;
&lt;br /&gt;
=== Anna Petrasova | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/petrasovaa?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
* plan: mentoring, documentation&lt;br /&gt;
* Monday&lt;br /&gt;
** discussing hyperspectral implementation with Alen&lt;br /&gt;
** helping mentee David Farris implementing his gravity correction addon&lt;br /&gt;
* Tuesday&lt;br /&gt;
** delivered intro to creating an addon, documentation&lt;br /&gt;
** mentoring Alen, Abdullah&lt;br /&gt;
** discussing bug in i.his.rgb with Jayneel&lt;br /&gt;
** reviews&lt;br /&gt;
* Wednesday&lt;br /&gt;
** discuss and demonstrate tutorials page&lt;br /&gt;
** mentoring Alen, Jayneel&lt;br /&gt;
** call with GSoC student&lt;br /&gt;
* Thursday&lt;br /&gt;
** lightning talk&lt;br /&gt;
** discussing openmp implementations for r.horizon, r.mapcalc, default thread number&lt;br /&gt;
* Friday&lt;br /&gt;
** grass repo README&lt;br /&gt;
** reviews&lt;br /&gt;
&lt;br /&gt;
=== Gregory Power | Town of Cary ===&lt;br /&gt;
&lt;br /&gt;
* Documentation&lt;br /&gt;
&lt;br /&gt;
=== Pratikshya Regmi | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* Event photographs and videos&lt;br /&gt;
* Opened a pull request to change GRASS GIS to GRASS on the documentation (this was my first contribution to GRASS)&lt;br /&gt;
* Worked on preparing the mock document for LLM RAG&lt;br /&gt;
* Wrote a tutorial to  Visualize Contour Lines with a Color Gradient with Folium.&lt;br /&gt;
&lt;br /&gt;
=== Riya | Indian Institute of Technology, Roorkee ===&lt;br /&gt;
&lt;br /&gt;
* I am currently thinking of developing an AI Agent for the grass jupyter library which will help the users with mathematical calculations done in GIS.&lt;br /&gt;
&lt;br /&gt;
=== Jayneel Shah | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* improve the test coverage of imagery modules.&lt;br /&gt;
&lt;br /&gt;
=== Krishna Prasad Sheshadri ===&lt;br /&gt;
&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
=== Adam Smith | Missouri Botanical Garden ===&lt;br /&gt;
&lt;br /&gt;
Overall: R package fasterRaster (fielding bug reports, adding features)&lt;br /&gt;
&lt;br /&gt;
Monday:&lt;br /&gt;
* Assessed scope of fasterRaster issue [https://github.com/adamlilith/fasterRaster/issues/83 83]&lt;br /&gt;
&lt;br /&gt;
Tuesday:&lt;br /&gt;
* Created a PR for fasterRaster tutorial on GRASS tutorials page.&lt;br /&gt;
* Improved handling of addons, including autodetect and installing when needed, enabling easier creation of addon-dependent methods.&lt;br /&gt;
* Presented *fasterRaster* package to group.&lt;br /&gt;
&lt;br /&gt;
Wednesday:&lt;br /&gt;
* Created fasterRaster methods for neighborhood matrices, terrain ruggedness index, and multivariate environmental similarity&lt;br /&gt;
&lt;br /&gt;
=== Michelle (Mimi) Stephens | ERDC ===&lt;br /&gt;
&lt;br /&gt;
* Previous work: coupling R and Python scripts for computational analysis in GRASS.&lt;br /&gt;
* Current work: Running through GRASS commands to create visual outputs that can be added to the new GRASS 8.5 manual pages - r.mapcalc, v.surf.rst, examples with topographic parameters, LinkedIn requests.&lt;br /&gt;
* Tutorial for Windows users to install a WSL2 Linux environment. Creates a conda environment with wxpython, installs GRASS without requiring OSGeo installer. Fast, simple, and minimal install. Resolves various issues encountered in government due to automatic Windows updates, cyber security, vpn routing, user preference, and isolated distro can be completely removed if needed. -&amp;gt; Motivation for WSL2 - wanted more hands-on practice with Unix command line tools for HPC; Docker not allowed, but miniforge and Apptainer are on ERDC's HPC; able to install grass via command line (only on internet-capable HPC systems); AND - For other users that always wanted a more native feel to their grass instance!&lt;br /&gt;
* Future work: Presenting on GRASS in JUNE at CERLCON.&lt;br /&gt;
&lt;br /&gt;
=== Corey White | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* JSON, mentoring&lt;br /&gt;
&lt;br /&gt;
=== Doug Newcomb | Semi Retired Cartographer ===&lt;br /&gt;
&lt;br /&gt;
* Discussed hydroflattening method&lt;br /&gt;
* Discussed direct point cloud input to v.surf.rst&lt;br /&gt;
* Learning git procedures by updating branding (GRASS GIS to GRASS)  for raster commands&lt;br /&gt;
Tuesday&lt;br /&gt;
* Continued updating branding for raster commands&lt;br /&gt;
* Started working on tutorial for r.hydro.flatten&lt;br /&gt;
Wednesday&lt;br /&gt;
* Finalized Data set for for r.hydro.flatten&lt;br /&gt;
* Worked on Lightning Talk for Thursday&lt;br /&gt;
Thursday&lt;br /&gt;
* Continued work on r.hydro.flatten tutorial&lt;br /&gt;
* Gave lightning talk on r.hydro.flatten&lt;br /&gt;
Friday&lt;br /&gt;
* Worked with Rob Dzur on r.hydro.flatten workflow.&lt;br /&gt;
* Explored the possibility of using r.resample.bspline for areas with high standard deviation ranges.&lt;br /&gt;
&lt;br /&gt;
* Worked with Rob Dzur on identifying workflow for implimenting USGS GMI, https://www.usgs.gov/ngp-standards-and-specifications/elevation-derived-hydrography-data-acquisition-specifications-16 ,  in GRASS and connected Rob with USGS contact for GMI.&lt;br /&gt;
&lt;br /&gt;
=== Natalie Trso | Balance Geo LLC ===&lt;br /&gt;
&lt;br /&gt;
* r.sim.water&lt;br /&gt;
&lt;br /&gt;
== Guests and remote participants ==&lt;br /&gt;
&lt;br /&gt;
=== Luís de Sousa | University of Lisbon ===&lt;br /&gt;
&lt;br /&gt;
* Review outstanding PRs&lt;br /&gt;
* Prepare GRASS sessions for the OpenGeoHub Summer School&lt;br /&gt;
&lt;br /&gt;
=== Markus Neteler | mundialis ===&lt;br /&gt;
&lt;br /&gt;
* Support full automation of new GRASS manual pages deployment on server (upload artifacts from GitHub to OSGeo servers (grass and download))&lt;br /&gt;
* Source code license documentation: Using SPDX License IDs ({{GH-Issues|4190}})&lt;br /&gt;
* Support Wiki cleanup&lt;br /&gt;
* [https://github.com/neteler?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub contributions]&lt;br /&gt;
&lt;br /&gt;
=== Nishant Bansal | Indian Institute of Technology, Varanasi ===&lt;br /&gt;
&lt;br /&gt;
* Review the previous work on JSON during last year’s GSoC, including enhancements and the addition of JSON output support to other modules.&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Talk:GRASS_Developer_Summit_Raleigh_2025&amp;diff=28407</id>
		<title>Talk:GRASS Developer Summit Raleigh 2025</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Talk:GRASS_Developer_Summit_Raleigh_2025&amp;diff=28407"/>
		<updated>2025-05-24T03:00:41Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: /* Day 6, Saturday, May 24 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{toc|right}}&lt;br /&gt;
&lt;br /&gt;
Quick links: [[GRASS Developer Summit Raleigh 2025|Meeting page]] | [[#Participant_reports|Reports]]  |  [[GRASS_Developer_Summit_Raleigh_2025#Sponsors|Sponsors]]&lt;br /&gt;
&lt;br /&gt;
== Organizing Team ==&lt;br /&gt;
&lt;br /&gt;
* Initial planning: Vaclav Petras, Anna Petrasova, Veronica Andreo, Corey White, Lois Utt, Sarah White, Doug Newcomb, Huidae Cho, Veronica Andreo ([[GRASS_Developer_Summit_Raleigh_2025#Organizing_Committee|Organizing Committee]])&lt;br /&gt;
* Budget: Vaclav Petras, Lois Utt, Anna Petrasova&lt;br /&gt;
* Raising support: Helena Mitasova, Vaclav Petras, Anna Petrasova, Michael Barton, Giuseppe Amatulli ([[NSF POSE Project 2023-2025 Timeline|NSF POSE project]] proposal authors)&lt;br /&gt;
* Travel: Lois Utt&lt;br /&gt;
* Venue: Vaclav Petras, Lois Utt&lt;br /&gt;
* Meals: Lois Utt, Sarah White, Vaclav Petras, Corey White, Anna Petrasova&lt;br /&gt;
* Agenda: Vaclav Petras, Huidae Cho, Anna Petrasova&lt;br /&gt;
* Wiki page: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Swag: Sarah White, Vaclav Petras, Anna Petrasova, Corey White&lt;br /&gt;
* Promotion, invitations, and social media: Vaclav Petras, Sarah White, Corey White, John Vogler&lt;br /&gt;
* Lightning talks organization: Vaclav Petras, Zachary Arcaro, John Vogler&lt;br /&gt;
* Lightning talk speakers: Vaclav Petras (welcome), Markus Metz and Markus Neteler (talk presented by Vaclav Petras), Anna Petrasova, Veronica Andreo, Robert Dzur, Nick Brady, Huidae Cho, Gregory Power, Doug Newcomb, Caitlin Haedrich&lt;br /&gt;
* Photography: Caitlin Haedrich, Māris Nartišs, Pratikshya Regmi&lt;br /&gt;
* Portrait photography: Riya, Caitlin Haedrich, Natalie Trso&lt;br /&gt;
&lt;br /&gt;
== Detailed Schedule ==&lt;br /&gt;
&lt;br /&gt;
=== Day 1, Monday, May 19 ===&lt;br /&gt;
&lt;br /&gt;
Location: Talley Student Union, 2610 Cates Ave ([https://www.google.com/maps/place/Talley+Student+Union/data=!4m2!3m1!1s0x0:0x38989377c96adef0?sa=X&amp;amp;ved=1t:2428&amp;amp;ictx=111 map])&lt;br /&gt;
&lt;br /&gt;
Room: 5101-Executive Board Room&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''Contributing to GRASS. Getting started. Is it easy to contribute?''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:30-9:00 || Breakfast || Catered breakfast on site. Meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || What to expect from the event, contributing to GRASS using Git and GitHub, making your first contribution.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || i.hyper: Integrating Hyperspectral Imagery Processing into GRASS - Alen Mangafić&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || &lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Project Image - Vaclav Petras&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || Catered food on site.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || We will walk to [https://www.trophybrewing.com/brewing-pizza Trophy Brewing &amp;amp; Pizza] ([https://maps.app.goo.gl/ggnZ7EvXbWqDUmvP9 directions], 30 min walk from Talley)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 2, Tuesday, May 20 ===&lt;br /&gt;
&lt;br /&gt;
Location: Talley Student Union, 2610 Cates Ave ([https://www.google.com/maps/place/Talley+Student+Union/data=!4m2!3m1!1s0x0:0x38989377c96adef0?sa=X&amp;amp;ved=1t:2428&amp;amp;ictx=111 map])&lt;br /&gt;
&lt;br /&gt;
Room: 5101-Executive Board Room&lt;br /&gt;
&lt;br /&gt;
Highlighted topics: ''Hydrology and Interfacing with R and QGIS (gathering user feedback, testing, discussing with developers, developing action items)''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:30-9:00 || Breakfast || Breakfast on site. Start the day, meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || Introduction to writing GRASS tools, program for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || fasterRaster R package - Adam Smith&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Hydography90m + Geocomputation Courses - Giuseppe&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Flood modelling with grass and itzi ([https://itzi.org]) - Laurent Courty&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || [https://maps.app.goo.gl/womSkce9DrE8CTnR8 Case dining hall]&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || [https://maps.app.goo.gl/CQiWoCAQNt1ymZkb7 Served in Jordan Hall at the Center for Geospatial Analytics], evaluate the day's accomplishments, plan and prioritize for the next few days.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 3, Wednesday, May 21 ===&lt;br /&gt;
&lt;br /&gt;
Location: Talley Student Union, 2610 Cates Ave ([https://www.google.com/maps/place/Talley+Student+Union/data=!4m2!3m1!1s0x0:0x38989377c96adef0?sa=X&amp;amp;ved=1t:2428&amp;amp;ictx=111 map])&lt;br /&gt;
&lt;br /&gt;
Room: 5101-Executive Board Room&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''Non-coding contributions, natural language translation, and internationalization.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 7:00-9:00 || Breakfast || [https://maps.app.goo.gl/eZ8VK8Mx6TjMt9NP8 Case dining hall]&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || Introduction to non-coding contributions, tutorials, contributing examples, natural language translation and internationalization (procedures, glossaries, code customization, translation).&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || Easier access to GRASS tools - Vaclav Petras&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || &lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || GRASS backend for xarray and temporal framework global variables ([https://github.com/OSGeo/grass/issues/629]) - Laurent Courty&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || Served on site. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || [https://maps.app.goo.gl/1E39eySMVaxYJUUS8 Picnic at Pullen Park, shelter #3. In case of bad weather, dinner at the Center for Geospatial Analytics.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 4, Thursday, May 22 ===&lt;br /&gt;
&lt;br /&gt;
Location: Center for Geospatial Analytics, Jordan Hall, 2800 Faucette Drive ([https://www.google.com/maps/search/Jordan+Hall/@35.7816832,-78.6772765,18z/data=!3m1!4b1?entry=ttu&amp;amp;g_ep=EgoyMDI1MDQyMC4wIKXMDSoJLDEwMjExNDUzSAFQAw%3D%3D map])&lt;br /&gt;
&lt;br /&gt;
Room: 5103 (straight from the two elevators, at the end of the hallway)&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''Project vision and computational engine use case.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:00-9:00 || Breakfast || On site. Start the day, meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || Project vision and the computational engine use case (missing features, documentation, user groups).&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || NSF POSE I-Corps Interviews - Corey White&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback session || YAIT - Yet Another Interface to Tools - Vaclav Petras &lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback session || Modernizing Color Tables (Brendan)&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || On site. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-16:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 16:00-17:00 || Lightning talks || Fast-paced talks, showcasing applications of GRASS, room 5111.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Reception || Connect with researchers, government professionals, and industry collaborators, rooms 5111 and 5119.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 5, Friday, May 23 ===&lt;br /&gt;
&lt;br /&gt;
Location: James B. Hunt Jr. Library, 1070 Partners Way - Centennial Campus ([https://www.google.com/maps/place/James+B.+Hunt+Jr.+Library/@35.7693736,-78.679167,17z/data=!3m1!5s0x89acf5759f5a31df:0xc547454a0151c440!4m10!1m2!2m1!1shunt+library!3m6!1s0x89acf5759f591f41:0xbe0266269ce37f59!8m2!3d35.7693215!4d-78.6764409!15sCgxodW50IGxpYnJhcnlaDiIMaHVudCBsaWJyYXJ5kgESdW5pdmVyc2l0eV9saWJyYXJ54AEA!16s%2Fm%2F0r4wjf_?entry=ttu&amp;amp;g_ep=EgoyMDI1MDQyMC4wIKXMDSoJLDEwMjExNDUzSAFQAw%3D%3D map])&lt;br /&gt;
&lt;br /&gt;
Room: Faculty Research Commons - 5100 ([https://www.lib.ncsu.edu/hunt/map floor plan])&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''GRASS project's future course.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 7:45-8:15 || Breakfast || '''Hotel Aloft (2nd floor).''' Search for Lois!&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || GRASS project's future course.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-12:00 || PSC meeting || Project Steering Committee meets (public).&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Rescheduled for Saturday&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || Walk to [https://maps.app.goo.gl/kHVHY62QxTd6wHKd9 On the Oval Culinary Creations]. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || Dinner on your own. Corey White will organize trip to downtown. Bus 41 from Hunt library to hotel and then walk.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 6, Saturday, May 24 ===&lt;br /&gt;
&lt;br /&gt;
Location: James B. Hunt Jr. Library, 1070 Partners Way - Centennial Campus ([https://www.google.com/maps/place/James+B.+Hunt+Jr.+Library/@35.7693736,-78.679167,17z/data=!3m1!5s0x89acf5759f5a31df:0xc547454a0151c440!4m10!1m2!2m1!1shunt+library!3m6!1s0x89acf5759f591f41:0xbe0266269ce37f59!8m2!3d35.7693215!4d-78.6764409!15sCgxodW50IGxpYnJhcnlaDiIMaHVudCBsaWJyYXJ5kgESdW5pdmVyc2l0eV9saWJyYXJ54AEA!16s%2Fm%2F0r4wjf_?entry=ttu&amp;amp;g_ep=EgoyMDI1MDQyMC4wIKXMDSoJLDEwMjExNDUzSAFQAw%3D%3D map])&lt;br /&gt;
&lt;br /&gt;
'''Take bus 41 at 8.30 from Aloft.'''&lt;br /&gt;
&lt;br /&gt;
Room: Faculty Research Commons - 5100 ([https://www.lib.ncsu.edu/hunt/map floor plan])&lt;br /&gt;
&lt;br /&gt;
Highlighted topics: ''NSF POSE project evaluation.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:30-10:00 || Breakfast || We will have breakfast (yogurt, granola, pastries) at [https://maps.app.goo.gl/EwzNxeovv4rTivjK9 Lake Raleigh]. Feel free to bring your own coffee.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || Your topic here (10-minute presentation and 10-minute discussion)&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || GRASS tools: core and additional functionality (MartinL)&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || Pizza. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || Player's Retreat. &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Daily tasks for participants ==&lt;br /&gt;
&lt;br /&gt;
* List all the things you are working on in the Participant reports section below. Update the list each day. Include things you work on with other people.&lt;br /&gt;
* If you want to discuss something with the whole group, add yourself to a Self-organized feedback sessions slot in the schedule above or tell Vaclav (Vashek) Petras.&lt;br /&gt;
* For people with triage access and above: If you are or will be working on an issue or on a PR which is not originally submitted by you, assign yourself to the issue or PR. (You can unassign yourself later if you change your mind.)&lt;br /&gt;
&lt;br /&gt;
== Participant reports ==&lt;br /&gt;
&lt;br /&gt;
Per-person reports from the meeting.&lt;br /&gt;
&lt;br /&gt;
=== Giuseppe Amatulli | Yale University ===&lt;br /&gt;
&lt;br /&gt;
* Testing r.watershed and r.stream.* for handling large datasets&lt;br /&gt;
* Running r.flowaccumulation at global level using water direction from hydrography90m &lt;br /&gt;
* Preparing the grass tutorial material for the https://www.geomorphometry2025.org/ conference&lt;br /&gt;
&lt;br /&gt;
=== Veronica Andreo | CONICET - Instituto Gulich ===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/veroandreo?tab=overview&amp;amp;from=2025-05-12&amp;amp;to=2025-05-24 GitHub contributions]&lt;br /&gt;
* Enhanced the website footer.&lt;br /&gt;
* Sync icons on the Tutorials website footer to those on the main website.&lt;br /&gt;
* Fix descriptions and their display on the tutorials website.&lt;br /&gt;
* Fix GRASS page on OSGeo website [https://www.osgeo.org/projects/grass-gis/] &lt;br /&gt;
** Changed logo, removed GIS from the name, fixed old links.&lt;br /&gt;
* Social media posts.&lt;br /&gt;
* Discussion about hyperspectral with Alen and Anna.&lt;br /&gt;
* Expand the GRASS acronym on the home page.&lt;br /&gt;
* Remove GIS from GRASS name on the website.&lt;br /&gt;
* Review tutorials by Huidae and Adam Smith.&lt;br /&gt;
* Add external tutorials by Huidae and the one from FOSS4G 2024.&lt;br /&gt;
* Started adding the time series tutorials.&lt;br /&gt;
* Add lightbox class in get-started tutorials so images can be clicked on.&lt;br /&gt;
* GRASS PSC admin stuff.&lt;br /&gt;
* Participated of the PSC meeting.&lt;br /&gt;
* Talk to Tonis Kardi from FOSS4G EU LOC to have a &amp;quot;State of GRASS&amp;quot; talk in the program. Alen will be presenting.&lt;br /&gt;
* Gave a lightning talk: GRASS-fed species distribution models.&lt;br /&gt;
* Discussed with Corey and Mimi about tutorials.&lt;br /&gt;
&lt;br /&gt;
=== Abdullah Azzam | New Mexico State University ===&lt;br /&gt;
&lt;br /&gt;
* Created first PR; fixed broken links on the website [https://github.com/OSGeo/grass-website/pull/538 #538]&lt;br /&gt;
* Pushed a new GRASS Addon ''r.curvenumber'' [https://github.com/OSGeo/grass-addons/pull/1403 #1403]&lt;br /&gt;
&lt;br /&gt;
=== Michael Barton | Arizona State University ===&lt;br /&gt;
&lt;br /&gt;
* POSE related activities&lt;br /&gt;
&lt;br /&gt;
=== Laura Belica | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* have been working on developing a workflow-tool tutorial template that facilitates GRASS learners who tend to 'jump in' or have a 'choose your own adventure' approach to learning GRASS (i.e., want to use their data for their study area for their objective from the start).  The structure of the tutorial template is a concise, basic, general description/instructions of the workflow with optional links to pertinent explanatory/deeper dive content  (e.g.,  plain language explainers of the tool, options, defaults, etc.) in a variety of formats (e.g., captioned images, short tool demo videos (30 sec to 2 min)) in addition to the more comprehensive resources available (e.g. documentation, examples, tutorials).  The main motivation for this approach is to help new and occasional GRASS users avoid some of the common pitfalls and to learn how to find workarounds for some of the unanticipated challenges they may encounter with their specific datasets or use cases so that they can learn as they go.  Another motivation for this approach is to facilitate the translation, extension, and updating of workflow tutorials by the community over time (e.g., providing audio and closed captioning for one of the tool-demo videos in another language, replacing an outdated GUI demo with one for the current release, or incorporating a new add-on as an option in the workflow).&lt;br /&gt;
&lt;br /&gt;
* my focus this week is on developing a draft/test tutorial (in Quarto) for a standard hydrological modelling workflow that begins with the crucial pre-work of how to figure out the appropriate project/location, etc. as well as considerations of some of the downstream impacts of resolution, extent, region etc. It may not be ready for sharing by the end of the week, but suggestions and advice are welcomed in advance.&lt;br /&gt;
&lt;br /&gt;
19 May&lt;br /&gt;
* discussed a novice user issue with 'moving' vector data from one location to another with Vero and learned a neat GUI option &lt;br /&gt;
* revised and added workflow tutorial text&lt;br /&gt;
&lt;br /&gt;
=== Shonil Sateesh Bhide | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* CI optimization&lt;br /&gt;
&lt;br /&gt;
=== Huidae Cho | New Mexico State University ===&lt;br /&gt;
&lt;br /&gt;
* CMake, conda, CI, Mentoring&lt;br /&gt;
&lt;br /&gt;
Monday 5/19&lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/5680 CMake: Recognize conda installation path at runtime]: Replaced by [https://github.com/HuidaeCho/grass-conda/blob/master/recipe/post-link.sh conda post-link.sh]&lt;br /&gt;
* CMake and Conda Testing on Linux&lt;br /&gt;
* CMake Testing on Windows&lt;br /&gt;
* Mentoring: Chung-Yuan, Abdullah&lt;br /&gt;
&lt;br /&gt;
Tuesday 5/20&lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/5712 CMake: Define custom complex types for MSVC LAPACKE]&lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/5713 CMake: Fix build output directories for MSVC]&lt;br /&gt;
* CMake and Conda Testing on Linux&lt;br /&gt;
* CMake Testing on Windows&lt;br /&gt;
&lt;br /&gt;
Wednesday 5/21&lt;br /&gt;
* Translation Talk&lt;br /&gt;
* Translation Discussion with Edouard&lt;br /&gt;
* Flow Direction Meeting with Ondrej, Ondrej's Student, Martin, and Markus Metz&lt;br /&gt;
* CMake and Conda Testing on Linux&lt;br /&gt;
* CMake Testing on Windows&lt;br /&gt;
* Mentoring: Chung-Yuan, Abdullah&lt;br /&gt;
&lt;br /&gt;
Thursday 5/22&lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/5740 CMake: Fix the parameter is incorrect: . error for MSVC]&lt;br /&gt;
* Lightning Talk&lt;br /&gt;
* CMake and Conda Testing on Linux&lt;br /&gt;
* CMake Testing on Windows&lt;br /&gt;
* CI: Discussion with Edouard&lt;br /&gt;
* Mentoring: Chung-Yuan, Abdullah&lt;br /&gt;
&lt;br /&gt;
=== Edouard Choinière ===&lt;br /&gt;
&lt;br /&gt;
* Quick ideas, way too much for a week: Helping others (may take a reasonable part of the time), managing CI, setting up localization template updating workflow, backporting tool? Pytest/coverage improvements? Discuss and design other projects, to work on during the year. Open to change on other priorities once there, anything that is useful. Maybe make a little progress on high dpi GUI, especially on Windows.&lt;br /&gt;
&lt;br /&gt;
* Weekend before sprint:&lt;br /&gt;
** Clear up Renovate PRs to not use CI time during the sprint, reviewing and merging: [https://github.com/OSGeo/grass/pull/5664 #5664], [https://github.com/OSGeo/grass/pull/5665 #5665], [https://github.com/OSGeo/grass/pull/5666 #5666], [https://github.com/OSGeo/grass/pull/5667 #5667], [https://github.com/OSGeo/grass/pull/5668 #5668]&lt;br /&gt;
** PR to avoid some CI run time for the sprint: [https://github.com/OSGeo/grass/pull/5670 #5670]&lt;br /&gt;
** Reviewed open PRs for PRs that were mergeable before the sprint, updated outdated PRs to avoid having it needing CI time during sprint. Only ended up merging [https://github.com/OSGeo/grass/pull/5658 #5658], but another reviewed one that might still need changes: [https://github.com/OSGeo/grass/pull/5628 #5628]&lt;br /&gt;
* Monday May 19, 2025:&lt;br /&gt;
** PR got merged: [https://github.com/OSGeo/grass/pull/5670 #5670],[https://github.com/OSGeo/grass/pull/5550 #5550]&lt;br /&gt;
** Reviewed PRs: [https://github.com/OSGeo/grass/pull/5671 #5671], [https://github.com/OSGeo/grass/pull/5672 #5672]&lt;br /&gt;
** Discussions:&lt;br /&gt;
*** Shonil Sateesh Bhid &amp;amp; Shuham on their CI &amp;amp; pytest work and project.&lt;br /&gt;
*** Māris Nartišs about a potential issue and improvement for it. Will be discussed in the security reporting tab, also allowing to test the security vulnerability reporting process. + Research on existing solutions&lt;br /&gt;
** Reviewed: [https://github.com/OSGeo/grass/pull/5682 #5682], [https://github.com/OSGeo/grass/pull/5660 #5660],&lt;br /&gt;
** Reviewed, edited and merged: [https://github.com/OSGeo/grass/pull/3672 #3672]&lt;br /&gt;
** Discussed/helped user for: [https://github.com/OSGeo/grass/pull/5678 #5678] and [https://github.com/OSGeo/grass/pull/5684 #5684]&lt;br /&gt;
** Long discussion and vision planning for windows scripting with Vaclav, concerning [https://github.com/OSGeo/grass/pull/5624 #5624]. Tested alternatives and tried the consequences of that PR. This older PR finally got merged.&lt;br /&gt;
** Created PRs for NSIS installer: [https://github.com/OSGeo/grass/pull/5685 #5685] and also [https://github.com/OSGeo/grass/pull/5686 #5686], which should address [https://github.com/OSGeo/grass/issues/5663 #5663]. Still needs to test it.&lt;br /&gt;
** Agreed on convention for titles with Vaclav, unblocking [https://github.com/OSGeo/grass/pull/5341 #5341]&lt;br /&gt;
** Found a name with Ondrej and finally merged older PRs of an external contributor [https://github.com/OSGeo/grass/pull/5473 #5473] and [https://github.com/OSGeo/grass/pull/5474 #5474]&lt;br /&gt;
* Thursday May 20, 2025:&lt;br /&gt;
** Reviewed: [https://github.com/OSGeo/grass/pull/5695 #5695]&lt;br /&gt;
** Merged PRs: [https://github.com/OSGeo/grass/pull/5673 #5673], [https://github.com/OSGeo/grass/pull/5691 #5691], [https://github.com/OSGeo/grass/pull/5690 #5690], [https://github.com/OSGeo/grass/pull/5684 #5684],&lt;br /&gt;
** Discussed with author of [https://github.com/OSGeo/grass/pull/5660 #5660] and [https://github.com/OSGeo/grass/issues/5659 #5659] about rgb/hsl bug and tests for help.&lt;br /&gt;
** Worked with Corey to adjust markdown links for new markdownlint rule, finishing up [https://github.com/OSGeo/grass/pull/5669 #5669]&lt;br /&gt;
** Created PRs: [https://github.com/OSGeo/grass/pull/5692 #5692], [https://github.com/OSGeo/grass/pull/5694 #5694], [https://github.com/OSGeo/grass/pull/5689 #5689]&lt;br /&gt;
* Wednesday May 21, 2025:&lt;br /&gt;
** Created a new set of GitHub rulesets for the required checks, applied with Vaclav. One of them is separated in order to increase velocity during the sprint&lt;br /&gt;
** Reviewed the branch protection rules for grass-addons repo with Vaclav. Creating rulesets will be possible after the sprint with the info collected.&lt;br /&gt;
** Reviewed the security reporting settings and secret scanning settings with Vaclav for the main grass repo.&lt;br /&gt;
** Got shown by Huidae Cho how to update the translation files, and reviewed Weblate settings. No settings changed, but a backup stored for 30 days was kept.&lt;br /&gt;
** Created a first implementation of a translation file update workflow&lt;br /&gt;
** Tested out the two NSIS installer PRs, the first one, for installing the VC runtime earlier doesn't work as expected, and after more research I don't know enough to fix it. The second PR with High-DPI improvement was correct and got merged [https://github.com/OSGeo/grass/pull/5685 #5685]&lt;br /&gt;
** Helped a student set up a grass installation on WSL with conda.&lt;br /&gt;
** PRs created: [https://github.com/OSGeo/grass/pull/5736 #5736], [https://github.com/OSGeo/grass/pull/5734 #5734]&lt;br /&gt;
** My PRs that got merged: [https://github.com/OSGeo/grass/pull/5685 #5685], [https://github.com/OSGeo/grass/pull/5341 #5341], [https://github.com/OSGeo/grass/pull/5689 #5689]&lt;br /&gt;
** Reviewed and merged multiple PRs, restarting failed required checks of the previous night.&lt;br /&gt;
&lt;br /&gt;
=== Laurent Courty ===&lt;br /&gt;
&lt;br /&gt;
* Objectives: An xarray backend for GRASS STRDS. Fixing related issues&lt;br /&gt;
* May 20&lt;br /&gt;
** Presented itzi&lt;br /&gt;
** Uploaded arm64 wheels to PyPI for MacOS and Linux ([https://pypi.org/project/itzi/#files])&lt;br /&gt;
** Discussed with other developers about issue #629&lt;br /&gt;
* May 21&lt;br /&gt;
** Uploaded xarray-grass to PyPI&lt;br /&gt;
** Added CI tests to xarray-grass&lt;br /&gt;
** Discussed with the group about the xarray-grass backend&lt;br /&gt;
** Discussed with the group about solving mapset switching in the temporal framework (issue #629)&lt;br /&gt;
** Created PR #5735 to address issue #629&lt;br /&gt;
* May 22&lt;br /&gt;
** Fix bug in PR #5735&lt;br /&gt;
&lt;br /&gt;
=== Robert S. Dzur | Bohannan Huston, Inc. ===&lt;br /&gt;
&lt;br /&gt;
* r.in.pdal&lt;br /&gt;
&lt;br /&gt;
=== David W. Farris | East Carolina University ===&lt;br /&gt;
&lt;br /&gt;
* A tool to calculate gravity terrain corrections&lt;br /&gt;
&lt;br /&gt;
=== Neel Ghoshal | NC State University ===&lt;br /&gt;
• LLM for helping users find tools&amp;lt;br&amp;gt;&lt;br /&gt;
5/19&amp;lt;br&amp;gt;&lt;br /&gt;
• Learnt how to PR (#5674)&amp;lt;br&amp;gt;&lt;br /&gt;
• Setup GRASS on system&amp;lt;br&amp;gt;&lt;br /&gt;
• Found small issue with compilation document&amp;lt;br&amp;gt;&lt;br /&gt;
• Discussed about the possible use case of LLM for helping users find tools&amp;lt;br&amp;gt;&lt;br /&gt;
5/20&amp;lt;br&amp;gt;&lt;br /&gt;
• Learnt about cookie cutter&amp;lt;br&amp;gt;&lt;br /&gt;
• Set up wsl on system&amp;lt;br&amp;gt;&lt;br /&gt;
• Compiled GRASS&amp;lt;br&amp;gt;&lt;br /&gt;
• Listed data sources for LLM training&amp;lt;br&amp;gt;&lt;br /&gt;
5/21&amp;lt;br&amp;gt;&lt;br /&gt;
• Extracted tool information from Markdown files&amp;lt;br&amp;gt;&lt;br /&gt;
• Started off with data cleaning&amp;lt;br&amp;gt;&lt;br /&gt;
5/22&amp;lt;br&amp;gt;&lt;br /&gt;
• Worked on LLM setup&amp;lt;br&amp;gt;&lt;br /&gt;
5/23&amp;lt;br&amp;gt;&lt;br /&gt;
• Ran and finetuned a basic test LLM model for extracted data&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Caitlin Haedrich | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* Event photographs, food coordination&lt;br /&gt;
* git/github mentoring&lt;br /&gt;
* GRASS mentoring&lt;br /&gt;
* Lightning Talk preparation&lt;br /&gt;
* Preparing workshop for [https://www.geomorphometry2025.org/ Geomorphometry2025]&lt;br /&gt;
&lt;br /&gt;
=== Brendan Harmon | Louisiana State University ===&lt;br /&gt;
&lt;br /&gt;
* Developing ([https://github.com/baharmon/r.earthworks r.earthworks]) addon &amp;amp; tutorials&lt;br /&gt;
* [https://github.com/baharmon?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
&lt;br /&gt;
=== Linda Karlovska | Czech Technical University in Prague ===&lt;br /&gt;
&lt;br /&gt;
* Fix uninitialized variables in DOutFile() method: ([https://github.com/OSGeo/grass/pull/5650 PR])&lt;br /&gt;
* Update figures related to GUI: ([https://github.com/OSGeo/grass/pull/5651  PR])&lt;br /&gt;
&lt;br /&gt;
Working on integration of the Jupyter notebooks to GUI (work for the whole week :-))&lt;br /&gt;
&lt;br /&gt;
=== Martin Landa | Czech Technical University in Prague ===&lt;br /&gt;
&lt;br /&gt;
* Tutorial: GISMentors courses updated ([https://github.com/OSGeo/grass-tutorials/pull/45 PR])&lt;br /&gt;
* libgis: G__usage_markdown() include tool label in metadata if defined ([https://github.com/OSGeo/grass/pull/5677 PR])&lt;br /&gt;
* PyGRASS: Module description property not defined always ([https://github.com/OSGeo/grass/pull/5681 PR])&lt;br /&gt;
* Website: OpenGeoLabs commercial support ([https://github.com/OSGeo/grass-website/pull/537 PR])&lt;br /&gt;
* v.select: create output also when no features found ([https://github.com/OSGeo/grass/pull/5696 PR])&lt;br /&gt;
* wxGUI: avoid creating nested list of errors (Graphical modeler) ([https://github.com/OSGeo/grass/pull/5700 PR])&lt;br /&gt;
* wxGUI/gmodeler: refactor - move ModelParamDialog to dialogs.py ([https://github.com/OSGeo/grass/pull/5715 PR])&lt;br /&gt;
* GUI: make Python editor dockable ([https://github.com/OSGeo/grass/pull/5733 PR])&lt;br /&gt;
* r.relief: module label changed to description ([https://github.com/OSGeo/grass/pull/5741 PR])&lt;br /&gt;
* GUI: propagate previously defined where option value ([https://github.com/OSGeo/grass/pull/5747 PR])&lt;br /&gt;
* GUI: always show 'Close dialog on finish' option ([https://github.com/OSGeo/grass/pull/5751 PR])&lt;br /&gt;
* GUI: do not remove parameter value on dialog update event ([https://github.com/OSGeo/grass/pull/5760 PR])&lt;br /&gt;
* documentation: add miscellaneous tools too full index (markdown) ([https://github.com/OSGeo/grass/pull/5761 PR])&lt;br /&gt;
&lt;br /&gt;
=== Nicklas Larsson | Hungarian National Museum ===&lt;br /&gt;
&lt;br /&gt;
Planned work: CMake build system; perhaps Conda recipe&lt;br /&gt;
&lt;br /&gt;
[https://github.com/nilason?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
&lt;br /&gt;
* Preparation for CMake build conforming to Filesystem Hierarchy Standard (FHS), resolving resource paths for both the current and FHS in code. In collaboration with Huidae Cho and with important input from Vaclav Petras ([https://github.com/OSGeo/grass/pull/5630 PR5630])&lt;br /&gt;
&lt;br /&gt;
* Helped young students in build configuration and debugging techniques.&lt;br /&gt;
&lt;br /&gt;
* Discussion with several participants on solutions to publish a GRASS package to Conda-forge.&lt;br /&gt;
&lt;br /&gt;
=== Chung-Yuan Liang ===&lt;br /&gt;
&lt;br /&gt;
* parallelize some modules, improve testing&lt;br /&gt;
&lt;br /&gt;
=== Andres Lucero | Bohannan Huston Inc ===&lt;br /&gt;
&lt;br /&gt;
* r.in.pdal&lt;br /&gt;
&lt;br /&gt;
=== Alen Mangafić | Geodetic Institute of Slovenia ===&lt;br /&gt;
Monday May 19 &lt;br /&gt;
* Presentationf of i.hyper, add-on which offers hyperspectral data support in GRASS.&lt;br /&gt;
* Architecture of the multi-module addon&lt;br /&gt;
Tuesday May 20&lt;br /&gt;
* i.hyper.import module: importing EnMAP imagery as 3D raster map&lt;br /&gt;
* i.hyper.preproc module: draft&lt;br /&gt;
Wednesday May 21&lt;br /&gt;
* fixing the i.hyper.import module&lt;br /&gt;
* i.hyper.preproc module: implementing Savitzky-Golay filter&lt;br /&gt;
&lt;br /&gt;
=== Helena Mitasova | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* standardized data set and related tutorials&lt;br /&gt;
* documentation for interpolation tools&lt;br /&gt;
* collaborate/coordinate/discuss hydrology tools (analytics, simulations, soil properties inputs)&lt;br /&gt;
* assist with wiki cleanup if needed&lt;br /&gt;
&lt;br /&gt;
Monday May 19&lt;br /&gt;
* investigated issues with v.surf.rst documentation in source code, tested and identified fixes needed&lt;br /&gt;
* discussed coupling GRASS with Blender versus potree for 3D object rendering with Brendan, Anna and Caitlin (for TL activities and other applications)&lt;br /&gt;
* discussed soil data for runoff estimation and other hydro topics, to be worked on on day 2&lt;br /&gt;
&lt;br /&gt;
Tuesday May 20&lt;br /&gt;
* worked with Corey on fixing v.surf.rst documentation, discussed ideas for improvements and for documentation / tutorial for cross-valiadation&lt;br /&gt;
* discussed suggestions for graphics and examples to be inculded in v.surf.rst docs with Michelle &lt;br /&gt;
* discussed new developments in hydrology tools&lt;br /&gt;
* experimented with basic/standardized versus specialized data sets for documentation and tutorials&lt;br /&gt;
&lt;br /&gt;
Wednesday May 21&lt;br /&gt;
* explored existing tutorials, emailed Paulo about finishing the one on interpolation&lt;br /&gt;
* tested NM basic data set with GIS582 class assignment (very cool)&lt;br /&gt;
* discussed design of Jnotebooks that would work with various localized data with Caitlin&lt;br /&gt;
&lt;br /&gt;
Thursday May 22&lt;br /&gt;
* discussed needed capabilities for a more advanced color ramp processing tool with Brendan&lt;br /&gt;
* added further ideas to basic dataset document after talking to Vero - we just need standardized names for the localized tutorials to work&lt;br /&gt;
* discussed infiltration fix pull request for r.sim.water with Anna - more work is needed&lt;br /&gt;
&lt;br /&gt;
=== Michael Mulqueen | MassGIS ===&lt;br /&gt;
&lt;br /&gt;
* depth to water, hydro from lidar, etc&lt;br /&gt;
&lt;br /&gt;
=== Māris Nartišs ===&lt;br /&gt;
&lt;br /&gt;
* Taking photos of the event&lt;br /&gt;
* Introduced a new GRASS core module r.smooth.edgepreserve&lt;br /&gt;
* Discussed architecture of hyperspectral data import and per-processing tool&lt;br /&gt;
* Discussed testing and organizing AI modules downloading data from internet&lt;br /&gt;
* Prepared and gave a presentation on code preparation for translations (best practice)&lt;br /&gt;
* Debugging translation file updating with Edouard&lt;br /&gt;
* Changed default multiprocessor setting to always use maximum number of available threads&lt;br /&gt;
* Unified max process setting handling in all modules that use default parser parameter&lt;br /&gt;
* Discovered and supervised fixing a bug in r.univar parallelization code&lt;br /&gt;
* Discussing requirements for raster data reading parallelization (GRASS 9)&lt;br /&gt;
&lt;br /&gt;
=== Ondřej Pešek | Czech Technical University in Prague ===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/pesekon2?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
* Refactoring, fixing, improving, discussing g.gui.gmodeler&lt;br /&gt;
* Discussing hyperspectral with Alen Mangafic&lt;br /&gt;
* Discussing jupyter in single GUI with Linda Karlovska&lt;br /&gt;
* PyGRASS&lt;br /&gt;
* Docs&lt;br /&gt;
* CQ&lt;br /&gt;
* Reviewing PRs, PR archeology&lt;br /&gt;
&lt;br /&gt;
=== Vaclav (Vashek) Petras | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/wenzeslaus?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
* My focus: Getting feedback and ideas for computational engine use case, APIs, funding.&lt;br /&gt;
* Summit organizing&lt;br /&gt;
* Implementing rebranding on GitHub (repos, teams)&lt;br /&gt;
* Feedback session on project image&lt;br /&gt;
* Feedback session on easier access to tools&lt;br /&gt;
* Discussed LLMs with Neel Ghoshal, Riya&lt;br /&gt;
* Discussed session setupp  Martin Landa&lt;br /&gt;
* Discussed conda with Nicklas Larsson&lt;br /&gt;
* Discussed hyperspectral with Alen Mangafić, Veronica Andreo, and Anna Petrasova&lt;br /&gt;
* Discussed code for new smoothing tool, integer overflows, translations with Māris Nartišs&lt;br /&gt;
* Compared setup of GRASS session and project in fasterRaster, QGIS, and GRASS itself with Adam Smith&lt;br /&gt;
* Discussed potential of Pixi for packaging or compilation with Gregory Power&lt;br /&gt;
* Discussed itzi model distribution issues with Laurent Courty&lt;br /&gt;
* Discussed r.horizon parallelization with Chung-Yuan Liang and Anna Petrasova&lt;br /&gt;
* Answered coding and setup questions for Neel Ghoshal, Abdullah Azzam, and Alen Mangafić&lt;br /&gt;
&lt;br /&gt;
=== Anna Petrasova | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/petrasovaa?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
* plan: mentoring, documentation&lt;br /&gt;
* Monday&lt;br /&gt;
** discussing hyperspectral implementation with Alen&lt;br /&gt;
** helping mentee David Farris implementing his gravity correction addon&lt;br /&gt;
* Tuesday&lt;br /&gt;
** delivered intro to creating an addon, documentation&lt;br /&gt;
** mentoring Alen, Abdullah&lt;br /&gt;
** discussing bug in i.his.rgb with Jayneel&lt;br /&gt;
** reviews&lt;br /&gt;
* Wednesday&lt;br /&gt;
** discuss and demonstrate tutorials page&lt;br /&gt;
** mentoring Alen, Jayneel&lt;br /&gt;
* call with GSoC student&lt;br /&gt;
* Thursday&lt;br /&gt;
* Friday&lt;br /&gt;
** grass repo README&lt;br /&gt;
** reviews&lt;br /&gt;
&lt;br /&gt;
=== Gregory Power | Town of Cary ===&lt;br /&gt;
&lt;br /&gt;
* Documentation&lt;br /&gt;
&lt;br /&gt;
=== Pratikshya Regmi | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* Event photographs and videos&lt;br /&gt;
* Opened a pull request to change GRASS GIS to GRASS on the documentation (this was my first contribution to GRASS)&lt;br /&gt;
* Worked on preparing the mock document for LLM RAG&lt;br /&gt;
* Wrote a tutorial to  Visualize Contour Lines with a Color Gradient with Folium.&lt;br /&gt;
&lt;br /&gt;
=== Riya | Indian Institute of Technology, Roorkee ===&lt;br /&gt;
&lt;br /&gt;
* I am currently thinking of developing an AI Agent for the grass jupyter library which will help the users with mathematical calculations done in GIS.&lt;br /&gt;
&lt;br /&gt;
=== Jayneel Shah | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* improve the test coverage of imagery modules.&lt;br /&gt;
&lt;br /&gt;
=== Krishna Prasad Sheshadri ===&lt;br /&gt;
&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
=== Adam Smith | Missouri Botanical Garden ===&lt;br /&gt;
&lt;br /&gt;
Overall: R package fasterRaster (fielding bug reports, adding features)&lt;br /&gt;
&lt;br /&gt;
Monday:&lt;br /&gt;
* Assessed scope of fasterRaster issue [https://github.com/adamlilith/fasterRaster/issues/83 83]&lt;br /&gt;
&lt;br /&gt;
Tuesday:&lt;br /&gt;
* Created a PR for fasterRaster tutorial on GRASS tutorials page.&lt;br /&gt;
* Improved handling of addons, including autodetect and installing when needed, enabling easier creation of addon-dependent methods.&lt;br /&gt;
* Presented *fasterRaster* package to group.&lt;br /&gt;
&lt;br /&gt;
Wednesday:&lt;br /&gt;
* Created fasterRaster methods for neighborhood matrices, terrain ruggedness index, and multivariate environmental similarity&lt;br /&gt;
&lt;br /&gt;
=== Michelle (Mimi) Stephens | ERDC ===&lt;br /&gt;
&lt;br /&gt;
* Previous work: coupling R and Python scripts for computational analysis in GRASS.&lt;br /&gt;
* Current work: Running through GRASS commands to create visual outputs that can be added to the new GRASS 8.5 manual pages - r.mapcalc, v.surf.rst, examples with topographic parameters, LinkedIn requests.&lt;br /&gt;
* Tutorial for Windows users to install a WSL2 Linux environment. Creates a conda environment with wxpython, installs GRASS without requiring OSGeo installer. Fast, simple, and minimal install. Resolves various issues encountered in government due to automatic Windows updates, cyber security, vpn routing, user preference, and isolated distro can be completely removed if needed. -&amp;gt; Motivation for WSL2 - wanted more hands-on practice with Unix command line tools for HPC; Docker not allowed, but miniforge and Apptainer are on ERDC's HPC; able to install grass via command line (only on internet-capable HPC systems); AND - For other users that always wanted a more native feel to their grass instance!&lt;br /&gt;
* Future work: Presenting on GRASS in JUNE at CERLCON.&lt;br /&gt;
&lt;br /&gt;
=== Corey White | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* JSON, mentoring&lt;br /&gt;
&lt;br /&gt;
=== Doug Newcomb | Semi Retired Cartographer ===&lt;br /&gt;
&lt;br /&gt;
* Discussed hydroflattening method&lt;br /&gt;
* Discussed direct point cloud input to v.surf.rst&lt;br /&gt;
* Learning git procedures by updating branding (GRASS GIS to GRASS)  for raster commands&lt;br /&gt;
Tuesday&lt;br /&gt;
* Continued updating branding for raster commands&lt;br /&gt;
* Started working on tutorial for r.hydro.flatten&lt;br /&gt;
Wednesday&lt;br /&gt;
* Finalized Data set for for r.hydro.flatten&lt;br /&gt;
* Worked on Lightning Talk for Thursday&lt;br /&gt;
Thursday&lt;br /&gt;
* Continued work on r.hydro.flatten tutorial&lt;br /&gt;
* Gave lightning talk on r.hydro.flatten&lt;br /&gt;
Friday&lt;br /&gt;
* Worked with Rob Dzur on r.hydro.flatten workflow.&lt;br /&gt;
* Explored the possibility of using r.resample.bspline for areas with high standard deviation ranges.&lt;br /&gt;
&lt;br /&gt;
* Worked with Rob Dzur on identifying workflow for implimenting USGS GMI, https://www.usgs.gov/ngp-standards-and-specifications/elevation-derived-hydrography-data-acquisition-specifications-16 ,  in GRASS and connected Rob with USGS contact for GMI.&lt;br /&gt;
&lt;br /&gt;
=== Natalie Trso | Balance Geo LLC ===&lt;br /&gt;
&lt;br /&gt;
* r.sim.water&lt;br /&gt;
&lt;br /&gt;
== Guests and remote participants ==&lt;br /&gt;
&lt;br /&gt;
=== Luís de Sousa | University of Lisbon ===&lt;br /&gt;
&lt;br /&gt;
* Review outstanding PRs&lt;br /&gt;
* Prepare GRASS sessions for the OpenGeoHub Summer School&lt;br /&gt;
&lt;br /&gt;
=== Markus Neteler | mundialis ===&lt;br /&gt;
&lt;br /&gt;
* Support full automation of new GRASS manual pages deployment on server (upload artifacts from GitHub to OSGeo servers (grass and download))&lt;br /&gt;
* Source code license documentation: Using SPDX License IDs ({{GH-Issues|4190}})&lt;br /&gt;
* Support Wiki cleanup&lt;br /&gt;
* [https://github.com/neteler?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub contributions]&lt;br /&gt;
&lt;br /&gt;
=== Nishant Bansal | Indian Institute of Technology, Varanasi ===&lt;br /&gt;
&lt;br /&gt;
* Review the previous work on JSON during last year’s GSoC, including enhancements and the addition of JSON output support to other modules.&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Talk:GRASS_Developer_Summit_Raleigh_2025&amp;diff=28404</id>
		<title>Talk:GRASS Developer Summit Raleigh 2025</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Talk:GRASS_Developer_Summit_Raleigh_2025&amp;diff=28404"/>
		<updated>2025-05-23T21:18:56Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: /* Anna Petrasova | NC State University */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{toc|right}}&lt;br /&gt;
&lt;br /&gt;
Quick links: [[GRASS Developer Summit Raleigh 2025|Meeting page]] | [[#Participant_reports|Reports]]  |  [[GRASS_Developer_Summit_Raleigh_2025#Sponsors|Sponsors]]&lt;br /&gt;
&lt;br /&gt;
== Organizing Team ==&lt;br /&gt;
&lt;br /&gt;
* Initial planning: Vaclav Petras, Anna Petrasova, Veronica Andreo, Corey White, Lois Utt, Sarah White, Doug Newcomb, Huidae Cho, Veronica Andreo ([[GRASS_Developer_Summit_Raleigh_2025#Organizing_Committee|Organizing Committee]])&lt;br /&gt;
* Budget: Vaclav Petras, Lois Utt, Anna Petrasova&lt;br /&gt;
* Raising support: Helena Mitasova, Vaclav Petras, Anna Petrasova, Michael Barton, Giuseppe Amatulli ([[NSF POSE Project 2023-2025 Timeline|NSF POSE project]] proposal authors)&lt;br /&gt;
* Travel: Lois Utt&lt;br /&gt;
* Venue: Vaclav Petras, Lois Utt&lt;br /&gt;
* Meals: Lois Utt, Sarah White, Vaclav Petras, Corey White, Anna Petrasova&lt;br /&gt;
* Agenda: Vaclav Petras, Huidae Cho, Anna Petrasova&lt;br /&gt;
* Wiki page: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Swag: Sarah White, Vaclav Petras, Anna Petrasova, Corey White&lt;br /&gt;
* Promotion, invitations, and social media: Vaclav Petras, Sarah White, Corey White, John Vogler&lt;br /&gt;
* Lightning talks organization: Vaclav Petras, Zachary Arcaro, John Vogler&lt;br /&gt;
* Lightning talk speakers: Vaclav Petras (welcome), Markus Metz and Markus Neteler (talk presented by Vaclav Petras), Anna Petrasova, Veronica Andreo, Robert Dzur, Nick Brady, Huidae Cho, Gregory Power, Doug Newcomb, Caitlin Haedrich&lt;br /&gt;
* Photography: Caitlin Haedrich, Māris Nartišs, Pratikshya Regmi&lt;br /&gt;
* Portrait photography: Riya, Caitlin Haedrich, Natalie Trso&lt;br /&gt;
&lt;br /&gt;
== Detailed Schedule ==&lt;br /&gt;
&lt;br /&gt;
=== Day 1, Monday, May 19 ===&lt;br /&gt;
&lt;br /&gt;
Location: Talley Student Union, 2610 Cates Ave ([https://www.google.com/maps/place/Talley+Student+Union/data=!4m2!3m1!1s0x0:0x38989377c96adef0?sa=X&amp;amp;ved=1t:2428&amp;amp;ictx=111 map])&lt;br /&gt;
&lt;br /&gt;
Room: 5101-Executive Board Room&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''Contributing to GRASS. Getting started. Is it easy to contribute?''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:30-9:00 || Breakfast || Catered breakfast on site. Meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || What to expect from the event, contributing to GRASS using Git and GitHub, making your first contribution.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || i.hyper: Integrating Hyperspectral Imagery Processing into GRASS - Alen Mangafić&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || &lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Project Image - Vaclav Petras&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || Catered food on site.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || We will walk to [https://www.trophybrewing.com/brewing-pizza Trophy Brewing &amp;amp; Pizza] ([https://maps.app.goo.gl/ggnZ7EvXbWqDUmvP9 directions], 30 min walk from Talley)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 2, Tuesday, May 20 ===&lt;br /&gt;
&lt;br /&gt;
Location: Talley Student Union, 2610 Cates Ave ([https://www.google.com/maps/place/Talley+Student+Union/data=!4m2!3m1!1s0x0:0x38989377c96adef0?sa=X&amp;amp;ved=1t:2428&amp;amp;ictx=111 map])&lt;br /&gt;
&lt;br /&gt;
Room: 5101-Executive Board Room&lt;br /&gt;
&lt;br /&gt;
Highlighted topics: ''Hydrology and Interfacing with R and QGIS (gathering user feedback, testing, discussing with developers, developing action items)''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:30-9:00 || Breakfast || Breakfast on site. Start the day, meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || Introduction to writing GRASS tools, program for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || fasterRaster R package - Adam Smith&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Hydography90m + Geocomputation Courses - Giuseppe&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Flood modelling with grass and itzi ([https://itzi.org]) - Laurent Courty&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || [https://maps.app.goo.gl/womSkce9DrE8CTnR8 Case dining hall]&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || [https://maps.app.goo.gl/CQiWoCAQNt1ymZkb7 Served in Jordan Hall at the Center for Geospatial Analytics], evaluate the day's accomplishments, plan and prioritize for the next few days.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 3, Wednesday, May 21 ===&lt;br /&gt;
&lt;br /&gt;
Location: Talley Student Union, 2610 Cates Ave ([https://www.google.com/maps/place/Talley+Student+Union/data=!4m2!3m1!1s0x0:0x38989377c96adef0?sa=X&amp;amp;ved=1t:2428&amp;amp;ictx=111 map])&lt;br /&gt;
&lt;br /&gt;
Room: 5101-Executive Board Room&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''Non-coding contributions, natural language translation, and internationalization.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 7:00-9:00 || Breakfast || [https://maps.app.goo.gl/eZ8VK8Mx6TjMt9NP8 Case dining hall]&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || Introduction to non-coding contributions, tutorials, contributing examples, natural language translation and internationalization (procedures, glossaries, code customization, translation).&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || Easier access to GRASS tools - Vaclav Petras&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || &lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || GRASS backend for xarray and temporal framework global variables ([https://github.com/OSGeo/grass/issues/629]) - Laurent Courty&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || Served on site. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || [https://maps.app.goo.gl/1E39eySMVaxYJUUS8 Picnic at Pullen Park, shelter #3. In case of bad weather, dinner at the Center for Geospatial Analytics.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 4, Thursday, May 22 ===&lt;br /&gt;
&lt;br /&gt;
Location: Center for Geospatial Analytics, Jordan Hall, 2800 Faucette Drive ([https://www.google.com/maps/search/Jordan+Hall/@35.7816832,-78.6772765,18z/data=!3m1!4b1?entry=ttu&amp;amp;g_ep=EgoyMDI1MDQyMC4wIKXMDSoJLDEwMjExNDUzSAFQAw%3D%3D map])&lt;br /&gt;
&lt;br /&gt;
Room: 5103 (straight from the two elevators, at the end of the hallway)&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''Project vision and computational engine use case.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:00-9:00 || Breakfast || On site. Start the day, meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || Project vision and the computational engine use case (missing features, documentation, user groups).&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || NSF POSE I-Corps Interviews - Corey White&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback session || YAIT - Yet Another Interface to Tools - Vaclav Petras &lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback session || Modernizing Color Tables (Brendan)&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || On site. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-16:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 16:00-17:00 || Lightning talks || Fast-paced talks, showcasing applications of GRASS, room 5111.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Reception || Connect with researchers, government professionals, and industry collaborators, rooms 5111 and 5119.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 5, Friday, May 23 ===&lt;br /&gt;
&lt;br /&gt;
Location: James B. Hunt Jr. Library, 1070 Partners Way - Centennial Campus ([https://www.google.com/maps/place/James+B.+Hunt+Jr.+Library/@35.7693736,-78.679167,17z/data=!3m1!5s0x89acf5759f5a31df:0xc547454a0151c440!4m10!1m2!2m1!1shunt+library!3m6!1s0x89acf5759f591f41:0xbe0266269ce37f59!8m2!3d35.7693215!4d-78.6764409!15sCgxodW50IGxpYnJhcnlaDiIMaHVudCBsaWJyYXJ5kgESdW5pdmVyc2l0eV9saWJyYXJ54AEA!16s%2Fm%2F0r4wjf_?entry=ttu&amp;amp;g_ep=EgoyMDI1MDQyMC4wIKXMDSoJLDEwMjExNDUzSAFQAw%3D%3D map])&lt;br /&gt;
&lt;br /&gt;
Room: Faculty Research Commons - 5100 ([https://www.lib.ncsu.edu/hunt/map floor plan])&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''GRASS project's future course.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 7:45-8:15 || Breakfast || '''Hotel Aloft (2nd floor).''' Search for Lois!&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || GRASS project's future course.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-12:00 || PSC meeting || Project Steering Committee meets (public).&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Rescheduled for Saturday&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || Walk to [https://maps.app.goo.gl/kHVHY62QxTd6wHKd9 On the Oval Culinary Creations]. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || Dinner on your own. Corey White will organize trip to downtown. Bus 41 from Hunt library to hotel and then walk.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 6, Saturday, May 24 ===&lt;br /&gt;
&lt;br /&gt;
Location: James B. Hunt Jr. Library, 1070 Partners Way - Centennial Campus ([https://www.google.com/maps/place/James+B.+Hunt+Jr.+Library/@35.7693736,-78.679167,17z/data=!3m1!5s0x89acf5759f5a31df:0xc547454a0151c440!4m10!1m2!2m1!1shunt+library!3m6!1s0x89acf5759f591f41:0xbe0266269ce37f59!8m2!3d35.7693215!4d-78.6764409!15sCgxodW50IGxpYnJhcnlaDiIMaHVudCBsaWJyYXJ5kgESdW5pdmVyc2l0eV9saWJyYXJ54AEA!16s%2Fm%2F0r4wjf_?entry=ttu&amp;amp;g_ep=EgoyMDI1MDQyMC4wIKXMDSoJLDEwMjExNDUzSAFQAw%3D%3D map])&lt;br /&gt;
&lt;br /&gt;
Room: Faculty Research Commons - 5100 ([https://www.lib.ncsu.edu/hunt/map floor plan])&lt;br /&gt;
&lt;br /&gt;
Highlighted topics: ''NSF POSE project evaluation.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:00-8:30 || Breakfast || We will have pastries at [https://maps.app.goo.gl/EwzNxeovv4rTivjK9 Lake Raleigh]. Feel free to bring your own coffee.&lt;br /&gt;
|-&lt;br /&gt;
| 8:30-10:00 || Hike || Library opens at 10AM.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || Your topic here (10-minute presentation and 10-minute discussion)&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || GRASS tools: core and additional functionality (MartinL)&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || TBA. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || TBA. &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Daily tasks for participants ==&lt;br /&gt;
&lt;br /&gt;
* List all the things you are working on in the Participant reports section below. Update the list each day. Include things you work on with other people.&lt;br /&gt;
* If you want to discuss something with the whole group, add yourself to a Self-organized feedback sessions slot in the schedule above or tell Vaclav (Vashek) Petras.&lt;br /&gt;
* For people with triage access and above: If you are or will be working on an issue or on a PR which is not originally submitted by you, assign yourself to the issue or PR. (You can unassign yourself later if you change your mind.)&lt;br /&gt;
&lt;br /&gt;
== Participant reports ==&lt;br /&gt;
&lt;br /&gt;
Per-person reports from the meeting.&lt;br /&gt;
&lt;br /&gt;
=== Giuseppe Amatulli | Yale University ===&lt;br /&gt;
&lt;br /&gt;
* Testing r.watershed and r.stream.* for handling large datasets&lt;br /&gt;
* Running r.flowaccumulation at global level using water direction from hydrography90m &lt;br /&gt;
* Preparing the grass tutorial material for the https://www.geomorphometry2025.org/ conference&lt;br /&gt;
&lt;br /&gt;
=== Veronica Andreo | CONICET - Instituto Gulich ===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/veroandreo?tab=overview&amp;amp;from=2025-05-12&amp;amp;to=2025-05-24 GitHub contributions]&lt;br /&gt;
* Enhanced the website footer.&lt;br /&gt;
* Sync icons on the Tutorials website footer to those on the main website.&lt;br /&gt;
* Fix descriptions and their display on the tutorials website.&lt;br /&gt;
* Fix GRASS page on OSGeo website [https://www.osgeo.org/projects/grass-gis/] &lt;br /&gt;
** Changed logo, removed GIS from the name, fixed old links.&lt;br /&gt;
* Social media posts.&lt;br /&gt;
* Discussion about hyperspectral with Alen and Anna.&lt;br /&gt;
* Expand the GRASS acronym on the home page.&lt;br /&gt;
* Remove GIS from GRASS name on the website.&lt;br /&gt;
* Review tutorials by Huidae and Adam Smith.&lt;br /&gt;
* Add external tutorials by Huidae and the one from FOSS4G 2024.&lt;br /&gt;
* Started adding the time series tutorials.&lt;br /&gt;
* Add lightbox class in get-started tutorials so images can be clicked on.&lt;br /&gt;
* GRASS PSC admin stuff.&lt;br /&gt;
* Participated of the PSC meeting.&lt;br /&gt;
* Talk to Tonis Kardi from FOSS4G EU LOC to have a &amp;quot;State of GRASS&amp;quot; talk in the program. Alen will be presenting.&lt;br /&gt;
* Gave a lightning talk: GRASS-fed species distribution models.&lt;br /&gt;
* Discussed with Corey and Mimi about tutorials.&lt;br /&gt;
&lt;br /&gt;
=== Abdullah Azzam | New Mexico State University ===&lt;br /&gt;
&lt;br /&gt;
* Created first PR; fixed broken links on the website [https://github.com/OSGeo/grass-website/pull/538 #538]&lt;br /&gt;
* Pushed a new GRASS Addon ''r.curvenumber'' [https://github.com/OSGeo/grass-addons/pull/1403 #1403]&lt;br /&gt;
&lt;br /&gt;
=== Michael Barton | Arizona State University ===&lt;br /&gt;
&lt;br /&gt;
* POSE related activities&lt;br /&gt;
&lt;br /&gt;
=== Laura Belica | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* have been working on developing a workflow-tool tutorial template that facilitates GRASS learners who tend to 'jump in' or have a 'choose your own adventure' approach to learning GRASS (i.e., want to use their data for their study area for their objective from the start).  The structure of the tutorial template is a concise, basic, general description/instructions of the workflow with optional links to pertinent explanatory/deeper dive content  (e.g.,  plain language explainers of the tool, options, defaults, etc.) in a variety of formats (e.g., captioned images, short tool demo videos (30 sec to 2 min)) in addition to the more comprehensive resources available (e.g. documentation, examples, tutorials).  The main motivation for this approach is to help new and occasional GRASS users avoid some of the common pitfalls and to learn how to find workarounds for some of the unanticipated challenges they may encounter with their specific datasets or use cases so that they can learn as they go.  Another motivation for this approach is to facilitate the translation, extension, and updating of workflow tutorials by the community over time (e.g., providing audio and closed captioning for one of the tool-demo videos in another language, replacing an outdated GUI demo with one for the current release, or incorporating a new add-on as an option in the workflow).&lt;br /&gt;
&lt;br /&gt;
* my focus this week is on developing a draft/test tutorial (in Quarto) for a standard hydrological modelling workflow that begins with the crucial pre-work of how to figure out the appropriate project/location, etc. as well as considerations of some of the downstream impacts of resolution, extent, region etc. It may not be ready for sharing by the end of the week, but suggestions and advice are welcomed in advance.&lt;br /&gt;
&lt;br /&gt;
19 May&lt;br /&gt;
* discussed a novice user issue with 'moving' vector data from one location to another with Vero and learned a neat GUI option &lt;br /&gt;
* revised and added workflow tutorial text&lt;br /&gt;
&lt;br /&gt;
=== Shonil Sateesh Bhide | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* CI optimization&lt;br /&gt;
&lt;br /&gt;
=== Huidae Cho | New Mexico State University ===&lt;br /&gt;
&lt;br /&gt;
* CMake, conda, CI, Mentoring&lt;br /&gt;
&lt;br /&gt;
Monday 5/19&lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/5680 CMake: Recognize conda installation path at runtime]: Replaced by [https://github.com/HuidaeCho/grass-conda/blob/master/recipe/post-link.sh conda post-link.sh]&lt;br /&gt;
* CMake and Conda Testing on Linux&lt;br /&gt;
* CMake Testing on Windows&lt;br /&gt;
* Mentoring: Chung-Yuan, Abdullah&lt;br /&gt;
&lt;br /&gt;
Tuesday 5/20&lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/5712 CMake: Define custom complex types for MSVC LAPACKE]&lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/5713 CMake: Fix build output directories for MSVC]&lt;br /&gt;
* CMake and Conda Testing on Linux&lt;br /&gt;
* CMake Testing on Windows&lt;br /&gt;
&lt;br /&gt;
Wednesday 5/21&lt;br /&gt;
* Translation Talk&lt;br /&gt;
* Translation Discussion with Edouard&lt;br /&gt;
* Flow Direction Meeting with Ondrej, Ondrej's Student, Martin, and Markus Metz&lt;br /&gt;
* CMake and Conda Testing on Linux&lt;br /&gt;
* CMake Testing on Windows&lt;br /&gt;
* Mentoring: Chung-Yuan, Abdullah&lt;br /&gt;
&lt;br /&gt;
Thursday 5/22&lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/5740 CMake: Fix the parameter is incorrect: . error for MSVC]&lt;br /&gt;
* Lightning Talk&lt;br /&gt;
* CMake and Conda Testing on Linux&lt;br /&gt;
* CMake Testing on Windows&lt;br /&gt;
* CI: Discussion with Edouard&lt;br /&gt;
* Mentoring: Chung-Yuan, Abdullah&lt;br /&gt;
&lt;br /&gt;
=== Edouard Choinière ===&lt;br /&gt;
&lt;br /&gt;
* Quick ideas, way too much for a week: Helping others (may take a reasonable part of the time), managing CI, setting up localization template updating workflow, backporting tool? Pytest/coverage improvements? Discuss and design other projects, to work on during the year. Open to change on other priorities once there, anything that is useful. Maybe make a little progress on high dpi GUI, especially on Windows.&lt;br /&gt;
&lt;br /&gt;
* Weekend before sprint:&lt;br /&gt;
** Clear up Renovate PRs to not use CI time during the sprint, reviewing and merging: [https://github.com/OSGeo/grass/pull/5664 #5664], [https://github.com/OSGeo/grass/pull/5665 #5665], [https://github.com/OSGeo/grass/pull/5666 #5666], [https://github.com/OSGeo/grass/pull/5667 #5667], [https://github.com/OSGeo/grass/pull/5668 #5668]&lt;br /&gt;
** PR to avoid some CI run time for the sprint: [https://github.com/OSGeo/grass/pull/5670 #5670]&lt;br /&gt;
** Reviewed open PRs for PRs that were mergeable before the sprint, updated outdated PRs to avoid having it needing CI time during sprint. Only ended up merging [https://github.com/OSGeo/grass/pull/5658 #5658], but another reviewed one that might still need changes: [https://github.com/OSGeo/grass/pull/5628 #5628]&lt;br /&gt;
* Monday May 19, 2025:&lt;br /&gt;
** PR got merged: [https://github.com/OSGeo/grass/pull/5670 #5670],[https://github.com/OSGeo/grass/pull/5550 #5550]&lt;br /&gt;
** Reviewed PRs: [https://github.com/OSGeo/grass/pull/5671 #5671], [https://github.com/OSGeo/grass/pull/5672 #5672]&lt;br /&gt;
** Discussions:&lt;br /&gt;
*** Shonil Sateesh Bhid &amp;amp; Shuham on their CI &amp;amp; pytest work and project.&lt;br /&gt;
*** Māris Nartišs about a potential issue and improvement for it. Will be discussed in the security reporting tab, also allowing to test the security vulnerability reporting process. + Research on existing solutions&lt;br /&gt;
** Reviewed: [https://github.com/OSGeo/grass/pull/5682 #5682], [https://github.com/OSGeo/grass/pull/5660 #5660],&lt;br /&gt;
** Reviewed, edited and merged: [https://github.com/OSGeo/grass/pull/3672 #3672]&lt;br /&gt;
** Discussed/helped user for: [https://github.com/OSGeo/grass/pull/5678 #5678] and [https://github.com/OSGeo/grass/pull/5684 #5684]&lt;br /&gt;
** Long discussion and vision planning for windows scripting with Vaclav, concerning [https://github.com/OSGeo/grass/pull/5624 #5624]. Tested alternatives and tried the consequences of that PR. This older PR finally got merged.&lt;br /&gt;
** Created PRs for NSIS installer: [https://github.com/OSGeo/grass/pull/5685 #5685] and also [https://github.com/OSGeo/grass/pull/5686 #5686], which should address [https://github.com/OSGeo/grass/issues/5663 #5663]. Still needs to test it.&lt;br /&gt;
** Agreed on convention for titles with Vaclav, unblocking [https://github.com/OSGeo/grass/pull/5341 #5341]&lt;br /&gt;
** Found a name with Ondrej and finally merged older PRs of an external contributor [https://github.com/OSGeo/grass/pull/5473 #5473] and [https://github.com/OSGeo/grass/pull/5474 #5474]&lt;br /&gt;
* Thursday May 20, 2025:&lt;br /&gt;
** Reviewed: [https://github.com/OSGeo/grass/pull/5695 #5695]&lt;br /&gt;
** Merged PRs: [https://github.com/OSGeo/grass/pull/5673 #5673], [https://github.com/OSGeo/grass/pull/5691 #5691], [https://github.com/OSGeo/grass/pull/5690 #5690], [https://github.com/OSGeo/grass/pull/5684 #5684],&lt;br /&gt;
** Discussed with author of [https://github.com/OSGeo/grass/pull/5660 #5660] and [https://github.com/OSGeo/grass/issues/5659 #5659] about rgb/hsl bug and tests for help.&lt;br /&gt;
** Worked with Corey to adjust markdown links for new markdownlint rule, finishing up [https://github.com/OSGeo/grass/pull/5669 #5669]&lt;br /&gt;
** Created PRs: [https://github.com/OSGeo/grass/pull/5692 #5692], [https://github.com/OSGeo/grass/pull/5694 #5694], [https://github.com/OSGeo/grass/pull/5689 #5689]&lt;br /&gt;
* Wednesday May 21, 2025:&lt;br /&gt;
** Created a new set of GitHub rulesets for the required checks, applied with Vaclav. One of them is separated in order to increase velocity during the sprint&lt;br /&gt;
** Reviewed the branch protection rules for grass-addons repo with Vaclav. Creating rulesets will be possible after the sprint with the info collected.&lt;br /&gt;
** Reviewed the security reporting settings and secret scanning settings with Vaclav for the main grass repo.&lt;br /&gt;
** Got shown by Huidae Cho how to update the translation files, and reviewed Weblate settings. No settings changed, but a backup stored for 30 days was kept.&lt;br /&gt;
** Created a first implementation of a translation file update workflow&lt;br /&gt;
** Tested out the two NSIS installer PRs, the first one, for installing the VC runtime earlier doesn't work as expected, and after more research I don't know enough to fix it. The second PR with High-DPI improvement was correct and got merged [https://github.com/OSGeo/grass/pull/5685 #5685]&lt;br /&gt;
** Helped a student set up a grass installation on WSL with conda.&lt;br /&gt;
** PRs created: [https://github.com/OSGeo/grass/pull/5736 #5736], [https://github.com/OSGeo/grass/pull/5734 #5734]&lt;br /&gt;
** My PRs that got merged: [https://github.com/OSGeo/grass/pull/5685 #5685], [https://github.com/OSGeo/grass/pull/5341 #5341], [https://github.com/OSGeo/grass/pull/5689 #5689]&lt;br /&gt;
** Reviewed and merged multiple PRs, restarting failed required checks of the previous night.&lt;br /&gt;
&lt;br /&gt;
=== Laurent Courty ===&lt;br /&gt;
&lt;br /&gt;
* Objectives: An xarray backend for GRASS STRDS. Fixing related issues&lt;br /&gt;
* May 20&lt;br /&gt;
** Presented itzi&lt;br /&gt;
** Uploaded arm64 wheels to PyPI for MacOS and Linux ([https://pypi.org/project/itzi/#files])&lt;br /&gt;
** Discussed with other developers about issue #629&lt;br /&gt;
* May 21&lt;br /&gt;
** Uploaded xarray-grass to PyPI&lt;br /&gt;
** Added CI tests to xarray-grass&lt;br /&gt;
** Discussed with the group about the xarray-grass backend&lt;br /&gt;
** Discussed with the group about solving mapset switching in the temporal framework (issue #629)&lt;br /&gt;
** Created PR #5735 to address issue #629&lt;br /&gt;
* May 22&lt;br /&gt;
** Fix bug in PR #5735&lt;br /&gt;
&lt;br /&gt;
=== Robert S. Dzur | Bohannan Huston, Inc. ===&lt;br /&gt;
&lt;br /&gt;
* r.in.pdal&lt;br /&gt;
&lt;br /&gt;
=== David W. Farris | East Carolina University ===&lt;br /&gt;
&lt;br /&gt;
* A tool to calculate gravity terrain corrections&lt;br /&gt;
&lt;br /&gt;
=== Neel Ghoshal | NC State University ===&lt;br /&gt;
• LLM for helping users find tools&amp;lt;br&amp;gt;&lt;br /&gt;
5/19&amp;lt;br&amp;gt;&lt;br /&gt;
• Learnt how to PR (#5674)&amp;lt;br&amp;gt;&lt;br /&gt;
• Setup GRASS on system&amp;lt;br&amp;gt;&lt;br /&gt;
• Found small issue with compilation document&amp;lt;br&amp;gt;&lt;br /&gt;
• Discussed about the possible use case of LLM for helping users find tools&amp;lt;br&amp;gt;&lt;br /&gt;
5/20&amp;lt;br&amp;gt;&lt;br /&gt;
• Learnt about cookie cutter&amp;lt;br&amp;gt;&lt;br /&gt;
• Set up wsl on system&amp;lt;br&amp;gt;&lt;br /&gt;
• Compiled GRASS&amp;lt;br&amp;gt;&lt;br /&gt;
• Listed data sources for LLM training&amp;lt;br&amp;gt;&lt;br /&gt;
5/21&amp;lt;br&amp;gt;&lt;br /&gt;
• Extracted tool information from Markdown files&amp;lt;br&amp;gt;&lt;br /&gt;
• Started off with data cleaning&amp;lt;br&amp;gt;&lt;br /&gt;
5/22&amp;lt;br&amp;gt;&lt;br /&gt;
• Worked on LLM setup&amp;lt;br&amp;gt;&lt;br /&gt;
5/23&amp;lt;br&amp;gt;&lt;br /&gt;
• Ran and finetuned a basic test LLM model for extracted data&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Caitlin Haedrich | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* Event photographs, food coordination&lt;br /&gt;
* git/github mentoring&lt;br /&gt;
* GRASS mentoring&lt;br /&gt;
* Lightning Talk preparation&lt;br /&gt;
* Preparing workshop for [https://www.geomorphometry2025.org/ Geomorphometry2025]&lt;br /&gt;
&lt;br /&gt;
=== Brendan Harmon | Louisiana State University ===&lt;br /&gt;
&lt;br /&gt;
* Developing ([https://github.com/baharmon/r.earthworks r.earthworks]) addon &amp;amp; tutorials&lt;br /&gt;
* [https://github.com/baharmon?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
&lt;br /&gt;
=== Linda Karlovska | Czech Technical University in Prague ===&lt;br /&gt;
&lt;br /&gt;
* Fix uninitialized variables in DOutFile() method: ([https://github.com/OSGeo/grass/pull/5650 PR])&lt;br /&gt;
* Update figures related to GUI: ([https://github.com/OSGeo/grass/pull/5651  PR])&lt;br /&gt;
&lt;br /&gt;
Working on integration of the Jupyter notebooks to GUI (work for the whole week :-))&lt;br /&gt;
&lt;br /&gt;
=== Martin Landa | Czech Technical University in Prague ===&lt;br /&gt;
&lt;br /&gt;
* Tutorial: GISMentors courses updated ([https://github.com/OSGeo/grass-tutorials/pull/45 PR])&lt;br /&gt;
* libgis: G__usage_markdown() include tool label in metadata if defined ([https://github.com/OSGeo/grass/pull/5677 PR])&lt;br /&gt;
* PyGRASS: Module description property not defined always ([https://github.com/OSGeo/grass/pull/5681 PR])&lt;br /&gt;
* Website: OpenGeoLabs commercial support ([https://github.com/OSGeo/grass-website/pull/537 PR])&lt;br /&gt;
* v.select: create output also when no features found ([https://github.com/OSGeo/grass/pull/5696 PR])&lt;br /&gt;
* wxGUI: avoid creating nested list of errors (Graphical modeler) ([https://github.com/OSGeo/grass/pull/5700 PR])&lt;br /&gt;
* wxGUI/gmodeler: refactor - move ModelParamDialog to dialogs.py ([https://github.com/OSGeo/grass/pull/5715 PR])&lt;br /&gt;
* GUI: make Python editor dockable ([https://github.com/OSGeo/grass/pull/5733 PR])&lt;br /&gt;
* r.relief: module label changed to description ([https://github.com/OSGeo/grass/pull/5741 PR])&lt;br /&gt;
* GUI: propagate previously defined where option value ([https://github.com/OSGeo/grass/pull/5747 PR])&lt;br /&gt;
* GUI: always show 'Close dialog on finish' option ([https://github.com/OSGeo/grass/pull/5751 PR])&lt;br /&gt;
* GUI: do not remove parameter value on dialog update event ([https://github.com/OSGeo/grass/pull/5760 PR])&lt;br /&gt;
&lt;br /&gt;
=== Nicklas Larsson | Hungarian National Museum ===&lt;br /&gt;
&lt;br /&gt;
Planned work: CMake build system; perhaps Conda recipe&lt;br /&gt;
&lt;br /&gt;
[https://github.com/nilason?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
&lt;br /&gt;
* Preparation for CMake build conforming to Filesystem Hierarchy Standard (FHS), resolving resource paths for both the current and FHS in code. In collaboration with Huidae Cho and with important input from Vaclav Petras ([https://github.com/OSGeo/grass/pull/5630 PR5630])&lt;br /&gt;
&lt;br /&gt;
* Helped young students in build configuration and debugging techniques.&lt;br /&gt;
&lt;br /&gt;
* Discussion with several participants on solutions to publish a GRASS package to Conda-forge.&lt;br /&gt;
&lt;br /&gt;
=== Chung-Yuan Liang ===&lt;br /&gt;
&lt;br /&gt;
* parallelize some modules, improve testing&lt;br /&gt;
&lt;br /&gt;
=== Andres Lucero | Bohannan Huston Inc ===&lt;br /&gt;
&lt;br /&gt;
* r.in.pdal&lt;br /&gt;
&lt;br /&gt;
=== Alen Mangafić | Geodetic Institute of Slovenia ===&lt;br /&gt;
Monday May 19 &lt;br /&gt;
* Presentationf of i.hyper, add-on which offers hyperspectral data support in GRASS.&lt;br /&gt;
* Architecture of the multi-module addon&lt;br /&gt;
Tuesday May 20&lt;br /&gt;
* i.hyper.import module: importing EnMAP imagery as 3D raster map&lt;br /&gt;
* i.hyper.preproc module: draft&lt;br /&gt;
Wednesday May 21&lt;br /&gt;
* fixing the i.hyper.import module&lt;br /&gt;
* i.hyper.preproc module: implementing Savitzky-Golay filter&lt;br /&gt;
&lt;br /&gt;
=== Helena Mitasova | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* standardized data set and related tutorials&lt;br /&gt;
* documentation for interpolation tools&lt;br /&gt;
* collaborate/coordinate/discuss hydrology tools (analytics, simulations, soil properties inputs)&lt;br /&gt;
* assist with wiki cleanup if needed&lt;br /&gt;
&lt;br /&gt;
Monday May 19&lt;br /&gt;
* investigated issues with v.surf.rst documentation in source code, tested and identified fixes needed&lt;br /&gt;
* discussed coupling GRASS with Blender versus potree for 3D object rendering with Brendan, Anna and Caitlin (for TL activities and other applications)&lt;br /&gt;
* discussed soil data for runoff estimation and other hydro topics, to be worked on on day 2&lt;br /&gt;
&lt;br /&gt;
Tuesday May 20&lt;br /&gt;
* worked with Corey on fixing v.surf.rst documentation, discussed ideas for improvements and for documentation / tutorial for cross-valiadation&lt;br /&gt;
* discussed suggestions for graphics and examples to be inculded in v.surf.rst docs with Michelle &lt;br /&gt;
* discussed new developments in hydrology tools&lt;br /&gt;
* experimented with basic/standardized versus specialized data sets for documentation and tutorials&lt;br /&gt;
&lt;br /&gt;
Wednesday May 21&lt;br /&gt;
* explored existing tutorials, emailed Paulo about finishing the one on interpolation&lt;br /&gt;
* tested NM basic data set with GIS582 class assignment (very cool)&lt;br /&gt;
* discussed design of Jnotebooks that would work with various localized data with Caitlin&lt;br /&gt;
&lt;br /&gt;
Thursday May 22&lt;br /&gt;
* discussed needed capabilities for a more advanced color ramp processing tool with Brendan&lt;br /&gt;
* added further ideas to basic dataset document after talking to Vero - we just need standardized names for the localized tutorials to work&lt;br /&gt;
* discussed infiltration fix pull request for r.sim.water with Anna - more work is needed&lt;br /&gt;
&lt;br /&gt;
=== Michael Mulqueen | MassGIS ===&lt;br /&gt;
&lt;br /&gt;
* depth to water, hydro from lidar, etc&lt;br /&gt;
&lt;br /&gt;
=== Māris Nartišs ===&lt;br /&gt;
&lt;br /&gt;
* Taking photos of the event&lt;br /&gt;
* Introduced a new GRASS core module r.smooth.edgepreserve&lt;br /&gt;
* Discussed architecture of hyperspectral data import and per-processing tool&lt;br /&gt;
* Discussed testing and organizing AI modules downloading data from internet&lt;br /&gt;
* Prepared and gave a presentation on code preparation for translations (best practice)&lt;br /&gt;
* Debugging translation file updating with Edouard&lt;br /&gt;
* Changed default multiprocessor setting to always use maximum number of available threads&lt;br /&gt;
* Unified max process setting handling in all modules that use default parser parameter&lt;br /&gt;
* Discovered and supervised fixing a bug in r.univar parallelization code&lt;br /&gt;
* Discussing requirements for raster data reading parallelization (GRASS 9)&lt;br /&gt;
&lt;br /&gt;
=== Ondřej Pešek | Czech Technical University in Prague ===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/pesekon2?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
* Refactoring, fixing, improving, discussing g.gui.gmodeler&lt;br /&gt;
* Discussing hyperspectral with Alen Mangafic&lt;br /&gt;
* Discussing jupyter in single GUI with Linda Karlovska&lt;br /&gt;
* PyGRASS&lt;br /&gt;
* Docs&lt;br /&gt;
* CQ&lt;br /&gt;
* Reviewing PRs, PR archeology&lt;br /&gt;
&lt;br /&gt;
=== Vaclav (Vashek) Petras | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/wenzeslaus?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
* My focus: Getting feedback and ideas for computational engine use case, APIs, funding.&lt;br /&gt;
* Summit organizing&lt;br /&gt;
* Implementing rebranding on GitHub (repos, teams)&lt;br /&gt;
* Feedback session on project image&lt;br /&gt;
* Feedback session on easier access to tools&lt;br /&gt;
* Discussed LLMs with Neel Ghoshal, Riya&lt;br /&gt;
* Discussed session setupp  Martin Landa&lt;br /&gt;
* Discussed conda with Nicklas Larsson&lt;br /&gt;
* Discussed hyperspectral with Alen Mangafić, Veronica Andreo, and Anna Petrasova&lt;br /&gt;
* Discussed code for new smoothing tool, integer overflows, translations with Māris Nartišs&lt;br /&gt;
* Compared setup of GRASS session and project in fasterRaster, QGIS, and GRASS itself with Adam Smith&lt;br /&gt;
* Discussed potential of Pixi for packaging or compilation with Gregory Power&lt;br /&gt;
* Discussed itzi model distribution issues with Laurent Courty&lt;br /&gt;
* Discussed r.horizon parallelization with Chung-Yuan Liang and Anna Petrasova&lt;br /&gt;
* Answered coding and setup questions for Neel Ghoshal, Abdullah Azzam, and Alen Mangafić&lt;br /&gt;
&lt;br /&gt;
=== Anna Petrasova | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/petrasovaa?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
* plan: mentoring, documentation&lt;br /&gt;
* Monday&lt;br /&gt;
** discussing hyperspectral implementation with Alen&lt;br /&gt;
** helping mentee David Farris implementing his gravity correction addon&lt;br /&gt;
* Tuesday&lt;br /&gt;
** delivered intro to creating an addon, documentation&lt;br /&gt;
** mentoring Alen, Abdullah&lt;br /&gt;
** discussing bug in i.his.rgb with Jayneel&lt;br /&gt;
** reviews&lt;br /&gt;
* Wednesday&lt;br /&gt;
** discuss and demonstrate tutorials page&lt;br /&gt;
** mentoring Alen, Jayneel&lt;br /&gt;
* call with GSoC student&lt;br /&gt;
* Thursday&lt;br /&gt;
* Friday&lt;br /&gt;
** grass repo README&lt;br /&gt;
** reviews&lt;br /&gt;
&lt;br /&gt;
=== Gregory Power | Town of Cary ===&lt;br /&gt;
&lt;br /&gt;
* Documentation&lt;br /&gt;
&lt;br /&gt;
=== Pratikshya Regmi | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* Event photographs and videos&lt;br /&gt;
* Opened a pull request to change GRASS GIS to GRASS on the documentation (this was my first contribution to GRASS)&lt;br /&gt;
* Worked on preparing the mock document for LLM RAG&lt;br /&gt;
* Wrote a tutorial to  Visualize Contour Lines with a Color Gradient with Folium.&lt;br /&gt;
&lt;br /&gt;
=== Riya | Indian Institute of Technology, Roorkee ===&lt;br /&gt;
&lt;br /&gt;
* I am currently thinking of developing an AI Agent for the grass jupyter library which will help the users with mathematical calculations done in GIS.&lt;br /&gt;
&lt;br /&gt;
=== Jayneel Shah | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* improve the test coverage of imagery modules.&lt;br /&gt;
&lt;br /&gt;
=== Krishna Prasad Sheshadri ===&lt;br /&gt;
&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
=== Adam Smith | Missouri Botanical Garden ===&lt;br /&gt;
&lt;br /&gt;
Overall: R package fasterRaster (fielding bug reports, adding features)&lt;br /&gt;
&lt;br /&gt;
Monday:&lt;br /&gt;
* Assessed scope of fasterRaster issue [https://github.com/adamlilith/fasterRaster/issues/83 83]&lt;br /&gt;
&lt;br /&gt;
Tuesday:&lt;br /&gt;
* Created a PR for fasterRaster tutorial on GRASS tutorials page.&lt;br /&gt;
* Improved handling of addons, including autodetect and installing when needed, enabling easier creation of addon-dependent methods.&lt;br /&gt;
* Presented *fasterRaster* package to group.&lt;br /&gt;
&lt;br /&gt;
Wednesday:&lt;br /&gt;
* Created fasterRaster methods for neighborhood matrices, terrain ruggedness index, and multivariate environmental similarity&lt;br /&gt;
&lt;br /&gt;
=== Michelle (Mimi) Stephens | ERDC ===&lt;br /&gt;
&lt;br /&gt;
* Previous work: coupling R and Python scripts for computational analysis in GRASS.&lt;br /&gt;
* Current work: Running through GRASS commands to create visual outputs that can be added to the new GRASS 8.5 manual pages - r.mapcalc, v.surf.rst, examples with topographic parameters, LinkedIn requests.&lt;br /&gt;
* Tutorial for Windows users to install a WSL2 Linux environment. Creates a conda environment with wxpython, installs GRASS without requiring OSGeo installer. Fast, simple, and minimal install. Resolves various issues encountered in government due to automatic Windows updates, cyber security, vpn routing, user preference, and isolated distro can be completely removed if needed. -&amp;gt; Motivation for WSL2 - wanted more hands-on practice with Unix command line tools for HPC; Docker not allowed, but miniforge and Apptainer are on ERDC's HPC; able to install grass via command line (only on internet-capable HPC systems); AND - For other users that always wanted a more native feel to their grass instance!&lt;br /&gt;
* Future work: Presenting on GRASS in JUNE at CERLCON.&lt;br /&gt;
&lt;br /&gt;
=== Corey White | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* JSON, mentoring&lt;br /&gt;
&lt;br /&gt;
=== Doug Newcomb | Semi Retired Cartographer ===&lt;br /&gt;
&lt;br /&gt;
* Discussed hydroflattening method&lt;br /&gt;
* Discussed direct point cloud input to v.surf.rst&lt;br /&gt;
* Learning git procedures by updating branding (GRASS GIS to GRASS)  for raster commands&lt;br /&gt;
Tuesday&lt;br /&gt;
* Continued updating branding for raster commands&lt;br /&gt;
* Started working on tutorial for r.hydro.flatten&lt;br /&gt;
&lt;br /&gt;
=== Natalie Trso | Balance Geo LLC ===&lt;br /&gt;
&lt;br /&gt;
* r.sim.water&lt;br /&gt;
&lt;br /&gt;
== Guests and remote participants ==&lt;br /&gt;
&lt;br /&gt;
=== Luís de Sousa | University of Lisbon ===&lt;br /&gt;
&lt;br /&gt;
* Review outstanding PRs&lt;br /&gt;
* Prepare GRASS sessions for the OpenGeoHub Summer School&lt;br /&gt;
&lt;br /&gt;
=== Markus Neteler | mundialis ===&lt;br /&gt;
&lt;br /&gt;
* Support full automation of new GRASS manual pages deployment on server (upload artifacts from GitHub to OSGeo servers (grass and download))&lt;br /&gt;
* Source code license documentation: Using SPDX License IDs ({{GH-Issues|4190}})&lt;br /&gt;
* Support Wiki cleanup&lt;br /&gt;
* [https://github.com/neteler?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub contributions]&lt;br /&gt;
&lt;br /&gt;
=== Nishant Bansal | Indian Institute of Technology, Varanasi ===&lt;br /&gt;
&lt;br /&gt;
* Review the previous work on JSON during last year’s GSoC, including enhancements and the addition of JSON output support to other modules.&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Talk:GRASS_Developer_Summit_Raleigh_2025&amp;diff=28403</id>
		<title>Talk:GRASS Developer Summit Raleigh 2025</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Talk:GRASS_Developer_Summit_Raleigh_2025&amp;diff=28403"/>
		<updated>2025-05-23T21:17:47Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: /* Day 6, Saturday, May 24 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{toc|right}}&lt;br /&gt;
&lt;br /&gt;
Quick links: [[GRASS Developer Summit Raleigh 2025|Meeting page]] | [[#Participant_reports|Reports]]  |  [[GRASS_Developer_Summit_Raleigh_2025#Sponsors|Sponsors]]&lt;br /&gt;
&lt;br /&gt;
== Organizing Team ==&lt;br /&gt;
&lt;br /&gt;
* Initial planning: Vaclav Petras, Anna Petrasova, Veronica Andreo, Corey White, Lois Utt, Sarah White, Doug Newcomb, Huidae Cho, Veronica Andreo ([[GRASS_Developer_Summit_Raleigh_2025#Organizing_Committee|Organizing Committee]])&lt;br /&gt;
* Budget: Vaclav Petras, Lois Utt, Anna Petrasova&lt;br /&gt;
* Raising support: Helena Mitasova, Vaclav Petras, Anna Petrasova, Michael Barton, Giuseppe Amatulli ([[NSF POSE Project 2023-2025 Timeline|NSF POSE project]] proposal authors)&lt;br /&gt;
* Travel: Lois Utt&lt;br /&gt;
* Venue: Vaclav Petras, Lois Utt&lt;br /&gt;
* Meals: Lois Utt, Sarah White, Vaclav Petras, Corey White, Anna Petrasova&lt;br /&gt;
* Agenda: Vaclav Petras, Huidae Cho, Anna Petrasova&lt;br /&gt;
* Wiki page: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Swag: Sarah White, Vaclav Petras, Anna Petrasova, Corey White&lt;br /&gt;
* Promotion, invitations, and social media: Vaclav Petras, Sarah White, Corey White, John Vogler&lt;br /&gt;
* Lightning talks organization: Vaclav Petras, Zachary Arcaro, John Vogler&lt;br /&gt;
* Lightning talk speakers: Vaclav Petras (welcome), Markus Metz and Markus Neteler (talk presented by Vaclav Petras), Anna Petrasova, Veronica Andreo, Robert Dzur, Nick Brady, Huidae Cho, Gregory Power, Doug Newcomb, Caitlin Haedrich&lt;br /&gt;
* Photography: Caitlin Haedrich, Māris Nartišs, Pratikshya Regmi&lt;br /&gt;
* Portrait photography: Riya, Caitlin Haedrich, Natalie Trso&lt;br /&gt;
&lt;br /&gt;
== Detailed Schedule ==&lt;br /&gt;
&lt;br /&gt;
=== Day 1, Monday, May 19 ===&lt;br /&gt;
&lt;br /&gt;
Location: Talley Student Union, 2610 Cates Ave ([https://www.google.com/maps/place/Talley+Student+Union/data=!4m2!3m1!1s0x0:0x38989377c96adef0?sa=X&amp;amp;ved=1t:2428&amp;amp;ictx=111 map])&lt;br /&gt;
&lt;br /&gt;
Room: 5101-Executive Board Room&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''Contributing to GRASS. Getting started. Is it easy to contribute?''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:30-9:00 || Breakfast || Catered breakfast on site. Meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || What to expect from the event, contributing to GRASS using Git and GitHub, making your first contribution.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || i.hyper: Integrating Hyperspectral Imagery Processing into GRASS - Alen Mangafić&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || &lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Project Image - Vaclav Petras&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || Catered food on site.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || We will walk to [https://www.trophybrewing.com/brewing-pizza Trophy Brewing &amp;amp; Pizza] ([https://maps.app.goo.gl/ggnZ7EvXbWqDUmvP9 directions], 30 min walk from Talley)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 2, Tuesday, May 20 ===&lt;br /&gt;
&lt;br /&gt;
Location: Talley Student Union, 2610 Cates Ave ([https://www.google.com/maps/place/Talley+Student+Union/data=!4m2!3m1!1s0x0:0x38989377c96adef0?sa=X&amp;amp;ved=1t:2428&amp;amp;ictx=111 map])&lt;br /&gt;
&lt;br /&gt;
Room: 5101-Executive Board Room&lt;br /&gt;
&lt;br /&gt;
Highlighted topics: ''Hydrology and Interfacing with R and QGIS (gathering user feedback, testing, discussing with developers, developing action items)''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:30-9:00 || Breakfast || Breakfast on site. Start the day, meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || Introduction to writing GRASS tools, program for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || fasterRaster R package - Adam Smith&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Hydography90m + Geocomputation Courses - Giuseppe&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Flood modelling with grass and itzi ([https://itzi.org]) - Laurent Courty&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || [https://maps.app.goo.gl/womSkce9DrE8CTnR8 Case dining hall]&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || [https://maps.app.goo.gl/CQiWoCAQNt1ymZkb7 Served in Jordan Hall at the Center for Geospatial Analytics], evaluate the day's accomplishments, plan and prioritize for the next few days.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 3, Wednesday, May 21 ===&lt;br /&gt;
&lt;br /&gt;
Location: Talley Student Union, 2610 Cates Ave ([https://www.google.com/maps/place/Talley+Student+Union/data=!4m2!3m1!1s0x0:0x38989377c96adef0?sa=X&amp;amp;ved=1t:2428&amp;amp;ictx=111 map])&lt;br /&gt;
&lt;br /&gt;
Room: 5101-Executive Board Room&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''Non-coding contributions, natural language translation, and internationalization.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 7:00-9:00 || Breakfast || [https://maps.app.goo.gl/eZ8VK8Mx6TjMt9NP8 Case dining hall]&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || Introduction to non-coding contributions, tutorials, contributing examples, natural language translation and internationalization (procedures, glossaries, code customization, translation).&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || Easier access to GRASS tools - Vaclav Petras&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || &lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || GRASS backend for xarray and temporal framework global variables ([https://github.com/OSGeo/grass/issues/629]) - Laurent Courty&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || Served on site. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || [https://maps.app.goo.gl/1E39eySMVaxYJUUS8 Picnic at Pullen Park, shelter #3. In case of bad weather, dinner at the Center for Geospatial Analytics.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 4, Thursday, May 22 ===&lt;br /&gt;
&lt;br /&gt;
Location: Center for Geospatial Analytics, Jordan Hall, 2800 Faucette Drive ([https://www.google.com/maps/search/Jordan+Hall/@35.7816832,-78.6772765,18z/data=!3m1!4b1?entry=ttu&amp;amp;g_ep=EgoyMDI1MDQyMC4wIKXMDSoJLDEwMjExNDUzSAFQAw%3D%3D map])&lt;br /&gt;
&lt;br /&gt;
Room: 5103 (straight from the two elevators, at the end of the hallway)&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''Project vision and computational engine use case.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:00-9:00 || Breakfast || On site. Start the day, meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || Project vision and the computational engine use case (missing features, documentation, user groups).&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || NSF POSE I-Corps Interviews - Corey White&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback session || YAIT - Yet Another Interface to Tools - Vaclav Petras &lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback session || Modernizing Color Tables (Brendan)&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || On site. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-16:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 16:00-17:00 || Lightning talks || Fast-paced talks, showcasing applications of GRASS, room 5111.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Reception || Connect with researchers, government professionals, and industry collaborators, rooms 5111 and 5119.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 5, Friday, May 23 ===&lt;br /&gt;
&lt;br /&gt;
Location: James B. Hunt Jr. Library, 1070 Partners Way - Centennial Campus ([https://www.google.com/maps/place/James+B.+Hunt+Jr.+Library/@35.7693736,-78.679167,17z/data=!3m1!5s0x89acf5759f5a31df:0xc547454a0151c440!4m10!1m2!2m1!1shunt+library!3m6!1s0x89acf5759f591f41:0xbe0266269ce37f59!8m2!3d35.7693215!4d-78.6764409!15sCgxodW50IGxpYnJhcnlaDiIMaHVudCBsaWJyYXJ5kgESdW5pdmVyc2l0eV9saWJyYXJ54AEA!16s%2Fm%2F0r4wjf_?entry=ttu&amp;amp;g_ep=EgoyMDI1MDQyMC4wIKXMDSoJLDEwMjExNDUzSAFQAw%3D%3D map])&lt;br /&gt;
&lt;br /&gt;
Room: Faculty Research Commons - 5100 ([https://www.lib.ncsu.edu/hunt/map floor plan])&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''GRASS project's future course.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 7:45-8:15 || Breakfast || '''Hotel Aloft (2nd floor).''' Search for Lois!&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || GRASS project's future course.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-12:00 || PSC meeting || Project Steering Committee meets (public).&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Rescheduled for Saturday&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || Walk to [https://maps.app.goo.gl/kHVHY62QxTd6wHKd9 On the Oval Culinary Creations]. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || Dinner on your own. Corey White will organize trip to downtown. Bus 41 from Hunt library to hotel and then walk.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 6, Saturday, May 24 ===&lt;br /&gt;
&lt;br /&gt;
Location: James B. Hunt Jr. Library, 1070 Partners Way - Centennial Campus ([https://www.google.com/maps/place/James+B.+Hunt+Jr.+Library/@35.7693736,-78.679167,17z/data=!3m1!5s0x89acf5759f5a31df:0xc547454a0151c440!4m10!1m2!2m1!1shunt+library!3m6!1s0x89acf5759f591f41:0xbe0266269ce37f59!8m2!3d35.7693215!4d-78.6764409!15sCgxodW50IGxpYnJhcnlaDiIMaHVudCBsaWJyYXJ5kgESdW5pdmVyc2l0eV9saWJyYXJ54AEA!16s%2Fm%2F0r4wjf_?entry=ttu&amp;amp;g_ep=EgoyMDI1MDQyMC4wIKXMDSoJLDEwMjExNDUzSAFQAw%3D%3D map])&lt;br /&gt;
&lt;br /&gt;
Room: Faculty Research Commons - 5100 ([https://www.lib.ncsu.edu/hunt/map floor plan])&lt;br /&gt;
&lt;br /&gt;
Highlighted topics: ''NSF POSE project evaluation.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:00-8:30 || Breakfast || We will have pastries at [https://maps.app.goo.gl/EwzNxeovv4rTivjK9 Lake Raleigh]. Feel free to bring your own coffee.&lt;br /&gt;
|-&lt;br /&gt;
| 8:30-10:00 || Hike || Library opens at 10AM.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || Your topic here (10-minute presentation and 10-minute discussion)&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || GRASS tools: core and additional functionality (MartinL)&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || TBA. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || TBA. &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Daily tasks for participants ==&lt;br /&gt;
&lt;br /&gt;
* List all the things you are working on in the Participant reports section below. Update the list each day. Include things you work on with other people.&lt;br /&gt;
* If you want to discuss something with the whole group, add yourself to a Self-organized feedback sessions slot in the schedule above or tell Vaclav (Vashek) Petras.&lt;br /&gt;
* For people with triage access and above: If you are or will be working on an issue or on a PR which is not originally submitted by you, assign yourself to the issue or PR. (You can unassign yourself later if you change your mind.)&lt;br /&gt;
&lt;br /&gt;
== Participant reports ==&lt;br /&gt;
&lt;br /&gt;
Per-person reports from the meeting.&lt;br /&gt;
&lt;br /&gt;
=== Giuseppe Amatulli | Yale University ===&lt;br /&gt;
&lt;br /&gt;
* Testing r.watershed and r.stream.* for handling large datasets&lt;br /&gt;
* Running r.flowaccumulation at global level using water direction from hydrography90m &lt;br /&gt;
* Preparing the grass tutorial material for the https://www.geomorphometry2025.org/ conference&lt;br /&gt;
&lt;br /&gt;
=== Veronica Andreo | CONICET - Instituto Gulich ===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/veroandreo?tab=overview&amp;amp;from=2025-05-12&amp;amp;to=2025-05-24 GitHub contributions]&lt;br /&gt;
* Enhanced the website footer.&lt;br /&gt;
* Sync icons on the Tutorials website footer to those on the main website.&lt;br /&gt;
* Fix descriptions and their display on the tutorials website.&lt;br /&gt;
* Fix GRASS page on OSGeo website [https://www.osgeo.org/projects/grass-gis/] &lt;br /&gt;
** Changed logo, removed GIS from the name, fixed old links.&lt;br /&gt;
* Social media posts.&lt;br /&gt;
* Discussion about hyperspectral with Alen and Anna.&lt;br /&gt;
* Expand the GRASS acronym on the home page.&lt;br /&gt;
* Remove GIS from GRASS name on the website.&lt;br /&gt;
* Review tutorials by Huidae and Adam Smith.&lt;br /&gt;
* Add external tutorials by Huidae and the one from FOSS4G 2024.&lt;br /&gt;
* Started adding the time series tutorials.&lt;br /&gt;
* Add lightbox class in get-started tutorials so images can be clicked on.&lt;br /&gt;
* GRASS PSC admin stuff.&lt;br /&gt;
* Participated of the PSC meeting.&lt;br /&gt;
* Talk to Tonis Kardi from FOSS4G EU LOC to have a &amp;quot;State of GRASS&amp;quot; talk in the program. Alen will be presenting.&lt;br /&gt;
* Gave a lightning talk: GRASS-fed species distribution models.&lt;br /&gt;
* Discussed with Corey and Mimi about tutorials.&lt;br /&gt;
&lt;br /&gt;
=== Abdullah Azzam | New Mexico State University ===&lt;br /&gt;
&lt;br /&gt;
* Created first PR; fixed broken links on the website [https://github.com/OSGeo/grass-website/pull/538 #538]&lt;br /&gt;
* Pushed a new GRASS Addon ''r.curvenumber'' [https://github.com/OSGeo/grass-addons/pull/1403 #1403]&lt;br /&gt;
&lt;br /&gt;
=== Michael Barton | Arizona State University ===&lt;br /&gt;
&lt;br /&gt;
* POSE related activities&lt;br /&gt;
&lt;br /&gt;
=== Laura Belica | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* have been working on developing a workflow-tool tutorial template that facilitates GRASS learners who tend to 'jump in' or have a 'choose your own adventure' approach to learning GRASS (i.e., want to use their data for their study area for their objective from the start).  The structure of the tutorial template is a concise, basic, general description/instructions of the workflow with optional links to pertinent explanatory/deeper dive content  (e.g.,  plain language explainers of the tool, options, defaults, etc.) in a variety of formats (e.g., captioned images, short tool demo videos (30 sec to 2 min)) in addition to the more comprehensive resources available (e.g. documentation, examples, tutorials).  The main motivation for this approach is to help new and occasional GRASS users avoid some of the common pitfalls and to learn how to find workarounds for some of the unanticipated challenges they may encounter with their specific datasets or use cases so that they can learn as they go.  Another motivation for this approach is to facilitate the translation, extension, and updating of workflow tutorials by the community over time (e.g., providing audio and closed captioning for one of the tool-demo videos in another language, replacing an outdated GUI demo with one for the current release, or incorporating a new add-on as an option in the workflow).&lt;br /&gt;
&lt;br /&gt;
* my focus this week is on developing a draft/test tutorial (in Quarto) for a standard hydrological modelling workflow that begins with the crucial pre-work of how to figure out the appropriate project/location, etc. as well as considerations of some of the downstream impacts of resolution, extent, region etc. It may not be ready for sharing by the end of the week, but suggestions and advice are welcomed in advance.&lt;br /&gt;
&lt;br /&gt;
19 May&lt;br /&gt;
* discussed a novice user issue with 'moving' vector data from one location to another with Vero and learned a neat GUI option &lt;br /&gt;
* revised and added workflow tutorial text&lt;br /&gt;
&lt;br /&gt;
=== Shonil Sateesh Bhide | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* CI optimization&lt;br /&gt;
&lt;br /&gt;
=== Huidae Cho | New Mexico State University ===&lt;br /&gt;
&lt;br /&gt;
* CMake, conda, CI, Mentoring&lt;br /&gt;
&lt;br /&gt;
Monday 5/19&lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/5680 CMake: Recognize conda installation path at runtime]: Replaced by [https://github.com/HuidaeCho/grass-conda/blob/master/recipe/post-link.sh conda post-link.sh]&lt;br /&gt;
* CMake and Conda Testing on Linux&lt;br /&gt;
* CMake Testing on Windows&lt;br /&gt;
* Mentoring: Chung-Yuan, Abdullah&lt;br /&gt;
&lt;br /&gt;
Tuesday 5/20&lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/5712 CMake: Define custom complex types for MSVC LAPACKE]&lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/5713 CMake: Fix build output directories for MSVC]&lt;br /&gt;
* CMake and Conda Testing on Linux&lt;br /&gt;
* CMake Testing on Windows&lt;br /&gt;
&lt;br /&gt;
Wednesday 5/21&lt;br /&gt;
* Translation Talk&lt;br /&gt;
* Translation Discussion with Edouard&lt;br /&gt;
* Flow Direction Meeting with Ondrej, Ondrej's Student, Martin, and Markus Metz&lt;br /&gt;
* CMake and Conda Testing on Linux&lt;br /&gt;
* CMake Testing on Windows&lt;br /&gt;
* Mentoring: Chung-Yuan, Abdullah&lt;br /&gt;
&lt;br /&gt;
Thursday 5/22&lt;br /&gt;
* [https://github.com/OSGeo/grass/pull/5740 CMake: Fix the parameter is incorrect: . error for MSVC]&lt;br /&gt;
* Lightning Talk&lt;br /&gt;
* CMake and Conda Testing on Linux&lt;br /&gt;
* CMake Testing on Windows&lt;br /&gt;
* CI: Discussion with Edouard&lt;br /&gt;
* Mentoring: Chung-Yuan, Abdullah&lt;br /&gt;
&lt;br /&gt;
=== Edouard Choinière ===&lt;br /&gt;
&lt;br /&gt;
* Quick ideas, way too much for a week: Helping others (may take a reasonable part of the time), managing CI, setting up localization template updating workflow, backporting tool? Pytest/coverage improvements? Discuss and design other projects, to work on during the year. Open to change on other priorities once there, anything that is useful. Maybe make a little progress on high dpi GUI, especially on Windows.&lt;br /&gt;
&lt;br /&gt;
* Weekend before sprint:&lt;br /&gt;
** Clear up Renovate PRs to not use CI time during the sprint, reviewing and merging: [https://github.com/OSGeo/grass/pull/5664 #5664], [https://github.com/OSGeo/grass/pull/5665 #5665], [https://github.com/OSGeo/grass/pull/5666 #5666], [https://github.com/OSGeo/grass/pull/5667 #5667], [https://github.com/OSGeo/grass/pull/5668 #5668]&lt;br /&gt;
** PR to avoid some CI run time for the sprint: [https://github.com/OSGeo/grass/pull/5670 #5670]&lt;br /&gt;
** Reviewed open PRs for PRs that were mergeable before the sprint, updated outdated PRs to avoid having it needing CI time during sprint. Only ended up merging [https://github.com/OSGeo/grass/pull/5658 #5658], but another reviewed one that might still need changes: [https://github.com/OSGeo/grass/pull/5628 #5628]&lt;br /&gt;
* Monday May 19, 2025:&lt;br /&gt;
** PR got merged: [https://github.com/OSGeo/grass/pull/5670 #5670],[https://github.com/OSGeo/grass/pull/5550 #5550]&lt;br /&gt;
** Reviewed PRs: [https://github.com/OSGeo/grass/pull/5671 #5671], [https://github.com/OSGeo/grass/pull/5672 #5672]&lt;br /&gt;
** Discussions:&lt;br /&gt;
*** Shonil Sateesh Bhid &amp;amp; Shuham on their CI &amp;amp; pytest work and project.&lt;br /&gt;
*** Māris Nartišs about a potential issue and improvement for it. Will be discussed in the security reporting tab, also allowing to test the security vulnerability reporting process. + Research on existing solutions&lt;br /&gt;
** Reviewed: [https://github.com/OSGeo/grass/pull/5682 #5682], [https://github.com/OSGeo/grass/pull/5660 #5660],&lt;br /&gt;
** Reviewed, edited and merged: [https://github.com/OSGeo/grass/pull/3672 #3672]&lt;br /&gt;
** Discussed/helped user for: [https://github.com/OSGeo/grass/pull/5678 #5678] and [https://github.com/OSGeo/grass/pull/5684 #5684]&lt;br /&gt;
** Long discussion and vision planning for windows scripting with Vaclav, concerning [https://github.com/OSGeo/grass/pull/5624 #5624]. Tested alternatives and tried the consequences of that PR. This older PR finally got merged.&lt;br /&gt;
** Created PRs for NSIS installer: [https://github.com/OSGeo/grass/pull/5685 #5685] and also [https://github.com/OSGeo/grass/pull/5686 #5686], which should address [https://github.com/OSGeo/grass/issues/5663 #5663]. Still needs to test it.&lt;br /&gt;
** Agreed on convention for titles with Vaclav, unblocking [https://github.com/OSGeo/grass/pull/5341 #5341]&lt;br /&gt;
** Found a name with Ondrej and finally merged older PRs of an external contributor [https://github.com/OSGeo/grass/pull/5473 #5473] and [https://github.com/OSGeo/grass/pull/5474 #5474]&lt;br /&gt;
* Thursday May 20, 2025:&lt;br /&gt;
** Reviewed: [https://github.com/OSGeo/grass/pull/5695 #5695]&lt;br /&gt;
** Merged PRs: [https://github.com/OSGeo/grass/pull/5673 #5673], [https://github.com/OSGeo/grass/pull/5691 #5691], [https://github.com/OSGeo/grass/pull/5690 #5690], [https://github.com/OSGeo/grass/pull/5684 #5684],&lt;br /&gt;
** Discussed with author of [https://github.com/OSGeo/grass/pull/5660 #5660] and [https://github.com/OSGeo/grass/issues/5659 #5659] about rgb/hsl bug and tests for help.&lt;br /&gt;
** Worked with Corey to adjust markdown links for new markdownlint rule, finishing up [https://github.com/OSGeo/grass/pull/5669 #5669]&lt;br /&gt;
** Created PRs: [https://github.com/OSGeo/grass/pull/5692 #5692], [https://github.com/OSGeo/grass/pull/5694 #5694], [https://github.com/OSGeo/grass/pull/5689 #5689]&lt;br /&gt;
* Wednesday May 21, 2025:&lt;br /&gt;
** Created a new set of GitHub rulesets for the required checks, applied with Vaclav. One of them is separated in order to increase velocity during the sprint&lt;br /&gt;
** Reviewed the branch protection rules for grass-addons repo with Vaclav. Creating rulesets will be possible after the sprint with the info collected.&lt;br /&gt;
** Reviewed the security reporting settings and secret scanning settings with Vaclav for the main grass repo.&lt;br /&gt;
** Got shown by Huidae Cho how to update the translation files, and reviewed Weblate settings. No settings changed, but a backup stored for 30 days was kept.&lt;br /&gt;
** Created a first implementation of a translation file update workflow&lt;br /&gt;
** Tested out the two NSIS installer PRs, the first one, for installing the VC runtime earlier doesn't work as expected, and after more research I don't know enough to fix it. The second PR with High-DPI improvement was correct and got merged [https://github.com/OSGeo/grass/pull/5685 #5685]&lt;br /&gt;
** Helped a student set up a grass installation on WSL with conda.&lt;br /&gt;
** PRs created: [https://github.com/OSGeo/grass/pull/5736 #5736], [https://github.com/OSGeo/grass/pull/5734 #5734]&lt;br /&gt;
** My PRs that got merged: [https://github.com/OSGeo/grass/pull/5685 #5685], [https://github.com/OSGeo/grass/pull/5341 #5341], [https://github.com/OSGeo/grass/pull/5689 #5689]&lt;br /&gt;
** Reviewed and merged multiple PRs, restarting failed required checks of the previous night.&lt;br /&gt;
&lt;br /&gt;
=== Laurent Courty ===&lt;br /&gt;
&lt;br /&gt;
* Objectives: An xarray backend for GRASS STRDS. Fixing related issues&lt;br /&gt;
* May 20&lt;br /&gt;
** Presented itzi&lt;br /&gt;
** Uploaded arm64 wheels to PyPI for MacOS and Linux ([https://pypi.org/project/itzi/#files])&lt;br /&gt;
** Discussed with other developers about issue #629&lt;br /&gt;
* May 21&lt;br /&gt;
** Uploaded xarray-grass to PyPI&lt;br /&gt;
** Added CI tests to xarray-grass&lt;br /&gt;
** Discussed with the group about the xarray-grass backend&lt;br /&gt;
** Discussed with the group about solving mapset switching in the temporal framework (issue #629)&lt;br /&gt;
** Created PR #5735 to address issue #629&lt;br /&gt;
* May 22&lt;br /&gt;
** Fix bug in PR #5735&lt;br /&gt;
&lt;br /&gt;
=== Robert S. Dzur | Bohannan Huston, Inc. ===&lt;br /&gt;
&lt;br /&gt;
* r.in.pdal&lt;br /&gt;
&lt;br /&gt;
=== David W. Farris | East Carolina University ===&lt;br /&gt;
&lt;br /&gt;
* A tool to calculate gravity terrain corrections&lt;br /&gt;
&lt;br /&gt;
=== Neel Ghoshal | NC State University ===&lt;br /&gt;
• LLM for helping users find tools&amp;lt;br&amp;gt;&lt;br /&gt;
5/19&amp;lt;br&amp;gt;&lt;br /&gt;
• Learnt how to PR (#5674)&amp;lt;br&amp;gt;&lt;br /&gt;
• Setup GRASS on system&amp;lt;br&amp;gt;&lt;br /&gt;
• Found small issue with compilation document&amp;lt;br&amp;gt;&lt;br /&gt;
• Discussed about the possible use case of LLM for helping users find tools&amp;lt;br&amp;gt;&lt;br /&gt;
5/20&amp;lt;br&amp;gt;&lt;br /&gt;
• Learnt about cookie cutter&amp;lt;br&amp;gt;&lt;br /&gt;
• Set up wsl on system&amp;lt;br&amp;gt;&lt;br /&gt;
• Compiled GRASS&amp;lt;br&amp;gt;&lt;br /&gt;
• Listed data sources for LLM training&amp;lt;br&amp;gt;&lt;br /&gt;
5/21&amp;lt;br&amp;gt;&lt;br /&gt;
• Extracted tool information from Markdown files&amp;lt;br&amp;gt;&lt;br /&gt;
• Started off with data cleaning&amp;lt;br&amp;gt;&lt;br /&gt;
5/22&amp;lt;br&amp;gt;&lt;br /&gt;
• Worked on LLM setup&amp;lt;br&amp;gt;&lt;br /&gt;
5/23&amp;lt;br&amp;gt;&lt;br /&gt;
• Ran and finetuned a basic test LLM model for extracted data&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Caitlin Haedrich | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* Event photographs, food coordination&lt;br /&gt;
* git/github mentoring&lt;br /&gt;
* GRASS mentoring&lt;br /&gt;
* Lightning Talk preparation&lt;br /&gt;
* Preparing workshop for [https://www.geomorphometry2025.org/ Geomorphometry2025]&lt;br /&gt;
&lt;br /&gt;
=== Brendan Harmon | Louisiana State University ===&lt;br /&gt;
&lt;br /&gt;
* Developing ([https://github.com/baharmon/r.earthworks r.earthworks]) addon &amp;amp; tutorials&lt;br /&gt;
* [https://github.com/baharmon?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
&lt;br /&gt;
=== Linda Karlovska | Czech Technical University in Prague ===&lt;br /&gt;
&lt;br /&gt;
* Fix uninitialized variables in DOutFile() method: ([https://github.com/OSGeo/grass/pull/5650 PR])&lt;br /&gt;
* Update figures related to GUI: ([https://github.com/OSGeo/grass/pull/5651  PR])&lt;br /&gt;
&lt;br /&gt;
Working on integration of the Jupyter notebooks to GUI (work for the whole week :-))&lt;br /&gt;
&lt;br /&gt;
=== Martin Landa | Czech Technical University in Prague ===&lt;br /&gt;
&lt;br /&gt;
* Tutorial: GISMentors courses updated ([https://github.com/OSGeo/grass-tutorials/pull/45 PR])&lt;br /&gt;
* libgis: G__usage_markdown() include tool label in metadata if defined ([https://github.com/OSGeo/grass/pull/5677 PR])&lt;br /&gt;
* PyGRASS: Module description property not defined always ([https://github.com/OSGeo/grass/pull/5681 PR])&lt;br /&gt;
* Website: OpenGeoLabs commercial support ([https://github.com/OSGeo/grass-website/pull/537 PR])&lt;br /&gt;
* v.select: create output also when no features found ([https://github.com/OSGeo/grass/pull/5696 PR])&lt;br /&gt;
* wxGUI: avoid creating nested list of errors (Graphical modeler) ([https://github.com/OSGeo/grass/pull/5700 PR])&lt;br /&gt;
* wxGUI/gmodeler: refactor - move ModelParamDialog to dialogs.py ([https://github.com/OSGeo/grass/pull/5715 PR])&lt;br /&gt;
* GUI: make Python editor dockable ([https://github.com/OSGeo/grass/pull/5733 PR])&lt;br /&gt;
* r.relief: module label changed to description ([https://github.com/OSGeo/grass/pull/5741 PR])&lt;br /&gt;
* GUI: propagate previously defined where option value ([https://github.com/OSGeo/grass/pull/5747 PR])&lt;br /&gt;
* GUI: always show 'Close dialog on finish' option ([https://github.com/OSGeo/grass/pull/5751 PR])&lt;br /&gt;
* GUI: do not remove parameter value on dialog update event ([https://github.com/OSGeo/grass/pull/5760 PR])&lt;br /&gt;
&lt;br /&gt;
=== Nicklas Larsson | Hungarian National Museum ===&lt;br /&gt;
&lt;br /&gt;
Planned work: CMake build system; perhaps Conda recipe&lt;br /&gt;
&lt;br /&gt;
[https://github.com/nilason?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
&lt;br /&gt;
* Preparation for CMake build conforming to Filesystem Hierarchy Standard (FHS), resolving resource paths for both the current and FHS in code. In collaboration with Huidae Cho and with important input from Vaclav Petras ([https://github.com/OSGeo/grass/pull/5630 PR5630])&lt;br /&gt;
&lt;br /&gt;
* Helped young students in build configuration and debugging techniques.&lt;br /&gt;
&lt;br /&gt;
* Discussion with several participants on solutions to publish a GRASS package to Conda-forge.&lt;br /&gt;
&lt;br /&gt;
=== Chung-Yuan Liang ===&lt;br /&gt;
&lt;br /&gt;
* parallelize some modules, improve testing&lt;br /&gt;
&lt;br /&gt;
=== Andres Lucero | Bohannan Huston Inc ===&lt;br /&gt;
&lt;br /&gt;
* r.in.pdal&lt;br /&gt;
&lt;br /&gt;
=== Alen Mangafić | Geodetic Institute of Slovenia ===&lt;br /&gt;
Monday May 19 &lt;br /&gt;
* Presentationf of i.hyper, add-on which offers hyperspectral data support in GRASS.&lt;br /&gt;
* Architecture of the multi-module addon&lt;br /&gt;
Tuesday May 20&lt;br /&gt;
* i.hyper.import module: importing EnMAP imagery as 3D raster map&lt;br /&gt;
* i.hyper.preproc module: draft&lt;br /&gt;
Wednesday May 21&lt;br /&gt;
* fixing the i.hyper.import module&lt;br /&gt;
* i.hyper.preproc module: implementing Savitzky-Golay filter&lt;br /&gt;
&lt;br /&gt;
=== Helena Mitasova | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* standardized data set and related tutorials&lt;br /&gt;
* documentation for interpolation tools&lt;br /&gt;
* collaborate/coordinate/discuss hydrology tools (analytics, simulations, soil properties inputs)&lt;br /&gt;
* assist with wiki cleanup if needed&lt;br /&gt;
&lt;br /&gt;
Monday May 19&lt;br /&gt;
* investigated issues with v.surf.rst documentation in source code, tested and identified fixes needed&lt;br /&gt;
* discussed coupling GRASS with Blender versus potree for 3D object rendering with Brendan, Anna and Caitlin (for TL activities and other applications)&lt;br /&gt;
* discussed soil data for runoff estimation and other hydro topics, to be worked on on day 2&lt;br /&gt;
&lt;br /&gt;
Tuesday May 20&lt;br /&gt;
* worked with Corey on fixing v.surf.rst documentation, discussed ideas for improvements and for documentation / tutorial for cross-valiadation&lt;br /&gt;
* discussed suggestions for graphics and examples to be inculded in v.surf.rst docs with Michelle &lt;br /&gt;
* discussed new developments in hydrology tools&lt;br /&gt;
* experimented with basic/standardized versus specialized data sets for documentation and tutorials&lt;br /&gt;
&lt;br /&gt;
Wednesday May 21&lt;br /&gt;
* explored existing tutorials, emailed Paulo about finishing the one on interpolation&lt;br /&gt;
* tested NM basic data set with GIS582 class assignment (very cool)&lt;br /&gt;
* discussed design of Jnotebooks that would work with various localized data with Caitlin&lt;br /&gt;
&lt;br /&gt;
Thursday May 22&lt;br /&gt;
* discussed needed capabilities for a more advanced color ramp processing tool with Brendan&lt;br /&gt;
* added further ideas to basic dataset document after talking to Vero - we just need standardized names for the localized tutorials to work&lt;br /&gt;
* discussed infiltration fix pull request for r.sim.water with Anna - more work is needed&lt;br /&gt;
&lt;br /&gt;
=== Michael Mulqueen | MassGIS ===&lt;br /&gt;
&lt;br /&gt;
* depth to water, hydro from lidar, etc&lt;br /&gt;
&lt;br /&gt;
=== Māris Nartišs ===&lt;br /&gt;
&lt;br /&gt;
* Taking photos of the event&lt;br /&gt;
* Introduced a new GRASS core module r.smooth.edgepreserve&lt;br /&gt;
* Discussed architecture of hyperspectral data import and per-processing tool&lt;br /&gt;
* Discussed testing and organizing AI modules downloading data from internet&lt;br /&gt;
* Prepared and gave a presentation on code preparation for translations (best practice)&lt;br /&gt;
* Debugging translation file updating with Edouard&lt;br /&gt;
* Changed default multiprocessor setting to always use maximum number of available threads&lt;br /&gt;
* Unified max process setting handling in all modules that use default parser parameter&lt;br /&gt;
* Discovered and supervised fixing a bug in r.univar parallelization code&lt;br /&gt;
* Discussing requirements for raster data reading parallelization (GRASS 9)&lt;br /&gt;
&lt;br /&gt;
=== Ondřej Pešek | Czech Technical University in Prague ===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/pesekon2?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
* Refactoring, fixing, improving, discussing g.gui.gmodeler&lt;br /&gt;
* Discussing hyperspectral with Alen Mangafic&lt;br /&gt;
* Discussing jupyter in single GUI with Linda Karlovska&lt;br /&gt;
* PyGRASS&lt;br /&gt;
* Docs&lt;br /&gt;
* CQ&lt;br /&gt;
* Reviewing PRs, PR archeology&lt;br /&gt;
&lt;br /&gt;
=== Vaclav (Vashek) Petras | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/wenzeslaus?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
* My focus: Getting feedback and ideas for computational engine use case, APIs, funding.&lt;br /&gt;
* Summit organizing&lt;br /&gt;
* Implementing rebranding on GitHub (repos, teams)&lt;br /&gt;
* Feedback session on project image&lt;br /&gt;
* Feedback session on easier access to tools&lt;br /&gt;
* Discussed LLMs with Neel Ghoshal, Riya&lt;br /&gt;
* Discussed session setupp  Martin Landa&lt;br /&gt;
* Discussed conda with Nicklas Larsson&lt;br /&gt;
* Discussed hyperspectral with Alen Mangafić, Veronica Andreo, and Anna Petrasova&lt;br /&gt;
* Discussed code for new smoothing tool, integer overflows, translations with Māris Nartišs&lt;br /&gt;
* Compared setup of GRASS session and project in fasterRaster, QGIS, and GRASS itself with Adam Smith&lt;br /&gt;
* Discussed potential of Pixi for packaging or compilation with Gregory Power&lt;br /&gt;
* Discussed itzi model distribution issues with Laurent Courty&lt;br /&gt;
* Discussed r.horizon parallelization with Chung-Yuan Liang and Anna Petrasova&lt;br /&gt;
* Answered coding and setup questions for Neel Ghoshal, Abdullah Azzam, and Alen Mangafić&lt;br /&gt;
&lt;br /&gt;
=== Anna Petrasova | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/petrasovaa?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
* plan: mentoring, documentation&lt;br /&gt;
* Monday&lt;br /&gt;
** discussing hyperspectral implementation with Alen&lt;br /&gt;
** helping mentee David Farris implementing his gravity correction addon&lt;br /&gt;
* Tuesday&lt;br /&gt;
** delivered intro to creating an addon, documentation&lt;br /&gt;
** mentoring Alen, Abdullah&lt;br /&gt;
** discussing bug in i.his.rgb with Jayneel&lt;br /&gt;
** reviews&lt;br /&gt;
* Wednesday&lt;br /&gt;
** discuss and demonstrate tutorials page&lt;br /&gt;
** mentoring Alen, Jayneel&lt;br /&gt;
* call with GSoC student&lt;br /&gt;
&lt;br /&gt;
=== Gregory Power | Town of Cary ===&lt;br /&gt;
&lt;br /&gt;
* Documentation&lt;br /&gt;
&lt;br /&gt;
=== Pratikshya Regmi | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* Event photographs and videos&lt;br /&gt;
* Opened a pull request to change GRASS GIS to GRASS on the documentation (this was my first contribution to GRASS)&lt;br /&gt;
* Worked on preparing the mock document for LLM RAG&lt;br /&gt;
* Wrote a tutorial to  Visualize Contour Lines with a Color Gradient with Folium.&lt;br /&gt;
&lt;br /&gt;
=== Riya | Indian Institute of Technology, Roorkee ===&lt;br /&gt;
&lt;br /&gt;
* I am currently thinking of developing an AI Agent for the grass jupyter library which will help the users with mathematical calculations done in GIS.&lt;br /&gt;
&lt;br /&gt;
=== Jayneel Shah | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* improve the test coverage of imagery modules.&lt;br /&gt;
&lt;br /&gt;
=== Krishna Prasad Sheshadri ===&lt;br /&gt;
&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
=== Adam Smith | Missouri Botanical Garden ===&lt;br /&gt;
&lt;br /&gt;
Overall: R package fasterRaster (fielding bug reports, adding features)&lt;br /&gt;
&lt;br /&gt;
Monday:&lt;br /&gt;
* Assessed scope of fasterRaster issue [https://github.com/adamlilith/fasterRaster/issues/83 83]&lt;br /&gt;
&lt;br /&gt;
Tuesday:&lt;br /&gt;
* Created a PR for fasterRaster tutorial on GRASS tutorials page.&lt;br /&gt;
* Improved handling of addons, including autodetect and installing when needed, enabling easier creation of addon-dependent methods.&lt;br /&gt;
* Presented *fasterRaster* package to group.&lt;br /&gt;
&lt;br /&gt;
Wednesday:&lt;br /&gt;
* Created fasterRaster methods for neighborhood matrices, terrain ruggedness index, and multivariate environmental similarity&lt;br /&gt;
&lt;br /&gt;
=== Michelle (Mimi) Stephens | ERDC ===&lt;br /&gt;
&lt;br /&gt;
* Previous work: coupling R and Python scripts for computational analysis in GRASS.&lt;br /&gt;
* Current work: Running through GRASS commands to create visual outputs that can be added to the new GRASS 8.5 manual pages - r.mapcalc, v.surf.rst, examples with topographic parameters, LinkedIn requests.&lt;br /&gt;
* Tutorial for Windows users to install a WSL2 Linux environment. Creates a conda environment with wxpython, installs GRASS without requiring OSGeo installer. Fast, simple, and minimal install. Resolves various issues encountered in government due to automatic Windows updates, cyber security, vpn routing, user preference, and isolated distro can be completely removed if needed. -&amp;gt; Motivation for WSL2 - wanted more hands-on practice with Unix command line tools for HPC; Docker not allowed, but miniforge and Apptainer are on ERDC's HPC; able to install grass via command line (only on internet-capable HPC systems); AND - For other users that always wanted a more native feel to their grass instance!&lt;br /&gt;
* Future work: Presenting on GRASS in JUNE at CERLCON.&lt;br /&gt;
&lt;br /&gt;
=== Corey White | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* JSON, mentoring&lt;br /&gt;
&lt;br /&gt;
=== Doug Newcomb | Semi Retired Cartographer ===&lt;br /&gt;
&lt;br /&gt;
* Discussed hydroflattening method&lt;br /&gt;
* Discussed direct point cloud input to v.surf.rst&lt;br /&gt;
* Learning git procedures by updating branding (GRASS GIS to GRASS)  for raster commands&lt;br /&gt;
Tuesday&lt;br /&gt;
* Continued updating branding for raster commands&lt;br /&gt;
* Started working on tutorial for r.hydro.flatten&lt;br /&gt;
&lt;br /&gt;
=== Natalie Trso | Balance Geo LLC ===&lt;br /&gt;
&lt;br /&gt;
* r.sim.water&lt;br /&gt;
&lt;br /&gt;
== Guests and remote participants ==&lt;br /&gt;
&lt;br /&gt;
=== Luís de Sousa | University of Lisbon ===&lt;br /&gt;
&lt;br /&gt;
* Review outstanding PRs&lt;br /&gt;
* Prepare GRASS sessions for the OpenGeoHub Summer School&lt;br /&gt;
&lt;br /&gt;
=== Markus Neteler | mundialis ===&lt;br /&gt;
&lt;br /&gt;
* Support full automation of new GRASS manual pages deployment on server (upload artifacts from GitHub to OSGeo servers (grass and download))&lt;br /&gt;
* Source code license documentation: Using SPDX License IDs ({{GH-Issues|4190}})&lt;br /&gt;
* Support Wiki cleanup&lt;br /&gt;
* [https://github.com/neteler?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub contributions]&lt;br /&gt;
&lt;br /&gt;
=== Nishant Bansal | Indian Institute of Technology, Varanasi ===&lt;br /&gt;
&lt;br /&gt;
* Review the previous work on JSON during last year’s GSoC, including enhancements and the addition of JSON output support to other modules.&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Talk:GRASS_Developer_Summit_Raleigh_2025&amp;diff=28363</id>
		<title>Talk:GRASS Developer Summit Raleigh 2025</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Talk:GRASS_Developer_Summit_Raleigh_2025&amp;diff=28363"/>
		<updated>2025-05-21T18:45:41Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: /* Anna Petrasova | NC State University */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{toc|right}}&lt;br /&gt;
&lt;br /&gt;
Quick links: [[GRASS Developer Summit Raleigh 2025|Meeting page]] | [[#Participant_reports|Reports]]  |  [[GRASS_Developer_Summit_Raleigh_2025#Sponsors|Sponsors]]&lt;br /&gt;
&lt;br /&gt;
== Organizing Team ==&lt;br /&gt;
&lt;br /&gt;
* Initial planning: Vaclav Petras, Anna Petrasova, Veronica Andreo, Corey White, Lois Utt, Sarah White, Doug Newcomb, Huidae Cho, Veronica Andreo ([[GRASS_Developer_Summit_Raleigh_2025#Organizing_Committee|Organizing Committee]])&lt;br /&gt;
* Budget: Vaclav Petras, Lois Utt, Anna Petrasova&lt;br /&gt;
* Raising support: Helena Mitasova, Vaclav Petras, Anna Petrasova, Michael Barton, Giuseppe Amatulli ([[NSF POSE Project 2023-2025 Timeline|NSF POSE project]] proposal authors)&lt;br /&gt;
* Travel: Lois Utt&lt;br /&gt;
* Venue: Vaclav Petras, Lois Utt&lt;br /&gt;
* Meals: Lois Utt, Sarah White, Vaclav Petras, Corey White, Anna Petrasova&lt;br /&gt;
* Agenda: Vaclav Petras, Huidae Cho, Anna Petrasova&lt;br /&gt;
* Wiki page: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Swag: Sarah White, Vaclav Petras, Anna Petrasova, Corey White&lt;br /&gt;
* Promotion, invitations, and social media: Vaclav Petras, Sarah White, Corey White, John Vogler&lt;br /&gt;
* Lightning talks organization: Vaclav Petras, Zachary Arcaro, John Vogler&lt;br /&gt;
* Lightning talk speakers: Vaclav Petras (welcome), Markus Metz and Markus Neteler (talk presented by Vaclav Petras), Anna Petrasova, Veronica Andreo, Robert Dzur, Nick Brady, Huidae Cho, Gregory Power, Doug Newcomb, Caitlin Haedrich&lt;br /&gt;
* Photography: Caitlin Haedrich, Māris Nartišs, Pratikshya Regmi&lt;br /&gt;
&lt;br /&gt;
== Detailed Schedule ==&lt;br /&gt;
&lt;br /&gt;
=== Day 1, Monday, May 19 ===&lt;br /&gt;
&lt;br /&gt;
Location: Talley Student Union, 2610 Cates Ave ([https://www.google.com/maps/place/Talley+Student+Union/data=!4m2!3m1!1s0x0:0x38989377c96adef0?sa=X&amp;amp;ved=1t:2428&amp;amp;ictx=111 map])&lt;br /&gt;
&lt;br /&gt;
Room: 5101-Executive Board Room&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''Contributing to GRASS. Getting started. Is it easy to contribute?''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:30-9:00 || Breakfast || Catered breakfast on site. Meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || What to expect from the event, contributing to GRASS using Git and GitHub, making your first contribution.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || i.hyper: Integrating Hyperspectral Imagery Processing into GRASS - Alen Mangafić&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || &lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Project Image - Vaclav Petras&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || Catered food on site.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || We will walk to [https://www.trophybrewing.com/brewing-pizza Trophy Brewing &amp;amp; Pizza] ([https://maps.app.goo.gl/ggnZ7EvXbWqDUmvP9 directions], 30 min walk from Talley)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 2, Tuesday, May 20 ===&lt;br /&gt;
&lt;br /&gt;
Location: Talley Student Union, 2610 Cates Ave ([https://www.google.com/maps/place/Talley+Student+Union/data=!4m2!3m1!1s0x0:0x38989377c96adef0?sa=X&amp;amp;ved=1t:2428&amp;amp;ictx=111 map])&lt;br /&gt;
&lt;br /&gt;
Room: 5101-Executive Board Room&lt;br /&gt;
&lt;br /&gt;
Highlighted topics: ''Hydrology and Interfacing with R and QGIS (gathering user feedback, testing, discussing with developers, developing action items)''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:30-9:00 || Breakfast || Breakfast on site. Start the day, meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || Introduction to writing GRASS tools, program for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || fasterRaster R package - Adam Smith&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Hydography90m + Geocomputation Courses - Giuseppe&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Flood modelling with grass and itzi ([https://itzi.org]) - Laurent Courty&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || [https://maps.app.goo.gl/womSkce9DrE8CTnR8 Case dining hall]&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || [https://maps.app.goo.gl/CQiWoCAQNt1ymZkb7 Served in Jordan Hall at the Center for Geospatial Analytics], evaluate the day's accomplishments, plan and prioritize for the next few days.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 3, Wednesday, May 21 ===&lt;br /&gt;
&lt;br /&gt;
Location: Talley Student Union, 2610 Cates Ave ([https://www.google.com/maps/place/Talley+Student+Union/data=!4m2!3m1!1s0x0:0x38989377c96adef0?sa=X&amp;amp;ved=1t:2428&amp;amp;ictx=111 map])&lt;br /&gt;
&lt;br /&gt;
Room: 5101-Executive Board Room&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''Non-coding contributions, natural language translation, and internationalization.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 7:00-9:00 || Breakfast || [https://maps.app.goo.gl/eZ8VK8Mx6TjMt9NP8 Case dining hall]&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || Introduction to non-coding contributions, tutorials, contributing examples, natural language translation and internationalization (procedures, glossaries, code customization, translation).&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || Easier access to GRASS tools - Vaclav Petras&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || &lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || GRASS backend for xarray and temporal framework global variables ([https://github.com/OSGeo/grass/issues/629]) - Laurent Courty&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || Served on site. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || [https://maps.app.goo.gl/1E39eySMVaxYJUUS8 Picnic at Pullen Park, shelter #3. In case of bad weather, dinner at the Center for Geospatial Analytics.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 4, Thursday, May 22 ===&lt;br /&gt;
&lt;br /&gt;
Location: Center for Geospatial Analytics, Jordan Hall, 2800 Faucette Drive ([https://www.google.com/maps/search/Jordan+Hall/@35.7816832,-78.6772765,18z/data=!3m1!4b1?entry=ttu&amp;amp;g_ep=EgoyMDI1MDQyMC4wIKXMDSoJLDEwMjExNDUzSAFQAw%3D%3D map])&lt;br /&gt;
&lt;br /&gt;
Room: 5103 (straight from the two elevators, at the end of the hallway)&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''Project vision and computational engine use case.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:00-9:00 || Breakfast || On site. Start the day, meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || Project vision and the computational engine use case (missing features, documentation, user groups).&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || Your topic here (10-minute presentation and 10-minute discussion)&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Modernizing Color Tables (Brendan)&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || On site. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-16:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 16:00-17:00 || Lightning talks || Fast-paced talks, showcasing applications of GRASS, room 5111.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Reception || Connect with researchers, government professionals, and industry collaborators, rooms 5111 and 5119.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 5, Friday, May 23 ===&lt;br /&gt;
&lt;br /&gt;
Location: James B. Hunt Jr. Library, 1070 Partners Way - Centennial Campus ([https://www.google.com/maps/place/James+B.+Hunt+Jr.+Library/@35.7693736,-78.679167,17z/data=!3m1!5s0x89acf5759f5a31df:0xc547454a0151c440!4m10!1m2!2m1!1shunt+library!3m6!1s0x89acf5759f591f41:0xbe0266269ce37f59!8m2!3d35.7693215!4d-78.6764409!15sCgxodW50IGxpYnJhcnlaDiIMaHVudCBsaWJyYXJ5kgESdW5pdmVyc2l0eV9saWJyYXJ54AEA!16s%2Fm%2F0r4wjf_?entry=ttu&amp;amp;g_ep=EgoyMDI1MDQyMC4wIKXMDSoJLDEwMjExNDUzSAFQAw%3D%3D map])&lt;br /&gt;
&lt;br /&gt;
Room: Faculty Research Commons - 5100 ([https://www.lib.ncsu.edu/hunt/map floor plan])&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''GRASS project's future course.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:00-9:00 || Breakfast || On site. Start the day, meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || GRASS project's future course.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || PSC meeting || Project Steering Committee meets (public).&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || Walk to [https://maps.app.goo.gl/kHVHY62QxTd6wHKd9 On the Oval Culinary Creatins]. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || Dinner on your own. Corey White will organize trip to downtown. Bus 41 from Hunt library to hotel and then walk.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 6, Saturday, May 24 ===&lt;br /&gt;
&lt;br /&gt;
Location: James B. Hunt Jr. Library, 1070 Partners Way - Centennial Campus ([https://www.google.com/maps/place/James+B.+Hunt+Jr.+Library/@35.7693736,-78.679167,17z/data=!3m1!5s0x89acf5759f5a31df:0xc547454a0151c440!4m10!1m2!2m1!1shunt+library!3m6!1s0x89acf5759f591f41:0xbe0266269ce37f59!8m2!3d35.7693215!4d-78.6764409!15sCgxodW50IGxpYnJhcnlaDiIMaHVudCBsaWJyYXJ5kgESdW5pdmVyc2l0eV9saWJyYXJ54AEA!16s%2Fm%2F0r4wjf_?entry=ttu&amp;amp;g_ep=EgoyMDI1MDQyMC4wIKXMDSoJLDEwMjExNDUzSAFQAw%3D%3D map])&lt;br /&gt;
&lt;br /&gt;
Room: Faculty Research Commons - 5100 ([https://www.lib.ncsu.edu/hunt/map floor plan])&lt;br /&gt;
&lt;br /&gt;
Highlighted topics: ''NSF POSE project evaluation.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:00-9:00 || Breakfast || TBA. Start the day, meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || NSF POSE project evaluation, contributor community feedback.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || Your topic here (10-minute presentation and 10-minute discussion)&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || TBA. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || TBA. &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Daily tasks for participants ==&lt;br /&gt;
&lt;br /&gt;
* List all the things you are working on in the Participant reports section below. Update the list each day. Include things you work on with other people.&lt;br /&gt;
* If you want to discuss something with the whole group, add yourself to a Self-organized feedback sessions slot in the schedule above or tell Vaclav (Vashek) Petras.&lt;br /&gt;
* For people with triage access and above: If you are or will be working on an issue or on a PR which is not originally submitted by you, assign yourself to the issue or PR. (You can unassign yourself later if you change your mind.)&lt;br /&gt;
&lt;br /&gt;
== Participant reports ==&lt;br /&gt;
&lt;br /&gt;
Per-person reports from the meeting.&lt;br /&gt;
&lt;br /&gt;
=== Giuseppe Amatulli | Yale University ===&lt;br /&gt;
&lt;br /&gt;
* Testing r.watershed and r.stream.* for handling large datasets&lt;br /&gt;
* Running r.flowaccumulation at global level using water direction from hydrography90m &lt;br /&gt;
* Preparing the grass tutorial material for the https://www.geomorphometry2025.org/ conference&lt;br /&gt;
&lt;br /&gt;
=== Veronica Andreo | CONICET - Instituto Gulich ===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/veroandreo?tab=overview&amp;amp;from=2025-05-12&amp;amp;to=2025-05-24 GitHub contributions]&lt;br /&gt;
* Website footer enhancement&lt;br /&gt;
* Sync icons on the Tutorials website footer to those on the main website&lt;br /&gt;
* Fix descriptions and their display in the tutorials website&lt;br /&gt;
* Fix GRASS page on OSGeo website [https://www.osgeo.org/projects/grass-gis/] &lt;br /&gt;
** Changed logo, removed GIS from the name, fixed old links&lt;br /&gt;
* Social media posts&lt;br /&gt;
* Discussion about hyperspectral with Alen and Anna&lt;br /&gt;
* Expand the GRASS acronym on the home page&lt;br /&gt;
* Remove GIS from GRASS name on the website&lt;br /&gt;
* Review tutorials by Huidae and Adam Smith&lt;br /&gt;
* GRASS PSC admin&lt;br /&gt;
&lt;br /&gt;
=== Abdullah Azzam | New Mexico State University ===&lt;br /&gt;
&lt;br /&gt;
* r.runoff&lt;br /&gt;
&lt;br /&gt;
=== Michael Barton | Arizona State University ===&lt;br /&gt;
&lt;br /&gt;
* POSE related activities&lt;br /&gt;
&lt;br /&gt;
=== Laura Belica | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* have been working on developing a workflow-tool tutorial template that facilitates GRASS learners who tend to 'jump in' or have a 'choose your own adventure' approach to learning GRASS (i.e., want to use their data for their study area for their objective from the start).  The structure of the tutorial template is a concise, basic, general description/instructions of the workflow with optional links to pertinent explanatory/deeper dive content  (e.g.,  plain language explainers of the tool, options, defaults, etc.) in a variety of formats (e.g., captioned images, short tool demo videos (30 sec to 2 min)) in addition to the more comprehensive resources available (e.g. documentation, examples, tutorials).  The main motivation for this approach is to help new and occasional GRASS users avoid some of the common pitfalls and to learn how to find workarounds for some of the unanticipated challenges they may encounter with their specific datasets or use cases so that they can learn as they go.  Another motivation for this approach is to facilitate the translation, extension, and updating of workflow tutorials by the community over time (e.g., providing audio and closed captioning for one of the tool-demo videos in another language, replacing an outdated GUI demo with one for the current release, or incorporating a new add-on as an option in the workflow).&lt;br /&gt;
&lt;br /&gt;
* my focus this week is on developing a draft/test tutorial (in Quarto) for a standard hydrological modelling workflow that begins with the crucial pre-work of how to figure out the appropriate project/location, etc. as well as considerations of some of the downstream impacts of resolution, extent, region etc. It may not be ready for sharing by the end of the week, but suggestions and advice are welcomed in advance.&lt;br /&gt;
&lt;br /&gt;
19 May&lt;br /&gt;
* discussed a novice user issue with 'moving' vector data from one location to another with Vero and learned a neat GUI option &lt;br /&gt;
* revised and added workflow tutorial text&lt;br /&gt;
&lt;br /&gt;
=== Shonil Sateesh Bhide | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* CI optimization&lt;br /&gt;
&lt;br /&gt;
=== Huidae Cho | New Mexico State University ===&lt;br /&gt;
&lt;br /&gt;
* CMake, conda, CI, Mentoring&lt;br /&gt;
&lt;br /&gt;
=== Edouard Choinière ===&lt;br /&gt;
&lt;br /&gt;
* Quick ideas, way too much for a week: Helping others (may take a reasonable part of the time), managing CI, setting up localization template updating workflow, backporting tool? Pytest/coverage improvements? Discuss and design other projects, to work on during the year. Open to change on other priorities once there, anything that is useful. Maybe make a little progress on high dpi GUI, especially on Windows.&lt;br /&gt;
&lt;br /&gt;
* Weekend before sprint:&lt;br /&gt;
** Clear up Renovate PRs to not use CI time during the sprint, reviewing and merging: [https://github.com/OSGeo/grass/pull/5664 #5664], [https://github.com/OSGeo/grass/pull/5665 #5665], [https://github.com/OSGeo/grass/pull/5666 #5666], [https://github.com/OSGeo/grass/pull/5667 #5667], [https://github.com/OSGeo/grass/pull/5668 #5668]&lt;br /&gt;
** PR to avoid some CI run time for the sprint: [https://github.com/OSGeo/grass/pull/5670 #5670]&lt;br /&gt;
** Reviewed open PRs for PRs that were mergeable before the sprint, updated outdated PRs to avoid having it needing CI time during sprint. Only ended up merging [https://github.com/OSGeo/grass/pull/5658 #5658], but another reviewed one that might still need changes: [https://github.com/OSGeo/grass/pull/5628 #5628]&lt;br /&gt;
* Monday May 19, 2025:&lt;br /&gt;
** PR got merged: [https://github.com/OSGeo/grass/pull/5670 #5670],[https://github.com/OSGeo/grass/pull/5550 #5550]&lt;br /&gt;
** Reviewed PRs: [https://github.com/OSGeo/grass/pull/5671 #5671], [https://github.com/OSGeo/grass/pull/5672 #5672]&lt;br /&gt;
** Discussions:&lt;br /&gt;
*** Shonil Sateesh Bhid &amp;amp; Shuham on their CI &amp;amp; pytest work and project.&lt;br /&gt;
*** Māris Nartišs about a potential issue and improvement for it. Will be discussed in the security reporting tab, also allowing to test the security vulnerability reporting process. + Research on existing solutions&lt;br /&gt;
** Reviewed: [https://github.com/OSGeo/grass/pull/5682 #5682], [https://github.com/OSGeo/grass/pull/5660 #5660],&lt;br /&gt;
** Reviewed, edited and merged: [https://github.com/OSGeo/grass/pull/3672 #3672]&lt;br /&gt;
** Discussed/helped user for: [https://github.com/OSGeo/grass/pull/5678 #5678] and [https://github.com/OSGeo/grass/pull/5684 #5684]&lt;br /&gt;
** Long discussion and vision planning for windows scripting with Vaclav, concerning [https://github.com/OSGeo/grass/pull/5624 #5624]. Tested alternatives and tried the consequences of that PR. This older PR finally got merged.&lt;br /&gt;
** Created PRs for NSIS installer: [https://github.com/OSGeo/grass/pull/5685 #5685] and also [https://github.com/OSGeo/grass/pull/5686 #5686], which should address [https://github.com/OSGeo/grass/issues/5663 #5663]. Still needs to test it.&lt;br /&gt;
** Agreed on convention for titles with Vaclav, unblocking [https://github.com/OSGeo/grass/pull/5341 #5341]&lt;br /&gt;
** Found a name with Ondrej and finally merged older PRs of an external contributor [https://github.com/OSGeo/grass/pull/5473 #5473] and [https://github.com/OSGeo/grass/pull/5474 #5474]&lt;br /&gt;
* Thursday May 20, 2025:&lt;br /&gt;
** Reviewed: [https://github.com/OSGeo/grass/pull/5695 #5695]&lt;br /&gt;
** Merged PRs: [https://github.com/OSGeo/grass/pull/5673 #5673], [https://github.com/OSGeo/grass/pull/5691 #5691], [https://github.com/OSGeo/grass/pull/5690 #5690], [https://github.com/OSGeo/grass/pull/5684 #5684],&lt;br /&gt;
** Discussed with author of [https://github.com/OSGeo/grass/pull/5660 #5660] and [https://github.com/OSGeo/grass/issues/5659 #5659] about rgb/hsl bug and tests for help.&lt;br /&gt;
** Worked with Corey to adjust markdown links for new markdownlint rule, finishing up [https://github.com/OSGeo/grass/pull/5669 #5669]&lt;br /&gt;
** Created PRs: [https://github.com/OSGeo/grass/pull/5692 #5692], [https://github.com/OSGeo/grass/pull/5694 #5694], [https://github.com/OSGeo/grass/pull/5689 #5689]&lt;br /&gt;
&lt;br /&gt;
=== Laurent Courty ===&lt;br /&gt;
&lt;br /&gt;
* Objectives: An xarray backend for GRASS STRDS. Fixing related issues&lt;br /&gt;
* May 20&lt;br /&gt;
** Presented itzi&lt;br /&gt;
** Uploaded arm64 wheels to PyPI for MacOS and Linux ([https://pypi.org/project/itzi/#files])&lt;br /&gt;
** Discussed with other developers about issue #629&lt;br /&gt;
* May 21&lt;br /&gt;
** Uploaded xarray-grass to PyPI&lt;br /&gt;
** Added CI tests to xarray-grass&lt;br /&gt;
** Discussed with the group about the xarray-grass backend&lt;br /&gt;
** Discussed with the group about solving mapset switching in the temporal framework&lt;br /&gt;
&lt;br /&gt;
=== Robert S. Dzur | Bohannan Huston, Inc. ===&lt;br /&gt;
&lt;br /&gt;
* r.in.pdal&lt;br /&gt;
&lt;br /&gt;
=== David W. Farris | East Carolina University ===&lt;br /&gt;
&lt;br /&gt;
* A tool to calculate gravity terrain corrections&lt;br /&gt;
&lt;br /&gt;
=== Neel Ghoshal | NC State University ===&lt;br /&gt;
• LLM for helping users find tools&amp;lt;br&amp;gt;&lt;br /&gt;
5/19&amp;lt;br&amp;gt;&lt;br /&gt;
• Learnt how to PR (#5674)&amp;lt;br&amp;gt;&lt;br /&gt;
• Setup GRASS on system&amp;lt;br&amp;gt;&lt;br /&gt;
• Found small issue with compilation document&amp;lt;br&amp;gt;&lt;br /&gt;
• Discussed about the possible use case of LLM for helping users find tools&amp;lt;br&amp;gt;&lt;br /&gt;
5/20&amp;lt;br&amp;gt;&lt;br /&gt;
• Learnt about cookie cutter&amp;lt;br&amp;gt;&lt;br /&gt;
• Set up wsl on system&amp;lt;br&amp;gt;&lt;br /&gt;
• Compiled GRASS&amp;lt;br&amp;gt;&lt;br /&gt;
• Listed data sources for LLM training&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Caitlin Haedrich | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* Event photographs&lt;br /&gt;
* git/github mentoring&lt;br /&gt;
* Lightning Talk preparation&lt;br /&gt;
* Preparing workshop for [https://www.geomorphometry2025.org/ Geomorphometry2025]&lt;br /&gt;
&lt;br /&gt;
=== Brendan Harmon | Louisiana State University ===&lt;br /&gt;
&lt;br /&gt;
* Developing ([https://github.com/baharmon/r.earthworks r.earthworks]) addon &amp;amp; tutorials&lt;br /&gt;
* [https://github.com/baharmon?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
&lt;br /&gt;
=== Linda Karlovska | Czech Technical University in Prague ===&lt;br /&gt;
&lt;br /&gt;
* Fix uninitialized variables in DOutFile() method: ([https://github.com/OSGeo/grass/pull/5650 PR])&lt;br /&gt;
* Update figures related to GUI: ([https://github.com/OSGeo/grass/pull/5651  PR])&lt;br /&gt;
&lt;br /&gt;
Working on integration of the Jupyter notebooks to GUI (work for the whole week :-))&lt;br /&gt;
&lt;br /&gt;
=== Martin Landa | Czech Technical University in Prague ===&lt;br /&gt;
&lt;br /&gt;
* Tutorial: GISMentors courses updated ([https://github.com/OSGeo/grass-tutorials/pull/45 PR])&lt;br /&gt;
* libgis: G__usage_markdown() include tool label in metadata if defined ([https://github.com/OSGeo/grass/pull/5677 PR])&lt;br /&gt;
* PyGRASS: Module description property not defined always ([https://github.com/OSGeo/grass/pull/5681 PR])&lt;br /&gt;
* Website: OpenGeoLabs commercial support ([https://github.com/OSGeo/grass-website/pull/537 PR])&lt;br /&gt;
* v.select: create output also when no features found ([https://github.com/OSGeo/grass/pull/5696 PR])&lt;br /&gt;
* wxGUI: avoid creating nested list of errors (Graphical modeler) ([https://github.com/OSGeo/grass/pull/5700 PR])&lt;br /&gt;
* wxGUI/gmodeler: refactor - move ModelParamDialog to dialogs.py ([https://github.com/OSGeo/grass/pull/5715 PR])&lt;br /&gt;
&lt;br /&gt;
=== Nicklas Larsson | Hungarian National Museum ===&lt;br /&gt;
&lt;br /&gt;
* CMake build system; perhaps Conda recipe&lt;br /&gt;
&lt;br /&gt;
=== Chung-Yuan Liang ===&lt;br /&gt;
&lt;br /&gt;
* parallelize some modules, improve testing&lt;br /&gt;
&lt;br /&gt;
=== Andres Lucero | Bohannan Huston Inc ===&lt;br /&gt;
&lt;br /&gt;
* r.in.pdal&lt;br /&gt;
&lt;br /&gt;
=== Alen Mangafić | Geodetic Institute of Slovenia ===&lt;br /&gt;
Monday May 19 &lt;br /&gt;
* Presentationf of i.hyper, add-on which offers hyperspectral data support in GRASS.&lt;br /&gt;
* Architecture of the multi-module addon&lt;br /&gt;
Tuesday May 20&lt;br /&gt;
* i.hyper.import module: importing EnMAP imagery as 3D raster map&lt;br /&gt;
* i.hyper.explore module: RGB, CIR and SWIR visualization from 3D hyperspectral raster map.&lt;br /&gt;
&lt;br /&gt;
=== Helena Mitasova | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* standardized data set and related tutorials&lt;br /&gt;
* documentation for interpolation tools&lt;br /&gt;
* collaborate/coordinate/discuss hydrology tools (analytics, simulations, soil properties inputs)&lt;br /&gt;
* assist with wiki cleanup if needed&lt;br /&gt;
&lt;br /&gt;
Monday May 19&lt;br /&gt;
* investigated issues with v.surf.rst documentation in source code, tested and identified fixes needed&lt;br /&gt;
* discussed coupling GRASS with Blender versus potree for 3D object rendering with Brendan, Anna and Caitlin (for TL activities and other applications)&lt;br /&gt;
* discussed soil data for runoff estimation and other hydro topics, to be worked on on day 2&lt;br /&gt;
&lt;br /&gt;
Tuesday May 20&lt;br /&gt;
* worked with Corey on fixing v.surf.rst documentation, discussed ideas for improvements and for documentation / tutorial for cross-valiadation&lt;br /&gt;
* discussed suggestions for graphics and examples to be inculded in v.surf.rst docs with Michelle &lt;br /&gt;
* discussed new developments in hydrology tools&lt;br /&gt;
* experimented with basic/standardized versus specialized data sets for documentation and tutorials&lt;br /&gt;
&lt;br /&gt;
=== Michael Mulqueen | MassGIS ===&lt;br /&gt;
&lt;br /&gt;
* depth to water, hydro from lidar, etc&lt;br /&gt;
&lt;br /&gt;
=== Māris Nartišs ===&lt;br /&gt;
&lt;br /&gt;
* Worked on a new raster data analysis tool r.smooth for inclusion into GRASS core&lt;br /&gt;
* Discussed architecture of hyperspectral data import and per-processing tool&lt;br /&gt;
* Discussed testing and organizing AI modules downloading data from internet&lt;br /&gt;
* Prepared and gave a presentation on code preparation for translations (best practice)&lt;br /&gt;
&lt;br /&gt;
=== Ondřej Pešek | Czech Technical University in Prague ===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/pesekon2?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
* Refactoring, fixing, improving, discussing g.gui.gmodeler&lt;br /&gt;
* Discussing hyperspectral with Alen Mangafic&lt;br /&gt;
* Discussing jupyter in single GUI with Linda Karlovska&lt;br /&gt;
* PyGRASS&lt;br /&gt;
* Docs&lt;br /&gt;
* CQ&lt;br /&gt;
* Reviewing PRs, PR archeology&lt;br /&gt;
&lt;br /&gt;
=== Vaclav (Vashek) Petras | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/wenzeslaus?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
* My focus: Getting feedback and ideas for computational engine use case, APIs, funding.&lt;br /&gt;
* Summit organizing&lt;br /&gt;
* Implementing rebranding on GitHub (repos, teams)&lt;br /&gt;
* Feedback session on project image&lt;br /&gt;
* Feedback session on easier access to tools&lt;br /&gt;
* Discussed LLMs with Neel Ghoshal, Riya&lt;br /&gt;
* Discussed session setupp  Martin Landa&lt;br /&gt;
* Discussed conda with Nicklas Larsson&lt;br /&gt;
* Discussed hyperspectral with Alen Mangafić, Veronica Andreo, and Anna Petrasova&lt;br /&gt;
* Discussed code for new smoothing tool, integer overflows, translations with Māris Nartišs&lt;br /&gt;
* Compared setup of GRASS session and project in fasterRaster, QGIS, and GRASS itself with Adam Smith&lt;br /&gt;
* Discussed potential of Pixi for packaging or compilation with Gregory Power&lt;br /&gt;
* Discussed itzi model distribution issues with Laurent Courty&lt;br /&gt;
* Discussed r.horizon parallelization with Chung-Yuan Liang and Anna Petrasova&lt;br /&gt;
* Answered coding and setup questions for Neel Ghoshal, Abdullah Azzam, and Alen Mangafić&lt;br /&gt;
&lt;br /&gt;
=== Anna Petrasova | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/petrasovaa?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
* plan: mentoring, documentation&lt;br /&gt;
* Monday&lt;br /&gt;
** discussing hyperspectral implementation with Alen&lt;br /&gt;
** helping mentee David Farris implementing his gravity correction addon&lt;br /&gt;
* Tuesday&lt;br /&gt;
** delivered intro to creating an addon, documentation&lt;br /&gt;
** mentoring Alen, Abdullah&lt;br /&gt;
** discussing bug in i.his.rgb with Jayneel&lt;br /&gt;
** reviews&lt;br /&gt;
* Wednesday&lt;br /&gt;
** discuss and demonstrate tutorials page&lt;br /&gt;
** mentoring Alen, Jayneel&lt;br /&gt;
* call with GSoC student&lt;br /&gt;
&lt;br /&gt;
=== Gregory Power | Town of Cary ===&lt;br /&gt;
&lt;br /&gt;
* Documentation&lt;br /&gt;
&lt;br /&gt;
=== Pratikshya Regmi | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* Event photographs and videos&lt;br /&gt;
* Opened a pull request to change GRASS GIS to GRASS on the documentation (this was my first contribution to GRASS)&lt;br /&gt;
* Worked on preparing the mock document for LLM RAG&lt;br /&gt;
* Write a tutorial to  Visualize Contour Lines with a Color Gradient with Folium.&lt;br /&gt;
&lt;br /&gt;
=== Riya | Indian Institute of Technology, Roorkee ===&lt;br /&gt;
&lt;br /&gt;
* I am currently thinking of developing an AI Agent for the grass jupyter library which will help the users with mathematical calculations done in GIS.&lt;br /&gt;
&lt;br /&gt;
=== Jayneel Shah | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* improve the test coverage of imagery modules.&lt;br /&gt;
&lt;br /&gt;
=== Krishna Prasad Sheshadri ===&lt;br /&gt;
&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
=== Adam Smith | Missouri Botanical Garden ===&lt;br /&gt;
&lt;br /&gt;
Overall: R package fasterRaster (fielding bug reports, adding features)&lt;br /&gt;
&lt;br /&gt;
Monday:&lt;br /&gt;
* Assessed scope of fasterRaster issue [https://github.com/adamlilith/fasterRaster/issues/83 83]&lt;br /&gt;
&lt;br /&gt;
Tuesday:&lt;br /&gt;
* Created a PR for fasterRaster tutorial on GRASS tutorials page.&lt;br /&gt;
* Improved handling of addons, including autodetect and installing when needed, enabling easier creation of addon-dependent methods.&lt;br /&gt;
* Presented *fasterRaster* package to group.&lt;br /&gt;
&lt;br /&gt;
=== Michelle (Mimi) Stephens | ERDC ===&lt;br /&gt;
&lt;br /&gt;
* Previous work: coupling R and Python scripts for computational analysis in GRASS.&lt;br /&gt;
* Current work: Running through GRASS commands to create visual outputs that can be added to the new GRASS 8.5 manual pages.&lt;br /&gt;
* Future work: Presenting on GRASS in JUNE at CERLCON.&lt;br /&gt;
&lt;br /&gt;
=== Corey White | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* JSON, mentoring&lt;br /&gt;
&lt;br /&gt;
=== Doug Newcomb | Semi Retired Cartographer ===&lt;br /&gt;
&lt;br /&gt;
* Discussed hydroflattening method&lt;br /&gt;
* Discussed direct point cloud input to v.surf.rst&lt;br /&gt;
* Learning git procedures by updating branding (GRASS GIS to GRASS)  for raster commands&lt;br /&gt;
Tuesday&lt;br /&gt;
* Continued updating branding for raster commands&lt;br /&gt;
* Started working on tutorial for r.hydro.flatten&lt;br /&gt;
&lt;br /&gt;
=== Natalie Trso | Balance Geo LLC ===&lt;br /&gt;
&lt;br /&gt;
* r.sim.water&lt;br /&gt;
&lt;br /&gt;
== Guests and remote participants ==&lt;br /&gt;
&lt;br /&gt;
=== Luís de Sousa | University of Lisbon ===&lt;br /&gt;
&lt;br /&gt;
* Review outstanding PRs&lt;br /&gt;
* Prepare GRASS sessions for the OpenGeoHub Summer School&lt;br /&gt;
&lt;br /&gt;
=== Markus Neteler | mundialis ===&lt;br /&gt;
&lt;br /&gt;
* Support full automation of new GRASS manual pages deployment on server (upload artifacts from GitHub to OSGeo servers (grass and download))&lt;br /&gt;
* Source code license documentation: Using SPDX License IDs ({{GH-Issues|4190}})&lt;br /&gt;
* Support Wiki cleanup&lt;br /&gt;
* [https://github.com/neteler?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub contributions]&lt;br /&gt;
&lt;br /&gt;
=== Nishant Bansal | Indian Institute of Technology, Varanasi ===&lt;br /&gt;
&lt;br /&gt;
* Review the previous work on JSON during last year’s GSoC, including enhancements and the addition of JSON output support to other modules.&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Talk:GRASS_Developer_Summit_Raleigh_2025&amp;diff=28350</id>
		<title>Talk:GRASS Developer Summit Raleigh 2025</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Talk:GRASS_Developer_Summit_Raleigh_2025&amp;diff=28350"/>
		<updated>2025-05-21T13:43:25Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: /* Day 3, Wednesday, May 21 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{toc|right}}&lt;br /&gt;
&lt;br /&gt;
Quick links: [[GRASS Developer Summit Raleigh 2025|Meeting page]] | [[#Participant_reports|Reports]]  |  [[GRASS_Developer_Summit_Raleigh_2025#Sponsors|Sponsors]]&lt;br /&gt;
&lt;br /&gt;
== Organizing Team ==&lt;br /&gt;
&lt;br /&gt;
* Initial planning: Vaclav Petras, Anna Petrasova, Veronica Andreo, Corey White, Lois Utt, Sarah White, Doug Newcomb, Huidae Cho, Veronica Andreo ([[GRASS_Developer_Summit_Raleigh_2025#Organizing_Committee|Organizing Committee]])&lt;br /&gt;
* Budget: Vaclav Petras, Lois Utt, Anna Petrasova&lt;br /&gt;
* Raising support: Helena Mitasova, Vaclav Petras, Anna Petrasova, Michael Barton, Giuseppe Amatulli ([[NSF POSE Project 2023-2025 Timeline|NSF POSE project]] proposal authors)&lt;br /&gt;
* Travel: Lois Utt&lt;br /&gt;
* Venue: Vaclav Petras, Lois Utt&lt;br /&gt;
* Meals: Lois Utt, Sarah White, Vaclav Petras, Corey White, Anna Petrasova&lt;br /&gt;
* Agenda: Vaclav Petras, Huidae Cho, Anna Petrasova&lt;br /&gt;
* Wiki page: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Swag: Sarah White, Vaclav Petras, Anna Petrasova, Corey White&lt;br /&gt;
* Promotion, invitations, and social media: Vaclav Petras, Sarah White, Corey White, John Vogler&lt;br /&gt;
* Lightning talks organization: Vaclav Petras, Zachary Arcaro, John Vogler&lt;br /&gt;
* Lightning talk speakers: Vaclav Petras (welcome), Markus Metz and Markus Neteler (talk presented by Vaclav Petras), Anna Petrasova, Veronica Andreo, Robert Dzur, Nick Brady, Huidae Cho, Gregory Power, Doug Newcomb, Caitlin Haedrich&lt;br /&gt;
* Photography: Caitlin Haedrich, Māris Nartišs, Pratikshya Regmi&lt;br /&gt;
&lt;br /&gt;
== Detailed Schedule ==&lt;br /&gt;
&lt;br /&gt;
=== Day 1, Monday, May 19 ===&lt;br /&gt;
&lt;br /&gt;
Location: Talley Student Union, 2610 Cates Ave ([https://www.google.com/maps/place/Talley+Student+Union/data=!4m2!3m1!1s0x0:0x38989377c96adef0?sa=X&amp;amp;ved=1t:2428&amp;amp;ictx=111 map])&lt;br /&gt;
&lt;br /&gt;
Room: 5101-Executive Board Room&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''Contributing to GRASS. Getting started. Is it easy to contribute?''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:30-9:00 || Breakfast || Catered breakfast on site. Meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || What to expect from the event, contributing to GRASS using Git and GitHub, making your first contribution.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || i.hyper: Integrating Hyperspectral Imagery Processing into GRASS - Alen Mangafić&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || &lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Project Image - Vaclav Petras&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || Catered food on site.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || We will walk to [https://www.trophybrewing.com/brewing-pizza Trophy Brewing &amp;amp; Pizza] ([https://maps.app.goo.gl/ggnZ7EvXbWqDUmvP9 directions], 30 min walk from Talley)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 2, Tuesday, May 20 ===&lt;br /&gt;
&lt;br /&gt;
Location: Talley Student Union, 2610 Cates Ave ([https://www.google.com/maps/place/Talley+Student+Union/data=!4m2!3m1!1s0x0:0x38989377c96adef0?sa=X&amp;amp;ved=1t:2428&amp;amp;ictx=111 map])&lt;br /&gt;
&lt;br /&gt;
Room: 5101-Executive Board Room&lt;br /&gt;
&lt;br /&gt;
Highlighted topics: ''Hydrology and Interfacing with R and QGIS (gathering user feedback, testing, discussing with developers, developing action items)''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:30-9:00 || Breakfast || Breakfast on site. Start the day, meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || Introduction to writing GRASS tools, program for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || fasterRaster R package - Adam Smith&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Hydography90m + Geocomputation Courses - Giuseppe&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Flood modelling with grass and itzi ([https://itzi.org]) - Laurent Courty&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || [https://maps.app.goo.gl/womSkce9DrE8CTnR8 Case dining hall]&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || [https://maps.app.goo.gl/CQiWoCAQNt1ymZkb7 Served in Jordan Hall at the Center for Geospatial Analytics], evaluate the day's accomplishments, plan and prioritize for the next few days.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 3, Wednesday, May 21 ===&lt;br /&gt;
&lt;br /&gt;
Location: Talley Student Union, 2610 Cates Ave ([https://www.google.com/maps/place/Talley+Student+Union/data=!4m2!3m1!1s0x0:0x38989377c96adef0?sa=X&amp;amp;ved=1t:2428&amp;amp;ictx=111 map])&lt;br /&gt;
&lt;br /&gt;
Room: 5101-Executive Board Room&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''Non-coding contributions, natural language translation, and internationalization.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 7:00-9:00 || Breakfast || [https://maps.app.goo.gl/eZ8VK8Mx6TjMt9NP8 Case dining hall]&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || Introduction to non-coding contributions, tutorials, contributing examples, natural language translation and internationalization (procedures, glossaries, code customization, translation).&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || Easier access to GRASS tools - Vaclav Petras&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Temporal framework global variables ([https://github.com/OSGeo/grass/issues/629]) - Laurent Courty&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || &lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || Served on site. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || [https://maps.app.goo.gl/1E39eySMVaxYJUUS8 Picnic at Pullen Park, shelter #3. In case of bad weather, dinner at the Center for Geospatial Analytics.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 4, Thursday, May 22 ===&lt;br /&gt;
&lt;br /&gt;
Location: Center for Geospatial Analytics, Jordan Hall, 2800 Faucette Drive ([https://www.google.com/maps/search/Jordan+Hall/@35.7816832,-78.6772765,18z/data=!3m1!4b1?entry=ttu&amp;amp;g_ep=EgoyMDI1MDQyMC4wIKXMDSoJLDEwMjExNDUzSAFQAw%3D%3D map])&lt;br /&gt;
&lt;br /&gt;
Room: 5103 (straight from the two elevators, at the end of the hallway)&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''Project vision and computational engine use case.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:00-9:00 || Breakfast || On site. Start the day, meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || Project vision and the computational engine use case (missing features, documentation, user groups).&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || Your topic here (10-minute presentation and 10-minute discussion)&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Modernizing Color Tables (Brendan)&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || On site. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-16:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 16:00-17:00 || Lightning talks || Fast-paced talks, showcasing applications of GRASS, room 5111.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Reception || Connect with researchers, government professionals, and industry collaborators, rooms 5111 and 5119.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 5, Friday, May 23 ===&lt;br /&gt;
&lt;br /&gt;
Location: James B. Hunt Jr. Library, 1070 Partners Way - Centennial Campus ([https://www.google.com/maps/place/James+B.+Hunt+Jr.+Library/@35.7693736,-78.679167,17z/data=!3m1!5s0x89acf5759f5a31df:0xc547454a0151c440!4m10!1m2!2m1!1shunt+library!3m6!1s0x89acf5759f591f41:0xbe0266269ce37f59!8m2!3d35.7693215!4d-78.6764409!15sCgxodW50IGxpYnJhcnlaDiIMaHVudCBsaWJyYXJ5kgESdW5pdmVyc2l0eV9saWJyYXJ54AEA!16s%2Fm%2F0r4wjf_?entry=ttu&amp;amp;g_ep=EgoyMDI1MDQyMC4wIKXMDSoJLDEwMjExNDUzSAFQAw%3D%3D map])&lt;br /&gt;
&lt;br /&gt;
Room: Faculty Research Commons - 5100 ([https://www.lib.ncsu.edu/hunt/map floor plan])&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''GRASS project's future course.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:00-9:00 || Breakfast || On site. Start the day, meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || GRASS project's future course.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || PSC meeting || Project Steering Committee meets (public).&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || Walk to [https://maps.app.goo.gl/kHVHY62QxTd6wHKd9 On the Oval Culinary Creatins]. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || Dinner on your own. Corey White will organize trip to downtown. Bus 41 from Hunt library to hotel and then walk.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 6, Saturday, May 24 ===&lt;br /&gt;
&lt;br /&gt;
Location: James B. Hunt Jr. Library, 1070 Partners Way - Centennial Campus ([https://www.google.com/maps/place/James+B.+Hunt+Jr.+Library/@35.7693736,-78.679167,17z/data=!3m1!5s0x89acf5759f5a31df:0xc547454a0151c440!4m10!1m2!2m1!1shunt+library!3m6!1s0x89acf5759f591f41:0xbe0266269ce37f59!8m2!3d35.7693215!4d-78.6764409!15sCgxodW50IGxpYnJhcnlaDiIMaHVudCBsaWJyYXJ5kgESdW5pdmVyc2l0eV9saWJyYXJ54AEA!16s%2Fm%2F0r4wjf_?entry=ttu&amp;amp;g_ep=EgoyMDI1MDQyMC4wIKXMDSoJLDEwMjExNDUzSAFQAw%3D%3D map])&lt;br /&gt;
&lt;br /&gt;
Room: Faculty Research Commons - 5100 ([https://www.lib.ncsu.edu/hunt/map floor plan])&lt;br /&gt;
&lt;br /&gt;
Highlighted topics: ''NSF POSE project evaluation.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:00-9:00 || Breakfast || TBA. Start the day, meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || NSF POSE project evaluation, contributor community feedback.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || Your topic here (10-minute presentation and 10-minute discussion)&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || TBA. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || TBA. &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Daily tasks for participants ==&lt;br /&gt;
&lt;br /&gt;
* List all the things you are working on in the Participant reports section below. Update the list each day. Include things you work on with other people.&lt;br /&gt;
* If you want to discuss something with the whole group, add yourself to a Self-organized feedback sessions slot in the schedule above or tell Vaclav (Vashek) Petras.&lt;br /&gt;
* For people with triage access and above: If you are or will be working on an issue or on a PR which is not originally submitted by you, assign yourself to the issue or PR. (You can unassign yourself later if you change your mind.)&lt;br /&gt;
&lt;br /&gt;
== Participant reports ==&lt;br /&gt;
&lt;br /&gt;
Per-person reports from the meeting.&lt;br /&gt;
&lt;br /&gt;
=== Giuseppe Amatulli | Yale University ===&lt;br /&gt;
&lt;br /&gt;
* Testing r.watershed and r.stream for handling large datasets&lt;br /&gt;
&lt;br /&gt;
=== Veronica Andreo | CONICET - Instituto Gulich ===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/veroandreo?tab=overview&amp;amp;from=2025-05-12&amp;amp;to=2025-05-24 GitHub contributions]&lt;br /&gt;
* Website footer enhancement&lt;br /&gt;
* Sync icons on the Tutorials website footer to those on the main website&lt;br /&gt;
* Fix descriptions and their display in the tutorials website&lt;br /&gt;
* Fix GRASS page on OSGeo website [https://www.osgeo.org/projects/grass-gis/] &lt;br /&gt;
** Changed logo, removed GIS from the name, fixed old links&lt;br /&gt;
* Social media posts&lt;br /&gt;
* Discussion about hyperspectral with Alen and Anna&lt;br /&gt;
* Expand the GRASS acronym on the home page&lt;br /&gt;
* Remove GIS from GRASS name on the website&lt;br /&gt;
* Review tutorials by Huidae and Adam Smith&lt;br /&gt;
* GRASS PSC admin&lt;br /&gt;
&lt;br /&gt;
=== Abdullah Azzam | New Mexico State University ===&lt;br /&gt;
&lt;br /&gt;
* r.runoff&lt;br /&gt;
&lt;br /&gt;
=== Michael Barton | Arizona State University ===&lt;br /&gt;
&lt;br /&gt;
* POSE related activities&lt;br /&gt;
&lt;br /&gt;
=== Laura Belica | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* have been working on developing a workflow-tool tutorial template that facilitates GRASS learners who tend to 'jump in' or have a 'choose your own adventure' approach to learning GRASS (i.e., want to use their data for their study area for their objective from the start).  The structure of the tutorial template is a concise, basic, general description/instructions of the workflow with optional links to pertinent explanatory/deeper dive content  (e.g.,  plain language explainers of the tool, options, defaults, etc.) in a variety of formats (e.g., captioned images, short tool demo videos (30 sec to 2 min)) in addition to the more comprehensive resources available (e.g. documentation, examples, tutorials).  The main motivation for this approach is to help new and occasional GRASS users avoid some of the common pitfalls and to learn how to find workarounds for some of the unanticipated challenges they may encounter with their specific datasets or use cases so that they can learn as they go.  Another motivation for this approach is to facilitate the translation, extension, and updating of workflow tutorials by the community over time (e.g., providing audio and closed captioning for one of the tool-demo videos in another language, replacing an outdated GUI demo with one for the current release, or incorporating a new add-on as an option in the workflow).&lt;br /&gt;
&lt;br /&gt;
* my focus this week is on developing a draft/test tutorial (in Quarto) for a standard hydrological modelling workflow that begins with the crucial pre-work of how to figure out the appropriate project/location, etc. as well as considerations of some of the downstream impacts of resolution, extent, region etc. It may not be ready for sharing by the end of the week, but suggestions and advice are welcomed in advance.&lt;br /&gt;
&lt;br /&gt;
19 May&lt;br /&gt;
* discussed a novice user issue with 'moving' vector data from one location to another with Vero and learned a neat GUI option &lt;br /&gt;
* revised and added workflow tutorial text&lt;br /&gt;
&lt;br /&gt;
=== Shonil Sateesh Bhide | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* CI optimization&lt;br /&gt;
&lt;br /&gt;
=== Huidae Cho | New Mexico State University ===&lt;br /&gt;
&lt;br /&gt;
* CMake, conda, CI, Mentoring&lt;br /&gt;
&lt;br /&gt;
=== Edouard Choinière ===&lt;br /&gt;
&lt;br /&gt;
* Quick ideas, way too much for a week: Helping others (may take a reasonable part of the time), managing CI, setting up localization template updating workflow, backporting tool? Pytest/coverage improvements? Discuss and design other projects, to work on during the year. Open to change on other priorities once there, anything that is useful. Maybe make a little progress on high dpi GUI, especially on Windows.&lt;br /&gt;
&lt;br /&gt;
* Weekend before sprint:&lt;br /&gt;
** Clear up Renovate PRs to not use CI time during the sprint, reviewing and merging: [https://github.com/OSGeo/grass/pull/5664 #5664], [https://github.com/OSGeo/grass/pull/5665 #5665], [https://github.com/OSGeo/grass/pull/5666 #5666], [https://github.com/OSGeo/grass/pull/5667 #5667], [https://github.com/OSGeo/grass/pull/5668 #5668]&lt;br /&gt;
** PR to avoid some CI run time for the sprint: [https://github.com/OSGeo/grass/pull/5670 #5670]&lt;br /&gt;
** Reviewed open PRs for PRs that were mergeable before the sprint, updated outdated PRs to avoid having it needing CI time during sprint. Only ended up merging [https://github.com/OSGeo/grass/pull/5658 #5658], but another reviewed one that might still need changes: [https://github.com/OSGeo/grass/pull/5628 #5628]&lt;br /&gt;
* Monday May 19, 2025:&lt;br /&gt;
** PR got merged: [https://github.com/OSGeo/grass/pull/5670 #5670],[https://github.com/OSGeo/grass/pull/5550 #5550]&lt;br /&gt;
** Reviewed PRs: [https://github.com/OSGeo/grass/pull/5671 #5671], [https://github.com/OSGeo/grass/pull/5672 #5672]&lt;br /&gt;
** Discussions:&lt;br /&gt;
*** Shonil Sateesh Bhid &amp;amp; Shuham on their CI &amp;amp; pytest work and project.&lt;br /&gt;
*** Māris Nartišs about a potential issue and improvement for it. Will be discussed in the security reporting tab, also allowing to test the security vulnerability reporting process. + Research on existing solutions&lt;br /&gt;
** Reviewed: [https://github.com/OSGeo/grass/pull/5682 #5682], [https://github.com/OSGeo/grass/pull/5660 #5660],&lt;br /&gt;
** Reviewed, edited and merged: [https://github.com/OSGeo/grass/pull/3672 #3672]&lt;br /&gt;
** Discussed/helped user for: [https://github.com/OSGeo/grass/pull/5678 #5678] and [https://github.com/OSGeo/grass/pull/5684 #5684]&lt;br /&gt;
** Long discussion and vision planning for windows scripting with Vaclav, concerning [https://github.com/OSGeo/grass/pull/5624 #5624]. Tested alternatives and tried the consequences of that PR. This older PR finally got merged.&lt;br /&gt;
** Created PRs for NSIS installer: [https://github.com/OSGeo/grass/pull/5685 #5685] and also [https://github.com/OSGeo/grass/pull/5686 #5686], which should address [https://github.com/OSGeo/grass/issues/5663 #5663]. Still needs to test it.&lt;br /&gt;
** Agreed on convention for titles with Vaclav, unblocking [https://github.com/OSGeo/grass/pull/5341 #5341]&lt;br /&gt;
** Found a name with Ondrej and finally merged older PRs of an external contributor [https://github.com/OSGeo/grass/pull/5473 #5473] and [https://github.com/OSGeo/grass/pull/5474 #5474]&lt;br /&gt;
* Thursday May 20, 2025:&lt;br /&gt;
** Reviewed: [https://github.com/OSGeo/grass/pull/5695 #5695]&lt;br /&gt;
** Merged PRs: [https://github.com/OSGeo/grass/pull/5673 #5673], [https://github.com/OSGeo/grass/pull/5691 #5691], [https://github.com/OSGeo/grass/pull/5690 #5690], [https://github.com/OSGeo/grass/pull/5684 #5684],&lt;br /&gt;
** Discussed with author of [https://github.com/OSGeo/grass/pull/5660 #5660] and [https://github.com/OSGeo/grass/issues/5659 #5659] about rgb/hsl bug and tests for help.&lt;br /&gt;
** Worked with Corey to adjust markdown links for new markdownlint rule, finishing up [https://github.com/OSGeo/grass/pull/5669 #5669]&lt;br /&gt;
** Created PRs: [https://github.com/OSGeo/grass/pull/5692 #5692], [https://github.com/OSGeo/grass/pull/5694 #5694], [https://github.com/OSGeo/grass/pull/5689 #5689]&lt;br /&gt;
&lt;br /&gt;
=== Laurent Courty ===&lt;br /&gt;
&lt;br /&gt;
* An xarray backend for GRASS STRDS. Fixing related issues&lt;br /&gt;
* Presented itzi&lt;br /&gt;
* Uploaded arm64 wheels to PyPI for MacOS and Linux ([https://pypi.org/project/itzi/#files])&lt;br /&gt;
&lt;br /&gt;
=== Robert S. Dzur | Bohannan Huston, Inc. ===&lt;br /&gt;
&lt;br /&gt;
* r.in.pdal&lt;br /&gt;
&lt;br /&gt;
=== David W. Farris | East Carolina University ===&lt;br /&gt;
&lt;br /&gt;
* A tool to calculate gravity terrain corrections&lt;br /&gt;
&lt;br /&gt;
=== Neel Ghoshal | NC State University ===&lt;br /&gt;
• LLM for helping users find tools&amp;lt;br&amp;gt;&lt;br /&gt;
5/19&amp;lt;br&amp;gt;&lt;br /&gt;
• Learnt how to PR (#5674)&amp;lt;br&amp;gt;&lt;br /&gt;
• Setup GRASS on system&amp;lt;br&amp;gt;&lt;br /&gt;
• Found small issue with compilation document&amp;lt;br&amp;gt;&lt;br /&gt;
• Discussed about the possible use case of LLM for helping users find tools&amp;lt;br&amp;gt;&lt;br /&gt;
5/20&amp;lt;br&amp;gt;&lt;br /&gt;
• Learnt about cookie cutter&amp;lt;br&amp;gt;&lt;br /&gt;
• Set up wsl on system&amp;lt;br&amp;gt;&lt;br /&gt;
• Compiled GRASS&amp;lt;br&amp;gt;&lt;br /&gt;
• Listed data sources for LLM training&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Caitlin Haedrich | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* Event photographs&lt;br /&gt;
* git/github mentoring&lt;br /&gt;
&lt;br /&gt;
=== Brendan Harmon | Louisiana State University ===&lt;br /&gt;
&lt;br /&gt;
* Developing ([https://github.com/baharmon/r.earthworks r.earthworks]) addon &amp;amp; tutorials&lt;br /&gt;
* [https://github.com/baharmon?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
&lt;br /&gt;
=== Linda Karlovska | Czech Technical University in Prague ===&lt;br /&gt;
&lt;br /&gt;
* I plan to work on GUI enhancements, particularly the Jupyter-style interactive page for enhanced scripting and visualization.&lt;br /&gt;
&lt;br /&gt;
=== Martin Landa | Czech Technical University in Prague ===&lt;br /&gt;
&lt;br /&gt;
* Tutorial: GISMentors courses updated ([https://github.com/OSGeo/grass-tutorials/pull/45 PR])&lt;br /&gt;
* libgis: G__usage_markdown() include tool label in metadata if defined ([https://github.com/OSGeo/grass/pull/5677 PR])&lt;br /&gt;
* PyGRASS: Module description property not defined always ([https://github.com/OSGeo/grass/pull/5681 PR])&lt;br /&gt;
* Website: OpenGeoLabs commercial support ([https://github.com/OSGeo/grass-website/pull/537 PR])&lt;br /&gt;
* v.select: create output also when no features found ([https://github.com/OSGeo/grass/pull/5696 PR])&lt;br /&gt;
* wxGUI: avoid creating nested list of errors (Graphical modeler) ([https://github.com/OSGeo/grass/pull/5700 PR])&lt;br /&gt;
* wxGUI/gmodeler: refactor - move ModelParamDialog to dialogs.py ([https://github.com/OSGeo/grass/pull/5715 PR])&lt;br /&gt;
&lt;br /&gt;
=== Nicklas Larsson | Hungarian National Museum ===&lt;br /&gt;
&lt;br /&gt;
* CMake build system; perhaps Conda recipe&lt;br /&gt;
&lt;br /&gt;
=== Chung-Yuan Liang ===&lt;br /&gt;
&lt;br /&gt;
* parallelize some modules, improve testing&lt;br /&gt;
&lt;br /&gt;
=== Andres Lucero | Bohannan Huston Inc ===&lt;br /&gt;
&lt;br /&gt;
* r.in.pdal&lt;br /&gt;
&lt;br /&gt;
=== Alen Mangafić | Geodetic Institute of Slovenia ===&lt;br /&gt;
Monday May 19 &lt;br /&gt;
* Presentationf of i.hyper, add-on which offers hyperspectral data support in GRASS.&lt;br /&gt;
* Architecture of the multi-module addon&lt;br /&gt;
Tuesday May 20&lt;br /&gt;
* i.hyper.import module: importing EnMAP imagery as 3D raster map&lt;br /&gt;
* i.hyper.explore module: RGB, CIR and SWIR visualization from 3D hyperspectral raster map.&lt;br /&gt;
&lt;br /&gt;
=== Helena Mitasova | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* standardized data set and related tutorials&lt;br /&gt;
* documentation for interpolation tools&lt;br /&gt;
* collaborate/coordinate/discuss hydrology tools (analytics, simulations, soil properties inputs)&lt;br /&gt;
* assist with wiki cleanup if needed&lt;br /&gt;
&lt;br /&gt;
Monday May 19&lt;br /&gt;
* investigated issues with v.surf.rst documentation in source code, tested and identified fixes needed&lt;br /&gt;
* discussed coupling GRASS with Blender versus potree for 3D object rendering with Brendan, Anna and Caitlin (for TL activities and other applications)&lt;br /&gt;
* discussed soil data for runoff estimation and other hydro topics, to be worked on on day 2&lt;br /&gt;
&lt;br /&gt;
Tuesday May 20&lt;br /&gt;
* worked with Corey on fixing v.surf.rst documentation, discussed ideas for improvements and for documentation / tutorial for cross-valiadation&lt;br /&gt;
* discussed suggestions for graphics and examples to be inculded in v.surf.rst docs with Michelle &lt;br /&gt;
* discussed new developments in hydrology tools&lt;br /&gt;
* experimented with basic/standardized versus specialized data sets for documentation and tutorials&lt;br /&gt;
&lt;br /&gt;
=== Michael Mulqueen | MassGIS ===&lt;br /&gt;
&lt;br /&gt;
* depth to water, hydro from lidar, etc&lt;br /&gt;
&lt;br /&gt;
=== Māris Nartišs ===&lt;br /&gt;
&lt;br /&gt;
* Preparing a new raster data analysis tool r.smooth for inclusion into GRASS core&lt;br /&gt;
* Discussing architecture of hyperspectral data import and per-processing tool&lt;br /&gt;
&lt;br /&gt;
=== Ondřej Pešek | Czech Technical University in Prague ===&lt;br /&gt;
&lt;br /&gt;
* Many things to fix/improve in g.gui.gmodeler, finally finish an addon for CNNs in GRASS&lt;br /&gt;
&lt;br /&gt;
=== Vaclav (Vashek) Petras | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/wenzeslaus?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
* My focus: Getting feedback and ideas for computational engine use case, APIs, funding.&lt;br /&gt;
* Summit organizing&lt;br /&gt;
* Implementing rebranding on GitHub (repos, teams)&lt;br /&gt;
* Feedback session on project image&lt;br /&gt;
* Feedback session on easier access to tools&lt;br /&gt;
* Discussed LLMs with Neel Ghoshal, Riya&lt;br /&gt;
* Discussed session setupp  Martin Landa&lt;br /&gt;
* Discussed conda with Nicklas Larsson&lt;br /&gt;
* Discussed hyperspectral with Alen Mangafić, Veronica Andreo, and Anna Petrasova&lt;br /&gt;
* Discussed code for new smoothing tool, integer overflows, translations with Māris Nartišs&lt;br /&gt;
* Compared setup of GRASS session and project in fasterRaster, QGIS, and GRASS itself with Adam Smith&lt;br /&gt;
* Discussed potential of Pixi for packaging or compilation with Gregory Power&lt;br /&gt;
* Discussed itzi model distribution issues with Laurent Courty&lt;br /&gt;
* Discussed r.horizon parallelization with Chung-Yuan Liang and Anna Petrasova&lt;br /&gt;
* Answered coding and setup questions for Neel Ghoshal, Abdullah Azzam, and Alen Mangafić&lt;br /&gt;
&lt;br /&gt;
=== Anna Petrasova | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/petrasovaa?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
* plan: mentoring, documentation&lt;br /&gt;
* Monday&lt;br /&gt;
** discussing hyperspectral implementation with Alen&lt;br /&gt;
** helping mentee David Farris implementing his gravity correction addon&lt;br /&gt;
* Tuesday&lt;br /&gt;
** delivered intro to creating an addon, documentation&lt;br /&gt;
** mentoring Alen, Abdullah&lt;br /&gt;
** discussing bug in i.his.rgb with Jayneel&lt;br /&gt;
** reviews&lt;br /&gt;
&lt;br /&gt;
=== Gregory Power | Town of Cary ===&lt;br /&gt;
&lt;br /&gt;
* Documentation&lt;br /&gt;
&lt;br /&gt;
=== Pratikshya Regmi | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* I plan to showcase my work on integrating LLM and GRASS GIS.&lt;br /&gt;
&lt;br /&gt;
=== Riya | Indian Institute of Technology, Roorkee ===&lt;br /&gt;
&lt;br /&gt;
* I am currently thinking of developing an AI Agent for the grass jupyter library which will help the users with mathematical calculations done in GIS.&lt;br /&gt;
&lt;br /&gt;
=== Jayneel Shah | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* improve the test coverage of imagery modules.&lt;br /&gt;
&lt;br /&gt;
=== Krishna Prasad Sheshadri ===&lt;br /&gt;
&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
=== Adam Smith | Missouri Botanical Garden ===&lt;br /&gt;
&lt;br /&gt;
Overall: R package fasterRaster (fielding bug reports, adding features)&lt;br /&gt;
&lt;br /&gt;
Monday:&lt;br /&gt;
* Assessed scope of fasterRaster issue [https://github.com/adamlilith/fasterRaster/issues/83 83]&lt;br /&gt;
&lt;br /&gt;
Tuesday:&lt;br /&gt;
* Created a PR for fasterRaster tutorial on GRASS tutorials page.&lt;br /&gt;
* Improved handling of addons, including autodetect and installing when needed, enabling easier creation of addon-dependent methods.&lt;br /&gt;
* Presented *fasterRaster* package to group.&lt;br /&gt;
&lt;br /&gt;
=== Michelle (Mimi) Stephens | ERDC ===&lt;br /&gt;
&lt;br /&gt;
* Previous work: coupling R and Python scripts for computational analysis in GRASS.&lt;br /&gt;
* Current work: Running through GRASS commands to create visual outputs that can be added to the new GRASS 8.5 manual pages.&lt;br /&gt;
* Future work: Presenting on GRASS in JUNE at CERLCON.&lt;br /&gt;
&lt;br /&gt;
=== Corey White | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* JSON, mentoring&lt;br /&gt;
&lt;br /&gt;
=== Doug Newcomb | Semi Retired Cartographer ===&lt;br /&gt;
&lt;br /&gt;
* Discussed hydroflattening method&lt;br /&gt;
* Discussed direct point cloud input to v.surf.rst&lt;br /&gt;
* Learning git procedures by updating branding (GRASS GIS to GRASS)  for raster commands&lt;br /&gt;
Tuesday&lt;br /&gt;
* Continued updating branding for raster commands&lt;br /&gt;
* Started working on tutorial for r.hydro.flatten&lt;br /&gt;
&lt;br /&gt;
== Guests and remote participants ==&lt;br /&gt;
&lt;br /&gt;
=== Luís de Sousa | University of Lisbon ===&lt;br /&gt;
&lt;br /&gt;
* Review outstanding PRs&lt;br /&gt;
* Prepare GRASS sessions for the OpenGeoHub Summer School&lt;br /&gt;
&lt;br /&gt;
=== Markus Neteler | mundialis ===&lt;br /&gt;
&lt;br /&gt;
* Support full automation of new GRASS manual pages deployment on server (upload artifacts from GitHub to OSGeo servers (grass and download))&lt;br /&gt;
* Source code license documentation: Using SPDX License IDs ({{GH-Issues|4190}})&lt;br /&gt;
* Support Wiki cleanup&lt;br /&gt;
* [https://github.com/neteler?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub contributions]&lt;br /&gt;
&lt;br /&gt;
=== Nishant Bansal | Indian Institute of Technology, Varanasi ===&lt;br /&gt;
&lt;br /&gt;
* Review the previous work on JSON during last year’s GSoC, including enhancements and the addition of JSON output support to other modules.&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Talk:GRASS_Developer_Summit_Raleigh_2025&amp;diff=28343</id>
		<title>Talk:GRASS Developer Summit Raleigh 2025</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Talk:GRASS_Developer_Summit_Raleigh_2025&amp;diff=28343"/>
		<updated>2025-05-21T02:22:21Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: /* Anna Petrasova | NC State University */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{toc|right}}&lt;br /&gt;
&lt;br /&gt;
Quick links: [[GRASS Developer Summit Raleigh 2025|Meeting page]] | [[#Participant_reports|Reports]]  |  [[GRASS_Developer_Summit_Raleigh_2025#Sponsors|Sponsors]]&lt;br /&gt;
&lt;br /&gt;
== Organizing Team ==&lt;br /&gt;
&lt;br /&gt;
* Initial planning: Vaclav Petras, Anna Petrasova, Veronica Andreo, Corey White, Lois Utt, Sarah White, Doug Newcomb, Huidae Cho, Veronica Andreo ([[GRASS_Developer_Summit_Raleigh_2025#Organizing_Committee|Organizing Committee]])&lt;br /&gt;
* Budget: Vaclav Petras, Lois Utt, Anna Petrasova&lt;br /&gt;
* Raising support: Helena Mitasova, Vaclav Petras, Anna Petrasova, Michael Barton, Giuseppe Amatulli ([[NSF POSE Project 2023-2025 Timeline|NSF POSE project]] proposal authors)&lt;br /&gt;
* Travel: Lois Utt&lt;br /&gt;
* Venue: Vaclav Petras, Lois Utt&lt;br /&gt;
* Meals: Lois Utt, Sarah White, Vaclav Petras, Corey White, Anna Petrasova&lt;br /&gt;
* Agenda: Vaclav Petras, Huidae Cho, Anna Petrasova&lt;br /&gt;
* Wiki page: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Swag: Sarah White, Vaclav Petras, Anna Petrasova, Corey White&lt;br /&gt;
* Promotion, invitations, and social media: Vaclav Petras, Sarah White, Corey White, John Vogler&lt;br /&gt;
* Lightning talks organization: Vaclav Petras, Zachary Arcaro, John Vogler&lt;br /&gt;
* Lightning talk speakers: Vaclav Petras (welcome), Markus Metz and Markus Neteler (talk presented by Vaclav Petras), Anna Petrasova, Veronica Andreo, Robert Dzur, Nick Brady, Huidae Cho, Gregory Power, Doug Newcomb, Caitlin Haedrich&lt;br /&gt;
* Photography: Caitlin Haedrich, Māris Nartišs, Pratikshya Regmi&lt;br /&gt;
&lt;br /&gt;
== Detailed Schedule ==&lt;br /&gt;
&lt;br /&gt;
=== Day 1, Monday, May 19 ===&lt;br /&gt;
&lt;br /&gt;
Location: Talley Student Union, 2610 Cates Ave ([https://www.google.com/maps/place/Talley+Student+Union/data=!4m2!3m1!1s0x0:0x38989377c96adef0?sa=X&amp;amp;ved=1t:2428&amp;amp;ictx=111 map])&lt;br /&gt;
&lt;br /&gt;
Room: 5101-Executive Board Room&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''Contributing to GRASS. Getting started. Is it easy to contribute?''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:30-9:00 || Breakfast || Catered breakfast on site. Meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || What to expect from the event, contributing to GRASS using Git and GitHub, making your first contribution.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || i.hyper: Integrating Hyperspectral Imagery Processing into GRASS - Alen Mangafić&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || &lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Project Image - Vaclav Petras&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || Catered food on site.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || We will walk to [https://www.trophybrewing.com/brewing-pizza Trophy Brewing &amp;amp; Pizza] ([https://maps.app.goo.gl/ggnZ7EvXbWqDUmvP9 directions], 30 min walk from Talley)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 2, Tuesday, May 20 ===&lt;br /&gt;
&lt;br /&gt;
Location: Talley Student Union, 2610 Cates Ave ([https://www.google.com/maps/place/Talley+Student+Union/data=!4m2!3m1!1s0x0:0x38989377c96adef0?sa=X&amp;amp;ved=1t:2428&amp;amp;ictx=111 map])&lt;br /&gt;
&lt;br /&gt;
Room: 5101-Executive Board Room&lt;br /&gt;
&lt;br /&gt;
Highlighted topics: ''Hydrology and Interfacing with R and QGIS (gathering user feedback, testing, discussing with developers, developing action items)''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:30-9:00 || Breakfast || Breakfast on site. Start the day, meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || Introduction to writing GRASS tools, program for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || fasterRaster R package - Adam Smith&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Hydography90m + Geocomputation Courses - Giuseppe&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Flood modelling with grass and itzi ([https://itzi.org]) - Laurent Courty&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || [https://maps.app.goo.gl/womSkce9DrE8CTnR8 Case dining hall]&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || [https://maps.app.goo.gl/CQiWoCAQNt1ymZkb7 Served in Jordan Hall at the Center for Geospatial Analytics], evaluate the day's accomplishments, plan and prioritize for the next few days.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 3, Wednesday, May 21 ===&lt;br /&gt;
&lt;br /&gt;
Location: Talley Student Union, 2610 Cates Ave ([https://www.google.com/maps/place/Talley+Student+Union/data=!4m2!3m1!1s0x0:0x38989377c96adef0?sa=X&amp;amp;ved=1t:2428&amp;amp;ictx=111 map])&lt;br /&gt;
&lt;br /&gt;
Room: 5101-Executive Board Room&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''Non-coding contributions, natural language translation, and internationalization.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 7:00-9:00 || Breakfast || [https://maps.app.goo.gl/eZ8VK8Mx6TjMt9NP8 Case dining hall]&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || Introduction to non-coding contributions, deep dive into new documentation, natural language translation and internationalization (procedures, glossaries, code customization, translation).&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || Easier access to GRASS tools - Vaclav Petras&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Temporal framework global variables ([https://github.com/OSGeo/grass/issues/629]) - Laurent Courty&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || GSoC call&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || Served on site. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || [https://maps.app.goo.gl/1E39eySMVaxYJUUS8 Picnic at Pullen Park, shelter #3. In case of bad weather, dinner at the Center for Geospatial Analytics.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 4, Thursday, May 22 ===&lt;br /&gt;
&lt;br /&gt;
Location: Center for Geospatial Analytics, Jordan Hall, 2800 Faucette Drive ([https://www.google.com/maps/search/Jordan+Hall/@35.7816832,-78.6772765,18z/data=!3m1!4b1?entry=ttu&amp;amp;g_ep=EgoyMDI1MDQyMC4wIKXMDSoJLDEwMjExNDUzSAFQAw%3D%3D map])&lt;br /&gt;
&lt;br /&gt;
Room: 5103 (straight from the two elevators, at the end of the hallway)&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''Project vision and computational engine use case.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:00-9:00 || Breakfast || On site. Start the day, meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || Project vision and the computational engine use case (missing features, documentation, user groups).&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || Your topic here (10-minute presentation and 10-minute discussion)&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Modernizing Color Tables (Brendan)&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || On site. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-16:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 16:00-17:00 || Lightning talks || Fast-paced talks, showcasing applications of GRASS, room 5111.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Reception || Connect with researchers, government professionals, and industry collaborators, rooms 5111 and 5119.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 5, Friday, May 23 ===&lt;br /&gt;
&lt;br /&gt;
Location: James B. Hunt Jr. Library, 1070 Partners Way - Centennial Campus ([https://www.google.com/maps/place/James+B.+Hunt+Jr.+Library/@35.7693736,-78.679167,17z/data=!3m1!5s0x89acf5759f5a31df:0xc547454a0151c440!4m10!1m2!2m1!1shunt+library!3m6!1s0x89acf5759f591f41:0xbe0266269ce37f59!8m2!3d35.7693215!4d-78.6764409!15sCgxodW50IGxpYnJhcnlaDiIMaHVudCBsaWJyYXJ5kgESdW5pdmVyc2l0eV9saWJyYXJ54AEA!16s%2Fm%2F0r4wjf_?entry=ttu&amp;amp;g_ep=EgoyMDI1MDQyMC4wIKXMDSoJLDEwMjExNDUzSAFQAw%3D%3D map])&lt;br /&gt;
&lt;br /&gt;
Room: Faculty Research Commons - 5100 ([https://www.lib.ncsu.edu/hunt/map floor plan])&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''GRASS project's future course.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:00-9:00 || Breakfast || On site. Start the day, meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || GRASS project's future course.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || PSC meeting || Project Steering Committee meets (public).&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || Walk to [https://maps.app.goo.gl/kHVHY62QxTd6wHKd9 On the Oval Culinary Creatins]. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || Dinner on your own. Corey White will organize trip to downtown. Bus 41 from Hunt library to hotel and then walk.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 6, Saturday, May 24 ===&lt;br /&gt;
&lt;br /&gt;
Location: James B. Hunt Jr. Library, 1070 Partners Way - Centennial Campus ([https://www.google.com/maps/place/James+B.+Hunt+Jr.+Library/@35.7693736,-78.679167,17z/data=!3m1!5s0x89acf5759f5a31df:0xc547454a0151c440!4m10!1m2!2m1!1shunt+library!3m6!1s0x89acf5759f591f41:0xbe0266269ce37f59!8m2!3d35.7693215!4d-78.6764409!15sCgxodW50IGxpYnJhcnlaDiIMaHVudCBsaWJyYXJ5kgESdW5pdmVyc2l0eV9saWJyYXJ54AEA!16s%2Fm%2F0r4wjf_?entry=ttu&amp;amp;g_ep=EgoyMDI1MDQyMC4wIKXMDSoJLDEwMjExNDUzSAFQAw%3D%3D map])&lt;br /&gt;
&lt;br /&gt;
Room: Faculty Research Commons - 5100 ([https://www.lib.ncsu.edu/hunt/map floor plan])&lt;br /&gt;
&lt;br /&gt;
Highlighted topics: ''NSF POSE project evaluation.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:00-9:00 || Breakfast || TBA. Start the day, meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || NSF POSE project evaluation, contributor community feedback.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || Your topic here (10-minute presentation and 10-minute discussion)&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || TBA. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || TBA. &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Daily tasks for participants ==&lt;br /&gt;
&lt;br /&gt;
* List all the things you are working on in the Participant reports section below. Update the list each day. Include things you work on with other people.&lt;br /&gt;
* If you want to discuss something with the whole group, add yourself to a Self-organized feedback sessions slot in the schedule above or tell Vaclav (Vashek) Petras.&lt;br /&gt;
* For people with triage access and above: If you are or will be working on an issue or on a PR which is not originally submitted by you, assign yourself to the issue or PR. (You can unassign yourself later if you change your mind.)&lt;br /&gt;
&lt;br /&gt;
== Participant reports ==&lt;br /&gt;
&lt;br /&gt;
Per-person reports from the meeting.&lt;br /&gt;
&lt;br /&gt;
=== Giuseppe Amatulli | Yale University ===&lt;br /&gt;
&lt;br /&gt;
* Testing r.watershed and r.stream for handling large datasets&lt;br /&gt;
&lt;br /&gt;
=== Veronica Andreo | CONICET - Instituto Gulich ===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/veroandreo?tab=overview&amp;amp;from=2025-05-12&amp;amp;to=2025-05-24 GitHub contributions]&lt;br /&gt;
* Website footer enhancement&lt;br /&gt;
* Sync icons on the Tutorials website footer to those on the main website&lt;br /&gt;
* Fix descriptions and their display in the tutorials website&lt;br /&gt;
* Fix GRASS page on OSGeo website [https://www.osgeo.org/projects/grass-gis/] &lt;br /&gt;
** Changed logo, removed GIS from the name, fixed old links&lt;br /&gt;
* Social media posts&lt;br /&gt;
* Discussion about hyperspectral with Alen and Anna&lt;br /&gt;
* Expand the GRASS acronym on the home page&lt;br /&gt;
* Remove GIS from GRASS name on the website&lt;br /&gt;
* Review tutorials by Huidae and Adam Smith&lt;br /&gt;
* GRASS PSC admin&lt;br /&gt;
&lt;br /&gt;
=== Abdullah Azzam | New Mexico State University ===&lt;br /&gt;
&lt;br /&gt;
* r.runoff&lt;br /&gt;
&lt;br /&gt;
=== Michael Barton | Arizona State University ===&lt;br /&gt;
&lt;br /&gt;
* POSE related activities&lt;br /&gt;
&lt;br /&gt;
=== Laura Belica | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* have been working on developing a workflow-tool tutorial template that facilitates GRASS learners who tend to 'jump in' or have a 'choose your own adventure' approach to learning GRASS (i.e., want to use their data for their study area for their objective from the start).  The structure of the tutorial template is a concise, basic, general description/instructions of the workflow with optional links to pertinent explanatory/deeper dive content  (e.g.,  plain language explainers of the tool, options, defaults, etc.) in a variety of formats (e.g., captioned images, short tool demo videos (30 sec to 2 min)) in addition to the more comprehensive resources available (e.g. documentation, examples, tutorials).  The main motivation for this approach is to help new and occasional GRASS users avoid some of the common pitfalls and to learn how to find workarounds for some of the unanticipated challenges they may encounter with their specific datasets or use cases so that they can learn as they go.  Another motivation for this approach is to facilitate the translation, extension, and updating of workflow tutorials by the community over time (e.g., providing audio and closed captioning for one of the tool-demo videos in another language, replacing an outdated GUI demo with one for the current release, or incorporating a new add-on as an option in the workflow).&lt;br /&gt;
&lt;br /&gt;
* my focus this week is on developing a draft/test tutorial (in Quarto) for a standard hydrological modelling workflow that begins with the crucial pre-work of how to figure out the appropriate project/location, etc. as well as considerations of some of the downstream impacts of resolution, extent, region etc. It may not be ready for sharing by the end of the week, but suggestions and advice are welcomed in advance.&lt;br /&gt;
&lt;br /&gt;
19 May&lt;br /&gt;
* discussed a novice user issue with 'moving' vector data from one location to another with Vero and learned a neat GUI option &lt;br /&gt;
* revised and added workflow tutorial text&lt;br /&gt;
&lt;br /&gt;
=== Shonil Sateesh Bhide | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* CI optimization&lt;br /&gt;
&lt;br /&gt;
=== Huidae Cho | New Mexico State University ===&lt;br /&gt;
&lt;br /&gt;
* CMake, conda, CI, Mentoring&lt;br /&gt;
&lt;br /&gt;
=== Edouard Choinière ===&lt;br /&gt;
&lt;br /&gt;
* Quick ideas, way too much for a week: Helping others (may take a reasonable part of the time), managing CI, setting up localization template updating workflow, backporting tool? Pytest/coverage improvements? Discuss and design other projects, to work on during the year. Open to change on other priorities once there, anything that is useful. Maybe make a little progress on high dpi GUI, especially on Windows.&lt;br /&gt;
&lt;br /&gt;
* Weekend before sprint:&lt;br /&gt;
** Clear up Renovate PRs to not use CI time during the sprint, reviewing and merging: [https://github.com/OSGeo/grass/pull/5664 #5664], [https://github.com/OSGeo/grass/pull/5665 #5665], [https://github.com/OSGeo/grass/pull/5666 #5666], [https://github.com/OSGeo/grass/pull/5667 #5667], [https://github.com/OSGeo/grass/pull/5668 #5668]&lt;br /&gt;
** PR to avoid some CI run time for the sprint: [https://github.com/OSGeo/grass/pull/5670 #5670]&lt;br /&gt;
** Reviewed open PRs for PRs that were mergeable before the sprint, updated outdated PRs to avoid having it needing CI time during sprint. Only ended up merging [https://github.com/OSGeo/grass/pull/5658 #5658], but another reviewed one that might still need changes: [https://github.com/OSGeo/grass/pull/5628 #5628]&lt;br /&gt;
* Monday May 19, 2025:&lt;br /&gt;
** PR got merged: [https://github.com/OSGeo/grass/pull/5670 #5670],[https://github.com/OSGeo/grass/pull/5550 #5550]&lt;br /&gt;
** Reviewed PRs: [https://github.com/OSGeo/grass/pull/5671 #5671], [https://github.com/OSGeo/grass/pull/5672 #5672]&lt;br /&gt;
** Discussions:&lt;br /&gt;
*** Shonil Sateesh Bhid &amp;amp; Shuham on their CI &amp;amp; pytest work and project.&lt;br /&gt;
*** Māris Nartišs about a potential issue and improvement for it. Will be discussed in the security reporting tab, also allowing to test the security vulnerability reporting process. + Research on existing solutions&lt;br /&gt;
** Reviewed: [https://github.com/OSGeo/grass/pull/5682 #5682], [https://github.com/OSGeo/grass/pull/5660 #5660],&lt;br /&gt;
** Reviewed, edited and merged: [https://github.com/OSGeo/grass/pull/3672 #3672]&lt;br /&gt;
** Discussed/helped user for: [https://github.com/OSGeo/grass/pull/5678 #5678] and [https://github.com/OSGeo/grass/pull/5684 #5684]&lt;br /&gt;
** Long discussion and vision planning for windows scripting with Vaclav, concerning [https://github.com/OSGeo/grass/pull/5624 #5624]. Tested alternatives and tried the consequences of that PR. This older PR finally got merged.&lt;br /&gt;
** Created PRs for NSIS installer: [https://github.com/OSGeo/grass/pull/5685 #5685] and also [https://github.com/OSGeo/grass/pull/5686 #5686], which should address [https://github.com/OSGeo/grass/issues/5663 #5663]. Still needs to test it.&lt;br /&gt;
** Agreed on convention for titles with Vaclav, unblocking [https://github.com/OSGeo/grass/pull/5341 #5341]&lt;br /&gt;
** Found a name with Ondrej and finally merged older PRs of an external contributor [https://github.com/OSGeo/grass/pull/5473 #5473] and [https://github.com/OSGeo/grass/pull/5474 #5474]&lt;br /&gt;
* Thursday May 20, 2025:&lt;br /&gt;
** Reviewed: [https://github.com/OSGeo/grass/pull/5695 #5695]&lt;br /&gt;
** Merged PRs: [https://github.com/OSGeo/grass/pull/5673 #5673], [https://github.com/OSGeo/grass/pull/5691 #5691], [https://github.com/OSGeo/grass/pull/5690 #5690], [https://github.com/OSGeo/grass/pull/5684 #5684],&lt;br /&gt;
** Discussed with author of [https://github.com/OSGeo/grass/pull/5660 #5660] and [https://github.com/OSGeo/grass/issues/5659 #5659] about rgb/hsl bug and tests for help.&lt;br /&gt;
** Worked with Corey to adjust markdown links for new markdownlint rule, finishing up [https://github.com/OSGeo/grass/pull/5669 #5669]&lt;br /&gt;
** Created PRs: [https://github.com/OSGeo/grass/pull/5692 #5692], [https://github.com/OSGeo/grass/pull/5694 #5694], [https://github.com/OSGeo/grass/pull/5689 #5689]&lt;br /&gt;
&lt;br /&gt;
=== Laurent Courty ===&lt;br /&gt;
&lt;br /&gt;
* An xarray backend for GRASS STRDS. Fixing related issues&lt;br /&gt;
* Presented itzi&lt;br /&gt;
* Uploaded arm64 wheels to PyPI for MacOS and Linux ([https://pypi.org/project/itzi/#files])&lt;br /&gt;
&lt;br /&gt;
=== Robert S. Dzur | Bohannan Huston, Inc. ===&lt;br /&gt;
&lt;br /&gt;
* r.in.pdal&lt;br /&gt;
&lt;br /&gt;
=== David W. Farris | East Carolina University ===&lt;br /&gt;
&lt;br /&gt;
* A tool to calculate gravity terrain corrections&lt;br /&gt;
&lt;br /&gt;
=== Neel Ghoshal | NC State University ===&lt;br /&gt;
• LLM for helping users find tools&amp;lt;br&amp;gt;&lt;br /&gt;
5/19&amp;lt;br&amp;gt;&lt;br /&gt;
• Learnt how to PR (#5674)&amp;lt;br&amp;gt;&lt;br /&gt;
• Setup GRASS on system&amp;lt;br&amp;gt;&lt;br /&gt;
• Found small issue with compilation document&amp;lt;br&amp;gt;&lt;br /&gt;
• Discussed about the possible use case of LLM for helping users find tools&amp;lt;br&amp;gt;&lt;br /&gt;
5/20&amp;lt;br&amp;gt;&lt;br /&gt;
• Learnt about cookie cutter&amp;lt;br&amp;gt;&lt;br /&gt;
• Set up wsl on system&amp;lt;br&amp;gt;&lt;br /&gt;
• Compiled GRASS&amp;lt;br&amp;gt;&lt;br /&gt;
• Listed data sources for LLM training&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Caitlin Haedrich | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* Event photographs&lt;br /&gt;
* git/github mentoring&lt;br /&gt;
&lt;br /&gt;
=== Brendan Harmon | Louisiana State University ===&lt;br /&gt;
&lt;br /&gt;
* Developing ([https://github.com/baharmon/r.earthworks r.earthworks]) addon &amp;amp; tutorials&lt;br /&gt;
* [https://github.com/baharmon?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
&lt;br /&gt;
=== Linda Karlovska | Czech Technical University in Prague ===&lt;br /&gt;
&lt;br /&gt;
* I plan to work on GUI enhancements, particularly the Jupyter-style interactive page for enhanced scripting and visualization.&lt;br /&gt;
&lt;br /&gt;
=== Martin Landa | Czech Technical University in Prague ===&lt;br /&gt;
&lt;br /&gt;
* Tutorial: GISMentors courses updated ([https://github.com/OSGeo/grass-tutorials/pull/45 PR])&lt;br /&gt;
* libgis: G__usage_markdown() include tool label in metadata if defined ([https://github.com/OSGeo/grass/pull/5677 PR])&lt;br /&gt;
* PyGRASS: Module description property not defined always ([https://github.com/OSGeo/grass/pull/5681 PR])&lt;br /&gt;
* Website: OpenGeoLabs commercial support ([https://github.com/OSGeo/grass-website/pull/537 PR])&lt;br /&gt;
* v.select: create output also when no features found ([https://github.com/OSGeo/grass/pull/5696 PR])&lt;br /&gt;
* wxGUI: avoid creating nested list of errors (Graphical modeler) ([https://github.com/OSGeo/grass/pull/5700 PR])&lt;br /&gt;
&lt;br /&gt;
=== Nicklas Larsson | Hungarian National Museum ===&lt;br /&gt;
&lt;br /&gt;
* CMake build system; perhaps Conda recipe&lt;br /&gt;
&lt;br /&gt;
=== Chung-Yuan Liang ===&lt;br /&gt;
&lt;br /&gt;
* parallelize some modules, improve testing&lt;br /&gt;
&lt;br /&gt;
=== Andres Lucero | Bohannan Huston Inc ===&lt;br /&gt;
&lt;br /&gt;
* r.in.pdal&lt;br /&gt;
&lt;br /&gt;
=== Alen Mangafić | Geodetic Institute of Slovenia ===&lt;br /&gt;
Monday May 19 &lt;br /&gt;
* Presentationf of i.hyper, add-on which offers hyperspectral data support in GRASS.&lt;br /&gt;
* Architecture of the multi-module addon&lt;br /&gt;
Tuesday May 20&lt;br /&gt;
* i.hyper.import module: importing EnMAP imagery as 3D raster map&lt;br /&gt;
* i.hyper.explore module: RGB, CIR and SWIR visualization from 3D hyperspectral raster map.&lt;br /&gt;
&lt;br /&gt;
=== Helena Mitasova | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* standardized data set and related tutorials&lt;br /&gt;
* documentation for interpolation tools&lt;br /&gt;
* collaborate/coordinate/discuss hydrology tools (analytics, simulations, soil properties inputs)&lt;br /&gt;
* assist with wiki cleanup if needed&lt;br /&gt;
&lt;br /&gt;
Monday May 19&lt;br /&gt;
* investigated issues with v.surf.rst documentation in source code, tested and identified fixes needed&lt;br /&gt;
* discussed coupling GRASS with Blender versus potree for 3D object rendering with Brendan, Anna and Caitlin (for TL activities and other applications)&lt;br /&gt;
* discussed soil data for runoff estimation and other hydro topics, to be worked on on day 2&lt;br /&gt;
&lt;br /&gt;
Tuesday May 20&lt;br /&gt;
* worked with Corey on fixing v.surf.rst documentation, discussed ideas for improvements and for documentation / tutorial for cross-valiadation&lt;br /&gt;
* discussed suggestions for graphics and examples to be inculded in v.surf.rst docs with Michelle &lt;br /&gt;
* discussed new developments in hydrology tools&lt;br /&gt;
* experimented with basic/standardized versus specialized data sets for documentation and tutorials&lt;br /&gt;
&lt;br /&gt;
=== Michael Mulqueen | MassGIS ===&lt;br /&gt;
&lt;br /&gt;
* depth to water, hydro from lidar, etc&lt;br /&gt;
&lt;br /&gt;
=== Māris Nartišs ===&lt;br /&gt;
&lt;br /&gt;
* Preparing a new raster data analysis tool r.smooth for inclusion into GRASS core&lt;br /&gt;
* Discussing architecture of hyperspectral data import and per-processing tool&lt;br /&gt;
&lt;br /&gt;
=== Ondřej Pešek | Czech Technical University in Prague ===&lt;br /&gt;
&lt;br /&gt;
* Many things to fix/improve in g.gui.gmodeler, finally finish an addon for CNNs in GRASS&lt;br /&gt;
&lt;br /&gt;
=== Vaclav (Vashek) Petras | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/wenzeslaus?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
* computational engine, APIs, funding, summit organization&lt;br /&gt;
&lt;br /&gt;
=== Anna Petrasova | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/petrasovaa?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
* plan: mentoring, documentation&lt;br /&gt;
* Monday&lt;br /&gt;
** discussing hyperspectral implementation with Alen&lt;br /&gt;
** helping mentee David Farris implementing his gravity correction addon&lt;br /&gt;
* Tuesday&lt;br /&gt;
** delivered intro to creating an addon, documentation&lt;br /&gt;
** mentoring Alen, Abdullah&lt;br /&gt;
** discussing bug in i.his.rgb with Jayneel&lt;br /&gt;
** reviews&lt;br /&gt;
&lt;br /&gt;
=== Gregory Power | Town of Cary ===&lt;br /&gt;
&lt;br /&gt;
* Documentation&lt;br /&gt;
&lt;br /&gt;
=== Pratikshya Regmi | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* I plan to showcase my work on integrating LLM and GRASS GIS.&lt;br /&gt;
&lt;br /&gt;
=== Riya | Indian Institute of Technology, Roorkee ===&lt;br /&gt;
&lt;br /&gt;
* I am currently thinking of developing an AI Agent for the grass jupyter library which will help the users with mathematical calculations done in GIS.&lt;br /&gt;
&lt;br /&gt;
=== Jayneel Shah | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* improve the test coverage of imagery modules.&lt;br /&gt;
&lt;br /&gt;
=== Krishna Prasad Sheshadri ===&lt;br /&gt;
&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
=== Adam Smith | Missouri Botanical Garden ===&lt;br /&gt;
&lt;br /&gt;
* R package fasterRaster (fielding bug reports, adding features)&lt;br /&gt;
&lt;br /&gt;
Monday: Assessed scope of fasterRaster issue [https://github.com/adamlilith/fasterRaster/issues/83 83]&lt;br /&gt;
&lt;br /&gt;
=== Michelle (Mimi) Stephens | ERDC ===&lt;br /&gt;
&lt;br /&gt;
* Previous work: coupling R and Python scripts for computational analysis in GRASS.&lt;br /&gt;
* Current work: Running through GRASS commands to create visual outputs that can be added to the new GRASS 8.5 manual pages.&lt;br /&gt;
* Future work: Presenting on GRASS in JUNE at CERLCON.&lt;br /&gt;
&lt;br /&gt;
=== Corey White | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* JSON, mentoring&lt;br /&gt;
&lt;br /&gt;
=== Doug Newcomb | Semi Retired Cartographer ===&lt;br /&gt;
&lt;br /&gt;
* Discussed hydroflattening method&lt;br /&gt;
* Discussed direct point cloud input to v.surf.rst&lt;br /&gt;
* Learning git procedures by updating branding (GRASS GIS to GRASS)  for raster commands&lt;br /&gt;
&lt;br /&gt;
== Guests and remote participants ==&lt;br /&gt;
&lt;br /&gt;
=== Luís de Sousa | University of Lisbon ===&lt;br /&gt;
&lt;br /&gt;
* Review outstanding PRs&lt;br /&gt;
* Prepare GRASS sessions for the OpenGeoHub Summer School&lt;br /&gt;
&lt;br /&gt;
=== Markus Neteler | mundialis ===&lt;br /&gt;
&lt;br /&gt;
* Support full automation of new GRASS manual pages deployment on server (upload artifacts from GitHub to OSGeo servers (grass and download))&lt;br /&gt;
* Source code license documentation: Using SPDX License IDs ({{GH-Issues|4190}})&lt;br /&gt;
* Support Wiki cleanup&lt;br /&gt;
* [https://github.com/neteler?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub contributions]&lt;br /&gt;
&lt;br /&gt;
=== Nishant Bansal | Indian Institute of Technology, Varanasi ===&lt;br /&gt;
&lt;br /&gt;
* Review the previous work on JSON during last year’s GSoC, including enhancements and the addition of JSON output support to other modules.&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Talk:GRASS_Developer_Summit_Raleigh_2025&amp;diff=28322</id>
		<title>Talk:GRASS Developer Summit Raleigh 2025</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Talk:GRASS_Developer_Summit_Raleigh_2025&amp;diff=28322"/>
		<updated>2025-05-20T15:26:32Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: /* Anna Petrasova | NC State University */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{toc|right}}&lt;br /&gt;
&lt;br /&gt;
Quick links: [[GRASS Developer Summit Raleigh 2025|Meeting page]] | [[#Participant_reports|Reports]]  |  [[GRASS_Developer_Summit_Raleigh_2025#Sponsors|Sponsors]]&lt;br /&gt;
&lt;br /&gt;
== Organizing Team ==&lt;br /&gt;
&lt;br /&gt;
* Initial planning: Vaclav Petras, Anna Petrasova, Veronica Andreo, Corey White, Lois Utt, Sarah White, Doug Newcomb, Huidae Cho, Veronica Andreo ([[GRASS_Developer_Summit_Raleigh_2025#Organizing_Committee|Organizing Committee]])&lt;br /&gt;
* Budget: Vaclav Petras, Lois Utt, Anna Petrasova&lt;br /&gt;
* Raising support: Helena Mitasova, Vaclav Petras, Anna Petrasova, Michael Barton, Giuseppe Amatulli ([[NSF POSE Project 2023-2025 Timeline|NSF POSE project]] proposal authors)&lt;br /&gt;
* Travel: Lois Utt&lt;br /&gt;
* Venue: Vaclav Petras, Lois Utt&lt;br /&gt;
* Meals: Lois Utt, Sarah White, Vaclav Petras, Corey White, Anna Petrasova&lt;br /&gt;
* Agenda: Vaclav Petras, Huidae Cho, Anna Petrasova&lt;br /&gt;
* Wiki page: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Swag: Sarah White, Vaclav Petras, Anna Petrasova, Corey White&lt;br /&gt;
* Promotion, invitations, and social media: Vaclav Petras, Sarah White, Corey White, John Vogler&lt;br /&gt;
* Lightning talks organization: Vaclav Petras, Zachary Arcaro, John Vogler&lt;br /&gt;
* Lightning talk speakers: Vaclav Petras (welcome), Markus Metz and Markus Neteler (talk presented by Vaclav Petras), Anna Petrasova, Veronica Andreo, Robert Dzur, Nick Brady, Huidae Cho, Gregory Power, Doug Newcomb, Caitlin Haedrich&lt;br /&gt;
* Photography: Caitlin Haedrich, Māris Nartišs, Pratikshya Regmi&lt;br /&gt;
&lt;br /&gt;
== Detailed Schedule ==&lt;br /&gt;
&lt;br /&gt;
=== Day 1, Monday, May 19 ===&lt;br /&gt;
&lt;br /&gt;
Location: Talley Student Union, 2610 Cates Ave ([https://www.google.com/maps/place/Talley+Student+Union/data=!4m2!3m1!1s0x0:0x38989377c96adef0?sa=X&amp;amp;ved=1t:2428&amp;amp;ictx=111 map])&lt;br /&gt;
&lt;br /&gt;
Room: 5101-Executive Board Room&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''Contributing to GRASS. Getting started. Is it easy to contribute?''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:30-9:00 || Breakfast || Catered breakfast on site. Meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || What to expect from the event, contributing to GRASS using Git and GitHub, making your first contribution.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || i.hyper: Integrating Hyperspectral Imagery Processing into GRASS - Alen Mangafić&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || &lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Project Image - Vaclav Petras&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || Catered food on site.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || We will walk to [https://www.trophybrewing.com/brewing-pizza Trophy Brewing &amp;amp; Pizza] ([https://maps.app.goo.gl/ggnZ7EvXbWqDUmvP9 directions], 30 min walk from Talley)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 2, Tuesday, May 20 ===&lt;br /&gt;
&lt;br /&gt;
Location: Talley Student Union, 2610 Cates Ave ([https://www.google.com/maps/place/Talley+Student+Union/data=!4m2!3m1!1s0x0:0x38989377c96adef0?sa=X&amp;amp;ved=1t:2428&amp;amp;ictx=111 map])&lt;br /&gt;
&lt;br /&gt;
Room: 5101-Executive Board Room&lt;br /&gt;
&lt;br /&gt;
Highlighted topics: ''Hydrology and Interfacing with R and QGIS (gathering user feedback, testing, discussing with developers, developing action items)''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:30-9:00 || Breakfast || Breakfast on site. Start the day, meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || Introduction to writing GRASS tools, program for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || fasterRaster R package - Adam Smith&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Hydography90m + Geocomputation Courses - Giuseppe&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Flood modelling with grass and itzi ([https://itzi.org]) - Laurent Courty&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || [https://maps.app.goo.gl/womSkce9DrE8CTnR8 Case dining hall]&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || [https://maps.app.goo.gl/CQiWoCAQNt1ymZkb7 Served in Jordan Hall at the Center for Geospatial Analytics], evaluate the day's accomplishments, plan and prioritize for the next few days.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 3, Wednesday, May 21 ===&lt;br /&gt;
&lt;br /&gt;
Location: Talley Student Union, 2610 Cates Ave ([https://www.google.com/maps/place/Talley+Student+Union/data=!4m2!3m1!1s0x0:0x38989377c96adef0?sa=X&amp;amp;ved=1t:2428&amp;amp;ictx=111 map])&lt;br /&gt;
&lt;br /&gt;
Room: 5101-Executive Board Room&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''Non-coding contributions, natural language translation, and internationalization.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:00-9:00 || Breakfast || [https://maps.app.goo.gl/eZ8VK8Mx6TjMt9NP8 Case dining hall]&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || Introduction to non-coding contributions, deep dive into new documentation, natural language translation and internationalization (procedures, glossaries, code customization, translation).&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || Your topic here (10-minute presentation and 10-minute discussion)&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Temporal framework global variables ([https://github.com/OSGeo/grass/issues/629]) - Laurent Courty&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || GSoC call&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || Served on site. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || [https://maps.app.goo.gl/1E39eySMVaxYJUUS8 Picnic at Pullen Park, shelter #3. In case of bad weather, dinner at the Center for Geospatial Analytics.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 4, Thursday, May 22 ===&lt;br /&gt;
&lt;br /&gt;
Location: Center for Geospatial Analytics, Jordan Hall, 2800 Faucette Drive ([https://www.google.com/maps/search/Jordan+Hall/@35.7816832,-78.6772765,18z/data=!3m1!4b1?entry=ttu&amp;amp;g_ep=EgoyMDI1MDQyMC4wIKXMDSoJLDEwMjExNDUzSAFQAw%3D%3D map])&lt;br /&gt;
&lt;br /&gt;
Room: 5103 (straight from the two elevators, at the end of the hallway)&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''Project vision and computational engine use case.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:00-9:00 || Breakfast || On site. Start the day, meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || Project vision and the computational engine use case (missing features, documentation, user groups).&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || Your topic here (10-minute presentation and 10-minute discussion)&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Modernizing Color Tables (Brendan)&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || On site. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-16:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 16:00-17:00 || Lightning talks || Fast-paced talks, showcasing applications of GRASS, room 5111.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Reception || Connect with researchers, government professionals, and industry collaborators, rooms 5111 and 5119.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 5, Friday, May 23 ===&lt;br /&gt;
&lt;br /&gt;
Location: James B. Hunt Jr. Library, 1070 Partners Way - Centennial Campus ([https://www.google.com/maps/place/James+B.+Hunt+Jr.+Library/@35.7693736,-78.679167,17z/data=!3m1!5s0x89acf5759f5a31df:0xc547454a0151c440!4m10!1m2!2m1!1shunt+library!3m6!1s0x89acf5759f591f41:0xbe0266269ce37f59!8m2!3d35.7693215!4d-78.6764409!15sCgxodW50IGxpYnJhcnlaDiIMaHVudCBsaWJyYXJ5kgESdW5pdmVyc2l0eV9saWJyYXJ54AEA!16s%2Fm%2F0r4wjf_?entry=ttu&amp;amp;g_ep=EgoyMDI1MDQyMC4wIKXMDSoJLDEwMjExNDUzSAFQAw%3D%3D map])&lt;br /&gt;
&lt;br /&gt;
Room: Faculty Research Commons - 5100 ([https://www.lib.ncsu.edu/hunt/map floor plan])&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''GRASS project's future course.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:00-9:00 || Breakfast || On site. Start the day, meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || GRASS project's future course.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || PSC meeting || Project Steering Committee meets (public).&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || Walk to [https://maps.app.goo.gl/kHVHY62QxTd6wHKd9 On the Oval Culinary Creatins]. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || Dinner on your own. Corey White will organize trip to downtown. Bus 41 from Hunt library to hotel and then walk.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 6, Saturday, May 24 ===&lt;br /&gt;
&lt;br /&gt;
Location: James B. Hunt Jr. Library, 1070 Partners Way - Centennial Campus ([https://www.google.com/maps/place/James+B.+Hunt+Jr.+Library/@35.7693736,-78.679167,17z/data=!3m1!5s0x89acf5759f5a31df:0xc547454a0151c440!4m10!1m2!2m1!1shunt+library!3m6!1s0x89acf5759f591f41:0xbe0266269ce37f59!8m2!3d35.7693215!4d-78.6764409!15sCgxodW50IGxpYnJhcnlaDiIMaHVudCBsaWJyYXJ5kgESdW5pdmVyc2l0eV9saWJyYXJ54AEA!16s%2Fm%2F0r4wjf_?entry=ttu&amp;amp;g_ep=EgoyMDI1MDQyMC4wIKXMDSoJLDEwMjExNDUzSAFQAw%3D%3D map])&lt;br /&gt;
&lt;br /&gt;
Room: Faculty Research Commons - 5100 ([https://www.lib.ncsu.edu/hunt/map floor plan])&lt;br /&gt;
&lt;br /&gt;
Highlighted topics: ''NSF POSE project evaluation.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:00-9:00 || Breakfast || TBA. Start the day, meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || NSF POSE project evaluation, contributor community feedback.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || Your topic here (10-minute presentation and 10-minute discussion)&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || TBA. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || TBA. &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Daily tasks for participants ==&lt;br /&gt;
&lt;br /&gt;
* List all the things you are working on in the Participant reports section below. Update the list each day. Include things you work on with other people.&lt;br /&gt;
* If you want to discuss something with the whole group, add yourself to a Self-organized feedback sessions slot in the schedule above or tell Vaclav (Vashek) Petras.&lt;br /&gt;
* For people with triage access and above: If you are or will be working on an issue or on a PR which is not originally submitted by you, assign yourself to the issue or PR. (You can unassign yourself later if you change your mind.)&lt;br /&gt;
&lt;br /&gt;
== Participant reports ==&lt;br /&gt;
&lt;br /&gt;
Per-person reports from the meeting.&lt;br /&gt;
&lt;br /&gt;
=== Giuseppe Amatulli | Yale University ===&lt;br /&gt;
&lt;br /&gt;
* Testing r.watershed and r.stream.* for handling large datasets&lt;br /&gt;
&lt;br /&gt;
=== Veronica Andreo | CONICET - Instituto Gulich ===&lt;br /&gt;
&lt;br /&gt;
* Plan: &lt;br /&gt;
** Review of temporal tutorials to push them to tutorials&lt;br /&gt;
** Sync branding between GRASS and tutorials websites&lt;br /&gt;
** GRASS project admin stuff &lt;br /&gt;
** Understand new docs contribution and building workflow&lt;br /&gt;
** Interface with R&lt;br /&gt;
* [https://github.com/veroandreo?tab=overview&amp;amp;from=2025-05-12&amp;amp;to=2025-05-24 GitHub contributions]&lt;br /&gt;
* Website footer enhancement&lt;br /&gt;
* Fix descriptions and their display in the tutorials website&lt;br /&gt;
* Fix GRASS page on OSGeo website [https://www.osgeo.org/projects/grass-gis/] &lt;br /&gt;
** Changed logo, removed GIS from the name, fixed old links&lt;br /&gt;
* Social media post&lt;br /&gt;
* Discussion about hyperspectral with Alen and Anna&lt;br /&gt;
&lt;br /&gt;
=== Abdullah Azzam | New Mexico State University ===&lt;br /&gt;
&lt;br /&gt;
* r.runoff&lt;br /&gt;
&lt;br /&gt;
=== Michael Barton | Arizona State University ===&lt;br /&gt;
&lt;br /&gt;
* POSE related activities&lt;br /&gt;
&lt;br /&gt;
=== Laura Belica | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* have been working on developing a workflow-tool tutorial template that facilitates GRASS learners who tend to 'jump in' or have a 'choose your own adventure' approach to learning GRASS (i.e., want to use their data for their study area for their objective from the start).  The structure of the tutorial template is a concise, basic, general description/instructions of the workflow with optional links to pertinent explanatory/deeper dive content  (e.g.,  plain language explainers of the tool, options, defaults, etc.) in a variety of formats (e.g., captioned images, short tool demo videos (30 sec to 2 min)) in addition to the more comprehensive resources available (e.g. documentation, examples, tutorials).  The main motivation for this approach is to help new and occasional GRASS users avoid some of the common pitfalls and to learn how to find workarounds for some of the unanticipated challenges they may encounter with their specific datasets or use cases so that they can learn as they go.  Another motivation for this approach is to facilitate the translation, extension, and updating of workflow tutorials by the community over time (e.g., providing audio and closed captioning for one of the tool-demo videos in another language, replacing an outdated GUI demo with one for the current release, or incorporating a new add-on as an option in the workflow).&lt;br /&gt;
&lt;br /&gt;
* my focus this week is on developing a draft/test tutorial (in Quarto) for a standard hydrological modelling workflow that begins with the crucial pre-work of how to figure out the appropriate project/location, etc. as well as considerations of some of the downstream impacts of resolution, extent, region etc. It may not be ready for sharing by the end of the week, but suggestions and advice are welcomed in advance.&lt;br /&gt;
&lt;br /&gt;
19 May&lt;br /&gt;
* discussed a novice user issue with 'moving' vector data from one location to another with Vero and learned a neat GUI option &lt;br /&gt;
* revised and added workflow tutorial text&lt;br /&gt;
&lt;br /&gt;
=== Shonil Sateesh Bhide | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* CI optimization&lt;br /&gt;
&lt;br /&gt;
=== Huidae Cho | New Mexico State University ===&lt;br /&gt;
&lt;br /&gt;
* CMake, conda, CI, Mentoring&lt;br /&gt;
&lt;br /&gt;
=== Edouard Choinière ===&lt;br /&gt;
&lt;br /&gt;
* Quick ideas, way too much for a week: Helping others (may take a reasonable part of the time), managing CI, setting up localization template updating workflow, backporting tool? Pytest/coverage improvements? Discuss and design other projects, to work on during the year. Open to change on other priorities once there, anything that is useful. Maybe make a little progress on high dpi GUI, especially on Windows.&lt;br /&gt;
&lt;br /&gt;
* Weekend before sprint:&lt;br /&gt;
** Clear up Renovate PRs to not use CI time during the sprint, reviewing and merging: [https://github.com/OSGeo/grass/pull/5664 #5664], [https://github.com/OSGeo/grass/pull/5665 #5665], [https://github.com/OSGeo/grass/pull/5666 #5666], [https://github.com/OSGeo/grass/pull/5667 #5667], [https://github.com/OSGeo/grass/pull/5668 #5668]&lt;br /&gt;
** PR to avoid some CI run time for the sprint: [https://github.com/OSGeo/grass/pull/5670 #5670]&lt;br /&gt;
** Reviewed open PRs for PRs that were mergeable before the sprint, updated outdated PRs to avoid having it needing CI time during sprint. Only ended up merging [https://github.com/OSGeo/grass/pull/5658 #5658], but another reviewed one that might still need changes: [https://github.com/OSGeo/grass/pull/5628 #5628]&lt;br /&gt;
* Monday May 19, 2025:&lt;br /&gt;
** PR got merged: [https://github.com/OSGeo/grass/pull/5670 #5670],[https://github.com/OSGeo/grass/pull/5550 #5550]&lt;br /&gt;
** Reviewed PRs: [https://github.com/OSGeo/grass/pull/5671 #5671], [https://github.com/OSGeo/grass/pull/5672 #5672]&lt;br /&gt;
** Discussions:&lt;br /&gt;
*** Shonil Sateesh Bhid &amp;amp; Shuham on their CI &amp;amp; pytest work and project.&lt;br /&gt;
*** Māris Nartišs about a potential issue and improvement for it. Will be discussed in the security reporting tab, also allowing to test the security vulnerability reporting process. + Research on existing solutions&lt;br /&gt;
&lt;br /&gt;
=== Laurent Courty ===&lt;br /&gt;
&lt;br /&gt;
* An xarray backend for GRASS STRDS. Fixing related issues&lt;br /&gt;
&lt;br /&gt;
=== Robert S. Dzur | Bohannan Huston, Inc. ===&lt;br /&gt;
&lt;br /&gt;
* r.in.pdal&lt;br /&gt;
&lt;br /&gt;
=== David W. Farris | East Carolina University ===&lt;br /&gt;
&lt;br /&gt;
* A tool to calculate gravity terrain corrections&lt;br /&gt;
&lt;br /&gt;
=== Neel Ghoshal | NC State University ===&lt;br /&gt;
• LLM for helping users find tools&amp;lt;br&amp;gt;&lt;br /&gt;
5/19&amp;lt;br&amp;gt;&lt;br /&gt;
• Learnt how to PR (#5674)&amp;lt;br&amp;gt;&lt;br /&gt;
• Setup GRASS on system&amp;lt;br&amp;gt;&lt;br /&gt;
• Found small issue with compilation document&amp;lt;br&amp;gt;&lt;br /&gt;
• Discussed about the possible use case of LLM for helping users find tools&lt;br /&gt;
&lt;br /&gt;
=== Caitlin Haedrich | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* Jupyter API, event photographs&lt;br /&gt;
&lt;br /&gt;
=== Brendan Harmon | Louisiana State University ===&lt;br /&gt;
&lt;br /&gt;
* Developing ([https://github.com/baharmon/r.earthworks r.earthworks]) addon &amp;amp; tutorials&lt;br /&gt;
* [https://github.com/baharmon?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
&lt;br /&gt;
=== Linda Karlovska | Czech Technical University in Prague ===&lt;br /&gt;
&lt;br /&gt;
* I plan to work on GUI enhancements, particularly the Jupyter-style interactive page for enhanced scripting and visualization.&lt;br /&gt;
&lt;br /&gt;
=== Martin Landa | Czech Technical University in Prague ===&lt;br /&gt;
&lt;br /&gt;
* Tutorial: GISMentors courses updated ([https://github.com/OSGeo/grass-tutorials/pull/45 PR])&lt;br /&gt;
* libgis: G__usage_markdown() include tool label in metadata if defined ([https://github.com/OSGeo/grass/pull/5677 PR])&lt;br /&gt;
* PyGRASS: Module description property not defined always ([https://github.com/OSGeo/grass/pull/5681 PR])&lt;br /&gt;
* Website: OpenGeoLabs commercial support ([https://github.com/OSGeo/grass-website/pull/537 PR])&lt;br /&gt;
&lt;br /&gt;
=== Nicklas Larsson | Hungarian National Museum ===&lt;br /&gt;
&lt;br /&gt;
* CMake build system; perhaps Conda recipe&lt;br /&gt;
&lt;br /&gt;
=== Chung-Yuan Liang ===&lt;br /&gt;
&lt;br /&gt;
* parallelize some modules, improve testing&lt;br /&gt;
&lt;br /&gt;
=== Andres Lucero | Bohannan Huston Inc ===&lt;br /&gt;
&lt;br /&gt;
* r.in.pdal&lt;br /&gt;
&lt;br /&gt;
=== Alen Mangafić | Geodetic Institute of Slovenia ===&lt;br /&gt;
&lt;br /&gt;
* Add-on which offers basic hyperspectral data support in GRASS.&lt;br /&gt;
&lt;br /&gt;
=== Helena Mitasova | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* standardized data set and related tutorials&lt;br /&gt;
* documentation for interpolation tools&lt;br /&gt;
* collaborate/coordinate/discuss hydrology tools (analytics, simulations, soil properties inputs)&lt;br /&gt;
* assist with wiki cleanup if needed&lt;br /&gt;
&lt;br /&gt;
Monday May 16&lt;br /&gt;
* investigated issues with v.surf.rst documentation in source code, tested and identified fixes needed&lt;br /&gt;
* discussed coupling GRASS with Blender versus potree for 3D object rendering with Brendan, Anna and Caitlin (for TL activities and other applications)&lt;br /&gt;
* discussed soil data for runoff estimation and other hydro topics, to be worked on on day 2&lt;br /&gt;
&lt;br /&gt;
=== Michael Mulqueen | MassGIS ===&lt;br /&gt;
&lt;br /&gt;
* depth to water, hydro from lidar, etc&lt;br /&gt;
&lt;br /&gt;
=== Māris Nartišs ===&lt;br /&gt;
&lt;br /&gt;
* Preparing a new raster data analysis tool r.smooth for inclusion into GRASS core&lt;br /&gt;
* Discussing architecture of hyperspectral data import and per-processing tool&lt;br /&gt;
&lt;br /&gt;
=== Ondřej Pešek | Czech Technical University in Prague ===&lt;br /&gt;
&lt;br /&gt;
* Many things to fix/improve in g.gui.gmodeler, finally finish an addon for CNNs in GRASS&lt;br /&gt;
&lt;br /&gt;
=== Vaclav (Vashek) Petras | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/wenzeslaus?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
* computational engine, APIs, funding, summit organization&lt;br /&gt;
&lt;br /&gt;
=== Anna Petrasova | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/petrasovaa?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
* plan: mentoring, documentation&lt;br /&gt;
* Monday&lt;br /&gt;
** discussing hyperspectral implementation with Alen&lt;br /&gt;
** helping mentee David Farris implementing his gravity correction addon&lt;br /&gt;
* Tuesday&lt;br /&gt;
** delivered intro to creating an addon, documentation&lt;br /&gt;
&lt;br /&gt;
=== Gregory Power | Town of Cary ===&lt;br /&gt;
&lt;br /&gt;
* Documentation&lt;br /&gt;
&lt;br /&gt;
=== Pratikshya Regmi | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* I plan to showcase my work on integrating LLM and GRASS GIS.&lt;br /&gt;
&lt;br /&gt;
=== Riya | Indian Institute of Technology, Roorkee ===&lt;br /&gt;
&lt;br /&gt;
* I am currently thinking of developing an AI Agent for the grass jupyter library which will help the users with mathematical calculations done in GIS.&lt;br /&gt;
&lt;br /&gt;
=== Jayneel Shah | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* improve the test coverage of imagery modules.&lt;br /&gt;
&lt;br /&gt;
=== Krishna Prasad Sheshadri ===&lt;br /&gt;
&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
=== Adam Smith | Missouri Botanical Garden ===&lt;br /&gt;
&lt;br /&gt;
* R package fasterRaster (fielding bug reports, adding features)&lt;br /&gt;
&lt;br /&gt;
Monday: Assessed scope of fasterRaster issue [https://github.com/adamlilith/fasterRaster/issues/83 83]&lt;br /&gt;
&lt;br /&gt;
=== Michelle (Mimi) Stephens ===&lt;br /&gt;
&lt;br /&gt;
* Coding and visualization&lt;br /&gt;
&lt;br /&gt;
=== Corey White | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* JSON, mentoring&lt;br /&gt;
&lt;br /&gt;
== Guests and remote participants ==&lt;br /&gt;
&lt;br /&gt;
=== Luís de Sousa | University of Lisbon ===&lt;br /&gt;
&lt;br /&gt;
* Review outstanding PRs&lt;br /&gt;
* Prepare GRASS sessions for the OpenGeoHub Summer School&lt;br /&gt;
&lt;br /&gt;
=== Markus Neteler | mundialis ===&lt;br /&gt;
&lt;br /&gt;
* Support full automation of new GRASS manual pages deployment on server (upload artifacts from GitHub to OSGeo servers (grass and download))&lt;br /&gt;
* Source code license documentation: Using SPDX License IDs ({{GH-Issues|4190}})&lt;br /&gt;
* Support Wiki cleanup&lt;br /&gt;
* [https://github.com/neteler?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub contributions]&lt;br /&gt;
&lt;br /&gt;
=== Nishant Bansal | Indian Institute of Technology, Varanasi ===&lt;br /&gt;
&lt;br /&gt;
* Review the previous work on JSON during last year’s GSoC, including enhancements and the addition of JSON output support to other modules.&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=PSC&amp;diff=28270</id>
		<title>PSC</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=PSC&amp;diff=28270"/>
		<updated>2025-05-15T20:26:55Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: /* 2025 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= GRASS Project Steering Committee (PSC) =&lt;br /&gt;
The Project Steering Committee plays a pivotal role in the governance and operational direction of GRASS GIS. &lt;br /&gt;
The PSC meets regularly to discuss organizational and financial aspects of the GRASS project and maintains the [[#PSC meeting agenda and minutes]].&lt;br /&gt;
The PSC is responsible for granting write access to new core developers and approving RFCs ([https://github.com/OSGeo/grass/tree/main/doc/development/rfc Request For Comments]).&lt;br /&gt;
The PSC has its own public [http://lists.osgeo.org/mailman/listinfo/grass-psc mailing list] where [[#Motions]] are passed.&lt;br /&gt;
&lt;br /&gt;
== Members ==&lt;br /&gt;
&lt;br /&gt;
* '''[https://veroandreo.gitlab.io Verónica Andreo]''', (veroandreo * gmail.com), National Research Council (CONICET) - Argentinian Space Agency (CONAE), AR - Chair&lt;br /&gt;
*'''[https://ecodiv.earth/about.html Paulo van Breugel]''', (p.vanbreugel * gmail com), HAS green academy, NL&lt;br /&gt;
*'''[https://idea.isnew.info/ Huidae Cho]''', (grass4u * gmail com), New Mexico State University, USA&lt;br /&gt;
*'''[https://geomatics.fsv.cvut.cz/en/employees/linda-karlovska/ Linda Karlovská]''', (linda.karlovska * seznam cz), Czech Technical University in Prague, CZ&lt;br /&gt;
*'''[https://www.osgeo.org/member/kudrnovsky/ Helmut Kudrnovsky]''', (hellik * web de), Environment Agency Austria, Vienna, AT&lt;br /&gt;
*'''Nicklas Larsson''', (n_larsson * yahoo com), Hungarian National Museum, HU&lt;br /&gt;
*'''[https://www.mundialis.de/neteler/ Markus Neteler]''', (neteler * osgeo org), mundialis, Bonn, DE&lt;br /&gt;
*'''[https://cnr.ncsu.edu/geospatial/people/vaclav-petras/ Vaclav Petráš]''', (wenzeslaus * gmail com), CGA, North Carolina State University, Raleigh NC, USA&lt;br /&gt;
*'''[https://cnr.ncsu.edu/geospatial/people/anna-petrasova Anna Petrášová]''', (kratochanna * gmail com). CGA, North Carolina State University, Raleigh NC, USA&lt;br /&gt;
&lt;br /&gt;
== PSC meeting agenda and minutes ==&lt;br /&gt;
&amp;lt;div style=&amp;quot;column-count:4&amp;quot;&amp;gt;&lt;br /&gt;
* [[PSC Meeting 2025-05-09]]&lt;br /&gt;
* [[PSC Meeting 2025-02-14]]&lt;br /&gt;
* [[PSC Meeting 2024-11-22]]&lt;br /&gt;
* [[PSC Meeting 2024-11-08]]&lt;br /&gt;
* [[PSC Meeting 2024-08-09]]&lt;br /&gt;
* [[PSC Meeting 2024-06-14]]&lt;br /&gt;
* [[PSC Meeting 2024-05-10]]&lt;br /&gt;
* [https://trac.osgeo.org/grass/wiki/PSC/Minutes/PSC_Meeting_20240209 PSC Meeting 2024-02-09]&lt;br /&gt;
* [https://trac.osgeo.org/grass/wiki/PSC/Minutes/PSC_Meeting_20231110 PSC Meeting 2023-11-10]&lt;br /&gt;
* [https://trac.osgeo.org/grass/wiki/PSC/Minutes/PSC_Meeting_20230811 PSC Meeting 2023-08-11]&lt;br /&gt;
* [https://trac.osgeo.org/grass/wiki/PSC/Minutes/PSC_Meeting_20230512 PSC Meeting 2023-05-12]&lt;br /&gt;
* [https://trac.osgeo.org/grass/wiki/PSC/Minutes/PSC_Meeting_20230210 PSC Meeting 2023-02-10]&lt;br /&gt;
* [https://trac.osgeo.org/grass/wiki/PSC/Minutes/PSC_Meeting_20221111 PSC Meeting 2022-11-11]&lt;br /&gt;
* [https://trac.osgeo.org/grass/wiki/PSC/Minutes/PSC_Meeting_20220812 PSC Meeting 2022-08-12]&lt;br /&gt;
* [https://trac.osgeo.org/grass/wiki/PSC/Minutes/PSC_Meeting_20220513 PSC Meeting 2022-05-13]&lt;br /&gt;
* [https://trac.osgeo.org/grass/wiki/PSC/Minutes/PSC_Meeting_20220211 PSC Meeting 2022-02-11]&lt;br /&gt;
* [https://trac.osgeo.org/grass/wiki/PSC/Minutes/PSC_Meeting_20211112 PSC Meeting 2021-11-12]&lt;br /&gt;
* [https://trac.osgeo.org/grass/wiki/PSC/Minutes/PSC_Meeting_20210729 PSC Meeting 2021-07-29]&lt;br /&gt;
* [https://trac.osgeo.org/grass/wiki/PSC/Minutes/PSC_Meeting_20210511 PSC Meeting 2021-05-11]&lt;br /&gt;
* [https://trac.osgeo.org/grass/wiki/PSC/Minutes/PSC_Meeting_20210203 PSC Meeting 2021-02-03]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Motions ==&lt;br /&gt;
&lt;br /&gt;
Motions are approved at meetings or on the grass-psc mailing list. Listed motions are approved unless otherwise noted.&lt;br /&gt;
&lt;br /&gt;
=== 2025 ===&lt;br /&gt;
* Join NumFOCUS by signing Fiscal Sponsorship Agreement, signed by AP, VP, LK, VA, MN, which is the majority of PSC (5 out of 9, NumFOCUS required 5)&lt;br /&gt;
* Adopt new logo and branding (3 Apr 2025, [https://lists.osgeo.org/pipermail/grass-psc/2025-March/002995.html email], [https://github.com/OSGeo/grass-website/pull/506 PR])&lt;br /&gt;
* Use GRASS as a project name (26 Feb 2025, [https://lists.osgeo.org/pipermail/grass-psc/2025-February/002970.html email])&lt;br /&gt;
&lt;br /&gt;
=== 2024 ===&lt;br /&gt;
&lt;br /&gt;
* Approve and adopt [https://github.com/OSGeo/grass/pull/4566 C++17 Standard Support RFC] (28 Nov 2024)&lt;br /&gt;
* Apply for NumFOCUS membership (8 Nov 2024, [[PSC_Meeting_2024-11-08|meeting]])&lt;br /&gt;
* Pay Publer's business plan for one year, 3 accounts and test. Use GRASS budget sitting at OSGeo (8 Nov 2024, [[PSC_Meeting_2024-11-08|meeting]])&lt;br /&gt;
* Approve Linda's student grant final report and issue second payment (27 May 2024)&lt;br /&gt;
* Support Letter for LoC of FOSS4G 2025 Hiroshima (wording approved, 10 May 2024)&lt;br /&gt;
* GitHub write access to Linda Karlovska as a new core developer (granted, 26 Jan 2024)&lt;br /&gt;
&lt;br /&gt;
=== 2023 ===&lt;br /&gt;
&lt;br /&gt;
* Approve Linda's student grant proposal and issue first payment (27 Dec 2023) &lt;br /&gt;
* Github write access to Edouard Choinière as a new core developer (granted, 18 Dec 2023) &lt;br /&gt;
* Appoint Vaclav Petras as new treasurer (5 Dec 2023)&lt;br /&gt;
* Approve and adopt [https://github.com/OSGeo/grass/blob/main/doc/development/rfc/version_numbering.md RFC: Version Numbering] (5 Jun 2023)&lt;br /&gt;
* Approve and adopt RFC: Python Language Support (5 Jun 2023)&lt;br /&gt;
* Approve Linda's student grant final report (16 Mar 2023)&lt;br /&gt;
* Appoint Markus Neteler as new treasurer (19 Jan 2023)&lt;br /&gt;
&lt;br /&gt;
=== 2022 ===&lt;br /&gt;
&lt;br /&gt;
* Approve Linda's proposal for GRASS mini grant (19 Nov 2022)&lt;br /&gt;
* Approve final report of Caitlin Haedrich's mini grant (30 Apr 2022)&lt;br /&gt;
* Approve final report of Linda Kladivova's mini grant (10 Mar 2022)&lt;br /&gt;
* Approve mini grant for Caitlin Haedrich (6 Jan 2022)&lt;br /&gt;
&lt;br /&gt;
=== 2021 ===&lt;br /&gt;
&lt;br /&gt;
* Approve mini grant for Linda Kladivova (21 Dec 2021)&lt;br /&gt;
* [https://trac.osgeo.org/grass/wiki/RFC/7_LanguageStandardsSupport RFC 7: Language Standards Support] (approved, 29 Mar 2021)&lt;br /&gt;
* Approving of Veronica Andreo as GRASS GIS PSC chair (approved, 3 Feb 2021) - See [https://trac.osgeo.org/grass/wiki/PSC/Minutes/PSC_Meeting_20210203 minutes Feb 3, 2021]&lt;br /&gt;
* PSC mandates will last 6 years with 1/2 of PSC elected every 3 years (approved, 3 Feb 2021)&lt;br /&gt;
* PSC roles and tasks will be also renewed every 3 years (approved, 3 Feb 2021)&lt;br /&gt;
* When a PSC member steps down, s/he might be replaced by the next person in the previous election results ranking (approved, 3 Feb 2021)&lt;br /&gt;
&lt;br /&gt;
=== 2020 ===&lt;br /&gt;
&lt;br /&gt;
* [https://trac.osgeo.org/grass/wiki/PSC/Election2020 Elections 2020]&lt;br /&gt;
* GitHub write access to Nicklas Larsson as a new core developer (granted, 24 Dec 2020)&lt;br /&gt;
* GitHub write access to Tomáš Zigo as a new core developer (granted, 29 Nov 2020)&lt;br /&gt;
* Second payment for new GRASS GIS Hugo based web site (approved, 1 Oct 2020)&lt;br /&gt;
* First payment for new GRASS GIS Hugo based web site (approved, 25 Feb 2020)&lt;br /&gt;
* Prague 2019 Community Sprint Reimbursements (approved, 14 Jan 2020)&lt;br /&gt;
&lt;br /&gt;
For older motions, see [https://trac.osgeo.org/grass/wiki/PSC/Motions the list of motions] from 2006 to 2020.&lt;br /&gt;
&lt;br /&gt;
== Resources ==&lt;br /&gt;
&lt;br /&gt;
*[http://lists.osgeo.org/mailman/listinfo/grass-psc PSC mailing list]&lt;br /&gt;
*[https://github.com/OSGeo/grass/tree/main/doc/development/rfc RFCs]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Elections ==&lt;br /&gt;
&lt;br /&gt;
* [[PSC Election 2024]] (completed in Oct. 2024)&lt;br /&gt;
*[https://trac.osgeo.org/grass/wiki/PSC/Election2020 PSC Election 2020] (completed in Jan. 2021)&lt;br /&gt;
*[https://trac.osgeo.org/grass/wiki/PSC/Election2016 PSC Election 2016] (completed in Aug. 2016)&lt;br /&gt;
*[https://trac.osgeo.org/grass/wiki/PSC/Election2012 PSC Election 2012] (completed in Nov. 2012)&lt;br /&gt;
*[https://trac.osgeo.org/grass/wiki/PSC/Creation2006 PSC created in 2006]&lt;br /&gt;
&lt;br /&gt;
== Former PSC members ==&lt;br /&gt;
&lt;br /&gt;
Period 2020-2024:&lt;br /&gt;
&lt;br /&gt;
*'''Michael Barton''', USA&lt;br /&gt;
*'''Martin Landa''', Czech Republic&lt;br /&gt;
*'''Helena Mitasova''', USA&lt;br /&gt;
&lt;br /&gt;
Period 2021-2023:&lt;br /&gt;
&lt;br /&gt;
*'''Moritz Lennert''', Belgium (stepped down in 2023, replaced by '''Helmut Kudrnovsky''', Austria)&lt;br /&gt;
&lt;br /&gt;
Period 2016-2020:&lt;br /&gt;
&lt;br /&gt;
*'''Michael Barton''', USA&lt;br /&gt;
*'''Margherita Di Leo''', Italy (dileomargherita * gmail com). [http://forest.jrc.ec.europa.eu/team/person/35/detail/ Home Page] European Commission, Joint Research Centre (JRC), IT&lt;br /&gt;
*'''Martin Landa''', Czech Republic&lt;br /&gt;
*'''Moritz Lennert''', Belgium&lt;br /&gt;
*'''Peter Löwe''', Germany (peter DOT loewe AT gmx DOT de) [https://wiki.osgeo.org/wiki/User:Peter_Loewe Home page]. TIB Hannover, DE&lt;br /&gt;
*'''Helena Mitasova''', USA&lt;br /&gt;
*'''Markus Neteler (chair)''', Italy &lt;br /&gt;
*'''Anna Petrášová''', USA&lt;br /&gt;
*'''Vaclav Petras''', USA&lt;br /&gt;
&lt;br /&gt;
Period 2012-2016:&lt;br /&gt;
&lt;br /&gt;
*'''Michael Barton''', USA&lt;br /&gt;
*'''Hamish Bowman''', New Zealand&lt;br /&gt;
*'''Massimiliano Cannata''', Switzerland&lt;br /&gt;
*'''Moritz Lennert''', Belgium&lt;br /&gt;
*'''Margherita Di Leo''', Italy&lt;br /&gt;
*'''Martin Landa''', Czech Republic&lt;br /&gt;
*'''Markus Metz''', Germany&lt;br /&gt;
*'''Helena Mitasova''', USA&lt;br /&gt;
*'''Scott Mitchell''', Canada&lt;br /&gt;
*'''Markus Neteler (chair)''', Italy &lt;br /&gt;
&lt;br /&gt;
Period 2006-2012:&lt;br /&gt;
&lt;br /&gt;
*'''Michael Barton, USA&lt;br /&gt;
*'''Dylan Beaudette''' USA&lt;br /&gt;
*'''Hamish Bowman, New Zealand&lt;br /&gt;
*'''Massimiliano Cannata, Switzerland&lt;br /&gt;
*'''Brad Douglas''' (rez * touchofmadness com), USA&lt;br /&gt;
*'''Paul Kelly''' (paul-grass stjohnspoint co uk), UK&lt;br /&gt;
*'''Helena Mitasova, USA&lt;br /&gt;
*'''Scott Mitchell, Canada&lt;br /&gt;
*'''Markus Neteler (chair), Italy&lt;br /&gt;
*'''Maciej Sieczka''' (msieczka * sieczka org) [http://www.sieczka.org Home page], PL&lt;br /&gt;
&lt;br /&gt;
=== Former chair persons ===&lt;br /&gt;
&lt;br /&gt;
*Period 2016-2020: '''Markus Neteler''', Germany (neteler * osgeo org) [https://www.mundialis.de/neteler/ Home page]. mundialis, Bonn, DE&lt;br /&gt;
*Period 2012-2016: '''Markus Neteler''', Germany (neteler * osgeo org) [https://wiki.osgeo.org/wiki/Markus_Neteler Home page]. Trento, IT&lt;br /&gt;
*Period 2006-2012: '''Markus Neteler''', Germany (neteler * osgeo org) [https://wiki.osgeo.org/wiki/Markus_Neteler Home page]. Trento, IT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:PSC]]&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS-Wiki&amp;diff=28263</id>
		<title>GRASS-Wiki</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS-Wiki&amp;diff=28263"/>
		<updated>2025-05-15T17:54:32Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: /* Welcome to the GRASS Wiki */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:grasslogo_vector_small.png|110x123 px|right|link=https://grass.osgeo.org]]&lt;br /&gt;
&lt;br /&gt;
= Welcome to the GRASS Wiki =&lt;br /&gt;
&lt;br /&gt;
This wiki is used by the GRASS community mainly for '''governance''', '''event planning''', and '''community coordination'''.&lt;br /&gt;
&lt;br /&gt;
Looking for how to use GRASS? Visit our main website and learning resources:&lt;br /&gt;
&lt;br /&gt;
* [https://grass.osgeo.org/ Main GRASS Website]&lt;br /&gt;
* [https://grass.osgeo.org/grass84/manuals/index.html Documentation &amp;amp; Manuals]&lt;br /&gt;
* [https://grass-tutorials.osgeo.org/ Tutorials &amp;amp; Learning Resources]&lt;br /&gt;
* [https://grass.osgeo.org/download/ Download GRASS]&lt;br /&gt;
* [https://github.com/OSGeo/grass GitHub Repository]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Support GRASS development: [https://grass.osgeo.org/contribute/sponsoring/ Donate here]'''&lt;br /&gt;
&lt;br /&gt;
== Governance ==&lt;br /&gt;
&lt;br /&gt;
* [[PSC|Project Steering Committee (PSC)]]&lt;br /&gt;
* [[PSC#PSC_meeting_agenda_and_minutes|Meeting Minutes]]&lt;br /&gt;
* [[GRASS_GIS_Budget_2025|2025 Budget]]&lt;br /&gt;
&lt;br /&gt;
== Latest Events &amp;amp; Planning ==&lt;br /&gt;
&lt;br /&gt;
* [[GRASS_Developer_Summit_Raleigh_2025|GRASS Developer Summit in Raleigh 2025]]&lt;br /&gt;
* [[GRASS_GSoC_Ideas_2025|Google Summer of Code 2025]]&lt;br /&gt;
&lt;br /&gt;
== Relevant Categories ==&lt;br /&gt;
* [[:Category:GSoC|GSoC]]&lt;br /&gt;
* [[:Category:Code_Sprint|Code sprints]]&lt;br /&gt;
* [[:Category:Workshops|Workshops]]&lt;br /&gt;
* [[:Category:Conferences|Conferences]]&lt;br /&gt;
* [[:Category:Budget|Budget]]&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Talk:GRASS_Developer_Summit_Raleigh_2025&amp;diff=28258</id>
		<title>Talk:GRASS Developer Summit Raleigh 2025</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Talk:GRASS_Developer_Summit_Raleigh_2025&amp;diff=28258"/>
		<updated>2025-05-14T19:07:46Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: /* Day 3, Wednesday, May 21 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{toc|right}}&lt;br /&gt;
&lt;br /&gt;
Quick links: [[GRASS Developer Summit Raleigh 2025|Meeting page]] | [[#Participant_reports|Reports]]  |  [[GRASS_Developer_Summit_Raleigh_2025#Sponsors|Sponsors]]&lt;br /&gt;
&lt;br /&gt;
== Organizing Team ==&lt;br /&gt;
&lt;br /&gt;
* Initial planning: Vaclav Petras, Anna Petrasova, Veronica Andreo, Corey White, Lois Utt, Sarah White, Doug Newcomb, Huidae Cho, Veronica Andreo ([[GRASS_Developer_Summit_Raleigh_2025#Organizing_Committee|Organizing Committee]])&lt;br /&gt;
* Budget: Vaclav Petras, Lois Utt, Anna Petrasova&lt;br /&gt;
* Raising support: Helena Mitasova, Vaclav Petras, Anna Petrasova, Michael Barton, Giuseppe Amatulli ([[NSF POSE Project 2023-2025 Timeline|NSF POSE project]] proposal authors)&lt;br /&gt;
* Travel: Lois Utt&lt;br /&gt;
* Venue: Vaclav Petras, Lois Utt&lt;br /&gt;
* Meals: Lois Utt, Sarah White, Vaclav Petras, Corey White, Anna Petrasova&lt;br /&gt;
* Agenda: Vaclav Petras, Huidae Cho, Anna Petrasova&lt;br /&gt;
* Wiki page: Vaclav Petras, Anna Petrasova&lt;br /&gt;
* Swag: Sarah White, Vaclav Petras, Anna Petrasova, Corey White&lt;br /&gt;
* Promotion, invitations, and social media: Vaclav Petras, Sarah White, Corey White, John Vogler&lt;br /&gt;
* Lightning talks organization: Vaclav Petras, Zachary Arcaro, John Vogler&lt;br /&gt;
* Photography: Caitlin Haedrich&lt;br /&gt;
&lt;br /&gt;
== Detailed Schedule ==&lt;br /&gt;
&lt;br /&gt;
=== Day 1, Monday, May 19 ===&lt;br /&gt;
&lt;br /&gt;
Location: Talley Student Union, 2610 Cates Ave ([https://www.google.com/maps/place/Talley+Student+Union/data=!4m2!3m1!1s0x0:0x38989377c96adef0?sa=X&amp;amp;ved=1t:2428&amp;amp;ictx=111 map])&lt;br /&gt;
&lt;br /&gt;
Room: 5101-Executive Board Room&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''Contributing to GRASS. Getting started. Is it easy to contribute?''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:00-9:00 || Breakfast || Catered breakfast on site. Meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || What to expect from the event, contributing to GRASS using Git and GitHub, making your first contribution.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || Your topic here (10-minute presentation and 10-minute discussion)&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || Catered food on site.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || We will walk to [https://www.trophybrewing.com/brewing-pizza Trophy Brewing &amp;amp; Pizza] ([https://maps.app.goo.gl/ggnZ7EvXbWqDUmvP9 directions], 30 min walk from Talley)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 2, Tuesday, May 20 ===&lt;br /&gt;
&lt;br /&gt;
Location: Talley Student Union, 2610 Cates Ave ([https://www.google.com/maps/place/Talley+Student+Union/data=!4m2!3m1!1s0x0:0x38989377c96adef0?sa=X&amp;amp;ved=1t:2428&amp;amp;ictx=111 map])&lt;br /&gt;
&lt;br /&gt;
Room: 5101-Executive Board Room&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''Interfacing with R and QGIS (gathering user feedback, testing, discussing with developers, developing action items)''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:00-9:00 || Breakfast || Breakfast on site. Start the day, meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || Introduction to writing GRASS tools, program for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || Your topic here (10-minute presentation and 10-minute discussion)&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || [https://maps.app.goo.gl/womSkce9DrE8CTnR8 Case dining hall]&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || [https://maps.app.goo.gl/CQiWoCAQNt1ymZkb7 Served in Jordan Hall at the Center for Geospatial Analytics], evaluate the day's accomplishments, plan and prioritize for the next few days.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 3, Wednesday, May 21 ===&lt;br /&gt;
&lt;br /&gt;
Location: Talley Student Union, 2610 Cates Ave ([https://www.google.com/maps/place/Talley+Student+Union/data=!4m2!3m1!1s0x0:0x38989377c96adef0?sa=X&amp;amp;ved=1t:2428&amp;amp;ictx=111 map])&lt;br /&gt;
&lt;br /&gt;
Room: 5101-Executive Board Room&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''Non-coding contributions, natural language translation, and internationalization.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:00-9:00 || Breakfast || [https://maps.app.goo.gl/eZ8VK8Mx6TjMt9NP8 Case dining hall]&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || Introduction to non-coding contributions, deep dive into new documentation, natural language translation and internationalization (procedures, glossaries, code customization, translation).&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || Your topic here (10-minute presentation and 10-minute discussion)&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || GSoC call&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || Served on site. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || [https://maps.app.goo.gl/1E39eySMVaxYJUUS8 Picnic at Pullen Park, shelter #3. In case of bad weather, dinner at the Center for Geospatial Analytics.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 4, Thursday, May 22 ===&lt;br /&gt;
&lt;br /&gt;
Location: Center for Geospatial Analytics, Jordan Hall, 2800 Faucette Drive ([https://www.google.com/maps/search/Jordan+Hall/@35.7816832,-78.6772765,18z/data=!3m1!4b1?entry=ttu&amp;amp;g_ep=EgoyMDI1MDQyMC4wIKXMDSoJLDEwMjExNDUzSAFQAw%3D%3D map])&lt;br /&gt;
&lt;br /&gt;
Room: 5103 (straight from the two elevators, at the end of the hallway)&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''Project vision and computational engine use case.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:00-9:00 || Breakfast || On site. Start the day, meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || Project vision and the computational engine use case (missing features, documentation, user groups).&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || Your topic here (10-minute presentation and 10-minute discussion)&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || On site. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-16:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 16:00-17:00 || Lightning talks || Fast-paced talks, showcasing applications of GRASS, room 5111.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Reception || Connect with researchers, government professionals, and industry collaborators, rooms 5111 and 5119.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 5, Friday, May 23 ===&lt;br /&gt;
&lt;br /&gt;
Location: James B. Hunt Jr. Library, 1070 Partners Way - Centennial Campus ([https://www.google.com/maps/place/James+B.+Hunt+Jr.+Library/@35.7693736,-78.679167,17z/data=!3m1!5s0x89acf5759f5a31df:0xc547454a0151c440!4m10!1m2!2m1!1shunt+library!3m6!1s0x89acf5759f591f41:0xbe0266269ce37f59!8m2!3d35.7693215!4d-78.6764409!15sCgxodW50IGxpYnJhcnlaDiIMaHVudCBsaWJyYXJ5kgESdW5pdmVyc2l0eV9saWJyYXJ54AEA!16s%2Fm%2F0r4wjf_?entry=ttu&amp;amp;g_ep=EgoyMDI1MDQyMC4wIKXMDSoJLDEwMjExNDUzSAFQAw%3D%3D map])&lt;br /&gt;
&lt;br /&gt;
Room: Faculty Research Commons - 5100 ([https://www.lib.ncsu.edu/hunt/map floor plan])&lt;br /&gt;
&lt;br /&gt;
Highlighted topic: ''GRASS project's future course.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:00-9:00 || Breakfast || On site. Start the day, meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || GRASS project's future course.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || PSC meeting || Project Steering Committee meets (public).&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || Your topic here (10-minute presentation and 10-minute discussion)&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || Walk to [https://maps.app.goo.gl/kHVHY62QxTd6wHKd9 On the Oval Culinary Creatins]. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || Dinner on your own. Corey White will organize trip to downtown. Bus 41 from Hunt library to hotel and then walk.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Day 6, Saturday, May 24 ===&lt;br /&gt;
&lt;br /&gt;
Location: James B. Hunt Jr. Library, 1070 Partners Way - Centennial Campus ([https://www.google.com/maps/place/James+B.+Hunt+Jr.+Library/@35.7693736,-78.679167,17z/data=!3m1!5s0x89acf5759f5a31df:0xc547454a0151c440!4m10!1m2!2m1!1shunt+library!3m6!1s0x89acf5759f591f41:0xbe0266269ce37f59!8m2!3d35.7693215!4d-78.6764409!15sCgxodW50IGxpYnJhcnlaDiIMaHVudCBsaWJyYXJ5kgESdW5pdmVyc2l0eV9saWJyYXJ54AEA!16s%2Fm%2F0r4wjf_?entry=ttu&amp;amp;g_ep=EgoyMDI1MDQyMC4wIKXMDSoJLDEwMjExNDUzSAFQAw%3D%3D map])&lt;br /&gt;
&lt;br /&gt;
Room: Faculty Research Commons - 5100 ([https://www.lib.ncsu.edu/hunt/map floor plan])&lt;br /&gt;
&lt;br /&gt;
Highlighted topics: ''NSF POSE project evaluation.''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Time !! Slot !! &lt;br /&gt;
|-&lt;br /&gt;
| 8:00-9:00 || Breakfast || TBA. Start the day, meet people, and plan your personal agenda for the day.&lt;br /&gt;
|-&lt;br /&gt;
| 9:00-10:00 || Morning opening sessions || NSF POSE project evaluation, contributor community feedback.&lt;br /&gt;
|-&lt;br /&gt;
| 10:00-11:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 11:00-11:20 || Self-organized feedback session || Your topic here (10-minute presentation and 10-minute discussion)&lt;br /&gt;
|-&lt;br /&gt;
| 11:20-11:40 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 11:40-12:00 || Self-organized feedback sessions || Your topic here&lt;br /&gt;
|-&lt;br /&gt;
| 12:00-13:00 || Lunch || TBA. Eat, drink, and continue the discussion from the feedback sessions.&lt;br /&gt;
|-&lt;br /&gt;
| 13:00-17:00 || Focus time || Time to work on your laptop, whiteboard solutions with a group, or anything in between.&lt;br /&gt;
|-&lt;br /&gt;
| 18:00 || Dinner || TBA. Evaluate the day's accomplishments, plan and prioritize for the next few days.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Daily tasks for participants ==&lt;br /&gt;
&lt;br /&gt;
* List all the things you are working on in the Participant reports section below. Update the list each day. Include things you work on with other people.&lt;br /&gt;
* If you want to discuss something with the whole group, add yourself to a Self-organized feedback sessions slot in the schedule above or tell Vaclav (Vashek) Petras.&lt;br /&gt;
* For people with triage access and above: If you are or will be working on an issue or on a PR which is not originally submitted by you, assign yourself to the issue or PR. (You can unassign yourself later if you change your mind.)&lt;br /&gt;
&lt;br /&gt;
== Participant reports ==&lt;br /&gt;
&lt;br /&gt;
Per-person reports from the meeting.&lt;br /&gt;
&lt;br /&gt;
=== Giuseppe Amatulli | Yale University ===&lt;br /&gt;
&lt;br /&gt;
* Testing r.watershed and r.stream.* for handling large datasets&lt;br /&gt;
&lt;br /&gt;
=== Veronica Andreo | CONICET - Instituto Gulich ===&lt;br /&gt;
&lt;br /&gt;
* Complete review of temporal tutorials to push them, GRASS and tutorials websites, GRASS project stuff, understand how new docs work, understand new contribution workflows, interface with R.&lt;br /&gt;
&lt;br /&gt;
=== Abdullah Azzam | New Mexico State University ===&lt;br /&gt;
&lt;br /&gt;
* I plan to develop a module that computes runoff volume using the SCS Curve Number method. I will explore techniques to make it fast, efficient, and reliable, creating a valuable tool for water resources professionals, students, and researchers.&lt;br /&gt;
&lt;br /&gt;
=== Michael Barton | Arizona State University ===&lt;br /&gt;
&lt;br /&gt;
* POSE related activities&lt;br /&gt;
&lt;br /&gt;
=== Laura Belica | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* tutorial development&lt;br /&gt;
&lt;br /&gt;
=== Shonil Sateesh Bhide | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* CI optimization&lt;br /&gt;
&lt;br /&gt;
=== Huidae Cho | New Mexico State University ===&lt;br /&gt;
&lt;br /&gt;
* CMake, conda, CI, Mentoring&lt;br /&gt;
&lt;br /&gt;
=== Edouard Choinière ===&lt;br /&gt;
&lt;br /&gt;
* Quick ideas, way too much for a week: Helping others (may take a reasonable part of the time), managing CI, setting up localization template updating workflow, backporting tool? Pytest/coverage improvements? Discuss and design other projects, to work on during the year. Open to change on other priorities once there, anything that is useful. Maybe make a little progress on high dpi GUI, especially on Windows.&lt;br /&gt;
&lt;br /&gt;
=== Laurent Courty ===&lt;br /&gt;
&lt;br /&gt;
* An xarray backend for GRASS STRDS. Fixing related issues&lt;br /&gt;
&lt;br /&gt;
=== Robert S. Dzur | Bohannan Huston, Inc. ===&lt;br /&gt;
&lt;br /&gt;
* r.in.pdal&lt;br /&gt;
&lt;br /&gt;
=== David W. Farris | East Carolina University ===&lt;br /&gt;
&lt;br /&gt;
* A tool to calculate gravity terrain corrections&lt;br /&gt;
&lt;br /&gt;
=== Neel Ghoshal | NC State University ===&lt;br /&gt;
&lt;br /&gt;
=== Caitlin Haedrich | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* Jupyter API, event photographs&lt;br /&gt;
&lt;br /&gt;
=== Brendan Harmon | Louisiana State University ===&lt;br /&gt;
&lt;br /&gt;
* Plugin development (r.earthworks) &amp;amp; tutorials&lt;br /&gt;
&lt;br /&gt;
=== Linda Karlovska | Czech Technical University in Prague ===&lt;br /&gt;
&lt;br /&gt;
* I plan to work on GUI enhancements, particularly the Jupyter-style interactive page for enhanced scripting and visualization.&lt;br /&gt;
&lt;br /&gt;
=== Martin Landa | Czech Technical University in Prague ===&lt;br /&gt;
&lt;br /&gt;
* Graphical modeler, Python API, Windows builds&lt;br /&gt;
&lt;br /&gt;
=== Nicklas Larsson | Hungarian National Museum ===&lt;br /&gt;
&lt;br /&gt;
* CMake build system; perhaps Conda recipe&lt;br /&gt;
&lt;br /&gt;
=== Chung-Yuan Liang ===&lt;br /&gt;
&lt;br /&gt;
* parallelize some modules, improve testing&lt;br /&gt;
&lt;br /&gt;
=== Andres Lucero | Bohannan Huston Inc ===&lt;br /&gt;
&lt;br /&gt;
* r.in.pdal&lt;br /&gt;
&lt;br /&gt;
=== Alen Mangafić | Geodetic Institute of Slovenia ===&lt;br /&gt;
&lt;br /&gt;
* Add-on which offers basic hyperspectral data support in GRASS.&lt;br /&gt;
&lt;br /&gt;
=== Helena Mitasova | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* standardized data set and related tutorials&lt;br /&gt;
&lt;br /&gt;
=== Michael Mulqueen | MassGIS ===&lt;br /&gt;
&lt;br /&gt;
* depth to water, hydro from lidar, etc&lt;br /&gt;
&lt;br /&gt;
=== Māris Nartišs ===&lt;br /&gt;
&lt;br /&gt;
* Publish modules in progress.&lt;br /&gt;
&lt;br /&gt;
=== Ondřej Pešek | Czech Technical University in Prague ===&lt;br /&gt;
&lt;br /&gt;
* Many things to fix/improve in g.gui.gmodeler, finally finish an addon for CNNs in GRASS&lt;br /&gt;
&lt;br /&gt;
=== Vaclav (Vashek) Petras | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/wenzeslaus?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
* computational engine, APIs, funding, summit organization&lt;br /&gt;
&lt;br /&gt;
=== Anna Petrasova | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/petrasovaa?tab=overview&amp;amp;from=2025-05-19&amp;amp;to=2025-05-24 GitHub activity]&lt;br /&gt;
* mentoring, documentation&lt;br /&gt;
&lt;br /&gt;
=== Gregory Power | Town of Cary ===&lt;br /&gt;
&lt;br /&gt;
* Documentation&lt;br /&gt;
&lt;br /&gt;
=== Pratikshya Regmi | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* I plan to show the I am working on integrating LLM and GRASS.&lt;br /&gt;
&lt;br /&gt;
=== Riya | Indian Institute of Technology, Roorkee ===&lt;br /&gt;
&lt;br /&gt;
* I am currently thinking of developing an AI Agent for the grass jupyter library which will help the users with mathematical calculations done in GIS.&lt;br /&gt;
&lt;br /&gt;
=== Krishna Prasad Sheshadri ===&lt;br /&gt;
&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
=== Adam Smith | Missouri Botanical Garden ===&lt;br /&gt;
&lt;br /&gt;
* fasterRaster (fielding bug reports, adding features)&lt;br /&gt;
&lt;br /&gt;
=== Michelle (Mimi) Stephens ===&lt;br /&gt;
&lt;br /&gt;
* Coding and visualization&lt;br /&gt;
&lt;br /&gt;
=== Corey White | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* JSON, mentoring&lt;br /&gt;
=== Jayneel Shah | NC State University ===&lt;br /&gt;
&lt;br /&gt;
* improve the test coverage of imagery modules.&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS-Wiki&amp;diff=28255</id>
		<title>GRASS-Wiki</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS-Wiki&amp;diff=28255"/>
		<updated>2025-05-13T18:20:42Z</updated>

		<summary type="html">&lt;p&gt;Annakrat: remove box&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:grasslogo_vector_small.png|110x123 px|right|link=https://grass.osgeo.org]]&lt;br /&gt;
&lt;br /&gt;
= Welcome to the GRASS Wiki =&lt;br /&gt;
&lt;br /&gt;
This wiki is used by the GRASS community mainly for '''governance''', '''event planning''', and '''community coordination'''.&lt;br /&gt;
&lt;br /&gt;
Looking for how to use GRASS? Visit our main website and learning resources:&lt;br /&gt;
&lt;br /&gt;
* 🌐 [https://grass.osgeo.org/ Main GRASS Website]&lt;br /&gt;
* 📚 [https://grass.osgeo.org/grass84/manuals/index.html Documentation &amp;amp; Manuals]&lt;br /&gt;
* 🎓 [https://grass-tutorials.osgeo.org/ Tutorials &amp;amp; Learning Resources]&lt;br /&gt;
* ⬇️ [https://grass.osgeo.org/download/ Download GRASS]&lt;br /&gt;
* 🛠️ [https://github.com/OSGeo/grass GitHub Repository]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''💚 Support GRASS development: [https://grass.osgeo.org/contribute/sponsoring/ Donate here]'''💚&lt;br /&gt;
&lt;br /&gt;
== Governance ==&lt;br /&gt;
&lt;br /&gt;
* [[PSC|Project Steering Committee (PSC)]]&lt;br /&gt;
* [[PSC#PSC_meeting_agenda_and_minutes|Meeting Minutes]]&lt;br /&gt;
* [[GRASS_GIS_Budget_2025|2025 Budget]]&lt;br /&gt;
&lt;br /&gt;
== Latest Events &amp;amp; Planning ==&lt;br /&gt;
&lt;br /&gt;
* [[GRASS_Developer_Summit_Raleigh_2025|GRASS Developer Summit in Raleigh 2025]]&lt;br /&gt;
* [[GRASS_GSoC_Ideas_2025|Google Summer of Code 2025]]&lt;br /&gt;
&lt;br /&gt;
== Relevant Categories ==&lt;br /&gt;
* [[:Category:GSoC|GSoC]]&lt;br /&gt;
* [[:Category:Code_Sprint|Code sprints]]&lt;br /&gt;
* [[:Category:Workshops|Workshops]]&lt;br /&gt;
* [[:Category:Conferences|Conferences]]&lt;br /&gt;
* [[:Category:Budget|Budget]]&lt;/div&gt;</summary>
		<author><name>Annakrat</name></author>
	</entry>
</feed>