Skip to content

CI: Install wxPython and optional dependencies in the update-i18n job - #8054

Merged
echoix merged 2 commits into
OSGeo:mainfrom
echoix:claude/update-i18n-packages-flags
Oct 12, 2026
Merged

echoix merged 2 commits into
OSGeo:mainfrom
echoix:claude/update-i18n-packages-flags

Conversation

@echoix

@echoix echoix commented Oct 11, 2026

Copy link
Copy Markdown
Member

I’m working on simplifying the collection of strings coming from the xml for the menu strings. While validating, it got noticed that the porting to CI of translation strings update, dropped many strings in the grasswxpy domain. (Near May 2025, in #5752).

I suppose the assumption I was given that collecting strings didn’t really need a full build nor GUI wasn’t entirely true. No it didn’t fail, but it silently created an incomplete file, that was incompletely searched for strings. Optional components built affect what is generated here.

Even though some more complex and complete fixes could be possible, like preventing a successful build if incomplete; deleting incomplete generated xml file; etc, I decided to only keep the simple part, where more strings will come out, that were previously translated.

Note that even though it uses ubuntu-latest, that was 24.04, it will soon be defaulting to 26.04 during a month following October 19, 2026. I didn’t want to bother with the ubuntugis that was not plug and play last time I checked. So, pdal and libLAS will not be built and only get placeholders. It’s an improvement and a compromise.

Since I didn’t want the workflow to break starting next week, I pinned the runner to 24.04 for now.

Details

Description

The update-i18n job now installs wxPython (python3-wxgtk4.0) and the optional dependencies of the tools listed in the menus (cairo, fftw, freetype, geos, libsvm, netcdf, opengl, postgres), and configures with the matching flags.

Motivation and context

Without wxPython, core/menutree.py fails on import wx, and menustrings.py stays a 3-line stub. Menu and Modeler/Psmap msgids are then missing from grasswxpy.pot. Tools that are not built also get "Module not installed" instead of their description.

Ubuntu 24.04 does not package PDAL or libLAS, so the point cloud import and export tools still get the placeholder.

How has this been tested?

Ran the job's apt install, configure, make and cd locale && make pot locally. menustrings.py has 2366 lines and grasswxpy.pot goes from 3435 to 4541 msgids, including "Raster map calculator".

Types of changes

  • Bug fix (non-breaking change which fixes an issue)

Checklist

  • PR title provides summary of the changes and starts with one of the
    pre-defined prefixes
  • My code follows the code style
    of this project.
  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.
  • I have added tests to cover my changes.

AI was used to carry out the trivial work (editing the workflow file, writing the commit and this description), following my implementation choices.

Install wxPython (python3-wxgtk4.0) and the optional dependencies of the
tools listed in the menus (cairo, fftw, freetype, geos, libsvm, netcdf,
opengl, postgres), and configure with the matching flags.

AI was used to carry out the trivial work, following the author's
implementation choices.
@github-actions github-actions Bot added the CI Continuous integration label Oct 11, 2026
@echoix
echoix requested a review from ninsbl October 11, 2026 17:55
@echoix
echoix merged commit be42846 into OSGeo:main Oct 12, 2026
27 checks passed
@echoix echoix added the backport to 8.5 PR needs to be backported to release branch 8.5 label Oct 12, 2026
@github-actions github-actions Bot added this to the 8.6.0 milestone Oct 12, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport to 8.5 PR needs to be backported to release branch 8.5 CI Continuous integration

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant