GEOS-DEV / GEOS-DEV/GEOS

Improve CI testing of geosPythonPackages import in GEOS

Open
#3,751 0 comments 0 reactions 1 assignee View on GitHub

@alexbenedicto is already working on this.

Since Aug 1, 2025.

type: CI type: feature type: new
Dominant language
C++
Stars
287
Forks
109
Avg merge
4d 41m
Merged PRs (30d)
5

Description

What is the requested feature?
Add a separate testing of geosPythonPackages import in GEOS to make sure each new version of geosPythonPackages can be used in GEOS.
This will also allow geosPythonPackages to have its own CI implementation to test every new PR wrt to GEOS integration before merging them.

Is your request related to a specific problem?
Currently, two linked issues exists in GEOS and geosPythonPackages CIs:

  • GEOS CI does not have a clear method to identify issues that would occur when importing geosPythonPackages.
  • geosPythonPackages cannot test if a PR that will be merged will have an impact in GEOS later.

Describe the solution you'd like
In GEOS:
CI now would include a Python integration test that:

  • Runs alongside other GEOS CI jobs
  • Tests that geosPythonPackages can be properly installed and used
  • Validates key Python tools like preprocess_xml, format_xml, and mesh-doctor
  • Ensures Python packages can be imported correctly

In geosPythonPackages:
When creating a PR , a strict sequential process is enforced:

  • Step 1: Standard CI Tests Run First
  • Step 2: Label Check for test-geos-integration (Only After Standard Tests Pass)
  • Step 3: GEOS Integration Testing (Automatic Trigger)
  • Step 4: Final Validation with all steps that pass (Standard CI + Label + GEOS tests)

Additional context
The geosPythonPackages repository will need a GEOS_INTEGRATION_TOKEN secret with permissions to trigger workflows in the GEOS repository.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.