Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
61 commits
Select commit Hold shift + click to select a range
be32a3b
[pre-commit.ci] pre-commit autoupdate
pre-commit-ci[bot] Oct 27, 2025
41f6261
Merge pull request #100 from humanoid-path-planner/pre-commit-ci-upda…
mergify[bot] Oct 27, 2025
78662ca
[pre-commit.ci] pre-commit autoupdate
pre-commit-ci[bot] Nov 3, 2025
596fef2
Merge pull request #101 from humanoid-path-planner/pre-commit-ci-upda…
mergify[bot] Nov 3, 2025
018e215
[pre-commit.ci] pre-commit autoupdate
pre-commit-ci[bot] Nov 10, 2025
8a58cb0
Merge pull request #102 from humanoid-path-planner/pre-commit-ci-upda…
mergify[bot] Nov 10, 2025
cd4c286
flake.lock: Update
github-actions[bot] Nov 13, 2025
67e8b1e
Merge pull request #103 from humanoid-path-planner/update_flake_lock_…
mergify[bot] Nov 13, 2025
42101ea
[pre-commit.ci] pre-commit autoupdate
pre-commit-ci[bot] Nov 17, 2025
116b3d3
Merge pull request #104 from humanoid-path-planner/pre-commit-ci-upda…
mergify[bot] Nov 17, 2025
f7c3da2
[pre-commit.ci] pre-commit autoupdate
pre-commit-ci[bot] Nov 24, 2025
30e34c2
Merge pull request #105 from humanoid-path-planner/pre-commit-ci-upda…
mergify[bot] Nov 24, 2025
85b04fd
[pre-commit.ci] pre-commit autoupdate
pre-commit-ci[bot] Dec 1, 2025
3c93562
Merge pull request #106 from humanoid-path-planner/pre-commit-ci-upda…
mergify[bot] Dec 1, 2025
7896a3a
[pre-commit.ci] pre-commit autoupdate
pre-commit-ci[bot] Dec 8, 2025
886ca6e
Merge pull request #107 from humanoid-path-planner/pre-commit-ci-upda…
mergify[bot] Dec 8, 2025
ded88df
flake.lock: Update
github-actions[bot] Dec 13, 2025
c3b0459
Merge pull request #108 from humanoid-path-planner/update_flake_lock_…
mergify[bot] Dec 13, 2025
f11b303
[pre-commit.ci] pre-commit autoupdate
pre-commit-ci[bot] Dec 15, 2025
6e188be
Merge pull request #109 from humanoid-path-planner/pre-commit-ci-upda…
mergify[bot] Dec 15, 2025
24bdad9
[pre-commit.ci] pre-commit autoupdate
pre-commit-ci[bot] Dec 22, 2025
2c545f8
Merge pull request #110 from humanoid-path-planner/pre-commit-ci-upda…
mergify[bot] Dec 22, 2025
965cb3f
Add a way to display constraint graph from native hpp graph object, p…
psardin001 Jan 9, 2026
f6faeff
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Jan 9, 2026
dcb36fb
Fix Qt and Python keyword conflict
psardin001 Jan 9, 2026
fc62a97
Add missing modification to last commit
psardin001 Jan 9, 2026
d4430ee
Fix CI
psardin001 Jan 9, 2026
e04643e
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Jan 9, 2026
1c35153
[pre-commit.ci] pre-commit autoupdate
pre-commit-ci[bot] Jan 12, 2026
cb333a3
Merge pull request #112 from humanoid-path-planner/pre-commit-ci-upda…
mergify[bot] Jan 12, 2026
ac537a4
flake.lock: Update
github-actions[bot] Jan 13, 2026
361d799
Merge pull request #113 from humanoid-path-planner/update_flake_lock_…
mergify[bot] Jan 13, 2026
0ac88a5
[pre-commit.ci] pre-commit autoupdate
pre-commit-ci[bot] Jan 19, 2026
281b567
Merge pull request #114 from humanoid-path-planner/pre-commit-ci-upda…
mergify[bot] Jan 19, 2026
2da2d1b
[pre-commit.ci] pre-commit autoupdate
pre-commit-ci[bot] Jan 26, 2026
3c9840a
Merge pull request #115 from humanoid-path-planner/pre-commit-ci-upda…
mergify[bot] Jan 26, 2026
a9a5cea
Add command to prevent pre commit reorganizing includes
psardin001 Jan 27, 2026
53ea790
[pre-commit.ci] pre-commit autoupdate
pre-commit-ci[bot] Feb 9, 2026
5361c05
Merge pull request #117 from humanoid-path-planner/pre-commit-ci-upda…
mergify[bot] Feb 9, 2026
29b8766
Add context menu signals to HppNativeGraphWidget
psardin001 Feb 10, 2026
09a9b17
Add interactive Python graph viewer with context menu callbacks
psardin001 Feb 10, 2026
1ea6eaf
Fix pre-commit syntax errors
psardin001 Feb 10, 2026
5186fb5
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Feb 10, 2026
d0d55cd
Fix GIL management for Qt/Python callback bridge
psardin001 Feb 11, 2026
203be28
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Feb 11, 2026
b736a68
flake.lock: Update
github-actions[bot] Feb 13, 2026
2ae6fe1
Merge pull request #120 from humanoid-path-planner/update_flake_lock_…
mergify[bot] Feb 13, 2026
ae7319d
[pre-commit.ci] pre-commit autoupdate
pre-commit-ci[bot] Feb 16, 2026
8fcc60d
Merge pull request #121 from humanoid-path-planner/pre-commit-ci-upda…
mergify[bot] Feb 16, 2026
18e5735
pre-populate QT_PLUGIN_PATH from CMake
nim65s Feb 18, 2026
181c78c
nix: wayland only on linux
nim65s Feb 18, 2026
2ef4988
Merge pull request #122 from nim65s/qt-plugin-path
nim65s Feb 18, 2026
575e4fc
[pre-commit.ci] pre-commit autoupdate
pre-commit-ci[bot] Feb 23, 2026
6fbb037
Merge pull request #123 from humanoid-path-planner/pre-commit-ci-upda…
mergify[bot] Feb 23, 2026
f5bb8f8
Custom message handler to suppress Qt debug messages
psardin001 Feb 27, 2026
788db16
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Feb 27, 2026
9279dd5
[pre-commit.ci] pre-commit autoupdate
pre-commit-ci[bot] Mar 2, 2026
20b2178
Merge pull request #125 from humanoid-path-planner/pre-commit-ci-upda…
mergify[bot] Mar 2, 2026
0daf751
drop submodule
nim65s Feb 19, 2026
04cf3be
update packaging
nim65s Mar 6, 2026
2232a17
tooling
nim65s Mar 6, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@ updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"
interval: "monthly"
3 changes: 2 additions & 1 deletion .github/workflows/nix.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ jobs:
runs-on: "${{ matrix.os }}-latest"
strategy:
matrix:
os: [ubuntu, macos]
os: [ubuntu]
steps:
- uses: actions/checkout@v5
- uses: cachix/install-nix-action@v31
Expand All @@ -26,6 +26,7 @@ jobs:
name: gepetto
authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}'
- run: nix flake check -L
- run: nix build -L
check:
if: always()
name: check-macos-linux-nix
Expand Down
30 changes: 22 additions & 8 deletions .github/workflows/update-flake-lock.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,28 @@ on:
- cron: '0 6 13 * *'

jobs:
lockfile:
runs-on: ubuntu-latest
update-flake-inputs:
runs-on: ubuntu-slim
permissions:
contents: write
pull-requests: write
steps:
- name: Generate GitHub App Token
id: app-token
uses: actions/create-github-app-token@v2
with:
app-id: ${{ secrets.GEPETTO_NIX_APP_ID }}
private-key: ${{ secrets.GEPETTO_NIX_APP_PRIVATE_KEY }}
- name: Checkout repository
uses: actions/checkout@v4
- name: Install Nix
uses: DeterminateSystems/nix-installer-action@main
- name: Update flake.lock
uses: DeterminateSystems/update-flake-lock@main
uses: actions/checkout@v6
with:
token: ${{ steps.app-token.outputs.token }}
- name: Setup Nix
uses: cachix/install-nix-action@v31
- name: Update flake inputs
uses: mic92/update-flake-inputs@v1
with:
token: ${{ secrets.GH_TOKEN_FOR_UPDATES }}
github-token: ${{ steps.app-token.outputs.token }}
pr-labels: 'no-changelog'
git-author-name: 'hrp2-14'
git-author-email: '40568249+hrp2-14@users.noreply.github.com'
3 changes: 0 additions & 3 deletions .gitmodules

This file was deleted.

1 change: 1 addition & 0 deletions .mergify.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ pull_request_rules:
- check-success = "pre-commit.ci - pr"
- or:
- author = dependabot[bot]
- author = gepetto-flake-updater[bot]
- author = github-actions[bot]
- author = hrp2-14
- author = pre-commit-ci[bot]
Expand Down
6 changes: 3 additions & 3 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
ci:
autoupdate_branch: devel
autoupdate_schedule: quarterly
repos:
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.14.1
rev: v0.15.5
hooks:
- id: ruff
args:
Expand All @@ -19,7 +19,7 @@ repos:
- id: toml-sort-fix
exclude: poetry.lock
- repo: https://github.com/pre-commit/mirrors-clang-format
rev: v21.1.2
rev: v22.1.0
hooks:
- id: clang-format
args:
Expand Down
78 changes: 74 additions & 4 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,8 @@ else()
endif()

include("${JRL_CMAKE_MODULES}/hpp.cmake")
include("${JRL_CMAKE_MODULES}/python.cmake")
include("${JRL_CMAKE_MODULES}/boost.cmake")

# Tells pkg-config to read qtversion from pkg config file.
list(APPEND PKG_CONFIG_ADDITIONAL_VARIABLES qtversion cmake_plugin)
Expand Down Expand Up @@ -124,10 +126,17 @@ else(USE_QT4)
endif(USE_QT4)

add_project_dependency("hpp-manipulation-corba" REQUIRED)
add_project_dependency("hpp-manipulation" REQUIRED)
add_project_dependency("qgv" REQUIRED)

set(${PROJECT_NAME}_HEADERS include/hpp/plot/graph-widget.hh
include/hpp/plot/hpp-manipulation-graph.hh)
# Python bindings for native graph viewer
set(PYTHON_COMPONENTS Interpreter Development NumPy)
findpython()
search_for_boost_python()

set(${PROJECT_NAME}_HEADERS
include/hpp/plot/graph-widget.hh include/hpp/plot/hpp-manipulation-graph.hh
include/hpp/plot/hpp-native-graph.hh)
set(${PROJECT_NAME}_HEADERS_NOMOC)

set(${PROJECT_NAME}_FORMS)
Expand All @@ -146,7 +155,8 @@ else(USE_QT4)
endif(USE_QT4)
add_definitions(${QT_DEFINITIONS})

set(${PROJECT_NAME}_SOURCES src/graph-widget.cc src/hpp-manipulation-graph.cc)
set(${PROJECT_NAME}_SOURCES src/graph-widget.cc src/hpp-manipulation-graph.cc
src/hpp-native-graph.cc)

add_library(
${PROJECT_NAME} SHARED
Expand All @@ -157,7 +167,7 @@ add_library(
target_link_libraries(
${PROJECT_NAME}
PUBLIC ${QT_LIBRARIES} hpp-manipulation-corba::hpp-manipulation-corba
qgv::qgvcore)
hpp-manipulation::hpp-manipulation qgv::qgvcore)

install(
TARGETS ${PROJECT_NAME}
Expand All @@ -166,3 +176,63 @@ install(

add_subdirectory(bin)
add_subdirectory(plugins)

# Python module for native graph viewer
add_library(pyhpp_plot_graph_viewer MODULE src/pyhpp_plot/graph_viewer.cc)
target_link_boost_python(pyhpp_plot_graph_viewer PUBLIC)
target_link_libraries(
pyhpp_plot_graph_viewer
PUBLIC ${PROJECT_NAME} ${QT_LIBRARIES} hpp-manipulation::hpp-manipulation
${PYTHON_LIBRARIES})
target_include_directories(pyhpp_plot_graph_viewer
PRIVATE ${PYTHON_INCLUDE_DIRS})
set_target_properties(
pyhpp_plot_graph_viewer
PROPERTIES PREFIX ""
OUTPUT_NAME "graph_viewer"
LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/pyhpp_plot")

# pyhpp_plot_graph_viewer is a python module that spawn Qt windows. for this, at
# runtime, it need a QT_PLUGIN_PATH env var with a path where the shared lib for
# the current Qt "platform" are. Here we find a QT_PLUGIN_PATH that would work
# at config time, so that at runtime we can append that as a default fallback,
# if a end user has Qt installed in a non-FHS standard place and did not
# manually tune their $QT_PLUGIN_PATH env var for it

set(QT_PLUGIN_PATH_CMAKE)

# First, we might need to manually discover platforms plugins which are not
# installed in the same prefix as Qt5Gui. eg. Wayland.
find_package(
Qt5 CONFIG
COMPONENTS WaylandClient
QUIET)
if(Qt5WaylandClient_FOUND)
cmake_path(GET Qt5WaylandClient_DIR PARENT_PATH _p)
file(GLOB pluginTargets "${_p}/Qt5Gui/Qt5Gui_*.cmake")
if(pluginTargets)
foreach(pluginTarget ${pluginTargets})
include(${pluginTarget})
endforeach()
endif()
endif()

foreach(p IN LISTS Qt5Gui_PLUGINS)
get_target_property(_l ${p} IMPORTED_LOCATION_RELEASE)
cmake_path(GET _l PARENT_PATH _pp)
cmake_path(GET _pp PARENT_PATH _ppp)
if(NOT _ppp IN_LIST QT_PLUGIN_PATH_CMAKE)
set(QT_PLUGIN_PATH_CMAKE ${QT_PLUGIN_PATH_CMAKE} ${_ppp})
endif()
endforeach()

add_compile_definitions(
"QT_PLUGIN_PATH_CMAKE=\"$<JOIN:${QT_PLUGIN_PATH_CMAKE},:>\"")

install(TARGETS pyhpp_plot_graph_viewer
DESTINATION "${PYTHON_SITELIB}/pyhpp_plot")

# Install Python modules
install(FILES "${CMAKE_SOURCE_DIR}/src/pyhpp_plot/__init__.py"
"${CMAKE_SOURCE_DIR}/src/pyhpp_plot/interactive_viewer.py"
DESTINATION "${PYTHON_SITELIB}/pyhpp_plot")
1 change: 0 additions & 1 deletion cmake
Submodule cmake deleted from c815b3
Loading