Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • jcarpent/eigenpy
  • gsaurel/eigenpy
  • stack-of-tasks/eigenpy
3 results
Show changes
Commits on Source (1578)
Showing
with 1752 additions and 293 deletions
BasedOnStyle: Google
SortIncludes: false
Standard: Cpp03
# pre-commit run -a (Guilhem Saurel, 2022-07-27)
4af05ec6781f9da65b81af8e3af8d69213f99e85
# pre-commit run -a (Guilhem Saurel, 2024-02-17)
48fb48c83f0456de2fb612ef55df8ad789824d87
# pre-commit run -a (Guilhem Saurel, 2024-02-19)
0bae435330ee475f8dbb11bf5e672284d294d9b3
# GitHub syntax highlighting
pixi.lock linguist-language=YAML
name: CI - Check-changelog
on:
pull_request:
types: [assigned, opened, synchronize, reopened, labeled, unlabeled, edited]
branches:
- devel
jobs:
check-changelog:
name: Check changelog action
runs-on: ubuntu-latest
steps:
- uses: tarides/changelog-check-action@v2
with:
changelog: CHANGELOG.md
name: CI - JRL-cmakemodules
on:
push:
paths-ignore:
- 'doc/**'
- '.gitlab-ci.yml'
- '.gitignore'
- '*.md'
- 'LICENSE'
- 'colcon.pkg'
- '.pre-commit-config.yaml'
pull_request:
paths-ignore:
- 'doc/**'
- '.gitlab-ci.yml'
- '.gitignore'
- '*.md'
- 'LICENSE'
- 'colcon.pkg'
- '.pre-commit-config.yaml'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
with-submodules:
name: Check configuration with git submodules
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
submodules: true
- run: sudo apt install libboost-all-dev libeigen3-dev python3-numpy python3-scipy
- run: cmake .
without-submodules:
name: Check configuration without git submodules
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
submodules: false
path: eigenpy
- run: sudo apt install libboost-all-dev libeigen3-dev python3-numpy python3-scipy
- run: cmake -B build -S eigenpy
- run: grep -qvz CMAKE_PROJECT_VERSION:STATIC=0.0 build/CMakeCache.txt
name: CI - Linux via APT
on:
push:
paths-ignore:
- 'doc/**'
- '.gitlab-ci.yml'
- '.gitignore'
- '*.md'
- 'LICENSE'
- 'colcon.pkg'
- '.pre-commit-config.yaml'
pull_request:
paths-ignore:
- 'doc/**'
- '.gitlab-ci.yml'
- '.gitignore'
- '*.md'
- 'LICENSE'
- 'colcon.pkg'
- '.pre-commit-config.yaml'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
test:
name: "Test python ${{ matrix.python }} on ${{ matrix.ubuntu }}.04"
runs-on: "ubuntu-${{ matrix.ubuntu }}.04"
strategy:
matrix:
python: [3]
ubuntu: [20, 22]
steps:
- uses: actions/checkout@v3
with:
submodules: 'true'
- run: |
sudo apt-get update
sudo apt-get install cmake libboost-all-dev libeigen3-dev python*-numpy python*-dev python*-scipy
echo $(sudo apt list --installed)
echo $(g++ --version)
- run: cmake . -DPYTHON_EXECUTABLE=$(which python${{ matrix.python }}) -DBUILD_TESTING_SCIPY=ON
- run: make -j2
- run: ctest --output-on-failure
check:
if: always()
name: check-linux
needs:
- 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) }}
name: CI - MacOS/Linux/Windows via Pixi
on:
push:
paths-ignore:
- 'doc/**'
- '.gitlab-ci.yml'
- '.gitignore'
- '*.md'
- 'LICENSE'
- 'colcon.pkg'
- '.pre-commit-config.yaml'
pull_request:
paths-ignore:
- 'doc/**'
- '.gitlab-ci.yml'
- '.gitignore'
- '*.md'
- 'LICENSE'
- 'colcon.pkg'
- '.pre-commit-config.yaml'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
eigenpy-pixi:
name: ${{ matrix.os }} - Env ${{ matrix.environment }} ${{ matrix.build_type }} ${{ matrix.cxx_options }} ${{ matrix.compiler }}
runs-on: ${{ matrix.os }}
env:
CCACHE_BASEDIR: "${GITHUB_WORKSPACE}"
CCACHE_DIR: "${GITHUB_WORKSPACE}/.ccache"
CCACHE_COMPRESS: true
CCACHE_COMPRESSLEVEL: 6
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, macos-13]
environment: [all, all-py39]
build_type: [Release, Debug]
cxx_options: ['', '-mavx2']
exclude:
- os: macos-latest
cxx_options: '-mavx2'
- os: macos-13
cxx_options: '-mavx2'
include:
- os: windows-latest
environment: all
cxx_options: ''
build_type: Release
- os: windows-latest
environment: all-clang-cl
cxx_options: ''
build_type: Release
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- uses: actions/cache@v4
with:
path: .ccache
key: ccache-macos-linux-windows-pixi-${{ matrix.os }}-${{ matrix.build_type }}-${{ matrix.cxx_options }}-${{ matrix.environment }}-${{ github.sha }}
restore-keys: ccache-macos-linux-windows-pixi-${{ matrix.os }}-${{ matrix.build_type }}-${{ matrix.cxx_options }}-${{ matrix.environment }}-
- uses: prefix-dev/setup-pixi@v0.8.1
with:
cache: true
environments: ${{ matrix.environment }}
- name: Build EigenPy [MacOS/Linux/Windows]
env:
CMAKE_BUILD_PARALLEL_LEVEL: 2
EIGENPY_BUILD_TYPE: ${{ matrix.build_type }}
EIGENPY_CXX_FLAGS: ${{ matrix.cxx_options }}
run: |
pixi run -e ${{ matrix.environment }} test
check:
if: always()
name: check-macos-linux-windows-pixi
needs:
- eigenpy-pixi
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) }}
name: "CI - Nix"
on:
push:
jobs:
nix:
runs-on: "${{ matrix.os }}-latest"
strategy:
matrix:
os: [ubuntu, macos]
steps:
- uses: actions/checkout@v4
- uses: cachix/install-nix-action@v27
- uses: cachix/cachix-action@v15
with:
name: gepetto
authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}'
- run: nix build -L
name: CI - Ensure relocatable
on:
push:
paths-ignore:
- 'doc/**'
- '.gitlab-ci.yml'
- '.gitignore'
- '*.md'
- 'LICENSE'
- 'colcon.pkg'
- '.pre-commit-config.yaml'
pull_request:
paths-ignore:
- 'doc/**'
- '.gitlab-ci.yml'
- '.gitignore'
- '*.md'
- 'LICENSE'
- 'colcon.pkg'
- '.pre-commit-config.yaml'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
relocatable:
name: Ensure relocatable
runs-on: ubuntu-latest
env:
CCACHE_DIR: /github/home/.ccache # Enable ccache
CMAKE_CXX_COMPILER_LAUNCHER: ccache
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- uses: actions/cache@v3
with:
path: ${{ env.CCACHE_DIR }}
key: reloc
- name: prepare cache dir
run: sudo mkdir -p ${CCACHE_DIR}/tmp && sudo chown -R $(id -un) ${CCACHE_DIR}
- name: prepare work prefix
run: sudo mkdir -p /RELOC/SRC && sudo chown -R $(id -un) /RELOC
- name: clone in /RELOC/SRC
run: git -C /RELOC/SRC clone --recursive $(pwd)
- name: install dependencies
run: sudo apt install libboost-all-dev libeigen3-dev python-is-python3 python3-numpy python3-pip python3-scipy ccache
- name: update CMake
run: pip install -U pip && pip install -U cmake
- name: configure in /RELOC/BLD
run: cmake -S /RELOC/SRC/eigenpy -B /RELOC/BLD -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/RELOC/PFX
- name: build in /RELOC/BLD
run: cmake --build /RELOC/BLD -j2
- name: install in /RELOC/PFX
run: cmake --build /RELOC/BLD -t install
- name: check installed package doesn't contain references to RELOC
run: grep -r RELOC /RELOC/PFX | grep -v Binary | tee references
- name: exit accordingly
run: exit $(wc -l references | cut -d " " -f 1)
# This config uses industrial_ci (https://github.com/ros-industrial/industrial_ci.git).
# For troubleshooting, see readme (https://github.com/ros-industrial/industrial_ci/blob/master/README.rst)
name: CI - Linux via ROS
# This determines when this workflow is run
on:
push:
paths-ignore:
- 'doc/**'
- '.gitlab-ci.yml'
- '.gitignore'
- '*.md'
- 'LICENSE'
- 'colcon.pkg'
- '.pre-commit-config.yaml'
pull_request:
paths-ignore:
- 'doc/**'
- '.gitlab-ci.yml'
- '.gitignore'
- '*.md'
- 'LICENSE'
- 'colcon.pkg'
- '.pre-commit-config.yaml'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
CI:
strategy:
matrix:
env:
# ROS1
- {ROS_DISTRO: noetic}
# ROS2
- {ROS_DISTRO: iron}
- {ROS_DISTRO: humble}
- {ROS_DISTRO: jazzy}
- {ROS_DISTRO: rolling}
env:
# PRERELEASE: true # Fails due to issues in the underlying Docker image
BUILDER: colcon
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
# Run industrial_ci
- uses: 'ros-industrial/industrial_ci@875c2aebfd634eebaa84dbe5198f2fdb4c5f1b7e'
env: ${{ matrix.env }}
check:
if: always()
name: check-ros-ci
needs:
- CI
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) }}
name: update-flake-lock
on:
workflow_dispatch:
schedule:
- cron: '0 15 3 * *'
jobs:
lockfile:
runs-on: ubuntu-latest
steps:
- 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
with:
pr-labels: "no changelog"
token: ${{ secrets.GH_TOKEN_FOR_UPDATES }}
name: CI - Update Pixi lockfile
permissions:
contents: write
pull-requests: write
on:
workflow_dispatch:
schedule:
- cron: 0 5 1 * *
jobs:
pixi-update:
runs-on: ubuntu-latest
steps:
- uses: actions/create-github-app-token@v1
id: generate-token
with:
app-id: ${{ secrets.APP_ID }}
private-key: ${{ secrets.APP_PRIVATE_KEY }}
- uses: actions/checkout@v4
with:
token: ${{ steps.generate-token.outputs.token }}
ref: devel
# Make sure the value of GITHUB_TOKEN will not be persisted in repo's config
persist-credentials: false
- name: Set up pixi
uses: prefix-dev/setup-pixi@v0.8.1
with:
run-install: false
- name: Update lockfile
run: |
set -o pipefail
pixi update --json | pixi exec pixi-diff-to-markdown >> diff.md
- name: Create pull request
uses: peter-evans/create-pull-request@v7
with:
token: ${{ steps.generate-token.outputs.token }}
commit-message: 'pixi: Update pixi lockfile'
title: Update pixi lockfile
body-path: diff.md
branch: topic/update-pixi
base: devel
labels: |
pixi
no changelog
delete-branch: true
add-paths: pixi.lock
*~
*build*/
# pixi environments
.pixi
variables:
GIT_SUBMODULE_STRATEGY: "recursive"
GIT_DEPTH: "3"
CCACHE_BASEDIR: "${CI_PROJECT_DIR}"
CCACHE_DIR: "${CI_PROJECT_DIR}/ccache"
cache:
paths:
- ccache
.robotpkg-py-eigenpy: &robotpkg-py-eigenpy
except:
- gh-pages
script:
- mkdir -p ccache
- cd /root/robotpkg/math/py-eigenpy
- git pull
- make checkout MASTER_REPOSITORY="dir ${CI_PROJECT_DIR}"
- make install
- cd work.$(hostname)/$(make show-var VARNAME=DISTNAME)
- make test
robotpkg-py-eigenpy-dubnium-release:
<<: *robotpkg-py-eigenpy
image: eur0c.laas.fr:5000/stack-of-tasks/eigenpy/py-eigenpy:dubnium
robotpkg-py-eigenpy-16.04-release:
<<: *robotpkg-py-eigenpy
image: eur0c.laas.fr:5000/stack-of-tasks/eigenpy/py-eigenpy:16.04
robotpkg-py-eigenpy-18.04-release:
<<: *robotpkg-py-eigenpy
image: eur0c.laas.fr:5000/stack-of-tasks/eigenpy/py-eigenpy:18.04
robotpkg-py-eigenpy-py3-dubnium-release:
<<: *robotpkg-py-eigenpy
image: eur0c.laas.fr:5000/stack-of-tasks/eigenpy/py-eigenpy-py3:dubnium
robotpkg-py-eigenpy-py3-16.04-release:
<<: *robotpkg-py-eigenpy
image: eur0c.laas.fr:5000/stack-of-tasks/eigenpy/py-eigenpy-py3:16.04
robotpkg-py-eigenpy-py3-18.04-release:
<<: *robotpkg-py-eigenpy
image: eur0c.laas.fr:5000/stack-of-tasks/eigenpy/py-eigenpy-py3:18.04
robotpkg-py-eigenpy-14.04-release:
<<: *robotpkg-py-eigenpy
image: eur0c.laas.fr:5000/stack-of-tasks/eigenpy/py-eigenpy:14.04
robotpkg-py-eigenpy-14.04-debug:
<<: *robotpkg-py-eigenpy
image: eur0c.laas.fr:5000/stack-of-tasks/eigenpy/py-eigenpy:14.04
before_script:
- echo PKG_OPTIONS.py-eigenpy=debug >> /opt/openrobots/etc/robotpkg.conf
robotpkg-py-eigenpy-py3-14.04-release:
<<: *robotpkg-py-eigenpy
image: eur0c.laas.fr:5000/stack-of-tasks/eigenpy/py-eigenpy-py3:14.04
robotpkg-py-eigenpy-py3-14.04-debug:
<<: *robotpkg-py-eigenpy
image: eur0c.laas.fr:5000/stack-of-tasks/eigenpy/py-eigenpy-py3:14.04
before_script:
- echo PKG_OPTIONS.py-eigenpy=debug >> /opt/openrobots/etc/robotpkg.conf
robotpkg-py-eigenpy-dubnium-debug:
<<: *robotpkg-py-eigenpy
image: eur0c.laas.fr:5000/stack-of-tasks/eigenpy/py-eigenpy:dubnium
before_script:
- echo PKG_OPTIONS.py-eigenpy=debug >> /opt/openrobots/etc/robotpkg.conf
robotpkg-py-eigenpy-py3-dubnium-debug:
<<: *robotpkg-py-eigenpy
image: eur0c.laas.fr:5000/stack-of-tasks/eigenpy/py-eigenpy-py3:dubnium
before_script:
- echo PKG_OPTIONS.py-eigenpy=debug >> /opt/openrobots/etc/robotpkg.conf
robotpkg-py-eigenpy-16.04-debug:
<<: *robotpkg-py-eigenpy
image: eur0c.laas.fr:5000/stack-of-tasks/eigenpy/py-eigenpy:16.04
before_script:
- echo PKG_OPTIONS.py-eigenpy=debug >> /opt/openrobots/etc/robotpkg.conf
robotpkg-py-eigenpy-py3-16.04-debug:
<<: *robotpkg-py-eigenpy
image: eur0c.laas.fr:5000/stack-of-tasks/eigenpy/py-eigenpy-py3:16.04
before_script:
- echo PKG_OPTIONS.py-eigenpy=debug >> /opt/openrobots/etc/robotpkg.conf
robotpkg-py-eigenpy-18.04-debug:
<<: *robotpkg-py-eigenpy
image: eur0c.laas.fr:5000/stack-of-tasks/eigenpy/py-eigenpy:18.04
before_script:
- echo PKG_OPTIONS.py-eigenpy=debug >> /opt/openrobots/etc/robotpkg.conf
robotpkg-py-eigenpy-py3-18.04-debug:
<<: *robotpkg-py-eigenpy
image: eur0c.laas.fr:5000/stack-of-tasks/eigenpy/py-eigenpy-py3:18.04
before_script:
- echo PKG_OPTIONS.py-eigenpy=debug >> /opt/openrobots/etc/robotpkg.conf
include: https://rainboard.laas.fr/project/eigenpy/.gitlab-ci.yml
[submodule "cmake"]
path = cmake
url = https://github.com/jrl-umi3218/jrl-cmakemodules.git
[submodule ".travis"]
path = .travis
url = https://github.com/jrl-umi3218/jrl-travis.git
ci:
autoupdate_branch: devel
autofix_prs: false
autoupdate_schedule: quarterly
repos:
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.8.6
hooks:
- id: ruff
args:
- --fix
- --exit-non-zero-on-fix
- --ignore
- UP036
- id: ruff-format
- repo: https://github.com/cheshirekow/cmake-format-precommit
rev: v0.6.13
hooks:
- id: cmake-format
- repo: https://github.com/pappasam/toml-sort
rev: v0.24.2
hooks:
- id: toml-sort-fix
exclude: pixi.toml
- repo: https://github.com/pre-commit/mirrors-clang-format
rev: v19.1.6
hooks:
- id: clang-format
args:
- '--style={BasedOnStyle: Google, SortIncludes: false, Standard: Cpp03}'
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v5.0.0
hooks:
- id: trailing-whitespace
Subproject commit 0f12f18e62a504278ef31f0118f1da48607a524e
language: python
sudo: required
compiler:
- gcc
# - clang
env:
global:
- secure: "SnIBG/xLIHX3CSvUbqqsX8xTVqIqQ7fFS6HWO6KZQVBsT6yugTwYHbyhNiU531JejYJ/I3ZrDhXfYH3qFZiYxnH1sifvwV+fnTtMXpPN7qPZwIymkjcmm6gJF51e0C7VOfUbvKFv0ngwj+ul21rgZSMuoEvxPK0WxtE3/ZSfn9c="
- APT_DEPENDENCIES="doxygen libeigen3-dev libboost-test-dev libboost-python-dev"
- DEBSIGN_KEYID=5AE5CD75
- CC=gcc
- DO_COVERAGE_ON_BRANCH="master;release"
- DO_CPPCHECK_ON_BRANCH=""
- DO_INSTALL_DOC_EXCEPT_ON_BRANCH=""
- BUILD_WITH_CATKIN_SUPPORT=false
- MAKEFLAGS="-j2"
jobs:
include:
- dist: bionic
env: BUILDTYPE=Release
python: 2.7
- dist: bionic
env: BUILDTYPE=Release
python: 3.6
- dist: bionic
env: BUILDTYPE=Debug
python: 2.7
- dist: bionic
env: BUILDTYPE=Debug
python: 3.6
- dist: xenial
env: BUILDTYPE=Release
python: 2.7
- dist: xenial
env: BUILDTYPE=Release
python: 3.5
- dist: trusty
env: BUILDTYPE=Release
python: 2.7
- dist: trusty
env: BUILDTYPE=Release
python: 3.4
notifications:
email:
- pinocchio-build@laas.fr
branches:
only:
- master
- debian
- devel
before_install: ./.travis/run before_install
install: pip install coveralls numpy
script:
- export CMAKE_ADDITIONAL_OPTIONS="-DCMAKE_BUILD_TYPE=${BUILDTYPE}"
- sudo free -m -t
- ls -l /usr/lib/x86_64-linux-gnu/libboost_python*
- ./.travis/run ../travis_custom/custom_build
after_failure: ./.travis/run after_failure
after_success: ./.travis/run after_success
This diff is collapsed.
This diff is collapsed.