From noreply at github.com Sat Aug 1 03:49:19 2026 From: noreply at github.com (renovate[bot]) Date: Sat, 01 Aug 2026 03:49:19 -0700 Subject: [GRASS-git] [OSGeo/grass] 4a165a: CI(deps): Update dependency OSGeo/gdal to v3.13.2 ... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 4a165a59bed66d3a9510eb45f5b1dd5bbda916f0 https://github.com/OSGeo/grass/commit/4a165a59bed66d3a9510eb45f5b1dd5bbda916f0 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-01 (Sat, 01 Aug 2026) Changed paths: M Dockerfile M docker/ubuntu/Dockerfile Log Message: ----------- CI(deps): Update dependency OSGeo/gdal to v3.13.2 (main) (#7796) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 1 03:51:12 2026 From: noreply at github.com (renovate[bot]) Date: Sat, 01 Aug 2026 03:51:12 -0700 Subject: [GRASS-git] [OSGeo/grass] Message-ID: Branch: refs/heads/renovate/main-osgeo-gdal-3.x Home: https://github.com/OSGeo/grass To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 1 04:09:55 2026 From: noreply at github.com (renovate[bot]) Date: Sat, 01 Aug 2026 04:09:55 -0700 Subject: [GRASS-git] [OSGeo/grass] 365d9a: CI(deps): Update dependency mkdocs-material to v9.... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 365d9acf6e904ea0f639f717972c2b1244d8f79f https://github.com/OSGeo/grass/commit/365d9acf6e904ea0f639f717972c2b1244d8f79f Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-01 (Sat, 01 Aug 2026) Changed paths: M man/mkdocs/requirements.txt Log Message: ----------- CI(deps): Update dependency mkdocs-material to v9.7.7 (main) (#7795) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 1 04:11:36 2026 From: noreply at github.com (renovate[bot]) Date: Sat, 01 Aug 2026 04:11:36 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] db5fd4: CI(deps): Update dependency prek to v0.4.11 (#1812) Message-ID: Branch: refs/heads/grass8 Home: https://github.com/OSGeo/grass-addons Commit: db5fd4d6bcff29c33373d6c0b452fa758bb5548b https://github.com/OSGeo/grass-addons/commit/db5fd4d6bcff29c33373d6c0b452fa758bb5548b Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-01 (Sat, 01 Aug 2026) Changed paths: M .github/workflows/additional_checks.yml Log Message: ----------- CI(deps): Update dependency prek to v0.4.11 (#1812) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Sat Aug 1 04:11:40 2026 From: noreply at github.com (renovate[bot]) Date: Sat, 01 Aug 2026 04:11:40 -0700 Subject: [GRASS-git] [OSGeo/grass] Message-ID: Branch: refs/heads/renovate/main-mkdocs-material-9.x Home: https://github.com/OSGeo/grass To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 1 04:12:50 2026 From: noreply at github.com (renovate[bot]) Date: Sat, 01 Aug 2026 04:12:50 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] Message-ID: Branch: refs/heads/renovate/prek-0.x Home: https://github.com/OSGeo/grass-addons To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Sat Aug 1 09:33:30 2026 From: noreply at github.com (=?UTF-8?B?RWRvdWFyZCBDaG9pbmnDqHJl?=) Date: Sat, 01 Aug 2026 09:33:30 -0700 Subject: [GRASS-git] [OSGeo/grass] 8db4c0: locale: Update translation files Message-ID: Branch: refs/heads/periodic/update-i18n-30708188015 Home: https://github.com/OSGeo/grass Commit: 8db4c0509cf04ddfb41b486b49f720cbd539a96c https://github.com/OSGeo/grass/commit/8db4c0509cf04ddfb41b486b49f720cbd539a96c Author: echoix <27212526+echoix at users.noreply.github.com> Date: 2026-08-01 (Sat, 01 Aug 2026) Changed paths: M locale/templates/grasslibs.pot M locale/templates/grassmods.pot M locale/templates/grasswxpy.pot Log Message: ----------- locale: Update translation files To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 1 09:35:38 2026 From: noreply at github.com (github-actions[bot]) Date: Sat, 01 Aug 2026 09:35:38 -0700 Subject: [GRASS-git] [OSGeo/grass] b152bf: locale: Update translation files (117) (#7797) Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: b152bfd74edc406e9d36c5426130efa4b97b672e https://github.com/OSGeo/grass/commit/b152bfd74edc406e9d36c5426130efa4b97b672e Author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Date: 2026-08-01 (Sat, 01 Aug 2026) Changed paths: M locale/templates/grasslibs.pot M locale/templates/grassmods.pot M locale/templates/grasswxpy.pot Log Message: ----------- locale: Update translation files (117) (#7797) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 1 09:35:41 2026 From: noreply at github.com (=?UTF-8?B?RWRvdWFyZCBDaG9pbmnDqHJl?=) Date: Sat, 01 Aug 2026 09:35:41 -0700 Subject: [GRASS-git] [OSGeo/grass] Message-ID: Branch: refs/heads/periodic/update-i18n-30708188015 Home: https://github.com/OSGeo/grass To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 1 09:40:13 2026 From: noreply at github.com (=?UTF-8?B?RWRvdWFyZCBDaG9pbmnDqHJl?=) Date: Sat, 01 Aug 2026 09:40:13 -0700 Subject: [GRASS-git] [OSGeo/grass] 772d91: config.guess + config.sub: updated from http://git... Message-ID: Branch: refs/heads/periodic/update-configure Home: https://github.com/OSGeo/grass Commit: 772d910a5b2c55f1a4ce44c34b4801ab5b6bfad4 https://github.com/OSGeo/grass/commit/772d910a5b2c55f1a4ce44c34b4801ab5b6bfad4 Author: echoix <27212526+echoix at users.noreply.github.com> Date: 2026-08-01 (Sat, 01 Aug 2026) Changed paths: R config.guess Log Message: ----------- config.guess + config.sub: updated from http://git.savannah.gnu.org/cgit/config.git/plain/ To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 1 09:43:48 2026 From: noreply at github.com (=?UTF-8?B?RWRvdWFyZCBDaG9pbmnDqHJl?=) Date: Sat, 01 Aug 2026 09:43:48 -0700 Subject: [GRASS-git] [OSGeo/grass] 148806: locale: Update translation files Message-ID: Branch: refs/heads/periodic/update-i18n-30708485316 Home: https://github.com/OSGeo/grass Commit: 1488060825cf9833b749af50979e599b5e82b253 https://github.com/OSGeo/grass/commit/1488060825cf9833b749af50979e599b5e82b253 Author: echoix <27212526+echoix at users.noreply.github.com> Date: 2026-08-01 (Sat, 01 Aug 2026) Changed paths: M locale/templates/grasslibs.pot M locale/templates/grassmods.pot M locale/templates/grasswxpy.pot Log Message: ----------- locale: Update translation files To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 1 10:12:06 2026 From: noreply at github.com (=?UTF-8?B?RWRvdWFyZCBDaG9pbmnDqHJl?=) Date: Sat, 01 Aug 2026 10:12:06 -0700 Subject: [GRASS-git] [OSGeo/grass] Message-ID: Branch: refs/heads/periodic/update-i18n-30708485316 Home: https://github.com/OSGeo/grass To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 1 10:12:14 2026 From: noreply at github.com (=?UTF-8?B?RWRvdWFyZCBDaG9pbmnDqHJl?=) Date: Sat, 01 Aug 2026 10:12:14 -0700 Subject: [GRASS-git] [OSGeo/grass] Message-ID: Branch: refs/heads/periodic/update-configure Home: https://github.com/OSGeo/grass To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 1 10:15:03 2026 From: noreply at github.com (renovate[bot]) Date: Sat, 01 Aug 2026 10:15:03 -0700 Subject: [GRASS-git] [OSGeo/grass] 05c224: CI(deps): Update debian Docker tag to v13.6 Message-ID: Branch: refs/heads/renovate/main-debian-13.x Home: https://github.com/OSGeo/grass Commit: 05c2240da90f75b7197a3721d110aab6f3b55f81 https://github.com/OSGeo/grass/commit/05c2240da90f75b7197a3721d110aab6f3b55f81 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-01 (Sat, 01 Aug 2026) Changed paths: M docker/debian/Dockerfile Log Message: ----------- CI(deps): Update debian Docker tag to v13.6 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 1 10:15:10 2026 From: noreply at github.com (renovate[bot]) Date: Sat, 01 Aug 2026 10:15:10 -0700 Subject: [GRASS-git] [OSGeo/grass] 458532: CI(deps): Update actions/setup-python action to v7 Message-ID: Branch: refs/heads/renovate/main-actions-setup-python-7.x Home: https://github.com/OSGeo/grass Commit: 458532096255935dc4f2e709b25a1447c97d8490 https://github.com/OSGeo/grass/commit/458532096255935dc4f2e709b25a1447c97d8490 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-01 (Sat, 01 Aug 2026) Changed paths: M .github/workflows/additional_checks.yml M .github/workflows/codeql-analysis.yml M .github/workflows/create_release_draft.yml M .github/workflows/documentation.yml M .github/workflows/pytest.yml M .github/workflows/python-code-quality.yml Log Message: ----------- CI(deps): Update actions/setup-python action to v7 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 1 11:48:09 2026 From: noreply at github.com (renovate[bot]) Date: Sat, 01 Aug 2026 11:48:09 -0700 Subject: [GRASS-git] [OSGeo/grass] 90b1ef: CI(deps): Update debian Docker tag to v13.6 (main)... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 90b1efabec0276be79ef251e84a0966da9be07b5 https://github.com/OSGeo/grass/commit/90b1efabec0276be79ef251e84a0966da9be07b5 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-01 (Sat, 01 Aug 2026) Changed paths: M docker/debian/Dockerfile Log Message: ----------- CI(deps): Update debian Docker tag to v13.6 (main) (#7800) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 1 11:49:16 2026 From: noreply at github.com (renovate[bot]) Date: Sat, 01 Aug 2026 11:49:16 -0700 Subject: [GRASS-git] [OSGeo/grass] Message-ID: Branch: refs/heads/renovate/main-debian-13.x Home: https://github.com/OSGeo/grass To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 1 12:06:44 2026 From: noreply at github.com (renovate[bot]) Date: Sat, 01 Aug 2026 12:06:44 -0700 Subject: [GRASS-git] [OSGeo/grass] 45e081: CI(deps): Update actions/setup-python action to v7... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 45e081e1806da56148db74c6eabeda25ed41c732 https://github.com/OSGeo/grass/commit/45e081e1806da56148db74c6eabeda25ed41c732 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-01 (Sat, 01 Aug 2026) Changed paths: M .github/workflows/additional_checks.yml M .github/workflows/codeql-analysis.yml M .github/workflows/create_release_draft.yml M .github/workflows/documentation.yml M .github/workflows/pytest.yml M .github/workflows/python-code-quality.yml Log Message: ----------- CI(deps): Update actions/setup-python action to v7 (main) (#7801) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 1 12:08:04 2026 From: noreply at github.com (renovate[bot]) Date: Sat, 01 Aug 2026 12:08:04 -0700 Subject: [GRASS-git] [OSGeo/grass] Message-ID: Branch: refs/heads/renovate/main-actions-setup-python-7.x Home: https://github.com/OSGeo/grass To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sun Aug 2 10:21:10 2026 From: noreply at github.com (Paulo van Breugel) Date: Sun, 02 Aug 2026 10:21:10 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] 90b2b6: style: Standardize parameters and add a Matplotlib... Message-ID: Branch: refs/heads/grass8 Home: https://github.com/OSGeo/grass-addons Commit: 90b2b6dd8a29f7693b01ab3d666afdafa6d1304a https://github.com/OSGeo/grass-addons/commit/90b2b6dd8a29f7693b01ab3d666afdafa6d1304a Author: Paulo van Breugel Date: 2026-08-02 (Sun, 02 Aug 2026) Changed paths: M src/raster/r.boxplot/r.boxplot.html M src/raster/r.boxplot/r.boxplot.md M src/raster/r.boxplot/r.boxplot.py M src/raster/r.series.boxplot/r.series.boxplot.html M src/raster/r.series.boxplot/r.series.boxplot.md M src/raster/r.series.boxplot/r.series.boxplot.py M src/raster/r.series.boxplot/r_series_boxplot_2.png M src/temporal/t.rast.boxplot/t.rast.boxplot.html M src/temporal/t.rast.boxplot/t.rast.boxplot.md M src/temporal/t.rast.boxplot/t.rast.boxplot.py M src/temporal/t.rast.line/t.rast.line.md M src/temporal/t.rast.line/t.rast.line.py M src/temporal/t.rast.stl/t.rast.stl.html M src/temporal/t.rast.stl/t.rast.stl.md M src/temporal/t.rast.stl/t.rast.stl.py M src/vector/v.boxplot/v.boxplot.html M src/vector/v.boxplot/v.boxplot.md M src/vector/v.boxplot/v.boxplot.py M src/vector/v.boxplot/v_boxplot_02.png M src/vector/v.histogram/v.histogram.html M src/vector/v.histogram/v.histogram.md M src/vector/v.histogram/v.histogram.py R src/vector/v.histogram/v_histogram.png A src/vector/v.histogram/v_histogram_01.png A src/vector/v.histogram/v_histogram_02.png M src/vector/v.scatterplot/v.scatterplot.html M src/vector/v.scatterplot/v.scatterplot.md M src/vector/v.scatterplot/v.scatterplot.py Log Message: ----------- style: Standardize parameters and add a Matplotlib style option across plotting addons (#1793) * Standardize terminology, parameters, and options across plotting addons Following issue #1071, this PR standardizes parameter names, options, and guisections in five modules. In that issue, there was the question of whether backward compatibility was required. The preference, which I followed, no backward compatibility (i.e., these are breaking for scripts calling the old parameter names). ### Naming convention Standardised the boxplot parameter family on full words: `bx` ? `box` and `lw` ? `linewidth`: * **r.series.boxplot**: `bxcolor` ? `box_color`, `boxplot_width` ? `box_width` * **v.boxplot**: `bx_color` ? `box_color`, `bx_blcolor` ? `box_bordercolor`, `bx_width` ? `box_width`, `bx_lw` ? `box_linewidth`, `median_lw` ? `median_linewidth` ### New parameters * **`title`** an option in `v.scatterplot`, added to t.rast.line, t.rast.stl, r.series.boxplot, and v.boxplot.Default is no title. * **`fontsize`** added to t.rast.stl; legend text scales to the base font size. * **`line_width`** added to t.rast.stl, applied to the series lines. * **`x_label`** / **`y_label`** overrides added to v.scatterplot (fall back to the column names). * **r.series.boxplot**: added `box_linewidth`, `median_linewidth`, `median_color`, and `whisker_linewidth`. * **v.boxplot**: added `whisker_linewidth` (whisker/cap width is now separate from the box border width). * fixed inconsistencies in manual pages, Including old inconcistencies * fix manual page, add style sheet option * Standardization parameter names, update/fix manual pages, added style sheet option * align parameter names r.boxplot * align parameter names t.rast.boxplot * remove end-off-line whitespace * align parameter names v.histogram * Apply suggestions from code review To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Sun Aug 2 10:46:58 2026 From: noreply at github.com (Paulo van Breugel) Date: Sun, 02 Aug 2026 10:46:58 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] ea377a: r.color.trim: bugfix (#1813) Message-ID: Branch: refs/heads/grass8 Home: https://github.com/OSGeo/grass-addons Commit: ea377a4caad4d2977a0a9aa77a24fa5d7d0f98aa https://github.com/OSGeo/grass-addons/commit/ea377a4caad4d2977a0a9aa77a24fa5d7d0f98aa Author: Paulo van Breugel Date: 2026-08-02 (Sun, 02 Aug 2026) Changed paths: M src/raster/r.category.trim/r.category.trim.py Log Message: ----------- r.color.trim: bugfix (#1813) r.category.trim bugfix: Solved error in handling inf and -inf in color table To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Sun Aug 2 10:48:31 2026 From: noreply at github.com (renovate[bot]) Date: Sun, 02 Aug 2026 10:48:31 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] bc8dc9: CI(deps): Update actions/checkout action to v7.0.1... Message-ID: Branch: refs/heads/grass8 Home: https://github.com/OSGeo/grass-addons Commit: bc8dc9d5a24046fd0f071b612e6bca13ce2364a1 https://github.com/OSGeo/grass-addons/commit/bc8dc9d5a24046fd0f071b612e6bca13ce2364a1 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-02 (Sun, 02 Aug 2026) Changed paths: M .github/workflows/additional_checks.yml M .github/workflows/ci.yml M .github/workflows/flake8.yml M .github/workflows/linting.yml M .github/workflows/super-linter.yml Log Message: ----------- CI(deps): Update actions/checkout action to v7.0.1 (#1811) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Sun Aug 2 10:48:35 2026 From: noreply at github.com (=?UTF-8?B?RWRvdWFyZCBDaG9pbmnDqHJl?=) Date: Sun, 02 Aug 2026 10:48:35 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] Message-ID: Branch: refs/heads/renovate/actions-checkout-7.x Home: https://github.com/OSGeo/grass-addons To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Sun Aug 2 10:50:55 2026 From: noreply at github.com (renovate[bot]) Date: Sun, 02 Aug 2026 10:50:55 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] 0cdc62: CI(deps): Update pre-commit hook zizmorcore/zizmor... Message-ID: Branch: refs/heads/renovate/zizmorcore-zizmor-pre-commit-1.x Home: https://github.com/OSGeo/grass-addons Commit: 0cdc628a2ff11475a4afffdf5ea749ea61e8f9a6 https://github.com/OSGeo/grass-addons/commit/0cdc628a2ff11475a4afffdf5ea749ea61e8f9a6 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-02 (Sun, 02 Aug 2026) Changed paths: M .pre-commit-config.yaml Log Message: ----------- CI(deps): Update pre-commit hook zizmorcore/zizmor-pre-commit to v1.29.0 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Sun Aug 2 10:51:00 2026 From: noreply at github.com (renovate[bot]) Date: Sun, 02 Aug 2026 10:51:00 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] d90c87: CI(deps): Update super-linter/super-linter action ... Message-ID: Branch: refs/heads/renovate/super-linter-super-linter-8.x Home: https://github.com/OSGeo/grass-addons Commit: d90c87c561eccd533f332f1e258db5d449858661 https://github.com/OSGeo/grass-addons/commit/d90c87c561eccd533f332f1e258db5d449858661 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-02 (Sun, 02 Aug 2026) Changed paths: M .github/workflows/super-linter.yml Log Message: ----------- CI(deps): Update super-linter/super-linter action to v8.7.0 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Sun Aug 2 11:03:32 2026 From: noreply at github.com (Paulo van Breugel) Date: Sun, 02 Aug 2026 11:03:32 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] f356f8: r.suitability.region: added parallel (nprocs) and ... Message-ID: Branch: refs/heads/grass8 Home: https://github.com/OSGeo/grass-addons Commit: f356f8d2cdad91f468b27aa6db4fa874bec05466 https://github.com/OSGeo/grass-addons/commit/f356f8d2cdad91f468b27aa6db4fa874bec05466 Author: Paulo van Breugel Date: 2026-08-02 (Sun, 02 Aug 2026) Changed paths: M src/raster/r.suitability.regions/r.suitability.regions.py Log Message: ----------- r.suitability.region: added parallel (nprocs) and memory options (#1814) * corrections * Update r.suitability.regions.py * fixed syntax error To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Sun Aug 2 11:07:06 2026 From: noreply at github.com (Corey White) Date: Sun, 02 Aug 2026 11:07:06 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] 1bf02b: r.colors.matplotlib: Fix for color map references ... Message-ID: Branch: refs/heads/grass8 Home: https://github.com/OSGeo/grass-addons Commit: 1bf02b9218607032c13f107035e122838d520c2a https://github.com/OSGeo/grass-addons/commit/1bf02b9218607032c13f107035e122838d520c2a Author: Corey White Date: 2026-08-02 (Sun, 02 Aug 2026) Changed paths: M src/raster/r.colors.matplotlib/r.colors.matplotlib.py Log Message: ----------- r.colors.matplotlib: Fix for color map references with Matplotlib >=3.9 (#1808) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Sun Aug 2 12:21:34 2026 From: noreply at github.com (Paulo van Breugel) Date: Sun, 02 Aug 2026 12:21:34 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] 3bfdd7: r.maxent.* update manual page: include link to tut... Message-ID: Branch: refs/heads/grass8 Home: https://github.com/OSGeo/grass-addons Commit: 3bfdd756a94fff14ba583c816d1d5cd78ff3938a https://github.com/OSGeo/grass-addons/commit/3bfdd756a94fff14ba583c816d1d5cd78ff3938a Author: Paulo van Breugel Date: 2026-08-02 (Sun, 02 Aug 2026) Changed paths: M src/raster/r.maxent.predict/r.maxent.predict.md M src/raster/r.maxent.train/r.maxent.train.md Log Message: ----------- r.maxent.* update manual page: include link to tutorials (#1815) r.maxent.* update manual page: include link to tutorials To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Sun Aug 2 12:22:46 2026 From: noreply at github.com (Paulo van Breugel) Date: Sun, 02 Aug 2026 12:22:46 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] f81211: r.in.vect: GDAL/NumPy imports done after the parse... Message-ID: Branch: refs/heads/grass8 Home: https://github.com/OSGeo/grass-addons Commit: f812111253976b391366ecbf2796326fbf041dd5 https://github.com/OSGeo/grass-addons/commit/f812111253976b391366ecbf2796326fbf041dd5 Author: Paulo van Breugel Date: 2026-08-02 (Sun, 02 Aug 2026) Changed paths: M src/raster/r.in.vect/r.in.vect.py Log Message: ----------- r.in.vect: GDAL/NumPy imports done after the parser (#1816) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Sun Aug 2 14:13:48 2026 From: noreply at github.com (Paulo van Breugel) Date: Sun, 02 Aug 2026 14:13:48 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] 05c669: r.boxplot: fix notch computation and add nprocs (#... Message-ID: Branch: refs/heads/grass8 Home: https://github.com/OSGeo/grass-addons Commit: 05c669b08c5919b569f567df48f4a506843d5b60 https://github.com/OSGeo/grass-addons/commit/05c669b08c5919b569f567df48f4a506843d5b60 Author: Paulo van Breugel Date: 2026-08-02 (Sun, 02 Aug 2026) Changed paths: M src/raster/r.boxplot/r.boxplot.py Log Message: ----------- r.boxplot: fix notch computation and add nprocs (#1819) * correct how notches are computed * add nprocs To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Sun Aug 2 21:01:19 2026 From: noreply at github.com (renovate[bot]) Date: Sun, 02 Aug 2026 21:01:19 -0700 Subject: [GRASS-git] [OSGeo/grass-website] 224c5e: Update dependency prek to v0.4.11 (#682) Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass-website Commit: 224c5efda3ed7fb932cbd0945df413b7caec586b https://github.com/OSGeo/grass-website/commit/224c5efda3ed7fb932cbd0945df413b7caec586b Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-03 (Mon, 03 Aug 2026) Changed paths: M .github/workflows/additional_checks.yml Log Message: ----------- Update dependency prek to v0.4.11 (#682) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Sun Aug 2 21:01:59 2026 From: noreply at github.com (renovate[bot]) Date: Sun, 02 Aug 2026 21:01:59 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/heads/renovate/prek-0.x Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Sun Aug 2 21:02:13 2026 From: noreply at github.com (renovate[bot]) Date: Sun, 02 Aug 2026 21:02:13 -0700 Subject: [GRASS-git] [OSGeo/grass-website] 70e5a8: Update dependency ol to v10.10.0 (#683) Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass-website Commit: 70e5a88c63e25b03aedb680ed11f8a9a2132a2a5 https://github.com/OSGeo/grass-website/commit/70e5a88c63e25b03aedb680ed11f8a9a2132a2a5 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-03 (Mon, 03 Aug 2026) Changed paths: M package-lock.json Log Message: ----------- Update dependency ol to v10.10.0 (#683) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Sun Aug 2 21:03:04 2026 From: noreply at github.com (renovate[bot]) Date: Sun, 02 Aug 2026 21:03:04 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/heads/renovate/ol-10.x-lockfile Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Sun Aug 2 21:03:42 2026 From: noreply at github.com (github-actions[bot]) Date: Sun, 02 Aug 2026 21:03:42 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/tags/site-20260803-040309-70e5a88 Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Sun Aug 2 21:03:44 2026 From: noreply at github.com (github-actions[bot]) Date: Sun, 02 Aug 2026 21:03:44 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/tags/site-20260723-003320-b4bbab1 Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Mon Aug 3 07:37:03 2026 From: noreply at github.com (renovate[bot]) Date: Mon, 03 Aug 2026 07:37:03 -0700 Subject: [GRASS-git] [OSGeo/grass-website] ba1531: Update dependency prek to v0.4.12 Message-ID: Branch: refs/heads/renovate/prek-0.x Home: https://github.com/OSGeo/grass-website Commit: ba1531114a346ca5e7c2e7023753244020616cad https://github.com/OSGeo/grass-website/commit/ba1531114a346ca5e7c2e7023753244020616cad Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-03 (Mon, 03 Aug 2026) Changed paths: M .github/workflows/additional_checks.yml Log Message: ----------- Update dependency prek to v0.4.12 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Mon Aug 3 08:59:13 2026 From: noreply at github.com (Vinay Kumar Chopra) Date: Mon, 03 Aug 2026 08:59:13 -0700 Subject: [GRASS-git] [OSGeo/grass] 28e384: r.resamp.stats: Fix quantile option being truncate... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 28e384229dc2527a7ea4b04c78d4004ef0401388 https://github.com/OSGeo/grass/commit/28e384229dc2527a7ea4b04c78d4004ef0401388 Author: Vinay Kumar Chopra <147031659+HUN-sp at users.noreply.github.com> Date: 2026-08-03 (Mon, 03 Aug 2026) Changed paths: M raster/r.resamp.stats/main.c Log Message: ----------- r.resamp.stats: Fix quantile option being truncated to an integer (#7791) The quantile variable is a double, but its value was parsed with atoi, so any quantile below 1.0 became 0 and method=quantile returned the minimum regardless of the requested quantile. Use atof, as r.neighbors, r.series and r3.neighbors already do for the same option. To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Mon Aug 3 09:07:25 2026 From: noreply at github.com (Markus Neteler) Date: Mon, 03 Aug 2026 09:07:25 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] 1fffc7: i.lmf: fix compiler errors (-Wreturn-mismatch) and... Message-ID: Branch: refs/heads/grass8 Home: https://github.com/OSGeo/grass-addons Commit: 1fffc78a3a64044018bbff49f55c41b396c1299b https://github.com/OSGeo/grass-addons/commit/1fffc78a3a64044018bbff49f55c41b396c1299b Author: Markus Neteler Date: 2026-08-03 (Mon, 03 Aug 2026) Changed paths: M src/imagery/i.lmf/fitting.c M src/imagery/i.lmf/invert_matrix.c M src/imagery/i.lmf/lmf.c M src/imagery/i.lmf/main.c M src/imagery/i.lmf/make_matrix.c M src/imagery/i.lmf/maxmin.c M src/imagery/i.lmf/minmax.c Log Message: ----------- i.lmf: fix compiler errors (-Wreturn-mismatch) and warnings (#1774) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Mon Aug 3 09:37:44 2026 From: noreply at github.com (renovate[bot]) Date: Mon, 03 Aug 2026 09:37:44 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] 144c72: CI(deps): Update pre-commit hook zizmorcore/zizmor... Message-ID: Branch: refs/heads/grass8 Home: https://github.com/OSGeo/grass-addons Commit: 144c7285dac47a925f60eeb76ddb2a956c071f97 https://github.com/OSGeo/grass-addons/commit/144c7285dac47a925f60eeb76ddb2a956c071f97 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-03 (Mon, 03 Aug 2026) Changed paths: M .pre-commit-config.yaml Log Message: ----------- CI(deps): Update pre-commit hook zizmorcore/zizmor-pre-commit to v1.29.0 (#1817) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Mon Aug 3 09:38:15 2026 From: noreply at github.com (renovate[bot]) Date: Mon, 03 Aug 2026 09:38:15 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] d7a21a: CI(deps): Update super-linter/super-linter action ... Message-ID: Branch: refs/heads/grass8 Home: https://github.com/OSGeo/grass-addons Commit: d7a21a4c6022a04e16f8710d272f2666d8520bad https://github.com/OSGeo/grass-addons/commit/d7a21a4c6022a04e16f8710d272f2666d8520bad Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-03 (Mon, 03 Aug 2026) Changed paths: M .github/workflows/super-linter.yml Log Message: ----------- CI(deps): Update super-linter/super-linter action to v8.7.0 (#1818) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Mon Aug 3 09:39:03 2026 From: noreply at github.com (renovate[bot]) Date: Mon, 03 Aug 2026 09:39:03 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] Message-ID: Branch: refs/heads/renovate/super-linter-super-linter-8.x Home: https://github.com/OSGeo/grass-addons To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Mon Aug 3 09:39:04 2026 From: noreply at github.com (renovate[bot]) Date: Mon, 03 Aug 2026 09:39:04 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] Message-ID: Branch: refs/heads/renovate/zizmorcore-zizmor-pre-commit-1.x Home: https://github.com/OSGeo/grass-addons To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Mon Aug 3 13:03:06 2026 From: noreply at github.com (Corey White) Date: Mon, 03 Aug 2026 13:03:06 -0700 Subject: [GRASS-git] [OSGeo/grass-website] 315726: learn/overview: Converted html to markdown and add... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass-website Commit: 315726e5003058b4a04490db03d36bd468941790 https://github.com/OSGeo/grass-website/commit/315726e5003058b4a04490db03d36bd468941790 Author: Corey White Date: 2026-08-03 (Mon, 03 Aug 2026) Changed paths: M content/learn/overview.md A static/images/addons/number_seasons_ndvi.png A themes/grass/layouts/shortcodes/columns.html Log Message: ----------- learn/overview: Converted html to markdown and addressed issue (#679) (#685) * learn/overview: Coverted html to markdown and addressed issue (#679) * Apply suggestions from code review Co-authored-by: Corey White * Apply suggestion from @cwhite911 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Mon Aug 3 13:04:15 2026 From: noreply at github.com (github-actions[bot]) Date: Mon, 03 Aug 2026 13:04:15 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/tags/site-20260803-200345-315726e Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Mon Aug 3 13:04:16 2026 From: noreply at github.com (github-actions[bot]) Date: Mon, 03 Aug 2026 13:04:16 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/tags/site-20260724-023000-1d1fa73 Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Mon Aug 3 17:09:20 2026 From: noreply at github.com (renovate[bot]) Date: Mon, 03 Aug 2026 17:09:20 -0700 Subject: [GRASS-git] [OSGeo/grass-website] aefb2b: Update Node.js to v24.18.1 (#684) Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass-website Commit: aefb2b3c314503aa6f74294922c1d4954888f049 https://github.com/OSGeo/grass-website/commit/aefb2b3c314503aa6f74294922c1d4954888f049 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-03 (Mon, 03 Aug 2026) Changed paths: M .devcontainer/devcontainer.json M .nvmrc Log Message: ----------- Update Node.js to v24.18.1 (#684) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Mon Aug 3 17:10:44 2026 From: noreply at github.com (renovate[bot]) Date: Mon, 03 Aug 2026 17:10:44 -0700 Subject: [GRASS-git] [OSGeo/grass-website] 14fa90: Update Node.js to v24.19.0 Message-ID: Branch: refs/heads/renovate/node-24.x Home: https://github.com/OSGeo/grass-website Commit: 14fa902e4f9298168a67ddf8d1295571c013ccaf https://github.com/OSGeo/grass-website/commit/14fa902e4f9298168a67ddf8d1295571c013ccaf Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-04 (Tue, 04 Aug 2026) Changed paths: M .devcontainer/devcontainer.json M .nvmrc Log Message: ----------- Update Node.js to v24.19.0 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Mon Aug 3 17:10:47 2026 From: noreply at github.com (github-actions[bot]) Date: Mon, 03 Aug 2026 17:10:47 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/tags/site-20260804-001014-aefb2b3 Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Mon Aug 3 17:10:49 2026 From: noreply at github.com (github-actions[bot]) Date: Mon, 03 Aug 2026 17:10:49 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/tags/site-20260724-143951-ed6a097 Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Tue Aug 4 09:51:16 2026 From: noreply at github.com (Paulo van Breugel) Date: Tue, 04 Aug 2026 09:51:16 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] 99f491: Update image reference in r.barplot documentation Message-ID: Branch: refs/heads/ecodiv-patch-1 Home: https://github.com/OSGeo/grass-addons Commit: 99f491acbe046ee5712f2b8bd145c4c774f1e7d8 https://github.com/OSGeo/grass-addons/commit/99f491acbe046ee5712f2b8bd145c4c774f1e7d8 Author: Paulo van Breugel Date: 2026-08-04 (Tue, 04 Aug 2026) Changed paths: M src/raster/r.barplot/r.barplot.md Log Message: ----------- Update image reference in r.barplot documentation fixed wrong path to image To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Tue Aug 4 10:36:35 2026 From: noreply at github.com (Paulo van Breugel) Date: Tue, 04 Aug 2026 10:36:35 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] f37aa8: Update image reference in r.barplot documentation ... Message-ID: Branch: refs/heads/grass8 Home: https://github.com/OSGeo/grass-addons Commit: f37aa82e3d66c321e07ba5389ff3cdd4843fda29 https://github.com/OSGeo/grass-addons/commit/f37aa82e3d66c321e07ba5389ff3cdd4843fda29 Author: Paulo van Breugel Date: 2026-08-04 (Tue, 04 Aug 2026) Changed paths: M src/raster/r.barplot/r.barplot.md Log Message: ----------- Update image reference in r.barplot documentation (#1821) fixed wrong path to image To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Tue Aug 4 12:03:42 2026 From: noreply at github.com (Antonio Galea) Date: Tue, 04 Aug 2026 12:03:42 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] 3e66e3: CI: New workflow for compiling addons on Windows (... Message-ID: Branch: refs/heads/grass8 Home: https://github.com/OSGeo/grass-addons Commit: 3e66e34772d7c2279006634b11445252191036e3 https://github.com/OSGeo/grass-addons/commit/3e66e34772d7c2279006634b11445252191036e3 Author: Antonio Galea Date: 2026-08-04 (Tue, 04 Aug 2026) Changed paths: A .github/workflows/ci-windows.yml A .github/workflows/windows_addons_compile.sh Log Message: ----------- CI: New workflow for compiling addons on Windows (#1796) * new workflow for compiling addons on windows * Update .github/workflows/windows_addons_compile.sh * Update .github/workflows/ci-windows.yml * Dropping the use of parallel, as linting tools aren't ready yet here (actionlint) * Change indenting by 2 instead of 3 in ci-windows.yml * Fix formatting of ci-windows.yml; remove extra blank line --------- Co-authored-by: Edouard Choini?re <27212526+echoix at users.noreply.github.com> To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Tue Aug 4 12:22:28 2026 From: noreply at github.com (Corey White) Date: Tue, 04 Aug 2026 12:22:28 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/heads/hugo-deprecations Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Tue Aug 4 12:22:32 2026 From: noreply at github.com (Corey White) Date: Tue, 04 Aug 2026 12:22:32 -0700 Subject: [GRASS-git] [OSGeo/grass-website] dee76d: Templates: real base template, convert home, 404, ... Message-ID: Branch: refs/heads/baseof-conversion Home: https://github.com/OSGeo/grass-website Commit: dee76dd9e5c32987b31ba52b91745cdac4857707 https://github.com/OSGeo/grass-website/commit/dee76dd9e5c32987b31ba52b91745cdac4857707 Author: Corey White Date: 2026-08-03 (Mon, 03 Aug 2026) Changed paths: M themes/grass/layouts/404.html M themes/grass/layouts/_default/baseof.html M themes/grass/layouts/_default/list.html M themes/grass/layouts/_default/single.html M themes/grass/layouts/index.html A themes/grass/layouts/partials/head/analytics.html A themes/grass/layouts/partials/head/assets.html A themes/grass/layouts/partials/head/favicons.html A themes/grass/layouts/partials/head/meta.html A themes/grass/layouts/partials/page-header.html A themes/grass/layouts/partials/prev-next.html A themes/grass/layouts/partials/scripts.html A themes/grass/layouts/partials/sidebar-menu.html A themes/grass/layouts/partials/site-footer.html Log Message: ----------- Templates: real base template, convert home, 404, and _default baseof.html now owns the document scaffolding (doctype, head, body, header block, main landmark, footer, scripts) through new head/*, page-header, site-footer, and scripts partials. Pages define header and main blocks. single.html's colliding define menu / define pagination become the sidebar-menu and prev-next partials. Output change is limited to the new
landmark. Commit: 26849fcdc1cc7dd78181bfcc83d8d5087a487d2d https://github.com/OSGeo/grass-website/commit/26849fcdc1cc7dd78181bfcc83d8d5087a487d2d Author: Corey White Date: 2026-08-03 (Mon, 03 Aug 2026) Changed paths: M themes/grass/layouts/_default/baseof.html M themes/grass/layouts/about/brand.html M themes/grass/layouts/about/community-map.html M themes/grass/layouts/about/credits.html M themes/grass/layouts/about/general.html M themes/grass/layouts/about/governance.html M themes/grass/layouts/about/list.html M themes/grass/layouts/about/overview.html M themes/grass/layouts/about/roadmap.html M themes/grass/layouts/about/team.html M themes/grass/layouts/about/theme.html M themes/grass/layouts/about/timeline.html M themes/grass/layouts/contribute/contribute.html M themes/grass/layouts/contribute/devel.html M themes/grass/layouts/contribute/general.html M themes/grass/layouts/contribute/list.html M themes/grass/layouts/download/addons.html M themes/grass/layouts/download/data.html M themes/grass/layouts/download/single.html M themes/grass/layouts/download/tabs.html M themes/grass/layouts/events/allevents.html M themes/grass/layouts/events/event.html M themes/grass/layouts/learn/books.html M themes/grass/layouts/learn/gallery.html M themes/grass/layouts/learn/general.html M themes/grass/layouts/learn/list.html M themes/grass/layouts/learn/manuals.html M themes/grass/layouts/learn/overview.html M themes/grass/layouts/news/allnews.html M themes/grass/layouts/news/news.html M themes/grass/layouts/partials/footer.html R themes/grass/layouts/partials/head.html A themes/grass/layouts/partials/sidebar-menu-contribute.html A themes/grass/layouts/partials/sidebar-menu-download.html R themes/grass/layouts/partials/site-footer.html M themes/grass/layouts/sponsor/donate.html M themes/grass/layouts/support/commercial.html M themes/grass/layouts/support/community.html M themes/grass/layouts/support/support.html Log Message: ----------- Templates: convert all remaining page templates to the base template Mechanical conversion of 34 templates: the repeated header stanza becomes page-header options (or a header block override for the pages whose banner sits outside the header), bodies wrap in define main, and head.html is deleted. download and contribute sidebars move to their own partials, ending the parse-order collision between three global define menu templates. Side effects, all verified in the output diff: contribute-layout pages render their own sidebar variant again, roadmap's stray closing tags after the footer are gone, and theme's unclosed fixed-top div is closed. Commit: e0a6d859a61990264567522eb0ae67d7a48d7ff5 https://github.com/OSGeo/grass-website/commit/e0a6d859a61990264567522eb0ae67d7a48d7ff5 Author: Corey White Date: 2026-08-03 (Mon, 03 Aug 2026) Changed paths: M themes/grass/layouts/partials/sidebar-menu.html Log Message: ----------- Fix sidebar-menu File scoping for current Hugo The tree item rendered inside unclosed 'with .File' blocks, so .IsAncestor executed against the File object; old Hugo shimmed that, current Hugo errors. Close the scopes and compare RelPermalink. 0.113 output is unchanged. Compare: https://github.com/OSGeo/grass-website/compare/dee76dd9e5c3%5E...e0a6d859a619 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Tue Aug 4 12:23:49 2026 From: noreply at github.com (Corey White) Date: Tue, 04 Aug 2026 12:23:49 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/heads/hugo-deprecations Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Tue Aug 4 12:23:49 2026 From: noreply at github.com (Corey White) Date: Tue, 04 Aug 2026 12:23:49 -0700 Subject: [GRASS-git] [OSGeo/grass-website] 7eb661: Templates: real base template, convert home, 404, ... Message-ID: Branch: refs/heads/baseof-conversion Home: https://github.com/OSGeo/grass-website Commit: 7eb6610411b36866d39b7cd5e59bbbb9a3c2c5d5 https://github.com/OSGeo/grass-website/commit/7eb6610411b36866d39b7cd5e59bbbb9a3c2c5d5 Author: Corey White Date: 2026-08-04 (Tue, 04 Aug 2026) Changed paths: M themes/grass/layouts/404.html M themes/grass/layouts/_default/baseof.html M themes/grass/layouts/_default/list.html M themes/grass/layouts/_default/single.html M themes/grass/layouts/index.html A themes/grass/layouts/partials/head/analytics.html A themes/grass/layouts/partials/head/assets.html A themes/grass/layouts/partials/head/favicons.html A themes/grass/layouts/partials/head/meta.html A themes/grass/layouts/partials/page-header.html A themes/grass/layouts/partials/prev-next.html A themes/grass/layouts/partials/scripts.html A themes/grass/layouts/partials/sidebar-menu.html A themes/grass/layouts/partials/site-footer.html Log Message: ----------- Templates: real base template, convert home, 404, and _default baseof.html now owns the document scaffolding (doctype, head, body, header block, main landmark, footer, scripts) through new head/*, page-header, site-footer, and scripts partials. Pages define header and main blocks. single.html's colliding define menu / define pagination become the sidebar-menu and prev-next partials. Output change is limited to the new
landmark. Commit: c042300dc43abd4390b1fa7765d926e02d51eed9 https://github.com/OSGeo/grass-website/commit/c042300dc43abd4390b1fa7765d926e02d51eed9 Author: Corey White Date: 2026-08-04 (Tue, 04 Aug 2026) Changed paths: M themes/grass/layouts/_default/baseof.html M themes/grass/layouts/about/brand.html M themes/grass/layouts/about/community-map.html M themes/grass/layouts/about/credits.html M themes/grass/layouts/about/general.html M themes/grass/layouts/about/governance.html M themes/grass/layouts/about/list.html M themes/grass/layouts/about/overview.html M themes/grass/layouts/about/roadmap.html M themes/grass/layouts/about/team.html M themes/grass/layouts/about/theme.html M themes/grass/layouts/about/timeline.html M themes/grass/layouts/contribute/contribute.html M themes/grass/layouts/contribute/devel.html M themes/grass/layouts/contribute/general.html M themes/grass/layouts/contribute/list.html M themes/grass/layouts/download/addons.html M themes/grass/layouts/download/data.html M themes/grass/layouts/download/single.html M themes/grass/layouts/download/tabs.html M themes/grass/layouts/events/allevents.html M themes/grass/layouts/events/event.html M themes/grass/layouts/learn/books.html M themes/grass/layouts/learn/gallery.html M themes/grass/layouts/learn/general.html M themes/grass/layouts/learn/list.html M themes/grass/layouts/learn/manuals.html M themes/grass/layouts/learn/overview.html M themes/grass/layouts/news/allnews.html M themes/grass/layouts/news/news.html M themes/grass/layouts/partials/footer.html R themes/grass/layouts/partials/head.html A themes/grass/layouts/partials/sidebar-menu-contribute.html A themes/grass/layouts/partials/sidebar-menu-download.html R themes/grass/layouts/partials/site-footer.html M themes/grass/layouts/sponsor/donate.html M themes/grass/layouts/support/commercial.html M themes/grass/layouts/support/community.html M themes/grass/layouts/support/support.html Log Message: ----------- Templates: convert all remaining page templates to the base template Mechanical conversion of 34 templates: the repeated header stanza becomes page-header options (or a header block override for the pages whose banner sits outside the header), bodies wrap in define main, and head.html is deleted. download and contribute sidebars move to their own partials, ending the parse-order collision between three global define menu templates. Side effects, all verified in the output diff: contribute-layout pages render their own sidebar variant again, roadmap's stray closing tags after the footer are gone, and theme's unclosed fixed-top div is closed. Commit: 01a3feb31a9be1c47191242b17e0678846d4364d https://github.com/OSGeo/grass-website/commit/01a3feb31a9be1c47191242b17e0678846d4364d Author: Corey White Date: 2026-08-04 (Tue, 04 Aug 2026) Changed paths: M themes/grass/layouts/partials/sidebar-menu.html Log Message: ----------- Fix sidebar-menu File scoping for current Hugo The tree item rendered inside unclosed 'with .File' blocks, so .IsAncestor executed against the File object; old Hugo shimmed that, current Hugo errors. Close the scopes and compare RelPermalink. 0.113 output is unchanged. Compare: https://github.com/OSGeo/grass-website/compare/e0a6d859a619...01a3feb31a9b To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Tue Aug 4 13:27:43 2026 From: noreply at github.com (Corey White) Date: Tue, 04 Aug 2026 13:27:43 -0700 Subject: [GRASS-git] [OSGeo/grass-website] 76d9fe: SCSS: split _styles.scss into ordered partials (#688) Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass-website Commit: 76d9fe48c8cd1870102d653e2168230761e947ba https://github.com/OSGeo/grass-website/commit/76d9fe48c8cd1870102d653e2168230761e947ba Author: Corey White Date: 2026-08-04 (Tue, 04 Aug 2026) Changed paths: M themes/grass/assets/sass/_css-variables.scss M themes/grass/assets/sass/_styles.scss M themes/grass/assets/sass/main.scss A themes/grass/assets/sass/styles/_base.scss A themes/grass/assets/sass/styles/_base2.scss A themes/grass/assets/sass/styles/_brand.scss A themes/grass/assets/sass/styles/_buttons.scss A themes/grass/assets/sass/styles/_carousel.scss A themes/grass/assets/sass/styles/_code.scss A themes/grass/assets/sass/styles/_color-utils.scss A themes/grass/assets/sass/styles/_content.scss A themes/grass/assets/sass/styles/_download.scss A themes/grass/assets/sass/styles/_forms.scss A themes/grass/assets/sass/styles/_jquery-ui.scss A themes/grass/assets/sass/styles/_layout.scss A themes/grass/assets/sass/styles/_navbar.scss A themes/grass/assets/sass/styles/_overlays.scss A themes/grass/assets/sass/styles/_responsive.scss A themes/grass/assets/sass/styles/_search.scss A themes/grass/assets/sass/styles/_team.scss A themes/grass/assets/sass/styles/_thumbnails.scss A themes/grass/assets/sass/styles/_timeline.scss A themes/grass/assets/sass/styles/_utilities.scss Log Message: ----------- SCSS: split _styles.scss into ordered partials (#688) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Tue Aug 4 13:40:51 2026 From: noreply at github.com (github-actions[bot]) Date: Tue, 04 Aug 2026 13:40:51 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/tags/site-20260804-204019-76d9fe4 Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Tue Aug 4 13:40:53 2026 From: noreply at github.com (github-actions[bot]) Date: Tue, 04 Aug 2026 13:40:53 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/tags/site-20260724-204948-5a05c09 Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Tue Aug 4 13:43:20 2026 From: noreply at github.com (Vinay Kumar Chopra) Date: Tue, 04 Aug 2026 13:43:20 -0700 Subject: [GRASS-git] [OSGeo/grass] 935447: r.resamp.stats: OpenMP parallelization with memory... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 93544721516395642d9643aa928dc057f729c458 https://github.com/OSGeo/grass/commit/93544721516395642d9643aa928dc057f729c458 Author: Vinay Kumar Chopra <147031659+HUN-sp at users.noreply.github.com> Date: 2026-08-04 (Tue, 04 Aug 2026) Changed paths: M raster/CMakeLists.txt M raster/r.resamp.stats/Makefile A raster/r.resamp.stats/benchmark/benchmark_r_resamp_stats_nprocs.py M raster/r.resamp.stats/main.c M raster/r.resamp.stats/r.resamp.stats.html M raster/r.resamp.stats/r.resamp.stats.md A raster/r.resamp.stats/testsuite/test_r_resamp_stats.py Log Message: ----------- r.resamp.stats: OpenMP parallelization with memory chunking (#7044) Co-authored-by: Edouard Choini?re <27212526+echoix at users.noreply.github.com> Co-authored-by: Anna Petrasova Co-authored-by: vinaykumarchopra To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Tue Aug 4 23:10:30 2026 From: noreply at github.com (Valyrian-Code) Date: Tue, 04 Aug 2026 23:10:30 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] 393a08: r.vif: preserve active MASK when read_data() exits... Message-ID: Branch: refs/heads/grass8 Home: https://github.com/OSGeo/grass-addons Commit: 393a0885773182a87ff03d3965af2e4203de3e3b https://github.com/OSGeo/grass-addons/commit/393a0885773182a87ff03d3965af2e4203de3e3b Author: Rajveer* Date: 2026-08-05 (Wed, 05 Aug 2026) Changed paths: M src/raster/r.vif/r.vif.py Log Message: ----------- r.vif: preserve active MASK when read_data() exits with an error (#1715) * r.vif: preserve active MASK when read_data() exits with an error Track the backup mask name in a module-level variable instead of CLEAN_RAST, and restore it from cleanup() before the temp-map removal loop so MASK survives crashes during r.stats / numpy processing. If a MASK already exists at restore time (left over from the internal r.mask call), remove it first; at cleanup time any MASK present is one r.vif created itself. Also wrap the r.stats/numpy block in try/finally so the internal mask is removed and the backup restored on the normal-exception path. Fixes #1702 * r.vif: apply ruff formatting * r.vif: use MaskManager on GRASS 8.5+ for the sampling mask On 8.5+ (MaskManager available), apply the random-sample mask via a MaskManager context. It restores the user's MASK automatically on exit, including on error, and removes the internal mask, so no manual backup or rename is needed there. The sample is drawn before entering the context so it still respects an active user MASK, matching the 8.4 path. The manual backup/restore path is kept for 8.4 compatibility, selected by trying to import grass.script.MaskManager. Addresses @wenzeslaus's review. To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Wed Aug 5 10:00:11 2026 From: noreply at github.com (=?UTF-8?B?RWRvdWFyZCBDaG9pbmnDqHJl?=) Date: Wed, 05 Aug 2026 10:00:11 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] Message-ID: Branch: refs/heads/sh-script-executable Home: https://github.com/OSGeo/grass-addons To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Wed Aug 5 10:10:55 2026 From: noreply at github.com (=?UTF-8?B?RWRvdWFyZCBDaG9pbmnDqHJl?=) Date: Wed, 05 Aug 2026 10:10:55 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] b0d6cc: CI: Set executable bit for windows_addons_compile.sh Message-ID: Branch: refs/heads/sh-script-executable Home: https://github.com/OSGeo/grass-addons Commit: b0d6cc1c7eb813b33a30950d7422c26763af20d9 https://github.com/OSGeo/grass-addons/commit/b0d6cc1c7eb813b33a30950d7422c26763af20d9 Author: Edouard Choini?re <27212526+echoix at users.noreply.github.com> Date: 2026-08-05 (Wed, 05 Aug 2026) Changed paths: M .github/workflows/windows_addons_compile.sh Log Message: ----------- CI: Set executable bit for windows_addons_compile.sh To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Wed Aug 5 11:00:30 2026 From: noreply at github.com (=?UTF-8?B?RWRvdWFyZCBDaG9pbmnDqHJl?=) Date: Wed, 05 Aug 2026 11:00:30 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] 09bcaa: CI: Set executable bit for windows_addons_compile.... Message-ID: Branch: refs/heads/grass8 Home: https://github.com/OSGeo/grass-addons Commit: 09bcaa56c6acc9174c05bcad0ba0b7db04b95e59 https://github.com/OSGeo/grass-addons/commit/09bcaa56c6acc9174c05bcad0ba0b7db04b95e59 Author: Edouard Choini?re <27212526+echoix at users.noreply.github.com> Date: 2026-08-05 (Wed, 05 Aug 2026) Changed paths: M .github/workflows/windows_addons_compile.sh Log Message: ----------- CI: Set executable bit for windows_addons_compile.sh (#1826) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Wed Aug 5 11:00:36 2026 From: noreply at github.com (=?UTF-8?B?RWRvdWFyZCBDaG9pbmnDqHJl?=) Date: Wed, 05 Aug 2026 11:00:36 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] Message-ID: Branch: refs/heads/sh-script-executable Home: https://github.com/OSGeo/grass-addons To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Wed Aug 5 12:29:39 2026 From: noreply at github.com (Corey White) Date: Wed, 05 Aug 2026 12:29:39 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] 5b5bcb: r.out.3mf: new addon for 3d printing terrain (#1801) Message-ID: Branch: refs/heads/grass8 Home: https://github.com/OSGeo/grass-addons Commit: 5b5bcbfc74e25d9f86f1fb57d49703a069b0a491 https://github.com/OSGeo/grass-addons/commit/5b5bcbfc74e25d9f86f1fb57d49703a069b0a491 Author: Corey White Date: 2026-08-05 (Wed, 05 Aug 2026) Changed paths: A src/raster/r.out.3mf/CMakeLists.txt A src/raster/r.out.3mf/Makefile A src/raster/r.out.3mf/r.out.3mf.html A src/raster/r.out.3mf/r.out.3mf.md A src/raster/r.out.3mf/r.out.3mf.py A src/raster/r.out.3mf/tests/conftest.py A src/raster/r.out.3mf/tests/r_out_3mf_test.py Log Message: ----------- r.out.3mf: new addon for 3d printing terrain (#1801) * r.out.3mf : Added 3d printing file output raster to 3mf * Added STL fallback option * Updated behavior for handling region * Updated docs * r.out.3mf: new addon for 3d printing terrrain To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Wed Aug 5 23:43:42 2026 From: noreply at github.com (Paulo van Breugel) Date: Wed, 05 Aug 2026 23:43:42 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] c9f702: r.in.ahn.laz: new addon to import and process AHN ... Message-ID: Branch: refs/heads/grass8 Home: https://github.com/OSGeo/grass-addons Commit: c9f702fb17fde997642638a140982c0237875472 https://github.com/OSGeo/grass-addons/commit/c9f702fb17fde997642638a140982c0237875472 Author: Paulo van Breugel Date: 2026-08-06 (Thu, 06 Aug 2026) Changed paths: A src/raster/r.in.ahn.laz/CMakeLists.txt A src/raster/r.in.ahn.laz/Makefile A src/raster/r.in.ahn.laz/r.in.ahn.laz.html A src/raster/r.in.ahn.laz/r.in.ahn.laz.md A src/raster/r.in.ahn.laz/r.in.ahn.laz.py Log Message: ----------- r.in.ahn.laz: new addon to import and process AHN laz files (#1820) Addon to download and process AHN laz files with an user-defined script. To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Thu Aug 6 00:41:52 2026 From: noreply at github.com (Anna Petrasova) Date: Thu, 06 Aug 2026 00:41:52 -0700 Subject: [GRASS-git] [OSGeo/grass] 4229ab: doc: cmake compilation guide (#7744) Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 4229ab82273b42619c3ad5cb9c16f44b3954013b https://github.com/OSGeo/grass/commit/4229ab82273b42619c3ad5cb9c16f44b3954013b Author: Anna Petrasova Date: 2026-08-06 (Thu, 06 Aug 2026) Changed paths: M CONTRIBUTING.md A doc/development/building_with_cmake.md M man/mkdocs/docs/development_intro.md Log Message: ----------- doc: cmake compilation guide (#7744) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Thu Aug 6 00:42:58 2026 From: noreply at github.com (Paulo van Breugel) Date: Thu, 06 Aug 2026 00:42:58 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] bd3553: r.vif fixed issue with retained layers not include... Message-ID: Branch: refs/heads/grass8 Home: https://github.com/OSGeo/grass-addons Commit: bd3553a47be8c25cb4413ec9bb47cc5f002ce45d https://github.com/OSGeo/grass-addons/commit/bd3553a47be8c25cb4413ec9bb47cc5f002ce45d Author: Paulo van Breugel Date: 2026-08-06 (Thu, 06 Aug 2026) Changed paths: M src/raster/r.vif/r.vif.html M src/raster/r.vif/r.vif.md M src/raster/r.vif/r.vif.py R src/raster/r.vif/r_vif_example1.png Log Message: ----------- r.vif fixed issue with retained layers not included with maxvif test (#1823) Retained layers were not included when testing voor maxvif. Fixed. Corrections manual page To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Thu Aug 6 00:44:16 2026 From: noreply at github.com (Paulo van Breugel) Date: Thu, 06 Aug 2026 00:44:16 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] 9405c5: r.series.diversity remove use of temporary mask, a... Message-ID: Branch: refs/heads/grass8 Home: https://github.com/OSGeo/grass-addons Commit: 9405c5ab8507269b6f73962609460bcb63920de3 https://github.com/OSGeo/grass-addons/commit/9405c5ab8507269b6f73962609460bcb63920de3 Author: Paulo van Breugel Date: 2026-08-06 (Thu, 06 Aug 2026) Changed paths: M src/raster/r.series.diversity/r.series.diversity.py Log Message: ----------- r.series.diversity remove use of temporary mask, added parallelization for mapcalc (#1824) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Thu Aug 6 00:46:46 2026 From: noreply at github.com (Paulo van Breugel) Date: Thu, 06 Aug 2026 00:46:46 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] 0a20df: r.maxent - restore region after change (#1825) Message-ID: Branch: refs/heads/grass8 Home: https://github.com/OSGeo/grass-addons Commit: 0a20df5843f6efaed97780d24fcf70a69157cde6 https://github.com/OSGeo/grass-addons/commit/0a20df5843f6efaed97780d24fcf70a69157cde6 Author: Paulo van Breugel Date: 2026-08-06 (Thu, 06 Aug 2026) Changed paths: M src/raster/r.maxent.predict/r.maxent.predict.py M src/vector/v.maxent.swd/v.maxent.swd.py Log Message: ----------- r.maxent - restore region after change (#1825) r.maxent.predict and r.maxent.swd change the region (resolution) when the -e flag is set, but did not restore it after the module finished. This fix uses `gs.use_temp_region` to ensure the region is restored, following the suggestion #1741. I did not use del_temp_region() as gs.use_temp_region already ensure the tempoary region is removed even if the module fails. To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Thu Aug 6 06:12:00 2026 From: noreply at github.com (Jal Patel) Date: Thu, 06 Aug 2026 06:12:00 -0700 Subject: [GRASS-git] [OSGeo/grass] d1f10c: r.timestamp: Add pytest test suite (#7802) Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: d1f10cec609f4c8aa0e12edc3930f66148a0ab49 https://github.com/OSGeo/grass/commit/d1f10cec609f4c8aa0e12edc3930f66148a0ab49 Author: Jal Patel <102137104+jalpatel11 at users.noreply.github.com> Date: 2026-08-06 (Thu, 06 Aug 2026) Changed paths: A raster/r.timestamp/tests/conftest.py A raster/r.timestamp/tests/r_timestamp_test.py Log Message: ----------- r.timestamp: Add pytest test suite (#7802) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Thu Aug 6 08:33:55 2026 From: noreply at github.com (Tomas Zigo) Date: Thu, 06 Aug 2026 08:33:55 -0700 Subject: [GRASS-git] [OSGeo/grass-website] fb58cb: data: fix Gentoo GNU/Linux distribution install GR... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass-website Commit: fb58cb4ee9f09eeb9ed96738f2a271fc5a1ca7e5 https://github.com/OSGeo/grass-website/commit/fb58cb4ee9f09eeb9ed96738f2a271fc5a1ca7e5 Author: Tomas Zigo <50632337+tmszi at users.noreply.github.com> Date: 2026-08-06 (Thu, 06 Aug 2026) Changed paths: M data/grass.json Log Message: ----------- data: fix Gentoo GNU/Linux distribution install GRASS GIS command (#697) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Thu Aug 6 08:37:01 2026 From: noreply at github.com (github-actions[bot]) Date: Thu, 06 Aug 2026 08:37:01 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/tags/site-20260806-153625-fb58cb4 Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Thu Aug 6 08:37:03 2026 From: noreply at github.com (github-actions[bot]) Date: Thu, 06 Aug 2026 08:37:03 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/tags/site-20260725-022230-ac4325d Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Thu Aug 6 20:12:53 2026 From: noreply at github.com (Corey White) Date: Thu, 06 Aug 2026 20:12:53 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/heads/scss-dead-code Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Thu Aug 6 20:12:57 2026 From: noreply at github.com (Corey White) Date: Thu, 06 Aug 2026 20:12:57 -0700 Subject: [GRASS-git] [OSGeo/grass-website] 91ac05: SCSS: fix .gitter-banner missing semicolon Message-ID: Branch: refs/heads/scss-fixes Home: https://github.com/OSGeo/grass-website Commit: 91ac0509999482960507e6cc073a19a912ffb82c https://github.com/OSGeo/grass-website/commit/91ac0509999482960507e6cc073a19a912ffb82c Author: Corey White Date: 2026-08-06 (Thu, 06 Aug 2026) Changed paths: M themes/grass/assets/sass/styles/_navbar.scss Log Message: ----------- SCSS: fix .gitter-banner missing semicolon Sass parsed the nested a rule as nested-property syntax, emitting padding-text-decoration/padding-color instead of styling the banner links. Commit: f748e18c8c39cb6c441f81318b580c3785a42d4b https://github.com/OSGeo/grass-website/commit/f748e18c8c39cb6c441f81318b580c3785a42d4b Author: Corey White Date: 2026-08-06 (Thu, 06 Aug 2026) Changed paths: M themes/grass/assets/sass/styles/_buttons.scss Log Message: ----------- SCSS: merge duplicate .btn-grass blocks The two blocks were identical except the first also sets margin-bottom, which nothing overrides; keeping the first preserves the computed styles. Commit: 95c352fc60286bdb6011e7c3e38d587953467743 https://github.com/OSGeo/grass-website/commit/95c352fc60286bdb6011e7c3e38d587953467743 Author: Corey White Date: 2026-08-06 (Thu, 06 Aug 2026) Changed paths: M themes/grass/assets/sass/styles/_layout.scss M themes/grass/assets/sass/styles/_timeline.scss Log Message: ----------- SCSS: drop the global .card height clamps Two competing global rules forced every Bootstrap card to a fixed height (4rem !important winning over a shadowed 5rem). Cards now size to their content. Needs a visual check on /download and /about/brand. Commit: 318bd1125b891221dc18ee44cdec314e1d79d91f https://github.com/OSGeo/grass-website/commit/318bd1125b891221dc18ee44cdec314e1d79d91f Author: Corey White Date: 2026-08-06 (Thu, 06 Aug 2026) Changed paths: M themes/grass/assets/sass/styles/_timeline.scss Log Message: ----------- SCSS: consolidate the duplicated timeline blocks Two near-duplicate rule sets styled the history-page timeline; the merged rules reproduce the exact cascade result of the pair. The never-winning hardcoded #0039a6 values are gone (the visible dot and line color was and remains the brand alt green). Commit: 4305d6a0b25954dbebe7e5ee281c077c1cd71cd1 https://github.com/OSGeo/grass-website/commit/4305d6a0b25954dbebe7e5ee281c077c1cd71cd1 Author: Corey White Date: 2026-08-06 (Thu, 06 Aug 2026) Changed paths: M themes/grass/assets/sass/styles/_brand.scss Log Message: ----------- SCSS: use the Font Awesome 7 family name The package is FA7; the old name only resolves through FA's compat font-face aliases. Commit: 8d1eccf0d1201e9788bf17b1c3cfbc1bf5af3b91 https://github.com/OSGeo/grass-website/commit/8d1eccf0d1201e9788bf17b1c3cfbc1bf5af3b91 Author: Corey White Date: 2026-08-06 (Thu, 06 Aug 2026) Changed paths: M themes/grass/assets/sass/styles/_base2.scss M themes/grass/assets/sass/styles/_overlays.scss Log Message: ----------- SCSS: overlay tokens, drop IE filters and a dead red link rule The standard overlay gradient now derives from $gs-primary-color like its prefixed twins (identical output). The two IE DXImageTransform filters are dead weight (one interpolated invalid rgba values). a.external has no matching markup anywhere; the red rule is gone. Commit: 538d991107e1bbbfe2ed21ff48c4bec9706b1cf7 https://github.com/OSGeo/grass-website/commit/538d991107e1bbbfe2ed21ff48c4bec9706b1cf7 Author: Corey White Date: 2026-08-06 (Thu, 06 Aug 2026) Changed paths: M themes/grass/assets/sass/styles/_download.scss M themes/grass/assets/sass/styles/_navbar.scss M themes/grass/assets/sass/styles/_responsive.scss M themes/grass/assets/sass/styles/_thumbnails.scss Log Message: ----------- SCSS: use Bootstrap breakpoint mixins for theme media queries The hand-written 991px and 992px max-width queries disagreed by a pixel; all now compile to Bootstrap's lg boundary (991.98px), and the 576px block to sm. The three identical yard-sign min-width blocks collapse to the one 600px threshold. Commit: 086b383c4618dc7e46413789beb85d18743877fe https://github.com/OSGeo/grass-website/commit/086b383c4618dc7e46413789beb85d18743877fe Author: Corey White Date: 2026-08-06 (Thu, 06 Aug 2026) Changed paths: M themes/grass/assets/sass/_colors.scss M themes/grass/assets/sass/_css-variables.scss Log Message: ----------- SCSS: derive ramp steps from shared alpha constants The hand-written rgba steps in _colors.scss and the alpha map in _css-variables.scss encoded the same three constants twice; both now read from $gs-alpha-*. Compiled CSS is byte-identical. The support color's historical --dark/--light naming is documented in place. Compare: https://github.com/OSGeo/grass-website/compare/91ac05099994%5E...086b383c4618 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Thu Aug 6 20:14:56 2026 From: noreply at github.com (Corey White) Date: Thu, 06 Aug 2026 20:14:56 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/heads/hugo-deprecations Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Thu Aug 6 20:14:56 2026 From: noreply at github.com (Corey White) Date: Thu, 06 Aug 2026 20:14:56 -0700 Subject: [GRASS-git] [OSGeo/grass-website] 277c59: Templates: real base template, convert home, 404, ... Message-ID: Branch: refs/heads/baseof-conversion Home: https://github.com/OSGeo/grass-website Commit: 277c59d7c9c7aca0d6a186349a02130d07c51f98 https://github.com/OSGeo/grass-website/commit/277c59d7c9c7aca0d6a186349a02130d07c51f98 Author: Corey White Date: 2026-08-06 (Thu, 06 Aug 2026) Changed paths: M themes/grass/layouts/404.html M themes/grass/layouts/_default/baseof.html M themes/grass/layouts/_default/list.html M themes/grass/layouts/_default/single.html M themes/grass/layouts/index.html A themes/grass/layouts/partials/head/analytics.html A themes/grass/layouts/partials/head/assets.html A themes/grass/layouts/partials/head/favicons.html A themes/grass/layouts/partials/head/meta.html A themes/grass/layouts/partials/page-header.html A themes/grass/layouts/partials/prev-next.html A themes/grass/layouts/partials/scripts.html A themes/grass/layouts/partials/sidebar-menu.html A themes/grass/layouts/partials/site-footer.html Log Message: ----------- Templates: real base template, convert home, 404, and _default baseof.html now owns the document scaffolding (doctype, head, body, header block, main landmark, footer, scripts) through new head/*, page-header, site-footer, and scripts partials. Pages define header and main blocks. single.html's colliding define menu / define pagination become the sidebar-menu and prev-next partials. Output change is limited to the new
landmark. Commit: b01efd6f64b193e54d43a5a3ddecb5ffab5b9db3 https://github.com/OSGeo/grass-website/commit/b01efd6f64b193e54d43a5a3ddecb5ffab5b9db3 Author: Corey White Date: 2026-08-06 (Thu, 06 Aug 2026) Changed paths: M themes/grass/layouts/_default/baseof.html M themes/grass/layouts/about/brand.html M themes/grass/layouts/about/community-map.html M themes/grass/layouts/about/credits.html M themes/grass/layouts/about/general.html M themes/grass/layouts/about/governance.html M themes/grass/layouts/about/list.html M themes/grass/layouts/about/overview.html M themes/grass/layouts/about/roadmap.html M themes/grass/layouts/about/team.html M themes/grass/layouts/about/theme.html M themes/grass/layouts/about/timeline.html M themes/grass/layouts/contribute/contribute.html M themes/grass/layouts/contribute/devel.html M themes/grass/layouts/contribute/general.html M themes/grass/layouts/contribute/list.html M themes/grass/layouts/download/addons.html M themes/grass/layouts/download/data.html M themes/grass/layouts/download/single.html M themes/grass/layouts/download/tabs.html M themes/grass/layouts/events/allevents.html M themes/grass/layouts/events/event.html M themes/grass/layouts/learn/books.html M themes/grass/layouts/learn/gallery.html M themes/grass/layouts/learn/general.html M themes/grass/layouts/learn/list.html M themes/grass/layouts/learn/manuals.html M themes/grass/layouts/learn/overview.html M themes/grass/layouts/news/allnews.html M themes/grass/layouts/news/news.html M themes/grass/layouts/partials/footer.html R themes/grass/layouts/partials/head.html A themes/grass/layouts/partials/sidebar-menu-contribute.html A themes/grass/layouts/partials/sidebar-menu-download.html R themes/grass/layouts/partials/site-footer.html M themes/grass/layouts/sponsor/donate.html M themes/grass/layouts/support/commercial.html M themes/grass/layouts/support/community.html M themes/grass/layouts/support/support.html Log Message: ----------- Templates: convert all remaining page templates to the base template Mechanical conversion of 34 templates: the repeated header stanza becomes page-header options (or a header block override for the pages whose banner sits outside the header), bodies wrap in define main, and head.html is deleted. download and contribute sidebars move to their own partials, ending the parse-order collision between three global define menu templates. Side effects, all verified in the output diff: contribute-layout pages render their own sidebar variant again, roadmap's stray closing tags after the footer are gone, and theme's unclosed fixed-top div is closed. Commit: e20b44da9f13d6b512ea3f48efa9056f0480be4d https://github.com/OSGeo/grass-website/commit/e20b44da9f13d6b512ea3f48efa9056f0480be4d Author: Corey White Date: 2026-08-06 (Thu, 06 Aug 2026) Changed paths: M themes/grass/layouts/partials/sidebar-menu.html Log Message: ----------- Fix sidebar-menu File scoping for current Hugo The tree item rendered inside unclosed 'with .File' blocks, so .IsAncestor executed against the File object; old Hugo shimmed that, current Hugo errors. Close the scopes and compare RelPermalink. 0.113 output is unchanged. Compare: https://github.com/OSGeo/grass-website/compare/01a3feb31a9b...e20b44da9f13 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Fri Aug 7 10:45:48 2026 From: noreply at github.com (renovate[bot]) Date: Fri, 07 Aug 2026 10:45:48 -0700 Subject: [GRASS-git] [OSGeo/grass] 8a7f49: CI(deps): Update ruff to v0.16.2 Message-ID: Branch: refs/heads/renovate/releasebranch_8_5-ruff Home: https://github.com/OSGeo/grass Commit: 8a7f49288456cb9d184862f363e8b5a22b339680 https://github.com/OSGeo/grass/commit/8a7f49288456cb9d184862f363e8b5a22b339680 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-07 (Fri, 07 Aug 2026) Changed paths: M .github/workflows/python-code-quality.yml M .pre-commit-config.yaml Log Message: ----------- CI(deps): Update ruff to v0.16.2 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Fri Aug 7 11:45:55 2026 From: noreply at github.com (Markus Metz) Date: Fri, 07 Aug 2026 11:45:55 -0700 Subject: [GRASS-git] [OSGeo/grass] 0850a4: r.reclass.area: preserve backwards compatibility (... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 0850a40412c109476e3551dd90a17c99e45908ff https://github.com/OSGeo/grass/commit/0850a40412c109476e3551dd90a17c99e45908ff Author: Markus Metz <33666869+metzm at users.noreply.github.com> Date: 2026-08-07 (Fri, 07 Aug 2026) Changed paths: M scripts/r.reclass.area/r.reclass.area.html M scripts/r.reclass.area/r.reclass.area.md M scripts/r.reclass.area/r.reclass.area.py Log Message: ----------- r.reclass.area: preserve backwards compatibility (#7806) * r.reclass.area: preserve backwards compatibility * update manual for the lower option * Apply suggestions from code review Co-authored-by: Stefan Blumentrath --------- Co-authored-by: Stefan Blumentrath To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Fri Aug 7 17:32:08 2026 From: noreply at github.com (renovate[bot]) Date: Fri, 07 Aug 2026 17:32:08 -0700 Subject: [GRASS-git] [OSGeo/grass] f62e1c: CI(deps): Update pre-commit hook editorconfig-chec... Message-ID: Branch: refs/heads/renovate/main-editorconfig-checker-editorconfig-checker-3.x Home: https://github.com/OSGeo/grass Commit: f62e1c27e1919539f3ab7e8375810513a565ce8e https://github.com/OSGeo/grass/commit/f62e1c27e1919539f3ab7e8375810513a565ce8e Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-08 (Sat, 08 Aug 2026) Changed paths: M .pre-commit-config.yaml Log Message: ----------- CI(deps): Update pre-commit hook editorconfig-checker/editorconfig-checker to v3.10.0 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Fri Aug 7 18:24:14 2026 From: noreply at github.com (Jal Patel) Date: Fri, 07 Aug 2026 18:24:14 -0700 Subject: [GRASS-git] [OSGeo/grass] ba1d7b: g.gisenv: Add pytest test suite (#7803) Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: ba1d7b7f733e2c2c13694668f87895187d1c198a https://github.com/OSGeo/grass/commit/ba1d7b7f733e2c2c13694668f87895187d1c198a Author: Jal Patel <102137104+jalpatel11 at users.noreply.github.com> Date: 2026-08-07 (Fri, 07 Aug 2026) Changed paths: A general/g.gisenv/tests/conftest.py A general/g.gisenv/tests/g_gisenv_test.py Log Message: ----------- g.gisenv: Add pytest test suite (#7803) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 8 06:41:24 2026 From: noreply at github.com (renovate[bot]) Date: Sat, 08 Aug 2026 06:41:24 -0700 Subject: [GRASS-git] [OSGeo/grass] 842caa: CI(deps): Update pre-commit hook editorconfig-chec... Message-ID: Branch: refs/heads/renovate/main-editorconfig-checker-editorconfig-checker-3.x Home: https://github.com/OSGeo/grass Commit: 842caa1ddb4afb259f9c6a4c743810570a7e0d6f https://github.com/OSGeo/grass/commit/842caa1ddb4afb259f9c6a4c743810570a7e0d6f Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-08 (Sat, 08 Aug 2026) Changed paths: M .pre-commit-config.yaml Log Message: ----------- CI(deps): Update pre-commit hook editorconfig-checker/editorconfig-checker to v3.11.1 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 8 09:00:57 2026 From: noreply at github.com (=?UTF-8?B?RWRvdWFyZCBDaG9pbmnDqHJl?=) Date: Sat, 08 Aug 2026 09:00:57 -0700 Subject: [GRASS-git] [OSGeo/grass] e1b0f7: locale: Update translation files Message-ID: Branch: refs/heads/periodic/update-i18n-31265676928 Home: https://github.com/OSGeo/grass Commit: e1b0f765a63ee9d9878d292eecd5fc7943d12467 https://github.com/OSGeo/grass/commit/e1b0f765a63ee9d9878d292eecd5fc7943d12467 Author: echoix <27212526+echoix at users.noreply.github.com> Date: 2026-08-08 (Sat, 08 Aug 2026) Changed paths: M locale/templates/grasslibs.pot M locale/templates/grassmods.pot M locale/templates/grasswxpy.pot Log Message: ----------- locale: Update translation files To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 8 09:17:28 2026 From: noreply at github.com (github-actions[bot]) Date: Sat, 08 Aug 2026 09:17:28 -0700 Subject: [GRASS-git] [OSGeo/grass] 89b771: locale: Update translation files (119) (#7813) Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 89b771c2d0dee90820868316d5a14864d3605793 https://github.com/OSGeo/grass/commit/89b771c2d0dee90820868316d5a14864d3605793 Author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Date: 2026-08-08 (Sat, 08 Aug 2026) Changed paths: M locale/templates/grasslibs.pot M locale/templates/grassmods.pot M locale/templates/grasswxpy.pot Log Message: ----------- locale: Update translation files (119) (#7813) locale: Update translation files Co-authored-by: echoix <27212526+echoix at users.noreply.github.com> To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sun Aug 9 05:17:49 2026 From: noreply at github.com (Kaushik Raja) Date: Sun, 09 Aug 2026 05:17:49 -0700 Subject: [GRASS-git] [OSGeo/grass] ff8f81: r.geomorphon: replace testsuite with pytest refere... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: ff8f81ff9c4e06860da2c8add8f9f3e4a84a7a9f https://github.com/OSGeo/grass/commit/ff8f81ff9c4e06860da2c8add8f9f3e4a84a7a9f Author: Kaushik Raja <85415462+krcoder123 at users.noreply.github.com> Date: 2026-08-09 (Sun, 09 Aug 2026) Changed paths: A raster/r.geomorphon/tests/conftest.py A raster/r.geomorphon/tests/r_geomorphon_test.py R raster/r.geomorphon/testsuite/test_r_geom.py Log Message: ----------- r.geomorphon: replace testsuite with pytest reference (#7785) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sun Aug 9 05:19:31 2026 From: noreply at github.com (renovate[bot]) Date: Sun, 09 Aug 2026 05:19:31 -0700 Subject: [GRASS-git] [OSGeo/grass] 58b977: CI(deps): Update dependency pymdown-extensions to ... Message-ID: Branch: refs/heads/renovate/main-pypi-pymdown-extensions-vulnerability Home: https://github.com/OSGeo/grass Commit: 58b97739826e07218ff1c19d4fb745d1c2b7127f https://github.com/OSGeo/grass/commit/58b97739826e07218ff1c19d4fb745d1c2b7127f Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-09 (Sun, 09 Aug 2026) Changed paths: M man/mkdocs/requirements.txt Log Message: ----------- CI(deps): Update dependency pymdown-extensions to v11.0.1 [SECURITY] To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sun Aug 9 05:19:43 2026 From: noreply at github.com (renovate[bot]) Date: Sun, 09 Aug 2026 05:19:43 -0700 Subject: [GRASS-git] [OSGeo/grass] 6dc1eb: CI(deps): Update dependency pymdown-extensions to ... Message-ID: Branch: refs/heads/renovate/releasebranch_8_5-pypi-pymdown-extensions-vulnerability Home: https://github.com/OSGeo/grass Commit: 6dc1eb0d921e5f352b637068372bc36f0293b258 https://github.com/OSGeo/grass/commit/6dc1eb0d921e5f352b637068372bc36f0293b258 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-09 (Sun, 09 Aug 2026) Changed paths: M man/mkdocs/requirements.txt Log Message: ----------- CI(deps): Update dependency pymdown-extensions to v11.0.1 [SECURITY] To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sun Aug 9 08:33:25 2026 From: noreply at github.com (renovate[bot]) Date: Sun, 09 Aug 2026 08:33:25 -0700 Subject: [GRASS-git] [OSGeo/grass] 00f13d: CI(deps): Update dependency pymdown-extensions to ... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 00f13d7633bb4cb00ab75c2d53557d6dfbd27b49 https://github.com/OSGeo/grass/commit/00f13d7633bb4cb00ab75c2d53557d6dfbd27b49 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-09 (Sun, 09 Aug 2026) Changed paths: M man/mkdocs/requirements.txt Log Message: ----------- CI(deps): Update dependency pymdown-extensions to v11.0.1 [SECURITY] (main) (#7814) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sun Aug 9 08:33:36 2026 From: noreply at github.com (renovate[bot]) Date: Sun, 09 Aug 2026 08:33:36 -0700 Subject: [GRASS-git] [OSGeo/grass] 8c1a13: CI(deps): Update dependency pymdown-extensions to ... Message-ID: Branch: refs/heads/releasebranch_8_5 Home: https://github.com/OSGeo/grass Commit: 8c1a134ce36ba640726dce0533f2d9265ef84552 https://github.com/OSGeo/grass/commit/8c1a134ce36ba640726dce0533f2d9265ef84552 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-09 (Sun, 09 Aug 2026) Changed paths: M man/mkdocs/requirements.txt Log Message: ----------- CI(deps): Update dependency pymdown-extensions to v11.0.1 [SECURITY] (releasebranch_8_5) (#7815) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sun Aug 9 08:34:25 2026 From: noreply at github.com (renovate[bot]) Date: Sun, 09 Aug 2026 08:34:25 -0700 Subject: [GRASS-git] [OSGeo/grass] Message-ID: Branch: refs/heads/renovate/main-pypi-pymdown-extensions-vulnerability Home: https://github.com/OSGeo/grass To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sun Aug 9 08:35:27 2026 From: noreply at github.com (renovate[bot]) Date: Sun, 09 Aug 2026 08:35:27 -0700 Subject: [GRASS-git] [OSGeo/grass] Message-ID: Branch: refs/heads/renovate/releasebranch_8_5-pypi-pymdown-extensions-vulnerability Home: https://github.com/OSGeo/grass To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sun Aug 9 08:51:05 2026 From: noreply at github.com (=?UTF-8?B?RWRvdWFyZCBDaG9pbmnDqHJl?=) Date: Sun, 09 Aug 2026 08:51:05 -0700 Subject: [GRASS-git] [OSGeo/grass] 016f04: locale: Update translation files Message-ID: Branch: refs/heads/periodic/update-i18n-31321581157 Home: https://github.com/OSGeo/grass Commit: 016f042a3284a388bfe6a5ca313e7c5b50f8cf25 https://github.com/OSGeo/grass/commit/016f042a3284a388bfe6a5ca313e7c5b50f8cf25 Author: echoix <27212526+echoix at users.noreply.github.com> Date: 2026-08-09 (Sun, 09 Aug 2026) Changed paths: M locale/templates/grasslibs.pot M locale/templates/grassmods.pot M locale/templates/grasswxpy.pot Log Message: ----------- locale: Update translation files To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Mon Aug 10 02:31:32 2026 From: noreply at github.com (renovate[bot]) Date: Mon, 10 Aug 2026 02:31:32 -0700 Subject: [GRASS-git] [OSGeo/grass-website] 629c99: Update dependency prek to v0.4.13 Message-ID: Branch: refs/heads/renovate/prek-0.x Home: https://github.com/OSGeo/grass-website Commit: 629c99e7aa7f3f1ae57bbde0225a55893b7b9c04 https://github.com/OSGeo/grass-website/commit/629c99e7aa7f3f1ae57bbde0225a55893b7b9c04 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-10 (Mon, 10 Aug 2026) Changed paths: M .github/workflows/additional_checks.yml Log Message: ----------- Update dependency prek to v0.4.13 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Tue Aug 11 08:21:59 2026 From: noreply at github.com (Corey White) Date: Tue, 11 Aug 2026 08:21:59 -0700 Subject: [GRASS-git] [OSGeo/grass-website] 73fd18: SCSS: remove dead selectors, files, and token vari... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass-website Commit: 73fd1846f5b337bdbbe847c7bfaecbcd44c89e62 https://github.com/OSGeo/grass-website/commit/73fd1846f5b337bdbbe847c7bfaecbcd44c89e62 Author: Corey White Date: 2026-08-11 (Tue, 11 Aug 2026) Changed paths: M themes/grass/assets/sass/README.md M themes/grass/assets/sass/_colors.scss M themes/grass/assets/sass/_fonts.scss M themes/grass/assets/sass/_styles.scss M themes/grass/assets/sass/_variables.scss M themes/grass/assets/sass/main.scss M themes/grass/assets/sass/styles/_base.scss M themes/grass/assets/sass/styles/_base2.scss M themes/grass/assets/sass/styles/_code.scss M themes/grass/assets/sass/styles/_color-utils.scss M themes/grass/assets/sass/styles/_content.scss M themes/grass/assets/sass/styles/_download.scss M themes/grass/assets/sass/styles/_forms.scss R themes/grass/assets/sass/styles/_jquery-ui.scss M themes/grass/assets/sass/styles/_layout.scss M themes/grass/assets/sass/styles/_navbar.scss M themes/grass/assets/sass/styles/_overlays.scss M themes/grass/assets/sass/styles/_responsive.scss R themes/grass/assets/sass/styles/_search.scss M themes/grass/assets/sass/styles/_thumbnails.scss M themes/grass/assets/sass/styles/_timeline.scss M themes/grass/assets/sass/styles/_utilities.scss Log Message: ----------- SCSS: remove dead selectors, files, and token variables (#698) Deletes the search-form and jQuery-UI leftovers (both features removed long ago), 56 rule blocks with no usage in layouts, content, data, or JS (verified by scripted grep), the shadowed body and .grass-bg-image duplicates in main.scss, and 39 unreferenced token variables. Adds a README note listing the runtime-injected selector families a dead-code pass must not touch. Compiled css/style.css is the only output file that changes (5.8 kB smaller); every removed class is absent from the built site. To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Tue Aug 11 08:22:00 2026 From: noreply at github.com (Corey White) Date: Tue, 11 Aug 2026 08:22:00 -0700 Subject: [GRASS-git] [OSGeo/grass-website] c1fee8: SCSS: fix .gitter-banner missing semicolon Message-ID: Branch: refs/heads/scss-fixes Home: https://github.com/OSGeo/grass-website Commit: c1fee82e1580f97efe74dc44a03e31fa4f22e9fd https://github.com/OSGeo/grass-website/commit/c1fee82e1580f97efe74dc44a03e31fa4f22e9fd Author: Corey White Date: 2026-08-11 (Tue, 11 Aug 2026) Changed paths: M themes/grass/assets/sass/styles/_navbar.scss Log Message: ----------- SCSS: fix .gitter-banner missing semicolon Sass parsed the nested a rule as nested-property syntax, emitting padding-text-decoration/padding-color instead of styling the banner links. Commit: 2d06ed7176ab8341cb890c2c40b4bbe9e95d07d6 https://github.com/OSGeo/grass-website/commit/2d06ed7176ab8341cb890c2c40b4bbe9e95d07d6 Author: Corey White Date: 2026-08-11 (Tue, 11 Aug 2026) Changed paths: M themes/grass/assets/sass/styles/_buttons.scss Log Message: ----------- SCSS: merge duplicate .btn-grass blocks The two blocks were identical except the first also sets margin-bottom, which nothing overrides; keeping the first preserves the computed styles. Commit: a6b8eedb46219fb11e8dd473ed745dca90ae2ea0 https://github.com/OSGeo/grass-website/commit/a6b8eedb46219fb11e8dd473ed745dca90ae2ea0 Author: Corey White Date: 2026-08-11 (Tue, 11 Aug 2026) Changed paths: M themes/grass/assets/sass/styles/_layout.scss M themes/grass/assets/sass/styles/_timeline.scss Log Message: ----------- SCSS: drop the global .card height clamps Two competing global rules forced every Bootstrap card to a fixed height (4rem !important winning over a shadowed 5rem). Cards now size to their content. Needs a visual check on /download and /about/brand. Commit: c60b584321fa72b86fa2e69cb13da7a7884a9cce https://github.com/OSGeo/grass-website/commit/c60b584321fa72b86fa2e69cb13da7a7884a9cce Author: Corey White Date: 2026-08-11 (Tue, 11 Aug 2026) Changed paths: M themes/grass/assets/sass/styles/_timeline.scss Log Message: ----------- SCSS: consolidate the duplicated timeline blocks Two near-duplicate rule sets styled the history-page timeline; the merged rules reproduce the exact cascade result of the pair. The never-winning hardcoded #0039a6 values are gone (the visible dot and line color was and remains the brand alt green). Commit: 8c9798d032f264704a78a9c4993f05ca7786a370 https://github.com/OSGeo/grass-website/commit/8c9798d032f264704a78a9c4993f05ca7786a370 Author: Corey White Date: 2026-08-11 (Tue, 11 Aug 2026) Changed paths: M themes/grass/assets/sass/styles/_brand.scss Log Message: ----------- SCSS: use the Font Awesome 7 family name The package is FA7; the old name only resolves through FA's compat font-face aliases. Commit: 9967b1157c8411579f333413542fe996bb28ac5d https://github.com/OSGeo/grass-website/commit/9967b1157c8411579f333413542fe996bb28ac5d Author: Corey White Date: 2026-08-11 (Tue, 11 Aug 2026) Changed paths: M themes/grass/assets/sass/styles/_base2.scss M themes/grass/assets/sass/styles/_overlays.scss Log Message: ----------- SCSS: overlay tokens, drop IE filters and a dead red link rule The standard overlay gradient now derives from $gs-primary-color like its prefixed twins (identical output). The two IE DXImageTransform filters are dead weight (one interpolated invalid rgba values). a.external has no matching markup anywhere; the red rule is gone. Commit: fdaa193fdfc3338383e6d385c9b99897cb24f093 https://github.com/OSGeo/grass-website/commit/fdaa193fdfc3338383e6d385c9b99897cb24f093 Author: Corey White Date: 2026-08-11 (Tue, 11 Aug 2026) Changed paths: M themes/grass/assets/sass/styles/_download.scss M themes/grass/assets/sass/styles/_navbar.scss M themes/grass/assets/sass/styles/_responsive.scss M themes/grass/assets/sass/styles/_thumbnails.scss Log Message: ----------- SCSS: use Bootstrap breakpoint mixins for theme media queries The hand-written 991px and 992px max-width queries disagreed by a pixel; all now compile to Bootstrap's lg boundary (991.98px), and the 576px block to sm. The three identical yard-sign min-width blocks collapse to the one 600px threshold. Commit: ee49b0be98ade32519ca95ad309554cecc9a23dc https://github.com/OSGeo/grass-website/commit/ee49b0be98ade32519ca95ad309554cecc9a23dc Author: Corey White Date: 2026-08-11 (Tue, 11 Aug 2026) Changed paths: M themes/grass/assets/sass/_colors.scss M themes/grass/assets/sass/_css-variables.scss Log Message: ----------- SCSS: derive ramp steps from shared alpha constants The hand-written rgba steps in _colors.scss and the alpha map in _css-variables.scss encoded the same three constants twice; both now read from $gs-alpha-*. Compiled CSS is byte-identical. The support color's historical --dark/--light naming is documented in place. Compare: https://github.com/OSGeo/grass-website/compare/086b383c4618...ee49b0be98ad To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Tue Aug 11 08:22:24 2026 From: noreply at github.com (Corey White) Date: Tue, 11 Aug 2026 08:22:24 -0700 Subject: [GRASS-git] [OSGeo/grass-website] 1f9baa: SCSS: dedupe, bug fixes, tokens, and breakpoints (... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass-website Commit: 1f9baa1601f710a9643b18870a752d3b0f76ba20 https://github.com/OSGeo/grass-website/commit/1f9baa1601f710a9643b18870a752d3b0f76ba20 Author: Corey White Date: 2026-08-11 (Tue, 11 Aug 2026) Changed paths: M themes/grass/assets/sass/_colors.scss M themes/grass/assets/sass/_css-variables.scss M themes/grass/assets/sass/styles/_base2.scss M themes/grass/assets/sass/styles/_brand.scss M themes/grass/assets/sass/styles/_buttons.scss M themes/grass/assets/sass/styles/_download.scss M themes/grass/assets/sass/styles/_layout.scss M themes/grass/assets/sass/styles/_navbar.scss M themes/grass/assets/sass/styles/_overlays.scss M themes/grass/assets/sass/styles/_responsive.scss M themes/grass/assets/sass/styles/_thumbnails.scss M themes/grass/assets/sass/styles/_timeline.scss Log Message: ----------- SCSS: dedupe, bug fixes, tokens, and breakpoints (#699) * SCSS: fix .gitter-banner missing semicolon Sass parsed the nested a rule as nested-property syntax, emitting padding-text-decoration/padding-color instead of styling the banner links. * SCSS: merge duplicate .btn-grass blocks The two blocks were identical except the first also sets margin-bottom, which nothing overrides; keeping the first preserves the computed styles. * SCSS: drop the global .card height clamps Two competing global rules forced every Bootstrap card to a fixed height (4rem !important winning over a shadowed 5rem). Cards now size to their content. Needs a visual check on /download and /about/brand. * SCSS: consolidate the duplicated timeline blocks Two near-duplicate rule sets styled the history-page timeline; the merged rules reproduce the exact cascade result of the pair. The never-winning hardcoded #0039a6 values are gone (the visible dot and line color was and remains the brand alt green). * SCSS: use the Font Awesome 7 family name The package is FA7; the old name only resolves through FA's compat font-face aliases. * SCSS: overlay tokens, drop IE filters and a dead red link rule The standard overlay gradient now derives from $gs-primary-color like its prefixed twins (identical output). The two IE DXImageTransform filters are dead weight (one interpolated invalid rgba values). a.external has no matching markup anywhere; the red rule is gone. * SCSS: use Bootstrap breakpoint mixins for theme media queries The hand-written 991px and 992px max-width queries disagreed by a pixel; all now compile to Bootstrap's lg boundary (991.98px), and the 576px block to sm. The three identical yard-sign min-width blocks collapse to the one 600px threshold. * SCSS: derive ramp steps from shared alpha constants The hand-written rgba steps in _colors.scss and the alpha map in _css-variables.scss encoded the same three constants twice; both now read from $gs-alpha-*. Compiled CSS is byte-identical. The support color's historical --dark/--light naming is documented in place. To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Tue Aug 11 08:22:59 2026 From: noreply at github.com (renovate[bot]) Date: Tue, 11 Aug 2026 08:22:59 -0700 Subject: [GRASS-git] [OSGeo/grass-website] cd5b6b: Update dependency @highlightjs/cdn-assets to v11.11.2 Message-ID: Branch: refs/heads/renovate/highlightjs-cdn-assets-11.x-lockfile Home: https://github.com/OSGeo/grass-website Commit: cd5b6b08216a70bb0e5bd6e05c0644b771542646 https://github.com/OSGeo/grass-website/commit/cd5b6b08216a70bb0e5bd6e05c0644b771542646 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-11 (Tue, 11 Aug 2026) Changed paths: M package-lock.json Log Message: ----------- Update dependency @highlightjs/cdn-assets to v11.11.2 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Tue Aug 11 09:04:46 2026 From: noreply at github.com (github-actions[bot]) Date: Tue, 11 Aug 2026 09:04:46 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/tags/site-20260811-160413-1f9baa1 Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Tue Aug 11 09:04:51 2026 From: noreply at github.com (github-actions[bot]) Date: Tue, 11 Aug 2026 09:04:51 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/tags/site-20260725-071354-98a7569 Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Tue Aug 11 14:55:54 2026 From: noreply at github.com (renovate[bot]) Date: Tue, 11 Aug 2026 14:55:54 -0700 Subject: [GRASS-git] [OSGeo/grass] 6dbc00: CI(deps): Update super-linter/super-linter action ... Message-ID: Branch: refs/heads/renovate/main-super-linter-super-linter-8.x Home: https://github.com/OSGeo/grass Commit: 6dbc008cda8cbc9569f7c873c616c85bbf1fabf8 https://github.com/OSGeo/grass/commit/6dbc008cda8cbc9569f7c873c616c85bbf1fabf8 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-11 (Tue, 11 Aug 2026) Changed paths: M .github/workflows/super-linter.yml Log Message: ----------- CI(deps): Update super-linter/super-linter action to v8.7.0 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Tue Aug 11 21:34:19 2026 From: noreply at github.com (renovate[bot]) Date: Tue, 11 Aug 2026 21:34:19 -0700 Subject: [GRASS-git] [OSGeo/grass-website] 61205d: Update dependency @highlightjs/cdn-assets to v11.12.0 Message-ID: Branch: refs/heads/renovate/highlightjs-cdn-assets-11.x-lockfile Home: https://github.com/OSGeo/grass-website Commit: 61205dfc931af16f2bc8e25afc44ac83a97b8554 https://github.com/OSGeo/grass-website/commit/61205dfc931af16f2bc8e25afc44ac83a97b8554 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-12 (Wed, 12 Aug 2026) Changed paths: M package-lock.json Log Message: ----------- Update dependency @highlightjs/cdn-assets to v11.12.0 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Wed Aug 12 15:51:15 2026 From: noreply at github.com (renovate[bot]) Date: Wed, 12 Aug 2026 15:51:15 -0700 Subject: [GRASS-git] [OSGeo/grass-website] 0b7873: Update astral-sh/setup-uv action to v10 Message-ID: Branch: refs/heads/renovate/astral-sh-setup-uv-10.x Home: https://github.com/OSGeo/grass-website Commit: 0b78736776402b566e4ca3051d246188674a602c https://github.com/OSGeo/grass-website/commit/0b78736776402b566e4ca3051d246188674a602c Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-12 (Wed, 12 Aug 2026) Changed paths: M .github/workflows/additional_checks.yml Log Message: ----------- Update astral-sh/setup-uv action to v10 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Thu Aug 13 10:59:56 2026 From: noreply at github.com (renovate[bot]) Date: Thu, 13 Aug 2026 10:59:56 -0700 Subject: [GRASS-git] [OSGeo/grass] 3f122d: CI(deps): Update ruff to v0.16.3 Message-ID: Branch: refs/heads/renovate/releasebranch_8_5-ruff Home: https://github.com/OSGeo/grass Commit: 3f122de9da049996a46342de017647771aff3dcb https://github.com/OSGeo/grass/commit/3f122de9da049996a46342de017647771aff3dcb Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-13 (Thu, 13 Aug 2026) Changed paths: M .github/workflows/python-code-quality.yml M .pre-commit-config.yaml Log Message: ----------- CI(deps): Update ruff to v0.16.3 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Fri Aug 14 09:53:53 2026 From: noreply at github.com (renovate[bot]) Date: Fri, 14 Aug 2026 09:53:53 -0700 Subject: [GRASS-git] [OSGeo/grass-website] fb4eda: Update astral-sh/setup-uv action to v10 Message-ID: Branch: refs/heads/renovate/astral-sh-setup-uv-10.x Home: https://github.com/OSGeo/grass-website Commit: fb4eda5c93dec594af0826a18297f861f14bb95f https://github.com/OSGeo/grass-website/commit/fb4eda5c93dec594af0826a18297f861f14bb95f Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-14 (Fri, 14 Aug 2026) Changed paths: M .github/workflows/additional_checks.yml Log Message: ----------- Update astral-sh/setup-uv action to v10 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Fri Aug 14 21:04:03 2026 From: noreply at github.com (renovate[bot]) Date: Fri, 14 Aug 2026 21:04:03 -0700 Subject: [GRASS-git] [OSGeo/grass-website] 284770: Update Node.js to v24.19.0 (#693) Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass-website Commit: 284770848130745ab26c53486785779837036084 https://github.com/OSGeo/grass-website/commit/284770848130745ab26c53486785779837036084 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-15 (Sat, 15 Aug 2026) Changed paths: M .devcontainer/devcontainer.json M .nvmrc Log Message: ----------- Update Node.js to v24.19.0 (#693) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Fri Aug 14 21:04:57 2026 From: noreply at github.com (renovate[bot]) Date: Fri, 14 Aug 2026 21:04:57 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/heads/renovate/node-24.x Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Fri Aug 14 21:05:29 2026 From: noreply at github.com (github-actions[bot]) Date: Fri, 14 Aug 2026 21:05:29 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/tags/site-20260815-040459-2847708 Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Fri Aug 14 21:05:32 2026 From: noreply at github.com (github-actions[bot]) Date: Fri, 14 Aug 2026 21:05:32 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/tags/site-20260726-021350-d11306e Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Sat Aug 15 08:36:57 2026 From: noreply at github.com (OSGeo Weblate) Date: Sat, 15 Aug 2026 08:36:57 -0700 Subject: [GRASS-git] [OSGeo/grass] 79d56d: Translations update from OSGeo Weblate (#7818) Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 79d56d91a68f98f1d00e58a7b856c60bfb5d2cf4 https://github.com/OSGeo/grass/commit/79d56d91a68f98f1d00e58a7b856c60bfb5d2cf4 Author: OSGeo Weblate <97247866+osgeoweblate at users.noreply.github.com> Date: 2026-08-15 (Sat, 15 Aug 2026) Changed paths: M locale/po/grasslibs_ar.po M locale/po/grasslibs_bn.po M locale/po/grasslibs_cs.po M locale/po/grasslibs_de.po M locale/po/grasslibs_el.po M locale/po/grasslibs_es.po M locale/po/grasslibs_fi.po M locale/po/grasslibs_fr.po M locale/po/grasslibs_hi.po M locale/po/grasslibs_hu.po M locale/po/grasslibs_id_ID.po M locale/po/grasslibs_it.po M locale/po/grasslibs_ja.po M locale/po/grasslibs_ko.po M locale/po/grasslibs_lv.po M locale/po/grasslibs_ml.po M locale/po/grasslibs_pl.po M locale/po/grasslibs_pt.po M locale/po/grasslibs_pt_BR.po M locale/po/grasslibs_ro.po M locale/po/grasslibs_ru.po M locale/po/grasslibs_si.po M locale/po/grasslibs_sl.po M locale/po/grasslibs_sv.po M locale/po/grasslibs_ta.po M locale/po/grasslibs_th.po M locale/po/grasslibs_tr.po M locale/po/grasslibs_uk.po M locale/po/grasslibs_vi.po M locale/po/grasslibs_zh.po M locale/po/grasslibs_zh_Hant.po M locale/po/grassmods_ar.po M locale/po/grassmods_bn.po M locale/po/grassmods_cs.po M locale/po/grassmods_de.po M locale/po/grassmods_el.po M locale/po/grassmods_es.po M locale/po/grassmods_fi.po M locale/po/grassmods_fr.po M locale/po/grassmods_hi.po M locale/po/grassmods_hu.po M locale/po/grassmods_id_ID.po M locale/po/grassmods_it.po M locale/po/grassmods_ja.po M locale/po/grassmods_ko.po M locale/po/grassmods_lv.po M locale/po/grassmods_ml.po M locale/po/grassmods_pl.po M locale/po/grassmods_pt.po M locale/po/grassmods_pt_BR.po M locale/po/grassmods_ro.po M locale/po/grassmods_ru.po M locale/po/grassmods_si.po M locale/po/grassmods_sl.po M locale/po/grassmods_sv.po M locale/po/grassmods_ta.po M locale/po/grassmods_th.po M locale/po/grassmods_tr.po M locale/po/grassmods_uk.po M locale/po/grassmods_vi.po M locale/po/grassmods_zh.po M locale/po/grassmods_zh_Hant.po M locale/po/grasswxpy_ar.po M locale/po/grasswxpy_bn.po M locale/po/grasswxpy_cs.po M locale/po/grasswxpy_de.po M locale/po/grasswxpy_el.po M locale/po/grasswxpy_es.po M locale/po/grasswxpy_fi.po M locale/po/grasswxpy_fr.po M locale/po/grasswxpy_hi.po M locale/po/grasswxpy_hu.po M locale/po/grasswxpy_id_ID.po M locale/po/grasswxpy_it.po M locale/po/grasswxpy_ja.po M locale/po/grasswxpy_ko.po M locale/po/grasswxpy_lv.po M locale/po/grasswxpy_ml.po M locale/po/grasswxpy_pl.po M locale/po/grasswxpy_pt.po M locale/po/grasswxpy_pt_BR.po M locale/po/grasswxpy_ro.po M locale/po/grasswxpy_ru.po M locale/po/grasswxpy_si.po M locale/po/grasswxpy_sl.po M locale/po/grasswxpy_sv.po M locale/po/grasswxpy_ta.po M locale/po/grasswxpy_th.po M locale/po/grasswxpy_tr.po M locale/po/grasswxpy_uk.po M locale/po/grasswxpy_vi.po M locale/po/grasswxpy_zh.po M locale/po/grasswxpy_zh_Hant.po M locale/tbx/grassglossary_ar.tbx M locale/tbx/grassglossary_bn.tbx M locale/tbx/grassglossary_cs.tbx M locale/tbx/grassglossary_de.tbx M locale/tbx/grassglossary_el.tbx M locale/tbx/grassglossary_es.tbx M locale/tbx/grassglossary_fi.tbx M locale/tbx/grassglossary_fr.tbx M locale/tbx/grassglossary_hi.tbx M locale/tbx/grassglossary_hu.tbx M locale/tbx/grassglossary_id.tbx M locale/tbx/grassglossary_it.tbx M locale/tbx/grassglossary_ja.tbx M locale/tbx/grassglossary_ko.tbx M locale/tbx/grassglossary_lv.tbx M locale/tbx/grassglossary_ml.tbx M locale/tbx/grassglossary_pl.tbx M locale/tbx/grassglossary_pt.tbx M locale/tbx/grassglossary_pt_BR.tbx M locale/tbx/grassglossary_ro.tbx M locale/tbx/grassglossary_ru.tbx M locale/tbx/grassglossary_si.tbx M locale/tbx/grassglossary_sl.tbx M locale/tbx/grassglossary_sv.tbx M locale/tbx/grassglossary_ta.tbx M locale/tbx/grassglossary_th.tbx M locale/tbx/grassglossary_tr.tbx M locale/tbx/grassglossary_uk.tbx M locale/tbx/grassglossary_vi.tbx M locale/tbx/grassglossary_zh_Hans.tbx M locale/tbx/grassglossary_zh_Hant.tbx Log Message: ----------- Translations update from OSGeo Weblate (#7818) Translated using Weblate (French) Currently translated at 36.8% (3731 of 10117 strings) Translated using Weblate (French) Currently translated at 96.6% (3275 of 3390 strings) Translated using Weblate (French) Currently translated at 36.6% (3710 of 10117 strings) Translated using Weblate (French) Currently translated at 95.9% (3252 of 3390 strings) Translated using Weblate (French) Currently translated at 98.2% (1823 of 1855 strings) Update translation files Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Update translation files Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Update translation files Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Update translation files Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Update translation files Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Update translation files Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Translated using Weblate (Chinese (Traditional Han script)) Currently translated at 0.0% (0 of 62 strings) Translated using Weblate (Chinese (Simplified Han script)) Currently translated at 75.7% (50 of 66 strings) Translated using Weblate (Vietnamese) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Ukrainian) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Turkish) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Thai) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Tamil) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Swedish) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Slovenian) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Sinhala) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Russian) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Romanian) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Portuguese (Brazil)) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Portuguese) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Polish) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Malayalam) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Latvian) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Korean) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Japanese) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Italian) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Indonesian) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Hungarian) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Hindi) Currently translated at 65.1% (43 of 66 strings) Translated using Weblate (French) Currently translated at 86.5% (58 of 67 strings) Translated using Weblate (Finnish) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Spanish) Currently translated at 12.1% (8 of 66 strings) Translated using Weblate (Greek) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (German) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Czech) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Bengali) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Arabic) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (French) Currently translated at 36.6% (3708 of 10115 strings) Translated using Weblate (French) Currently translated at 95.0% (3223 of 3390 strings) Translated using Weblate (French) Currently translated at 98.2% (1822 of 1855 strings) Translated using Weblate (Chinese (Simplified Han script)) Currently translated at 29.6% (1005 of 3390 strings) Update translation files Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Update translation files Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Update translation files Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/ar/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/bn/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/cs/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/de/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/el/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/es/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/fi/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/fr/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/hi/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/hu/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/id/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/it/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/ja/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/ko/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/lv/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/ml/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/pl/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/pt/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/pt_BR/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/ro/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/ru/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/si/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/sl/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/sv/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/ta/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/th/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/tr/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/uk/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/vi/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/zh_Hans/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/zh_Hant/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grasslibs/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grasslibs/fr/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassmods/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassmods/fr/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grasswxpy/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grasswxpy/fr/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grasswxpy/zh_Hans/ Translation: GRASS/grassglossary Translation: GRASS/grasslibs Translation: GRASS/grassmods Translation: GRASS/grasswxpy Co-authored-by: Weblate Co-authored-by: Edouard Choiniere Co-authored-by: Liuxs To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 15 08:37:22 2026 From: noreply at github.com (OSGeo Weblate) Date: Sat, 15 Aug 2026 08:37:22 -0700 Subject: [GRASS-git] [OSGeo/grass] 37b428: Translations update from OSGeo Weblate (#7817) Message-ID: Branch: refs/heads/releasebranch_8_5 Home: https://github.com/OSGeo/grass Commit: 37b428b50f001c97038fa72ffc27cef4d2d23186 https://github.com/OSGeo/grass/commit/37b428b50f001c97038fa72ffc27cef4d2d23186 Author: OSGeo Weblate <97247866+osgeoweblate at users.noreply.github.com> Date: 2026-08-15 (Sat, 15 Aug 2026) Changed paths: M locale/po/grasslibs_fr.po M locale/po/grasswxpy_zh.po Log Message: ----------- Translations update from OSGeo Weblate (#7817) Translated using Weblate (French) Currently translated at 98.2% (1822 of 1854 strings) Translated using Weblate (Chinese (Simplified Han script)) Currently translated at 30.5% (1002 of 3278 strings) Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grasslibs-8-5/fr/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grasswxpy-8-5/zh_Hans/ Translation: GRASS/grasslibs 8.5 Translation: GRASS/grasswxpy 8.5 Co-authored-by: Weblate Co-authored-by: Edouard Choiniere Co-authored-by: Liuxs To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 15 09:43:45 2026 From: noreply at github.com (=?UTF-8?B?RWRvdWFyZCBDaG9pbmnDqHJl?=) Date: Sat, 15 Aug 2026 09:43:45 -0700 Subject: [GRASS-git] [OSGeo/grass] 483aae: locale: Update translation files Message-ID: Branch: refs/heads/periodic/update-i18n-31893585626 Home: https://github.com/OSGeo/grass Commit: 483aaecb456d497094139bd54fd5419f3a3a6888 https://github.com/OSGeo/grass/commit/483aaecb456d497094139bd54fd5419f3a3a6888 Author: echoix <27212526+echoix at users.noreply.github.com> Date: 2026-08-15 (Sat, 15 Aug 2026) Changed paths: M locale/templates/grasslibs.pot M locale/templates/grassmods.pot M locale/templates/grasswxpy.pot Log Message: ----------- locale: Update translation files To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 15 09:54:16 2026 From: noreply at github.com (=?UTF-8?B?RWRvdWFyZCBDaG9pbmnDqHJl?=) Date: Sat, 15 Aug 2026 09:54:16 -0700 Subject: [GRASS-git] [OSGeo/grass] 7da715: config.guess + config.sub: updated from http://git... Message-ID: Branch: refs/heads/periodic/update-configure Home: https://github.com/OSGeo/grass Commit: 7da715adae157e04a16588e3fb3194b9e54e301e https://github.com/OSGeo/grass/commit/7da715adae157e04a16588e3fb3194b9e54e301e Author: echoix <27212526+echoix at users.noreply.github.com> Date: 2026-08-15 (Sat, 15 Aug 2026) Changed paths: R config.guess Log Message: ----------- config.guess + config.sub: updated from http://git.savannah.gnu.org/cgit/config.git/plain/ To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 15 09:59:23 2026 From: noreply at github.com (=?UTF-8?B?RWRvdWFyZCBDaG9pbmnDqHJl?=) Date: Sat, 15 Aug 2026 09:59:23 -0700 Subject: [GRASS-git] [OSGeo/grass] Message-ID: Branch: refs/heads/periodic/update-i18n-31893585626 Home: https://github.com/OSGeo/grass To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sun Aug 16 13:40:25 2026 From: noreply at github.com (SAKET KUMAR MALL) Date: Sun, 16 Aug 2026 13:40:25 -0700 Subject: [GRASS-git] [OSGeo/grass] 3ebde0: temporal: Remove SQLite < 3.33 workaround (#7825) Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 3ebde05d387b5fcf1629d28d054adaee7cbdd1e0 https://github.com/OSGeo/grass/commit/3ebde05d387b5fcf1629d28d054adaee7cbdd1e0 Author: SAKET KUMAR MALL <72020337+saket0187 at users.noreply.github.com> Date: 2026-08-16 (Sun, 16 Aug 2026) Changed paths: R lib/temporal/SQL/update_stds_spatial_temporal_extent_template_old.sql R lib/temporal/SQL/update_str3ds_metadata_template_old.sql M lib/temporal/SQL/update_strds_metadata_template.sql R lib/temporal/SQL/update_strds_metadata_template_old.sql R lib/temporal/SQL/update_strds_metadata_template_v3.sql R lib/temporal/SQL/update_stvds_metadata_template_old.sql M python/grass/temporal/abstract_space_time_dataset.py Log Message: ----------- temporal: Remove SQLite < 3.33 workaround (#7825) revert 3723 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sun Aug 16 21:45:21 2026 From: noreply at github.com (renovate[bot]) Date: Sun, 16 Aug 2026 21:45:21 -0700 Subject: [GRASS-git] [OSGeo/grass-website] 24275d: Update dependency prek to v0.4.14 Message-ID: Branch: refs/heads/renovate/prek-0.x Home: https://github.com/OSGeo/grass-website Commit: 24275dac916cee4b02928788ca15014e95df603d https://github.com/OSGeo/grass-website/commit/24275dac916cee4b02928788ca15014e95df603d Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-17 (Mon, 17 Aug 2026) Changed paths: M .github/workflows/additional_checks.yml Log Message: ----------- Update dependency prek to v0.4.14 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Mon Aug 17 20:01:58 2026 From: noreply at github.com (Kaushik Raja) Date: Mon, 17 Aug 2026 20:01:58 -0700 Subject: [GRASS-git] [OSGeo/grass] 251d7f: r.geomorphon: parallelize with OpenMP using memory... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 251d7f0d941858cbc2f8c94bed67c2e7176e3192 https://github.com/OSGeo/grass/commit/251d7f0d941858cbc2f8c94bed67c2e7176e3192 Author: Kaushik Raja <85415462+krcoder123 at users.noreply.github.com> Date: 2026-08-17 (Mon, 17 Aug 2026) Changed paths: M raster/CMakeLists.txt M raster/r.geomorphon/Makefile A raster/r.geomorphon/benchmark/benchmark_r_geomorphon.py M raster/r.geomorphon/local_proto.h M raster/r.geomorphon/main.c M raster/r.geomorphon/memory.c M raster/r.geomorphon/pattern.c M raster/r.geomorphon/r.geomorphon.md M raster/r.geomorphon/tests/r_geomorphon_test.py Log Message: ----------- r.geomorphon: parallelize with OpenMP using memory-bounded banding (#7783) The output is processed in bands sized from a new memory option, with the input strip loaded through per thread descriptors and each band's rows computed in parallel. Output is byte identical to the serial module at every thread count across all twelve outputs, the memory range, and the option matrix. A new nprocs option matches the other parallel modules. To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Mon Aug 17 23:06:28 2026 From: noreply at github.com (Ondrej Pesek) Date: Mon, 17 Aug 2026 23:06:28 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] a372d4: i.landsat8.swlst: fix namedtuple use with duplicat... Message-ID: Branch: refs/heads/grass8 Home: https://github.com/OSGeo/grass-addons Commit: a372d4fbf31c67887374ac8677513561a591be9b https://github.com/OSGeo/grass-addons/commit/a372d4fbf31c67887374ac8677513561a591be9b Author: Ondrej Pesek Date: 2026-08-18 (Tue, 18 Aug 2026) Changed paths: M src/imagery/i.landsat8.swlst/landsat8_mtl.py Log Message: ----------- i.landsat8.swlst: fix namedtuple use with duplicated keys (#1830) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Tue Aug 18 12:19:46 2026 From: noreply at github.com (SAKET KUMAR MALL) Date: Tue, 18 Aug 2026 12:19:46 -0700 Subject: [GRASS-git] [OSGeo/grass] 8f156a: wxGUI/tplot: Make the window resizable and add pad... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 8f156a141931f424ea3b5501ae8cd40d52a3e485 https://github.com/OSGeo/grass/commit/8f156a141931f424ea3b5501ae8cd40d52a3e485 Author: SAKET KUMAR MALL <72020337+saket0187 at users.noreply.github.com> Date: 2026-08-18 (Tue, 18 Aug 2026) Changed paths: M gui/wxpython/tplot/frame.py Log Message: ----------- wxGUI/tplot: Make the window resizable and add padding for nicer look (#7820) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Wed Aug 19 02:37:48 2026 From: noreply at github.com (Anna Petrasova) Date: Wed, 19 Aug 2026 02:37:48 -0700 Subject: [GRASS-git] [OSGeo/grass] 467708: doc: building_with_cmake.md was not built (#7829) Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 4677089e442a50fc713db430de1ac07e6211bbd3 https://github.com/OSGeo/grass/commit/4677089e442a50fc713db430de1ac07e6211bbd3 Author: Anna Petrasova Date: 2026-08-19 (Wed, 19 Aug 2026) Changed paths: M doc/development/CMakeLists.txt M doc/development/Makefile Log Message: ----------- doc: building_with_cmake.md was not built (#7829) * doc: building_with_cmake.md was not built * cmake build too To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Wed Aug 19 06:57:16 2026 From: noreply at github.com (Anna Petrasova) Date: Wed, 19 Aug 2026 06:57:16 -0700 Subject: [GRASS-git] [OSGeo/grass] 0eed10: CMake: Rebuild g.gui.* modules when their sources ... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 0eed10543479097be6f861131a4abfcbb63bc4cb https://github.com/OSGeo/grass/commit/0eed10543479097be6f861131a4abfcbb63bc4cb Author: Anna Petrasova Date: 2026-08-19 (Wed, 19 Aug 2026) Changed paths: M cmake/modules/build_gui_in_subdir.cmake Log Message: ----------- CMake: Rebuild g.gui.* modules when their sources change (#7830) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Wed Aug 19 10:32:28 2026 From: noreply at github.com (Corey White) Date: Wed, 19 Aug 2026 10:32:28 -0700 Subject: [GRASS-git] [OSGeo/grass-website] b3b805: added markdown table render hook, and fallback for... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass-website Commit: b3b805683cab409d774fa1d4a930b191086be070 https://github.com/OSGeo/grass-website/commit/b3b805683cab409d774fa1d4a930b191086be070 Author: Corey White Date: 2026-08-19 (Wed, 19 Aug 2026) Changed paths: M themes/grass/assets/sass/_variables.scss M themes/grass/assets/sass/styles/_layout.scss A themes/grass/layouts/_markup/render-table.html Log Message: ----------- added markdown table render hook, and fallback for pre hugo >=0.134 (#703) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Wed Aug 19 13:09:28 2026 From: noreply at github.com (SAKET KUMAR MALL) Date: Wed, 19 Aug 2026 13:09:28 -0700 Subject: [GRASS-git] [OSGeo/grass] 74eb64: wxGUI/datacatalog : Add STDS in datacatalog (#7608) Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 74eb64c4e9f7670c5d8e57aff23b19b9e05d6763 https://github.com/OSGeo/grass/commit/74eb64c4e9f7670c5d8e57aff23b19b9e05d6763 Author: SAKET KUMAR MALL <72020337+saket0187 at users.noreply.github.com> Date: 2026-08-19 (Wed, 19 Aug 2026) Changed paths: A gui/icons/grass/str3ds.png A gui/icons/grass/str3ds.svg A gui/icons/grass/strds.png A gui/icons/grass/strds.svg A gui/icons/grass/stvds.png A gui/icons/grass/stvds.svg M gui/wxpython/core/gconsole.py M gui/wxpython/datacatalog/catalog.py M gui/wxpython/datacatalog/g.gui.datacatalog.md M gui/wxpython/datacatalog/toolbars.py M gui/wxpython/datacatalog/tree.py M python/grass/grassdb/data.py M python/grass/temporal/gui_support.py Log Message: ----------- wxGUI/datacatalog : Add STDS in datacatalog (#7608) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Wed Aug 19 16:07:05 2026 From: noreply at github.com (renovate[bot]) Date: Wed, 19 Aug 2026 16:07:05 -0700 Subject: [GRASS-git] [OSGeo/grass-website] 1c0eb5: Update nginx Docker tag to v1.31.4 Message-ID: Branch: refs/heads/renovate/nginx-1.x Home: https://github.com/OSGeo/grass-website Commit: 1c0eb5df3b46855d464e20b36c556b845971dfe3 https://github.com/OSGeo/grass-website/commit/1c0eb5df3b46855d464e20b36c556b845971dfe3 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-19 (Wed, 19 Aug 2026) Changed paths: M docker-compose.yml Log Message: ----------- Update nginx Docker tag to v1.31.4 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Wed Aug 19 18:29:21 2026 From: noreply at github.com (github-actions[bot]) Date: Wed, 19 Aug 2026 18:29:21 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/tags/site-20260820-012850-b3b8056 Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Wed Aug 19 18:29:22 2026 From: noreply at github.com (github-actions[bot]) Date: Wed, 19 Aug 2026 18:29:22 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/tags/site-20260729-172702-d771a25 Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Wed Aug 19 22:54:32 2026 From: noreply at github.com (renovate[bot]) Date: Wed, 19 Aug 2026 22:54:32 -0700 Subject: [GRASS-git] [OSGeo/grass-website] 3df480: Update dependency sass/dart-sass to v1.103.0 Message-ID: Branch: refs/heads/renovate/sass-dart-sass-1.x Home: https://github.com/OSGeo/grass-website Commit: 3df4803eda06833a24ede102414e4b07cb65cb70 https://github.com/OSGeo/grass-website/commit/3df4803eda06833a24ede102414e4b07cb65cb70 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-20 (Thu, 20 Aug 2026) Changed paths: M .github/workflows/build-production-site.yml Log Message: ----------- Update dependency sass/dart-sass to v1.103.0 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Thu Aug 20 03:14:45 2026 From: noreply at github.com (Tomas Zigo) Date: Thu, 20 Aug 2026 03:14:45 -0700 Subject: [GRASS-git] [OSGeo/grass] 236b82: wxGUI/jupyter_notebook: fix copying missing templa... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 236b827b293097fbea7a83731ea1878e77eab6fe https://github.com/OSGeo/grass/commit/236b827b293097fbea7a83731ea1878e77eab6fe Author: Tomas Zigo <50632337+tmszi at users.noreply.github.com> Date: 2026-08-20 (Thu, 20 Aug 2026) Changed paths: M gui/wxpython/CMakeLists.txt Log Message: ----------- wxGUI/jupyter_notebook: fix copying missing template notebook files (#7809) Failure during the compilation process if CMake was used. Co-authored-by: Linda Karlovska <49241681+lindakarlovska at users.noreply.github.com> To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Thu Aug 20 06:10:46 2026 From: noreply at github.com (SAKET KUMAR MALL) Date: Thu, 20 Aug 2026 06:10:46 -0700 Subject: [GRASS-git] [OSGeo/grass] 058b1a: wxGUI/datacatalog: Add db path tooltip to nodes (#... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 058b1a29c3edc70d2fb26f7c3b859e7d1618bcc5 https://github.com/OSGeo/grass/commit/058b1a29c3edc70d2fb26f7c3b859e7d1618bcc5 Author: SAKET KUMAR MALL <72020337+saket0187 at users.noreply.github.com> Date: 2026-08-20 (Thu, 20 Aug 2026) Changed paths: M gui/wxpython/datacatalog/tree.py Log Message: ----------- wxGUI/datacatalog: Add db path tooltip to nodes (#7824) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Thu Aug 20 06:13:57 2026 From: noreply at github.com (SAKET KUMAR MALL) Date: Thu, 20 Aug 2026 06:13:57 -0700 Subject: [GRASS-git] [OSGeo/grass] 681365: wxGUI/animation: Fix freeze and descriptor exhaust... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 681365cc5497bc172ceda13e4e4d3170218fdeb1 https://github.com/OSGeo/grass/commit/681365cc5497bc172ceda13e4e4d3170218fdeb1 Author: SAKET KUMAR MALL <72020337+saket0187 at users.noreply.github.com> Date: 2026-08-20 (Thu, 20 Aug 2026) Changed paths: M gui/wxpython/animation/controller.py M gui/wxpython/animation/provider.py Log Message: ----------- wxGUI/animation: Fix freeze and descriptor exhaustion on large datasets (#7811) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Thu Aug 20 10:33:00 2026 From: noreply at github.com (Corey White) Date: Thu, 20 Aug 2026 10:33:00 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] d08d38: r.dem: New toolset for DEM co-registration, differ... Message-ID: Branch: refs/heads/grass8 Home: https://github.com/OSGeo/grass-addons Commit: d08d3855fee677cee756453b391ad877fbafbb53 https://github.com/OSGeo/grass-addons/commit/d08d3855fee677cee756453b391ad877fbafbb53 Author: Corey White Date: 2026-08-20 (Thu, 20 Aug 2026) Changed paths: A src/raster/r.dem/CMakeLists.txt A src/raster/r.dem/Makefile A src/raster/r.dem/r.dem.bias/CMakeLists.txt A src/raster/r.dem/r.dem.bias/Makefile A src/raster/r.dem/r.dem.bias/r.dem.bias.html A src/raster/r.dem/r.dem.bias/r.dem.bias.md A src/raster/r.dem/r.dem.bias/r.dem.bias.py A src/raster/r.dem/r.dem.bias/r_dem_bias_methods.png A src/raster/r.dem/r.dem.bias/tests/conftest.py A src/raster/r.dem/r.dem.bias/tests/r_dem_bias_test.py A src/raster/r.dem/r.dem.change/CMakeLists.txt A src/raster/r.dem/r.dem.change/Makefile A src/raster/r.dem/r.dem.change/r.dem.change.html A src/raster/r.dem/r.dem.change/r.dem.change.md A src/raster/r.dem/r.dem.change/r.dem.change.py A src/raster/r.dem/r.dem.change/r_dem_change_volumes.png A src/raster/r.dem/r.dem.change/requirements.txt A src/raster/r.dem/r.dem.change/tests/conftest.py A src/raster/r.dem/r.dem.change/tests/r_dem_change_test.py A src/raster/r.dem/r.dem.coregister/CMakeLists.txt A src/raster/r.dem/r.dem.coregister/Makefile A src/raster/r.dem/r.dem.coregister/r.dem.coregister.html A src/raster/r.dem/r.dem.coregister/r.dem.coregister.md A src/raster/r.dem/r.dem.coregister/r.dem.coregister.py A src/raster/r.dem/r.dem.coregister/r_dem_coregister_residuals.png A src/raster/r.dem/r.dem.coregister/tests/conftest.py A src/raster/r.dem/r.dem.coregister/tests/r_dem_coregister_test.py A src/raster/r.dem/r.dem.errprop/CMakeLists.txt A src/raster/r.dem/r.dem.errprop/Makefile A src/raster/r.dem/r.dem.errprop/r.dem.errprop.html A src/raster/r.dem/r.dem.errprop/r.dem.errprop.md A src/raster/r.dem/r.dem.errprop/r.dem.errprop.py A src/raster/r.dem/r.dem.errprop/r_dem_errprop_classes.png A src/raster/r.dem/r.dem.errprop/requirements.txt A src/raster/r.dem/r.dem.errprop/tests/conftest.py A src/raster/r.dem/r.dem.errprop/tests/r_dem_errprop_test.py A src/raster/r.dem/r.dem.html A src/raster/r.dem/r.dem.icp/CMakeLists.txt A src/raster/r.dem/r.dem.icp/Makefile A src/raster/r.dem/r.dem.icp/icp.c A src/raster/r.dem/r.dem.icp/linalg.c A src/raster/r.dem/r.dem.icp/main.c A src/raster/r.dem/r.dem.icp/normals.c A src/raster/r.dem/r.dem.icp/r.dem.icp.html A src/raster/r.dem/r.dem.icp/r.dem.icp.md A src/raster/r.dem/r.dem.icp/r_dem_icp_alignment.png A src/raster/r.dem/r.dem.icp/rdemicp.h A src/raster/r.dem/r.dem.icp/resample.c A src/raster/r.dem/r.dem.icp/tests/conftest.py A src/raster/r.dem/r.dem.icp/tests/test_r_dem_icp.py A src/raster/r.dem/r.dem.icp/utils.c A src/raster/r.dem/r.dem.lod/CMakeLists.txt A src/raster/r.dem/r.dem.lod/Makefile A src/raster/r.dem/r.dem.lod/r.dem.lod.html A src/raster/r.dem/r.dem.lod/r.dem.lod.md A src/raster/r.dem/r.dem.lod/r.dem.lod.py A src/raster/r.dem/r.dem.lod/r_dem_lod_local.png A src/raster/r.dem/r.dem.lod/requirements.txt A src/raster/r.dem/r.dem.lod/tests/conftest.py A src/raster/r.dem/r.dem.lod/tests/r_dem_lod_test.py A src/raster/r.dem/r.dem.md A src/raster/r.dem/r.dem.nk/CMakeLists.txt A src/raster/r.dem/r.dem.nk/Makefile A src/raster/r.dem/r.dem.nk/main.c A src/raster/r.dem/r.dem.nk/r.dem.nk.html A src/raster/r.dem/r.dem.nk/r.dem.nk.md A src/raster/r.dem/r.dem.nk/r_dem_nk_convergence.png A src/raster/r.dem/r.dem.nk/tests/conftest.py A src/raster/r.dem/r.dem.nk/tests/r_dem_nk_test.py A src/raster/r.dem/r.dem.screen/CMakeLists.txt A src/raster/r.dem/r.dem.screen/Makefile A src/raster/r.dem/r.dem.screen/r.dem.screen.html A src/raster/r.dem/r.dem.screen/r.dem.screen.md A src/raster/r.dem/r.dem.screen/r.dem.screen.py A src/raster/r.dem/r.dem.screen/r_dem_screen_triage.png A src/raster/r.dem/r.dem.screen/tests/conftest.py A src/raster/r.dem/r.dem.screen/tests/r_dem_screen_test.py A src/raster/r.dem/r.dem.stats/CMakeLists.txt A src/raster/r.dem/r.dem.stats/Makefile A src/raster/r.dem/r.dem.stats/r.dem.stats.html A src/raster/r.dem/r.dem.stats/r.dem.stats.md A src/raster/r.dem/r.dem.stats/r.dem.stats.py A src/raster/r.dem/r.dem.stats/r_dem_stats_metrics.png A src/raster/r.dem/r.dem.stats/tests/conftest.py A src/raster/r.dem/r.dem.stats/tests/r_dem_stats_test.py A src/raster/r.dem/r_dem_examples.ipynb A src/raster/r.dem/r_dem_scene.png A src/raster/r.dem/r_dem_workflow.mmd A src/raster/r.dem/r_dem_workflow.png A src/raster/r.dem/testsuite/test_r_dem_nc_workflow.py M src/toolboxes.xml Log Message: ----------- r.dem: New toolset for DEM co-registration, differencing, and topographic change analysis (#1829) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Thu Aug 20 10:58:14 2026 From: noreply at github.com (Anna Petrasova) Date: Thu, 20 Aug 2026 10:58:14 -0700 Subject: [GRASS-git] [OSGeo/grass] 28bf45: CMake: Copy proj tables to build output tree (#7831) Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 28bf457d525dea577549759501d3445f0a83335e https://github.com/OSGeo/grass/commit/28bf457d525dea577549759501d3445f0a83335e Author: Anna Petrasova Date: 2026-08-20 (Thu, 20 Aug 2026) Changed paths: M lib/proj/CMakeLists.txt Log Message: ----------- CMake: Copy proj tables to build output tree (#7831) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Thu Aug 20 11:00:52 2026 From: noreply at github.com (renovate[bot]) Date: Thu, 20 Aug 2026 11:00:52 -0700 Subject: [GRASS-git] [OSGeo/grass] f3ccbf: CI(deps): Update ruff Message-ID: Branch: refs/heads/renovate/releasebranch_8_5-ruff Home: https://github.com/OSGeo/grass Commit: f3ccbfd8b3d256d48e8c33c2528f03c5f9b9e621 https://github.com/OSGeo/grass/commit/f3ccbfd8b3d256d48e8c33c2528f03c5f9b9e621 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-20 (Thu, 20 Aug 2026) Changed paths: M .github/workflows/python-code-quality.yml M .pre-commit-config.yaml Log Message: ----------- CI(deps): Update ruff To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Thu Aug 20 15:09:30 2026 From: noreply at github.com (renovate[bot]) Date: Thu, 20 Aug 2026 15:09:30 -0700 Subject: [GRASS-git] [OSGeo/grass] 88cca1: CI(deps): Update ruff to v0.16.4 Message-ID: Branch: refs/heads/renovate/releasebranch_8_5-ruff Home: https://github.com/OSGeo/grass Commit: 88cca107a595479782e397bf71465cf329a5901b https://github.com/OSGeo/grass/commit/88cca107a595479782e397bf71465cf329a5901b Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-20 (Thu, 20 Aug 2026) Changed paths: M .github/workflows/python-code-quality.yml M .pre-commit-config.yaml Log Message: ----------- CI(deps): Update ruff to v0.16.4 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Thu Aug 20 19:16:40 2026 From: noreply at github.com (renovate[bot]) Date: Thu, 20 Aug 2026 19:16:40 -0700 Subject: [GRASS-git] [OSGeo/grass-website] ed4ab3: Update dependency sass/dart-sass to v1.103.1 Message-ID: Branch: refs/heads/renovate/sass-dart-sass-1.x Home: https://github.com/OSGeo/grass-website Commit: ed4ab32c98110eb609b6fe2ca415191fe8c56e7c https://github.com/OSGeo/grass-website/commit/ed4ab32c98110eb609b6fe2ca415191fe8c56e7c Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-21 (Fri, 21 Aug 2026) Changed paths: M .github/workflows/build-production-site.yml Log Message: ----------- Update dependency sass/dart-sass to v1.103.1 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Fri Aug 21 06:33:01 2026 From: noreply at github.com (SAKET KUMAR MALL) Date: Fri, 21 Aug 2026 06:33:01 -0700 Subject: [GRASS-git] [OSGeo/grass] 2446d8: wxGUI/animation: Integrate `g.gui.animation` into ... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 2446d8809a2ea014df3c47d9fd86aeced14d0ac6 https://github.com/OSGeo/grass/commit/2446d8809a2ea014df3c47d9fd86aeced14d0ac6 Author: SAKET KUMAR MALL <72020337+saket0187 at users.noreply.github.com> Date: 2026-08-21 (Fri, 21 Aug 2026) Changed paths: M gui/wxpython/animation/frame.py A gui/wxpython/animation/panels.py M gui/wxpython/animation/toolbars.py M gui/wxpython/main_window/frame.py Log Message: ----------- wxGUI/animation: Integrate `g.gui.animation` into the GUI as a tab (#7823) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Fri Aug 21 07:06:10 2026 From: noreply at github.com (Kaushik Raja) Date: Fri, 21 Aug 2026 07:06:10 -0700 Subject: [GRASS-git] [OSGeo/grass] 63e582: r.proj: replace gunittest testsuite with pytest me... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 63e582d65f4a105152548db0fe5fb869215753b5 https://github.com/OSGeo/grass/commit/63e582d65f4a105152548db0fe5fb869215753b5 Author: Kaushik Raja <85415462+krcoder123 at users.noreply.github.com> Date: 2026-08-21 (Fri, 21 Aug 2026) Changed paths: A raster/r.proj/tests/conftest.py A raster/r.proj/tests/r_proj_methods_test.py A raster/r.proj/tests/r_proj_output_test.py R raster/r.proj/testsuite/test_rproj.py Log Message: ----------- r.proj: replace gunittest testsuite with pytest method reference tests (#7766) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Fri Aug 21 09:21:07 2026 From: noreply at github.com (Veronica Andreo) Date: Fri, 21 Aug 2026 09:21:07 -0700 Subject: [GRASS-git] [OSGeo/grass-website] c323ad: News: add draft community meeting report (#665) Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass-website Commit: c323ad1bf5d43d79b81c4c5416b5271872a89e38 https://github.com/OSGeo/grass-website/commit/c323ad1bf5d43d79b81c4c5416b5271872a89e38 Author: Veronica Andreo Date: 2026-08-21 (Fri, 21 Aug 2026) Changed paths: A content/news/2026_07_20_Report_Community_Meeting_San_Michele_2026.md A static/images/news/grass_community_meeting_20260715.webp A static/images/news/grass_community_meeting_20260716.webp A static/images/news/grass_community_meeting_20260717.webp M themes/grass/layouts/index.html Log Message: ----------- News: add draft community meeting report (#665) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Fri Aug 21 09:30:06 2026 From: noreply at github.com (github-actions[bot]) Date: Fri, 21 Aug 2026 09:30:06 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/tags/site-20260821-162935-c323ad1 Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Fri Aug 21 09:30:09 2026 From: noreply at github.com (github-actions[bot]) Date: Fri, 21 Aug 2026 09:30:09 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/tags/site-20260731-203646-26d9faa Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Fri Aug 21 12:55:01 2026 From: noreply at github.com (SAKET KUMAR MALL) Date: Fri, 21 Aug 2026 12:55:01 -0700 Subject: [GRASS-git] [OSGeo/grass] 8f39c4: grass.pygrass: Fix resource_tracker semaphore warn... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 8f39c47c80befa707f6adf0ea8bc890223d84be1 https://github.com/OSGeo/grass/commit/8f39c47c80befa707f6adf0ea8bc890223d84be1 Author: SAKET KUMAR MALL <72020337+saket0187 at users.noreply.github.com> Date: 2026-08-21 (Fri, 21 Aug 2026) Changed paths: M python/grass/pygrass/rpc/base.py Log Message: ----------- grass.pygrass: Fix resource_tracker semaphore warning at exit (#7833) Unlink the RPC server lock semaphore when the server is stopped, so temporal tools no longer emit a resource_tracker warning at exit. Note :- Messenger holds the same kind of lock, but bisecting showed only the CLibrariesInterface lock survives to shutdown, so changing its stop() would fix nothing. To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Fri Aug 21 17:24:32 2026 From: noreply at github.com (Anna Petrasova) Date: Fri, 21 Aug 2026 17:24:32 -0700 Subject: [GRASS-git] [OSGeo/grass-website] 80b209: fix link from carousel (#708) Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass-website Commit: 80b209bfcd571e78b53643b33be4d2e586e73ee8 https://github.com/OSGeo/grass-website/commit/80b209bfcd571e78b53643b33be4d2e586e73ee8 Author: Anna Petrasova Date: 2026-08-22 (Sat, 22 Aug 2026) Changed paths: M themes/grass/layouts/index.html Log Message: ----------- fix link from carousel (#708) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Fri Aug 21 17:25:44 2026 From: noreply at github.com (github-actions[bot]) Date: Fri, 21 Aug 2026 17:25:44 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/tags/site-20260822-002513-80b209b Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Fri Aug 21 17:25:46 2026 From: noreply at github.com (github-actions[bot]) Date: Fri, 21 Aug 2026 17:25:46 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/tags/site-20260731-203913-227cf6e Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Sat Aug 22 09:26:58 2026 From: noreply at github.com (github-actions[bot]) Date: Sat, 22 Aug 2026 09:26:58 -0700 Subject: [GRASS-git] [OSGeo/grass] Message-ID: Branch: refs/heads/periodic/update-configure Home: https://github.com/OSGeo/grass To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 22 09:58:49 2026 From: noreply at github.com (Corey White) Date: Sat, 22 Aug 2026 09:58:49 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] 388bb1: v.surf.rst.cv: Add additional parameters for cross... Message-ID: Branch: refs/heads/grass8 Home: https://github.com/OSGeo/grass-addons Commit: 388bb1f668f6d8d060aa285e5bea5f91238e8e20 https://github.com/OSGeo/grass-addons/commit/388bb1f668f6d8d060aa285e5bea5f91238e8e20 Author: Corey White Date: 2026-08-22 (Sat, 22 Aug 2026) Changed paths: A src/vector/v.surf.rst.cv/tests/conftest.py A src/vector/v.surf.rst.cv/tests/v_surf_rst_cv_test.py R src/vector/v.surf.rst.cv/testsuite/test_v_surf_rast_cv.py A src/vector/v.surf.rst.cv/testsuite/test_v_surf_rst_cv.py M src/vector/v.surf.rst.cv/v.surf.rst.cv.html M src/vector/v.surf.rst.cv/v.surf.rst.cv.md M src/vector/v.surf.rst.cv/v.surf.rst.cv.py Log Message: ----------- v.surf.rst.cv: Add additional parameters for cross-validation. (#1822) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Sat Aug 22 10:13:33 2026 From: noreply at github.com (=?UTF-8?B?RWRvdWFyZCBDaG9pbmnDqHJl?=) Date: Sat, 22 Aug 2026 10:13:33 -0700 Subject: [GRASS-git] [OSGeo/grass] 2bcba5: locale: Update translation files Message-ID: Branch: refs/heads/periodic/update-i18n-32582676733 Home: https://github.com/OSGeo/grass Commit: 2bcba56498ae8f941961a7c9f906c5b89edb5f96 https://github.com/OSGeo/grass/commit/2bcba56498ae8f941961a7c9f906c5b89edb5f96 Author: echoix <27212526+echoix at users.noreply.github.com> Date: 2026-08-22 (Sat, 22 Aug 2026) Changed paths: M locale/templates/grasslibs.pot M locale/templates/grassmods.pot M locale/templates/grasswxpy.pot Log Message: ----------- locale: Update translation files To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 22 10:35:18 2026 From: noreply at github.com (github-actions[bot]) Date: Sat, 22 Aug 2026 10:35:18 -0700 Subject: [GRASS-git] [OSGeo/grass] f87bf8: locale: Update translation files (122) (#7838) Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: f87bf846fea303f5fc4fc383e6b520ab901f5c8d https://github.com/OSGeo/grass/commit/f87bf846fea303f5fc4fc383e6b520ab901f5c8d Author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Date: 2026-08-22 (Sat, 22 Aug 2026) Changed paths: M locale/templates/grasslibs.pot M locale/templates/grassmods.pot M locale/templates/grasswxpy.pot Log Message: ----------- locale: Update translation files (122) (#7838) locale: Update translation files Co-authored-by: echoix <27212526+echoix at users.noreply.github.com> To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 22 10:35:20 2026 From: noreply at github.com (=?UTF-8?B?RWRvdWFyZCBDaG9pbmnDqHJl?=) Date: Sat, 22 Aug 2026 10:35:20 -0700 Subject: [GRASS-git] [OSGeo/grass] Message-ID: Branch: refs/heads/periodic/update-i18n-32582676733 Home: https://github.com/OSGeo/grass To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sun Aug 23 04:16:32 2026 From: noreply at github.com (R Sai Pranav) Date: Sun, 23 Aug 2026 04:16:32 -0700 Subject: [GRASS-git] [OSGeo/grass] fc2cd0: r.coin: Fail when r.stats returns no data (#7841) Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: fc2cd0a8f53679edc85a0b75d0ccef98f192fb6e https://github.com/OSGeo/grass/commit/fc2cd0a8f53679edc85a0b75d0ccef98f192fb6e Author: R Sai Pranav Date: 2026-08-23 (Sun, 23 Aug 2026) Changed paths: M raster/r.coin/make_coin.c M raster/r.coin/tests/test_coin.py Log Message: ----------- r.coin: Fail when r.stats returns no data (#7841) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Mon Aug 24 11:41:02 2026 From: noreply at github.com (Anna Petrasova) Date: Mon, 24 Aug 2026 11:41:02 -0700 Subject: [GRASS-git] [OSGeo/grass] adc722: r.sim: fix infiltration implementation (#5623) Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: adc72202d77f19806699e870c09e025904221fde https://github.com/OSGeo/grass/commit/adc72202d77f19806699e870c09e025904221fde Author: Anna Petrasova Date: 2026-08-24 (Mon, 24 Aug 2026) Changed paths: A raster/r.sim/r.sim.water/r.sim.water.ipynb M raster/r.sim/r.sim.water/testsuite/data/depth_complex.pack A raster/r.sim/r.sim.water/testsuite/data/depth_infil.pack M raster/r.sim/r.sim.water/testsuite/data/discharge_complex.pack M raster/r.sim/r.sim.water/testsuite/test_r_sim_water.py M raster/r.sim/simlib/hydro.c M raster/r.sim/simlib/input.c Log Message: ----------- r.sim: fix infiltration implementation (#5623) * r.sim: fix infiltration computation * fix order, add test * forgotten file * added testing notebook to run in binder * fix paths for binder * don't use log legend, fails with 0 * corrected behavior * fix tests * improve notebook * fix parameter * remove not needed comments from tests * remove trapezoid rule multiplication, add comments * don't remove trapezoidal rule to depth to not change results * add condition to filter infil > 0 --------- Co-authored-by: Corey White To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Mon Aug 24 14:57:40 2026 From: noreply at github.com (Anna Petrasova) Date: Mon, 24 Aug 2026 14:57:40 -0700 Subject: [GRASS-git] [OSGeo/grass] 1c6843: r.in.pdal: fix reported data extent when CRS doesn... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 1c684328ebea801f9838e5723bccd4af6b12001e https://github.com/OSGeo/grass/commit/1c684328ebea801f9838e5723bccd4af6b12001e Author: Anna Petrasova Date: 2026-08-24 (Mon, 24 Aug 2026) Changed paths: M raster/r.in.pdal/info.cpp M raster/r.in.pdal/info.h M raster/r.in.pdal/main.cpp M raster/r.in.pdal/projection.c M raster/r.in.pdal/r.in.pdal.html M raster/r.in.pdal/r.in.pdal.md A raster/r.in.pdal/testsuite/data/points_3358.las A raster/r.in.pdal/testsuite/data/points_6346.las A raster/r.in.pdal/testsuite/test_r_in_pdal_extent.py Log Message: ----------- r.in.pdal: fix reported data extent when CRS doesn't match (#6465) * r.in.pdal: fix reported data extent when CRS doesn't match * fix tests * forgot to add test las files * address review, improve test * set higher delta for macOS * add points along boox edges * address review * minor improvments * address review --------- Co-authored-by: Corey White To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Mon Aug 24 15:10:07 2026 From: noreply at github.com (Corey White) Date: Mon, 24 Aug 2026 15:10:07 -0700 Subject: [GRASS-git] [OSGeo/grass] 18f598: docs: Add name to GRASS citation list (#7845) Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 18f5980b6a8ead3259b977b3f9653d03d6efb92e https://github.com/OSGeo/grass/commit/18f5980b6a8ead3259b977b3f9653d03d6efb92e Author: Corey White Date: 2026-08-24 (Mon, 24 Aug 2026) Changed paths: M CITATION.cff Log Message: ----------- docs: Add name to GRASS citation list (#7845) * citation: Add name to GRASS Dev citation * Reverted GRASS version and changed order To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Mon Aug 24 15:30:30 2026 From: noreply at github.com (=?UTF-8?B?TcSBcmlzIE5hcnRpxaFz?=) Date: Mon, 24 Aug 2026 15:30:30 -0700 Subject: [GRASS-git] [OSGeo/grass] 8ecfa8: r.stats: bump up counts storage to unsigned long l... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 8ecfa87383928735946e5d85e3811f16d4531422 https://github.com/OSGeo/grass/commit/8ecfa87383928735946e5d85e3811f16d4531422 Author: M?ris Narti?s Date: 2026-08-25 (Tue, 25 Aug 2026) Changed paths: M raster/r.stats/stats.c Log Message: ----------- r.stats: bump up counts storage to unsigned long long (#7790) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Mon Aug 24 19:40:56 2026 From: noreply at github.com (Anna Petrasova) Date: Mon, 24 Aug 2026 19:40:56 -0700 Subject: [GRASS-git] [OSGeo/grass] 8d92e4: doc: remove stale fields in CITATION.cff (#7846) Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 8d92e4594a9359143f00c7dbbe849f46db4327c6 https://github.com/OSGeo/grass/commit/8d92e4594a9359143f00c7dbbe849f46db4327c6 Author: Anna Petrasova Date: 2026-08-24 (Mon, 24 Aug 2026) Changed paths: M CITATION.cff Log Message: ----------- doc: remove stale fields in CITATION.cff (#7846) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Mon Aug 24 20:07:58 2026 From: noreply at github.com (Corey White) Date: Mon, 24 Aug 2026 20:07:58 -0700 Subject: [GRASS-git] [OSGeo/grass] f5ebd7: v.ppa: Point Pattern Analysis (#3826) Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: f5ebd74c5cf2a1c1fdeeee2c5cfa7702f7fdc2e1 https://github.com/OSGeo/grass/commit/f5ebd74c5cf2a1c1fdeeee2c5cfa7702f7fdc2e1 Author: Corey White Date: 2026-08-24 (Mon, 24 Aug 2026) Changed paths: M gui/wxpython/xml/toolboxes.xml M vector/CMakeLists.txt M vector/Makefile A vector/v.ppa/Makefile A vector/v.ppa/doc_figures.py A vector/v.ppa/f_function.c A vector/v.ppa/g_function.c A vector/v.ppa/k_function.c A vector/v.ppa/local_proto.h A vector/v.ppa/main.c A vector/v.ppa/result.c A vector/v.ppa/tests/conftest.py A vector/v.ppa/tests/v_ppa_test.py A vector/v.ppa/v.ppa.html A vector/v.ppa/v.ppa.md A vector/v.ppa/v_ppa_f.png A vector/v.ppa/v_ppa_g.png A vector/v.ppa/v_ppa_k.png A vector/v.ppa/v_ppa_l.png A vector/v.ppa/v_ppa_patterns.png Log Message: ----------- v.ppa: Point Pattern Analysis (#3826) * v.ppa: Point Pattern Analysis * Changed how vector ponits are counted * Update vector/v.ppa/main.c Co-authored-by: Lo?c Bartoletti * Update vector/v.ppa/main.c Co-authored-by: Lo?c Bartoletti * Update vector/v.ppa/main.c Co-authored-by: Lo?c Bartoletti * Update vector/v.ppa/main.c Co-authored-by: Lo?c Bartoletti * Update vector/v.ppa/main.c Co-authored-by: Lo?c Bartoletti * Update vector/v.ppa/main.c Co-authored-by: Lo?c Bartoletti * Moved sqrt call outside of ec. distance loop * Updated docs * added random seed for random points * updated g-function to return g-value under csr * updated g-function docs * Updated K and L functions and MC Sim * Added base setup for JSON support * Added tests * Added json output to k and l functions * Added markdown to fix build issue * Updated docs * v.ppa: Rework estimators, interface, and tests Restructure the tool for core inclusion and fix correctness problems found in review: - Split main.c into per-function files (g_function.c, f_function.c, k_function.c, result.c) sharing local_proto.h. - Use the computational region as the observation window for the intensity estimate, F function sampling, edge correction geometry, and default distance range. Points outside the region are ignored with a warning. - Add Ripley's isotropic edge correction for the K and L functions (correction=isotropic|none, default isotropic), using the closed form for rectangular windows. - Evaluate K and L up to max_distance (default one quarter of the shorter region side) instead of the O(n^2) pattern diameter, and estimate K with one radius query per point. - Print results to standard output by default with format=plain|csv|json; JSON output is a records array with method, point count, intensity, window, and correction metadata. The output option optionally writes to a file for all methods. - Fix correctness bugs: intensity truncated to int made the G CSR reference always zero, kdtree_knn was called with k=2 writing into scalars, duplicate coordinates were dropped from the k-d tree, omitting output crashed on fopen(NULL), and num_distances was ignored by the G and F functions. - Remove the unfinished Monte Carlo envelope code and the simulations option; simulation envelopes are planned as a follow-up (see TODO in the manual). - Add the nprocs and seed standard options; report all functions together with their theoretical values under CSR. - Replace the gunittest testsuite and committed test data with pytest tests on seeded synthetic patterns that assert agreement with CSR theory, clustering detection, and edge correction behavior. - Register the tool in vector/CMakeLists.txt and use grass/gjson.h instead of the removed grass/parson.h. - Rewrite the manual pages. The restructured estimators and the isotropic correction were implemented with AI assistance; the correction was validated numerically against a brute-force estimate of the circle fraction inside the window, and the estimators against CSR theory on seeded random patterns. * v.ppa: Add manual figures for the summary functions Add a pattern map figure (clustered, random, dispersed) rendered with d.vect and one plot per function comparing the three patterns against the CSR expectation. The figures are generated by the included doc_figures.py script from seeded synthetic patterns, so they are reproducible. Created with AI assistance. * style: Format cmake files with Gersemi * Add tool to the 'Vector Report and Statistics' and 'Point Analysis' toolboxes --------- Co-authored-by: Corey White Co-authored-by: Lo?c Bartoletti Co-authored-by: Edouard Choini?re <27212526+echoix at users.noreply.github.com> To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Mon Aug 24 20:55:16 2026 From: noreply at github.com (Corey White) Date: Mon, 24 Aug 2026 20:55:16 -0700 Subject: [GRASS-git] [OSGeo/grass] 961201: tools: Fix multiplications converted to a larger t... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 961201997595e56cde5dfa4660f3dda3d1bfeb09 https://github.com/OSGeo/grass/commit/961201997595e56cde5dfa4660f3dda3d1bfeb09 Author: Corey White Date: 2026-08-25 (Tue, 25 Aug 2026) Changed paths: M display/d.graph/do_graph.c M display/d.legend/draw.c M imagery/i.segment/flag.c M raster3d/r3.in.v5d/main.c M raster3d/r3.out.v5d/main.c M vector/v.vol.rst/user3.c M visualization/ximgview/color.c Log Message: ----------- tools: Fix multiplications converted to a larger type (#7708) * tools: Fix multiplications converted to a larger type Cast the first operand so that integer products used as allocation sizes, memset lengths, cell counts, and file offsets are computed in size_t, long, or off_t instead of int, and so that int or float products consumed as double (D_text_size, floor, region bounds) are computed in double. Fixes 24 CodeQL cpp/integer-multiplication-cast-to-long alerts across display, general, imagery, raster3d, vector, and visualization tools. * removed cases that require further investigation To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Tue Aug 25 06:48:47 2026 From: noreply at github.com (SAKET KUMAR MALL) Date: Tue, 25 Aug 2026 06:48:47 -0700 Subject: [GRASS-git] [OSGeo/grass] 67e876: wxGUI/datacatalog: Add Display animation option fo... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 67e876e30edd065558e28c884562fe595bedf80d https://github.com/OSGeo/grass/commit/67e876e30edd065558e28c884562fe595bedf80d Author: SAKET KUMAR MALL <72020337+saket0187 at users.noreply.github.com> Date: 2026-08-25 (Tue, 25 Aug 2026) Changed paths: M gui/wxpython/animation/frame.py M gui/wxpython/animation/panels.py M gui/wxpython/datacatalog/tree.py M gui/wxpython/lmgr/frame.py M gui/wxpython/main_window/frame.py Log Message: ----------- wxGUI/datacatalog: Add Display animation option for space time datasets (#7834) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Tue Aug 25 12:12:57 2026 From: noreply at github.com (Corey White) Date: Tue, 25 Aug 2026 12:12:57 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] ab57a4: r.random.walk: Fix divison by zero error when npro... Message-ID: Branch: refs/heads/grass8 Home: https://github.com/OSGeo/grass-addons Commit: ab57a482357b3a01a29f6263d4a556582744899c https://github.com/OSGeo/grass-addons/commit/ab57a482357b3a01a29f6263d4a556582744899c Author: Corey White Date: 2026-08-25 (Tue, 25 Aug 2026) Changed paths: M src/raster/r.random.walk/r.random.walk.py M src/raster/r.random.walk/testsuite/test_r_random_walk.py Log Message: ----------- r.random.walk: Fix divison by zero error when nproc is 0 (#1834) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Tue Aug 25 19:18:08 2026 From: noreply at github.com (renovate[bot]) Date: Tue, 25 Aug 2026 19:18:08 -0700 Subject: [GRASS-git] [OSGeo/grass] a9be9d: CI(deps): Update pre-commit hook editorconfig-chec... Message-ID: Branch: refs/heads/renovate/main-editorconfig-checker-editorconfig-checker-3.x Home: https://github.com/OSGeo/grass Commit: a9be9d7f471f7828e141564e7dc545b9a7340186 https://github.com/OSGeo/grass/commit/a9be9d7f471f7828e141564e7dc545b9a7340186 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-26 (Wed, 26 Aug 2026) Changed paths: M .pre-commit-config.yaml Log Message: ----------- CI(deps): Update pre-commit hook editorconfig-checker/editorconfig-checker to v3.11.2 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Tue Aug 25 19:51:53 2026 From: noreply at github.com (Anna Petrasova) Date: Tue, 25 Aug 2026 19:51:53 -0700 Subject: [GRASS-git] [OSGeo/grass] c76c23: man: Use build_manpages.py for the man page sweep ... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: c76c23b9577d736f2c8806a82e69e96d593d344f https://github.com/OSGeo/grass/commit/c76c23b9577d736f2c8806a82e69e96d593d344f Author: Anna Petrasova Date: 2026-08-25 (Tue, 25 Aug 2026) Changed paths: M man/Makefile M man/build_manpages.py Log Message: ----------- man: Use build_manpages.py for the man page sweep in both builds (#7748) Replace the MANPAGES machinery in man/Makefile with a call to the sweep script the CMake build already uses, so both builds share one sweep and one exclusion list. The delayed-evaluation and parenthesis-escaping workarounds are no longer needed because the script globs the markdown tree at run time. Implemented with AI assistance (Claude Fable). To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Tue Aug 25 20:09:11 2026 From: noreply at github.com (Vaclav Petras) Date: Tue, 25 Aug 2026 20:09:11 -0700 Subject: [GRASS-git] [OSGeo/grass] ea1a7c: contributing: Add a testing guide Message-ID: Branch: refs/heads/docs-pytest-testing-guide Home: https://github.com/OSGeo/grass Commit: ea1a7cb63e54ea9e2c611b46e792ecbd454a7224 https://github.com/OSGeo/grass/commit/ea1a7cb63e54ea9e2c611b46e792ecbd454a7224 Author: Vaclav Petras Date: 2026-08-25 (Tue, 25 Aug 2026) Changed paths: M AGENTS.md M CONTRIBUTING.md M doc/development/CMakeLists.txt M doc/development/Makefile M doc/development/README.md M doc/development/style_guide.md A doc/development/testing.md M man/mkdocs/docs/development_intro.md M testsuite/README.md Log Message: ----------- contributing: Add a testing guide The most complete statement of GRASS testing conventions lived in AGENTS.md, written for AI agents, and a contributor following the documented path never saw it. style_guide.md had no testing section, testsuite/README.md gave pytest a single sentence, and the Testing section in development_intro.md linked only the gunittest manual. This adds testing.md covering the choice between pytest and gunittest, test placement and naming, session fixtures, grass.tools, test data, running the tests, and tests which cannot run in parallel. AGENTS.md now points at the guide and keeps only its agent-specific notes, so the two cannot drift too much. This change was drafted with the help of Claude Code (Fable 5). To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Wed Aug 26 05:36:38 2026 From: noreply at github.com (Stefan Blumentrath) Date: Wed, 26 Aug 2026 05:36:38 -0700 Subject: [GRASS-git] [OSGeo/grass] a6ea87: docker: Update GDAL to 3.13.3 because of performan... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: a6ea876f58b3e8c8b50ba7598797e0047644aaa1 https://github.com/OSGeo/grass/commit/a6ea876f58b3e8c8b50ba7598797e0047644aaa1 Author: Stefan Blumentrath Date: 2026-08-26 (Wed, 26 Aug 2026) Changed paths: M Dockerfile M docker/ubuntu/Dockerfile Log Message: ----------- docker: Update GDAL to 3.13.3 because of performance regression on Linux (#7852) * update to GDAL 3.13.3 due to performance regression To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Wed Aug 26 05:39:26 2026 From: noreply at github.com (renovate[bot]) Date: Wed, 26 Aug 2026 05:39:26 -0700 Subject: [GRASS-git] [OSGeo/grass] a89020: CI(deps): Update super-linter/super-linter action ... Message-ID: Branch: refs/heads/renovate/main-super-linter-super-linter-8.x Home: https://github.com/OSGeo/grass Commit: a890200f3617db1907cc98374e394c859dc0a161 https://github.com/OSGeo/grass/commit/a890200f3617db1907cc98374e394c859dc0a161 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-26 (Wed, 26 Aug 2026) Changed paths: M .github/workflows/super-linter.yml Log Message: ----------- CI(deps): Update super-linter/super-linter action to v8.7.0 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Wed Aug 26 11:57:00 2026 From: noreply at github.com (renovate[bot]) Date: Wed, 26 Aug 2026 11:57:00 -0700 Subject: [GRASS-git] [OSGeo/grass-website] 49d0cd: Update dependency @highlightjs/cdn-assets to v11.12.0 Message-ID: Branch: refs/heads/renovate/highlightjs-cdn-assets-11.x-lockfile Home: https://github.com/OSGeo/grass-website Commit: 49d0cd3c862e59ae56f066ea2351ef69b5ae6b00 https://github.com/OSGeo/grass-website/commit/49d0cd3c862e59ae56f066ea2351ef69b5ae6b00 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-26 (Wed, 26 Aug 2026) Changed paths: M package-lock.json Log Message: ----------- Update dependency @highlightjs/cdn-assets to v11.12.0 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Wed Aug 26 11:57:05 2026 From: noreply at github.com (renovate[bot]) Date: Wed, 26 Aug 2026 11:57:05 -0700 Subject: [GRASS-git] [OSGeo/grass-website] 4c77f9: Update Node.js to v24.20.0 Message-ID: Branch: refs/heads/renovate/node-24.x Home: https://github.com/OSGeo/grass-website Commit: 4c77f98ac5c979befcabf18cc0b9e67f062e4566 https://github.com/OSGeo/grass-website/commit/4c77f98ac5c979befcabf18cc0b9e67f062e4566 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-26 (Wed, 26 Aug 2026) Changed paths: M .devcontainer/devcontainer.json M .nvmrc Log Message: ----------- Update Node.js to v24.20.0 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Wed Aug 26 11:57:12 2026 From: noreply at github.com (renovate[bot]) Date: Wed, 26 Aug 2026 11:57:12 -0700 Subject: [GRASS-git] [OSGeo/grass-website] daa2f2: Update astral-sh/setup-uv action to v10 Message-ID: Branch: refs/heads/renovate/astral-sh-setup-uv-10.x Home: https://github.com/OSGeo/grass-website Commit: daa2f2953c8f1a1d36c9ded942d968aa368a4c44 https://github.com/OSGeo/grass-website/commit/daa2f2953c8f1a1d36c9ded942d968aa368a4c44 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-26 (Wed, 26 Aug 2026) Changed paths: M .github/workflows/additional_checks.yml Log Message: ----------- Update astral-sh/setup-uv action to v10 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Wed Aug 26 13:45:25 2026 From: noreply at github.com (Vaclav Petras) Date: Wed, 26 Aug 2026 13:45:25 -0700 Subject: [GRASS-git] [OSGeo/grass] 75fb1a: contributing: Trim the testsuite README Message-ID: Branch: refs/heads/docs-pytest-testing-guide Home: https://github.com/OSGeo/grass Commit: 75fb1a1ec1822326ae75db4aa3574d4783d4463e https://github.com/OSGeo/grass/commit/75fb1a1ec1822326ae75db4aa3574d4783d4463e Author: Vaclav Petras Date: 2026-08-26 (Wed, 26 Aug 2026) Changed paths: M doc/development/testing.md M testsuite/README.md Log Message: ----------- contributing: Trim the testsuite README testsuite/README.md described which testing frameworks exist and how to run pytest, which testing.md now covers, and the export commands in its Running tests section had stray backslashes which made them set literal strings when copied. The directory still needs a README: it is not in the Makefile DIRS list, is only a TODO in CMakeLists.txt, and holds raster_md5test.sh, which nothing else in the repository mentions. This keeps what the directory is for and the pointer to the CI, names raster_md5test.sh, and links testing.md for everything else. The North Carolina sample dataset URL moves to testing.md, next to the command which uses the dataset. This change was drafted with the help of Claude Code (Fable 5). Commit: 85656e324c8fc6665bfffe062f21e61adad9f041 https://github.com/OSGeo/grass/commit/85656e324c8fc6665bfffe062f21e61adad9f041 Author: Vaclav Petras Date: 2026-08-26 (Wed, 26 Aug 2026) Changed paths: M testsuite/README.md Log Message: ----------- Trim the testsuite README to minimum. The directory needs some readme, but linking other files is suficient. This solves both the duplication and the backslash issues. It also makes the sample dataset URL more readily available. Compare: https://github.com/OSGeo/grass/compare/ea1a7cb63e54...85656e324c8f To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Wed Aug 26 23:11:21 2026 From: noreply at github.com (renovate[bot]) Date: Wed, 26 Aug 2026 23:11:21 -0700 Subject: [GRASS-git] [OSGeo/grass-website] 2a845a: Update dependency prek to v0.5.0 Message-ID: Branch: refs/heads/renovate/prek-0.x Home: https://github.com/OSGeo/grass-website Commit: 2a845a19fcf760766276705b5bdbd0c8b78510d1 https://github.com/OSGeo/grass-website/commit/2a845a19fcf760766276705b5bdbd0c8b78510d1 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-27 (Thu, 27 Aug 2026) Changed paths: M .github/workflows/additional_checks.yml Log Message: ----------- Update dependency prek to v0.5.0 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Thu Aug 27 13:03:56 2026 From: noreply at github.com (Vaclav Petras) Date: Thu, 27 Aug 2026 13:03:56 -0700 Subject: [GRASS-git] [OSGeo/grass] 69185b: doc: Update OpenSSF Scorecard badge URLs in README... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 69185b1f5f1246321ca19c53f464366a70f3ead0 https://github.com/OSGeo/grass/commit/69185b1f5f1246321ca19c53f464366a70f3ead0 Author: Vaclav Petras Date: 2026-08-27 (Thu, 27 Aug 2026) Changed paths: M README.md Log Message: ----------- doc: Update OpenSSF Scorecard badge URLs in README (#7857) OpenSSF Scorecard moved from securityscorecards.dev to scorecard.dev. The old host still redirects, so the badge was not broken, but the README now uses the current addresses for both the badge image and the viewer link. To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Thu Aug 27 13:06:12 2026 From: noreply at github.com (renovate[bot]) Date: Thu, 27 Aug 2026 13:06:12 -0700 Subject: [GRASS-git] [OSGeo/grass] fefa50: CI(deps): Update ruff to v0.16.5 Message-ID: Branch: refs/heads/renovate/releasebranch_8_5-ruff Home: https://github.com/OSGeo/grass Commit: fefa508188a94709581225a1678c2f8941c11eec https://github.com/OSGeo/grass/commit/fefa508188a94709581225a1678c2f8941c11eec Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-27 (Thu, 27 Aug 2026) Changed paths: M .github/workflows/python-code-quality.yml M .pre-commit-config.yaml Log Message: ----------- CI(deps): Update ruff to v0.16.5 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Thu Aug 27 13:42:19 2026 From: noreply at github.com (Vaclav Petras) Date: Thu, 27 Aug 2026 13:42:19 -0700 Subject: [GRASS-git] [OSGeo/grass] 6693c6: doc: Replace the broken Weblate badge in README (#... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 6693c66f34d3a8ab7185b92185ff1abe0d58daee https://github.com/OSGeo/grass/commit/6693c66f34d3a8ab7185b92185ff1abe0d58daee Author: Vaclav Petras Date: 2026-08-27 (Thu, 27 Aug 2026) Changed paths: M README.md Log Message: ----------- doc: Replace the broken Weblate badge in README (#7859) The Weblate badge does not render on GitHub. weblate.osgeo.org is behind a Cloudflare managed challenge which answers non-browser requests with an HTTP 403 challenge page, so the SVG never reaches the reader. Opening the URL in a browser works, which is why the badge looks fine when it is checked by hand. This uses a static shields.io badge instead. The link to the GRASS project on Weblate stays, but the translation percentage is gone. To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Thu Aug 27 14:24:28 2026 From: noreply at github.com (Stefan Blumentrath) Date: Thu, 27 Aug 2026 14:24:28 -0700 Subject: [GRASS-git] [OSGeo/grass] d812a0: Apply suggestions from code review Message-ID: Branch: refs/heads/renovate/main-ubuntu-26.x Home: https://github.com/OSGeo/grass Commit: d812a037bfd6765850c3741ee0ad416ab2fb9248 https://github.com/OSGeo/grass/commit/d812a037bfd6765850c3741ee0ad416ab2fb9248 Author: Stefan Blumentrath Date: 2026-08-27 (Thu, 27 Aug 2026) Changed paths: M Dockerfile M docker/ubuntu/Dockerfile Log Message: ----------- Apply suggestions from code review Co-authored-by: Stefan Blumentrath To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Thu Aug 27 19:31:38 2026 From: noreply at github.com (Vaclav Petras) Date: Thu, 27 Aug 2026 19:31:38 -0700 Subject: [GRASS-git] [OSGeo/grass] fd71b0: contributing: Add a testing guide (#7851) Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: fd71b0267cd563c719f117c54f56353a5bff74e5 https://github.com/OSGeo/grass/commit/fd71b0267cd563c719f117c54f56353a5bff74e5 Author: Vaclav Petras Date: 2026-08-27 (Thu, 27 Aug 2026) Changed paths: M AGENTS.md M CONTRIBUTING.md M doc/development/CMakeLists.txt M doc/development/Makefile M doc/development/README.md M doc/development/style_guide.md A doc/development/testing.md M man/mkdocs/docs/development_intro.md M testsuite/README.md Log Message: ----------- contributing: Add a testing guide (#7851) The most complete statement of GRASS testing conventions lived in AGENTS.md, written for AI agents, and a contributor following the documented path never saw it. style_guide.md had no testing section, testsuite/README.md gave pytest a single sentence, and the Testing section in development_intro.md linked only the gunittest manual. This adds testing.md covering the choice between pytest and gunittest, test placement and naming, session fixtures, grass.tools, test data, running the tests, and tests which cannot run in parallel. AGENTS.md now points at the guide and keeps only its agent-specific notes, so the two cannot drift too much. Trim the testsuite README to minimum. testsuite/README.md described which testing frameworks exist and how to run pytest, which testing.md now covers, and the export commands in its Running tests section had stray backslashes which made them set literal strings when copied. The directory still needs a README since it is a top level and has unclear content (a shell script). This keeps what the directory is for and the pointer to the CI, names raster_md5test.sh, and links testing.md for everything else. The North Carolina sample dataset URL moves to testing.md, next to the command which uses the dataset. To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Thu Aug 27 19:42:10 2026 From: noreply at github.com (renovate[bot]) Date: Thu, 27 Aug 2026 19:42:10 -0700 Subject: [GRASS-git] [OSGeo/grass-website] e6b4a3: Update dependency @highlightjs/cdn-assets to v11.1... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass-website Commit: e6b4a3813cf0c46a1e280e4eb865ee339ccb9b2e https://github.com/OSGeo/grass-website/commit/e6b4a3813cf0c46a1e280e4eb865ee339ccb9b2e Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-28 (Fri, 28 Aug 2026) Changed paths: M package-lock.json Log Message: ----------- Update dependency @highlightjs/cdn-assets to v11.12.0 (#701) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Thu Aug 27 19:43:03 2026 From: noreply at github.com (renovate[bot]) Date: Thu, 27 Aug 2026 19:43:03 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/heads/renovate/highlightjs-cdn-assets-11.x-lockfile Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Thu Aug 27 19:47:06 2026 From: noreply at github.com (Vaclav Petras) Date: Thu, 27 Aug 2026 19:47:06 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] 9bf256: contributing: Fix dead links in UNIT_TESTS.md and ... Message-ID: Branch: refs/heads/grass8 Home: https://github.com/OSGeo/grass-addons Commit: 9bf256f109ac364c50b44c637c241b8bb01237e2 https://github.com/OSGeo/grass-addons/commit/9bf256f109ac364c50b44c637c241b8bb01237e2 Author: Vaclav Petras Date: 2026-08-27 (Thu, 27 Aug 2026) Changed paths: M AGENTS.md M doc/development/submitting/UNIT_TESTS.md Log Message: ----------- contributing: Fix dead links in UNIT_TESTS.md and cover pytest (#1836) UNIT_TESTS.md is the file which hold the testing documentation for addon contributors at this point, and CONTRIBUTING.md points at it. It described gunittest only and stated that unit tests must be stored in testsuite. This is no longer true and 24 addons already have pytest suites in tests/ directories and CI runs them. This describes both frameworks, says pytest is preferred for new tests, and links to testing.md in the main repository for the conventions rather than restating them. It also fixes the pre-commit link to style_guide.md and the contribution guidelines link to the grass8 branch. AGENTS.md no longer calls UNIT_TESTS.md outdated, since it no longer is. To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Thu Aug 27 19:47:38 2026 From: noreply at github.com (github-actions[bot]) Date: Thu, 27 Aug 2026 19:47:38 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/tags/site-20260828-024708-e6b4a38 Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Thu Aug 27 19:47:40 2026 From: noreply at github.com (github-actions[bot]) Date: Thu, 27 Aug 2026 19:47:40 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/tags/site-20260803-040309-70e5a88 Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Thu Aug 27 19:49:23 2026 From: noreply at github.com (Corey White) Date: Thu, 27 Aug 2026 19:49:23 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] 9641d8: t.stac: Use get_lib_path from grass.script.utils (... Message-ID: Branch: refs/heads/grass8 Home: https://github.com/OSGeo/grass-addons Commit: 9641d81be273380ba3fcd7a38e1919a4841c56d3 https://github.com/OSGeo/grass-addons/commit/9641d81be273380ba3fcd7a38e1919a4841c56d3 Author: Corey White Date: 2026-08-28 (Fri, 28 Aug 2026) Changed paths: M src/temporal/t.stac/libstac/testsuite/test_staclib.py M src/temporal/t.stac/t.stac.catalog/t.stac.catalog.py M src/temporal/t.stac/t.stac.collection/t.stac.collection.py M src/temporal/t.stac/t.stac.item/t.stac.item.py Log Message: ----------- t.stac: Use get_lib_path from grass.script.utils (#1835) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Thu Aug 27 23:57:40 2026 From: noreply at github.com (Stefan Blumentrath) Date: Thu, 27 Aug 2026 23:57:40 -0700 Subject: [GRASS-git] [OSGeo/grass] 58dc4c: doc: Add conda badge to README (#7586) Message-ID: Branch: refs/heads/renovate/main-ubuntu-26.x Home: https://github.com/OSGeo/grass Commit: 58dc4c7bc3ddb3ff1c3fa86046190baf38829678 https://github.com/OSGeo/grass/commit/58dc4c7bc3ddb3ff1c3fa86046190baf38829678 Author: Vaclav Petras Date: 2026-06-19 (Fri, 19 Jun 2026) Changed paths: M README.md Log Message: ----------- doc: Add conda badge to README (#7586) Add conda badge to README. Move user-focused badges to the front, then stats, then orgs. Commit: 4076a6c639013a910457ba129f0519b3106c93db https://github.com/OSGeo/grass/commit/4076a6c639013a910457ba129f0519b3106c93db Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-06-20 (Sat, 20 Jun 2026) Changed paths: M docker/alpine/Dockerfile Log Message: ----------- CI(deps): Update alpine:3.24 Docker digest to 28bd5fe (main) (#7583) CI(deps): Update alpine:3.24 Docker digest to 28bd5fe Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Commit: b60984108eaafc3bf72161b10d63b9abba006c04 https://github.com/OSGeo/grass/commit/b60984108eaafc3bf72161b10d63b9abba006c04 Author: Kaushik Raja <85415462+krcoder123 at users.noreply.github.com> Date: 2026-06-20 (Sat, 20 Jun 2026) Changed paths: M raster/r.param.scale/tests/r_param_scale_test.py Log Message: ----------- r.param.scale: loosen curvature test tolerance across platforms (#7584) Commit: 5528eb87eb1524d87d31190ef85b9f9540c73e50 https://github.com/OSGeo/grass/commit/5528eb87eb1524d87d31190ef85b9f9540c73e50 Author: Rajveer* Date: 2026-06-20 (Sat, 20 Jun 2026) Changed paths: M scripts/d.correlate/d.correlate.py A scripts/d.correlate/tests/d_correlate_test.py Log Message: ----------- d.correlate: exit on insufficient input and fix text line counter (#7485) Commit: 1b103c4405d4be04e458bfb9a7206014ae290ad8 https://github.com/OSGeo/grass/commit/1b103c4405d4be04e458bfb9a7206014ae290ad8 Author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Date: 2026-06-21 (Sun, 21 Jun 2026) Changed paths: M locale/templates/grasslibs.pot M locale/templates/grassmods.pot M locale/templates/grasswxpy.pot Log Message: ----------- locale: Update translation files (107) (#7589) locale: Update translation files Co-authored-by: echoix <27212526+echoix at users.noreply.github.com> Commit: 95df1e6fb546093129e5811bbee05db34e759887 https://github.com/OSGeo/grass/commit/95df1e6fb546093129e5811bbee05db34e759887 Author: OSGeo Weblate <97247866+osgeoweblate at users.noreply.github.com> Date: 2026-06-22 (Mon, 22 Jun 2026) Changed paths: M locale/po/grasslibs_ar.po M locale/po/grasslibs_bn.po M locale/po/grasslibs_cs.po M locale/po/grasslibs_de.po M locale/po/grasslibs_el.po M locale/po/grasslibs_es.po M locale/po/grasslibs_fi.po M locale/po/grasslibs_fr.po M locale/po/grasslibs_hi.po M locale/po/grasslibs_hu.po M locale/po/grasslibs_id_ID.po M locale/po/grasslibs_it.po M locale/po/grasslibs_ja.po M locale/po/grasslibs_ko.po M locale/po/grasslibs_lv.po M locale/po/grasslibs_ml.po M locale/po/grasslibs_pl.po M locale/po/grasslibs_pt.po M locale/po/grasslibs_pt_BR.po M locale/po/grasslibs_ro.po M locale/po/grasslibs_ru.po M locale/po/grasslibs_si.po M locale/po/grasslibs_sl.po M locale/po/grasslibs_sv.po M locale/po/grasslibs_ta.po M locale/po/grasslibs_th.po M locale/po/grasslibs_tr.po M locale/po/grasslibs_uk.po M locale/po/grasslibs_vi.po M locale/po/grasslibs_zh.po M locale/po/grassmods_ar.po M locale/po/grassmods_bn.po M locale/po/grassmods_cs.po M locale/po/grassmods_de.po M locale/po/grassmods_el.po M locale/po/grassmods_es.po M locale/po/grassmods_fi.po M locale/po/grassmods_fr.po M locale/po/grassmods_hi.po M locale/po/grassmods_hu.po M locale/po/grassmods_id_ID.po M locale/po/grassmods_it.po M locale/po/grassmods_ja.po M locale/po/grassmods_ko.po M locale/po/grassmods_lv.po M locale/po/grassmods_ml.po M locale/po/grassmods_pl.po M locale/po/grassmods_pt.po M locale/po/grassmods_pt_BR.po M locale/po/grassmods_ro.po M locale/po/grassmods_ru.po M locale/po/grassmods_si.po M locale/po/grassmods_sl.po M locale/po/grassmods_sv.po M locale/po/grassmods_ta.po M locale/po/grassmods_th.po M locale/po/grassmods_tr.po M locale/po/grassmods_uk.po M locale/po/grassmods_vi.po M locale/po/grassmods_zh.po M locale/po/grasswxpy_ar.po M locale/po/grasswxpy_bn.po M locale/po/grasswxpy_cs.po M locale/po/grasswxpy_de.po M locale/po/grasswxpy_el.po M locale/po/grasswxpy_es.po M locale/po/grasswxpy_fi.po M locale/po/grasswxpy_fr.po M locale/po/grasswxpy_hi.po M locale/po/grasswxpy_hu.po M locale/po/grasswxpy_id_ID.po M locale/po/grasswxpy_it.po M locale/po/grasswxpy_ja.po M locale/po/grasswxpy_ko.po M locale/po/grasswxpy_lv.po M locale/po/grasswxpy_ml.po M locale/po/grasswxpy_pl.po M locale/po/grasswxpy_pt.po M locale/po/grasswxpy_pt_BR.po M locale/po/grasswxpy_ro.po M locale/po/grasswxpy_ru.po M locale/po/grasswxpy_si.po M locale/po/grasswxpy_sl.po M locale/po/grasswxpy_sv.po M locale/po/grasswxpy_ta.po M locale/po/grasswxpy_th.po M locale/po/grasswxpy_tr.po M locale/po/grasswxpy_uk.po M locale/po/grasswxpy_vi.po M locale/po/grasswxpy_zh.po M locale/tbx/grassglossary_ar.tbx M locale/tbx/grassglossary_bn.tbx M locale/tbx/grassglossary_cs.tbx M locale/tbx/grassglossary_de.tbx M locale/tbx/grassglossary_el.tbx M locale/tbx/grassglossary_es.tbx M locale/tbx/grassglossary_fi.tbx M locale/tbx/grassglossary_fr.tbx M locale/tbx/grassglossary_hi.tbx M locale/tbx/grassglossary_hu.tbx M locale/tbx/grassglossary_id.tbx M locale/tbx/grassglossary_it.tbx M locale/tbx/grassglossary_ja.tbx M locale/tbx/grassglossary_ko.tbx M locale/tbx/grassglossary_lv.tbx M locale/tbx/grassglossary_ml.tbx M locale/tbx/grassglossary_pl.tbx M locale/tbx/grassglossary_pt.tbx M locale/tbx/grassglossary_pt_BR.tbx M locale/tbx/grassglossary_ro.tbx M locale/tbx/grassglossary_ru.tbx M locale/tbx/grassglossary_si.tbx M locale/tbx/grassglossary_sl.tbx M locale/tbx/grassglossary_sv.tbx M locale/tbx/grassglossary_ta.tbx M locale/tbx/grassglossary_th.tbx M locale/tbx/grassglossary_tr.tbx M locale/tbx/grassglossary_uk.tbx M locale/tbx/grassglossary_vi.tbx M locale/tbx/grassglossary_zh_Hans.tbx Log Message: ----------- Translations update from OSGeo Weblate (#7591) Commit: 4b02be02267eb32ab6175a40c9924ab319fb2fe8 https://github.com/OSGeo/grass/commit/4b02be02267eb32ab6175a40c9924ab319fb2fe8 Author: SAKET KUMAR MALL <72020337+saket0187 at users.noreply.github.com> Date: 2026-06-23 (Tue, 23 Jun 2026) Changed paths: M temporal/t.list/t.list.py M temporal/t.list/tests/conftest.py M temporal/t.list/tests/test_t_list.py Log Message: ----------- t.list: Check connection to prevent creating temporal database (#7580) * Show message only for plain * Add tests Commit: fdb189e68b8c295b589a8d425c713eed08d51524 https://github.com/OSGeo/grass/commit/fdb189e68b8c295b589a8d425c713eed08d51524 Author: SAKET KUMAR MALL <72020337+saket0187 at users.noreply.github.com> Date: 2026-06-23 (Tue, 23 Jun 2026) Changed paths: M temporal/t.rast3d.univar/t.rast3d.univar.py M temporal/t.rast3d.univar/testsuite/test_t_rast3d_univar.py Log Message: ----------- t.rast3d.univar: Add format options and tests (#7582) Commit: a41671246f4cf44bb9fc304da3eedc2d68346042 https://github.com/OSGeo/grass/commit/a41671246f4cf44bb9fc304da3eedc2d68346042 Author: Kaushik Raja <85415462+krcoder123 at users.noreply.github.com> Date: 2026-06-23 (Tue, 23 Jun 2026) Changed paths: M raster/r.param.scale/tests/r_param_scale_test.py Log Message: ----------- tests: skip r.param.scale reference test pending libgmath race fix #7539 (#7593) Commit: 734f46e784762210e72b97b33d4c25a32a5ecb12 https://github.com/OSGeo/grass/commit/734f46e784762210e72b97b33d4c25a32a5ecb12 Author: SAKET KUMAR MALL <72020337+saket0187 at users.noreply.github.com> Date: 2026-06-23 (Tue, 23 Jun 2026) Changed paths: M temporal/t.vect.db.select/t.vect.db.select.md M temporal/t.vect.db.select/t.vect.db.select.py M temporal/t.vect.db.select/tests/t_vect_db_select_test.py Log Message: ----------- t.vect.db.select: Add format options (#7530) Commit: 3381348d807542ee12a9293330362bc3bc8827bd https://github.com/OSGeo/grass/commit/3381348d807542ee12a9293330362bc3bc8827bd Author: Franti?ek Gureck? <119013992+gureckyfrantisek at users.noreply.github.com> Date: 2026-06-24 (Wed, 24 Jun 2026) Changed paths: M gui/wxpython/xml/module_tree.xml M gui/wxpython/xml/toolboxes.xml A utils/find_missing_toolboxes.py Log Message: ----------- wxGUI: Finding unavailable toolboxes in the search tab (#7403) * Add missing toolboxes finder script * Update toolboxes.xml --------- Co-authored-by: Edouard Choini?re <27212526+echoix at users.noreply.github.com> Co-authored-by: Martin Landa Commit: 3eb6e2932ed86c0ae0592de1790cafdad124f6cc https://github.com/OSGeo/grass/commit/3eb6e2932ed86c0ae0592de1790cafdad124f6cc Author: Linda Karlovska <49241681+lindakarlovska at users.noreply.github.com> Date: 2026-06-24 (Wed, 24 Jun 2026) Changed paths: M python/grass/script/raster.py Log Message: ----------- grass.script: Fix typos in raster.py (#7600) fixes typos Co-authored-by: lindakladivova Commit: 8b6db49ccfd9f20cd2832c6e5d2771e4cfd5a15b https://github.com/OSGeo/grass/commit/8b6db49ccfd9f20cd2832c6e5d2771e4cfd5a15b Author: OSGeo Weblate <97247866+osgeoweblate at users.noreply.github.com> Date: 2026-06-24 (Wed, 24 Jun 2026) Changed paths: M locale/po/grasslibs_zh.po A locale/po/grasslibs_zh_Hant.po M locale/po/grassmods_fr.po M locale/po/grassmods_zh.po A locale/po/grassmods_zh_Hant.po M locale/po/grasswxpy_zh.po A locale/po/grasswxpy_zh_Hant.po M locale/tbx/grassglossary_zh_Hans.tbx A locale/tbx/grassglossary_zh_Hant.tbx Log Message: ----------- Translations update from OSGeo Weblate (#7601) Commit: d23b59e3bb090544f1468484c2420ecdefc1e1b9 https://github.com/OSGeo/grass/commit/d23b59e3bb090544f1468484c2420ecdefc1e1b9 Author: Rajveer* Date: 2026-06-24 (Wed, 24 Jun 2026) Changed paths: M scripts/r.semantic.label/r.semantic.label.py A scripts/r.semantic.label/tests/r_semantic_label_test.py Log Message: ----------- r.semantic.label: exit with error when print target is missing (#7496) operation=print printed an error but exited successfully when the raster map was not found, because print_map_semantic_label returned None on OpenError and main() ignored it. The add/remove path returns 1 for the same condition and main() propagates it. Make print return a status (1 on a missing map, 0 otherwise) and have main() honor it, so all operations exit consistently. Commit: 4846566d384616e45034dcf2257363d27d43e5f1 https://github.com/OSGeo/grass/commit/4846566d384616e45034dcf2257363d27d43e5f1 Author: Stefan Blumentrath Date: 2026-06-25 (Thu, 25 Jun 2026) Changed paths: M temporal/t.connect/main.c M temporal/t.connect/t.connect.md M temporal/t.connect/tests/conftest.py M temporal/t.connect/tests/test_t_connect.py M temporal/t.list/t.list.py M temporal/t.list/tests/test_t_list.py Log Message: ----------- t.connect: add a mapset option to list connections across project (#7594) * document mapset option * add mapset option * add tests for mapset option * add testcase for empty VAR file * adjust to t.connect JSON output * adjust to t.connect JSON output * use text for output --------- Co-authored-by: Edouard Choini?re <27212526+echoix at users.noreply.github.com> Commit: d7eff8a866d3d0651c18120a7ecdfd619ed474e2 https://github.com/OSGeo/grass/commit/d7eff8a866d3d0651c18120a7ecdfd619ed474e2 Author: Vaclav Petras Date: 2026-06-25 (Thu, 25 Jun 2026) Changed paths: M AGENTS.md Log Message: ----------- contributing: Improve build instructions for agents (#7603) Commit: d7891fac84de79a6160f392f5c8882bbbefe104c https://github.com/OSGeo/grass/commit/d7891fac84de79a6160f392f5c8882bbbefe104c Author: Vaclav Petras Date: 2026-06-25 (Thu, 25 Jun 2026) Changed paths: M CONTRIBUTING.md Log Message: ----------- contributing: Link AGENTS.md from CONTRIBUTING.md (#7606) Commit: 86ad7de80090f79b253ea737def74d54bef08dce https://github.com/OSGeo/grass/commit/86ad7de80090f79b253ea737def74d54bef08dce Author: Franti?ek Gureck? <119013992+gureckyfrantisek at users.noreply.github.com> Date: 2026-06-25 (Thu, 25 Jun 2026) Changed paths: M gui/wxpython/gmodeler/canvas.py M gui/wxpython/gmodeler/model.py M gui/wxpython/gmodeler/model_convert.py M gui/wxpython/gmodeler/model_items.py M gui/wxpython/gmodeler/panels.py Log Message: ----------- wxGUI/gmodeler: Correct variable replacement in model_convert.py (#7241) * backward compatibility for curly braces * map variable replacement on Display change --------- Co-authored-by: Edouard Choini?re <27212526+echoix at users.noreply.github.com> Co-authored-by: Martin Landa Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Commit: b7712fb1d326e5532ee94d2f145281aac9a5ba85 https://github.com/OSGeo/grass/commit/b7712fb1d326e5532ee94d2f145281aac9a5ba85 Author: OSGeo Weblate <97247866+osgeoweblate at users.noreply.github.com> Date: 2026-06-27 (Sat, 27 Jun 2026) Changed paths: M locale/po/grasslibs_zh.po M locale/po/grassmods_fr.po M locale/po/grassmods_zh.po M locale/po/grasswxpy_fr.po M locale/po/grasswxpy_zh.po M locale/tbx/grassglossary_zh_Hans.tbx Log Message: ----------- Translations update from OSGeo Weblate (#7611) Translated using Weblate (Chinese (Simplified Han script)) Currently translated at 76.9% (50 of 65 strings) Translated using Weblate (Chinese (Simplified Han script)) Currently translated at 5.0% (509 of 10096 strings) Translated using Weblate (Chinese (Simplified Han script)) Currently translated at 30.2% (1003 of 3314 strings) Translated using Weblate (Chinese (Simplified Han script)) Currently translated at 11.8% (220 of 1854 strings) Translated using Weblate (Chinese (Simplified Han script)) Currently translated at 4.9% (503 of 10096 strings) Translated using Weblate (Chinese (Simplified Han script)) Currently translated at 30.1% (1000 of 3314 strings) Translated using Weblate (Chinese (Simplified Han script)) Currently translated at 30.1% (1000 of 3314 strings) Translated using Weblate (Chinese (Simplified Han script)) Currently translated at 30.1% (1000 of 3314 strings) Translated using Weblate (Chinese (Simplified Han script)) Currently translated at 11.7% (218 of 1854 strings) Translated using Weblate (French) Currently translated at 36.3% (3669 of 10096 strings) Translated using Weblate (French) Currently translated at 96.3% (3192 of 3314 strings) Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/zh_Hans/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grasslibs/zh_Hans/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassmods/fr/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassmods/zh_Hans/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grasswxpy/fr/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grasswxpy/zh_Hans/ Translation: GRASS/grassglossary Translation: GRASS/grasslibs Translation: GRASS/grassmods Translation: GRASS/grasswxpy Co-authored-by: Weblate Co-authored-by: Edouard Choiniere Co-authored-by: Jietao Wang Commit: 9bab1f18753e2a127a78bce97b5bc2f11e4f9681 https://github.com/OSGeo/grass/commit/9bab1f18753e2a127a78bce97b5bc2f11e4f9681 Author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Date: 2026-06-27 (Sat, 27 Jun 2026) Changed paths: M locale/templates/grasslibs.pot M locale/templates/grassmods.pot M locale/templates/grasswxpy.pot Log Message: ----------- locale: Update translation files (109) (#7612) locale: Update translation files Co-authored-by: echoix <27212526+echoix at users.noreply.github.com> Commit: c967be59670665427b9d953857b41066b01fbac2 https://github.com/OSGeo/grass/commit/c967be59670665427b9d953857b41066b01fbac2 Author: Anna Petrasova Date: 2026-06-27 (Sat, 27 Jun 2026) Changed paths: M utils/mkdocs.py Log Message: ----------- docs: Fix crash and simplify git calls in mkdocs generation (#7604) * docs: Fix crash and simplify git calls in mkdocs generation * exit instead of just writing message Commit: 000590f0b4eb3a331f9841eecc929b31ccfb98e3 https://github.com/OSGeo/grass/commit/000590f0b4eb3a331f9841eecc929b31ccfb98e3 Author: Anna Petrasova Date: 2026-06-30 (Tue, 30 Jun 2026) Changed paths: M python/libgrass_interface_generator/libgrass__init__.py Log Message: ----------- libpython: Speed up grass.lib import by registering $GISBASE/lib (#7605) Register $GISBASE/lib (where the GRASS shared libraries are installed) with the ctypes loader before any wrapper module loads its library. The loader searches these directories first, so it finds the libraries by absolute path and never reaches its ctypes.util.find_library() fallback. That fallback is expensive on Linux, where find_library() spawns the toolchain (ldconfig, gcc, ld, objdump) once per library; for the chain pulled in by grass.temporal that was about 90 subprocesses and the bulk of the import time. The libraries are still resolvable through the runtime linker path, so this is a startup optimization, not a correctness fix; outside a GRASS session GISBASE may be unset, in which case the loader keeps its original behavior. Commit: 283ebdc12dbd5cdbd224d5e8392cd7a890e76b52 https://github.com/OSGeo/grass/commit/283ebdc12dbd5cdbd224d5e8392cd7a890e76b52 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-06-30 (Tue, 30 Jun 2026) Changed paths: M .github/workflows/additional_checks.yml M .github/workflows/cmake.yml M .github/workflows/codeql-analysis.yml M .github/workflows/coverity.yml M .github/workflows/create_release_draft.yml M .github/workflows/docker.yml M .github/workflows/documentation.yml M .github/workflows/gcc.yml M .github/workflows/macos.yml M .github/workflows/macos_distribute_app.yml M .github/workflows/osgeo4w.yml M .github/workflows/periodic_update.yml M .github/workflows/pytest.yml M .github/workflows/python-code-quality.yml M .github/workflows/super-linter.yml M .github/workflows/test-nix.yml M .github/workflows/titles.yml M .github/workflows/ubuntu.yml Log Message: ----------- CI(deps): Update actions/checkout action to v7 (main) (#7617) CI(deps): Update actions/checkout action to v7 Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Commit: a822d6eb71cdb95120c05e17b7b3970aceeda924 https://github.com/OSGeo/grass/commit/a822d6eb71cdb95120c05e17b7b3970aceeda924 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-06-30 (Tue, 30 Jun 2026) Changed paths: M .github/workflows/additional_checks.yml M .github/workflows/macos.yml M .github/workflows/ubuntu.yml Log Message: ----------- CI(deps): Update actions/cache action to v6 (main) (#7616) CI(deps): Update actions/cache action to v6 Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Commit: 08c3e8acb4ed6a66c8c6ed120113e5a51a4416b7 https://github.com/OSGeo/grass/commit/08c3e8acb4ed6a66c8c6ed120113e5a51a4416b7 Author: Vaclav Petras Date: 2026-06-30 (Tue, 30 Jun 2026) Changed paths: M AGENTS.md Log Message: ----------- contributing: Add notes on sandbox and addon builds to AGENTS.md (#7609) * contributing: Add notes on sandbox and addon builds to AGENTS.md Using a use case of a standalone addon tool repo (specifically, r.pops.spread is published in addons, but the developed in a standalone repo), this expands instructions in AGENTS.md on how to compile and run with CMake in a sandbox (developed with Claude Code sandbox) and how to compile an addon tool. While grass-addon and cookie cutter repo instructions would be helpful as well, the addons instruction part covers the case when you use the source code of GRASS, but don't deal with the grass-addon repo. I'm also slighltly changing how the grass.gunittest is presented, focusing on a single file, rather than a directory run. This simplifies the project-related instructions, replacing the currently confusing version. * Wrap lines correctly Commit: 4be7fc08f5535b44f00f658556e401f9088a348e https://github.com/OSGeo/grass/commit/4be7fc08f5535b44f00f658556e401f9088a348e Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-07-01 (Wed, 01 Jul 2026) Changed paths: M .github/workflows/additional_checks.yml Log Message: ----------- CI(deps): Update dependency prek to v0.4.5 (main) (#7620) Commit: d7d253c6763627651d1c8dc9cca4841402cd7de5 https://github.com/OSGeo/grass/commit/d7d253c6763627651d1c8dc9cca4841402cd7de5 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-07-01 (Wed, 01 Jul 2026) Changed paths: M .github/workflows/test-nix.yml Log Message: ----------- CI(deps): Update DeterminateSystems/determinate-nix-action action to v3.21.2 (main) (#7621) CI(deps): Update DeterminateSystems/determinate-nix-action action to v3.21.2 Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Commit: e8649b0535c3e98f2f9e3770d133654a7864946a https://github.com/OSGeo/grass/commit/e8649b0535c3e98f2f9e3770d133654a7864946a Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-07-01 (Wed, 01 Jul 2026) Changed paths: M .github/workflows/docker.yml Log Message: ----------- CI(deps): Migrate actions/attest-build-provenance to actions/attest to v4.1.1 (main) (#7619) Commit: 14279f426bf057492d5ac22189f4b2078d487198 https://github.com/OSGeo/grass/commit/14279f426bf057492d5ac22189f4b2078d487198 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-07-01 (Wed, 01 Jul 2026) Changed paths: M docker/debian/Dockerfile Log Message: ----------- CI(deps): Update debian:13.5-slim Docker digest to 28de087 (main) (#7618) Commit: 12f6a4808719b8b706188fa39afdb179f521caa2 https://github.com/OSGeo/grass/commit/12f6a4808719b8b706188fa39afdb179f521caa2 Author: Arth Parikshit Patel Date: 2026-07-01 (Wed, 01 Jul 2026) Changed paths: M .github/workflows/pytest.yml Log Message: ----------- CI: Change codecov test result upload action (#7607) Commit: 224893862fbb6a2288de06c65b4608843f5277be https://github.com/OSGeo/grass/commit/224893862fbb6a2288de06c65b4608843f5277be Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-07-02 (Thu, 02 Jul 2026) Changed paths: M .github/workflows/docker.yml Log Message: ----------- CI(deps): Update docker/build-push-action action to v7.3.0 (main) (#7623) Commit: 9fa558107b9cd238d0a14e2c5a547d493127379d https://github.com/OSGeo/grass/commit/9fa558107b9cd238d0a14e2c5a547d493127379d Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-07-02 (Thu, 02 Jul 2026) Changed paths: M flake.lock Log Message: ----------- CI(deps): Lock file maintenance (main) (#7624) Commit: 763b17e9a558c866b9e79ca39ee557be213d0d8f https://github.com/OSGeo/grass/commit/763b17e9a558c866b9e79ca39ee557be213d0d8f Author: Edouard Choini?re <27212526+echoix at users.noreply.github.com> Date: 2026-07-02 (Thu, 02 Jul 2026) Changed paths: M cmake/modules/CheckDependentLibraries.cmake M db/drivers/CMakeLists.txt M general/CMakeLists.txt Log Message: ----------- CMake: Replace deprecated SQLite::SQLite3 with SQLite3::SQLite3 (#7588) In CMake 4.3+, the `SQLite::SQLite3` is deprecated and throws messages. The docs page https://cmake.org/cmake/help/v4.3/module/FindSQLite3.html suggest using an `add_library()` alias to allow new name to compile on old versions. Commit: a47d22493f4527c0de4efae392992865ec501fe7 https://github.com/OSGeo/grass/commit/a47d22493f4527c0de4efae392992865ec501fe7 Author: Vaclav Petras Date: 2026-07-04 (Sat, 04 Jul 2026) Changed paths: A raster/r.mapcalc/tests/r_mapcalc_rand_seed_test.py M raster/r.mapcalc/testsuite/test_r_mapcalc.py M raster/r.mapcalc/testsuite/test_r_mapcalc_parallel.py Log Message: ----------- tests: Migrate r.mapcalc rand seed tests to pytest (#7633) Commit: 777ab4968fcc615b17691304b952cdfdcdfe6d93 https://github.com/OSGeo/grass/commit/777ab4968fcc615b17691304b952cdfdcdfe6d93 Author: Vaclav Petras Date: 2026-07-04 (Sat, 04 Jul 2026) Changed paths: A lib/gis/tests/lib_gis_lrand48_test.py Log Message: ----------- tests: Pin random number generator outputs in tests (#7634) Commit: 6e79a3feec9be04d118b1f610c62f9876b752ff3 https://github.com/OSGeo/grass/commit/6e79a3feec9be04d118b1f610c62f9876b752ff3 Author: OSGeo Weblate <97247866+osgeoweblate at users.noreply.github.com> Date: 2026-07-04 (Sat, 04 Jul 2026) Changed paths: M locale/po/grasslibs_ar.po M locale/po/grasslibs_bn.po M locale/po/grasslibs_cs.po M locale/po/grasslibs_de.po M locale/po/grasslibs_el.po M locale/po/grasslibs_es.po M locale/po/grasslibs_fi.po M locale/po/grasslibs_fr.po M locale/po/grasslibs_hi.po M locale/po/grasslibs_hu.po M locale/po/grasslibs_id_ID.po M locale/po/grasslibs_it.po M locale/po/grasslibs_ja.po M locale/po/grasslibs_ko.po M locale/po/grasslibs_lv.po M locale/po/grasslibs_ml.po M locale/po/grasslibs_pl.po M locale/po/grasslibs_pt.po M locale/po/grasslibs_pt_BR.po M locale/po/grasslibs_ro.po M locale/po/grasslibs_ru.po M locale/po/grasslibs_si.po M locale/po/grasslibs_sl.po M locale/po/grasslibs_sv.po M locale/po/grasslibs_ta.po M locale/po/grasslibs_th.po M locale/po/grasslibs_tr.po M locale/po/grasslibs_uk.po M locale/po/grasslibs_vi.po M locale/po/grasslibs_zh.po M locale/po/grasslibs_zh_Hant.po M locale/po/grassmods_ar.po M locale/po/grassmods_bn.po M locale/po/grassmods_cs.po M locale/po/grassmods_de.po M locale/po/grassmods_el.po M locale/po/grassmods_es.po M locale/po/grassmods_fi.po M locale/po/grassmods_fr.po M locale/po/grassmods_hi.po M locale/po/grassmods_hu.po M locale/po/grassmods_id_ID.po M locale/po/grassmods_it.po M locale/po/grassmods_ja.po M locale/po/grassmods_ko.po M locale/po/grassmods_lv.po M locale/po/grassmods_ml.po M locale/po/grassmods_pl.po M locale/po/grassmods_pt.po M locale/po/grassmods_pt_BR.po M locale/po/grassmods_ro.po M locale/po/grassmods_ru.po M locale/po/grassmods_si.po M locale/po/grassmods_sl.po M locale/po/grassmods_sv.po M locale/po/grassmods_ta.po M locale/po/grassmods_th.po M locale/po/grassmods_tr.po M locale/po/grassmods_uk.po M locale/po/grassmods_vi.po M locale/po/grassmods_zh.po M locale/po/grassmods_zh_Hant.po M locale/po/grasswxpy_ar.po M locale/po/grasswxpy_bn.po M locale/po/grasswxpy_cs.po M locale/po/grasswxpy_de.po M locale/po/grasswxpy_el.po M locale/po/grasswxpy_es.po M locale/po/grasswxpy_fi.po M locale/po/grasswxpy_fr.po M locale/po/grasswxpy_hi.po M locale/po/grasswxpy_hu.po M locale/po/grasswxpy_id_ID.po M locale/po/grasswxpy_it.po M locale/po/grasswxpy_ja.po M locale/po/grasswxpy_ko.po M locale/po/grasswxpy_lv.po M locale/po/grasswxpy_ml.po M locale/po/grasswxpy_pl.po M locale/po/grasswxpy_pt.po M locale/po/grasswxpy_pt_BR.po M locale/po/grasswxpy_ro.po M locale/po/grasswxpy_ru.po M locale/po/grasswxpy_si.po M locale/po/grasswxpy_sl.po M locale/po/grasswxpy_sv.po M locale/po/grasswxpy_ta.po M locale/po/grasswxpy_th.po M locale/po/grasswxpy_tr.po M locale/po/grasswxpy_uk.po M locale/po/grasswxpy_vi.po M locale/po/grasswxpy_zh.po M locale/po/grasswxpy_zh_Hant.po M locale/tbx/grassglossary_fr.tbx Log Message: ----------- Translations update from OSGeo Weblate (#7637) Commit: 1fcc4119cb54ab5a547a01d58234e02e94e0eb5a https://github.com/OSGeo/grass/commit/1fcc4119cb54ab5a547a01d58234e02e94e0eb5a Author: Nicklas Larsson Date: 2026-07-04 (Sat, 04 Jul 2026) Changed paths: M cmake/find_scripts/FindCBLAS.cmake M cmake/find_scripts/FindLAPACKE.cmake M cmake/modules/CheckDependentLibraries.cmake Log Message: ----------- cmake: test CBLAS and LAPACKE packages for req. symbols (#7629) Commit: 4542f7153b3913c7b6bf2953607c9f0f555a59e3 https://github.com/OSGeo/grass/commit/4542f7153b3913c7b6bf2953607c9f0f555a59e3 Author: Linda Karlovska <49241681+lindakarlovska at users.noreply.github.com> Date: 2026-07-05 (Sun, 05 Jul 2026) Changed paths: M gui/wxpython/gui_core/pyedit.py Log Message: ----------- wxGUI/pyedit: Fix saving and opening a file in docked mode (#7643) Python editor: fix saving and opening a file in docked mode Co-authored-by: lindakarlovska Commit: 8eb0a03d8e482c4f841fd4b21ac79054b1ca2788 https://github.com/OSGeo/grass/commit/8eb0a03d8e482c4f841fd4b21ac79054b1ca2788 Author: Stefan Blumentrath Date: 2026-07-07 (Tue, 07 Jul 2026) Changed paths: M python/grass/temporal/core.py A python/grass/temporal/tests/grass_temporal_core_init_skip_db_test.py Log Message: ----------- temporal: add parameter to skip creation of TGIS DB in current mapset on tgis.init (#7645) * enable DB creation skip on tgis.init() * add test for tgis.init(skip_db_init=True) Commit: dcb3324768fc8dddb7d3937bea0fd6ab49f614c1 https://github.com/OSGeo/grass/commit/dcb3324768fc8dddb7d3937bea0fd6ab49f614c1 Author: SAKET KUMAR MALL <72020337+saket0187 at users.noreply.github.com> Date: 2026-07-08 (Wed, 08 Jul 2026) Changed paths: M python/grass/temporal/core.py M python/grass/temporal/list_stds.py M temporal/t.list/t.list.md M temporal/t.list/t.list.py M temporal/t.list/tests/conftest.py M temporal/t.list/tests/test_t_list.py Log Message: ----------- t.list: Add mapset options for t.list (#7631) * Add mapset options for t.list * do not require a TGIS DB in current mapset --------- Co-authored-by: ninsbl Commit: b130fba6d22bebc084a1eb30dc62a08af5529434 https://github.com/OSGeo/grass/commit/b130fba6d22bebc084a1eb30dc62a08af5529434 Author: Stefan Blumentrath Date: 2026-07-09 (Thu, 09 Jul 2026) Changed paths: M python/grass/temporal/core.py Log Message: ----------- temporal: make SQLite TGIS DB connections more robust (#7653) Commit: 86a1345df62072f17063477306df101158a9c372 https://github.com/OSGeo/grass/commit/86a1345df62072f17063477306df101158a9c372 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-07-09 (Thu, 09 Jul 2026) Changed paths: M .github/workflows/create_release_draft.yml Log Message: ----------- CI(deps): Update softprops/action-gh-release action to v3.0.1 (main) (#7654) Commit: 48118b78e65e2f61b4a212b32051fd256c32a4b3 https://github.com/OSGeo/grass/commit/48118b78e65e2f61b4a212b32051fd256c32a4b3 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-07-09 (Thu, 09 Jul 2026) Changed paths: M .github/workflows/label.yml Log Message: ----------- CI(deps): Update actions/labeler action to v6.2.0 (main) (#7655) Commit: cc6382c77278d942bad9c498f3d285550d8f2393 https://github.com/OSGeo/grass/commit/cc6382c77278d942bad9c498f3d285550d8f2393 Author: SAKET KUMAR MALL <72020337+saket0187 at users.noreply.github.com> Date: 2026-07-09 (Thu, 09 Jul 2026) Changed paths: M temporal/t.rast.list/tests/t_rast_list_test.py M temporal/t.vect.list/tests/t_vect_list_test.py Log Message: ----------- temporal: Remove needs_solo_run and fix parsing typos in t.vect.list & t.rast.list tests (#7636) * Fix typo and remove marker * update t.rast.list tests as well * Test with just t.vect.list changes Commit: 66463e1556686dde32df643eca5b6b74783ef08b https://github.com/OSGeo/grass/commit/66463e1556686dde32df643eca5b6b74783ef08b Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-07-10 (Fri, 10 Jul 2026) Changed paths: M .github/workflows/test-nix.yml Log Message: ----------- CI(deps): Update DeterminateSystems/determinate-nix-action action to v3.21.5 (main) (#7661) CI(deps): Update DeterminateSystems/determinate-nix-action action to v3.21.5 Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Commit: 35a7541bedce8b015b457bc24febe5f4153d703b https://github.com/OSGeo/grass/commit/35a7541bedce8b015b457bc24febe5f4153d703b Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-07-10 (Fri, 10 Jul 2026) Changed paths: M .github/workflows/codeql-analysis.yml M .github/workflows/python-code-quality.yml Log Message: ----------- CI(deps): Update github/codeql-action action to v4.37.0 (main) (#7662) CI(deps): Update github/codeql-action action to v4.37.0 Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Commit: 9ea295ab5a9dc034556e91cc669b69e1e77556b4 https://github.com/OSGeo/grass/commit/9ea295ab5a9dc034556e91cc669b69e1e77556b4 Author: Tomas Zigo <50632337+tmszi at users.noreply.github.com> Date: 2026-07-10 (Fri, 10 Jul 2026) Changed paths: M gui/wxpython/lmgr/layertree.py Log Message: ----------- wxGUI/lmgr: preserve scroll map layer position during interaction with map layers (#7647) Commit: a53127d0afb2ea2c089acb04d48d4a1b85351463 https://github.com/OSGeo/grass/commit/a53127d0afb2ea2c089acb04d48d4a1b85351463 Author: Rajveer* Date: 2026-07-10 (Fri, 10 Jul 2026) Changed paths: M temporal/t.list/tests/test_t_list.py Log Message: ----------- t.list: add regression test for listing from a mapset without a temporal database (#7640) * t.list: check for temporal databases in all accessible mapsets * t.list: keep only the regression test, the fix lands in #7631 Commit: f3910c2d64e605d5ecd8cc211219110f40fc595c https://github.com/OSGeo/grass/commit/f3910c2d64e605d5ecd8cc211219110f40fc595c Author: Khanh Le <58643031+nkgotcode at users.noreply.github.com> Date: 2026-07-10 (Fri, 10 Jul 2026) Changed paths: M python/grass/docs/src/index.rst Log Message: ----------- doc: Fix libpython getting-started links (#7581) Commit: 03f7c9a2c2857c873a671e38d887033d56b763fb https://github.com/OSGeo/grass/commit/03f7c9a2c2857c873a671e38d887033d56b763fb Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-07-10 (Fri, 10 Jul 2026) Changed paths: M .github/workflows/additional_checks.yml M .github/workflows/codeql-analysis.yml M .github/workflows/create_release_draft.yml M .github/workflows/documentation.yml M .github/workflows/pytest.yml M .github/workflows/python-code-quality.yml Log Message: ----------- CI(deps): Update actions/setup-python action to v6.3.0 (main) (#7666) Commit: c2ccb36e5638f5f87d23835db5f05989ffffe436 https://github.com/OSGeo/grass/commit/c2ccb36e5638f5f87d23835db5f05989ffffe436 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-07-10 (Fri, 10 Jul 2026) Changed paths: M Dockerfile M docker/ubuntu/Dockerfile Log Message: ----------- CI(deps): Update docker/dockerfile Docker tag to v1.25 (main) (#7667) Commit: ae111ef612d90d14f2675d75cd7a5f5c9e1a8b92 https://github.com/OSGeo/grass/commit/ae111ef612d90d14f2675d75cd7a5f5c9e1a8b92 Author: Edouard Choini?re <27212526+echoix at users.noreply.github.com> Date: 2026-07-12 (Sun, 12 Jul 2026) Changed paths: M raster/r.to.rast3elev/main.c Log Message: ----------- r.to.rast3elev: Check return-value for 'scanf'-like functions (#7660) Potential fix for code scanning alert no. 239: Incorrect return-value check for a 'scanf'-like function Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Commit: c80a5d3b4aa1ff6415ec25dc9b879d3970598be3 https://github.com/OSGeo/grass/commit/c80a5d3b4aa1ff6415ec25dc9b879d3970598be3 Author: Edouard Choini?re <27212526+echoix at users.noreply.github.com> Date: 2026-07-12 (Sun, 12 Jul 2026) Changed paths: M gui/wxpython/iscatt/core_c.py M gui/wxpython/iscatt/iscatt_core.py Log Message: ----------- gui: Actually raise GExceptions in iscatt_core (#7659) * gui: Actually raise GExceptions in iscatt_core Some code in iscatt was not raising the exception it was creating. Thus, it was not having any effect. Here is the PR text for one of the fixes that was generated by AI. I did the others. General fix: when an error condition is detected, **raise** the exception instead of just constructing it. Best fix here: in `gui/wxpython/iscatt/iscatt_core.py`, inside `CatRastUpdater._updateCatRast`, change line 277 from: - `GException(_("Patching category raster conditions file failed."))` to: - `raise GException(_("Patching category raster conditions file failed."))` This preserves intended functionality (error reporting via `GException`) while ensuring the failure is not silently ignored. No new imports, methods, or definitions are required. * Apply suggestions from code review Commit: e9a34c01e333df214bdfba72bb6846fb055712f3 https://github.com/OSGeo/grass/commit/e9a34c01e333df214bdfba72bb6846fb055712f3 Author: Anna Petrasova Date: 2026-07-12 (Sun, 12 Jul 2026) Changed paths: M general/g.region/g.region.md M include/Make/Grass.make M include/Make/Html.make M man/Makefile M utils/Makefile A utils/g.md2man/Makefile A utils/g.md2man/g.md2man.py A utils/g.md2man/gmd.py A utils/g.md2man/tests/g_md2man_test.py Log Message: ----------- doc: generate man pages from markdown (#7540) Add g.md2man, a Markdown to groff converter reusing the g.html2man groff formatter, and switch the Autotools man page build from the HTML sources to the generated markdown. Man pages no longer depend on the HTML build. The converter code was generated with AI assistance (Claude Fable) and reviewed with several rounds of AI-assisted review. Commit: 875be6b06501f77c376cc7ac79fb5a4e1b141419 https://github.com/OSGeo/grass/commit/875be6b06501f77c376cc7ac79fb5a4e1b141419 Author: Rajveer* Date: 2026-07-12 (Sun, 12 Jul 2026) Changed paths: A raster/r.null/tests/r_null_test.py R raster/r.null/testsuite/test_r_null.py Log Message: ----------- tests: Migrate r.null tests from gunittest to pytest (#7675) Migrates the r.null testsuite from gunittest to pytest. Everything goes through grass.tools (r.describe results read with .json, no gs.parse_command). The three checks from the old testsuite are preserved: setnull on an integer map with -i, setnull on a floating point map with -f, and filling NULL cells with the null parameter. Commit: 011921fd74d825d0bb7acc007409e99801804824 https://github.com/OSGeo/grass/commit/011921fd74d825d0bb7acc007409e99801804824 Author: Edouard Choini?re <27212526+echoix at users.noreply.github.com> Date: 2026-07-13 (Mon, 13 Jul 2026) Changed paths: M utils/g.md2man/tests/g_md2man_test.py Log Message: ----------- g.md2man: Expand tests on other cases (#7679) CodeQL Code Quality had some AI findings on a recently changed file, a test file for g.md2man. The tests suggested seemed legitimate, and they are passing. I am thus submitting them here, after testing them in my fork. Original text explaining the findings: ------- The test asserts that there are exactly 3 bullet list markers for the input `"- first\n- second\n - nested\n"`, but this input only has 3 items (first, second, nested). The assertion `== 3` may be correct, but it should be verified that the nested item also produces the same `.IP \(bu 4n` marker, since nested items could produce a different marker format. If the nested list intentionally uses the same marker, this is fine, but the test name `test_unordered_list_nested` suggests the nesting behavior is what's being tested, and there is no assertion verifying that the nested item is actually rendered as nested (e.g., inside `.RS`/`.RE` blocks relative to the parent items). Consider adding an assertion that checks the order of `.RS`, `.IP`, and `.RE` to confirm correct nesting structure. ---------- The `test_comment_parsing_unit` test covers multi-line and inline comments, but there is no unit test for `strip_html_comments` behavior inside a fenced code block (i.e., that a comment inside a fence is preserved). The integration test `test_comment_kept_in_fenced_code` covers this via subprocess, but a direct unit test of `strip_html_comments` with a fenced block containing a comment would provide more precise coverage of that branch in `gmd.py`. * Apply suggested fix to utils/g.md2man/tests/g_md2man_test.py from Copilot Autofix Co-authored-by: Copilot Autofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com> * Apply suggested fix to utils/g.md2man/tests/g_md2man_test.py from Copilot Autofix Co-authored-by: Copilot Autofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com> * Apply ruff format --------- Co-authored-by: Copilot Autofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com> Commit: f9ae02a5e7ce8d143fe310671fc85cc085594ebd https://github.com/OSGeo/grass/commit/f9ae02a5e7ce8d143fe310671fc85cc085594ebd Author: Markus Neteler Date: 2026-07-13 (Mon, 13 Jul 2026) Changed paths: M doc/Makefile M python/grass/docs/conf.py M python/grass/docs/src/gunittest_running_tests.rst M python/grass/docs/src/gunittest_testing.rst M python/grass/docs/src/index.rst Log Message: ----------- docs: Reduce Sphinx build warnings and fix broken links (#7526) Fix the today config type, skip PLY lexer docstrings in autodoc, remove the unsupported logo theme option, correct the toctree entries, and make the sample data links work again. The initial changes were AI-assisted (OpenCode with DeepSeek), the review and follow-up fixes used Claude Code (with Fable). --------- Co-authored-by: Edouard Choini?re <27212526+echoix at users.noreply.github.com> Co-authored-by: Vaclav Petras Commit: d729f90aa20b5c853585d4fad50c6a0992919441 https://github.com/OSGeo/grass/commit/d729f90aa20b5c853585d4fad50c6a0992919441 Author: Stefan Blumentrath Date: 2026-07-13 (Mon, 13 Jul 2026) Changed paths: M python/grass/temporal/core.py M python/grass/temporal/metadata.py M python/grass/temporal/tests/grass_temporal_core_init_skip_db_test.py Log Message: ----------- temporal: allow STDS object construction without initialized database (#7672) * set sqlite as default backend on init * read tgis_db_version from globals if no DB is initialized * add tests for STDS construction Commit: 2e02066d96b1e5c32d3b64c6ddb4834c77c9699b https://github.com/OSGeo/grass/commit/2e02066d96b1e5c32d3b64c6ddb4834c77c9699b Author: Stefan Blumentrath Date: 2026-07-13 (Mon, 13 Jul 2026) Changed paths: M scripts/r.reclass.area/r.reclass.area.html M scripts/r.reclass.area/r.reclass.area.md M scripts/r.reclass.area/r.reclass.area.py M scripts/r.reclass.area/testsuite/test_r_reclass_area.py M scripts/r.reclass.area/testsuite/testrra.py Log Message: ----------- r.reclass.area: add upper and lower option and rewrite with Tools API (#7337) * move to Tools API * add upper/lower filter range options) (backwards compatible) for both vector and raster based filtering * propagate options of underlying tools (r.clump) * add tests Co-authored-by: Markus Neteler * Edit html * Unchange header line * typos --------- Co-authored-by: Edouard Choini?re <27212526+echoix at users.noreply.github.com> Co-authored-by: Markus Neteler Commit: 32785cd092089a58c9ab0fce28aeaa85066a4ee1 https://github.com/OSGeo/grass/commit/32785cd092089a58c9ab0fce28aeaa85066a4ee1 Author: Edouard Choini?re <27212526+echoix at users.noreply.github.com> Date: 2026-07-13 (Mon, 13 Jul 2026) Changed paths: M general/g.region/main.c M raster/r.out.vtk/writeascii.c M raster/r.watershed/seg/init_vars.c M raster3d/r3.out.vtk/writeVTKData.c Log Message: ----------- CQ: Fix CodeQL issues "Incorrect return-value check for a 'scanf'-like function" (#7673) Follow-up from https://github.com/OSGeo/grass/pull/7660 This PR applies the same logic as the other PR, where how sscanf can also return EOF "if input failure occurs before the first receiving argument was assigned". (See https://en.cppreference.com/c/io/fscanf). Here, the little touch that is different for `raster/r.out.vtk/writeascii.c` and `raster3d/r3.out.vtk/writeVTKData.c`, is that I assume that if there's the `EOF` case, or any invalid case for the `null_value`, we would still want the null value to be 0. I think that's the design intention behind the code. This was assisted by AI (Copilot-generated fix suggestions for code scanning alerts), but we can reason through it and I applied some myself in order to batch them in one single PR. This should fix: - https://github.com/OSGeo/grass/security/code-scanning/525 - https://github.com/OSGeo/grass/security/code-scanning/526 - https://github.com/OSGeo/grass/security/code-scanning/527 - https://github.com/OSGeo/grass/security/code-scanning/528 - https://github.com/OSGeo/grass/security/code-scanning/531 - https://github.com/OSGeo/grass/security/code-scanning/532 - https://github.com/OSGeo/grass/security/code-scanning/533 * Potential fix for code scanning alert no. 525: Incorrect return-value check for a 'scanf'-like function Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> * Potential fix for code scanning alert no. 528: Incorrect return-value check for a 'scanf'-like function Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> * Update writeascii.c * r3.out.vtk: Fix "Incorrect return-value check for a 'scanf'-like function" for null value * r.watershed: Fix "Incorrect return-value check for a 'scanf'-like function" for disturbed_land default value Adresses https://github.com/OSGeo/grass/security/code-scanning/532 --------- Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Commit: 29bf67c51eaa0b90a426c8302d8cc8d86f5e1e85 https://github.com/OSGeo/grass/commit/29bf67c51eaa0b90a426c8302d8cc8d86f5e1e85 Author: Edouard Choini?re <27212526+echoix at users.noreply.github.com> Date: 2026-07-13 (Mon, 13 Jul 2026) Changed paths: M .github/workflows/macos.yml M .github/workflows/pytest.yml Log Message: ----------- CI: Set OMP_NUM_THREADS=1 for tests run in parallel (#7680) We observed some random, transient timeouts on different tests. For one of them, t.list, there was no reason to fail on macOS, where there are 3 cores instead of 2 in GitHub Actions. There's a possibility that there's a problem with the temporal library locking up somewhere, but there?s also a small chance that the r.mapcalc calls are now using multiple processors. It "costs" not much to add this env var so that the number of threads is limited, even if it doesn't fix all problems; it might just fix some potential ones, since we are already running in parallel in that section. Commit: 842a5d7863aeed79717689dd07ef9fea97948b94 https://github.com/OSGeo/grass/commit/842a5d7863aeed79717689dd07ef9fea97948b94 Author: Edouard Choini?re <27212526+echoix at users.noreply.github.com> Date: 2026-07-13 (Mon, 13 Jul 2026) Changed paths: M raster3d/r3.out.vtk/writeVTKData.c Log Message: ----------- r3.out.vtk: Fix typo in translated string (#7685) AI findings on a recently modified file found a typo in a translated string. This adds "be" in "Values should be in between"... Apply suggested fix to raster3d/r3.out.vtk/writeVTKData.c from Copilot Autofix Co-authored-by: Copilot Autofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com> Commit: 46db5818f1288da21c47a8a36d35eda21623496f https://github.com/OSGeo/grass/commit/46db5818f1288da21c47a8a36d35eda21623496f Author: Anna Petrasova Date: 2026-07-13 (Mon, 13 Jul 2026) Changed paths: M python/grass/temporal/c_libraries_interface.py M python/grass/temporal/space_time_datasets.py A python/grass/temporal/tests/grass_temporal_map_metadata_test.py Log Message: ----------- grass.temporal: Fix swapped rows and cols in map metadata (#7681) The ctypes interface assigned the number of columns to the rows key and the number of rows to the cols key, for raster as well as 3D raster maps. The swapped values are stored in the temporal database when a map is registered and are reported by t.info, which therefore disagreed with r.info and r3.info. The number of cells was not affected, because it is the product of both. Maps registered before this fix keep the swapped values in the temporal database until they are registered again. Update the doctests which asserted the swapped values and add a test comparing the metadata read through the interface with the output of r.info and r3.info. The test was written with the help of Claude Code. Commit: 425d460918f26a35ff554c08798c9d8de3d70fad https://github.com/OSGeo/grass/commit/425d460918f26a35ff554c08798c9d8de3d70fad Author: Vaclav Petras Date: 2026-07-13 (Mon, 13 Jul 2026) Changed paths: M .github/workflows/pytest.yml M .github/workflows/python-code-quality.yml M REQUIREMENTS.md M lib/init/grass.py M pyproject.toml M python/grass/script/setup.py M utils/mkdocs.py Log Message: ----------- packaging: Update min Python version to 3.11 (#7684) Python 3.10 receives security fixes only and reaches end of life in October 2026, before the next release. Per RFC 8, raise the minimum supported Python version from 3.10 to 3.11. Update the version in REQUIREMENTS.md, pyproject.toml (requires-python, Black, Pylint, Pyright, and isort) and CI (pytest matrix and MIN_PYTHON_VERSION). Update places in code which add code for the older version: - utils/mkdocs.py: datetime.fromisoformat parses the Z suffix used by recent Git natively since 3.11, so the fallback is no longer needed. - Use the datetime.UTC alias added in 3.11. Ruff enables this check (UP017) once it infers the higher target version from requires-python. - Drop the toml extra for bandit. It provided a TOML parser for reading the bandit configuration from pyproject.toml, which the standard library covers since 3.11 with tomllib. Here the deciding version is the one the workflow runs, which is well past 3.11 already. Commit: 01ac43ddc639e01e14ecb3025ee4a624919e551a https://github.com/OSGeo/grass/commit/01ac43ddc639e01e14ecb3025ee4a624919e551a Author: Anna Petrasova Date: 2026-07-14 (Tue, 14 Jul 2026) Changed paths: M CMakeLists.txt M cmake/modules/generate_docs.cmake M man/CMakeLists.txt A man/build_manpages.py M utils/CMakeLists.txt Log Message: ----------- CMake: Build man pages from markdown (#7674) * CMake: Build man pages from markdown Generate the markdown documentation (--md-description + mkmarkdown.py) in all three doc paths (modules, GUI, scripts) and convert man pages from it with g.md2man instead of from HTML with g.html2man, mirroring the Autotools build. Install g.md2man.py and gmd.py, and install the generated docs/mkdocs tree, which was previously not installed at all. Add man/build_manpages.py, a sweep run after the index scripts that converts any markdown page without an up-to-date man page. It ports man/Makefile's MANPAGES wildcard to CMake, which has no build-time glob, and produces the index and dynamically named topic_* man pages that the CMake build previously did not ship. Run the doc generators in the tool source directory like Autotools does. This fixes the SOURCE CODE footer in all CMake-built pages, which previously pointed to a nonexistent build-directory path in the repository and fell back to an Accessed date instead of the last commit, and makes the copy-source-into-build-dir steps unnecessary. Also fix build_class.py receiving the documentation directory as its year argument. Verified against an Autotools build: g.md2man output for the same generated markdown is byte-identical. Generated with AI assistance (Claude Fable), including the build verification against the Autotools doc tree. * address review Commit: e0672abdb0a386d847b8ef4c383c0b7d09f2ebcb https://github.com/OSGeo/grass/commit/e0672abdb0a386d847b8ef4c383c0b7d09f2ebcb Author: Vaclav Petras Date: 2026-07-14 (Tue, 14 Jul 2026) Changed paths: M python/grass/pygrass/vector/table.py Log Message: ----------- grass.pygrass: Add the psycopg2 hint as an exception note (#7690) The table connection raised a new ImportError with the hint as its message, so the message of the original error, which says which module is missing, was replaced by the hint. Add the hint as a note to the original error instead. From the Python documentation of BaseException.add_note(): Add the string note to the exception's notes which appear in the standard traceback after the exception string. The traceback then shows both the missing module and the hint. Exception notes need Python 3.11, which is now the minimum version. Commit: be451c43496529ce15626b4bb141df6028183302 https://github.com/OSGeo/grass/commit/be451c43496529ce15626b4bb141df6028183302 Author: Vaclav Petras Date: 2026-07-14 (Tue, 14 Jul 2026) Changed paths: M python/grass/gunittest/loader.py Log Message: ----------- grass.gunittest: Add the module name as an exception note (#7689) The test loader raised a new ImportError to say which module could not be imported. The message used e.message, which does not exist in Python 3, so the handler raised AttributeError instead of the intended error. Add the module name as a note to the original error instead. From the Python documentation of BaseException.add_note(): Add the string note to the exception's notes which appear in the standard traceback after the exception string. The traceback then shows both the import error and the module name. Exception notes need Python 3.11, which is now the minimum version. Commit: d4b639dccb5f9204648b68ae1e38dcde92137b8e https://github.com/OSGeo/grass/commit/d4b639dccb5f9204648b68ae1e38dcde92137b8e Author: Anna Petrasova Date: 2026-07-14 (Tue, 14 Jul 2026) Changed paths: M lib/arraystats/class.c M vector/v.class/main.c M vector/v.class/tests/test_v_class.py Log Message: ----------- v.class: Fix out-of-bounds read when no records are selected (#7692) An empty WHERE result left an empty data array, which the classification algorithms then indexed at data[0] and data[count - 1]. The values printed as class breaks were whatever the heap happened to hold, which is zeroed on Linux but not on Windows, making the test flaky there. Warn the user and keep the zero-initialized breaks when nothing is selected, and reject an empty array in AS_class_apply_algorithm. Commit: 3e84f7cf1a9f4ea2cca9be853a0028ffecd86ee0 https://github.com/OSGeo/grass/commit/3e84f7cf1a9f4ea2cca9be853a0028ffecd86ee0 Author: Anna Petrasova Date: 2026-07-14 (Tue, 14 Jul 2026) Changed paths: M scripts/CMakeLists.txt M scripts/Makefile A scripts/v.geometry/Makefile A scripts/v.geometry/tests/conftest.py A scripts/v.geometry/tests/v_geometry_test.py A scripts/v.geometry/v.geometry.html A scripts/v.geometry/v.geometry.md A scripts/v.geometry/v.geometry.py Log Message: ----------- v.geometry: new tool (v.to.db wrapper) for more obvious access to vector geometry computation (#7329) Commit: f5cd4fab795fdb47be00ef64b25c852dfbc48c60 https://github.com/OSGeo/grass/commit/f5cd4fab795fdb47be00ef64b25c852dfbc48c60 Author: Vaclav Petras Date: 2026-07-14 (Tue, 14 Jul 2026) Changed paths: M gui/wxpython/iscatt/plots.py M gui/wxpython/timeline/frame.py M gui/wxpython/tplot/frame.py Log Message: ----------- wxGUI: Add the matplotlib hint as an exception note (#7688) The Scatterplot, Timeline, and Temporal Plot tools raised a new ImportError with the hint as its message, so the message of the original error, which says which module is actually missing, was replaced by the hint. Add the hint as a note to the original error instead. From the Python documentation of BaseException.add_note(): Add the string note to the exception's notes which appear in the standard traceback after the exception string. The traceback then shows both the missing module and the hint. The consumer code (various places) shows always its own message, so the not, not the original message is not used. These changes do not change that. Exception notes need Python 3.11, which is now the minimum version. Commit: 5deb0f6ee120cf52f0322bb82474c5a37cd75f55 https://github.com/OSGeo/grass/commit/5deb0f6ee120cf52f0322bb82474c5a37cd75f55 Author: Markus Neteler Date: 2026-07-14 (Tue, 14 Jul 2026) Changed paths: M doc/howto_release.md Log Message: ----------- docs: howto_release.md: update OSGeo server names (#7711) Commit: 7a67a8020abd7a1c2e56b338d71808da5d1a2a0a https://github.com/OSGeo/grass/commit/7a67a8020abd7a1c2e56b338d71808da5d1a2a0a Author: Vaclav Petras Date: 2026-07-14 (Tue, 14 Jul 2026) Changed paths: M gui/wxpython/core/gcmd.py M gui/wxpython/core/gconsole.py M gui/wxpython/gui_core/forms.py M gui/wxpython/gui_core/ghelp.py M gui/wxpython/rlisetup/frame.py M lib/init/grass.py M python/grass/gunittest/multirunner.py M python/grass/script/utils.py M utils/mkhtml.py Log Message: ----------- packaging: Remove locale fallbacks for Python older than 3.11 (#7697) locale.getencoding() was added in Python 3.11, so the fallbacks to the deprecated locale.getdefaultlocale() are never used now that 3.11 is the minimal supported version. Call locale.getencoding() directly. The two places calling locale.getlocale() get the same treatment. That function is available in all supported versions, so those fallbacks could not be reached even before. Commit: 223c3732ff214f21d980277c0cf38ba819bab13d https://github.com/OSGeo/grass/commit/223c3732ff214f21d980277c0cf38ba819bab13d Author: Linda Karlovska <49241681+lindakarlovska at users.noreply.github.com> Date: 2026-07-14 (Tue, 14 Jul 2026) Changed paths: M doc/jupyter_intro.md A gui/icons/grass/jupyter.png A gui/icons/grass/jupyter.svg M gui/wxpython/CMakeLists.txt M gui/wxpython/Makefile A gui/wxpython/docs/jupyter_browser_mode.png A gui/wxpython/docs/jupyter_integrated_mode.png A gui/wxpython/docs/jupyter_startup_dialog.png A gui/wxpython/docs/wxGUI.jupyter.md A gui/wxpython/jupyter_notebook/dialogs.py A gui/wxpython/jupyter_notebook/environment.py A gui/wxpython/jupyter_notebook/frame.py A gui/wxpython/jupyter_notebook/notebook.py A gui/wxpython/jupyter_notebook/panel.py A gui/wxpython/jupyter_notebook/server.py A gui/wxpython/jupyter_notebook/storage.py A gui/wxpython/jupyter_notebook/template_notebooks/new.ipynb A gui/wxpython/jupyter_notebook/template_notebooks/welcome.ipynb A gui/wxpython/jupyter_notebook/toolbars.py A gui/wxpython/jupyter_notebook/utils.py M gui/wxpython/lmgr/frame.py M gui/wxpython/lmgr/toolbars.py M gui/wxpython/main_window/frame.py M gui/wxpython/main_window/notebook.py M gui/wxpython/xml/toolboxes.xml M gui/wxpython/xml/wxgui_items.xml M man/mkdocs/mkdocs.yml Log Message: ----------- wxGUI: Support for Jupyter-based workflows (#5901) Starting with GRASS 8.6, the GUI supports launching and managing Jupyter Notebooks directly. Users can access notebooks through two modes: Browser mode (default web browser) or Integrated mode (embedded in GUI). Authored-by: Linda Karlovska Co-authored-by: Tomas Zigo Co-authored-by: Edouard Choini?re <27212526+echoix at users.noreply.github.com> Co-authored-by: Anna Petrasova Co-authored-by: Vaclav Petras Commit: 795f878d4b64042f46a875197e57d3199308b1cb https://github.com/OSGeo/grass/commit/795f878d4b64042f46a875197e57d3199308b1cb Author: Corey White Date: 2026-07-14 (Tue, 14 Jul 2026) Changed paths: M lib/psdriver/draw_bitmap.c M lib/psdriver/erase.c Log Message: ----------- lib/psdriver: Print double coordinates with %f, not %d (#7700) PS_Bitmap passed the double cur_x and cur_y and PS_Erase passed the double ps.left, ps.top, ps.right and ps.bot to output() as %d. On x86_64 this reads the wrong varargs registers, so BITMAP and BOX received garbage operands. Use %f as box.c already does for the same BOX procedure. Fixes 6 CodeQL cpp/wrong-type-format-argument alerts. Commit: 7d24287d272eef3e60c65a5cc98b22d74c6a1526 https://github.com/OSGeo/grass/commit/7d24287d272eef3e60c65a5cc98b22d74c6a1526 Author: Corey White Date: 2026-07-14 (Tue, 14 Jul 2026) Changed paths: M lib/nviz/lights.c M lib/ogsf/gs.c M lib/ogsf/gs_norms.c M lib/ogsf/gsd_cplane.c M lib/ogsf/gsd_fringe.c M lib/ogsf/gsd_surf.c M lib/ogsf/gsd_views.c M lib/ogsf/gsd_wire.c Log Message: ----------- lib/ogsf, lib/nviz: Fix multiplications converted to a larger type (#7704) Commit: ec578670869985105ab563de8b16b67f64014f0f https://github.com/OSGeo/grass/commit/ec578670869985105ab563de8b16b67f64014f0f Author: Corey White Date: 2026-07-14 (Tue, 14 Jul 2026) Changed paths: M python/grass/utils/download.py M scripts/g.extension/g.extension.py M scripts/r.unpack/r.unpack.py M scripts/v.unpack/v.unpack.py Log Message: ----------- r.unpack, v.unpack: Refuse to extract archives without a tarfile filter (#7701) Commit: 6ccda375af353bd4d6f7da5ffffcebac10d1a11b https://github.com/OSGeo/grass/commit/6ccda375af353bd4d6f7da5ffffcebac10d1a11b Author: Corey White Date: 2026-07-15 (Wed, 15 Jul 2026) Changed paths: M lib/cairodriver/draw_bitmap.c M lib/cairodriver/graph.c M lib/external/ccmath/hmgen.c M lib/external/ccmath/unitary.c M lib/gmath/del2g.c M lib/gmath/getg.c M lib/linkm/new.c M lib/pngdriver/graph_close.c M lib/pngdriver/graph_set.c M lib/raster/get_row.c M lib/raster/put_row.c M lib/raster3d/cache.c M lib/raster3d/misc.c M lib/raster3d/tilewrite.c M lib/raster3d/volume.c M lib/segment/address.c M lib/vector/diglib/allocation.c Log Message: ----------- libraries: Fix multiplications converted to a larger type (#7705) Cast the first operand so that products assigned to or compared with size_t, ssize_t, long, and off_t values are computed in the wide type instead of int, which can overflow for large dimensions. This covers buffer sizes in the png and cairo drivers, gmath filter kernels, the ccmath calloc calls, linkm chunk allocation, raster row buffers, raster3d tile and volume sizes, segment addressing, and diglib reallocation. Fixes 24 CodeQL cpp/integer-multiplication-cast-to-long alerts. Commit: 7a696dbba58d3f84bf22149f49f57dcb7894f7df https://github.com/OSGeo/grass/commit/7a696dbba58d3f84bf22149f49f57dcb7894f7df Author: Corey White Date: 2026-07-14 (Tue, 14 Jul 2026) Changed paths: M display/d.linegraph/main.c M raster/r.sunmask/solpos00.c Log Message: ----------- r.sunmask, d.linegraph: Compute trig products in double (#7712) Commit: f85545aac20250111392dfc30cbef97c784e49be https://github.com/OSGeo/grass/commit/f85545aac20250111392dfc30cbef97c784e49be Author: Corey White Date: 2026-07-15 (Wed, 15 Jul 2026) Changed paths: M pyproject.toml Log Message: ----------- checks: Exclude vendored code from bandit scanning (#7699) Bandit scans the vendored ctypesgen copy in python/libgrass_interface_generator and the vendored PLY copy in python/grass/temporal/ply, reporting 13 findings (B102, B403, B605, B307, B602, B607) in code GRASS does not maintain. Exclude both directories, matching the existing pylint ignore-paths and formatter extend-exclude entries. Commit: 4c45878bb13dc369b133973271c8310c0c82507a https://github.com/OSGeo/grass/commit/4c45878bb13dc369b133973271c8310c0c82507a Author: Edouard Choini?re <27212526+echoix at users.noreply.github.com> Date: 2026-07-15 (Wed, 15 Jul 2026) Changed paths: M doc/howto_release.md Log Message: ----------- doc: How to release: follow up typos (#7718) Follow up of a recently changed file. AI findings mostly found typos, plus an interesting other situation. The symlink source uses `grass-$VERSION.tar.md5sum`, but the md5sum file is created as `grass-${VERSION}.md5sum` (line 347). The `.tar` part in the filename is incorrect and the symlink will be broken. _This PR applies 4/4 suggestions from code quality [AI findings](https://github.com/OSGeo/grass/security/quality/ai-findings)._ * Apply suggested fix to doc/howto_release.md from Copilot Autofix --------- Co-authored-by: Copilot Autofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com> Commit: e193ca71e7d42d0beb730d17e95a6e8de689afb6 https://github.com/OSGeo/grass/commit/e193ca71e7d42d0beb730d17e95a6e8de689afb6 Author: Anna Petrasova Date: 2026-07-15 (Wed, 15 Jul 2026) Changed paths: M python/grass/temporal/register.py M temporal/t.register/t.register.html M temporal/t.register/t.register.md R temporal/t.register/test.t.register.raster.file.reltime.sh A temporal/t.register/tests/conftest.py A temporal/t.register/tests/t_register_file_test.py Log Message: ----------- grass.temporal: Fix end time parsing when registering relative-time maps from file (t.register) (#7717) The name|start|end input file format silently misread the end time as a semantic label for relative-time datasets: maps were registered as point time and the intended end times were written as semantic labels into the raster metadata. Regression from the band references implementation (a83af32aac). An integer third column is now interpreted as an end time for relative time; anything else remains a semantic label. Written with the help of Claude Code. Commit: 46836626508062ccf0ae8a5e0571666eb814cb5c https://github.com/OSGeo/grass/commit/46836626508062ccf0ae8a5e0571666eb814cb5c Author: Edouard Choini?re <27212526+echoix at users.noreply.github.com> Date: 2026-07-15 (Wed, 15 Jul 2026) Changed paths: M display/d.linegraph/main.c Log Message: ----------- d.linegraph: Follow-up fixes for typos, dereference pointers, and format string precision specifier (#7722) A couple simple string typos were fixed, plus two other issues. `tt` and `tb` are pointer parameters (`double *tt`, `double *tb`), so `tt - tb` computes pointer difference (an address offset), not the difference between the pointed-to text box values. The condition should dereference the pointers: `(*tt - *tb) > YTIC_DIST`. The format string `"%f.0"` is incorrect ? the `.0` precision specifier must be inside the format specifier, not after it. The literal `.0` will be appended as plain text to the output. The intended format is `"%.0f"` to format the value as a float with no decimal places. * Apply suggested fix to display/d.linegraph/main.c from Copilot Autofix Co-authored-by: Copilot Autofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com> * Apply suggested fix to display/d.linegraph/main.c from Copilot Autofix Co-authored-by: Copilot Autofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com> * Apply suggested fix to display/d.linegraph/main.c from Copilot Autofix Co-authored-by: Copilot Autofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com> * Apply suggested fix to display/d.linegraph/main.c from Copilot Autofix Co-authored-by: Copilot Autofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com> --------- Co-authored-by: Copilot Autofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com> Commit: 8031e362fd2f63a6c550be691aeda1e989839312 https://github.com/OSGeo/grass/commit/8031e362fd2f63a6c550be691aeda1e989839312 Author: Anna Petrasova Date: 2026-07-15 (Wed, 15 Jul 2026) Changed paths: A temporal/t.info/tests/conftest.py A temporal/t.info/tests/test_t_info_backend.py A temporal/t.info/tests/test_t_info_str3ds.py A temporal/t.info/tests/test_t_info_strds.py A temporal/t.info/tests/test_t_info_stvds.py R temporal/t.info/testsuite/test.t.info.sh Log Message: ----------- t.info: Add tests (#7682) Add pytest tests covering the plain, shell (-g), history (-h) and temporal database backend (-d) output of t.info for space time datasets and maps of all types. Include a dataset without registered maps, a relative time dataset, a map registered in two datasets and non-ASCII title and description. Remove the shell script test, which the new tests replace. The temporal history records the command name with the .py extension on Windows, so assert the name and its parameters separately. The tests were written with the help of Claude Code. Commit: f131b6caa797081a9a0cc4ca42514e793161f56b https://github.com/OSGeo/grass/commit/f131b6caa797081a9a0cc4ca42514e793161f56b Author: Vaclav Petras Date: 2026-07-15 (Wed, 15 Jul 2026) Changed paths: M python/grass/utils/download.py A python/grass/utils/tests/grass_utils_download_test.py M scripts/g.download.project/g.download.project.html M scripts/g.download.project/g.download.project.md Log Message: ----------- grass.utils: Fix the download error message and limit the URL schemes (#7687) Fix the HTTP error message, which lost its {desc} placeholder and was formatted with the whole HTTPError instead of a status code. Limit a download to the supported schemes (http, https, ftp, file), since urlretrieve opens any scheme, including data and custom ones (Bandit B310), and document that a local archive needs the file scheme (no change in behavior, just doc clarity). Skip the content type check for a local file, which fixed extracting a local ZIP on Windows. Add tests for the module. Commit: f0970ee81eb13fdfb9dee4ed0c5b37a7baa5cc7e https://github.com/OSGeo/grass/commit/f0970ee81eb13fdfb9dee4ed0c5b37a7baa5cc7e Author: Anna Petrasova Date: 2026-07-15 (Wed, 15 Jul 2026) Changed paths: M python/grass/app/cli.py M python/grass/app/tests/grass_app_cli_test.py M python/grass/script/__init__.py M python/grass/script/core.py A python/grass/script/tests/grass_script_create_mapset_test.py Log Message: ----------- grass.script: add create_mapset function (#7298) Validates project exists and has PERMANENT mapset Validates mapset name using legal_name() Rejects creating PERMANENT overwrite=True to replace existing mapset initialize_db=True (default) runs db.connect -c via Tools API env parameter for use with specific sessions, falls back to os.environ Raises ScriptError with clear messages for all error cases Commit: 9893d6817d3900835ff0e0775132f773ae547f0f https://github.com/OSGeo/grass/commit/9893d6817d3900835ff0e0775132f773ae547f0f Author: Stefan Blumentrath Date: 2026-07-15 (Wed, 15 Jul 2026) Changed paths: M python/grass/temporal/core.py M python/grass/temporal/tests/grass_temporal_core_init_skip_db_test.py M temporal/t.connect/t.connect.html M temporal/t.connect/t.connect.md M temporal/t.list/t.list.py Log Message: ----------- temporal: handle TGIS DB connections for half initialized mapsets (#7707) * exclude mapsets without DB * handle defined connection without DB file. * add test for half initialized mapset * try to clarify functionality in manual * de-escalate warnings Co-authored-by: Anna Petrasova Co-authored-by: Veronica Andreo Commit: e50e16c4b2c730c916fc4342b4966cd6d27ddb2c https://github.com/OSGeo/grass/commit/e50e16c4b2c730c916fc4342b4966cd6d27ddb2c Author: Corey White Date: 2026-07-15 (Wed, 15 Jul 2026) Changed paths: M raster/r.in.gdal/main.c M raster/r.viewshed/grass.cpp M raster/r.watershed/ram/init_vars.c Log Message: ----------- raster: Fix three single-alert CodeQL findings (#7702) r.watershed(ram): checking sscanf against 0 misses the EOF return, so use != 1 as the seg variant already does. r.viewshed: bound the inner column loop by the local int ncols cast to dimensionType, matching the row loop, instead of comparing the unsigned short counter directly to Rast_window_cols(). r.in.gdal: drop the null check on sdsdesc, which is always assigned a non-null pointer beforehand. Commit: 57968d60e7e3865a84ccf76bb4ed0ad92cd3cc32 https://github.com/OSGeo/grass/commit/57968d60e7e3865a84ccf76bb4ed0ad92cd3cc32 Author: Stefan Blumentrath Date: 2026-07-15 (Wed, 15 Jul 2026) Changed paths: M python/grass/temporal/abstract_space_time_dataset.py M python/grass/temporal/list_stds.py M temporal/t.rast.list/t.rast.list.py M temporal/t.rast.list/tests/t_rast_list_test.py Log Message: ----------- t.rast.list: allow method gran with where option (#7678) * enable where with method gran * enable where with method gran, set '' to None for gran * add gran-where test, move to tools --------- Co-authored-by: SAKET KUMAR MALL <72020337+saket0187 at users.noreply.github.com> Co-authored-by: Anna Petrasova Commit: 22df76e0d0ba549593a8d044b80e6f0cbd954a83 https://github.com/OSGeo/grass/commit/22df76e0d0ba549593a8d044b80e6f0cbd954a83 Author: Corey White Date: 2026-07-15 (Wed, 15 Jul 2026) Changed paths: M python/grass/imaging/images2avi.py M python/grass/pygrass/modules/grid/grid.py Log Message: ----------- python: Use argument lists instead of shell=True for subprocess (#7703) Commit: c6459dc35f802085fd32758d69661bdf07452ce0 https://github.com/OSGeo/grass/commit/c6459dc35f802085fd32758d69661bdf07452ce0 Author: Anna Petrasova Date: 2026-07-15 (Wed, 15 Jul 2026) Changed paths: M doc/development/style_guide.md M man/mkdocs/docs/development_intro.md Log Message: ----------- doc: use absolute links in style guide, add link to cookiecutter (#5656) Commit: f63463995a7ec61a3d2948cefe6a39092ef81683 https://github.com/OSGeo/grass/commit/f63463995a7ec61a3d2948cefe6a39092ef81683 Author: Markus Neteler Date: 2026-07-15 (Wed, 15 Jul 2026) Changed paths: M python/grass/script/db.py Log Message: ----------- db.univar: fix Python error when input table not existing (#7726) Commit: 7aec9f206e28a71671277a4a6b8d8db23cac3ef3 https://github.com/OSGeo/grass/commit/7aec9f206e28a71671277a4a6b8d8db23cac3ef3 Author: Anna Petrasova Date: 2026-07-15 (Wed, 15 Jul 2026) Changed paths: M cmake/modules/build_addon.cmake M include/Make/Module.make M include/Make/Script.make M scripts/g.extension/g.extension.py M scripts/g.extension/testsuite/test_addons_download.py M scripts/g.extension/testsuite/test_addons_modules.py Log Message: ----------- g.extension: Install markdown documentation for addons (#7676) Extend the addon install rules in Module.make and Script.make to install the generated markdown page and its images into docs/mkdocs/source in the addon prefix, next to the existing HTML and man page. g.extension creates the directory on install and removes the markdown page on uninstall. Generate markdown and man pages also in the CMake addon build (build_addon.cmake), which previously produced only HTML pages and no man pages at all. This requires g.md2man in the installed GRASS (shipped by the Autotools build since #7540 and by the CMake build since #7674). update_manual_page() intentionally remains HTML-only: it rewrites relative links for the browser-based help, while the installed markdown has no consumer that follows links (man pages drop link targets, and the online addons manual build does its own linking). Extend the g.extension tests to check the installed markdown files. AI assistance (Claude Fable); verified with install and remove round trips of a sample addon through both the make-based and CMake-based paths. Commit: f0376624592e47e50148f3cc5a9f9bfdbcf776fd https://github.com/OSGeo/grass/commit/f0376624592e47e50148f3cc5a9f9bfdbcf776fd Author: Anna Petrasova Date: 2026-07-15 (Wed, 15 Jul 2026) Changed paths: M CMakeLists.txt M include/CMakeLists.txt M lib/temporal/CMakeLists.txt Log Message: ----------- CMake: Fix stale staging of headers, modules list, and temporal SQL in build output (#7720) This PR fixes three CMake staging defects that leave the runnable tree under build/output stale or incomplete, typically after editing headers or switching branches. Each showed up as confusing failures unrelated to the change under test. AI assistance Claude Fable Commit: c7fc4ea573ef6c5092d667105f3a08215319582b https://github.com/OSGeo/grass/commit/c7fc4ea573ef6c5092d667105f3a08215319582b Author: Anna Petrasova Date: 2026-07-15 (Wed, 15 Jul 2026) Changed paths: M python/grass/temporal/__init__.py M python/grass/temporal/gui_support.py A python/grass/temporal/tests/grass_temporal_gui_support_test.py Log Message: ----------- grass.temporal: Add registered_maps_grouped() and honor dbif mapsets in tlist() (#7714) Add a gui_support helper that returns the maps registered in all space time datasets of the mapsets covered by the given database connection, grouped by dataset type and dataset id, ordered by start time. This gives the Data Catalog a cheap way to show dataset contents and to identify maps registered in any dataset without calling t.rast.list per dataset. Fix tlist() to iterate the mapsets of the passed connection instead of re-deriving the search path, so tlist_grouped() works with a connection created with mapsets=*. Default behavior is unchanged. The tests also cover mapsets without a temporal database, a project without any temporal database, and verify that listing with tgis.init(skip_db_init=True) does not create a temporal database. Written with the help of Claude Code. Commit: 0aaa18e7c0974244ec5564fc52c6495e2b426f59 https://github.com/OSGeo/grass/commit/0aaa18e7c0974244ec5564fc52c6495e2b426f59 Author: KBlumentrath Date: 2026-07-16 (Thu, 16 Jul 2026) Changed paths: M gui/wxpython/core/menutree.py M gui/wxpython/core/utils.py M gui/wxpython/gmodeler/model.py M gui/wxpython/gmodeler/panels.py M gui/wxpython/image2target/ii2t_gis_set.py M gui/wxpython/rlisetup/frame.py M man/build.py M man/build_rest.py M pyproject.toml M python/grass/grassdb/manage.py M python/grass/gunittest/reporters.py M python/grass/pygrass/modules/interface/flag.py M python/grass/pygrass/modules/interface/module.py M python/grass/pygrass/modules/interface/parameter.py M python/grass/pygrass/modules/interface/read.py M python/grass/script/core.py M scripts/g.extension/g.extension.py M scripts/r.in.srtm/r.in.srtm.py Log Message: ----------- style: fix ruff rules RUF019 and PTH104 (#7693) * ruff 019 unnecessary key check * PTH104 os rename * checks: Remove fixed rules from ruff ignore list * python: Add typing for investigated functions and dependent ones --------- Co-authored-by: Edouard Choini?re <27212526+echoix at users.noreply.github.com> Commit: 6dc1110500c3e6eb9a5bb46772fab4214b1be2fd https://github.com/OSGeo/grass/commit/6dc1110500c3e6eb9a5bb46772fab4214b1be2fd Author: Vaclav Petras Date: 2026-07-16 (Thu, 16 Jul 2026) Changed paths: M AGENTS.md M python/grass/temporal/tests/grass_temporal_gui_support_test.py Log Message: ----------- grass.temporal: Use an explicit env in the gui_support test session (#7732) The temporal tests needs separate environment like all the other tests, but env can't be explicitly passes as for the rest of the API, so this uses pytest's monkeypatch to work around that. The module-scoped fixture created its sessions with gs.setup.init() without env, which sets the session up in the global os.environ. init() prepends the GRASS executable paths to PATH on every call and never removes them again, so PATH kept growing for the rest of the pytest process, and later tests which copy os.environ inherited it. On Windows this made r.coin fail on main since #7714 was merged: r.coin runs r.stats in a subprocess, and supposedly, cmd.exe could no longer resolve it on the inherited PATH, so r.coin reported an empty table. Create the sessions with env=os.environ.copy() instead. tgis reads the session from os.environ, so mirror the second session there with monkeypatch, which restores the environment once the module is done. This is what test_project_without_temporal_database in the same file already does. The ultimate fix is for tgis to accept env, which would remove the need for the monkey patch. Additionally, document the rule and the tgis exception in AGENTS.md. The investigation of the CI failure and this patch were done with the assistance of Claude Code. Commit: afa422114ae67aa02259ef382830b612885cec97 https://github.com/OSGeo/grass/commit/afa422114ae67aa02259ef382830b612885cec97 Author: Vaclav Petras Date: 2026-07-16 (Thu, 16 Jul 2026) Changed paths: M .github/workflows/pytest_args_gunittest.txt A lib/vector/rtree/tests/lib_vector_rtree_ctypes_test.py M python/grass/temporal/Makefile A python/grass/temporal/tests/grass_temporal_datetime_math_test.py A python/grass/temporal/tests/grass_temporal_granularity_test.py A python/grass/temporal/tests/grass_temporal_spatial_extent_test.py A python/grass/temporal/tests/grass_temporal_topology_test.py R python/grass/temporal/unit_tests.py Log Message: ----------- tests: Add pytest coverage for the temporal framework and R-tree bindings (#7728) Add executed pytest tests for parts of the temporal framework and the R-tree ctypes bindings that no test in CI covered. The cases build their datasets in memory, so they need neither a temporal database nor a GRASS session. - grass_temporal_datetime_math_test.py: datetime increment by string and adjustment of a datetime to a granularity. - grass_temporal_granularity_test.py: absolute-time granularity of map lists of intervals, time points and a mix of both. - grass_temporal_topology_test.py: the temporal topology builder relations (overlaps, overlapped, follows, precedes, contains, during) and the map list sorting keys. Following TemporalExtent.overlaps, an interval that starts and ends earlier overlaps the later one. - grass_temporal_spatial_extent_test.py: the 2D and 3D spatial extent relations and intersection. - lib_vector_rtree_ctypes_test.py: the 1D to 4D R-tree search through the grass.lib ctypes bindings. These checks previously existed only in grass.temporal.unit_tests, which could not be imported and was not run, and in doctests that CI does not execute. Prepared with the assistance of AI (Claude Code). Commit: 36f3025aebf81700826b98cc65be1006a9db441e https://github.com/OSGeo/grass/commit/36f3025aebf81700826b98cc65be1006a9db441e Author: Anna Petrasova Date: 2026-07-16 (Thu, 16 Jul 2026) Changed paths: M .github/workflows/cmake.yml M CMakeLists.txt M cmake/modules/generate_docs.cmake M display/CMakeLists.txt M doc/CMakeLists.txt A doc/development/CMakeLists.txt M gui/icons/CMakeLists.txt M man/CMakeLists.txt M man/build_manpages.py Log Message: ----------- CMake: Build the MkDocs documentation site (#7719) Make the markdown documentation tree complete enough to build the MkDocs site, and add build-mkdocs and serve-mkdocs targets matching the Autotools ones (both run mkdocs from PATH and are not part of the default build). Copy the site files from man/mkdocs (mkdocs.yml, index and keywords pages, theme overrides, CSS, logo) into the markdown tree. Add an MD_ONLY mode to generate_docs for the web-only guides from doc/ and doc/development/, which have no HTML source and no man page. Exclude those pages from man page generation with a new --exclude option in build_manpages.py, derived from the doc/ directories like WEB_ONLY_MD in man/Makefile. Copy the assets linked from the pages (GUI icons, color tables, barscale and north arrow thumbnails, grass_logo.txt) into the markdown tree alongside their existing html copies. AI assistance (Claude Fable) Commit: 9e9262b9510b59d258aa78f648a08a5c659e635b https://github.com/OSGeo/grass/commit/9e9262b9510b59d258aa78f648a08a5c659e635b Author: Edouard Choini?re <27212526+echoix at users.noreply.github.com> Date: 2026-07-17 (Fri, 17 Jul 2026) Changed paths: M lib/db/dbmi_base/dirent.c Log Message: ----------- MSVC: Improve MSVC support (part 3) (#5514) * define unistd only if unistd.h is not available Co-authored-by: Edouard Choini?re <27212526+echoix at users.noreply.github.com> * fix msvc broken build (works on gcc) Co-authored-by: Edouard Choini?re <27212526+echoix at users.noreply.github.com> * msvc: __attribute__ is gcc only Co-authored-by: Edouard Choini?re <27212526+echoix at users.noreply.github.com> * check for _WIN32 to support msvc and mingw * msvc: undef min max and use math.h for math constants Co-authored-by: Rashad Kanavath * msvc: fix warning POINT2D_C already defined * Remove unneeded comment about GDAL without OGR * Apply suggestions from code review --------- Co-authored-by: Rashad Kanavath Co-authored-by: Anna Petrasova Commit: d141869727a74ecdad11dab665ce7d006e6df2dc https://github.com/OSGeo/grass/commit/d141869727a74ecdad11dab665ce7d006e6df2dc Author: Edouard Choini?re <27212526+echoix at users.noreply.github.com> Date: 2026-07-17 (Fri, 17 Jul 2026) Changed paths: M .github/workflows/macos.yml M .github/workflows/osgeo4w.yml Log Message: ----------- CI: Change codecov test result upload action on macOS & Windows (#7683) * CI: Change codecov test result upload action on macOS & windows The PR #7607 missed to update the action in the macOS and OSGeo4W workflow. This PR makes the change in remaining workflows * ci(macOS): Skip validation for codecov cli test results upload as unavailable in the current state of the runner; We uninstall homebrew in the workflow Commit: c80cbf1f6721ac35724fa5a8a480c5a11c2145eb https://github.com/OSGeo/grass/commit/c80cbf1f6721ac35724fa5a8a480c5a11c2145eb Author: Kaushik Raja <85415462+krcoder123 at users.noreply.github.com> Date: 2026-07-17 (Fri, 17 Jul 2026) Changed paths: M lib/gmath/lu.c M raster/CMakeLists.txt M raster/r.param.scale/Makefile A raster/r.param.scale/benchmark/benchmark_r_param_scale_nprocs.py M raster/r.param.scale/close_down.c M raster/r.param.scale/find_normal.c M raster/r.param.scale/interface.c M raster/r.param.scale/main.c M raster/r.param.scale/open_files.c M raster/r.param.scale/param.h M raster/r.param.scale/process.c M raster/r.param.scale/r.param.scale.md M raster/r.param.scale/tests/r_param_scale_test.py Log Message: ----------- r.param.scale: parallelize with OpenMP (#7440) Instead of giving each thread a strip with the whole map, there's now an outer loop over a band of rows, and the work inside each band is split across the threads. Each thread keeps a small ring buffer of wsize rows and rotates it as it goes, reading a new row from disk per output row. So, a thread's input memory only depends on the window height, not the size of the map. Memory is now limited by the usual memory= option, which sets how many rows are in a band. A single shared output buffer for the band replaces each row having an allocation and row pointer arrays for the whole map. I also reworked find_obs() to precompute the window coordinates once and reuse w*z across the six weighted sums. This does less floating-point work per cell and the output is bit-identical to before. --------- Co-authored-by: Edouard Choini?re <27212526+echoix at users.noreply.github.com> Co-authored-by: Anna Petrasova Co-authored-by: Nicklas Larsson Commit: d6c75ad8e5e4c89cf400818669bbdaf263571ccd https://github.com/OSGeo/grass/commit/d6c75ad8e5e4c89cf400818669bbdaf263571ccd Author: Edouard Choini?re <27212526+echoix at users.noreply.github.com> Date: 2026-07-17 (Fri, 17 Jul 2026) Changed paths: M .editorconfig M .pre-commit-config.yaml M CMakeLists.txt M GRASSConfig.cmake.in M cmake/ctypesgen.cmake M cmake/find_scripts/CMakeLists.txt M cmake/find_scripts/FindCBLAS.cmake M cmake/find_scripts/FindCairo.cmake M cmake/find_scripts/FindFFTW-egpbos.cmake M cmake/find_scripts/FindFFTW-eigen.cmake M cmake/find_scripts/FindFFTW.cmake M cmake/find_scripts/FindGEOS.cmake M cmake/find_scripts/FindLAPACKE.cmake M cmake/find_scripts/FindLibLAS.cmake M cmake/find_scripts/FindLibSVM.cmake M cmake/find_scripts/FindMySQL.cmake M cmake/find_scripts/FindNetCDF.cmake M cmake/find_scripts/FindPCRE.cmake M cmake/find_scripts/FindPROJ.cmake M cmake/find_scripts/FindReadline.cmake M cmake/find_scripts/Findzstd.cmake M cmake/locale_strings.cmake M cmake/modules/CMakeLists.txt M cmake/modules/CheckDependentLibraries.cmake M cmake/modules/Configure.cmake M cmake/modules/DevelUtils.cmake M cmake/modules/GRASSInstallDirs.cmake M cmake/modules/build_addon.cmake M cmake/modules/build_gui_in_subdir.cmake M cmake/modules/build_library_in_subdir.cmake M cmake/modules/build_module.cmake M cmake/modules/build_program.cmake M cmake/modules/build_program_in_subdir.cmake M cmake/modules/build_script_in_subdir.cmake M cmake/modules/check_target.cmake M cmake/modules/copy_python_files_in_subdir.cmake M cmake/modules/generate_docs.cmake M cmake/modules/get_host_arch.cmake M cmake/modules/get_versions.cmake M cmake/modules/linker.cmake M cmake/modules/repo_status.cmake M cmake/modules/set_compiler_flags.cmake A cmake/stubs/build_library_in_subdir_stub.cmake A cmake/stubs/build_program_in_subdir_stub.cmake A cmake/stubs/build_program_stub.cmake M db/CMakeLists.txt M db/drivers/CMakeLists.txt M demolocation/CMakeLists.txt M display/CMakeLists.txt M doc/CMakeLists.txt M doc/development/CMakeLists.txt M general/CMakeLists.txt M general/manage/lister/CMakeLists.txt M gui/CMakeLists.txt M gui/icons/CMakeLists.txt M gui/images/CMakeLists.txt M gui/scripts/CMakeLists.txt M gui/wxpython/CMakeLists.txt M gui/wxpython/docs/CMakeLists.txt M imagery/CMakeLists.txt M imagery/i.ortho.photo/CMakeLists.txt M include/CMakeLists.txt M lib/CMakeLists.txt M lib/db/CMakeLists.txt M lib/db/sqlp/CMakeLists.txt M lib/fonts/CMakeLists.txt M lib/gis/CMakeLists.txt M lib/init/CMakeLists.txt M lib/proj/CMakeLists.txt M lib/rst/CMakeLists.txt M lib/temporal/CMakeLists.txt M lib/vector/CMakeLists.txt M lib/vector/dglib/CMakeLists.txt M lib/vector/diglib/CMakeLists.txt M locale/CMakeLists.txt M man/CMakeLists.txt M misc/CMakeLists.txt M ps/CMakeLists.txt M python/grass/CMakeLists.txt R python/grass/pygrass/CMakeLists.txt M python/libgrass_interface_generator/CMakeLists.txt M raster/CMakeLists.txt M raster/r.colors.out/CMakeLists.txt M raster/r.colors/CMakeLists.txt M raster/r.li/CMakeLists.txt M raster/r.mapcalc/CMakeLists.txt M raster/r.sim/CMakeLists.txt M raster/r.spread/CMakeLists.txt M raster/r.univar/CMakeLists.txt M raster/r.watershed/CMakeLists.txt M raster3d/CMakeLists.txt M raster3d/r3.flow/CMakeLists.txt M scripts/CMakeLists.txt M scripts/g.extension/testsuite/data/sample_modules/r.plus.example/CMakeLists.txt M temporal/CMakeLists.txt M utils/CMakeLists.txt M vector/CMakeLists.txt M vector/v.lrs/CMakeLists.txt Log Message: ----------- Checks: Add Gersemi to format cmake files in pre-commit (#7696) * Checks: Add Gersemi to format cmake files in pre-commit * CMake: Remove file python/grass/pygrass/CMakeLists.txt as unused per issue https://github.com/OSGeo/grass/issues/7686 [Bug] Where are CMake functions `build_pymodule_in_subdir` and `copy_python_file` defined? Fixes #7686 * Define indentation for cmake files in .editorconfig to match gersemi's defaults * checks: Create cmake stubs containing definitions for gersemi-unrecognized functions or macros * cmake: Ignore one duplicated `_test_package` definition in FindLAPACKE.cmake/FindCBLAS.cmake * cmake: Add more gersemi hints to indicate how to treat specific multi-value arguments * cmake: Format all cmake files Commit: c77cf203fb82ce4871590e7b07bacaa3b268ff5e https://github.com/OSGeo/grass/commit/c77cf203fb82ce4871590e7b07bacaa3b268ff5e Author: Anna Petrasova Date: 2026-07-17 (Fri, 17 Jul 2026) Changed paths: M vector/v.proj/main.c A vector/v.proj/tests/v_proj_wind_override_test.py Log Message: ----------- v.proj: Seed region from default window to ignore region override (#7578) When v.proj switches into the source project to read the input vector, it seeded its working region with G_get_window(), which honors WIND_OVERRIDE and GRASS_REGION. WIND_OVERRIDE names a region in the caller's mapset, not in the source project, so the read failed with "Unable to open element file" whenever v.proj ran under a named temporary region (e.g. inside RegionManager, use_temp_region(), or parallel pipelines). Using GRASS_REGION would also be wrong. Read the source project's default window instead. The seed value is overwritten field by field from the input vector's extent immediately afterward, so seeding from the default window is sufficient and does not consult the override. G_unset_window() is dropped since it only existed to defeat G_get_window()'s cache. Adds a regression test that runs v.proj with WIND_OVERRIDE naming a region present only in the target mapset. Commit: cb04122c70d15fa2b397ff93b36bc5f30525b587 https://github.com/OSGeo/grass/commit/cb04122c70d15fa2b397ff93b36bc5f30525b587 Author: Rajveer* Date: 2026-07-17 (Fri, 17 Jul 2026) Changed paths: A raster/r.cross/tests/test_r_cross.py R raster/r.cross/testsuite/test_cross.py Log Message: ----------- r.cross: migrate tests from gunittest to pytest (#7635) * r.cross: migrate tests from gunittest to pytest Replace the gunittest testsuite with a pytest module covering the same behavior: the basic cross product (categories 0..8, no NULLs) and the -z flag case (NULL combinations dropped, categories 0..5, output has NULLs). It uses a tmp_path session fixture with synthetic 3x3 rasters and the grass.tools API. * Overwrite is not needed, use Tools everywhere Co-authored-by: Vaclav Petras --------- Co-authored-by: Vaclav Petras Commit: f778540e31a1ef6b05e5ff2b6efd55e82fa11e11 https://github.com/OSGeo/grass/commit/f778540e31a1ef6b05e5ff2b6efd55e82fa11e11 Author: Christian Braun Date: 2026-07-17 (Fri, 17 Jul 2026) Changed paths: M gui/wxpython/lmgr/layertree.py Log Message: ----------- wxGUI: fix orphaned drag image windows when dragging layers in layer tree on macOS (#7725) Commit: 7b7710694b1d2a250a78a4b0ea94ed7828dcf880 https://github.com/OSGeo/grass/commit/7b7710694b1d2a250a78a4b0ea94ed7828dcf880 Author: Vaclav Petras Date: 2026-07-17 (Fri, 17 Jul 2026) Changed paths: M python/grass/gunittest/runner.py M python/grass/imaging/images2avi.py M python/grass/pydispatch/dispatcher.py M python/grass/pygrass/raster/abstract.py M python/grass/pygrass/vector/geometry.py M python/grass/temporal/core.py M python/grass/tools/session_tools.py Log Message: ----------- docs: Fix reStructuredText markup in Python docstrings (#7741) The Sphinx build of the Python API documentation reports docutils warnings and errors for docstrings with invalid reStructuredText, and the affected docstrings also render badly. Fix the markup without changing the documented content: - grass.pydispatch.dispatcher: mark the two attribute listings as literal blocks, so that their plain-text layout is preserved instead of being misparsed as definition lists and block quotes. - grass.pygrass.raster.abstract: drop the literal block marker in front of the doctest example of Info, so that the example is parsed as a doctest block. The expected output lines are not prefixed with ">>>", which made the quoting of the literal block inconsistent. - grass.pygrass.vector.geometry: turn the parameter descriptions of the Node constructor into an actual field list. - grass.gunittest.runner, grass.pygrass.vector.geometry, grass.tools.session_tools: escape or quote the asterisks so that "**kwargs" is not parsed as the start of inline strong markup. - grass.imaging.images2avi: indent the continuation line of the bg_task field body, so that the field list is not cut short. - grass.temporal.core: indent the content of the warning directive in init(), so that the directive is not empty. This brings the number of warnings and errors reported by the Sphinx build down from 42 to 19. Each fixed docstring is reported twice because the subpackages are currently documented under two names. The fixes were prepared with the help of Claude Code (AI) and verified against the rendered HTML pages. Commit: b6b18bde311b233357040d169ddc40a10f1a961a https://github.com/OSGeo/grass/commit/b6b18bde311b233357040d169ddc40a10f1a961a Author: Anna Petrasova Date: 2026-07-17 (Fri, 17 Jul 2026) Changed paths: M lib/proj/do_proj.c A vector/v.proj/tests/conftest.py A vector/v.proj/tests/v_proj_test.py Log Message: ----------- v.proj: fix reprojection with smax=0 from latlon (#7730) Bug: v.proj with smax=0 (densification disabled) on lines or boundaries with more than one vertex, coming from a lat/lon source project ? only the first vertex was projected correctly, the rest came out as garbage. Commit: 0b25cf0163752bd655dc78422ff5de047d4620ba https://github.com/OSGeo/grass/commit/0b25cf0163752bd655dc78422ff5de047d4620ba Author: Vaclav Petras Date: 2026-07-17 (Fri, 17 Jul 2026) Changed paths: M .gitignore M doc/examples/notebooks/parallelization_tutorial.ipynb M doc/grass_projects.md M doc/python_intro.md M python/grass/docs/Makefile M python/grass/docs/conf.py M python/grass/docs/src/gunittest_testing.rst M python/grass/docs/src/index.rst M python/grass/docs/src/pygrass_gis.rst M python/grass/docs/src/pygrass_index.rst M python/grass/docs/src/pygrass_messages.rst M python/grass/docs/src/pygrass_modules.rst M python/grass/docs/src/pygrass_raster.rst M python/grass/docs/src/pygrass_vector.rst M python/grass/docs/src/script_intro.rst M python/grass/docs/src/temporal_framework.rst Log Message: ----------- docs: Generate libpython API docs only under the grass namespace (#7740) The Sphinx build of the Python library documented every subpackage twice: once under a stripped namespace (pygrass, script, temporal, ...) and once under the full, preferred one (grass.pygrass, grass.script, ...). Keep only the grass.* pages. Drop the seven per-subpackage sphinx-apidoc runs and the sys.path entries in conf.py that made the modules importable under their stripped names, and point the handwritten pages, the theme navigation and the links in doc/ at the grass.* pages and modules. This removes 22 of the 42 Sphinx warnings. All ten "more than one target found for cross-reference" warnings (Table, GrassTestFilesMultiReporter) are gone, since they were caused purely by the duplicate generation, as are the docstring warnings which were reported once per spelling. The three remaining "duplicate object description" warnings (Module, MultiModule, ParallelModuleQueue) are not caused by the stripped namespace: grass.pygrass.modules re-exports these classes, so autodoc documents them both on the package page and on the page of the module defining them. They are left for a separate change. This change was prepared with the assistance of Claude Code. Commit: bcca890878070c434e8cb93433d0c597bbf7e9e9 https://github.com/OSGeo/grass/commit/bcca890878070c434e8cb93433d0c597bbf7e9e9 Author: Edouard Choini?re <27212526+echoix at users.noreply.github.com> Date: 2026-07-17 (Fri, 17 Jul 2026) Changed paths: M gui/wxpython/animation/data.py M gui/wxpython/animation/nviztask.py M gui/wxpython/core/settings.py M gui/wxpython/core/utils.py M gui/wxpython/dbmgr/base.py M gui/wxpython/gmodeler/model.py M gui/wxpython/gui_core/forms.py M gui/wxpython/gui_core/toolbars.py M gui/wxpython/mapdisp/main.py M gui/wxpython/rdigit/controller.py M gui/wxpython/wxgui.py M pyproject.toml M python/grass/gunittest/case.py M python/grass/imaging/images2avi.py M python/grass/pydispatch/dispatcher.py M python/grass/pygrass/raster/category.py M python/grass/pygrass/rpc/base.py M python/grass/pygrass/vector/table.py M python/grass/script/core.py M python/grass/script/task.py M python/grass/script/utils.py M python/grass/script/vector.py M python/grass/semantic_label/reader.py M python/grass/utils/download.py M scripts/r.in.wms/wms_cap_parsers.py Log Message: ----------- style: Fix raise-without-from-inside-except (B904) (#4032) Enable the ruff B904 rule and add explicit exception chaining to raise statements inside except clauses. Most exceptions are chained with "from error" to preserve the original, including where the original is also passed into the message of the new exception, so the detail is both in the message and in the chained traceback; reducing that duplication is left for later. "from None" is used where the original would be noise: where it is an implementation detail of the raising code (for example, IndexError becoming StopIteration) or where the new exception gives a clearer replacement message (for example, an invalid value for a database column). In wxGUI, the original error is passed into the new exception and "from None" is used; that exception is caught immediately and only its message is shown, so no traceback is produced. The change covers wxGUI, grass.script, grass.pygrass, grass.gunittest, grass.imaging, grass.pydispatch, grass.semantic_label, grass.utils, and r.in.wms. Related bug fixes included: * rdigit: "raise ScriptError" raised the class, not an instance. ScriptError requires a message argument, so this raised TypeError instead, which the callers' "except ScriptError" handlers did not catch. A failing r.mapcalc or g.copy resulted in a traceback instead of showing an error message. The message of the module error is now passed to ScriptError. * wxGUI toolbars: Remove an unreachable return statement after a raise. * wxGUI utils: Remove a dead try-except in __ll_parts which could not be reached and only re-raised an empty ValueError. Commit: 740266b459adf86f4e5154e10394f7702f402d36 https://github.com/OSGeo/grass/commit/740266b459adf86f4e5154e10394f7702f402d36 Author: Anna Petrasova Date: 2026-07-17 (Fri, 17 Jul 2026) Changed paths: M scripts/g.extension/g.extension.py Log Message: ----------- g.extension: Skip official repo query when installing from other sources (#7746) Updating metadata after install consulted the official grass-addons repository (git ls-remote and a clone) to identify multi-addon overview pages, even when installing from a local directory, so installs failed without internet access. Commit: 4c0c6b7f174d6b786a5dd07f843e2ca18c943e20 https://github.com/OSGeo/grass/commit/4c0c6b7f174d6b786a5dd07f843e2ca18c943e20 Author: Edouard Choini?re <27212526+echoix at users.noreply.github.com> Date: 2026-07-17 (Fri, 17 Jul 2026) Changed paths: M .github/workflows/create_release_draft.yml Log Message: ----------- CI: Replace softprops/action-gh-release with `gh release create` (#7745) * CI: Replace softprops/action-gh-release with `gh release create` gh cli is already on the runner. This also solves an issue surfaced by a new version of zizmor, noting that using actions like these when another tool already doing the same functionality is increasing the attack surface uselessly. * style: Quote shell variables * CI: `gh release create` allows using `--prerelease=true` and `--prerelease=false` as tested locally Commit: f53f2b4f4887cfe90c16297d98c12ec8a98cb619 https://github.com/OSGeo/grass/commit/f53f2b4f4887cfe90c16297d98c12ec8a98cb619 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-07-17 (Fri, 17 Jul 2026) Changed paths: M .pre-commit-config.yaml Log Message: ----------- CI(deps): Update pre-commit hook zizmorcore/zizmor-pre-commit to v1.27.0 (main) (#7253) CI(deps): Update pre-commit hook zizmorcore/zizmor-pre-commit to v1.27.0 Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Commit: b1701e510f71f2bffb0e4773d1430df9868a5883 https://github.com/OSGeo/grass/commit/b1701e510f71f2bffb0e4773d1430df9868a5883 Author: Stefan Blumentrath Date: 2026-07-17 (Fri, 17 Jul 2026) Changed paths: M python/grass/temporal/stds_import.py M temporal/t.rast.import/t.rast.import.py R temporal/t.rast.import/test.t.rast.import.relative.sh R temporal/t.rast.import/test.t.rast.import.relative.with.semantic.label.sh R temporal/t.rast.import/test.t.rast.import.sh R temporal/t.rast.import/test.t.rast.import_locations.sh A temporal/t.rast.import/tests/conftest.py A temporal/t.rast.import/tests/data/precip_2000.tar.bzip2 A temporal/t.rast.import/tests/t_rast_import_test.py R temporal/t.rast.import/testsuite/data/precip_2000.tar.bzip2 R temporal/t.rast.import/testsuite/test_temporal_rast_import.py A temporal/t.vect.import/tests/conftest.py A temporal/t.vect.import/tests/t_vect_import_test.py R temporal/t.vect.import/testsuite/test.t.vect.import.sh Log Message: ----------- t.rast.import: use platform-indendent tempdir default (#7742) * use .tmp in mapset as default tempdir (gs.tempdir()) * replace shell script tests with pytest * style: Address issues in python/grass/temporal/stds_import.py --------- Co-authored-by: Edouard Choini?re <27212526+echoix at users.noreply.github.com> Commit: c4d0dfd1be3a65480bfe8919856e48e313cc4c46 https://github.com/OSGeo/grass/commit/c4d0dfd1be3a65480bfe8919856e48e313cc4c46 Author: Linda Karlovska <49241681+lindakarlovska at users.noreply.github.com> Date: 2026-07-17 (Fri, 17 Jul 2026) Changed paths: M python/grass/script/raster.py M python/grass/script/tests/grass_script_raster_region_test.py Log Message: ----------- grass.script: RegionManager/RegionManagerEnv: Add support for storing current region under a persistent name (#7599) * new save() method that stores the current region under a persistent name, allowing it to be reused after the context exits. Co-authored-by: Anna Petrasova Commit: e37a2aaa37e7afa281b4e8cb50be8e48b2184f3f https://github.com/OSGeo/grass/commit/e37a2aaa37e7afa281b4e8cb50be8e48b2184f3f Author: SAKET KUMAR MALL <72020337+saket0187 at users.noreply.github.com> Date: 2026-07-18 (Sat, 18 Jul 2026) Changed paths: M gui/wxpython/core/watchdog.py Log Message: ----------- wxGUI: Share watchdog Observer to fix FSEvents RuntimeError (#7677) Commit: 9912224bc88d2f1125fb525bfbe39a5bb90283f5 https://github.com/OSGeo/grass/commit/9912224bc88d2f1125fb525bfbe39a5bb90283f5 Author: Edouard Choini?re <27212526+echoix at users.noreply.github.com> Date: 2026-07-18 (Sat, 18 Jul 2026) Changed paths: M gui/wxpython/lmgr/layertree.py Log Message: ----------- gui: Remove shadowing of `type()` and typo in class attribute (#7753) AI autofixes, completed and vetted by me afterwards. - Typo `self.centreFromsOnParent` -> `self.centreFormsOnParent` (+ extra missed instances were renamed) - Shadowing of built in function type() -> Rename local variables inside file These were made during the week but were not filed in a PR yet. Co-authored-by: Copilot Autofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com> * Additionnal "centreFromsOnParent" -> "centreFormsOnParent" * More changes to inner variable shadowing "type()" function * Revert some uncertain changes * Apply suggestions from code review Co-authored-by: Edouard Choini?re <27212526+echoix at users.noreply.github.com> * Update gui/wxpython/lmgr/layertree.py --------- Co-authored-by: Copilot Autofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com> Commit: 8d7d3316c40fe259fa66a959ade7bc3afd6a4235 https://github.com/OSGeo/grass/commit/8d7d3316c40fe259fa66a959ade7bc3afd6a4235 Author: Rajveer* Date: 2026-07-18 (Sat, 18 Jul 2026) Changed paths: M scripts/i.spectral/i.spectral.py A scripts/i.spectral/tests/i_spectral_test.py Log Message: ----------- i.spectral: fix text output to write band values (#7488) write2textf iterated with 'for row in enumerate(what)', binding row to the (index, row) tuple, so the -t text output wrote a Python tuple repr (a redundant index plus the easting/northing/label columns) instead of the band values. Unpack the index and write row[3:], matching draw_gnuplot and draw_linegraph, via writelines. Add a regression test for the -t output. Commit: 5394d8e206745b2d9530d9c4bd9940c657cac628 https://github.com/OSGeo/grass/commit/5394d8e206745b2d9530d9c4bd9940c657cac628 Author: Vaclav Petras Date: 2026-07-18 (Sat, 18 Jul 2026) Changed paths: M .github/workflows/documentation.yml Log Message: ----------- CI: Fix inverted condition disabling ccache and mold in doc builds (#7755) Co-authored-by: Edouard Choini?re <27212526+echoix at users.noreply.github.com> Commit: 4f5ca7b89ad57f0b7260f0f223026e757e3e8e91 https://github.com/OSGeo/grass/commit/4f5ca7b89ad57f0b7260f0f223026e757e3e8e91 Author: Paulo van Breugel Date: 2026-07-18 (Sat, 18 Jul 2026) Changed paths: M gui/wxpython/core/gconsole.py Log Message: ----------- gui: fix exception in gconsole.py (#6903) Commit: f4e55d1415dcf5b659c40de91633df14437a7273 https://github.com/OSGeo/grass/commit/f4e55d1415dcf5b659c40de91633df14437a7273 Author: OSGeo Weblate <97247866+osgeoweblate at users.noreply.github.com> Date: 2026-07-18 (Sat, 18 Jul 2026) Changed paths: M locale/po/grasslibs_fr.po M locale/po/grassmods_fr.po M locale/po/grasswxpy_fr.po Log Message: ----------- Translations update from OSGeo Weblate (#7758) Translated using Weblate (French) Currently translated at 36.7% (3707 of 10100 strings) Translated using Weblate (French) Currently translated at 98.2% (1821 of 1854 strings) Translated using Weblate (French) Currently translated at 36.6% (3706 of 10100 strings) Translated using Weblate (French) Currently translated at 96.4% (3197 of 3314 strings) Translated using Weblate (French) Currently translated at 98.2% (1821 of 1854 strings) Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grasslibs/fr/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassmods/fr/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grasswxpy/fr/ Translation: GRASS/grasslibs Translation: GRASS/grassmods Translation: GRASS/grasswxpy Co-authored-by: Weblate Co-authored-by: Edouard Choiniere Commit: 0e625c9cdf1265cdb4c82f1b6b077af1f739606f https://github.com/OSGeo/grass/commit/0e625c9cdf1265cdb4c82f1b6b077af1f739606f Author: Edouard Choini?re <27212526+echoix at users.noreply.github.com> Date: 2026-07-18 (Sat, 18 Jul 2026) Changed paths: M python/grass/gunittest/reporters.py Log Message: ----------- grass.gunittest: Fix html reporter output (#7754) * Apply suggested fix to python/grass/gunittest/reporters.py from Copilot Autofix Co-authored-by: Copilot Autofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com> * Apply suggested fix to python/grass/gunittest/reporters.py from Copilot Autofix Co-authored-by: Copilot Autofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com> --------- Co-authored-by: Copilot Autofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com> Commit: 608efca1852fda54fae071a7a740de24f340e693 https://github.com/OSGeo/grass/commit/608efca1852fda54fae071a7a740de24f340e693 Author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Date: 2026-07-19 (Sun, 19 Jul 2026) Changed paths: M locale/templates/grasslibs.pot M locale/templates/grassmods.pot M locale/templates/grasswxpy.pot Log Message: ----------- locale: Update translation files (114) (#7761) locale: Update translation files Co-authored-by: echoix <27212526+echoix at users.noreply.github.com> Commit: a12020a5025cd59437b5ea829a8330691654323e https://github.com/OSGeo/grass/commit/a12020a5025cd59437b5ea829a8330691654323e Author: Corey White Date: 2026-07-23 (Thu, 23 Jul 2026) Changed paths: M .github/workflows/documentation.yml Log Message: ----------- CI: Increase documentation workflow artifact to from 3 to 15 days (#7767) Commit: 0c9de213ecdb68b41d522c2bbb285736c3aad502 https://github.com/OSGeo/grass/commit/0c9de213ecdb68b41d522c2bbb285736c3aad502 Author: Markus Neteler Date: 2026-07-24 (Fri, 24 Jul 2026) Changed paths: M docker/testdata/test_grass_session.py Log Message: ----------- docker: update grass-session test to use tools (#7768) Commit: 651992d3fa85bbd36a6ca5e7f08515a4086a37ef https://github.com/OSGeo/grass/commit/651992d3fa85bbd36a6ca5e7f08515a4086a37ef Author: OSGeo Weblate <97247866+osgeoweblate at users.noreply.github.com> Date: 2026-07-24 (Fri, 24 Jul 2026) Changed paths: M locale/po/grasslibs_ar.po M locale/po/grasslibs_bn.po M locale/po/grasslibs_cs.po M locale/po/grasslibs_de.po M locale/po/grasslibs_el.po M locale/po/grasslibs_es.po M locale/po/grasslibs_fi.po M locale/po/grasslibs_fr.po M locale/po/grasslibs_hi.po M locale/po/grasslibs_hu.po M locale/po/grasslibs_id_ID.po M locale/po/grasslibs_it.po M locale/po/grasslibs_ja.po M locale/po/grasslibs_ko.po M locale/po/grasslibs_lv.po M locale/po/grasslibs_ml.po M locale/po/grasslibs_pl.po M locale/po/grasslibs_pt.po M locale/po/grasslibs_pt_BR.po M locale/po/grasslibs_ro.po M locale/po/grasslibs_ru.po M locale/po/grasslibs_si.po M locale/po/grasslibs_sl.po M locale/po/grasslibs_sv.po M locale/po/grasslibs_ta.po M locale/po/grasslibs_th.po M locale/po/grasslibs_tr.po M locale/po/grasslibs_uk.po M locale/po/grasslibs_vi.po M locale/po/grasslibs_zh.po M locale/po/grasslibs_zh_Hant.po M locale/po/grassmods_ar.po M locale/po/grassmods_bn.po M locale/po/grassmods_cs.po M locale/po/grassmods_de.po M locale/po/grassmods_el.po M locale/po/grassmods_es.po M locale/po/grassmods_fi.po M locale/po/grassmods_fr.po M locale/po/grassmods_hi.po M locale/po/grassmods_hu.po M locale/po/grassmods_id_ID.po M locale/po/grassmods_it.po M locale/po/grassmods_ja.po M locale/po/grassmods_ko.po M locale/po/grassmods_lv.po M locale/po/grassmods_ml.po M locale/po/grassmods_pl.po M locale/po/grassmods_pt.po M locale/po/grassmods_pt_BR.po M locale/po/grassmods_ro.po M locale/po/grassmods_ru.po M locale/po/grassmods_si.po M locale/po/grassmods_sl.po M locale/po/grassmods_sv.po M locale/po/grassmods_ta.po M locale/po/grassmods_th.po M locale/po/grassmods_tr.po M locale/po/grassmods_uk.po M locale/po/grassmods_vi.po M locale/po/grassmods_zh.po M locale/po/grassmods_zh_Hant.po M locale/po/grasswxpy_ar.po M locale/po/grasswxpy_bn.po M locale/po/grasswxpy_cs.po M locale/po/grasswxpy_de.po M locale/po/grasswxpy_el.po M locale/po/grasswxpy_es.po M locale/po/grasswxpy_fi.po M locale/po/grasswxpy_fr.po M locale/po/grasswxpy_hi.po M locale/po/grasswxpy_hu.po M locale/po/grasswxpy_id_ID.po M locale/po/grasswxpy_it.po M locale/po/grasswxpy_ja.po M locale/po/grasswxpy_ko.po M locale/po/grasswxpy_lv.po M locale/po/grasswxpy_ml.po M locale/po/grasswxpy_pl.po M locale/po/grasswxpy_pt.po M locale/po/grasswxpy_pt_BR.po M locale/po/grasswxpy_ro.po M locale/po/grasswxpy_ru.po M locale/po/grasswxpy_si.po M locale/po/grasswxpy_sl.po M locale/po/grasswxpy_sv.po M locale/po/grasswxpy_ta.po M locale/po/grasswxpy_th.po M locale/po/grasswxpy_tr.po M locale/po/grasswxpy_uk.po M locale/po/grasswxpy_vi.po M locale/po/grasswxpy_zh.po M locale/po/grasswxpy_zh_Hant.po Log Message: ----------- Translations update from OSGeo Weblate (#7770) Commit: 67a183c537009b0e4ec03e899d7162fa2e5b0406 https://github.com/OSGeo/grass/commit/67a183c537009b0e4ec03e899d7162fa2e5b0406 Author: Corey White Date: 2026-07-24 (Fri, 24 Jul 2026) Changed paths: M .github/workflows/documentation.yml M python/grass/docs/conf.py M utils/merge_sitemaps.py A utils/test_merge_sitemaps.py Log Message: ----------- docs: Fix libpython Sphinx canonical and sitemap version (#5935) (#7760) * docs: Fix libpython canonical and sitemap URLs (#5935) conf.py set html_baseurl twice. The second assignment (the bare domain root, added for sphinx-sitemap) overwrote the canonical base, so every libpython page emitted a bare-root canonical, and the sitemap scheme injected the full dev version (grass8.6.0dev), producing 404 URLs. Use a single html_baseurl built from the short numbered prefix (https://grass.osgeo.org/grass/manuals/libpython/) and set the sitemap scheme to "{link}", so canonical and sitemap URLs are identical and resolve to the published grass86 tree. Make merge_sitemaps.py preserve each source sitemap's URLs by default (the --version rewrite is now opt-in) and drop the --version override in documentation.yml, so the merged manuals sitemap keeps grass-stable manuals and grass86 libpython URLs. Add a unit test for check_url_version. Drafted with AI assistance. * docs: Use grass-stable canonical for libpython to match core manuals Per review feedback (OSGeo/grass#7760): keep the stable manuals tree as the absolute canonical base instead of the numbered grassMAJORMINOR tree. This matches the MkDocs core manuals (site_url = .../grass-stable/manuals/) so the merged sitemap is uniformly grass-stable, and leaves dev-URL rewriting to CI. Commit: 0163d24d64b3421409a4abd254da0361522c593c https://github.com/OSGeo/grass/commit/0163d24d64b3421409a4abd254da0361522c593c Author: Corey White Date: 2026-07-25 (Sat, 25 Jul 2026) Changed paths: M .github/workflows/documentation.yml M man/Makefile M man/mkdocs/mkdocs.yml A man/mkdocs/overrides/main.html M python/grass/docs/_templates/layout.html.template M python/grass/docs/conf.py Log Message: ----------- docs: noindex development manuals so they defer to grass-stable (#7772) * docs: noindex development manuals so they defer to grass-stable Dev builds (VERSION micro ends in 'dev') publish under grass-devel/grass86 with pages near-identical to grass-stable. They all canonicalize to grass-stable (see #5935), but dev-only pages have no stable equivalent to canonicalize to, so canonical alone can leave them indexed. Emit 'noindex, follow' on dev builds for both generators: - MkDocs: new overrides/main.html gated on extra.noindex, fed by GRASS_DOCS_NOINDEX which documentation.yml sets to true when MICRO ends in 'dev'. - Sphinx: conf.py sets grass_noindex from the version and passes it via html_context to layout.html.template. Stable and release builds leave the flag off and stay indexable. * docs: fix MkDocs noindex flag on dev builds mkdocs !ENV coerces the value to a boolean, so the == "true" test never matched. * man: install mkdocs overrides/main.html into the docs dir The build copies mkdocs files individually, so the new override was missing from MKDOCS_DIR and dev pages got no noindex. Commit: 61a01ad9c6c1583d64743ed0405513c4e82fce05 https://github.com/OSGeo/grass/commit/61a01ad9c6c1583d64743ed0405513c4e82fce05 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-07-25 (Sat, 25 Jul 2026) Changed paths: M man/mkdocs/requirements.txt Log Message: ----------- CI(deps): Update dependency pymdown-extensions to v11 [SECURITY] (main) (#7774) CI(deps): Update dependency pymdown-extensions to v11 [SECURITY] Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Commit: 7050369433b0a954f3a1420b24517d641f462a05 https://github.com/OSGeo/grass/commit/7050369433b0a954f3a1420b24517d641f462a05 Author: Kaushik Raja <85415462+krcoder123 at users.noreply.github.com> Date: 2026-07-25 (Sat, 25 Jul 2026) Changed paths: M lib/proj/do_proj.c Log Message: ----------- lib/proj: fix data race on METERS_in/METERS_out in coordinate transform functions (#7764) lib/proj: make METERS_in and METERS_out local to fix a data race The file-scope variables METERS_in and METERS_out were written on every call to GPJ_transform, GPJ_transform_array, pj_do_proj, and pj_do_transform. When GPJ_transform is called from multiple threads, ThreadSanitizer reports data races on both variables even when each thread uses its own cloned PJ object. Each function writes both variables before reading them, so they carry no state between calls. This change makes them locals of the four functions and removes the file-scope declaration. Output is unchanged. Commit: f040304d608f984188b1b564e1389b8aa8ed93ef https://github.com/OSGeo/grass/commit/f040304d608f984188b1b564e1389b8aa8ed93ef Author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Date: 2026-07-25 (Sat, 25 Jul 2026) Changed paths: M locale/templates/grasslibs.pot M locale/templates/grassmods.pot M locale/templates/grasswxpy.pot Log Message: ----------- locale: Update translation files (116) (#7779) locale: Update translation files Co-authored-by: echoix <27212526+echoix at users.noreply.github.com> Commit: 8ff9ef6a73e5034a4311688cf58293065e1a2592 https://github.com/OSGeo/grass/commit/8ff9ef6a73e5034a4311688cf58293065e1a2592 Author: Corey White Date: 2026-07-26 (Sun, 26 Jul 2026) Changed paths: M .github/workflows/documentation.yml Log Message: ----------- CI: drop redundant libpython sitemap after the manuals merge (#7781) CI: drop libpython sitemap after merging into the manuals sitemap Its URLs are already in the merged sitemap; remove it so each URL is listed once. Commit: 94f43aea91a3cfcb180a8807a7a1bf5f8fa7bec8 https://github.com/OSGeo/grass/commit/94f43aea91a3cfcb180a8807a7a1bf5f8fa7bec8 Author: Corey White Date: 2026-07-27 (Mon, 27 Jul 2026) Changed paths: M .github/workflows/documentation.yml M python/grass/docs/conf.py Log Message: ----------- docs: fix logic for applying noindex to manuals (#7782) Commit: acb695ecf50887eaeb8f4f5d2cf57fea0f801ad8 https://github.com/OSGeo/grass/commit/acb695ecf50887eaeb8f4f5d2cf57fea0f801ad8 Author: Kaushik Raja <85415462+krcoder123 at users.noreply.github.com> Date: 2026-07-28 (Tue, 28 Jul 2026) Changed paths: M raster/r.geomorphon/main.c Log Message: ----------- r.geomorphon: check region rows against search radius before reading (#7773) When the region has fewer rows than the search radius needs, the module fails without saying why. It just gives a confusing library message about the symptom, not the cause. This small PR adds an early check with an error message that tells the user their search value needs more rows than the region has, and what the minimum is. Commit: a3f62a394dc496936979cfd244d8df013ebd3dbe https://github.com/OSGeo/grass/commit/a3f62a394dc496936979cfd244d8df013ebd3dbe Author: Corey White Date: 2026-07-29 (Wed, 29 Jul 2026) Changed paths: M python/grass/docs/conf.py Log Message: ----------- docs: add lastmod to libpython sitemap entries (#7786) * docs: add lastmod to libpython sitemap entries Set sitemap_show_lastmod so sphinx-sitemap emits from git dates. * docs: drop viewcode source pages and py-modindex from the sitemap Low search value and no datable source; they stay reachable via the API pages. * Added hook to give apidocs accurate per-module dates * Bandit issue 'Starting a process with a partial executable path #1131' Commit: f92ca42ed5b8e5e67f3c66c71a21bb240da4e229 https://github.com/OSGeo/grass/commit/f92ca42ed5b8e5e67f3c66c71a21bb240da4e229 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-01 (Sat, 01 Aug 2026) Changed paths: M .github/workflows/additional_checks.yml M .github/workflows/cmake.yml M .github/workflows/codeql-analysis.yml M .github/workflows/coverity.yml M .github/workflows/create_release_draft.yml M .github/workflows/docker.yml M .github/workflows/documentation.yml M .github/workflows/gcc.yml M .github/workflows/macos.yml M .github/workflows/macos_distribute_app.yml M .github/workflows/osgeo4w.yml M .github/workflows/periodic_update.yml M .github/workflows/pytest.yml M .github/workflows/python-code-quality.yml M .github/workflows/super-linter.yml M .github/workflows/test-nix.yml M .github/workflows/titles.yml M .github/workflows/ubuntu.yml Log Message: ----------- CI(deps): Update actions/checkout action to v7.0.1 (main) (#7794) CI(deps): Update actions/checkout action to v7.0.1 Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Commit: 25eb6cf43f26bf6ffa50d6e59cc75bcce9416c30 https://github.com/OSGeo/grass/commit/25eb6cf43f26bf6ffa50d6e59cc75bcce9416c30 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-01 (Sat, 01 Aug 2026) Changed paths: M Dockerfile M docker/ubuntu/Dockerfile Log Message: ----------- CI(deps): Update ubuntu:24.04 Docker digest to 4fbb8e6 (main) (#7793) CI(deps): Update ubuntu:24.04 Docker digest to 4fbb8e6 Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Commit: 4a165a59bed66d3a9510eb45f5b1dd5bbda916f0 https://github.com/OSGeo/grass/commit/4a165a59bed66d3a9510eb45f5b1dd5bbda916f0 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-01 (Sat, 01 Aug 2026) Changed paths: M Dockerfile M docker/ubuntu/Dockerfile Log Message: ----------- CI(deps): Update dependency OSGeo/gdal to v3.13.2 (main) (#7796) Commit: 365d9acf6e904ea0f639f717972c2b1244d8f79f https://github.com/OSGeo/grass/commit/365d9acf6e904ea0f639f717972c2b1244d8f79f Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-01 (Sat, 01 Aug 2026) Changed paths: M man/mkdocs/requirements.txt Log Message: ----------- CI(deps): Update dependency mkdocs-material to v9.7.7 (main) (#7795) Commit: b152bfd74edc406e9d36c5426130efa4b97b672e https://github.com/OSGeo/grass/commit/b152bfd74edc406e9d36c5426130efa4b97b672e Author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Date: 2026-08-01 (Sat, 01 Aug 2026) Changed paths: M locale/templates/grasslibs.pot M locale/templates/grassmods.pot M locale/templates/grasswxpy.pot Log Message: ----------- locale: Update translation files (117) (#7797) Commit: 90b1efabec0276be79ef251e84a0966da9be07b5 https://github.com/OSGeo/grass/commit/90b1efabec0276be79ef251e84a0966da9be07b5 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-01 (Sat, 01 Aug 2026) Changed paths: M docker/debian/Dockerfile Log Message: ----------- CI(deps): Update debian Docker tag to v13.6 (main) (#7800) Commit: 45e081e1806da56148db74c6eabeda25ed41c732 https://github.com/OSGeo/grass/commit/45e081e1806da56148db74c6eabeda25ed41c732 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-01 (Sat, 01 Aug 2026) Changed paths: M .github/workflows/additional_checks.yml M .github/workflows/codeql-analysis.yml M .github/workflows/create_release_draft.yml M .github/workflows/documentation.yml M .github/workflows/pytest.yml M .github/workflows/python-code-quality.yml Log Message: ----------- CI(deps): Update actions/setup-python action to v7 (main) (#7801) Commit: 28e384229dc2527a7ea4b04c78d4004ef0401388 https://github.com/OSGeo/grass/commit/28e384229dc2527a7ea4b04c78d4004ef0401388 Author: Vinay Kumar Chopra <147031659+HUN-sp at users.noreply.github.com> Date: 2026-08-03 (Mon, 03 Aug 2026) Changed paths: M raster/r.resamp.stats/main.c Log Message: ----------- r.resamp.stats: Fix quantile option being truncated to an integer (#7791) The quantile variable is a double, but its value was parsed with atoi, so any quantile below 1.0 became 0 and method=quantile returned the minimum regardless of the requested quantile. Use atof, as r.neighbors, r.series and r3.neighbors already do for the same option. Commit: 93544721516395642d9643aa928dc057f729c458 https://github.com/OSGeo/grass/commit/93544721516395642d9643aa928dc057f729c458 Author: Vinay Kumar Chopra <147031659+HUN-sp at users.noreply.github.com> Date: 2026-08-04 (Tue, 04 Aug 2026) Changed paths: M raster/CMakeLists.txt M raster/r.resamp.stats/Makefile A raster/r.resamp.stats/benchmark/benchmark_r_resamp_stats_nprocs.py M raster/r.resamp.stats/main.c M raster/r.resamp.stats/r.resamp.stats.html M raster/r.resamp.stats/r.resamp.stats.md A raster/r.resamp.stats/testsuite/test_r_resamp_stats.py Log Message: ----------- r.resamp.stats: OpenMP parallelization with memory chunking (#7044) Co-authored-by: Edouard Choini?re <27212526+echoix at users.noreply.github.com> Co-authored-by: Anna Petrasova Co-authored-by: vinaykumarchopra Commit: 4229ab82273b42619c3ad5cb9c16f44b3954013b https://github.com/OSGeo/grass/commit/4229ab82273b42619c3ad5cb9c16f44b3954013b Author: Anna Petrasova Date: 2026-08-06 (Thu, 06 Aug 2026) Changed paths: M CONTRIBUTING.md A doc/development/building_with_cmake.md M man/mkdocs/docs/development_intro.md Log Message: ----------- doc: cmake compilation guide (#7744) Commit: d1f10cec609f4c8aa0e12edc3930f66148a0ab49 https://github.com/OSGeo/grass/commit/d1f10cec609f4c8aa0e12edc3930f66148a0ab49 Author: Jal Patel <102137104+jalpatel11 at users.noreply.github.com> Date: 2026-08-06 (Thu, 06 Aug 2026) Changed paths: A raster/r.timestamp/tests/conftest.py A raster/r.timestamp/tests/r_timestamp_test.py Log Message: ----------- r.timestamp: Add pytest test suite (#7802) Commit: 0850a40412c109476e3551dd90a17c99e45908ff https://github.com/OSGeo/grass/commit/0850a40412c109476e3551dd90a17c99e45908ff Author: Markus Metz <33666869+metzm at users.noreply.github.com> Date: 2026-08-07 (Fri, 07 Aug 2026) Changed paths: M scripts/r.reclass.area/r.reclass.area.html M scripts/r.reclass.area/r.reclass.area.md M scripts/r.reclass.area/r.reclass.area.py Log Message: ----------- r.reclass.area: preserve backwards compatibility (#7806) * r.reclass.area: preserve backwards compatibility * update manual for the lower option * Apply suggestions from code review Co-authored-by: Stefan Blumentrath --------- Co-authored-by: Stefan Blumentrath Commit: ba1d7b7f733e2c2c13694668f87895187d1c198a https://github.com/OSGeo/grass/commit/ba1d7b7f733e2c2c13694668f87895187d1c198a Author: Jal Patel <102137104+jalpatel11 at users.noreply.github.com> Date: 2026-08-07 (Fri, 07 Aug 2026) Changed paths: A general/g.gisenv/tests/conftest.py A general/g.gisenv/tests/g_gisenv_test.py Log Message: ----------- g.gisenv: Add pytest test suite (#7803) Commit: 89b771c2d0dee90820868316d5a14864d3605793 https://github.com/OSGeo/grass/commit/89b771c2d0dee90820868316d5a14864d3605793 Author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Date: 2026-08-08 (Sat, 08 Aug 2026) Changed paths: M locale/templates/grasslibs.pot M locale/templates/grassmods.pot M locale/templates/grasswxpy.pot Log Message: ----------- locale: Update translation files (119) (#7813) locale: Update translation files Co-authored-by: echoix <27212526+echoix at users.noreply.github.com> Commit: ff8f81ff9c4e06860da2c8add8f9f3e4a84a7a9f https://github.com/OSGeo/grass/commit/ff8f81ff9c4e06860da2c8add8f9f3e4a84a7a9f Author: Kaushik Raja <85415462+krcoder123 at users.noreply.github.com> Date: 2026-08-09 (Sun, 09 Aug 2026) Changed paths: A raster/r.geomorphon/tests/conftest.py A raster/r.geomorphon/tests/r_geomorphon_test.py R raster/r.geomorphon/testsuite/test_r_geom.py Log Message: ----------- r.geomorphon: replace testsuite with pytest reference (#7785) Commit: 00f13d7633bb4cb00ab75c2d53557d6dfbd27b49 https://github.com/OSGeo/grass/commit/00f13d7633bb4cb00ab75c2d53557d6dfbd27b49 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-09 (Sun, 09 Aug 2026) Changed paths: M man/mkdocs/requirements.txt Log Message: ----------- CI(deps): Update dependency pymdown-extensions to v11.0.1 [SECURITY] (main) (#7814) Commit: 79d56d91a68f98f1d00e58a7b856c60bfb5d2cf4 https://github.com/OSGeo/grass/commit/79d56d91a68f98f1d00e58a7b856c60bfb5d2cf4 Author: OSGeo Weblate <97247866+osgeoweblate at users.noreply.github.com> Date: 2026-08-15 (Sat, 15 Aug 2026) Changed paths: M locale/po/grasslibs_ar.po M locale/po/grasslibs_bn.po M locale/po/grasslibs_cs.po M locale/po/grasslibs_de.po M locale/po/grasslibs_el.po M locale/po/grasslibs_es.po M locale/po/grasslibs_fi.po M locale/po/grasslibs_fr.po M locale/po/grasslibs_hi.po M locale/po/grasslibs_hu.po M locale/po/grasslibs_id_ID.po M locale/po/grasslibs_it.po M locale/po/grasslibs_ja.po M locale/po/grasslibs_ko.po M locale/po/grasslibs_lv.po M locale/po/grasslibs_ml.po M locale/po/grasslibs_pl.po M locale/po/grasslibs_pt.po M locale/po/grasslibs_pt_BR.po M locale/po/grasslibs_ro.po M locale/po/grasslibs_ru.po M locale/po/grasslibs_si.po M locale/po/grasslibs_sl.po M locale/po/grasslibs_sv.po M locale/po/grasslibs_ta.po M locale/po/grasslibs_th.po M locale/po/grasslibs_tr.po M locale/po/grasslibs_uk.po M locale/po/grasslibs_vi.po M locale/po/grasslibs_zh.po M locale/po/grasslibs_zh_Hant.po M locale/po/grassmods_ar.po M locale/po/grassmods_bn.po M locale/po/grassmods_cs.po M locale/po/grassmods_de.po M locale/po/grassmods_el.po M locale/po/grassmods_es.po M locale/po/grassmods_fi.po M locale/po/grassmods_fr.po M locale/po/grassmods_hi.po M locale/po/grassmods_hu.po M locale/po/grassmods_id_ID.po M locale/po/grassmods_it.po M locale/po/grassmods_ja.po M locale/po/grassmods_ko.po M locale/po/grassmods_lv.po M locale/po/grassmods_ml.po M locale/po/grassmods_pl.po M locale/po/grassmods_pt.po M locale/po/grassmods_pt_BR.po M locale/po/grassmods_ro.po M locale/po/grassmods_ru.po M locale/po/grassmods_si.po M locale/po/grassmods_sl.po M locale/po/grassmods_sv.po M locale/po/grassmods_ta.po M locale/po/grassmods_th.po M locale/po/grassmods_tr.po M locale/po/grassmods_uk.po M locale/po/grassmods_vi.po M locale/po/grassmods_zh.po M locale/po/grassmods_zh_Hant.po M locale/po/grasswxpy_ar.po M locale/po/grasswxpy_bn.po M locale/po/grasswxpy_cs.po M locale/po/grasswxpy_de.po M locale/po/grasswxpy_el.po M locale/po/grasswxpy_es.po M locale/po/grasswxpy_fi.po M locale/po/grasswxpy_fr.po M locale/po/grasswxpy_hi.po M locale/po/grasswxpy_hu.po M locale/po/grasswxpy_id_ID.po M locale/po/grasswxpy_it.po M locale/po/grasswxpy_ja.po M locale/po/grasswxpy_ko.po M locale/po/grasswxpy_lv.po M locale/po/grasswxpy_ml.po M locale/po/grasswxpy_pl.po M locale/po/grasswxpy_pt.po M locale/po/grasswxpy_pt_BR.po M locale/po/grasswxpy_ro.po M locale/po/grasswxpy_ru.po M locale/po/grasswxpy_si.po M locale/po/grasswxpy_sl.po M locale/po/grasswxpy_sv.po M locale/po/grasswxpy_ta.po M locale/po/grasswxpy_th.po M locale/po/grasswxpy_tr.po M locale/po/grasswxpy_uk.po M locale/po/grasswxpy_vi.po M locale/po/grasswxpy_zh.po M locale/po/grasswxpy_zh_Hant.po M locale/tbx/grassglossary_ar.tbx M locale/tbx/grassglossary_bn.tbx M locale/tbx/grassglossary_cs.tbx M locale/tbx/grassglossary_de.tbx M locale/tbx/grassglossary_el.tbx M locale/tbx/grassglossary_es.tbx M locale/tbx/grassglossary_fi.tbx M locale/tbx/grassglossary_fr.tbx M locale/tbx/grassglossary_hi.tbx M locale/tbx/grassglossary_hu.tbx M locale/tbx/grassglossary_id.tbx M locale/tbx/grassglossary_it.tbx M locale/tbx/grassglossary_ja.tbx M locale/tbx/grassglossary_ko.tbx M locale/tbx/grassglossary_lv.tbx M locale/tbx/grassglossary_ml.tbx M locale/tbx/grassglossary_pl.tbx M locale/tbx/grassglossary_pt.tbx M locale/tbx/grassglossary_pt_BR.tbx M locale/tbx/grassglossary_ro.tbx M locale/tbx/grassglossary_ru.tbx M locale/tbx/grassglossary_si.tbx M locale/tbx/grassglossary_sl.tbx M locale/tbx/grassglossary_sv.tbx M locale/tbx/grassglossary_ta.tbx M locale/tbx/grassglossary_th.tbx M locale/tbx/grassglossary_tr.tbx M locale/tbx/grassglossary_uk.tbx M locale/tbx/grassglossary_vi.tbx M locale/tbx/grassglossary_zh_Hans.tbx M locale/tbx/grassglossary_zh_Hant.tbx Log Message: ----------- Translations update from OSGeo Weblate (#7818) Translated using Weblate (French) Currently translated at 36.8% (3731 of 10117 strings) Translated using Weblate (French) Currently translated at 96.6% (3275 of 3390 strings) Translated using Weblate (French) Currently translated at 36.6% (3710 of 10117 strings) Translated using Weblate (French) Currently translated at 95.9% (3252 of 3390 strings) Translated using Weblate (French) Currently translated at 98.2% (1823 of 1855 strings) Update translation files Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Update translation files Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Update translation files Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Update translation files Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Update translation files Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Update translation files Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Translated using Weblate (Chinese (Traditional Han script)) Currently translated at 0.0% (0 of 62 strings) Translated using Weblate (Chinese (Simplified Han script)) Currently translated at 75.7% (50 of 66 strings) Translated using Weblate (Vietnamese) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Ukrainian) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Turkish) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Thai) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Tamil) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Swedish) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Slovenian) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Sinhala) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Russian) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Romanian) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Portuguese (Brazil)) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Portuguese) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Polish) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Malayalam) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Latvian) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Korean) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Japanese) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Italian) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Indonesian) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Hungarian) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Hindi) Currently translated at 65.1% (43 of 66 strings) Translated using Weblate (French) Currently translated at 86.5% (58 of 67 strings) Translated using Weblate (Finnish) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Spanish) Currently translated at 12.1% (8 of 66 strings) Translated using Weblate (Greek) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (German) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Czech) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Bengali) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (Arabic) Currently translated at 9.0% (6 of 66 strings) Translated using Weblate (French) Currently translated at 36.6% (3708 of 10115 strings) Translated using Weblate (French) Currently translated at 95.0% (3223 of 3390 strings) Translated using Weblate (French) Currently translated at 98.2% (1822 of 1855 strings) Translated using Weblate (Chinese (Simplified Han script)) Currently translated at 29.6% (1005 of 3390 strings) Update translation files Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Update translation files Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Update translation files Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/ar/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/bn/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/cs/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/de/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/el/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/es/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/fi/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/fr/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/hi/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/hu/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/id/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/it/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/ja/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/ko/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/lv/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/ml/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/pl/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/pt/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/pt_BR/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/ro/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/ru/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/si/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/sl/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/sv/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/ta/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/th/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/tr/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/uk/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/vi/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/zh_Hans/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassglossary/zh_Hant/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grasslibs/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grasslibs/fr/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassmods/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grassmods/fr/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grasswxpy/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grasswxpy/fr/ Translate-URL: https://weblate.osgeo.org/projects/grass-gis/grasswxpy/zh_Hans/ Translation: GRASS/grassglossary Translation: GRASS/grasslibs Translation: GRASS/grassmods Translation: GRASS/grasswxpy Co-authored-by: Weblate Co-authored-by: Edouard Choiniere Co-authored-by: Liuxs Commit: 3ebde05d387b5fcf1629d28d054adaee7cbdd1e0 https://github.com/OSGeo/grass/commit/3ebde05d387b5fcf1629d28d054adaee7cbdd1e0 Author: SAKET KUMAR MALL <72020337+saket0187 at users.noreply.github.com> Date: 2026-08-16 (Sun, 16 Aug 2026) Changed paths: R lib/temporal/SQL/update_stds_spatial_temporal_extent_template_old.sql R lib/temporal/SQL/update_str3ds_metadata_template_old.sql M lib/temporal/SQL/update_strds_metadata_template.sql R lib/temporal/SQL/update_strds_metadata_template_old.sql R lib/temporal/SQL/update_strds_metadata_template_v3.sql R lib/temporal/SQL/update_stvds_metadata_template_old.sql M python/grass/temporal/abstract_space_time_dataset.py Log Message: ----------- temporal: Remove SQLite < 3.33 workaround (#7825) revert 3723 Commit: 251d7f0d941858cbc2f8c94bed67c2e7176e3192 https://github.com/OSGeo/grass/commit/251d7f0d941858cbc2f8c94bed67c2e7176e3192 Author: Kaushik Raja <85415462+krcoder123 at users.noreply.github.com> Date: 2026-08-17 (Mon, 17 Aug 2026) Changed paths: M raster/CMakeLists.txt M raster/r.geomorphon/Makefile A raster/r.geomorphon/benchmark/benchmark_r_geomorphon.py M raster/r.geomorphon/local_proto.h M raster/r.geomorphon/main.c M raster/r.geomorphon/memory.c M raster/r.geomorphon/pattern.c M raster/r.geomorphon/r.geomorphon.md M raster/r.geomorphon/tests/r_geomorphon_test.py Log Message: ----------- r.geomorphon: parallelize with OpenMP using memory-bounded banding (#7783) The output is processed in bands sized from a new memory option, with the input strip loaded through per thread descriptors and each band's rows computed in parallel. Output is byte identical to the serial module at every thread count across all twelve outputs, the memory range, and the option matrix. A new nprocs option matches the other parallel modules. Commit: 8f156a141931f424ea3b5501ae8cd40d52a3e485 https://github.com/OSGeo/grass/commit/8f156a141931f424ea3b5501ae8cd40d52a3e485 Author: SAKET KUMAR MALL <72020337+saket0187 at users.noreply.github.com> Date: 2026-08-18 (Tue, 18 Aug 2026) Changed paths: M gui/wxpython/tplot/frame.py Log Message: ----------- wxGUI/tplot: Make the window resizable and add padding for nicer look (#7820) Commit: 4677089e442a50fc713db430de1ac07e6211bbd3 https://github.com/OSGeo/grass/commit/4677089e442a50fc713db430de1ac07e6211bbd3 Author: Anna Petrasova Date: 2026-08-19 (Wed, 19 Aug 2026) Changed paths: M doc/development/CMakeLists.txt M doc/development/Makefile Log Message: ----------- doc: building_with_cmake.md was not built (#7829) * doc: building_with_cmake.md was not built * cmake build too Commit: 0eed10543479097be6f861131a4abfcbb63bc4cb https://github.com/OSGeo/grass/commit/0eed10543479097be6f861131a4abfcbb63bc4cb Author: Anna Petrasova Date: 2026-08-19 (Wed, 19 Aug 2026) Changed paths: M cmake/modules/build_gui_in_subdir.cmake Log Message: ----------- CMake: Rebuild g.gui.* modules when their sources change (#7830) Commit: 74eb64c4e9f7670c5d8e57aff23b19b9e05d6763 https://github.com/OSGeo/grass/commit/74eb64c4e9f7670c5d8e57aff23b19b9e05d6763 Author: SAKET KUMAR MALL <72020337+saket0187 at users.noreply.github.com> Date: 2026-08-19 (Wed, 19 Aug 2026) Changed paths: A gui/icons/grass/str3ds.png A gui/icons/grass/str3ds.svg A gui/icons/grass/strds.png A gui/icons/grass/strds.svg A gui/icons/grass/stvds.png A gui/icons/grass/stvds.svg M gui/wxpython/core/gconsole.py M gui/wxpython/datacatalog/catalog.py M gui/wxpython/datacatalog/g.gui.datacatalog.md M gui/wxpython/datacatalog/toolbars.py M gui/wxpython/datacatalog/tree.py M python/grass/grassdb/data.py M python/grass/temporal/gui_support.py Log Message: ----------- wxGUI/datacatalog : Add STDS in datacatalog (#7608) Commit: 236b827b293097fbea7a83731ea1878e77eab6fe https://github.com/OSGeo/grass/commit/236b827b293097fbea7a83731ea1878e77eab6fe Author: Tomas Zigo <50632337+tmszi at users.noreply.github.com> Date: 2026-08-20 (Thu, 20 Aug 2026) Changed paths: M gui/wxpython/CMakeLists.txt Log Message: ----------- wxGUI/jupyter_notebook: fix copying missing template notebook files (#7809) Failure during the compilation process if CMake was used. Co-authored-by: Linda Karlovska <49241681+lindakarlovska at users.noreply.github.com> Commit: 058b1a29c3edc70d2fb26f7c3b859e7d1618bcc5 https://github.com/OSGeo/grass/commit/058b1a29c3edc70d2fb26f7c3b859e7d1618bcc5 Author: SAKET KUMAR MALL <72020337+saket0187 at users.noreply.github.com> Date: 2026-08-20 (Thu, 20 Aug 2026) Changed paths: M gui/wxpython/datacatalog/tree.py Log Message: ----------- wxGUI/datacatalog: Add db path tooltip to nodes (#7824) Commit: 681365cc5497bc172ceda13e4e4d3170218fdeb1 https://github.com/OSGeo/grass/commit/681365cc5497bc172ceda13e4e4d3170218fdeb1 Author: SAKET KUMAR MALL <72020337+saket0187 at users.noreply.github.com> Date: 2026-08-20 (Thu, 20 Aug 2026) Changed paths: M gui/wxpython/animation/controller.py M gui/wxpython/animation/provider.py Log Message: ----------- wxGUI/animation: Fix freeze and descriptor exhaustion on large datasets (#7811) Commit: 28bf457d525dea577549759501d3445f0a83335e https://github.com/OSGeo/grass/commit/28bf457d525dea577549759501d3445f0a83335e Author: Anna Petrasova Date: 2026-08-20 (Thu, 20 Aug 2026) Changed paths: M lib/proj/CMakeLists.txt Log Message: ----------- CMake: Copy proj tables to build output tree (#7831) Commit: 2446d8809a2ea014df3c47d9fd86aeced14d0ac6 https://github.com/OSGeo/grass/commit/2446d8809a2ea014df3c47d9fd86aeced14d0ac6 Author: SAKET KUMAR MALL <72020337+saket0187 at users.noreply.github.com> Date: 2026-08-21 (Fri, 21 Aug 2026) Changed paths: M gui/wxpython/animation/frame.py A gui/wxpython/animation/panels.py M gui/wxpython/animation/toolbars.py M gui/wxpython/main_window/frame.py Log Message: ----------- wxGUI/animation: Integrate `g.gui.animation` into the GUI as a tab (#7823) Commit: 63e582d65f4a105152548db0fe5fb869215753b5 https://github.com/OSGeo/grass/commit/63e582d65f4a105152548db0fe5fb869215753b5 Author: Kaushik Raja <85415462+krcoder123 at users.noreply.github.com> Date: 2026-08-21 (Fri, 21 Aug 2026) Changed paths: A raster/r.proj/tests/conftest.py A raster/r.proj/tests/r_proj_methods_test.py A raster/r.proj/tests/r_proj_output_test.py R raster/r.proj/testsuite/test_rproj.py Log Message: ----------- r.proj: replace gunittest testsuite with pytest method reference tests (#7766) Commit: 8f39c47c80befa707f6adf0ea8bc890223d84be1 https://github.com/OSGeo/grass/commit/8f39c47c80befa707f6adf0ea8bc890223d84be1 Author: SAKET KUMAR MALL <72020337+saket0187 at users.noreply.github.com> Date: 2026-08-21 (Fri, 21 Aug 2026) Changed paths: M python/grass/pygrass/rpc/base.py Log Message: ----------- grass.pygrass: Fix resource_tracker semaphore warning at exit (#7833) Unlink the RPC server lock semaphore when the server is stopped, so temporal tools no longer emit a resource_tracker warning at exit. Note :- Messenger holds the same kind of lock, but bisecting showed only the CLibrariesInterface lock survives to shutdown, so changing its stop() would fix nothing. Commit: f87bf846fea303f5fc4fc383e6b520ab901f5c8d https://github.com/OSGeo/grass/commit/f87bf846fea303f5fc4fc383e6b520ab901f5c8d Author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Date: 2026-08-22 (Sat, 22 Aug 2026) Changed paths: M locale/templates/grasslibs.pot M locale/templates/grassmods.pot M locale/templates/grasswxpy.pot Log Message: ----------- locale: Update translation files (122) (#7838) locale: Update translation files Co-authored-by: echoix <27212526+echoix at users.noreply.github.com> Commit: fc2cd0a8f53679edc85a0b75d0ccef98f192fb6e https://github.com/OSGeo/grass/commit/fc2cd0a8f53679edc85a0b75d0ccef98f192fb6e Author: R Sai Pranav Date: 2026-08-23 (Sun, 23 Aug 2026) Changed paths: M raster/r.coin/make_coin.c M raster/r.coin/tests/test_coin.py Log Message: ----------- r.coin: Fail when r.stats returns no data (#7841) Commit: adc72202d77f19806699e870c09e025904221fde https://github.com/OSGeo/grass/commit/adc72202d77f19806699e870c09e025904221fde Author: Anna Petrasova Date: 2026-08-24 (Mon, 24 Aug 2026) Changed paths: A raster/r.sim/r.sim.water/r.sim.water.ipynb M raster/r.sim/r.sim.water/testsuite/data/depth_complex.pack A raster/r.sim/r.sim.water/testsuite/data/depth_infil.pack M raster/r.sim/r.sim.water/testsuite/data/discharge_complex.pack M raster/r.sim/r.sim.water/testsuite/test_r_sim_water.py M raster/r.sim/simlib/hydro.c M raster/r.sim/simlib/input.c Log Message: ----------- r.sim: fix infiltration implementation (#5623) * r.sim: fix infiltration computation * fix order, add test * forgotten file * added testing notebook to run in binder * fix paths for binder * don't use log legend, fails with 0 * corrected behavior * fix tests * improve notebook * fix parameter * remove not needed comments from tests * remove trapezoid rule multiplication, add comments * don't remove trapezoidal rule to depth to not change results * add condition to filter infil > 0 --------- Co-authored-by: Corey White Commit: 1c684328ebea801f9838e5723bccd4af6b12001e https://github.com/OSGeo/grass/commit/1c684328ebea801f9838e5723bccd4af6b12001e Author: Anna Petrasova Date: 2026-08-24 (Mon, 24 Aug 2026) Changed paths: M raster/r.in.pdal/info.cpp M raster/r.in.pdal/info.h M raster/r.in.pdal/main.cpp M raster/r.in.pdal/projection.c M raster/r.in.pdal/r.in.pdal.html M raster/r.in.pdal/r.in.pdal.md A raster/r.in.pdal/testsuite/data/points_3358.las A raster/r.in.pdal/testsuite/data/points_6346.las A raster/r.in.pdal/testsuite/test_r_in_pdal_extent.py Log Message: ----------- r.in.pdal: fix reported data extent when CRS doesn't match (#6465) * r.in.pdal: fix reported data extent when CRS doesn't match * fix tests * forgot to add test las files * address review, improve test * set higher delta for macOS * add points along boox edges * address review * minor improvments * address review --------- Co-authored-by: Corey White Commit: 18f5980b6a8ead3259b977b3f9653d03d6efb92e https://github.com/OSGeo/grass/commit/18f5980b6a8ead3259b977b3f9653d03d6efb92e Author: Corey White Date: 2026-08-24 (Mon, 24 Aug 2026) Changed paths: M CITATION.cff Log Message: ----------- docs: Add name to GRASS citation list (#7845) * citation: Add name to GRASS Dev citation * Reverted GRASS version and changed order Commit: 8ecfa87383928735946e5d85e3811f16d4531422 https://github.com/OSGeo/grass/commit/8ecfa87383928735946e5d85e3811f16d4531422 Author: M?ris Narti?s Date: 2026-08-25 (Tue, 25 Aug 2026) Changed paths: M raster/r.stats/stats.c Log Message: ----------- r.stats: bump up counts storage to unsigned long long (#7790) Commit: 8d92e4594a9359143f00c7dbbe849f46db4327c6 https://github.com/OSGeo/grass/commit/8d92e4594a9359143f00c7dbbe849f46db4327c6 Author: Anna Petrasova Date: 2026-08-24 (Mon, 24 Aug 2026) Changed paths: M CITATION.cff Log Message: ----------- doc: remove stale fields in CITATION.cff (#7846) Commit: f5ebd74c5cf2a1c1fdeeee2c5cfa7702f7fdc2e1 https://github.com/OSGeo/grass/commit/f5ebd74c5cf2a1c1fdeeee2c5cfa7702f7fdc2e1 Author: Corey White Date: 2026-08-24 (Mon, 24 Aug 2026) Changed paths: M gui/wxpython/xml/toolboxes.xml M vector/CMakeLists.txt M vector/Makefile A vector/v.ppa/Makefile A vector/v.ppa/doc_figures.py A vector/v.ppa/f_function.c A vector/v.ppa/g_function.c A vector/v.ppa/k_function.c A vector/v.ppa/local_proto.h A vector/v.ppa/main.c A vector/v.ppa/result.c A vector/v.ppa/tests/conftest.py A vector/v.ppa/tests/v_ppa_test.py A vector/v.ppa/v.ppa.html A vector/v.ppa/v.ppa.md A vector/v.ppa/v_ppa_f.png A vector/v.ppa/v_ppa_g.png A vector/v.ppa/v_ppa_k.png A vector/v.ppa/v_ppa_l.png A vector/v.ppa/v_ppa_patterns.png Log Message: ----------- v.ppa: Point Pattern Analysis (#3826) * v.ppa: Point Pattern Analysis * Changed how vector ponits are counted * Update vector/v.ppa/main.c Co-authored-by: Lo?c Bartoletti * Update vector/v.ppa/main.c Co-authored-by: Lo?c Bartoletti * Update vector/v.ppa/main.c Co-authored-by: Lo?c Bartoletti * Update vector/v.ppa/main.c Co-authored-by: Lo?c Bartoletti * Update vector/v.ppa/main.c Co-authored-by: Lo?c Bartoletti * Update vector/v.ppa/main.c Co-authored-by: Lo?c Bartoletti * Moved sqrt call outside of ec. distance loop * Updated docs * added random seed for random points * updated g-function to return g-value under csr * updated g-function docs * Updated K and L functions and MC Sim * Added base setup for JSON support * Added tests * Added json output to k and l functions * Added markdown to fix build issue * Updated docs * v.ppa: Rework estimators, interface, and tests Restructure the tool for core inclusion and fix correctness problems found in review: - Split main.c into per-function files (g_function.c, f_function.c, k_function.c, result.c) sharing local_proto.h. - Use the computational region as the observation window for the intensity estimate, F function sampling, edge correction geometry, and default distance range. Points outside the region are ignored with a warning. - Add Ripley's isotropic edge correction for the K and L functions (correction=isotropic|none, default isotropic), using the closed form for rectangular windows. - Evaluate K and L up to max_distance (default one quarter of the shorter region side) instead of the O(n^2) pattern diameter, and estimate K with one radius query per point. - Print results to standard output by default with format=plain|csv|json; JSON output is a records array with method, point count, intensity, window, and correction metadata. The output option optionally writes to a file for all methods. - Fix correctness bugs: intensity truncated to int made the G CSR reference always zero, kdtree_knn was called with k=2 writing into scalars, duplicate coordinates were dropped from the k-d tree, omitting output crashed on fopen(NULL), and num_distances was ignored by the G and F functions. - Remove the unfinished Monte Carlo envelope code and the simulations option; simulation envelopes are planned as a follow-up (see TODO in the manual). - Add the nprocs and seed standard options; report all functions together with their theoretical values under CSR. - Replace the gunittest testsuite and committed test data with pytest tests on seeded synthetic patterns that assert agreement with CSR theory, clustering detection, and edge correction behavior. - Register the tool in vector/CMakeLists.txt and use grass/gjson.h instead of the removed grass/parson.h. - Rewrite the manual pages. The restructured estimators and the isotropic correction were implemented with AI assistance; the correction was validated numerically against a brute-force estimate of the circle fraction inside the window, and the estimators against CSR theory on seeded random patterns. * v.ppa: Add manual figures for the summary functions Add a pattern map figure (clustered, random, dispersed) rendered with d.vect and one plot per function comparing the three patterns against the CSR expectation. The figures are generated by the included doc_figures.py script from seeded synthetic patterns, so they are reproducible. Created with AI assistance. * style: Format cmake files with Gersemi * Add tool to the 'Vector Report and Statistics' and 'Point Analysis' toolboxes --------- Co-authored-by: Corey White Co-authored-by: Lo?c Bartoletti Co-authored-by: Edouard Choini?re <27212526+echoix at users.noreply.github.com> Commit: 961201997595e56cde5dfa4660f3dda3d1bfeb09 https://github.com/OSGeo/grass/commit/961201997595e56cde5dfa4660f3dda3d1bfeb09 Author: Corey White Date: 2026-08-25 (Tue, 25 Aug 2026) Changed paths: M display/d.graph/do_graph.c M display/d.legend/draw.c M imagery/i.segment/flag.c M raster3d/r3.in.v5d/main.c M raster3d/r3.out.v5d/main.c M vector/v.vol.rst/user3.c M visualization/ximgview/color.c Log Message: ----------- tools: Fix multiplications converted to a larger type (#7708) * tools: Fix multiplications converted to a larger type Cast the first operand so that integer products used as allocation sizes, memset lengths, cell counts, and file offsets are computed in size_t, long, or off_t instead of int, and so that int or float products consumed as double (D_text_size, floor, region bounds) are computed in double. Fixes 24 CodeQL cpp/integer-multiplication-cast-to-long alerts across display, general, imagery, raster3d, vector, and visualization tools. * removed cases that require further investigation Commit: 67e876e30edd065558e28c884562fe595bedf80d https://github.com/OSGeo/grass/commit/67e876e30edd065558e28c884562fe595bedf80d Author: SAKET KUMAR MALL <72020337+saket0187 at users.noreply.github.com> Date: 2026-08-25 (Tue, 25 Aug 2026) Changed paths: M gui/wxpython/animation/frame.py M gui/wxpython/animation/panels.py M gui/wxpython/datacatalog/tree.py M gui/wxpython/lmgr/frame.py M gui/wxpython/main_window/frame.py Log Message: ----------- wxGUI/datacatalog: Add Display animation option for space time datasets (#7834) Commit: c76c23b9577d736f2c8806a82e69e96d593d344f https://github.com/OSGeo/grass/commit/c76c23b9577d736f2c8806a82e69e96d593d344f Author: Anna Petrasova Date: 2026-08-25 (Tue, 25 Aug 2026) Changed paths: M man/Makefile M man/build_manpages.py Log Message: ----------- man: Use build_manpages.py for the man page sweep in both builds (#7748) Replace the MANPAGES machinery in man/Makefile with a call to the sweep script the CMake build already uses, so both builds share one sweep and one exclusion list. The delayed-evaluation and parenthesis-escaping workarounds are no longer needed because the script globs the markdown tree at run time. Implemented with AI assistance (Claude Fable). Commit: a6ea876f58b3e8c8b50ba7598797e0047644aaa1 https://github.com/OSGeo/grass/commit/a6ea876f58b3e8c8b50ba7598797e0047644aaa1 Author: Stefan Blumentrath Date: 2026-08-26 (Wed, 26 Aug 2026) Changed paths: M Dockerfile M docker/ubuntu/Dockerfile Log Message: ----------- docker: Update GDAL to 3.13.3 because of performance regression on Linux (#7852) * update to GDAL 3.13.3 due to performance regression Commit: 69185b1f5f1246321ca19c53f464366a70f3ead0 https://github.com/OSGeo/grass/commit/69185b1f5f1246321ca19c53f464366a70f3ead0 Author: Vaclav Petras Date: 2026-08-27 (Thu, 27 Aug 2026) Changed paths: M README.md Log Message: ----------- doc: Update OpenSSF Scorecard badge URLs in README (#7857) OpenSSF Scorecard moved from securityscorecards.dev to scorecard.dev. The old host still redirects, so the badge was not broken, but the README now uses the current addresses for both the badge image and the viewer link. Commit: 6693c66f34d3a8ab7185b92185ff1abe0d58daee https://github.com/OSGeo/grass/commit/6693c66f34d3a8ab7185b92185ff1abe0d58daee Author: Vaclav Petras Date: 2026-08-27 (Thu, 27 Aug 2026) Changed paths: M README.md Log Message: ----------- doc: Replace the broken Weblate badge in README (#7859) The Weblate badge does not render on GitHub. weblate.osgeo.org is behind a Cloudflare managed challenge which answers non-browser requests with an HTTP 403 challenge page, so the SVG never reaches the reader. Opening the URL in a browser works, which is why the badge looks fine when it is checked by hand. This uses a static shields.io badge instead. The link to the GRASS project on Weblate stays, but the translation percentage is gone. Commit: fd71b0267cd563c719f117c54f56353a5bff74e5 https://github.com/OSGeo/grass/commit/fd71b0267cd563c719f117c54f56353a5bff74e5 Author: Vaclav Petras Date: 2026-08-27 (Thu, 27 Aug 2026) Changed paths: M AGENTS.md M CONTRIBUTING.md M doc/development/CMakeLists.txt M doc/development/Makefile M doc/development/README.md M doc/development/style_guide.md A doc/development/testing.md M man/mkdocs/docs/development_intro.md M testsuite/README.md Log Message: ----------- contributing: Add a testing guide (#7851) The most complete statement of GRASS testing conventions lived in AGENTS.md, written for AI agents, and a contributor following the documented path never saw it. style_guide.md had no testing section, testsuite/README.md gave pytest a single sentence, and the Testing section in development_intro.md linked only the gunittest manual. This adds testing.md covering the choice between pytest and gunittest, test placement and naming, session fixtures, grass.tools, test data, running the tests, and tests which cannot run in parallel. AGENTS.md now points at the guide and keeps only its agent-specific notes, so the two cannot drift too much. Trim the testsuite README to minimum. testsuite/README.md described which testing frameworks exist and how to run pytest, which testing.md now covers, and the export commands in its Running tests section had stray backslashes which made them set literal strings when copied. The directory still needs a README since it is a top level and has unclear content (a shell script). This keeps what the directory is for and the pointer to the CI, names raster_md5test.sh, and links testing.md for everything else. The North Carolina sample dataset URL moves to testing.md, next to the command which uses the dataset. Commit: b7785d3a9d8df26c0d2a8a23466c1b88ddc99f54 https://github.com/OSGeo/grass/commit/b7785d3a9d8df26c0d2a8a23466c1b88ddc99f54 Author: Stefan Blumentrath Date: 2026-08-28 (Fri, 28 Aug 2026) Changed paths: M .editorconfig M .github/workflows/additional_checks.yml M .github/workflows/cmake.yml M .github/workflows/codeql-analysis.yml M .github/workflows/coverity.yml M .github/workflows/create_release_draft.yml M .github/workflows/docker.yml M .github/workflows/documentation.yml M .github/workflows/gcc.yml M .github/workflows/label.yml M .github/workflows/macos.yml M .github/workflows/macos_distribute_app.yml M .github/workflows/osgeo4w.yml M .github/workflows/periodic_update.yml M .github/workflows/pytest.yml M .github/workflows/pytest_args_gunittest.txt M .github/workflows/python-code-quality.yml M .github/workflows/super-linter.yml M .github/workflows/test-nix.yml M .github/workflows/titles.yml M .github/workflows/ubuntu.yml M .gitignore M .pre-commit-config.yaml M AGENTS.md M CITATION.cff M CMakeLists.txt M CONTRIBUTING.md M Dockerfile M GRASSConfig.cmake.in M README.md M REQUIREMENTS.md M cmake/ctypesgen.cmake M cmake/find_scripts/CMakeLists.txt M cmake/find_scripts/FindCBLAS.cmake M cmake/find_scripts/FindCairo.cmake M cmake/find_scripts/FindFFTW-egpbos.cmake M cmake/find_scripts/FindFFTW-eigen.cmake M cmake/find_scripts/FindFFTW.cmake M cmake/find_scripts/FindGEOS.cmake M cmake/find_scripts/FindLAPACKE.cmake M cmake/find_scripts/FindLibLAS.cmake M cmake/find_scripts/FindLibSVM.cmake M cmake/find_scripts/FindMySQL.cmake M cmake/find_scripts/FindNetCDF.cmake M cmake/find_scripts/FindPCRE.cmake M cmake/find_scripts/FindPROJ.cmake M cmake/find_scripts/FindReadline.cmake M cmake/find_scripts/Findzstd.cmake M cmake/locale_strings.cmake M cmake/modules/CMakeLists.txt M cmake/modules/CheckDependentLibraries.cmake M cmake/modules/Configure.cmake M cmake/modules/DevelUtils.cmake M cmake/modules/GRASSInstallDirs.cmake M cmake/modules/build_addon.cmake M cmake/modules/build_gui_in_subdir.cmake M cmake/modules/build_library_in_subdir.cmake M cmake/modules/build_module.cmake M cmake/modules/build_program.cmake M cmake/modules/build_program_in_subdir.cmake M cmake/modules/build_script_in_subdir.cmake M cmake/modules/check_target.cmake M cmake/modules/copy_python_files_in_subdir.cmake M cmake/modules/generate_docs.cmake M cmake/modules/get_host_arch.cmake M cmake/modules/get_versions.cmake M cmake/modules/linker.cmake M cmake/modules/repo_status.cmake M cmake/modules/set_compiler_flags.cmake A cmake/stubs/build_library_in_subdir_stub.cmake A cmake/stubs/build_program_in_subdir_stub.cmake A cmake/stubs/build_program_stub.cmake M db/CMakeLists.txt M db/drivers/CMakeLists.txt M demolocation/CMakeLists.txt M display/CMakeLists.txt M display/d.graph/do_graph.c M display/d.legend/draw.c M display/d.linegraph/main.c M doc/CMakeLists.txt M doc/Makefile A doc/development/CMakeLists.txt M doc/development/Makefile M doc/development/README.md A doc/development/building_with_cmake.md M doc/development/style_guide.md A doc/development/testing.md M doc/examples/notebooks/parallelization_tutorial.ipynb M doc/grass_projects.md M doc/howto_release.md M doc/jupyter_intro.md M doc/python_intro.md M docker/alpine/Dockerfile M docker/debian/Dockerfile M docker/testdata/test_grass_session.py M docker/ubuntu/Dockerfile M flake.lock M general/CMakeLists.txt A general/g.gisenv/tests/conftest.py A general/g.gisenv/tests/g_gisenv_test.py M general/g.region/g.region.md M general/g.region/main.c M general/manage/lister/CMakeLists.txt M gui/CMakeLists.txt M gui/icons/CMakeLists.txt A gui/icons/grass/jupyter.png A gui/icons/grass/jupyter.svg A gui/icons/grass/str3ds.png A gui/icons/grass/str3ds.svg A gui/icons/grass/strds.png A gui/icons/grass/strds.svg A gui/icons/grass/stvds.png A gui/icons/grass/stvds.svg M gui/images/CMakeLists.txt M gui/scripts/CMakeLists.txt M gui/wxpython/CMakeLists.txt M gui/wxpython/Makefile M gui/wxpython/animation/controller.py M gui/wxpython/animation/data.py M gui/wxpython/animation/frame.py M gui/wxpython/animation/nviztask.py A gui/wxpython/animation/panels.py M gui/wxpython/animation/provider.py M gui/wxpython/animation/toolbars.py M gui/wxpython/core/gcmd.py M gui/wxpython/core/gconsole.py M gui/wxpython/core/menutree.py M gui/wxpython/core/settings.py M gui/wxpython/core/utils.py M gui/wxpython/core/watchdog.py M gui/wxpython/datacatalog/catalog.py M gui/wxpython/datacatalog/g.gui.datacatalog.md M gui/wxpython/datacatalog/toolbars.py M gui/wxpython/datacatalog/tree.py M gui/wxpython/dbmgr/base.py M gui/wxpython/docs/CMakeLists.txt A gui/wxpython/docs/jupyter_browser_mode.png A gui/wxpython/docs/jupyter_integrated_mode.png A gui/wxpython/docs/jupyter_startup_dialog.png A gui/wxpython/docs/wxGUI.jupyter.md M gui/wxpython/gmodeler/canvas.py M gui/wxpython/gmodeler/model.py M gui/wxpython/gmodeler/model_convert.py M gui/wxpython/gmodeler/model_items.py M gui/wxpython/gmodeler/panels.py M gui/wxpython/gui_core/forms.py M gui/wxpython/gui_core/ghelp.py M gui/wxpython/gui_core/pyedit.py M gui/wxpython/gui_core/toolbars.py M gui/wxpython/image2target/ii2t_gis_set.py M gui/wxpython/iscatt/core_c.py M gui/wxpython/iscatt/iscatt_core.py M gui/wxpython/iscatt/plots.py A gui/wxpython/jupyter_notebook/dialogs.py A gui/wxpython/jupyter_notebook/environment.py A gui/wxpython/jupyter_notebook/frame.py A gui/wxpython/jupyter_notebook/notebook.py A gui/wxpython/jupyter_notebook/panel.py A gui/wxpython/jupyter_notebook/server.py A gui/wxpython/jupyter_notebook/storage.py A gui/wxpython/jupyter_notebook/template_notebooks/new.ipynb A gui/wxpython/jupyter_notebook/template_notebooks/welcome.ipynb A gui/wxpython/jupyter_notebook/toolbars.py A gui/wxpython/jupyter_notebook/utils.py M gui/wxpython/lmgr/frame.py M gui/wxpython/lmgr/layertree.py M gui/wxpython/lmgr/toolbars.py M gui/wxpython/main_window/frame.py M gui/wxpython/main_window/notebook.py M gui/wxpython/mapdisp/main.py M gui/wxpython/rdigit/controller.py M gui/wxpython/rlisetup/frame.py M gui/wxpython/timeline/frame.py M gui/wxpython/tplot/frame.py M gui/wxpython/wxgui.py M gui/wxpython/xml/module_tree.xml M gui/wxpython/xml/toolboxes.xml M gui/wxpython/xml/wxgui_items.xml M imagery/CMakeLists.txt M imagery/i.ortho.photo/CMakeLists.txt M imagery/i.segment/flag.c M include/CMakeLists.txt M include/Make/Grass.make M include/Make/Html.make M include/Make/Module.make M include/Make/Script.make M lib/CMakeLists.txt M lib/arraystats/class.c M lib/cairodriver/draw_bitmap.c M lib/cairodriver/graph.c M lib/db/CMakeLists.txt M lib/db/dbmi_base/dirent.c M lib/db/sqlp/CMakeLists.txt M lib/external/ccmath/hmgen.c M lib/external/ccmath/unitary.c M lib/fonts/CMakeLists.txt M lib/gis/CMakeLists.txt A lib/gis/tests/lib_gis_lrand48_test.py M lib/gmath/del2g.c M lib/gmath/getg.c M lib/gmath/lu.c M lib/init/CMakeLists.txt M lib/init/grass.py M lib/linkm/new.c M lib/nviz/lights.c M lib/ogsf/gs.c M lib/ogsf/gs_norms.c M lib/ogsf/gsd_cplane.c M lib/ogsf/gsd_fringe.c M lib/ogsf/gsd_surf.c M lib/ogsf/gsd_views.c M lib/ogsf/gsd_wire.c M lib/pngdriver/graph_close.c M lib/pngdriver/graph_set.c M lib/proj/CMakeLists.txt M lib/proj/do_proj.c M lib/psdriver/draw_bitmap.c M lib/psdriver/erase.c M lib/raster/get_row.c M lib/raster/put_row.c M lib/raster3d/cache.c M lib/raster3d/misc.c M lib/raster3d/tilewrite.c M lib/raster3d/volume.c M lib/rst/CMakeLists.txt M lib/segment/address.c M lib/temporal/CMakeLists.txt R lib/temporal/SQL/update_stds_spatial_temporal_extent_template_old.sql R lib/temporal/SQL/update_str3ds_metadata_template_old.sql M lib/temporal/SQL/update_strds_metadata_template.sql R lib/temporal/SQL/update_strds_metadata_template_old.sql R lib/temporal/SQL/update_strds_metadata_template_v3.sql R lib/temporal/SQL/update_stvds_metadata_template_old.sql M lib/vector/CMakeLists.txt M lib/vector/dglib/CMakeLists.txt M lib/vector/diglib/CMakeLists.txt M lib/vector/diglib/allocation.c A lib/vector/rtree/tests/lib_vector_rtree_ctypes_test.py M locale/CMakeLists.txt M locale/po/grasslibs_ar.po M locale/po/grasslibs_bn.po M locale/po/grasslibs_cs.po M locale/po/grasslibs_de.po M locale/po/grasslibs_el.po M locale/po/grasslibs_es.po M locale/po/grasslibs_fi.po M locale/po/grasslibs_fr.po M locale/po/grasslibs_hi.po M locale/po/grasslibs_hu.po M locale/po/grasslibs_id_ID.po M locale/po/grasslibs_it.po M locale/po/grasslibs_ja.po M locale/po/grasslibs_ko.po M locale/po/grasslibs_lv.po M locale/po/grasslibs_ml.po M locale/po/grasslibs_pl.po M locale/po/grasslibs_pt.po M locale/po/grasslibs_pt_BR.po M locale/po/grasslibs_ro.po M locale/po/grasslibs_ru.po M locale/po/grasslibs_si.po M locale/po/grasslibs_sl.po M locale/po/grasslibs_sv.po M locale/po/grasslibs_ta.po M locale/po/grasslibs_th.po M locale/po/grasslibs_tr.po M locale/po/grasslibs_uk.po M locale/po/grasslibs_vi.po M locale/po/grasslibs_zh.po A locale/po/grasslibs_zh_Hant.po M locale/po/grassmods_ar.po M locale/po/grassmods_bn.po M locale/po/grassmods_cs.po M locale/po/grassmods_de.po M locale/po/grassmods_el.po M locale/po/grassmods_es.po M locale/po/grassmods_fi.po M locale/po/grassmods_fr.po M locale/po/grassmods_hi.po M locale/po/grassmods_hu.po M locale/po/grassmods_id_ID.po M locale/po/grassmods_it.po M locale/po/grassmods_ja.po M locale/po/grassmods_ko.po M locale/po/grassmods_lv.po M locale/po/grassmods_ml.po M locale/po/grassmods_pl.po M locale/po/grassmods_pt.po M locale/po/grassmods_pt_BR.po M locale/po/grassmods_ro.po M locale/po/grassmods_ru.po M locale/po/grassmods_si.po M locale/po/grassmods_sl.po M locale/po/grassmods_sv.po M locale/po/grassmods_ta.po M locale/po/grassmods_th.po M locale/po/grassmods_tr.po M locale/po/grassmods_uk.po M locale/po/grassmods_vi.po M locale/po/grassmods_zh.po A locale/po/grassmods_zh_Hant.po M locale/po/grasswxpy_ar.po M locale/po/grasswxpy_bn.po M locale/po/grasswxpy_cs.po M locale/po/grasswxpy_de.po M locale/po/grasswxpy_el.po M locale/po/grasswxpy_es.po M locale/po/grasswxpy_fi.po M locale/po/grasswxpy_fr.po M locale/po/grasswxpy_hi.po M locale/po/grasswxpy_hu.po M locale/po/grasswxpy_id_ID.po M locale/po/grasswxpy_it.po M locale/po/grasswxpy_ja.po M locale/po/grasswxpy_ko.po M locale/po/grasswxpy_lv.po M locale/po/grasswxpy_ml.po M locale/po/grasswxpy_pl.po M locale/po/grasswxpy_pt.po M locale/po/grasswxpy_pt_BR.po M locale/po/grasswxpy_ro.po M locale/po/grasswxpy_ru.po M locale/po/grasswxpy_si.po M locale/po/grasswxpy_sl.po M locale/po/grasswxpy_sv.po M locale/po/grasswxpy_ta.po M locale/po/grasswxpy_th.po M locale/po/grasswxpy_tr.po M locale/po/grasswxpy_uk.po M locale/po/grasswxpy_vi.po M locale/po/grasswxpy_zh.po A locale/po/grasswxpy_zh_Hant.po M locale/tbx/grassglossary_ar.tbx M locale/tbx/grassglossary_bn.tbx M locale/tbx/grassglossary_cs.tbx M locale/tbx/grassglossary_de.tbx M locale/tbx/grassglossary_el.tbx M locale/tbx/grassglossary_es.tbx M locale/tbx/grassglossary_fi.tbx M locale/tbx/grassglossary_fr.tbx M locale/tbx/grassglossary_hi.tbx M locale/tbx/grassglossary_hu.tbx M locale/tbx/grassglossary_id.tbx M locale/tbx/grassglossary_it.tbx M locale/tbx/grassglossary_ja.tbx M locale/tbx/grassglossary_ko.tbx M locale/tbx/grassglossary_lv.tbx M locale/tbx/grassglossary_ml.tbx M locale/tbx/grassglossary_pl.tbx M locale/tbx/grassglossary_pt.tbx M locale/tbx/grassglossary_pt_BR.tbx M locale/tbx/grassglossary_ro.tbx M locale/tbx/grassglossary_ru.tbx M locale/tbx/grassglossary_si.tbx M locale/tbx/grassglossary_sl.tbx M locale/tbx/grassglossary_sv.tbx M locale/tbx/grassglossary_ta.tbx M locale/tbx/grassglossary_th.tbx M locale/tbx/grassglossary_tr.tbx M locale/tbx/grassglossary_uk.tbx M locale/tbx/grassglossary_vi.tbx M locale/tbx/grassglossary_zh_Hans.tbx A locale/tbx/grassglossary_zh_Hant.tbx M locale/templates/grasslibs.pot M locale/templates/grassmods.pot M locale/templates/grasswxpy.pot M man/CMakeLists.txt M man/Makefile M man/build.py A man/build_manpages.py M man/build_rest.py M man/mkdocs/docs/development_intro.md M man/mkdocs/mkdocs.yml A man/mkdocs/overrides/main.html M man/mkdocs/requirements.txt M misc/CMakeLists.txt M ps/CMakeLists.txt M pyproject.toml M python/grass/CMakeLists.txt M python/grass/app/cli.py M python/grass/app/tests/grass_app_cli_test.py M python/grass/docs/Makefile M python/grass/docs/_templates/layout.html.template M python/grass/docs/conf.py M python/grass/docs/src/gunittest_running_tests.rst M python/grass/docs/src/gunittest_testing.rst M python/grass/docs/src/index.rst M python/grass/docs/src/pygrass_gis.rst M python/grass/docs/src/pygrass_index.rst M python/grass/docs/src/pygrass_messages.rst M python/grass/docs/src/pygrass_modules.rst M python/grass/docs/src/pygrass_raster.rst M python/grass/docs/src/pygrass_vector.rst M python/grass/docs/src/script_intro.rst M python/grass/docs/src/temporal_framework.rst M python/grass/grassdb/data.py M python/grass/grassdb/manage.py M python/grass/gunittest/case.py M python/grass/gunittest/loader.py M python/grass/gunittest/multirunner.py M python/grass/gunittest/reporters.py M python/grass/gunittest/runner.py M python/grass/imaging/images2avi.py M python/grass/pydispatch/dispatcher.py R python/grass/pygrass/CMakeLists.txt M python/grass/pygrass/modules/grid/grid.py M python/grass/pygrass/modules/interface/flag.py M python/grass/pygrass/modules/interface/module.py M python/grass/pygrass/modules/interface/parameter.py M python/grass/pygrass/modules/interface/read.py M python/grass/pygrass/raster/abstract.py M python/grass/pygrass/raster/category.py M python/grass/pygrass/rpc/base.py M python/grass/pygrass/vector/geometry.py M python/grass/pygrass/vector/table.py M python/grass/script/__init__.py M python/grass/script/core.py M python/grass/script/db.py M python/grass/script/raster.py M python/grass/script/setup.py M python/grass/script/task.py A python/grass/script/tests/grass_script_create_mapset_test.py M python/grass/script/tests/grass_script_raster_region_test.py M python/grass/script/utils.py M python/grass/script/vector.py M python/grass/semantic_label/reader.py M python/grass/temporal/Makefile M python/grass/temporal/__init__.py M python/grass/temporal/abstract_space_time_dataset.py M python/grass/temporal/c_libraries_interface.py M python/grass/temporal/core.py M python/grass/temporal/gui_support.py M python/grass/temporal/list_stds.py M python/grass/temporal/metadata.py M python/grass/temporal/register.py M python/grass/temporal/space_time_datasets.py M python/grass/temporal/stds_import.py A python/grass/temporal/tests/grass_temporal_core_init_skip_db_test.py A python/grass/temporal/tests/grass_temporal_datetime_math_test.py A python/grass/temporal/tests/grass_temporal_granularity_test.py A python/grass/temporal/tests/grass_temporal_gui_support_test.py A python/grass/temporal/tests/grass_temporal_map_metadata_test.py A python/grass/temporal/tests/grass_temporal_spatial_extent_test.py A python/grass/temporal/tests/grass_temporal_topology_test.py R python/grass/temporal/unit_tests.py M python/grass/tools/session_tools.py M python/grass/utils/download.py A python/grass/utils/tests/grass_utils_download_test.py M python/libgrass_interface_generator/CMakeLists.txt M python/libgrass_interface_generator/libgrass__init__.py M raster/CMakeLists.txt M raster/r.coin/make_coin.c M raster/r.coin/tests/test_coin.py M raster/r.colors.out/CMakeLists.txt M raster/r.colors/CMakeLists.txt A raster/r.cross/tests/test_r_cross.py R raster/r.cross/testsuite/test_cross.py M raster/r.geomorphon/Makefile A raster/r.geomorphon/benchmark/benchmark_r_geomorphon.py M raster/r.geomorphon/local_proto.h M raster/r.geomorphon/main.c M raster/r.geomorphon/memory.c M raster/r.geomorphon/pattern.c M raster/r.geomorphon/r.geomorphon.md A raster/r.geomorphon/tests/conftest.py A raster/r.geomorphon/tests/r_geomorphon_test.py R raster/r.geomorphon/testsuite/test_r_geom.py M raster/r.in.gdal/main.c M raster/r.in.pdal/info.cpp M raster/r.in.pdal/info.h M raster/r.in.pdal/main.cpp M raster/r.in.pdal/projection.c M raster/r.in.pdal/r.in.pdal.html M raster/r.in.pdal/r.in.pdal.md A raster/r.in.pdal/testsuite/data/points_3358.las A raster/r.in.pdal/testsuite/data/points_6346.las A raster/r.in.pdal/testsuite/test_r_in_pdal_extent.py M raster/r.li/CMakeLists.txt M raster/r.mapcalc/CMakeLists.txt A raster/r.mapcalc/tests/r_mapcalc_rand_seed_test.py M raster/r.mapcalc/testsuite/test_r_mapcalc.py M raster/r.mapcalc/testsuite/test_r_mapcalc_parallel.py A raster/r.null/tests/r_null_test.py R raster/r.null/testsuite/test_r_null.py M raster/r.out.vtk/writeascii.c M raster/r.param.scale/Makefile A raster/r.param.scale/benchmark/benchmark_r_param_scale_nprocs.py M raster/r.param.scale/close_down.c M raster/r.param.scale/find_normal.c M raster/r.param.scale/interface.c M raster/r.param.scale/main.c M raster/r.param.scale/open_files.c M raster/r.param.scale/param.h M raster/r.param.scale/process.c M raster/r.param.scale/r.param.scale.md M raster/r.param.scale/tests/r_param_scale_test.py A raster/r.proj/tests/conftest.py A raster/r.proj/tests/r_proj_methods_test.py A raster/r.proj/tests/r_proj_output_test.py R raster/r.proj/testsuite/test_rproj.py M raster/r.resamp.stats/Makefile A raster/r.resamp.stats/benchmark/benchmark_r_resamp_stats_nprocs.py M raster/r.resamp.stats/main.c M raster/r.resamp.stats/r.resamp.stats.html M raster/r.resamp.stats/r.resamp.stats.md A raster/r.resamp.stats/testsuite/test_r_resamp_stats.py M raster/r.sim/CMakeLists.txt A raster/r.sim/r.sim.water/r.sim.water.ipynb M raster/r.sim/r.sim.water/testsuite/data/depth_complex.pack A raster/r.sim/r.sim.water/testsuite/data/depth_infil.pack M raster/r.sim/r.sim.water/testsuite/data/discharge_complex.pack M raster/r.sim/r.sim.water/testsuite/test_r_sim_water.py M raster/r.sim/simlib/hydro.c M raster/r.sim/simlib/input.c M raster/r.spread/CMakeLists.txt M raster/r.stats/stats.c M raster/r.sunmask/solpos00.c A raster/r.timestamp/tests/conftest.py A raster/r.timestamp/tests/r_timestamp_test.py M raster/r.to.rast3elev/main.c M raster/r.univar/CMakeLists.txt M raster/r.viewshed/grass.cpp M raster/r.watershed/CMakeLists.txt M raster/r.watershed/ram/init_vars.c M raster/r.watershed/seg/init_vars.c M raster3d/CMakeLists.txt M raster3d/r3.flow/CMakeLists.txt M raster3d/r3.in.v5d/main.c M raster3d/r3.out.v5d/main.c M raster3d/r3.out.vtk/writeVTKData.c M scripts/CMakeLists.txt M scripts/Makefile M scripts/d.correlate/d.correlate.py A scripts/d.correlate/tests/d_correlate_test.py M scripts/g.download.project/g.download.project.html M scripts/g.download.project/g.download.project.md M scripts/g.extension/g.extension.py M scripts/g.extension/testsuite/data/sample_modules/r.plus.example/CMakeLists.txt M scripts/g.extension/testsuite/test_addons_download.py M scripts/g.extension/testsuite/test_addons_modules.py M scripts/i.spectral/i.spectral.py A scripts/i.spectral/tests/i_spectral_test.py M scripts/r.in.srtm/r.in.srtm.py M scripts/r.in.wms/wms_cap_parsers.py M scripts/r.reclass.area/r.reclass.area.html M scripts/r.reclass.area/r.reclass.area.md M scripts/r.reclass.area/r.reclass.area.py M scripts/r.reclass.area/testsuite/test_r_reclass_area.py M scripts/r.reclass.area/testsuite/testrra.py M scripts/r.semantic.label/r.semantic.label.py A scripts/r.semantic.label/tests/r_semantic_label_test.py M scripts/r.unpack/r.unpack.py A scripts/v.geometry/Makefile A scripts/v.geometry/tests/conftest.py A scripts/v.geometry/tests/v_geometry_test.py A scripts/v.geometry/v.geometry.html A scripts/v.geometry/v.geometry.md A scripts/v.geometry/v.geometry.py M scripts/v.unpack/v.unpack.py M temporal/CMakeLists.txt M temporal/t.connect/main.c M temporal/t.connect/t.connect.html M temporal/t.connect/t.connect.md M temporal/t.connect/tests/conftest.py M temporal/t.connect/tests/test_t_connect.py A temporal/t.info/tests/conftest.py A temporal/t.info/tests/test_t_info_backend.py A temporal/t.info/tests/test_t_info_str3ds.py A temporal/t.info/tests/test_t_info_strds.py A temporal/t.info/tests/test_t_info_stvds.py R temporal/t.info/testsuite/test.t.info.sh M temporal/t.list/t.list.md M temporal/t.list/t.list.py M temporal/t.list/tests/conftest.py M temporal/t.list/tests/test_t_list.py M temporal/t.rast.import/t.rast.import.py R temporal/t.rast.import/test.t.rast.import.relative.sh R temporal/t.rast.import/test.t.rast.import.relative.with.semantic.label.sh R temporal/t.rast.import/test.t.rast.import.sh R temporal/t.rast.import/test.t.rast.import_locations.sh A temporal/t.rast.import/tests/conftest.py A temporal/t.rast.import/tests/data/precip_2000.tar.bzip2 A temporal/t.rast.import/tests/t_rast_import_test.py R temporal/t.rast.import/testsuite/data/precip_2000.tar.bzip2 R temporal/t.rast.import/testsuite/test_temporal_rast_import.py M temporal/t.rast.list/t.rast.list.py M temporal/t.rast.list/tests/t_rast_list_test.py M temporal/t.rast3d.univar/t.rast3d.univar.py M temporal/t.rast3d.univar/testsuite/test_t_rast3d_univar.py M temporal/t.register/t.register.html M temporal/t.register/t.register.md R temporal/t.register/test.t.register.raster.file.reltime.sh A temporal/t.register/tests/conftest.py A temporal/t.register/tests/t_register_file_test.py M temporal/t.vect.db.select/t.vect.db.select.md M temporal/t.vect.db.select/t.vect.db.select.py M temporal/t.vect.db.select/tests/t_vect_db_select_test.py A temporal/t.vect.import/tests/conftest.py A temporal/t.vect.import/tests/t_vect_import_test.py R temporal/t.vect.import/testsuite/test.t.vect.import.sh M temporal/t.vect.list/tests/t_vect_list_test.py M testsuite/README.md M utils/CMakeLists.txt M utils/Makefile A utils/find_missing_toolboxes.py A utils/g.md2man/Makefile A utils/g.md2man/g.md2man.py A utils/g.md2man/gmd.py A utils/g.md2man/tests/g_md2man_test.py M utils/merge_sitemaps.py M utils/mkdocs.py M utils/mkhtml.py A utils/test_merge_sitemaps.py M vector/CMakeLists.txt M vector/Makefile M vector/v.class/main.c M vector/v.class/tests/test_v_class.py M vector/v.lrs/CMakeLists.txt A vector/v.ppa/Makefile A vector/v.ppa/doc_figures.py A vector/v.ppa/f_function.c A vector/v.ppa/g_function.c A vector/v.ppa/k_function.c A vector/v.ppa/local_proto.h A vector/v.ppa/main.c A vector/v.ppa/result.c A vector/v.ppa/tests/conftest.py A vector/v.ppa/tests/v_ppa_test.py A vector/v.ppa/v.ppa.html A vector/v.ppa/v.ppa.md A vector/v.ppa/v_ppa_f.png A vector/v.ppa/v_ppa_g.png A vector/v.ppa/v_ppa_k.png A vector/v.ppa/v_ppa_l.png A vector/v.ppa/v_ppa_patterns.png M vector/v.proj/main.c A vector/v.proj/tests/conftest.py A vector/v.proj/tests/v_proj_test.py A vector/v.proj/tests/v_proj_wind_override_test.py M vector/v.vol.rst/user3.c M visualization/ximgview/color.c Log Message: ----------- Merge branch 'main' into renovate/main-ubuntu-26.x Compare: https://github.com/OSGeo/grass/compare/d812a037bfd6...b7785d3a9d8d To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Fri Aug 28 03:52:29 2026 From: noreply at github.com (Valyrian-Code) Date: Fri, 28 Aug 2026 03:52:29 -0700 Subject: [GRASS-git] [OSGeo/grass] bde472: r.support: migrate tests from gunittest to pytest ... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: bde472e763a87b33aca0aaaa7422828fdfb8d760 https://github.com/OSGeo/grass/commit/bde472e763a87b33aca0aaaa7422828fdfb8d760 Author: Rajveer* Date: 2026-08-28 (Fri, 28 Aug 2026) Changed paths: A raster/r.support/tests/r_support_test.py R raster/r.support/testsuite/test_r_support.py Log Message: ----------- r.support: migrate tests from gunittest to pytest (#7821) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Fri Aug 28 07:46:04 2026 From: noreply at github.com (Vaclav Petras) Date: Fri, 28 Aug 2026 07:46:04 -0700 Subject: [GRASS-git] [OSGeo/grass] 3ed23b: doc: Add fair-software.eu badge to README (#7856) Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 3ed23b47d5d05cb267c4a03c3a9e319abb6c101d https://github.com/OSGeo/grass/commit/3ed23b47d5d05cb267c4a03c3a9e319abb6c101d Author: Vaclav Petras Date: 2026-08-28 (Fri, 28 Aug 2026) Changed paths: M README.md Log Message: ----------- doc: Add fair-software.eu badge to README (#7856) GRASS meets all five fair-software.eu recommendations, so the README now can carry the green badge. Verified with howfairis 0.15.0: open repository, GPL license, the conda-forge registry, CITATION.cff and Zenodo badge (one would be enough), and the OpenSSF Best Practices checklist. To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 29 02:59:36 2026 From: noreply at github.com (Vaclav Petras) Date: Sat, 29 Aug 2026 02:59:36 -0700 Subject: [GRASS-git] [OSGeo/grass] Message-ID: Branch: refs/heads/docs-pytest-testing-guide Home: https://github.com/OSGeo/grass To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 29 07:24:41 2026 From: noreply at github.com (OSGeo Weblate) Date: Sat, 29 Aug 2026 07:24:41 -0700 Subject: [GRASS-git] [OSGeo/grass] cf16f8: Translations update from OSGeo Weblate (#7867) Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: cf16f86c6aa063d66640fc65488a7694b1a48906 https://github.com/OSGeo/grass/commit/cf16f86c6aa063d66640fc65488a7694b1a48906 Author: OSGeo Weblate <97247866+osgeoweblate at users.noreply.github.com> Date: 2026-08-29 (Sat, 29 Aug 2026) Changed paths: M locale/po/grasslibs_ar.po M locale/po/grasslibs_bn.po M locale/po/grasslibs_cs.po M locale/po/grasslibs_de.po M locale/po/grasslibs_el.po M locale/po/grasslibs_es.po M locale/po/grasslibs_fi.po M locale/po/grasslibs_fr.po M locale/po/grasslibs_hi.po M locale/po/grasslibs_hu.po M locale/po/grasslibs_id_ID.po M locale/po/grasslibs_it.po M locale/po/grasslibs_ja.po M locale/po/grasslibs_ko.po M locale/po/grasslibs_lv.po M locale/po/grasslibs_ml.po M locale/po/grasslibs_pl.po M locale/po/grasslibs_pt.po M locale/po/grasslibs_pt_BR.po M locale/po/grasslibs_ro.po M locale/po/grasslibs_ru.po M locale/po/grasslibs_si.po M locale/po/grasslibs_sl.po M locale/po/grasslibs_sv.po M locale/po/grasslibs_ta.po M locale/po/grasslibs_th.po M locale/po/grasslibs_tr.po M locale/po/grasslibs_uk.po M locale/po/grasslibs_vi.po M locale/po/grasslibs_zh.po M locale/po/grasslibs_zh_Hant.po M locale/po/grassmods_ar.po M locale/po/grassmods_bn.po M locale/po/grassmods_cs.po M locale/po/grassmods_de.po M locale/po/grassmods_el.po M locale/po/grassmods_es.po M locale/po/grassmods_fi.po M locale/po/grassmods_fr.po M locale/po/grassmods_hi.po M locale/po/grassmods_hu.po M locale/po/grassmods_id_ID.po M locale/po/grassmods_it.po M locale/po/grassmods_ja.po M locale/po/grassmods_ko.po M locale/po/grassmods_lv.po M locale/po/grassmods_ml.po M locale/po/grassmods_pl.po M locale/po/grassmods_pt.po M locale/po/grassmods_pt_BR.po M locale/po/grassmods_ro.po M locale/po/grassmods_ru.po M locale/po/grassmods_si.po M locale/po/grassmods_sl.po M locale/po/grassmods_sv.po M locale/po/grassmods_ta.po M locale/po/grassmods_th.po M locale/po/grassmods_tr.po M locale/po/grassmods_uk.po M locale/po/grassmods_vi.po M locale/po/grassmods_zh.po M locale/po/grassmods_zh_Hant.po M locale/po/grasswxpy_ar.po M locale/po/grasswxpy_bn.po M locale/po/grasswxpy_cs.po M locale/po/grasswxpy_de.po M locale/po/grasswxpy_el.po M locale/po/grasswxpy_es.po M locale/po/grasswxpy_fi.po M locale/po/grasswxpy_fr.po M locale/po/grasswxpy_hi.po M locale/po/grasswxpy_hu.po M locale/po/grasswxpy_id_ID.po M locale/po/grasswxpy_it.po M locale/po/grasswxpy_ja.po M locale/po/grasswxpy_ko.po M locale/po/grasswxpy_lv.po M locale/po/grasswxpy_ml.po M locale/po/grasswxpy_pl.po M locale/po/grasswxpy_pt.po M locale/po/grasswxpy_pt_BR.po M locale/po/grasswxpy_ro.po M locale/po/grasswxpy_ru.po M locale/po/grasswxpy_si.po M locale/po/grasswxpy_sl.po M locale/po/grasswxpy_sv.po M locale/po/grasswxpy_ta.po M locale/po/grasswxpy_th.po M locale/po/grasswxpy_tr.po M locale/po/grasswxpy_uk.po M locale/po/grasswxpy_vi.po M locale/po/grasswxpy_zh.po M locale/po/grasswxpy_zh_Hant.po Log Message: ----------- Translations update from OSGeo Weblate (#7867) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 29 08:44:56 2026 From: noreply at github.com (=?UTF-8?B?RWRvdWFyZCBDaG9pbmnDqHJl?=) Date: Sat, 29 Aug 2026 08:44:56 -0700 Subject: [GRASS-git] [OSGeo/grass] 685439: locale: Update translation files Message-ID: Branch: refs/heads/periodic/update-i18n-33260839694 Home: https://github.com/OSGeo/grass Commit: 6854390054e3f5520f326bc615b3e4b6b37bf0cb https://github.com/OSGeo/grass/commit/6854390054e3f5520f326bc615b3e4b6b37bf0cb Author: echoix <27212526+echoix at users.noreply.github.com> Date: 2026-08-29 (Sat, 29 Aug 2026) Changed paths: M locale/templates/grasslibs.pot M locale/templates/grassmods.pot M locale/templates/grasswxpy.pot Log Message: ----------- locale: Update translation files To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 29 08:48:59 2026 From: noreply at github.com (github-actions[bot]) Date: Sat, 29 Aug 2026 08:48:59 -0700 Subject: [GRASS-git] [OSGeo/grass] 0f0c0f: locale: Update translation files (123) (#7868) Message-ID: Branch: refs/heads/releasebranch_8_5 Home: https://github.com/OSGeo/grass Commit: 0f0c0fa6af78ca4b6208171e51bb508b836b7912 https://github.com/OSGeo/grass/commit/0f0c0fa6af78ca4b6208171e51bb508b836b7912 Author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Date: 2026-08-29 (Sat, 29 Aug 2026) Changed paths: M locale/templates/grasslibs.pot M locale/templates/grassmods.pot M locale/templates/grasswxpy.pot Log Message: ----------- locale: Update translation files (123) (#7868) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 29 11:45:56 2026 From: noreply at github.com (=?UTF-8?B?RWRvdWFyZCBDaG9pbmnDqHJl?=) Date: Sat, 29 Aug 2026 11:45:56 -0700 Subject: [GRASS-git] [OSGeo/grass] f87bf8: locale: Update translation files (122) (#7838) Message-ID: Branch: refs/heads/periodic/update-configure Home: https://github.com/OSGeo/grass Commit: f87bf846fea303f5fc4fc383e6b520ab901f5c8d https://github.com/OSGeo/grass/commit/f87bf846fea303f5fc4fc383e6b520ab901f5c8d Author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Date: 2026-08-22 (Sat, 22 Aug 2026) Changed paths: M locale/templates/grasslibs.pot M locale/templates/grassmods.pot M locale/templates/grasswxpy.pot Log Message: ----------- locale: Update translation files (122) (#7838) locale: Update translation files Co-authored-by: echoix <27212526+echoix at users.noreply.github.com> Commit: fc2cd0a8f53679edc85a0b75d0ccef98f192fb6e https://github.com/OSGeo/grass/commit/fc2cd0a8f53679edc85a0b75d0ccef98f192fb6e Author: R Sai Pranav Date: 2026-08-23 (Sun, 23 Aug 2026) Changed paths: M raster/r.coin/make_coin.c M raster/r.coin/tests/test_coin.py Log Message: ----------- r.coin: Fail when r.stats returns no data (#7841) Commit: adc72202d77f19806699e870c09e025904221fde https://github.com/OSGeo/grass/commit/adc72202d77f19806699e870c09e025904221fde Author: Anna Petrasova Date: 2026-08-24 (Mon, 24 Aug 2026) Changed paths: A raster/r.sim/r.sim.water/r.sim.water.ipynb M raster/r.sim/r.sim.water/testsuite/data/depth_complex.pack A raster/r.sim/r.sim.water/testsuite/data/depth_infil.pack M raster/r.sim/r.sim.water/testsuite/data/discharge_complex.pack M raster/r.sim/r.sim.water/testsuite/test_r_sim_water.py M raster/r.sim/simlib/hydro.c M raster/r.sim/simlib/input.c Log Message: ----------- r.sim: fix infiltration implementation (#5623) * r.sim: fix infiltration computation * fix order, add test * forgotten file * added testing notebook to run in binder * fix paths for binder * don't use log legend, fails with 0 * corrected behavior * fix tests * improve notebook * fix parameter * remove not needed comments from tests * remove trapezoid rule multiplication, add comments * don't remove trapezoidal rule to depth to not change results * add condition to filter infil > 0 --------- Co-authored-by: Corey White Commit: 1c684328ebea801f9838e5723bccd4af6b12001e https://github.com/OSGeo/grass/commit/1c684328ebea801f9838e5723bccd4af6b12001e Author: Anna Petrasova Date: 2026-08-24 (Mon, 24 Aug 2026) Changed paths: M raster/r.in.pdal/info.cpp M raster/r.in.pdal/info.h M raster/r.in.pdal/main.cpp M raster/r.in.pdal/projection.c M raster/r.in.pdal/r.in.pdal.html M raster/r.in.pdal/r.in.pdal.md A raster/r.in.pdal/testsuite/data/points_3358.las A raster/r.in.pdal/testsuite/data/points_6346.las A raster/r.in.pdal/testsuite/test_r_in_pdal_extent.py Log Message: ----------- r.in.pdal: fix reported data extent when CRS doesn't match (#6465) * r.in.pdal: fix reported data extent when CRS doesn't match * fix tests * forgot to add test las files * address review, improve test * set higher delta for macOS * add points along boox edges * address review * minor improvments * address review --------- Co-authored-by: Corey White Commit: 18f5980b6a8ead3259b977b3f9653d03d6efb92e https://github.com/OSGeo/grass/commit/18f5980b6a8ead3259b977b3f9653d03d6efb92e Author: Corey White Date: 2026-08-24 (Mon, 24 Aug 2026) Changed paths: M CITATION.cff Log Message: ----------- docs: Add name to GRASS citation list (#7845) * citation: Add name to GRASS Dev citation * Reverted GRASS version and changed order Commit: 8ecfa87383928735946e5d85e3811f16d4531422 https://github.com/OSGeo/grass/commit/8ecfa87383928735946e5d85e3811f16d4531422 Author: M?ris Narti?s Date: 2026-08-25 (Tue, 25 Aug 2026) Changed paths: M raster/r.stats/stats.c Log Message: ----------- r.stats: bump up counts storage to unsigned long long (#7790) Commit: 8d92e4594a9359143f00c7dbbe849f46db4327c6 https://github.com/OSGeo/grass/commit/8d92e4594a9359143f00c7dbbe849f46db4327c6 Author: Anna Petrasova Date: 2026-08-24 (Mon, 24 Aug 2026) Changed paths: M CITATION.cff Log Message: ----------- doc: remove stale fields in CITATION.cff (#7846) Commit: f5ebd74c5cf2a1c1fdeeee2c5cfa7702f7fdc2e1 https://github.com/OSGeo/grass/commit/f5ebd74c5cf2a1c1fdeeee2c5cfa7702f7fdc2e1 Author: Corey White Date: 2026-08-24 (Mon, 24 Aug 2026) Changed paths: M gui/wxpython/xml/toolboxes.xml M vector/CMakeLists.txt M vector/Makefile A vector/v.ppa/Makefile A vector/v.ppa/doc_figures.py A vector/v.ppa/f_function.c A vector/v.ppa/g_function.c A vector/v.ppa/k_function.c A vector/v.ppa/local_proto.h A vector/v.ppa/main.c A vector/v.ppa/result.c A vector/v.ppa/tests/conftest.py A vector/v.ppa/tests/v_ppa_test.py A vector/v.ppa/v.ppa.html A vector/v.ppa/v.ppa.md A vector/v.ppa/v_ppa_f.png A vector/v.ppa/v_ppa_g.png A vector/v.ppa/v_ppa_k.png A vector/v.ppa/v_ppa_l.png A vector/v.ppa/v_ppa_patterns.png Log Message: ----------- v.ppa: Point Pattern Analysis (#3826) * v.ppa: Point Pattern Analysis * Changed how vector ponits are counted * Update vector/v.ppa/main.c Co-authored-by: Lo?c Bartoletti * Update vector/v.ppa/main.c Co-authored-by: Lo?c Bartoletti * Update vector/v.ppa/main.c Co-authored-by: Lo?c Bartoletti * Update vector/v.ppa/main.c Co-authored-by: Lo?c Bartoletti * Update vector/v.ppa/main.c Co-authored-by: Lo?c Bartoletti * Update vector/v.ppa/main.c Co-authored-by: Lo?c Bartoletti * Moved sqrt call outside of ec. distance loop * Updated docs * added random seed for random points * updated g-function to return g-value under csr * updated g-function docs * Updated K and L functions and MC Sim * Added base setup for JSON support * Added tests * Added json output to k and l functions * Added markdown to fix build issue * Updated docs * v.ppa: Rework estimators, interface, and tests Restructure the tool for core inclusion and fix correctness problems found in review: - Split main.c into per-function files (g_function.c, f_function.c, k_function.c, result.c) sharing local_proto.h. - Use the computational region as the observation window for the intensity estimate, F function sampling, edge correction geometry, and default distance range. Points outside the region are ignored with a warning. - Add Ripley's isotropic edge correction for the K and L functions (correction=isotropic|none, default isotropic), using the closed form for rectangular windows. - Evaluate K and L up to max_distance (default one quarter of the shorter region side) instead of the O(n^2) pattern diameter, and estimate K with one radius query per point. - Print results to standard output by default with format=plain|csv|json; JSON output is a records array with method, point count, intensity, window, and correction metadata. The output option optionally writes to a file for all methods. - Fix correctness bugs: intensity truncated to int made the G CSR reference always zero, kdtree_knn was called with k=2 writing into scalars, duplicate coordinates were dropped from the k-d tree, omitting output crashed on fopen(NULL), and num_distances was ignored by the G and F functions. - Remove the unfinished Monte Carlo envelope code and the simulations option; simulation envelopes are planned as a follow-up (see TODO in the manual). - Add the nprocs and seed standard options; report all functions together with their theoretical values under CSR. - Replace the gunittest testsuite and committed test data with pytest tests on seeded synthetic patterns that assert agreement with CSR theory, clustering detection, and edge correction behavior. - Register the tool in vector/CMakeLists.txt and use grass/gjson.h instead of the removed grass/parson.h. - Rewrite the manual pages. The restructured estimators and the isotropic correction were implemented with AI assistance; the correction was validated numerically against a brute-force estimate of the circle fraction inside the window, and the estimators against CSR theory on seeded random patterns. * v.ppa: Add manual figures for the summary functions Add a pattern map figure (clustered, random, dispersed) rendered with d.vect and one plot per function comparing the three patterns against the CSR expectation. The figures are generated by the included doc_figures.py script from seeded synthetic patterns, so they are reproducible. Created with AI assistance. * style: Format cmake files with Gersemi * Add tool to the 'Vector Report and Statistics' and 'Point Analysis' toolboxes --------- Co-authored-by: Corey White Co-authored-by: Lo?c Bartoletti Co-authored-by: Edouard Choini?re <27212526+echoix at users.noreply.github.com> Commit: 961201997595e56cde5dfa4660f3dda3d1bfeb09 https://github.com/OSGeo/grass/commit/961201997595e56cde5dfa4660f3dda3d1bfeb09 Author: Corey White Date: 2026-08-25 (Tue, 25 Aug 2026) Changed paths: M display/d.graph/do_graph.c M display/d.legend/draw.c M imagery/i.segment/flag.c M raster3d/r3.in.v5d/main.c M raster3d/r3.out.v5d/main.c M vector/v.vol.rst/user3.c M visualization/ximgview/color.c Log Message: ----------- tools: Fix multiplications converted to a larger type (#7708) * tools: Fix multiplications converted to a larger type Cast the first operand so that integer products used as allocation sizes, memset lengths, cell counts, and file offsets are computed in size_t, long, or off_t instead of int, and so that int or float products consumed as double (D_text_size, floor, region bounds) are computed in double. Fixes 24 CodeQL cpp/integer-multiplication-cast-to-long alerts across display, general, imagery, raster3d, vector, and visualization tools. * removed cases that require further investigation Commit: 67e876e30edd065558e28c884562fe595bedf80d https://github.com/OSGeo/grass/commit/67e876e30edd065558e28c884562fe595bedf80d Author: SAKET KUMAR MALL <72020337+saket0187 at users.noreply.github.com> Date: 2026-08-25 (Tue, 25 Aug 2026) Changed paths: M gui/wxpython/animation/frame.py M gui/wxpython/animation/panels.py M gui/wxpython/datacatalog/tree.py M gui/wxpython/lmgr/frame.py M gui/wxpython/main_window/frame.py Log Message: ----------- wxGUI/datacatalog: Add Display animation option for space time datasets (#7834) Commit: c76c23b9577d736f2c8806a82e69e96d593d344f https://github.com/OSGeo/grass/commit/c76c23b9577d736f2c8806a82e69e96d593d344f Author: Anna Petrasova Date: 2026-08-25 (Tue, 25 Aug 2026) Changed paths: M man/Makefile M man/build_manpages.py Log Message: ----------- man: Use build_manpages.py for the man page sweep in both builds (#7748) Replace the MANPAGES machinery in man/Makefile with a call to the sweep script the CMake build already uses, so both builds share one sweep and one exclusion list. The delayed-evaluation and parenthesis-escaping workarounds are no longer needed because the script globs the markdown tree at run time. Implemented with AI assistance (Claude Fable). Commit: a6ea876f58b3e8c8b50ba7598797e0047644aaa1 https://github.com/OSGeo/grass/commit/a6ea876f58b3e8c8b50ba7598797e0047644aaa1 Author: Stefan Blumentrath Date: 2026-08-26 (Wed, 26 Aug 2026) Changed paths: M Dockerfile M docker/ubuntu/Dockerfile Log Message: ----------- docker: Update GDAL to 3.13.3 because of performance regression on Linux (#7852) * update to GDAL 3.13.3 due to performance regression Commit: 69185b1f5f1246321ca19c53f464366a70f3ead0 https://github.com/OSGeo/grass/commit/69185b1f5f1246321ca19c53f464366a70f3ead0 Author: Vaclav Petras Date: 2026-08-27 (Thu, 27 Aug 2026) Changed paths: M README.md Log Message: ----------- doc: Update OpenSSF Scorecard badge URLs in README (#7857) OpenSSF Scorecard moved from securityscorecards.dev to scorecard.dev. The old host still redirects, so the badge was not broken, but the README now uses the current addresses for both the badge image and the viewer link. Commit: 6693c66f34d3a8ab7185b92185ff1abe0d58daee https://github.com/OSGeo/grass/commit/6693c66f34d3a8ab7185b92185ff1abe0d58daee Author: Vaclav Petras Date: 2026-08-27 (Thu, 27 Aug 2026) Changed paths: M README.md Log Message: ----------- doc: Replace the broken Weblate badge in README (#7859) The Weblate badge does not render on GitHub. weblate.osgeo.org is behind a Cloudflare managed challenge which answers non-browser requests with an HTTP 403 challenge page, so the SVG never reaches the reader. Opening the URL in a browser works, which is why the badge looks fine when it is checked by hand. This uses a static shields.io badge instead. The link to the GRASS project on Weblate stays, but the translation percentage is gone. Commit: fd71b0267cd563c719f117c54f56353a5bff74e5 https://github.com/OSGeo/grass/commit/fd71b0267cd563c719f117c54f56353a5bff74e5 Author: Vaclav Petras Date: 2026-08-27 (Thu, 27 Aug 2026) Changed paths: M AGENTS.md M CONTRIBUTING.md M doc/development/CMakeLists.txt M doc/development/Makefile M doc/development/README.md M doc/development/style_guide.md A doc/development/testing.md M man/mkdocs/docs/development_intro.md M testsuite/README.md Log Message: ----------- contributing: Add a testing guide (#7851) The most complete statement of GRASS testing conventions lived in AGENTS.md, written for AI agents, and a contributor following the documented path never saw it. style_guide.md had no testing section, testsuite/README.md gave pytest a single sentence, and the Testing section in development_intro.md linked only the gunittest manual. This adds testing.md covering the choice between pytest and gunittest, test placement and naming, session fixtures, grass.tools, test data, running the tests, and tests which cannot run in parallel. AGENTS.md now points at the guide and keeps only its agent-specific notes, so the two cannot drift too much. Trim the testsuite README to minimum. testsuite/README.md described which testing frameworks exist and how to run pytest, which testing.md now covers, and the export commands in its Running tests section had stray backslashes which made them set literal strings when copied. The directory still needs a README since it is a top level and has unclear content (a shell script). This keeps what the directory is for and the pointer to the CI, names raster_md5test.sh, and links testing.md for everything else. The North Carolina sample dataset URL moves to testing.md, next to the command which uses the dataset. Commit: bde472e763a87b33aca0aaaa7422828fdfb8d760 https://github.com/OSGeo/grass/commit/bde472e763a87b33aca0aaaa7422828fdfb8d760 Author: Rajveer* Date: 2026-08-28 (Fri, 28 Aug 2026) Changed paths: A raster/r.support/tests/r_support_test.py R raster/r.support/testsuite/test_r_support.py Log Message: ----------- r.support: migrate tests from gunittest to pytest (#7821) Commit: 3ed23b47d5d05cb267c4a03c3a9e319abb6c101d https://github.com/OSGeo/grass/commit/3ed23b47d5d05cb267c4a03c3a9e319abb6c101d Author: Vaclav Petras Date: 2026-08-28 (Fri, 28 Aug 2026) Changed paths: M README.md Log Message: ----------- doc: Add fair-software.eu badge to README (#7856) GRASS meets all five fair-software.eu recommendations, so the README now can carry the green badge. Verified with howfairis 0.15.0: open repository, GPL license, the conda-forge registry, CITATION.cff and Zenodo badge (one would be enough), and the OpenSSF Best Practices checklist. Commit: cf16f86c6aa063d66640fc65488a7694b1a48906 https://github.com/OSGeo/grass/commit/cf16f86c6aa063d66640fc65488a7694b1a48906 Author: OSGeo Weblate <97247866+osgeoweblate at users.noreply.github.com> Date: 2026-08-29 (Sat, 29 Aug 2026) Changed paths: M locale/po/grasslibs_ar.po M locale/po/grasslibs_bn.po M locale/po/grasslibs_cs.po M locale/po/grasslibs_de.po M locale/po/grasslibs_el.po M locale/po/grasslibs_es.po M locale/po/grasslibs_fi.po M locale/po/grasslibs_fr.po M locale/po/grasslibs_hi.po M locale/po/grasslibs_hu.po M locale/po/grasslibs_id_ID.po M locale/po/grasslibs_it.po M locale/po/grasslibs_ja.po M locale/po/grasslibs_ko.po M locale/po/grasslibs_lv.po M locale/po/grasslibs_ml.po M locale/po/grasslibs_pl.po M locale/po/grasslibs_pt.po M locale/po/grasslibs_pt_BR.po M locale/po/grasslibs_ro.po M locale/po/grasslibs_ru.po M locale/po/grasslibs_si.po M locale/po/grasslibs_sl.po M locale/po/grasslibs_sv.po M locale/po/grasslibs_ta.po M locale/po/grasslibs_th.po M locale/po/grasslibs_tr.po M locale/po/grasslibs_uk.po M locale/po/grasslibs_vi.po M locale/po/grasslibs_zh.po M locale/po/grasslibs_zh_Hant.po M locale/po/grassmods_ar.po M locale/po/grassmods_bn.po M locale/po/grassmods_cs.po M locale/po/grassmods_de.po M locale/po/grassmods_el.po M locale/po/grassmods_es.po M locale/po/grassmods_fi.po M locale/po/grassmods_fr.po M locale/po/grassmods_hi.po M locale/po/grassmods_hu.po M locale/po/grassmods_id_ID.po M locale/po/grassmods_it.po M locale/po/grassmods_ja.po M locale/po/grassmods_ko.po M locale/po/grassmods_lv.po M locale/po/grassmods_ml.po M locale/po/grassmods_pl.po M locale/po/grassmods_pt.po M locale/po/grassmods_pt_BR.po M locale/po/grassmods_ro.po M locale/po/grassmods_ru.po M locale/po/grassmods_si.po M locale/po/grassmods_sl.po M locale/po/grassmods_sv.po M locale/po/grassmods_ta.po M locale/po/grassmods_th.po M locale/po/grassmods_tr.po M locale/po/grassmods_uk.po M locale/po/grassmods_vi.po M locale/po/grassmods_zh.po M locale/po/grassmods_zh_Hant.po M locale/po/grasswxpy_ar.po M locale/po/grasswxpy_bn.po M locale/po/grasswxpy_cs.po M locale/po/grasswxpy_de.po M locale/po/grasswxpy_el.po M locale/po/grasswxpy_es.po M locale/po/grasswxpy_fi.po M locale/po/grasswxpy_fr.po M locale/po/grasswxpy_hi.po M locale/po/grasswxpy_hu.po M locale/po/grasswxpy_id_ID.po M locale/po/grasswxpy_it.po M locale/po/grasswxpy_ja.po M locale/po/grasswxpy_ko.po M locale/po/grasswxpy_lv.po M locale/po/grasswxpy_ml.po M locale/po/grasswxpy_pl.po M locale/po/grasswxpy_pt.po M locale/po/grasswxpy_pt_BR.po M locale/po/grasswxpy_ro.po M locale/po/grasswxpy_ru.po M locale/po/grasswxpy_si.po M locale/po/grasswxpy_sl.po M locale/po/grasswxpy_sv.po M locale/po/grasswxpy_ta.po M locale/po/grasswxpy_th.po M locale/po/grasswxpy_tr.po M locale/po/grasswxpy_uk.po M locale/po/grasswxpy_vi.po M locale/po/grasswxpy_zh.po M locale/po/grasswxpy_zh_Hant.po Log Message: ----------- Translations update from OSGeo Weblate (#7867) Commit: 5ce408799f98f0c021f4f78a911a05f46f63e217 https://github.com/OSGeo/grass/commit/5ce408799f98f0c021f4f78a911a05f46f63e217 Author: echoix <27212526+echoix at users.noreply.github.com> Date: 2026-08-29 (Sat, 29 Aug 2026) Changed paths: R config.guess Log Message: ----------- config.guess + config.sub: updated from http://git.savannah.gnu.org/cgit/config.git/plain/ Compare: https://github.com/OSGeo/grass/compare/8f39c47c80be...5ce408799f98 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 29 11:49:50 2026 From: noreply at github.com (=?UTF-8?B?RWRvdWFyZCBDaG9pbmnDqHJl?=) Date: Sat, 29 Aug 2026 11:49:50 -0700 Subject: [GRASS-git] [OSGeo/grass] 7e6f2b: locale: Update translation files Message-ID: Branch: refs/heads/periodic/update-i18n-33269105486 Home: https://github.com/OSGeo/grass Commit: 7e6f2b7fd557d1621f88d8abed7f60f6d7d9db23 https://github.com/OSGeo/grass/commit/7e6f2b7fd557d1621f88d8abed7f60f6d7d9db23 Author: echoix <27212526+echoix at users.noreply.github.com> Date: 2026-08-29 (Sat, 29 Aug 2026) Changed paths: M locale/templates/grasslibs.pot M locale/templates/grassmods.pot M locale/templates/grasswxpy.pot Log Message: ----------- locale: Update translation files To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 29 12:00:54 2026 From: noreply at github.com (=?UTF-8?B?RWRvdWFyZCBDaG9pbmnDqHJl?=) Date: Sat, 29 Aug 2026 12:00:54 -0700 Subject: [GRASS-git] [OSGeo/grass] Message-ID: Branch: refs/heads/periodic/update-configure Home: https://github.com/OSGeo/grass To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 29 12:02:57 2026 From: noreply at github.com (github-actions[bot]) Date: Sat, 29 Aug 2026 12:02:57 -0700 Subject: [GRASS-git] [OSGeo/grass] 6874d1: locale: Update translation files (124) (#7870) Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 6874d10c01b2ae4fa10dcd57c47d91f6a20e983b https://github.com/OSGeo/grass/commit/6874d10c01b2ae4fa10dcd57c47d91f6a20e983b Author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Date: 2026-08-29 (Sat, 29 Aug 2026) Changed paths: M locale/templates/grasslibs.pot M locale/templates/grassmods.pot M locale/templates/grasswxpy.pot Log Message: ----------- locale: Update translation files (124) (#7870) To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 29 12:02:59 2026 From: noreply at github.com (=?UTF-8?B?RWRvdWFyZCBDaG9pbmnDqHJl?=) Date: Sat, 29 Aug 2026 12:02:59 -0700 Subject: [GRASS-git] [OSGeo/grass] Message-ID: Branch: refs/heads/periodic/update-i18n-33269105486 Home: https://github.com/OSGeo/grass To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Sat Aug 29 12:27:04 2026 From: noreply at github.com (Stefan Blumentrath) Date: Sat, 29 Aug 2026 12:27:04 -0700 Subject: [GRASS-git] [OSGeo/grass] 6b1ebb: r.out.gdal: increase limit for the number of overv... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 6b1ebbe6c939c93f0bf0716c516434c8d5bd14f5 https://github.com/OSGeo/grass/commit/6b1ebbe6c939c93f0bf0716c516434c8d5bd14f5 Author: Stefan Blumentrath Date: 2026-08-29 (Sat, 29 Aug 2026) Changed paths: M .github/workflows/apt.txt M .github/workflows/osgeo4w.yml M .github/workflows/pytest.yml M raster/r.out.gdal/main.c M raster/r.out.gdal/tests/test_r_out_gdal.py Log Message: ----------- r.out.gdal: increase limit for the number of overviews (#7865) * allow larger number of overviews * add multi overview test * add GDAL python-bindings as test dependency * Match GDALs overview limit To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Mon Aug 31 08:09:29 2026 From: noreply at github.com (Anna Petrasova) Date: Mon, 31 Aug 2026 08:09:29 -0700 Subject: [GRASS-git] [OSGeo/grass] 1191c2: gui: add new datasets (Raleigh, NC and Flagstaff, ... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass Commit: 1191c27919c42a063c34f4a52a2d3a1b5f6a258a https://github.com/OSGeo/grass/commit/1191c27919c42a063c34f4a52a2d3a1b5f6a258a Author: Anna Petrasova Date: 2026-08-31 (Mon, 31 Aug 2026) Changed paths: M gui/wxpython/startup/locdownload.py Log Message: ----------- gui: add new datasets (Raleigh, NC and Flagstaff, AZ) for download (#7866) This adds to the GUI download list two new GRASS projects (sample datasets): - Raleigh, NC - New version of the NC dataset. It's closer to the basic version, but the idea is it will eventually replace the NC datasets in documentation/tutorials. - Flagstaff, AZ - Developed by Michael Barton (@cmbarton). Uses the same names, so the tutorials that were developed can be run with both of these datasets. Tutorials using it are already online. Also related is this tutorial: https://github.com/OSGeo/grass-tutorials/pull/144 that describes how to create a dataset like that (focused on US data). Unrelated change: Natural Earth dataset moved closer to the top, since it is likely more relevant than the others. To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Mon Aug 31 17:13:21 2026 From: noreply at github.com (renovate[bot]) Date: Mon, 31 Aug 2026 17:13:21 -0700 Subject: [GRASS-git] [OSGeo/grass-website] 2ba5c0: Update nginx Docker tag to v1.31.4 (#704) Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass-website Commit: 2ba5c0384375645c5dedf754af835fda660d2a85 https://github.com/OSGeo/grass-website/commit/2ba5c0384375645c5dedf754af835fda660d2a85 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-31 (Mon, 31 Aug 2026) Changed paths: M docker-compose.yml Log Message: ----------- Update nginx Docker tag to v1.31.4 (#704) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Mon Aug 31 17:14:16 2026 From: noreply at github.com (renovate[bot]) Date: Mon, 31 Aug 2026 17:14:16 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/heads/renovate/nginx-1.x Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Mon Aug 31 17:14:52 2026 From: noreply at github.com (github-actions[bot]) Date: Mon, 31 Aug 2026 17:14:52 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/tags/site-20260901-001419-2ba5c03 Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Mon Aug 31 17:14:56 2026 From: noreply at github.com (github-actions[bot]) Date: Mon, 31 Aug 2026 17:14:56 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/tags/site-20260803-200345-315726e Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Mon Aug 31 19:02:39 2026 From: noreply at github.com (renovate[bot]) Date: Mon, 31 Aug 2026 19:02:39 -0700 Subject: [GRASS-git] [OSGeo/grass] dbcea6: CI(deps): Update debian:13.6-slim Docker digest to... Message-ID: Branch: refs/heads/renovate/main-debian-13.6-slim Home: https://github.com/OSGeo/grass Commit: dbcea6e0f395384ac8af2497a59b8e49efdeacb5 https://github.com/OSGeo/grass/commit/dbcea6e0f395384ac8af2497a59b8e49efdeacb5 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-09-01 (Tue, 01 Sep 2026) Changed paths: M docker/debian/Dockerfile Log Message: ----------- CI(deps): Update debian:13.6-slim Docker digest to d7e1218 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Mon Aug 31 19:02:46 2026 From: noreply at github.com (renovate[bot]) Date: Mon, 31 Aug 2026 19:02:46 -0700 Subject: [GRASS-git] [OSGeo/grass] 97b1ca: CI(deps): Update rui314/setup-mold digest to 7e4f20a Message-ID: Branch: refs/heads/renovate/main-rui314-setup-mold-digest Home: https://github.com/OSGeo/grass Commit: 97b1ca9f70c33afe483b421e1a9eb3045f3346b0 https://github.com/OSGeo/grass/commit/97b1ca9f70c33afe483b421e1a9eb3045f3346b0 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-09-01 (Tue, 01 Sep 2026) Changed paths: M .github/workflows/codeql-analysis.yml M .github/workflows/documentation.yml M .github/workflows/pytest.yml M .github/workflows/python-code-quality.yml Log Message: ----------- CI(deps): Update rui314/setup-mold digest to 7e4f20a To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications From noreply at github.com Mon Aug 31 19:21:02 2026 From: noreply at github.com (renovate[bot]) Date: Mon, 31 Aug 2026 19:21:02 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] 42c9cc: CI(deps): Update actions/checkout action to v7.0.1 Message-ID: Branch: refs/heads/renovate/actions-checkout-7.x Home: https://github.com/OSGeo/grass-addons Commit: 42c9cc688757ce90434c888491c14c195a47da27 https://github.com/OSGeo/grass-addons/commit/42c9cc688757ce90434c888491c14c195a47da27 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-09-01 (Tue, 01 Sep 2026) Changed paths: M .github/workflows/ci-windows.yml Log Message: ----------- CI(deps): Update actions/checkout action to v7.0.1 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Mon Aug 31 19:21:07 2026 From: noreply at github.com (renovate[bot]) Date: Mon, 31 Aug 2026 19:21:07 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] 19b900: CI(deps): Update hendrikmuhs/ccache-action action ... Message-ID: Branch: refs/heads/renovate/hendrikmuhs-ccache-action-1.x Home: https://github.com/OSGeo/grass-addons Commit: 19b9002e7bf29cbf3747acf721337896476b0f41 https://github.com/OSGeo/grass-addons/commit/19b9002e7bf29cbf3747acf721337896476b0f41 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-09-01 (Tue, 01 Sep 2026) Changed paths: M .github/workflows/ci.yml Log Message: ----------- CI(deps): Update hendrikmuhs/ccache-action action to v1.2.24 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Mon Aug 31 19:21:15 2026 From: noreply at github.com (renovate[bot]) Date: Mon, 31 Aug 2026 19:21:15 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] 9bccb4: CI(deps): Update biome to v2.5.11 Message-ID: Branch: refs/heads/renovate/biome Home: https://github.com/OSGeo/grass-addons Commit: 9bccb42d9f70e62215b3938959ad0da5127766c5 https://github.com/OSGeo/grass-addons/commit/9bccb42d9f70e62215b3938959ad0da5127766c5 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-09-01 (Tue, 01 Sep 2026) Changed paths: M .pre-commit-config.yaml M biome.jsonc Log Message: ----------- CI(deps): Update biome to v2.5.11 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Mon Aug 31 19:21:23 2026 From: noreply at github.com (renovate[bot]) Date: Mon, 31 Aug 2026 19:21:23 -0700 Subject: [GRASS-git] [OSGeo/grass-addons] e5d461: CI(deps): Update ruff to v0.16.5 Message-ID: Branch: refs/heads/renovate/ruff Home: https://github.com/OSGeo/grass-addons Commit: e5d4615e4d5b38388fd9faeaa442a10342581fdc https://github.com/OSGeo/grass-addons/commit/e5d4615e4d5b38388fd9faeaa442a10342581fdc Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-09-01 (Tue, 01 Sep 2026) Changed paths: M .github/workflows/linting.yml M .pre-commit-config.yaml Log Message: ----------- CI(deps): Update ruff to v0.16.5 To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-addons/settings/notifications From noreply at github.com Mon Aug 31 20:30:11 2026 From: noreply at github.com (Anna Petrasova) Date: Mon, 31 Aug 2026 20:30:11 -0700 Subject: [GRASS-git] [OSGeo/grass-website] a0ee56: data: Add new sample datasets (#712) Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass-website Commit: a0ee5688c950305f92d47e1053634f0dfc88c9fa https://github.com/OSGeo/grass-website/commit/a0ee5688c950305f92d47e1053634f0dfc88c9fa Author: Anna Petrasova Date: 2026-08-31 (Mon, 31 Aug 2026) Changed paths: M content/download/data.en.md Log Message: ----------- data: Add new sample datasets (#712) This adds the new Raleigh (NC) and Flagstaff (AZ) datasets and reorganizes the full and basic NC and Spearfish under legacy datasets preserving the NC link. The transition to the new dataset in manual pages still needs to be done, but the download page is now up to date with GUI. A new mention of g.download.project is included and Quick link heading is removed from the top of the file (while the links are kept). To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Mon Aug 31 20:32:18 2026 From: noreply at github.com (github-actions[bot]) Date: Mon, 31 Aug 2026 20:32:18 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/tags/site-20260901-033143-a0ee568 Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Mon Aug 31 20:32:20 2026 From: noreply at github.com (github-actions[bot]) Date: Mon, 31 Aug 2026 20:32:20 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/tags/site-20260804-001014-aefb2b3 Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Mon Aug 31 20:42:26 2026 From: noreply at github.com (Corey White) Date: Mon, 31 Aug 2026 20:42:26 -0700 Subject: [GRASS-git] [OSGeo/grass-website] db052c: learn: Update learning page content and redesign (... Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass-website Commit: db052c77ee8c4bbf2e053ec60ab693c2150afb5b https://github.com/OSGeo/grass-website/commit/db052c77ee8c4bbf2e053ec60ab693c2150afb5b Author: Corey White Date: 2026-08-31 (Mon, 31 Aug 2026) Changed paths: M content/learn/_index.en.md A static/images/other/getting_started_grass_jupyternotebook.png M themes/grass/assets/sass/_styles.scss A themes/grass/assets/sass/styles/_learn.scss M themes/grass/layouts/learn/list.html Log Message: ----------- learn: Update learning page content and redesign (#711) * Add new resources and prefer project-maintained resources on the Learn page (linked from the index). * Replace the tile list with "Start here / Go deeper" resource cards (tutorials, YouTube channel, manuals, wiki, books) and a featured row (at this point: Jupyter on Windows tutorial, Python API webinar, key concepts). * Embed a GRASS channel playlist as the intro video (currently the only playlist with project-uploaded videos). * For featured row, use combo of embedded videos (for a preview), images, and icons. * Link the Binder listing of the repository notebooks instead (temporary until a non-Binder list exists, wiki is not as update to date, grass-tutorials don't have a list or category). Related to #678. --------- Co-authored-by: Vaclav Petras To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Mon Aug 31 20:43:38 2026 From: noreply at github.com (github-actions[bot]) Date: Mon, 31 Aug 2026 20:43:38 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/tags/site-20260901-034305-db052c7 Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Mon Aug 31 20:43:40 2026 From: noreply at github.com (github-actions[bot]) Date: Mon, 31 Aug 2026 20:43:40 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/tags/site-20260804-204019-76d9fe4 Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Mon Aug 31 21:25:53 2026 From: noreply at github.com (Corey White) Date: Mon, 31 Aug 2026 21:25:53 -0700 Subject: [GRASS-git] [OSGeo/grass-website] c323ad: News: add draft community meeting report (#665) Message-ID: Branch: refs/heads/renovate/sass-dart-sass-1.x Home: https://github.com/OSGeo/grass-website Commit: c323ad1bf5d43d79b81c4c5416b5271872a89e38 https://github.com/OSGeo/grass-website/commit/c323ad1bf5d43d79b81c4c5416b5271872a89e38 Author: Veronica Andreo Date: 2026-08-21 (Fri, 21 Aug 2026) Changed paths: A content/news/2026_07_20_Report_Community_Meeting_San_Michele_2026.md A static/images/news/grass_community_meeting_20260715.webp A static/images/news/grass_community_meeting_20260716.webp A static/images/news/grass_community_meeting_20260717.webp M themes/grass/layouts/index.html Log Message: ----------- News: add draft community meeting report (#665) Commit: 80b209bfcd571e78b53643b33be4d2e586e73ee8 https://github.com/OSGeo/grass-website/commit/80b209bfcd571e78b53643b33be4d2e586e73ee8 Author: Anna Petrasova Date: 2026-08-22 (Sat, 22 Aug 2026) Changed paths: M themes/grass/layouts/index.html Log Message: ----------- fix link from carousel (#708) Commit: e6b4a3813cf0c46a1e280e4eb865ee339ccb9b2e https://github.com/OSGeo/grass-website/commit/e6b4a3813cf0c46a1e280e4eb865ee339ccb9b2e Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-28 (Fri, 28 Aug 2026) Changed paths: M package-lock.json Log Message: ----------- Update dependency @highlightjs/cdn-assets to v11.12.0 (#701) Commit: 2ba5c0384375645c5dedf754af835fda660d2a85 https://github.com/OSGeo/grass-website/commit/2ba5c0384375645c5dedf754af835fda660d2a85 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-08-31 (Mon, 31 Aug 2026) Changed paths: M docker-compose.yml Log Message: ----------- Update nginx Docker tag to v1.31.4 (#704) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Commit: a0ee5688c950305f92d47e1053634f0dfc88c9fa https://github.com/OSGeo/grass-website/commit/a0ee5688c950305f92d47e1053634f0dfc88c9fa Author: Anna Petrasova Date: 2026-08-31 (Mon, 31 Aug 2026) Changed paths: M content/download/data.en.md Log Message: ----------- data: Add new sample datasets (#712) This adds the new Raleigh (NC) and Flagstaff (AZ) datasets and reorganizes the full and basic NC and Spearfish under legacy datasets preserving the NC link. The transition to the new dataset in manual pages still needs to be done, but the download page is now up to date with GUI. A new mention of g.download.project is included and Quick link heading is removed from the top of the file (while the links are kept). Commit: db052c77ee8c4bbf2e053ec60ab693c2150afb5b https://github.com/OSGeo/grass-website/commit/db052c77ee8c4bbf2e053ec60ab693c2150afb5b Author: Corey White Date: 2026-08-31 (Mon, 31 Aug 2026) Changed paths: M content/learn/_index.en.md A static/images/other/getting_started_grass_jupyternotebook.png M themes/grass/assets/sass/_styles.scss A themes/grass/assets/sass/styles/_learn.scss M themes/grass/layouts/learn/list.html Log Message: ----------- learn: Update learning page content and redesign (#711) * Add new resources and prefer project-maintained resources on the Learn page (linked from the index). * Replace the tile list with "Start here / Go deeper" resource cards (tutorials, YouTube channel, manuals, wiki, books) and a featured row (at this point: Jupyter on Windows tutorial, Python API webinar, key concepts). * Embed a GRASS channel playlist as the intro video (currently the only playlist with project-uploaded videos). * For featured row, use combo of embedded videos (for a preview), images, and icons. * Link the Binder listing of the repository notebooks instead (temporary until a non-Binder list exists, wiki is not as update to date, grass-tutorials don't have a list or category). Related to #678. --------- Co-authored-by: Vaclav Petras Commit: 921d385e594b5c963ff8facd5cdbbe8140464be9 https://github.com/OSGeo/grass-website/commit/921d385e594b5c963ff8facd5cdbbe8140464be9 Author: Corey White Date: 2026-09-01 (Tue, 01 Sep 2026) Changed paths: M content/download/data.en.md M content/learn/_index.en.md A content/news/2026_07_20_Report_Community_Meeting_San_Michele_2026.md M docker-compose.yml M package-lock.json A static/images/news/grass_community_meeting_20260715.webp A static/images/news/grass_community_meeting_20260716.webp A static/images/news/grass_community_meeting_20260717.webp A static/images/other/getting_started_grass_jupyternotebook.png M themes/grass/assets/sass/_styles.scss A themes/grass/assets/sass/styles/_learn.scss M themes/grass/layouts/index.html M themes/grass/layouts/learn/list.html Log Message: ----------- Merge branch 'main' into renovate/sass-dart-sass-1.x Compare: https://github.com/OSGeo/grass-website/compare/ed4ab32c9811...921d385e594b To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Mon Aug 31 21:27:03 2026 From: noreply at github.com (renovate[bot]) Date: Mon, 31 Aug 2026 21:27:03 -0700 Subject: [GRASS-git] [OSGeo/grass-website] a2f454: Update dependency sass/dart-sass to v1.103.1 (#705) Message-ID: Branch: refs/heads/main Home: https://github.com/OSGeo/grass-website Commit: a2f4543624ca7074bb01d97d30bbbd21b216afe1 https://github.com/OSGeo/grass-website/commit/a2f4543624ca7074bb01d97d30bbbd21b216afe1 Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Date: 2026-09-01 (Tue, 01 Sep 2026) Changed paths: M .github/workflows/build-production-site.yml Log Message: ----------- Update dependency sass/dart-sass to v1.103.1 (#705) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Corey White To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Mon Aug 31 21:28:27 2026 From: noreply at github.com (github-actions[bot]) Date: Mon, 31 Aug 2026 21:28:27 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/tags/site-20260901-042754-a2f4543 Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications From noreply at github.com Mon Aug 31 21:28:31 2026 From: noreply at github.com (github-actions[bot]) Date: Mon, 31 Aug 2026 21:28:31 -0700 Subject: [GRASS-git] [OSGeo/grass-website] Message-ID: Branch: refs/tags/site-20260806-153625-fb58cb4 Home: https://github.com/OSGeo/grass-website To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications