Talk:GRASS Community Meeting Prague 2023: Difference between revisions
Jump to navigation
Jump to search
(Add Loïc Bartoletti) |
⚠️Wenzeslaus (talk | contribs) (Fix links, use website press release) |
||
(9 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
{{toc|right}} | |||
Quick links: [[GRASS Community Meeting Prague 2023|Meeting page]] | [[#Reports|Reports]] | [[GRASS_Community_Meeting_Prague_2023#Thanks_to_our_sponsors|Sponsors]] | [https://grass.osgeo.org/news/2023_08_13_grass_community_meeting_prague_june_2023_report/ Press release] | |||
== Tasks for participants == | == Tasks for participants == | ||
Line 19: | Line 21: | ||
* Virtual meeting organizing: Veronica Andreo | * Virtual meeting organizing: Veronica Andreo | ||
* Photography: Caitlin Haedrich, Maris Nartiss | * Photography: Caitlin Haedrich, Maris Nartiss | ||
== Reports == | == Reports == | ||
Line 47: | Line 33: | ||
* Rename location to project | * Rename location to project | ||
** [https://github.com/OSGeo/grass/pull/2993 wxGUI: Rename location to project #2993] | ** [https://github.com/OSGeo/grass/pull/2993 wxGUI: Rename location to project #2993] | ||
** Discussion | ** Discussion about naming, advantages, and challenges | ||
* Python API | * Python API and CLI | ||
** [https://github.com/OSGeo/grass/pull/2923 grass.experimental: Add object to access modules as functions #2923] | ** [https://github.com/OSGeo/grass/pull/2923 grass.experimental: Add object to access modules as functions #2923] | ||
** Discussion about creating locations from Python ([https://github.com/OSGeo/grass/issues/3034 Issue: make gscript.create_location() callable from outside #3034]) | |||
** [https://github.com/OSGeo/grass/issues/3007 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 | |||
** [https://github.com/OSGeo/grass/pull/3049 wxGUI: Ignore stderr of the GUI #3049] | |||
* CI | * CI | ||
** [https://github.com/OSGeo/grass/pull/3002 | ** [https://github.com/OSGeo/grass/pull/3002 CI: Switch Travis to Ubuntu 22.04 (jammmy) #3002] | ||
* Reviews | ** [https://github.com/OSGeo/grass/pull/3014 CI: Reduce number of Python jobs #3014] | ||
** [https://github.com/OSGeo/grass-addons/pull/921 CI: Test with v8.3, Python 3.7 #921] | |||
* Release 8.3.0 | |||
** Work with Markus Neteler to prepare release | |||
* Contributing: | |||
** [https://github.com/OSGeo/grass/pull/3048 contributing: Add empty line after heading in release notes #3048] | |||
** [https://github.com/OSGeo/grass/pull/3035 contributing: Add more expressions to match release notes groups #3035] | |||
* Reviews: | |||
** [https://github.com/OSGeo/grass/pull/2189 Imagery: add libsvm based imagery classification #2189] | |||
** [https://github.com/OSGeo/grass/pull/2974 t.rast.algebra/testsuite: split file test_raster_algebra.py #2974] | ** [https://github.com/OSGeo/grass/pull/2974 t.rast.algebra/testsuite: split file test_raster_algebra.py #2974] | ||
** [https://github.com/OSGeo/grass-addons/pull/606 r.random.walk: Add module to create random walks #606] | ** [https://github.com/OSGeo/grass-addons/pull/606 r.random.walk: Add module to create random walks #606] | ||
** [https://github.com/OSGeo/grass/pull/2930 r.surf.random: Added seed option and flag to module #2930] | |||
** [https://github.com/OSGeo/grass/pull/3008 i.signatures: Add imagery classifier signature management module #3008] | |||
** [https://github.com/OSGeo/grass/pull/3037 r.patch: ensure r.in.ascii in relevant tests always create CELL #3037] | |||
** [https://github.com/OSGeo/grass-addons/pull/911 r.mblend: basic tests #911] | |||
** [https://github.com/OSGeo/grass/pull/3010 grass.unittest: Fix usage of assertRegexpMatches() removed from Python 3.12 #3010] | |||
** [https://github.com/OSGeo/grass/pull/3011 grass.gunittest: Fix usage of assertNotRegexMatches() removed from Python 3.12 #3011] | |||
** [https://github.com/OSGeo/grass/pull/3009 grass.gunittest: Fix usage of assertEquals() removed from Python 3.12 #3009] | |||
** [https://github.com/OSGeo/grass-addons/pull/917 grass.gunittest: Fix usage of assertEquals() removed from Python 3.12 #917] | |||
** [https://github.com/OSGeo/grass/pull/2992 wxGUI/query: set region matching the raster for each raster queried #2992] | |||
** [https://github.com/OSGeo/grass/pull/2997 wxGUI/gmodeler: Show ModelRelation in white on dark mode #2997] | |||
** [https://github.com/OSGeo/grass/pull/3015 Locale: extract translatable messages also from C++ files #3015] | |||
** [https://github.com/OSGeo/grass/pull/3029 doc: Document that lists in parser must be NULL terminated #3029] | |||
** [https://github.com/OSGeo/grass/pull/3006 contributing: Expand instructions on pre-commit #3006] | |||
** [https://github.com/OSGeo/grass/pull/3030 contributing: minor release procedure updates (main) #3030] | |||
** [https://github.com/OSGeo/grass/pull/3031 contributing: release procedure updates (G82) #3031] | |||
** [https://github.com/OSGeo/grass/pull/3032 contributing: release procedure updates (G83) #3032] | |||
** [https://github.com/OSGeo/grass-addons/pull/916 contributing: adds instructions on unit tests for add-ons #916] | |||
** [https://github.com/OSGeo/grass/pull/3012 contributing: Remove parts of locale readme already present in submitting guidelines #3012] | |||
See also [https://github.com/wenzeslaus?tab=overview&from=2023-06-01&to=2023-06-30 June activity log on GitHub]. | |||
=== Anna Petrasova === | === Anna Petrasova === | ||
Line 134: | Line 156: | ||
* Fix bug to complete r.univar parallelization. [https://github.com/OSGeo/grass/pull/2683 PR] | * Fix bug to complete r.univar parallelization. [https://github.com/OSGeo/grass/pull/2683 PR] | ||
* Investigate CMake progress in Windows. There still needs to be source code fixes to be port over to MSVC: | * 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). [https://github.com/OSGeo/grass/pull/3021] | * Coordinate CMake PR, fix some bugs and make some progress (got a full build on UNIX environment). [https://github.com/OSGeo/grass/pull/3021] | ||
* r.mapcalc removed previous threading artifacts that are ineffective. | * r.mapcalc removed previous threading artifacts that are ineffective. | ||
Line 198: | Line 220: | ||
* Help arranging a meeting with Nyall Dawson for the QGIS GRASS interface | * 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 | * 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 | * 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 | * 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 === | === Vero Andreo === | ||
Line 212: | Line 234: | ||
** Created a news item about rgrass7 retirement with text snippet contributed by Roger Bivand [https://github.com/OSGeo/grass-website/pull/370 #370] | ** Created a news item about rgrass7 retirement with text snippet contributed by Roger Bivand [https://github.com/OSGeo/grass-website/pull/370 #370] | ||
* Other minor revisions | * 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 === | === Carmen Tawalika === | ||
Line 235: | Line 268: | ||
* Working on Cppcheck and [https://sonarcloud.io/summary/new_code?id=lbartoletti_grass&branch=sonarcloud SonarCloud WIP] for GRASS build | * Working on Cppcheck and [https://sonarcloud.io/summary/new_code?id=lbartoletti_grass&branch=sonarcloud SonarCloud WIP] for GRASS build | ||
* Update URL to GRASS manual pages in QGIS [https://github.com/qgis/QGIS/pull/53372 #53372] and [https://github.com/qgis/QGIS/pull/53376 #53376] | * Update URL to GRASS manual pages in QGIS [https://github.com/qgis/QGIS/pull/53372 #53372] and [https://github.com/qgis/QGIS/pull/53376 #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 | * How to improve the integration | ||
** save some of the existing code | ** save some of the existing code | ||
Line 244: | Line 279: | ||
** https://github.com/qgis/QGIS/pull/53048 | ** https://github.com/qgis/QGIS/pull/53048 | ||
** https://github.com/qgis/QGIS/pull/53049 | ** https://github.com/qgis/QGIS/pull/53049 | ||
Complete minutes are in the GitHub Discussion [https://github.com/OSGeo/grass/discussions/3047 ''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 [https://github.com/rsbivand/rgrass/discussions/78 ''Meeting minutes on interfacing GRASS from R'' #78]. | |||
== What to do differently the next time == | == What to do differently the next time == |
Latest revision as of 21:00, 14 August 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)