Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
150 commits
Select commit Hold shift + click to select a range
4271bda
ignore more stuff
ahoarau Dec 11, 2025
e7bfa53
update gersemi conf
ahoarau Dec 11, 2025
e861e63
add KMP_DUPLICATE_LIB_OK directly in the __init__.py
ahoarau Dec 11, 2025
d14864c
use raw string format in QPFunction to prevent warning during stub gen
ahoarau Dec 11, 2025
0b31c19
fix documentation compile option
ahoarau Dec 11, 2025
bfc08b2
add pixi support
ahoarau Dec 11, 2025
7ba02ad
remove submodules
ahoarau Dec 11, 2025
2b5b0b6
remove unused cmake-external
ahoarau Dec 11, 2025
eb99f71
remove external libraries
ahoarau Dec 11, 2025
0da2a89
update doc
ahoarau Dec 11, 2025
e561e59
use cmake provided doxygen functions
ahoarau Dec 11, 2025
af6710a
add white bg logo for documentation and readme
ahoarau Dec 11, 2025
2b8d006
factorize.hpp: fix conversion warning
ahoarau Dec 11, 2025
c9a24ad
remove no longer needed condition in c++17
ahoarau Dec 11, 2025
62eddc5
remove extra Eigen?Core header
ahoarau Dec 11, 2025
2a7784a
workspace.hpp: fix local variable shadowing a struct member
ahoarau Dec 11, 2025
6510fc4
random_qp_problems.hpp: use static variables intead of global variables
ahoarau Dec 11, 2025
6fb4411
separate tests in cpp and python folders
ahoarau Dec 11, 2025
a6f9b70
Refactor CMake with JRL CMake Modules v2
ahoarau Dec 11, 2025
a515222
intregrate get-jrl-cmakemodules.cmake
ahoarau Dec 12, 2025
0c8d8f0
update jrl url to point to fork
ahoarau Dec 15, 2025
4e4a3ee
require jrl-cmakemodules version 2.0.0
ahoarau Dec 16, 2025
6f171e8
include stubs pyi files in the installation
ahoarau Dec 16, 2025
e9f7255
ros-ci: add verbosity
ahoarau Dec 17, 2025
65825ad
changelog: add jrl v2 entry
ahoarau Dec 17, 2025
e160261
get-jrl.cmake: update with latest version
ahoarau Dec 22, 2025
4bfd6db
ci: minor cosmetics changes
ahoarau Dec 22, 2025
f4bcbfb
main cmake: add back copyright
ahoarau Dec 22, 2025
8b52899
ci: add initial pixi ci
ahoarau Dec 22, 2025
80b0438
ci: update deps on arch ci
ahoarau Dec 22, 2025
89cc514
ci: use pixi to generate docs
ahoarau Dec 22, 2025
22294ca
ci: add cache to pixi
ahoarau Dec 22, 2025
882d1a8
ci: condition pixi ci like the other cis
ahoarau Dec 22, 2025
67653e3
ci: add catch2 dep (arch)
ahoarau Dec 22, 2025
f91f409
ci: add catch2 dep in conda
ahoarau Dec 22, 2025
eb9375a
ci: add ceral and nanobind to conda env
ahoarau Dec 22, 2025
b40d421
cmake: stubs depends on all targets built
ahoarau Dec 22, 2025
134373f
cmake: check vectorization support and add debug message
ahoarau Dec 22, 2025
4676e00
ros: add cereal catch2 deps
ahoarau Dec 22, 2025
c395db0
ros: add graphviz dep
ahoarau Dec 22, 2025
518570f
ci: enable caching for ros ci
ahoarau Dec 22, 2025
9e83c6f
cmake: condition cereal dep
ahoarau Dec 22, 2025
5186204
cmake: use fetchcontent as fallback for catch2
ahoarau Dec 22, 2025
1dadb49
cmake: SYSTEM is not recognized on cmake 3.22
ahoarau Dec 22, 2025
653173c
dense_maros_meszaros: include header locally
ahoarau Dec 22, 2025
22c074b
ci: add linux ci via APT
ahoarau Dec 22, 2025
555488b
cmake: disable maros meszaros for now they crash
ahoarau Dec 22, 2025
62c0067
ci: add cereal on arch
ahoarau Dec 22, 2025
540845b
ci: add nanobind dep to arch
ahoarau Dec 22, 2025
3b119eb
ci: add graphviz dep to arch
ahoarau Dec 22, 2025
5e95675
ci: add doxygen dep to arch
ahoarau Dec 22, 2025
f6e3fac
cmake: fallback to fetchcontent for cereal
ahoarau Dec 22, 2025
33db2b5
cmake : remove version min for cereal
ahoarau Dec 22, 2025
c3b7d6b
pyproject: require nanobind >=2.5.0
ahoarau Dec 22, 2025
ee747c0
pyproject: no min for nanobind
ahoarau Dec 22, 2025
dd34e69
pyproject: nanobind is not compatible with python <3.9
ahoarau Dec 22, 2025
2cfc638
cmake: fallback to fetchcontent for nanobind
ahoarau Dec 22, 2025
6b0eeb0
README: add pixi section
ahoarau Dec 22, 2025
aef6ed4
cmake: downgrade nanobind to 2.9.2 to support python 3.8
ahoarau Dec 22, 2025
4010719
cmake: change default options to mimic upstream
ahoarau Dec 22, 2025
7f1fc0c
cmake: fix property name
ahoarau Dec 22, 2025
3f0e898
cmake: use target_include_directories
ahoarau Dec 22, 2025
9fcdf6e
ci: build in build folder
ahoarau Dec 27, 2025
0e31fd9
cmake: add components test
ahoarau Dec 27, 2025
8e7e8f2
ci: add components test
ahoarau Dec 27, 2025
c7651e1
pixi: add uninstall task
ahoarau Dec 27, 2025
c1809a3
cmake: add back LINK_PYTHON_INTERFACE_TO_OPENMP option
ahoarau Dec 27, 2025
890c2fc
ci: use multiline commands and cleanup
ahoarau Dec 27, 2025
709d882
cmake: fix link libs on python target
ahoarau Dec 27, 2025
eae6103
ci: format
ahoarau Dec 27, 2025
43bb7de
cmake: format
ahoarau Dec 27, 2025
fe8cee1
cmake: the generator expression does not seem to work
ahoarau Dec 27, 2025
948454e
ignore wheels
ahoarau Dec 27, 2025
0b12c5e
pyproject: do not run tests when building wheels
ahoarau Dec 27, 2025
fe80542
ci: executables are in build dir
ahoarau Dec 27, 2025
c482b8e
cmake: limit to version >=3.22
ahoarau Dec 27, 2025
8ad160e
cmake: disable testing by default
ahoarau Dec 27, 2025
8f4aed8
ci: do not run executable
ahoarau Dec 27, 2025
a6f3121
ci: build with vectorization support for test to work
ahoarau Dec 27, 2025
f022181
ci: simplify conda script
ahoarau Dec 27, 2025
465db92
ci: activate conda env according to the doc
ahoarau Dec 27, 2025
ca8c703
ci: run on pwsh explicitely
ahoarau Dec 27, 2025
f959588
ci: use CMD for windows conda
ahoarau Dec 27, 2025
6cb849f
ci: rename jobs to include compiler
ahoarau Dec 27, 2025
4203448
c: add specific case for clang-cl
ahoarau Dec 29, 2025
2bd750e
ci: use cxx-compilers
ahoarau Dec 29, 2025
64d224b
ci: reset to shell: bash -el {0}
ahoarau Dec 29, 2025
6b5b7e7
ci: cxx-compiler (no s)
ahoarau Dec 29, 2025
dd32cf8
ci: use CMAKE_C_COMPILER
ahoarau Dec 29, 2025
de5444b
ci: add msvc action
ahoarau Dec 30, 2025
5869cc9
ci: setup msvc first
ahoarau Dec 30, 2025
aa0339e
ci: use cmd
ahoarau Dec 30, 2025
9954316
ci: use CC and CXX
ahoarau Dec 30, 2025
f249ebf
ci: use local env vars
ahoarau Dec 30, 2025
f0c7a8c
ci: use set instead of env
ahoarau Dec 30, 2025
7e0a1f4
ci: temporarly disable nix ci
ahoarau Jan 6, 2026
d51fda2
ci: uniformize names
ahoarau Jan 6, 2026
853a7cc
pixi.toml: remove cmake profiling
ahoarau Jan 6, 2026
328cc85
pixi.toml: add packaging tests
ahoarau Jan 6, 2026
2813f08
cmake: use local fetchcontent repo
ahoarau Jan 6, 2026
1314ef3
ci: remove conda workflow for pixi
ahoarau Jan 6, 2026
a45db19
ci: integrate the conda workflow tests and variants
ahoarau Jan 6, 2026
93cd6bf
ci: merge configure and build to provide the cmake args
ahoarau Jan 6, 2026
ffbdff1
pixi.toml: pass build type and cxx standard via cmdline/env
ahoarau Jan 6, 2026
5fba3ba
ci: use env to pass args to pixi
ahoarau Jan 6, 2026
11ea67b
ci: rename to ci-ros
ahoarau Jan 6, 2026
c31149a
ci: enable additional build options
ahoarau Jan 6, 2026
f34410f
cmake: normalize PROXSUITE_FETCHCONTENT_SOURCE_DIR path for windows
ahoarau Jan 6, 2026
459721b
pixi.toml: use PROXSUITE_CXX_STANDARD instead
ahoarau Jan 6, 2026
1c10a7f
ci: use PROXSUITE_CXX_STANDARD instead
ahoarau Jan 6, 2026
1e0ff15
cmake: define PROXSUITE_CXX_STANDARD
ahoarau Jan 6, 2026
51f8ee4
cmake: reformat with new gersemi version
ahoarau Jan 6, 2026
62e23bd
pre-commit: use new ruff-check id
ahoarau Jan 6, 2026
e58d760
ci: make sure the env vars are available everywhere
ahoarau Jan 6, 2026
4b776ca
cmake: fix TO_CMAKE_PATH_LIST
ahoarau Jan 6, 2026
2b142a1
ci: build with --verbose
ahoarau Jan 6, 2026
a52e311
pixi.toml: remove CMAKE_VERBOSE_MAKEFILE
ahoarau Jan 6, 2026
6490e86
ci: build with only 2 jobs
ahoarau Jan 6, 2026
ab4f004
cmake: on windows, use fetchcontent to get catch2
ahoarau Jan 6, 2026
766066a
ci: remove the conda env
ahoarau Jan 6, 2026
c922de3
cmake: DOWNLOAD_EXTRACT_TIMESTAMP is not available on cmake 3.22
ahoarau Jan 6, 2026
757c8f2
pixi.toml: relax deps contrains to allow to use cmake 3.22 exact
ahoarau Jan 6, 2026
8dcbecd
pixi.toml: add verbosity to tests
ahoarau Jan 7, 2026
2145da4
cmake: use only 3.22 to prevent the clang modules scanner to be trigg…
ahoarau Jan 7, 2026
76952be
pixi.toml: add cpp20 and cpp23 envs
ahoarau Jan 7, 2026
c1892ef
pixi.lock: update
ahoarau Jan 7, 2026
2dbf9ab
rename BENCHMARK to BENCHMARKS
ahoarau Jan 8, 2026
428ddda
package.xml: drop ROS iron and python 2
ahoarau Jan 8, 2026
48cd4b9
ci: update ROS CI and enable features
ahoarau Jan 8, 2026
3b35bd4
ci: disabling tests on windows+debug (too slow)
ahoarau Jan 8, 2026
e6543c2
ci: disable fail-fast strategy
ahoarau Jan 8, 2026
7b2ebad
package.xml: add python3-dev build depend
ahoarau Jan 8, 2026
46d9f13
python: import scipy.sparse.linalg explicitly for ubuntu 22
ahoarau Jan 8, 2026
2dd5e84
ci: add build release and debug on ubuntu
ahoarau Jan 8, 2026
82f20e7
ci: cosmetics
ahoarau Jan 8, 2026
a3360ec
ci: only build with 1 core to prevent swapping
ahoarau Jan 8, 2026
2dbb9f1
rosci: add kilted and configure cache
ahoarau Jan 8, 2026
e9853a9
implement uint128 on msvc
ahoarau Jan 9, 2026
71f8d2b
fix julia test example
ahoarau Jan 9, 2026
ca66b44
gitignore: ignore dist/
ahoarau Jan 9, 2026
dedbd4b
cmake: remove extra cereal link
ahoarau Jan 9, 2026
b3850f7
cmake: make examples part of the test suite
ahoarau Jan 9, 2026
f8ea73a
cmake: add comments on fetchcontent fallbacks
ahoarau Jan 9, 2026
8ed1fae
python: import linalg explicitely for ubuntu 22
ahoarau Jan 9, 2026
008e809
cmake: add ros2 support
ahoarau Jan 13, 2026
3a6027b
ci: reorder the env vars
ahoarau Jan 13, 2026
24d2eef
cmake: generate ros2 python package files with condiition
ahoarau Jan 13, 2026
cce8143
ci: use latest master commit
ahoarau Jan 13, 2026
7ce7cbf
pixi: numpy must be <2.4 due to nanobind limitation
ahoarau Jan 20, 2026
9920160
cmake: check Eigen3::Eigen target before calling find_package
ahoarau Jan 22, 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
4 changes: 2 additions & 2 deletions .gersemirc
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
definitions: [./CMakeLists.txt,./cmake-module,./cmake-external,./bindings,./include]
line_length: 80
definitions: []
line_length: 100
indent: 2
warn_about_unknown_commands: false
20 changes: 9 additions & 11 deletions .github/workflows/ci-arch.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,8 @@ name: CI - ArchLinux

on:
push:
branches: devel
branches:
- devel
pull_request:
paths-ignore:
- CHANGELOG.md
Expand All @@ -13,16 +14,13 @@ concurrency:

jobs:
build-with-arch:
runs-on: "ubuntu-latest"
name: CI - ArchLinux
runs-on: ubuntu-latest
container:
image: archlinux/archlinux:base-devel
steps:
- run: pacman -Syu --noconfirm cmake eigen git libmatio python-scipy simde

- uses: actions/checkout@v6
with:
submodules: recursive

- run: cmake -B build -S . -DBUILD_PYTHON_INTERFACE=ON
- run: cmake --build build
- run: cmake --build build -t test
- run: pacman -Syu --noconfirm cmake ninja catch2 git eigen cereal libmatio doxygen graphviz nanobind python-scipy simde
- uses: actions/checkout@v6
- run: cmake -G Ninja -B build -S . -DBUILD_PYTHON_INTERFACE=ON
- run: cmake --build build
- run: ctest --test-dir build --output-on-failure
221 changes: 0 additions & 221 deletions .github/workflows/ci-linux-osx-win-conda.yml

This file was deleted.

57 changes: 0 additions & 57 deletions .github/workflows/ci-linux-ros.yml

This file was deleted.

77 changes: 77 additions & 0 deletions .github/workflows/ci-linux.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
name: CI - Linux (APT)

on:
push:
branches:
- devel
pull_request:
paths-ignore:
- CHANGELOG.md

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
build_and_test:
name: CI - ${{ matrix.os }} - ${{ matrix.build_type }} (APT)
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-22.04, ubuntu-24.04]
build_type: [Release, Debug]
env:
CCACHE_BASEDIR: ${{ github.workspace }}
CCACHE_DIR: ${{ github.workspace }}/.ccache
CCACHE_COMPRESS: true
CCACHE_COMPRESSLEVEL: 6
CMAKE_C_COMPILER_LAUNCHER: ccache
CMAKE_CXX_COMPILER_LAUNCHER: ccache
steps:
- uses: actions/checkout@v6
- name: Setup ccache
uses: actions/cache@v4
with:
path: ${{ env.CCACHE_DIR }}
key: ccache-${{ runner.os }}-${{ matrix.os }}-${{ github.sha }}
restore-keys: ccache-${{ runner.os }}-${{ matrix.os }}-

- name: Update APT repositories
run: sudo apt-get update

- name: Install dependencies via APT
run: sudo apt-get install -y cmake ninja-build ccache graphviz libmatio-dev doxygen catch2 libeigen3-dev python3-numpy python3-dev python3-scipy

- name: Clear ccache stats
run: ccache --show-stats --zero-stats --verbose

- name: CMake Configure
run: /usr/bin/cmake -G Ninja -S . -B build -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} -DBUILD_PYTHON_INTERFACE=ON -DBUILD_TESTING=ON -DBUILD_EXAMPLES=ON -DBUILD_DOCUMENTATION=ON -DBUILD_BENCHMARKS=ON

- name: CMake Build
run: /usr/bin/cmake --build build --verbose --parallel 2

- name: Show ccache stats
run: ccache --show-stats --verbose

- name: CTest
run: /usr/bin/ctest --test-dir build --output-on-failure

- name: CMake Install
run: /usr/bin/cmake --install build --prefix install

check:
if: always()
name: check-linux

needs:
- build_and_test

runs-on: Ubuntu-latest

steps:
- name: Decide whether the needed jobs succeeded or failed
uses: re-actors/alls-green@release/v1
with:
jobs: ${{ toJSON(needs) }}
Loading
Loading