[GRASS-git] [OSGeo/grass] 8ef5a0: docs: convert Python API docs to Sphinx Material t...

Edouard Choinière noreply at github.com
Tue Jun 10 20:59:29 PDT 2025


  Branch: refs/heads/revert-5670-ci-gcc-ubuntu
  Home:   https://github.com/OSGeo/grass
  Commit: 8ef5a0646e31b9fb2f167fa677ca7d1b84f11f70
      https://github.com/OSGeo/grass/commit/8ef5a0646e31b9fb2f167fa677ca7d1b84f11f70
  Author: Corey White <smortopahri at gmail.com>
  Date:   2025-05-28 (Wed, 28 May 2025)

  Changed paths:
    M .github/workflows/documentation.yml
    M python/grass/docs/Makefile
    A python/grass/docs/README.md
    A python/grass/docs/_static/favicon.ico
    A python/grass/docs/_static/grass_logo.png
    M python/grass/docs/_static/grass_logo.svg
    M python/grass/docs/_static/pygrass.css
    A python/grass/docs/_templates/header.html
    A python/grass/docs/_templates/layout.html
    M python/grass/docs/_templates/layout.html.template
    A python/grass/docs/_templates/sphinx/apidoc/package.rst.jinja
    M python/grass/docs/conf.py
    A python/grass/docs/requirements.txt
    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_modules.rst
    M python/grass/docs/src/script_intro.rst
    M python/grass/docs/src/temporal_framework.rst

  Log Message:
  -----------
  docs: convert Python API docs to Sphinx Material theme (#5617)


  Commit: 56c55e8a3e38d34ab0e79513ab925ae07c8fee24
      https://github.com/OSGeo/grass/commit/56c55e8a3e38d34ab0e79513ab925ae07c8fee24
  Author: Māris Nartišs <maris.gis at gmail.com>
  Date:   2025-05-29 (Thu, 29 May 2025)

  Changed paths:
    A raster/r.slope.aspect/testsuite/data/gdal_aspect.ascii
    R raster/r.slope.aspect/testsuite/data/gdal_aspect.grd
    R raster/r.slope.aspect/testsuite/data/gdal_aspect.grd.aux.xml
    A raster/r.slope.aspect/testsuite/data/gdal_slope.ascii
    R raster/r.slope.aspect/testsuite/data/gdal_slope.grd
    R raster/r.slope.aspect/testsuite/data/gdal_slope.grd.aux.xml
    M raster/r.slope.aspect/testsuite/test_r_slope_aspect.py

  Log Message:
  -----------
  r.slope.aspect: replace GSAG test data with AAGRID (#5792)

GDAL >=3.11.0 does not support GSAG any more. This PR just replaces GSAG files with ones converted to AAGRID.

Fixes bug #5787


  Commit: df424d7c100ccd2ae62cab1a32379fb6aa6d2dbc
      https://github.com/OSGeo/grass/commit/df424d7c100ccd2ae62cab1a32379fb6aa6d2dbc
  Author: Nishant Bansal <nishant.bansal.282003 at gmail.com>
  Date:   2025-05-30 (Fri, 30 May 2025)

  Changed paths:
    M general/g.region/g.region.md

  Log Message:
  -----------
  g.region: Add Python example (#5785)


  Commit: ef492230facaffbdcb2d58473a63fd6a92d68d0f
      https://github.com/OSGeo/grass/commit/ef492230facaffbdcb2d58473a63fd6a92d68d0f
  Author: Corey White <smortopahri at gmail.com>
  Date:   2025-05-30 (Fri, 30 May 2025)

  Changed paths:
    M raster/r.sim/simlib/input.c
    M raster/r.sim/simlib/output.c
    M raster/r.sim/simlib/simlib.h

  Log Message:
  -----------
  r.sim.water: Added mean Manning's to output history (#5788)


  Commit: d7e7f8d4fd06c54c43787d8c33170fd391965903
      https://github.com/OSGeo/grass/commit/d7e7f8d4fd06c54c43787d8c33170fd391965903
  Author: Edouard Choinière <27212526+echoix at users.noreply.github.com>
  Date:   2025-05-30 (Fri, 30 May 2025)

  Changed paths:
    M raster/r.slope.aspect/testsuite/test_r_slope_aspect.py

  Log Message:
  -----------
  r.slope.aspect: Increase precision of values compared in tests (#5796)

Follow-up from #5792.

This PR uses a smaller delta for the differences accepted between actual and reference values. The current tests were quite loose, and would probably not help us catch regressions unless the differences were huge. Since it is mostly a golden test, we want to know when anything changes.

* Increase r.slope.aspect precision

* Add more digits to the reference mean values of test_slope

* Increase r.slope.aspect precision to 1e-14, except where results fail

* Add note to use a smaller precision threshold or self.precision

* Apply suggestions from code review


  Commit: c62e2d688bc8404b29fa874d822c5a72baf20701
      https://github.com/OSGeo/grass/commit/c62e2d688bc8404b29fa874d822c5a72baf20701
  Author: Nishant Bansal <nishant.bansal.282003 at gmail.com>
  Date:   2025-05-30 (Fri, 30 May 2025)

  Changed paths:
    A general/g.mapset/tests/conftest.py
    A general/g.mapset/tests/g_mapset_test.py

  Log Message:
  -----------
  g.mapset: Add test file (#5775)


  Commit: 193579448e84c26e98f04e97918b6c61d5a2adff
      https://github.com/OSGeo/grass/commit/193579448e84c26e98f04e97918b6c61d5a2adff
  Author: Nishant Bansal <nishant.bansal.282003 at gmail.com>
  Date:   2025-05-30 (Fri, 30 May 2025)

  Changed paths:
    M imagery/i.albedo/testsuite/test_i_albedo.py
    M imagery/i.aster.toar/testsuite/test_i_aster_toar.py
    M imagery/i.eb.eta/testsuite/test_i_eb_eta.py
    M imagery/i.evapo.mh/testsuite/test_i_evapo_mh.py
    M imagery/i.evapo.pm/testsuite/test_i_evapo_pm.py
    M imagery/i.evapo.pt/testsuite/test_i_evapo_pt.py
    M imagery/i.evapo.time/testsuite/test_i_evapo_time.py
    M imagery/i.rgb.his/testsuite/test_i_rgb_his.py
    M imagery/i.topo.corr/testsuite/test_i_topo_corr.py
    M imagery/i.zc/testsuite/test_i_zc.py
    M python/grass/script/tests/grass_script_raster_mask_test.py
    M raster/r.random.surface/testsuite/test_r_random_surface.py
    M raster/r.univar/r.univar.html
    M raster/r.univar/r.univar.md
    M raster/r.univar/stats.c
    M raster/r.univar/testsuite/test_r_univar.py

  Log Message:
  -----------
  r.univar: Fix JSON structure (#5688)


  Commit: 5a903f53c7951abaa93b9d2a1534556223750eaa
      https://github.com/OSGeo/grass/commit/5a903f53c7951abaa93b9d2a1534556223750eaa
  Author: Huidae Cho <grass4u at gmail.com>
  Date:   2025-05-30 (Fri, 30 May 2025)

  Changed paths:
    M general/g.version/main.c
    M include/grass/iostream/ami_stream.h
    M raster/r.univar/stats.c

  Log Message:
  -----------
  build: Fix %lu *printf format string to %zu for size_t (#5799)

Build: Fix %lu *printf format string to %zu for size_t


  Commit: d28b76c7a6b54acfedce079bd3aaef0797ed3d0b
      https://github.com/OSGeo/grass/commit/d28b76c7a6b54acfedce079bd3aaef0797ed3d0b
  Author: Jayneel Shah <80264736+jayneel-shah18 at users.noreply.github.com>
  Date:   2025-05-31 (Sat, 31 May 2025)

  Changed paths:
    A imagery/i.group/testsuite/test_i_group.py

  Log Message:
  -----------
  i.group: add tests (#5798)


  Commit: 33df2f11d49b5e9341593541047b9c25c134f9ff
      https://github.com/OSGeo/grass/commit/33df2f11d49b5e9341593541047b9c25c134f9ff
  Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
  Date:   2025-05-31 (Sat, 31 May 2025)

  Changed paths:
    M .github/workflows/docker.yml

  Log Message:
  -----------
  CI(deps): Update docker/build-push-action action to v6.18.0 (#5805)


  Commit: f95c374b189c9f5cf58a1d85c67c6a5192a6f52c
      https://github.com/OSGeo/grass/commit/f95c374b189c9f5cf58a1d85c67c6a5192a6f52c
  Author: Martin Landa <landa.martin at gmail.com>
  Date:   2025-05-31 (Sat, 31 May 2025)

  Changed paths:
    M gui/wxpython/gui_core/forms.py
    M gui/wxpython/gui_core/gselect.py

  Log Message:
  -----------
  GUI: do not remove parameter value on dialog update event (#5760)

Currently when `map/input` option is changed than also all depending widgets (`layer`, `columns`, `where`) are updated. It includes also setting value to an empty string.

## Steps to reproduce

1. Launch ` v.db.select map=schools where="TAG = '001'" --ui`
2. Change `map` option

-> `where` option is removed


This PR changes current behaviour 

-> `where` option is kept


## Background reasons

- Keep decision to remove or update eg. `where` option on the user
- User may have multiple maps with the same column. When switching between maps, a `where` statement must be set again from the scratch (which is not desired in this case)
- Solves #5759


* forms: do not remove parameter value on update

* ColumnSelect: do not set default value on update


  Commit: 521bd5bfa0bb3644fea9a925a66ba7d241cf6743
      https://github.com/OSGeo/grass/commit/521bd5bfa0bb3644fea9a925a66ba7d241cf6743
  Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
  Date:   2025-05-31 (Sat, 31 May 2025)

  Changed paths:
    M .github/workflows/python-code-quality.yml
    M .pre-commit-config.yaml
    M temporal/t.rast.what/t.rast.what.py

  Log Message:
  -----------
  CI(deps): Update ruff to v0.11.12 (#5802)


  Commit: 3a04ada4b28957d2385ac7164af202e7bfbb2524
      https://github.com/OSGeo/grass/commit/3a04ada4b28957d2385ac7164af202e7bfbb2524
  Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
  Date:   2025-05-31 (Sat, 31 May 2025)

  Changed paths:
    M python/grass/docs/requirements.txt

  Log Message:
  -----------
  CI(deps): Update dependency sphinx to v8.2.3 (#5804)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>


  Commit: 5ab93f2fd0fce45689c0d041d80b10a28ca1ca66
      https://github.com/OSGeo/grass/commit/5ab93f2fd0fce45689c0d041d80b10a28ca1ca66
  Author: Edouard Choinière <27212526+echoix at users.noreply.github.com>
  Date:   2025-06-01 (Sun, 01 Jun 2025)

  Changed paths:
    M gui/wxpython/nviz/wxnviz.py
    M python/grass/pygrass/vector/geometry.py
    M python/grass/script/core.py
    M python/grass/script/utils.py
    M python/grass/temporal/core.py

  Log Message:
  -----------
  docs: Fix reStructuredText admonitions syntax (notes, warnings, error boxes) (#5797)

* Fix warning formatting in docstring

* Fix warning admonition syntax

* Fix note admonition syntax

* Fix todo admonition syntax


  Commit: 578a8edc52f87b7cdf7a8b850480557277831452
      https://github.com/OSGeo/grass/commit/578a8edc52f87b7cdf7a8b850480557277831452
  Author: Nishant Bansal <nishant.bansal.282003 at gmail.com>
  Date:   2025-06-02 (Mon, 02 Jun 2025)

  Changed paths:
    M general/CMakeLists.txt
    M general/g.mapset/Makefile
    M general/g.mapset/g.mapset.md
    M general/g.mapset/main.c
    M general/g.mapset/tests/conftest.py
    M general/g.mapset/tests/g_mapset_test.py

  Log Message:
  -----------
  g.mapset: Add JSON support (#5810)


  Commit: 7657dbc8fe1f52d6faeeea1cb62b2992e8cc1f9b
      https://github.com/OSGeo/grass/commit/7657dbc8fe1f52d6faeeea1cb62b2992e8cc1f9b
  Author: Nishant Bansal <nishant.bansal.282003 at gmail.com>
  Date:   2025-06-02 (Mon, 02 Jun 2025)

  Changed paths:
    M raster/r.proj/testsuite/test_rproj.py
    A raster/r.what.color/testsuite/test_r_what_color.py

  Log Message:
  -----------
  r.what.color: Add test file (#5773)

Also removes unnecessary code from r.proj test


  Commit: 18f16a051a42b493730e556e9b6d5f23d7277b01
      https://github.com/OSGeo/grass/commit/18f16a051a42b493730e556e9b6d5f23d7277b01
  Author: Edouard Choinière <27212526+echoix at users.noreply.github.com>
  Date:   2025-06-02 (Mon, 02 Jun 2025)

  Changed paths:
    M .github/workflows/test_thorough.bat

  Log Message:
  -----------
  CI(OSGeo4W): Bump test success threshold to 97.3% (#5800)


  Commit: 9445cc486f554ebf8afcb6e8cb609d6c2bdcb43b
      https://github.com/OSGeo/grass/commit/9445cc486f554ebf8afcb6e8cb609d6c2bdcb43b
  Author: Edouard Choinière <27212526+echoix at users.noreply.github.com>
  Date:   2025-06-02 (Mon, 02 Jun 2025)

  Changed paths:
    M python/grass/jupyter/utils.py
    M python/grass/script/db.py
    M python/grass/temporal/abstract_dataset.py
    M python/grass/temporal/abstract_map_dataset.py
    M python/grass/temporal/abstract_space_time_dataset.py
    M python/grass/temporal/base.py
    M python/grass/temporal/core.py
    M python/grass/temporal/metadata.py
    M python/grass/temporal/space_time_datasets.py
    M python/grass/temporal/spatial_extent.py
    M python/grass/temporal/temporal_algebra.py
    M python/grass/temporal/temporal_extent.py

  Log Message:
  -----------
  docs: Fix docstring syntax for return values (#5812)

* docs: Fix formatting of return values in python/grass/temporal/metadata.py

* docs: Fix formatting of return field

* docs: Fix param or return syntax in docstring


  Commit: 7fd42d63a7d1928a7cb8faf7f32e20116facad82
      https://github.com/OSGeo/grass/commit/7fd42d63a7d1928a7cb8faf7f32e20116facad82
  Author: Anna Petrasova <kratochanna at gmail.com>
  Date:   2025-06-03 (Tue, 03 Jun 2025)

  Changed paths:
    M doc/development/style_guide.md
    M doc/examples/notebooks/parallelization_tutorial.ipynb
    M python/grass/script/__init__.py
    M python/grass/script/raster.py
    A python/grass/script/tests/grass_script_raster_region_test.py

  Log Message:
  -----------
  grass.script: new RegionManager context manager (#5628)

Similarly to MaskManager, this adds a context manager for temporary changes of computational region.


  Commit: 539fcaded96338d3a962f1e8281add4011017f88
      https://github.com/OSGeo/grass/commit/539fcaded96338d3a962f1e8281add4011017f88
  Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
  Date:   2025-06-03 (Tue, 03 Jun 2025)

  Changed paths:
    M flake.lock

  Log Message:
  -----------
  CI(deps): Lock file maintenance (#5813)


  Commit: 9e409925132a46abf5f445dc9b9cd9308cf215b1
      https://github.com/OSGeo/grass/commit/9e409925132a46abf5f445dc9b9cd9308cf215b1
  Author: Rohan Dhamale <47937997+dvrohan at users.noreply.github.com>
  Date:   2025-06-03 (Tue, 03 Jun 2025)

  Changed paths:
    A raster/r.composite/tests/test_r_composite.py

  Log Message:
  -----------
  r.composite: Added test cases (#5811)


  Commit: 8d61b7477a89525cc2969c0f8186c0781547706c
      https://github.com/OSGeo/grass/commit/8d61b7477a89525cc2969c0f8186c0781547706c
  Author: Edouard Choinière <27212526+echoix at users.noreply.github.com>
  Date:   2025-06-03 (Tue, 03 Jun 2025)

  Changed paths:
    M python/grass/gunittest/case.py
    M python/grass/pydispatch/dispatcher.py
    M python/grass/pygrass/gis/region.py
    M python/grass/pygrass/messages/__init__.py
    M python/grass/pygrass/modules/interface/module.py
    M python/grass/pygrass/raster/segment.py
    M python/grass/pygrass/vector/geometry.py
    M python/grass/pygrass/vector/table.py
    M python/grass/script/db.py
    M python/grass/temporal/c_libraries_interface.py
    M scripts/g.extension/g.extension.py

  Log Message:
  -----------
  docs: Convert docstrings to use note and warning admonitions (#5820)

Makes use of admonitions for notes and warnings. I searched "note" and "warning" in .py files for candidates to better displaying the notes. I didn't find other candidates for "caution", "warn", "info".

* docs: Convert docstrings to use note admonitions

* docs: Replace html syntax in docstring of db_select() in python/grass/script/db.py

* docs: Fix missing second colon in admonitions in docstrings

* docs: Remove space between admonition and double colon

* docs: Use warning admonition in docstring for python/grass/pygrass/gis/region.py


  Commit: 9a5f08579e8b4edec826e286508a7c34999cc6b9
      https://github.com/OSGeo/grass/commit/9a5f08579e8b4edec826e286508a7c34999cc6b9
  Author: Edouard Choinière <27212526+echoix at users.noreply.github.com>
  Date:   2025-06-03 (Tue, 03 Jun 2025)

  Changed paths:
    M python/grass/pydispatch/saferef.py

  Log Message:
  -----------
  docs: Adapt docstrings of pydispatch.saferef for good-looking Sphinx rendering (#5819)

* docs: Enable generating docs for special and private members of pydispatch

* docs: Adapt pydispatch.saferef docstrings for sphinx documentation

* docs: Convert docstrings to use note admonitions in pydispatch.saferef

* Revert "docs: Enable generating docs for special and private members of pydispatch"


  Commit: ff882871c1502c06850fe8a5e36cb2c419752426
      https://github.com/OSGeo/grass/commit/ff882871c1502c06850fe8a5e36cb2c419752426
  Author: Edouard Choinière <27212526+echoix at users.noreply.github.com>
  Date:   2025-06-03 (Tue, 03 Jun 2025)

  Changed paths:
    M python/grass/jupyter/interactivemap.py
    M python/grass/pygrass/utils.py
    M python/grass/pygrass/vector/geometry.py
    M python/grass/temporal/abstract_space_time_dataset.py
    M python/grass/temporal/core.py
    M python/grass/temporal/spatio_temporal_relationships.py
    M python/grass/temporal/univar_statistics.py

  Log Message:
  -----------
  docs: Fixes issues in docstrings related to parameter list rendering (#5818)

* docs: Fix issue with `**kwargs` parameter entry

* docs: Fix formatting issue of python/grass/pygrass/utils.py create_test_stream_network_map()

* docs: Fix docstring formatting for DBConnection in python/grass/temporal/core.py

* docs: Fix docstring formatting for to_wtk() and to_wkb()

* docs: Fix docstring indent for count_temporal_topology_relationships()

* docs: Fix formatting of spatial_relation parameter's bullet list

* Fix lists in field list formatting in docstring

* docs: Fix ascii diagram formatting issue of python/grass/pygrass/utils.py create_test_stream_network_map()

* docs: Fix formatting issue of python/grass/pygrass/utils.py create_test_vector_map()

* docs: Fix formatting of code blocks for temporal sample methods

* docs: Fine-tune create_temporal_relation_sql_where_statement() docstring

* docs: Split code example into two blocks in create_temporal_relation_sql_where_statement() docstring


  Commit: d09fd15312f275494957df3b4c5a1d18a21ae1bd
      https://github.com/OSGeo/grass/commit/d09fd15312f275494957df3b4c5a1d18a21ae1bd
  Author: OSGeo Weblate <97247866+osgeoweblate at users.noreply.github.com>
  Date:   2025-06-03 (Tue, 03 Jun 2025)

  Changed paths:
    A locale/po/grasslibs_sv.po
    A locale/po/grassmods_sv.po
    A locale/po/grasswxpy_sv.po

  Log Message:
  -----------
  Translations update from OSGeo Weblate (#5825)

Added translation using Weblate (Swedish)

Added translation using Weblate (Swedish)

Added translation using Weblate (Swedish)

Co-authored-by: Weblate <noreply at weblate.org>
Co-authored-by: Huidae Cho <grass4u at gmail.com>
Co-authored-by: Regina Obe <robe at postgis.net>


  Commit: df7440145b3058cfe253f363634ab8b20f6bdae5
      https://github.com/OSGeo/grass/commit/df7440145b3058cfe253f363634ab8b20f6bdae5
  Author: Edouard Choinière <27212526+echoix at users.noreply.github.com>
  Date:   2025-06-03 (Tue, 03 Jun 2025)

  Changed paths:
    M python/grass/pygrass/modules/interface/module.py
    M python/grass/pygrass/rpc/__init__.py
    M python/grass/pygrass/rpc/base.py
    M python/grass/pygrass/vector/geometry.py
    M python/grass/temporal/abstract_dataset.py
    M python/grass/temporal/abstract_space_time_dataset.py
    M python/grass/temporal/base.py
    M python/grass/temporal/c_libraries_interface.py
    M python/grass/temporal/core.py
    M python/grass/temporal/datetime_math.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/space_time_datasets.py
    M python/grass/temporal/spatial_extent.py
    M python/grass/temporal/spatial_topology_dataset_connector.py
    M python/grass/temporal/spatio_temporal_relationships.py
    M python/grass/temporal/temporal_algebra.py
    M python/grass/temporal/temporal_extent.py
    M python/grass/temporal/temporal_granularity.py
    M python/grass/temporal/temporal_operator.py
    M python/grass/temporal/temporal_raster_algebra.py
    M python/grass/temporal/temporal_raster_base_algebra.py
    M python/grass/temporal/temporal_topology_dataset_connector.py
    M python/grass/temporal/temporal_vector_algebra.py

  Log Message:
  -----------
  docs: Fix indenting of code blocks in docstrings (#5827)

* docs: Unindent AbstractSpaceTimeDataset.set_initial_values() docstring

* docs: Fix docstring indent for SpatioTemporalTopologyBuilder

* docs: Fix docstring indenting/unindenting

* docs: Use pycon language instead of python for python console code blocks formatting

* docs: Use and format complex pycon language for python console code blocks

* docs: Use pycon language for python console code blocks (simple changes)

* docs: Format code-blocks using pycon in pygrass.vector.geometry

* docs: Format code blocks in MultiModule class of pygrass.modules.interface docstrings


  Commit: 91aeb47da90e184150986bd74637392f7088d837
      https://github.com/OSGeo/grass/commit/91aeb47da90e184150986bd74637392f7088d837
  Author: OSGeo Weblate <97247866+osgeoweblate at users.noreply.github.com>
  Date:   2025-06-04 (Wed, 04 Jun 2025)

  Changed paths:
    M locale/po/grasslibs_sv.po
    M locale/po/grassmods_sv.po
    M locale/po/grasswxpy_sv.po

  Log Message:
  -----------
  Translations update from OSGeo Weblate (#5829)


  Commit: 4f08307e85e87a8083fcc1d8f3e9371afa790903
      https://github.com/OSGeo/grass/commit/4f08307e85e87a8083fcc1d8f3e9371afa790903
  Author: Edouard Choinière <27212526+echoix at users.noreply.github.com>
  Date:   2025-06-03 (Tue, 03 Jun 2025)

  Changed paths:
    M python/grass/docs/src/script_intro.rst
    M python/grass/gunittest/testsuite/test_checkers.py
    M python/grass/imaging/images2avi.py
    M python/grass/pygrass/modules/interface/module.py
    M python/grass/pygrass/utils.py
    M python/grass/pygrass/vector/__init__.py
    M python/grass/pygrass/vector/geometry.py
    M python/grass/script/core.py
    M python/grass/temporal/abstract_map_dataset.py
    M python/grass/temporal/abstract_space_time_dataset.py
    M python/grass/temporal/base.py
    M python/grass/temporal/temporal_algebra.py
    M python/grass/temporal/temporal_operator.py
    M python/grass/temporal/temporal_raster_base_algebra.py
    M python/grass/temporal/temporal_vector_algebra.py

  Log Message:
  -----------
  docs: Fix unescaped substitutions and emphasis, various typos or simple issues (#5826)

* docs: Fix typo in docstring of python/grass/pygrass/utils.py findmaps()

* docs: Fix formatting issues of unescaped substitutions or emphasis

* docs: Fix formatting issue of bullet list of TemporalOperatorParser.parse()

* docs: Fix simple typos

* docs: Fix simple typo

* docs: Fix code block missing double colon

* docs: Fix space between double colon of a code block + change to pycon language

* docs: Fix list formatting for python/grass/imaging/images2avi.py writeAvi()

* docs: Unindent docstring for AbstractSpaceTimeDataset.register_map

* docs: Fix underline too short in script_intro.rst

* docs: Fix docstring formating for grass.script.core.tempname()

* docs: Hide c_read_next_line() and c_read_line() in python/grass/pygrass/vector/geometry.py

* docs: Use double backticks for inline code in pygrass.vector.geometry

* docs: Format args and kwargs param in gs.write_command

* docs: Fix type field-list in features_to_wkb_list() of pygrass.vector docstring

* docs: Fix python 2 code blocks in pygrass.modules.interface docstrings

* Apply ruff format

* Update geometry.py


  Commit: bfc4c25385e47a9f960fe6e59973792ec83ebc29
      https://github.com/OSGeo/grass/commit/bfc4c25385e47a9f960fe6e59973792ec83ebc29
  Author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
  Date:   2025-06-04 (Wed, 04 Jun 2025)

  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_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_CN.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_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_CN.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_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_CN.po
    M locale/templates/grasslibs.pot
    M locale/templates/grassmods.pot
    M locale/templates/grasswxpy.pot

  Log Message:
  -----------
  locale: Update translation files (#5831)


  Commit: 7cd2631711dbf5aa2a556385932c98c123c61250
      https://github.com/OSGeo/grass/commit/7cd2631711dbf5aa2a556385932c98c123c61250
  Author: Nishant Bansal <nishant.bansal.282003 at gmail.com>
  Date:   2025-06-04 (Wed, 04 Jun 2025)

  Changed paths:
    M include/grass/colors.h
    M include/grass/defs/colors.h
    M include/grass/defs/raster.h
    M include/grass/raster.h
    M lib/gis/color_str.c
    M lib/raster/json_color_out.c
    M raster/CMakeLists.txt
    M raster/r.category/local_proto.h
    M raster/r.colors.out/raster3d_main.c
    M raster/r.colors.out/raster_main.c
    M raster/r.what.color/Makefile
    M raster/r.what.color/main.c
    M raster/r.what.color/r.what.color.md
    M raster/r.what.color/testsuite/test_r_what_color.py
    M vector/v.colors.out/main.c

  Log Message:
  -----------
  r.what.color: Add JSON support (#5822)


  Commit: 3caa7c44060caa45b8c80b2b0b3356692d4b92d4
      https://github.com/OSGeo/grass/commit/3caa7c44060caa45b8c80b2b0b3356692d4b92d4
  Author: Edouard Choinière <27212526+echoix at users.noreply.github.com>
  Date:   2025-06-04 (Wed, 04 Jun 2025)

  Changed paths:
    M doc/python_intro.md
    M python/grass/docs/conf.py
    M python/grass/docs/src/temporal_framework.rst
    M python/grass/pygrass/modules/interface/module.py
    M python/grass/pygrass/vector/__init__.py
    M python/grass/pygrass/vector/find.py
    M python/grass/pygrass/vector/geometry.py
    M python/grass/script/core.py

  Log Message:
  -----------
  docs: Render todo boxes, other code blocks formatting and label syntax (#5836)

* docs: Fix link to style_guide.md

* docs: Enable output of TODO admonitions

* docs: Use TODO admonitions in pygrass.vector.geometry

* docs: Use TODO admonitions in python/grass/docs/src/temporal_framework.rst

* docs: Use double backticks for inline code in pygrass/modules/interface/module.py and grass.script.core

* docs: Format code blocks in pygrass.vector.find and pygrass.vector

* docs: Use references to methods and classes in pygrass.vector.find and pygrass.vector docstrings


  Commit: 240afa581b0ec79da75acdc56920613b8faeaddf
      https://github.com/OSGeo/grass/commit/240afa581b0ec79da75acdc56920613b8faeaddf
  Author: Nishant Bansal <nishant.bansal.282003 at gmail.com>
  Date:   2025-06-05 (Thu, 05 Jun 2025)

  Changed paths:
    M raster/r.info/main.c
    M raster/r.info/testsuite/test_r_info.py

  Log Message:
  -----------
  r.info: Update test file (#5842)


  Commit: bb0072e766aca3ee72a183db5bfb402bad6ecdbf
      https://github.com/OSGeo/grass/commit/bb0072e766aca3ee72a183db5bfb402bad6ecdbf
  Author: Laurent Courty <lrntct at gmail.com>
  Date:   2025-06-05 (Thu, 05 Jun 2025)

  Changed paths:
    M general/g.region/g.region.md
    M raster3d/raster3dintro.md

  Log Message:
  -----------
  doc: be more explicit about 2D vs 3D region resolution (#5817)


  Commit: 8586e51ba4215392ee61db84bb38a03fb9425a92
      https://github.com/OSGeo/grass/commit/8586e51ba4215392ee61db84bb38a03fb9425a92
  Author: Vaclav Petras <wenzeslaus at gmail.com>
  Date:   2025-06-05 (Thu, 05 Jun 2025)

  Changed paths:
    M python/grass/script/core.py

  Log Message:
  -----------
  grass.script: Always use env for shutil.which (#5717)

Currently, shutil.which is called on Windows to find the executable. However, it does not use the provided env (if any) which leads to the executable not being find if only the env parameter for run_command (and family) contains the runtime setup. This is not a problem on Linux (and probably unix/posix in general), because the Popen call eventually uses the system to find the executable and uses the provided env. However, on Windows, env is not used by the subprocess call. The shutil.which uses the os.environ process, so when the global environment is used, everything still works even on Windows.

This adds the PATH from env to the shutil.which call if it is there, so that it is used to find the exectuable. Additionally, this adds the shutil.which call for all platforms which is considered a best practice, avoiding Bandit's B607: Test for starting a process with a partial path.


  Commit: 4aa64fc4301c5e7189b515bbbc26ad88a9e66ce8
      https://github.com/OSGeo/grass/commit/4aa64fc4301c5e7189b515bbbc26ad88a9e66ce8
  Author: Edouard Choinière <27212526+echoix at users.noreply.github.com>
  Date:   2025-06-06 (Fri, 06 Jun 2025)

  Changed paths:
    M .github/workflows/osgeo4w.yml
    M mswindows/osgeo4w/build_osgeo4w.sh
    M mswindows/osgeo4w/mklibs.sh

  Log Message:
  -----------
  CI(OSGeo4W): Upgrade image to windows-2022 (#5562)

The windows-2019 image is being removed in less than a month. We need to use windows-2022. The changes needed in our build_osgeo4w.sh script relate to the msys2 paths added to path. They need to use the location defined in the CI step, otherwise, another version already installed in the runner, but normally not on path, is used. On windows-2019, we didn’t see errors of this misconfiguration, but we did for windows-2022.

* CI(OSGeo4W): Upgrade image to windows-2022

* mswindows: Update path for dumpbin in mklibs.sh

* windows: Use MSYS2_LOCATION env var to create script from templates in build_osgeo4w.sh

* CI(OSGeo4W): Add MSYS2_LOCATION env var to build stage


  Commit: 4682dd7995b238dfca53cbb70c8a5d8df11986cb
      https://github.com/OSGeo/grass/commit/4682dd7995b238dfca53cbb70c8a5d8df11986cb
  Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
  Date:   2025-06-06 (Fri, 06 Jun 2025)

  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 v3.28.19 (#5852)


  Commit: b8753f0f0fb5f97b457cd07fcd853c3002c98444
      https://github.com/OSGeo/grass/commit/b8753f0f0fb5f97b457cd07fcd853c3002c98444
  Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
  Date:   2025-06-06 (Fri, 06 Jun 2025)

  Changed paths:
    M Dockerfile
    M docker/ubuntu/Dockerfile
    M docker/ubuntu_wxgui/Dockerfile

  Log Message:
  -----------
  CI(deps): Update ubuntu:22.04 Docker digest to 01a3ee0 (#5851)


  Commit: ac509032ac7d2e06477881d1fdc41d815b5f179c
      https://github.com/OSGeo/grass/commit/ac509032ac7d2e06477881d1fdc41d815b5f179c
  Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
  Date:   2025-06-07 (Sat, 07 Jun 2025)

  Changed paths:
    M .github/workflows/macos.yml

  Log Message:
  -----------
  CI(deps): Update mamba-org/setup-micromamba action to v2.0.5 (#5857)


  Commit: 947cda16db7daf35c1a747f813bebee4880c935b
      https://github.com/OSGeo/grass/commit/947cda16db7daf35c1a747f813bebee4880c935b
  Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
  Date:   2025-06-07 (Sat, 07 Jun 2025)

  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 b395809 (#5856)


  Commit: ad6e958c27a6ed7228e3cf7c40a2a63ea9949c58
      https://github.com/OSGeo/grass/commit/ad6e958c27a6ed7228e3cf7c40a2a63ea9949c58
  Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
  Date:   2025-06-08 (Sun, 08 Jun 2025)

  Changed paths:
    M .github/workflows/python-code-quality.yml
    M .pre-commit-config.yaml

  Log Message:
  -----------
  CI(deps): Update ruff to v0.11.13 (#5858)


  Commit: 7fcc0afef10e05d7f3d670b3db0958d6afeaca6e
      https://github.com/OSGeo/grass/commit/7fcc0afef10e05d7f3d670b3db0958d6afeaca6e
  Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
  Date:   2025-06-09 (Mon, 09 Jun 2025)

  Changed paths:

  Log Message:
  -----------
  CI(deps): Lock file maintenance (#5864)


  Commit: 00158073f0fd0822790397c8d97c7f0f6f4057c8
      https://github.com/OSGeo/grass/commit/00158073f0fd0822790397c8d97c7f0f6f4057c8
  Author: Edouard Choinière <27212526+echoix at users.noreply.github.com>
  Date:   2025-06-09 (Mon, 09 Jun 2025)

  Changed paths:
    M python/grass/exceptions/__init__.py
    M python/grass/jupyter/interactivemap.py
    M python/grass/jupyter/map.py
    M python/grass/jupyter/map3d.py
    M python/grass/jupyter/seriesmap.py
    M python/grass/jupyter/timeseriesmap.py
    M python/grass/pygrass/gis/region.py
    M python/grass/pygrass/messages/__init__.py
    M python/grass/pygrass/modules/interface/module.py
    M python/grass/script/core.py
    M python/grass/script/db.py
    M python/grass/script/imagery.py
    M python/grass/script/raster.py
    M python/grass/script/raster3d.py
    M python/grass/script/setup.py
    M python/grass/script/utils.py
    M python/grass/script/vector.py
    M python/grass/temporal/abstract_dataset.py
    M python/grass/temporal/gui_support.py
    M python/grass/temporal/spatio_temporal_relationships.py

  Log Message:
  -----------
  docs: Adjust more code-blocks syntax and inside example sections in docstrings (#5862)

This is another round of making the formatting of code blocks either valid, better, or semantically better represented in example sections headers (that is, indented, but also represented inside the field list element in the HTML render, not just underneath).


One place, `Region.get_bbox()` (in python/grass/pygrass/gis/region.py), I created more docstring contents (for the return description and return type), to align with the rest around it.

* docs: Fix code block syntax in grass.exceptions

* docs: Fix code block formatting of grass.script.core

* docs: Fix code block formatting of grass.pygrass.gis.region

* docs: Make Example code blocks indented inside the header in the rendered page

* docs: Fix code block formatting in grass.script.core

* docs: Move up example of region_env() to group return and return type together

* docs: Make Example code blocks indented inside the header in the rendered page, by removing empty line between field list and code block

* docs: Make "Basic usage" code blocks indented inside the header in the rendered page, for grass.jupyter

* docs: Make "Usage" code blocks indented inside the header in the rendered pages

* docs: Make "Example" code blocks indented inside the header in the rendered pages, in grass.script and grass.temporal

* docs: Make "Basic usage" code blocks indented inside the header in the rendered pages, in grass.script

Also fixing the python code syntax when the code blocks were not being reformatted.


  Commit: 88300ae4ca9b86ac95a9e5ec5183bb42aeaf3e65
      https://github.com/OSGeo/grass/commit/88300ae4ca9b86ac95a9e5ec5183bb42aeaf3e65
  Author: Vaclav Petras <wenzeslaus at gmail.com>
  Date:   2025-06-09 (Mon, 09 Jun 2025)

  Changed paths:
    M lib/gis/parser_md_python.c

  Log Message:
  -----------
  doc: Generate zero, not type in Python examples (#5855)

In the generated Python examples the type was leaking to the code, but does not make sense syntactically. For strings, we simply say string in quotes by default (if key description is not available), but for ints and floats, there is no such value (we don't have an example value), so this generates zero in the example. This will be likely wrong value for many cases, but it is valid and also something the user will likely change (and it is easy to change).

Generated r.buffer example:

```python
gs.run_command("r.buffer", input="name", output="name", distances=0.0)
```


  Commit: e2e9b358ee8fc51a2cd5fd8c20ea084537b6e29e
      https://github.com/OSGeo/grass/commit/e2e9b358ee8fc51a2cd5fd8c20ea084537b6e29e
  Author: Jayneel Shah <80264736+jayneel-shah18 at users.noreply.github.com>
  Date:   2025-06-10 (Tue, 10 Jun 2025)

  Changed paths:
    A imagery/i.ortho.photo/i.ortho.elev/testsuite/test_i_ortho_elev.py

  Log Message:
  -----------
  i.ortho.elev: add test file (#5833)

This PR adds a regression test suite for the `i.ortho.elev` module. The tests validate correct metadata assignment and persistence behavior for elevation maps associated with an imagery group during ortho-rectification workflows.

### Tests Included

- `test_set_basic_elevation`: Assigns a simple elevation map to an imagery group and verifies correct metadata using the `-p` flag. This confirms the core functionality of associating elevation data with an ortho group.
- `test_all_metadata`: Sets elevation map with additional parameters: math expression, units, and null value; then checks metadata output. It ensures optional metadata fields are parsed and stored properly, avoiding issues in downstream modules that rely on this info.
- `test_parameter_persistence`: Updates the elevation map and ensures previous metadata (like units and null value) persist across updates. This validates the robustness of metadata handling and prevents regression in real-world editing workflows.


  Commit: 7bc9ce071b203bf91ba413c8360dafbf9f009734
      https://github.com/OSGeo/grass/commit/7bc9ce071b203bf91ba413c8360dafbf9f009734
  Author: Edouard Choinière <27212526+echoix at users.noreply.github.com>
  Date:   2025-06-10 (Tue, 10 Jun 2025)

  Changed paths:
    M python/grass/app/data.py
    M python/grass/docs/conf.py
    M python/grass/script/core.py
    M python/grass/script/raster.py
    M python/grass/script/setup.py

  Log Message:
  -----------
  docs: Configure intersphinx to reference Python's and NumPy's docs (#5861)

By enabling the widely used intersphinx functionality, Sphinx is able to resolve types, exceptions, etc. and allows us to create cross-references to the docs of an external project, like the Python standard library.

For example, a `:raises OSError: ...` or `:raises ValueError: ...` in the docstrings are magically linked to the Python docs. Same thing for the base classes that come from NumPy.

When using cross-refs, I opted to be explicit by using `:external:` followed by the domain and role, so looking like: ``:external:py:func:`sys.exit` ``. It then makes it easier to search for `:external:`, and there's less a surprise that Sphinx links to the python docs when not knowing about it. This comes in as justified when we know we have a couple of classes that override/wrap some python stdlib classes, like our `grass.script.core.Popen`, so being explicit is useful.


* docs: Configure intersphinx extension for linking to python library docs

* docs: Create external references to python docs in grass.script.core and related docstrings

* docs: Add external cross-refs to RegionManager docstrings

* docs: Add numpy inventory to intersphinx config


  Commit: c4e18c1871d9aca398cfb791ff00a7114624eb14
      https://github.com/OSGeo/grass/commit/c4e18c1871d9aca398cfb791ff00a7114624eb14
  Author: Edouard Choinière <27212526+echoix at users.noreply.github.com>
  Date:   2025-06-10 (Tue, 10 Jun 2025)

  Changed paths:
    M gui/wxpython/iscatt/dialogs.py
    M python/grass/grassdb/history.py
    M python/grass/jupyter/interactivemap.py
    M python/grass/pygrass/gis/region.py
    M python/grass/pygrass/modules/grid/grid.py
    M python/grass/pygrass/raster/__init__.py
    M python/grass/pygrass/vector/basic.py
    M python/grass/pygrass/vector/find.py
    M python/grass/pygrass/vector/geometry.py
    M python/grass/script/core.py
    M python/grass/script/raster.py
    M python/grass/script/raster3d.py
    M python/grass/script/utils.py
    M python/grass/temporal/base.py
    M python/grass/temporal/core.py
    M python/grass/temporal/stds_export.py
    M python/grass/temporal/temporal_algebra.py
    M python/grass/temporal/temporal_raster_base_algebra.py

  Log Message:
  -----------
  docs: Various docstring fixes related to parameter markup (#5869)

I've batched here some queued commits that addresses various small warnings, or just to continue aligning the docstrings with other places.

Some of the fixes here seemed to have originated from copy-paste errors, and a few are real typos too.
Using admonitions (boxes) for "Attention: " rendered quite nice and colourful, so I kept it.
Escaping a trailing underscore in the parameter list is necessary as it was interpreted as a label, so then the parameters weren't matching the signature, when using some stricter warnings. And the backslash needs to be escaped too, as one is for python to keep the backslash, the second one to pass to sphinx/docutils.  So, `:param xxxx_: bla bla bla` into `:param xxxx\\_: bla bla bla`

When finding issues, I was doing searches on the repo to find other cases. Usually I was skipping the gui folder, as I wasn't building the docs for it, but this time I let one slip.

There was one parameter that I didn't know how to document, as the previous text was completely unrelated (copy-paste error).

* docs: Fix indent of return of grass.grassdb.read()

* docs: Fix docstring formatting of grass.jupyter.interactivemap

* docs: Fix param syntax of grass.script.core

* docs: Use attention admonitions in docstrings of grass.pygrass.gis.region

* docs: Use double backticks for inline code style in grass.script.core

* docs: Replace `<tt></tt>` markup with double backticks in docstrings

* docs: Use double backticks for inline code style in docstrings of grass.script.core and grass.script.raster3d

* docs: Fix some invalid parameter list generating warnings

* docs: Fix note syntax in grass.jupyter.interactivemap.InteractiveMap.add_raster()

* docs: Fix typos in described parameter not matching the signature

* docs: Escape parameters ending with underscores in docstrings

* docs: Add or remove parameters in docstrings that don't belong to the functions in grass.temporal

Probably copy paste errors

* docs: Remove contradicting type in param list of python/grass/script/utils.py

* docs: Add LineDist return type in docstring of grass.pygrass.vector.geometry.Line.distance()

* docs: Fill in docstring for grass.script.utils.text_to_string()


  Commit: d129608335e589f6dd2f1604b36d515b41a339fd
      https://github.com/OSGeo/grass/commit/d129608335e589f6dd2f1604b36d515b41a339fd
  Author: Loïc Bartoletti <lbartoletti at users.noreply.github.com>
  Date:   2025-06-10 (Tue, 10 Jun 2025)

  Changed paths:
    M imagery/i.ortho.photo/CMakeLists.txt
    M lib/CMakeLists.txt

  Log Message:
  -----------
  build: Add missing LIBM links for cmake (#5832)


  Commit: 7c2701973ff6979f636aeba790520bbd6a2e29de
      https://github.com/OSGeo/grass/commit/7c2701973ff6979f636aeba790520bbd6a2e29de
  Author: Edouard Choinière <27212526+echoix at users.noreply.github.com>
  Date:   2025-06-11 (Wed, 11 Jun 2025)

  Changed paths:
    M python/grass/pygrass/gis/region.py
    M python/grass/pygrass/raster/__init__.py
    M python/grass/pygrass/vector/basic.py
    M python/grass/pygrass/vector/find.py
    M python/grass/script/core.py
    M python/grass/script/raster.py
    M python/grass/script/raster3d.py

  Log Message:
  -----------
  docs: Use more crossrefs in grass.script.core (#5868)

This PR changes some function names, class names, etc. to use cross-references when applicable. Mostly centered around grass.script.core (the main topic, I reviewed that file completely), but includes related changes when searching for other instances to apply the same changes.

This does not include cross-references to exceptions, as it will be bundled separately, there's some original work (new text) created in these, so I didn't want to mix them up.

* docs: Use crossrefs in docstrings of grass.pygrass.gis.region

* docs: Fix ambiguity in ScriptError reference in grass.script.core

* docs: Add cross-refs to classes, exceptions, functions, etc in grass.script.core docstrings

* docs: Add cross-refs to RegionManager docstrings

* docs: Resolve ambiguous references to types or functions generating warnings

* docs: Use double backticks for inline code style in grass.script.core.read_command()


  Commit: 959fdf4d01c70851670ce9583051755801395f51
      https://github.com/OSGeo/grass/commit/959fdf4d01c70851670ce9583051755801395f51
  Author: Nishant Bansal <nishant.bansal.282003 at gmail.com>
  Date:   2025-06-10 (Tue, 10 Jun 2025)

  Changed paths:
    M raster/r.univar/stats.c

  Log Message:
  -----------
  r.univar: Fix uninitialized zone_value (#5821)

* r.univar: fix uninitialized zone_value

* initialize json variables with NULL

---------

Signed-off-by: Nishant Bansal <nishant.bansal.282003 at gmail.com>


  Commit: 150ff46dbf90d593eb43864544dfd236560168fc
      https://github.com/OSGeo/grass/commit/150ff46dbf90d593eb43864544dfd236560168fc
  Author: Vaclav Petras <wenzeslaus at gmail.com>
  Date:   2025-06-11 (Wed, 11 Jun 2025)

  Changed paths:
    M lib/gis/parser_md_python.c

  Log Message:
  -----------
  docs: Add format to example even when not required (#5845)

The Python example counts on format option being there, so we need to add that even if it is not required.
This allows for empty and not required format in v.info in #5844.


  Commit: f0644ecfbfd2f03d71a32e19958584b857b2af07
      https://github.com/OSGeo/grass/commit/f0644ecfbfd2f03d71a32e19958584b857b2af07
  Author: Edouard Choinière <27212526+echoix at users.noreply.github.com>
  Date:   2025-06-10 (Tue, 10 Jun 2025)

  Changed paths:
    M .github/workflows/codeql-analysis.yml
    M .github/workflows/docker.yml
    M .github/workflows/documentation.yml
    M .github/workflows/macos.yml
    M .github/workflows/osgeo4w.yml
    M .github/workflows/pytest.yml
    M .github/workflows/python-code-quality.yml
    M .github/workflows/test_thorough.bat
    M .pre-commit-config.yaml
    M Dockerfile
    M doc/development/style_guide.md
    M doc/examples/notebooks/parallelization_tutorial.ipynb
    M doc/python_intro.md
    M docker/ubuntu/Dockerfile
    M docker/ubuntu_wxgui/Dockerfile
    M flake.lock
    M general/CMakeLists.txt
    M general/g.mapset/Makefile
    M general/g.mapset/g.mapset.md
    M general/g.mapset/main.c
    A general/g.mapset/tests/conftest.py
    A general/g.mapset/tests/g_mapset_test.py
    M general/g.region/g.region.md
    M general/g.version/main.c
    M gui/wxpython/gui_core/forms.py
    M gui/wxpython/gui_core/gselect.py
    M gui/wxpython/iscatt/dialogs.py
    M gui/wxpython/nviz/wxnviz.py
    M imagery/i.albedo/testsuite/test_i_albedo.py
    M imagery/i.aster.toar/testsuite/test_i_aster_toar.py
    M imagery/i.eb.eta/testsuite/test_i_eb_eta.py
    M imagery/i.evapo.mh/testsuite/test_i_evapo_mh.py
    M imagery/i.evapo.pm/testsuite/test_i_evapo_pm.py
    M imagery/i.evapo.pt/testsuite/test_i_evapo_pt.py
    M imagery/i.evapo.time/testsuite/test_i_evapo_time.py
    A imagery/i.group/testsuite/test_i_group.py
    M imagery/i.ortho.photo/CMakeLists.txt
    A imagery/i.ortho.photo/i.ortho.elev/testsuite/test_i_ortho_elev.py
    M imagery/i.rgb.his/testsuite/test_i_rgb_his.py
    M imagery/i.topo.corr/testsuite/test_i_topo_corr.py
    M imagery/i.zc/testsuite/test_i_zc.py
    M include/grass/colors.h
    M include/grass/defs/colors.h
    M include/grass/defs/raster.h
    M include/grass/iostream/ami_stream.h
    M include/grass/raster.h
    M lib/CMakeLists.txt
    M lib/gis/color_str.c
    M lib/gis/parser_md_python.c
    M lib/raster/json_color_out.c
    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_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
    A 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_CN.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_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
    A 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_CN.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_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
    A 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_CN.po
    M locale/templates/grasslibs.pot
    M locale/templates/grassmods.pot
    M locale/templates/grasswxpy.pot
    M mswindows/osgeo4w/build_osgeo4w.sh
    M mswindows/osgeo4w/mklibs.sh
    M python/grass/app/data.py
    M python/grass/docs/Makefile
    A python/grass/docs/README.md
    A python/grass/docs/_static/favicon.ico
    A python/grass/docs/_static/grass_logo.png
    M python/grass/docs/_static/grass_logo.svg
    M python/grass/docs/_static/pygrass.css
    A python/grass/docs/_templates/header.html
    A python/grass/docs/_templates/layout.html
    M python/grass/docs/_templates/layout.html.template
    A python/grass/docs/_templates/sphinx/apidoc/package.rst.jinja
    M python/grass/docs/conf.py
    A python/grass/docs/requirements.txt
    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_modules.rst
    M python/grass/docs/src/script_intro.rst
    M python/grass/docs/src/temporal_framework.rst
    M python/grass/exceptions/__init__.py
    M python/grass/grassdb/history.py
    M python/grass/gunittest/case.py
    M python/grass/gunittest/testsuite/test_checkers.py
    M python/grass/imaging/images2avi.py
    M python/grass/jupyter/interactivemap.py
    M python/grass/jupyter/map.py
    M python/grass/jupyter/map3d.py
    M python/grass/jupyter/seriesmap.py
    M python/grass/jupyter/timeseriesmap.py
    M python/grass/jupyter/utils.py
    M python/grass/pydispatch/dispatcher.py
    M python/grass/pydispatch/saferef.py
    M python/grass/pygrass/gis/region.py
    M python/grass/pygrass/messages/__init__.py
    M python/grass/pygrass/modules/grid/grid.py
    M python/grass/pygrass/modules/interface/module.py
    M python/grass/pygrass/raster/__init__.py
    M python/grass/pygrass/raster/segment.py
    M python/grass/pygrass/rpc/__init__.py
    M python/grass/pygrass/rpc/base.py
    M python/grass/pygrass/utils.py
    M python/grass/pygrass/vector/__init__.py
    M python/grass/pygrass/vector/basic.py
    M python/grass/pygrass/vector/find.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/imagery.py
    M python/grass/script/raster.py
    M python/grass/script/raster3d.py
    M python/grass/script/setup.py
    M python/grass/script/tests/grass_script_raster_mask_test.py
    A 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/temporal/abstract_dataset.py
    M python/grass/temporal/abstract_map_dataset.py
    M python/grass/temporal/abstract_space_time_dataset.py
    M python/grass/temporal/base.py
    M python/grass/temporal/c_libraries_interface.py
    M python/grass/temporal/core.py
    M python/grass/temporal/datetime_math.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/space_time_datasets.py
    M python/grass/temporal/spatial_extent.py
    M python/grass/temporal/spatial_topology_dataset_connector.py
    M python/grass/temporal/spatio_temporal_relationships.py
    M python/grass/temporal/stds_export.py
    M python/grass/temporal/temporal_algebra.py
    M python/grass/temporal/temporal_extent.py
    M python/grass/temporal/temporal_granularity.py
    M python/grass/temporal/temporal_operator.py
    M python/grass/temporal/temporal_raster_algebra.py
    M python/grass/temporal/temporal_raster_base_algebra.py
    M python/grass/temporal/temporal_topology_dataset_connector.py
    M python/grass/temporal/temporal_vector_algebra.py
    M python/grass/temporal/univar_statistics.py
    M raster/CMakeLists.txt
    M raster/r.category/local_proto.h
    M raster/r.colors.out/raster3d_main.c
    M raster/r.colors.out/raster_main.c
    A raster/r.composite/tests/test_r_composite.py
    M raster/r.info/main.c
    M raster/r.info/testsuite/test_r_info.py
    M raster/r.proj/testsuite/test_rproj.py
    M raster/r.random.surface/testsuite/test_r_random_surface.py
    M raster/r.sim/simlib/input.c
    M raster/r.sim/simlib/output.c
    M raster/r.sim/simlib/simlib.h
    A raster/r.slope.aspect/testsuite/data/gdal_aspect.ascii
    R raster/r.slope.aspect/testsuite/data/gdal_aspect.grd
    R raster/r.slope.aspect/testsuite/data/gdal_aspect.grd.aux.xml
    A raster/r.slope.aspect/testsuite/data/gdal_slope.ascii
    R raster/r.slope.aspect/testsuite/data/gdal_slope.grd
    R raster/r.slope.aspect/testsuite/data/gdal_slope.grd.aux.xml
    M raster/r.slope.aspect/testsuite/test_r_slope_aspect.py
    M raster/r.univar/r.univar.html
    M raster/r.univar/r.univar.md
    M raster/r.univar/stats.c
    M raster/r.univar/testsuite/test_r_univar.py
    M raster/r.what.color/Makefile
    M raster/r.what.color/main.c
    M raster/r.what.color/r.what.color.md
    A raster/r.what.color/testsuite/test_r_what_color.py
    M raster3d/raster3dintro.md
    M scripts/g.extension/g.extension.py
    M temporal/t.rast.what/t.rast.what.py
    M vector/v.colors.out/main.c

  Log Message:
  -----------
  Merge branch 'main' into revert-5670-ci-gcc-ubuntu


Compare: https://github.com/OSGeo/grass/compare/15a597c1460b...f0644ecfbfd2

To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass/settings/notifications


More information about the grass-commit mailing list