Talk:GRASS Community Meeting Prague 2023
Quick links: Meeting page | Reports | Sponsors | Press release
Tasks for participants
- Create section for you in the Reports section.
- List all the things you are working on in the section. Update the list each day. Include things you work on with other people.
- Link the GRASS Community Meeting Prague 2023 project on GitHub to each PR or issue you are working on or plan to be working on.
- 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.)
Planning and organizing
- Initial planning: Veronica Andreo, Martin Landa, Vaclav Petras, Helmut Kudrnovsky, Anna Petrasova, Huidae Cho, Markus Neteler, Helena Mitasova, Micha Silver, Linda Kladivova
- Funding acquisition: Veronica Andreo, Markus Neteler, Vaclav Petras, Anna Petrasova, Huidae Cho, Luca Delucchi, Venkatesh Raghavan
- Budget: Vaclav Petras, Markus Neteler, Veronica Andreo
- Venue and local organizing: Martin Landa, helpers: Ondrej Pesek, Vaclav Petras
- T-shirts, hoodies, stickers: Vaclav Petras, Anna Petrasova
- Promotion, invitations, and social media: Caitlin Haedrich, Veronica Andreo, Vaclav Petras
- Wiki page: Martin Landa, Markus Neteler, Vaclav Petras, Veronica Andreo
- Virtual meeting organizing: Veronica Andreo
- Photography: Caitlin Haedrich, Maris Nartiss
Reports
Caitlin Haedrich
- Photos, social media and wiki page
- grass.jupyter:
Vaclav Petras
- Rename location to project
- wxGUI: Rename location to project #2993
- Discussion about naming, advantages, and challenges
- Python API and CLI
- grass.experimental: Add object to access modules as functions #2923
- Discussion about creating locations from Python (Issue: make gscript.create_location() callable from outside #3034)
- Issue: Add g.findfile alternative which hides format complexities #3007
- QGIS
- Group call to identify priorities with Nyall Dawson
- R
- Discussion with Floris Vanderhaeghe, Roger Bivand, and others assessing the current state
- GUI
- Discussion about streamlined startup
- wxGUI: Ignore stderr of the GUI #3049
- CI
- Release 8.3.0
- Work with Markus Neteler to prepare release
- Contributing:
- Reviews:
- Imagery: add libsvm based imagery classification #2189
- t.rast.algebra/testsuite: split file test_raster_algebra.py #2974
- r.random.walk: Add module to create random walks #606
- r.surf.random: Added seed option and flag to module #2930
- i.signatures: Add imagery classifier signature management module #3008
- r.patch: ensure r.in.ascii in relevant tests always create CELL #3037
- r.mblend: basic tests #911
- grass.unittest: Fix usage of assertRegexpMatches() removed from Python 3.12 #3010
- grass.gunittest: Fix usage of assertNotRegexMatches() removed from Python 3.12 #3011
- grass.gunittest: Fix usage of assertEquals() removed from Python 3.12 #3009
- grass.gunittest: Fix usage of assertEquals() removed from Python 3.12 #917
- wxGUI/query: set region matching the raster for each raster queried #2992
- wxGUI/gmodeler: Show ModelRelation in white on dark mode #2997
- Locale: extract translatable messages also from C++ files #3015
- doc: Document that lists in parser must be NULL terminated #3029
- contributing: Expand instructions on pre-commit #3006
- contributing: minor release procedure updates (main) #3030
- contributing: release procedure updates (G82) #3031
- contributing: release procedure updates (G83) #3032
- contributing: adds instructions on unit tests for add-ons #916
- contributing: Remove parts of locale readme already present in submitting guidelines #3012
See also June activity log on GitHub.
Anna Petrasova
- Fix bug in querying
- review, merge and backport of fix in datacatalog
- review of wxGUI: fix show MASK statusbar button widget if mask is created
- merge of wxGUI: adding a button for undocking an AuiNotebook tab to wx.Frame (Single-Window GUI)
- edit check min required wx version when starting wxgui
- implement widget dependency for i.signatures as part of PR 3008
- found and fixed a bug in digitizer, PR 3027
- participate in rgrass and QGIS-GRASS discussions
- write up notes from QGIS meeting
- fix randomly failing test in PR 3037
- worked on a Jupyter Notebook for GRASS parallelization (to be finished)
Maris Nartiss
- i.svm.* cleanup and preparation for a review
- A conceptual proposal for a new start up screen
- Initial version of imagery signature management module i.signatures
- Remove obsolete parts of locale README file
- Extract translatable messages also from C++ files
- Improve parser library documentation
Micha Silver
Working on a new GRASS addon: r.optram the repo on github
02/06: Initialize main file r.optram.py
includes these functions:
- getImgList() - get list of IMG_FILEs in a Sentinel 2 SAFE Directory
- cropToAOI() - Crop the images to the Area of Interest
- prepareSTR() - Convert SWIR to the SWIR Transformed Reflectance
- prepareVI() - Prepare the (user chosen) vegetation index
03/06:
- Split to three modules: r.optram.preprocess, r.optram, r.optram.soilmoisture
- new function: prepareTrapezoid() - to get wet-dry regression lines and slope, intercept values
04/06
- prepareTrapezoid() function completed.
- (Joined video conf with Roger Bivand on R-GRASS integration.)
05/06 Initialize third file/function: r.optram.soilmoisture.py
- createSoilMoisture() - creates new GRASS raster for a single date
- Add documentation to modules
- (joined video conf with Nyall Dawson)
TODO list:
- Read Sentinel cloud mask and mask out cloud pixels in r.optram.preprocess
- large study areas or very long time series will create a big numpy table of variables (vegetation index and STR). A possible solution:
- Determine some "reasonable" maximum size for the numpy table, depending on computer resources.
- Extract a subset of pixels from each raster in the time series, such that the total table pixel values will not exceed that maximum
- The size of the subset will be set by ("reasonable" max / number of rasters in time series)
- Allow user to determine "reasonable" max.
- Currently this addon consists of three sub-modules. Consider to consolidate to one.
- Improve HTML documentation
Luís de Sousa
Work on GRASS add-on r.mblend
- Module is still maintained and fully functional in GRASS 8.2 (now included in the GRASS global add-ons repository)
- However was not longer producing correct results due to new behaviour in v.what.rast
- Solution identified, using inner buffer to interpolation area (PR #910)
- A small unit test suite was developed (PR #911)
Documentation
Aaron Saw Min Sern
- Fix bug to complete r.univar parallelization. PR
- Investigate CMake progress in Windows. There still needs to be source code fixes to be port over to MSVC:
- Variable Length Arrays (VLA) is not supported in MSVC (is optional in C99).
- DLL export directives are required across dynamic library boundaries.
- ...
- Coordinate CMake PR, fix some bugs and make some progress (got a full build on UNIX environment). [1]
- r.mapcalc removed previous threading artifacts that are ineffective.
- r.mapcalc refactored global variables in preparation for threading work. (PR to come)
Martin Landa
- Check min required wx version when starting wxgui PR #2990
- Graphical modeler: avoid overlapping module parameters PR #2991
- Show ModelRelation in white on dark mode PR #2997
- Add OSGeo4W workflow to compile Addons PR #912
- Integrate Grapical Modeler into single window layout PR #3003
- Graphical Modeler: fix command parsing in "add tool" dialog PR #3022
- Describe required updates for new version for winGRASS #2406
Markus Neteler
- backport of "HTML header charset changed from ISO-8859-1 to UTF-8" PR #2547 to GRASS GIS 8.2.1 (fixing r.forcircular manual encoding bug)
- improve "Update alpine Docker tag to v3.18 PR #2953
- backport of Alpine Dockerfile improvements
- discussion about "location/mapset" vs "project/..." terminology
- initial QGIS-GRASS update discussion: update of provider to GRASS GIS 8
- Google Photo album feeds
- Use of pre-commit (recommended to all devs!)
- Participate in a two-hour meeting with Nyall Dawson (QGIS) and the GRASS Community about interfacing GRASS from QGIS
- GRASS GIS docker images: moved from "mundialis organization" to https://hub.docker.com/r/osgeo/grass-gis (together with Carmen)
- Once the CI completes the images will show up there. Update of grass-web page is in the works.
- Update of release procedure documents (together with Vaclav)
- GRASS GIS manual pages: re-styling and conversion of all pages to markdown:
- convert to markdown with pandoc (draft script see https://app.gitter.im/#/room/#grassgis_sprint:gitter.im discussion)
- using mkdocs (https://www.mkdocs.org/): it provides menus and a search window
- check: automatic formatting for mkdocs: https://github.com/KyleKing/mdformat-mkdocs
- Discuss about a 4th edition of "Open Source GIS: A GRASS GIS Approach"
- GRASS GIS addons overview generator for entire GitHub (and more?) based on tag "grass-gis-addons"
- User message translation: Easy machine translation of messages in OSGeo-Weblate with DeepL API
- my tests with DeepL show that the quality is very good; average translation time of a user message shrinks to 15 seconds √
- note: one needs to login to Weblate to see the "Automatic suggestion" button (using the OSGeo-ID)
Helmut Kudrnovsky
- discuss (win)GRASS-R issues initGrass Error and feature requests
- Review and initial tests of PR compilation with cmake on Windows
- Participated in a two-hour meeting with Roger, Floris, Vaclav, Anna, Micha, ..... about rgrass development
Ondřej Pešek
- gmodeler: add export to an actinia script: PR #3005
- fix GRASS GIS broken for Python 3.12: PR #3009, PR #3010, PR #3011, PR #3018
- fix GRASS GIS addons broken for Python 3.12: PR #917, PR #918, PR #919
- work on docs: PR #3043
Floris Vanderhaeghe
- Explore reading straight from the GRASS database into R (https://github.com/rsbivand/rgrass/issues/75)
- Help Markus in improving the documentation of the GDAL-GRASS drivers (https://github.com/OSGeo/gdal-grass)
- Help arranging a meeting with Nyall Dawson for the QGIS GRASS interface
- Participate in a two-hour meeting with Roger Bivand, Vero Andreo, Vaclav, Anna, Helmut, Micha, ..... about rgrass development
- Draft and finalize the meeting minutes of the rgrass meeting (https://github.com/rsbivand/rgrass/discussions/78)
- Participate in a two-hour meeting with Nyall Dawson (QGIS) and the GRASS Community about interfacing GRASS from QGIS (https://github.com/OSGeo/grass/discussions/3047)
Vero Andreo
- Participated in the discussion about renaming locations to projects
- Call with Paulo on diverse topics, r.niche.similarity PR revision and merge
- Participated in a two-hour meeting with Roger, Floris, Vaclav, Anna, Helmut, Micha, ..... about rgrass development
- Worked on GRASS Website:
- Apply fixes and merge the DOI and first draft of sponsoring tiers PRs
- Beautify tables and content of sponsoring page #368
- New menu and submenus (some reordered), please comment #369
- Created a news item about rgrass7 retirement with text snippet contributed by Roger Bivand #370
- Other minor revisions
Ideas for the meeting agenda:
- All - think about GRASS GIS mission and vision: Where do we want to be as a project in 5 years time? What do we want to have? What do we want to be?
- Participate in discussions about GRASS interfaces with QGIS and R (rgrass)
- Discuss sponsoring
- Student grant for (python) documentation?
- Discuss about wiki clean-up/update (Anna was working on a list of pages)
- Website enhancements: complete open PR's, meet Daniel Torres, new support item in main menu
- Discuss State of GRASS presentation for FOSS4G 2023
- i.landsat if time permits
Carmen Tawalika
- Move official GRASS GIS Dockerimage from mundialis/grass-py3-pdal to osgeo/grass-gis
- Update alpine version in Dockerimage to v3.18
- Enhance actinia version info in #443, #444 and #40
- Fix tests for actinia-parallel-plugin
Loïc Bartoletti
- Participate in a two-hour meeting with Nyall Dawson (QGIS) and the GRASS Community about interfacing GRASS from QGIS
- Rebased Markus PR and continuing migration to CMake
- Fix a Crash on QGIS loading a raster generated with r.null
- Fix a memory leak in lib/bitmap
- Remove compatibility to GDAL < 2.2 #2995
- Tests and reviews for #1034, #1889, #2930
- Working on Cppcheck and SonarCloud WIP for GRASS build
- Update URL to GRASS manual pages in QGIS #53372 and #53376
Discussion on interfacing GRASS from QGIS
- Special guest: Nyall Dawson (QGIS)
- All meeting participants were part of the call.
- How to improve the integration
- save some of the existing code
- update "Processing" integration
- ...
- GRASS GIS Addon support in QGIS, see
Complete minutes are in the GitHub Discussion Meeting minutes on interfacing GRASS from QGIS #3047.
Discussion on using GRASS from R
- Special guest: Roger Bivand (rgrass, ...)
- Attended by 7+ participants
Complete minutes are in the GitHub Discussion Meeting minutes on interfacing GRASS from R #78.
What to do differently the next time
- Use food delivery also for couple of evenings to allow for longer coding. (asked for by several participants)
- Pay for more parallel CI jobs. (the queue was very long and too long for the release procedure)