Skip to content

[Experimental] PGM CLI implementation - #1297

Merged
TonyXiang8787 merged 88 commits into
mainfrom
feature/pgm-cli
Oct 22, 2026
Merged

TonyXiang8787 merged 88 commits into
mainfrom
feature/pgm-cli

Conversation

@TonyXiang8787

@TonyXiang8787 TonyXiang8787 commented Feb 2, 2026 •

Copy link
Copy Markdown
Member

This PR attempts to implement a PGM command line interface as native executable which links to the C-API. The executable can be invoked in Python as a Python shim.

Check list

Local test guide

Test install

Run the following at any working folder

uv tool install git+https://github.com/PowerGridModel/power-grid-model.git@feature/pgm-cli
power-grid-model --help
power-grid-model --version
uv tool uninstall power-grid-model

Test editable

Checkout this branch, then do a round of build and test.

uv sync --reinstall
uv run pytest
uv run power-grid-model --help
uv run power-grid-model --version

@TonyXiang8787 TonyXiang8787 self-assigned this Feb 2, 2026
@TonyXiang8787 TonyXiang8787 added feature New feature or request do-not-merge This should not be merged temporarily labels Feb 2, 2026

@mgovers mgovers left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i don't have time to do a full review but this is at least some input

Comment thread power_grid_model_c/power_grid_model_c/CMakeLists.txt Outdated
Comment thread power_grid_model_c/power_grid_model_cli_backend/src/cli_options.cpp
Comment thread power_grid_model_c/power_grid_model_cli/main.cpp Outdated
Comment thread power_grid_model_c/CMakeLists.txt
Comment thread src/power_grid_model/_core/power_grid_model_c/run_pgm_cli.py Outdated
Comment thread src/power_grid_model/_core/power_grid_model_c/run_pgm_cli.py
Comment thread src/power_grid_model/_core/power_grid_model_c/run_pgm_cli.py Outdated
Comment thread CMakeLists.txt
@sonarqubecloud

sonarqubecloud Bot commented May 4, 2026

Copy link
Copy Markdown

Quality Gate Failed Quality Gate failed

Failed conditions
78.4% Coverage on New Code (required ≥ 80%)

See analysis details on SonarQube Cloud

@sonarqubecloud

Copy link
Copy Markdown

Quality Gate Failed Quality Gate failed

Failed conditions
77.8% Coverage on New Code (required ≥ 80%)

See analysis details on SonarQube Cloud

Comment thread src/power_grid_model/_core/power_grid_model_c/run_pgm_cli.py Fixed
Signed-off-by: Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>
mgovers and others added 16 commits July 9, 2026 12:56
Signed-off-by: Martijn Govers <martijn.govers@alliander.com>
Signed-off-by: Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>
Removed the GitHub release job from the CI workflow.

Signed-off-by: Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>
Signed-off-by: Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>
Signed-off-by: Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>
Signed-off-by: Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>
Signed-off-by: Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>
Signed-off-by: Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>
Signed-off-by: Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>
Signed-off-by: Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>
Signed-off-by: Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>
Signed-off-by: Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>
Signed-off-by: Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>
Signed-off-by: Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>
Signed-off-by: Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>
Signed-off-by: Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>
Signed-off-by: Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>
Signed-off-by: Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>
Signed-off-by: Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>
Signed-off-by: Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>
Signed-off-by: Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>

@mgovers mgovers left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks really good already. Couple minor comments remaining.

Comment thread power_grid_model_c/power_grid_model_cli_backend/src/cli_options.cpp
Comment thread power_grid_model_c/power_grid_model_cli_backend/src/cli_options.cpp Outdated
Comment thread power_grid_model_c/power_grid_model_cli_backend/src/cli_options.cpp
Comment thread power_grid_model_c/power_grid_model_cli_backend/src/cli_options.cpp
Comment thread power_grid_model_c/power_grid_model_cli_backend/CMakeLists.txt Outdated
Comment thread power_grid_model_c/power_grid_model_cli_backend/src/cli_main.cpp Outdated
Comment thread power_grid_model_c/power_grid_model_cli/CMakeLists.txt Outdated
Comment thread docs/advanced_documentation/build-guide.md Outdated
Comment thread .github/workflows/build-test-release.yml Outdated
Comment thread power_grid_model_c/power_grid_model_cli/main.cpp
TonyXiang8787 and others added 13 commits October 21, 2026 12:04
Co-authored-by: Martijn Govers <martijn.govers@alliander.com>
Signed-off-by: Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>
Co-authored-by: Martijn Govers <martijn.govers@alliander.com>
Signed-off-by: Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>
Co-authored-by: Martijn Govers <martijn.govers@alliander.com>
Signed-off-by: Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>
…s.cpp

Co-authored-by: Martijn Govers <martijn.govers@alliander.com>
Signed-off-by: Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>
Co-authored-by: Martijn Govers <martijn.govers@alliander.com>
Signed-off-by: Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>
…s.cpp

Co-authored-by: Martijn Govers <martijn.govers@alliander.com>
Signed-off-by: Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>
…s.cpp

Co-authored-by: Martijn Govers <martijn.govers@alliander.com>
Signed-off-by: Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>
DCO Remediation Commit for Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>

I, Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>, hereby add my Signed-off-by to this commit: 588cbfb

Signed-off-by: Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>
Signed-off-by: Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>
Signed-off-by: Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>
Signed-off-by: Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>
Signed-off-by: Tony Xiang <19280867+TonyXiang8787@users.noreply.github.com>
@sonarqubecloud

Copy link
Copy Markdown

@TonyXiang8787
TonyXiang8787 added this pull request to the merge queue Oct 22, 2026
Merged via the queue into main with commit eece729 Oct 22, 2026
60 of 62 checks passed
@TonyXiang8787
TonyXiang8787 deleted the feature/pgm-cli branch October 22, 2026 10:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feature New feature or request

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

5 participants