Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
47 commits
Select commit Hold shift + click to select a range
780c31a
Full Rebuild (Sync) November 2025: bump ros-distro-mutex to 0.7.0 and…
traversaro Nov 1, 2025
7dc10be
Cleanup leftovers
traversaro Nov 1, 2025
8be3b14
fix ros-noetic-moveitros-perception.win.patch
baszalmstra Nov 1, 2025
be2ea0a
fix patch/ros-noetic-camera-calibration-parsers.win.patch
baszalmstra Nov 1, 2025
ec09d8c
fix ros-noetic-cmake-modules.patch
baszalmstra Nov 1, 2025
440e143
fix ros-noetic-libmavconn.win.patch
baszalmstra Nov 1, 2025
4a40b02
fix ros-noetic-mavros.win.patch
baszalmstra Nov 1, 2025
6c9a046
Update CMakeLists.txt for rtabmap_rviz_plugins
Tobias-Fischer Nov 1, 2025
479e3f0
regenerate ros-noetic-moveit-ros-planning-interface.patch
baszalmstra Nov 1, 2025
7938f3b
remove ros-noetic-resource-retriever.patch
baszalmstra Nov 1, 2025
f0c95d8
remove ros-noetic-rosbag.patch
baszalmstra Nov 1, 2025
c3c60d6
regenerate ros-noetic-rqt-image-view.patch
baszalmstra Nov 1, 2025
3349f6e
remove ros-noetic-rosgraph.patch
baszalmstra Nov 1, 2025
1958693
remove ros-noetic-rospack.patch
baszalmstra Nov 1, 2025
525308f
regenerate ros-noetic-rviz.patch
baszalmstra Nov 1, 2025
d87c769
remove ros-noetic-topic-tools.patch
baszalmstra Nov 1, 2025
8eace16
remove ros-noetic-tf2-py.osx.patch
baszalmstra Nov 1, 2025
cea65b1
regenerate ros-noetic-tf.win.patch
baszalmstra Nov 1, 2025
596aa7a
Add fcl package to dummy package that depend on conda-forge ones
traversaro Nov 1, 2025
59f0d4a
Change rattler build to handle recipes individually
Tobias-Fischer Nov 2, 2025
46315d5
Add error handling to subprocess.run
Tobias-Fischer Nov 2, 2025
7b211bb
Add encoding parameter to subprocess.run
Tobias-Fischer Nov 2, 2025
1aecdb4
Add UTF-8 encoding for console output
Tobias-Fischer Nov 2, 2025
66e754c
Debug
Tobias-Fischer Nov 2, 2025
6867fbf
Remove fish and zsh patch from ros-noetic-rosbash
traversaro Nov 3, 2025
84b3e00
Delete patch/ros-noetic-eigen-conversions.patch
traversaro Nov 3, 2025
4b34637
Fix wrong override version for ros-noetic-fcl
traversaro Nov 3, 2025
c4f59f5
Fix cras-cpp-common on osx
Tobias-Fischer Nov 8, 2025
a763e26
cras unsupported outside linux
Tobias-Fischer Nov 9, 2025
f280031
Fix negation on Windows
Tobias-Fischer Nov 9, 2025
c3cccc8
Skip libpointmatcher
Tobias-Fischer Nov 9, 2025
b79193e
Bump deps
Tobias-Fischer Nov 9, 2025
d5a41b6
Update libboost version in vinca.yaml
Tobias-Fischer Nov 9, 2025
2016f0b
Upgrade package versions in conda build config
Tobias-Fischer Nov 9, 2025
e550b26
Bump python to 3.12
Tobias-Fischer Nov 9, 2025
f8bcd9f
Update Python version constraint to 3.12
Tobias-Fischer Nov 9, 2025
85de128
Try newer sip
Tobias-Fischer Nov 9, 2025
e503925
Update dependencies in dependencies.yaml
Tobias-Fischer Nov 9, 2025
f1087fc
Delete patch/ros-noetic-kdl-conversions.patch
Tobias-Fischer Nov 11, 2025
6c881bc
Delete patch/ros-noetic-tf-conversions.patch
Tobias-Fischer Nov 12, 2025
b2c1bd4
Update VTK version in CMake module path
Tobias-Fischer Nov 12, 2025
921c217
Update VTK version in CMake module path
Tobias-Fischer Nov 12, 2025
fe184f4
Comment out package find commands
Tobias-Fischer Nov 13, 2025
2aa5942
Modify CMakeLists.txt to comment out flags
Tobias-Fischer Nov 14, 2025
e398ac1
Remove C++ flags from CMakeLists.txt
Tobias-Fischer Nov 14, 2025
5ed258d
Update sip_configure.py and add pyproject.toml.in
Tobias-Fischer Nov 14, 2025
e9e0630
Remove C++11 standard flag from CMakeLists.txt
Tobias-Fischer Nov 14, 2025
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
90 changes: 0 additions & 90 deletions .github/workflows/build_robostack.yml

This file was deleted.

44 changes: 19 additions & 25 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,21 +15,18 @@ jobs:
with:
persist-credentials: false # otherwise, the token used is the GITHUB_TOKEN, instead of your personal token
fetch-depth: 0 # otherwise, you will failed to push refs to dest repo
- uses: actions/setup-python@v5

- uses: prefix-dev/setup-pixi@v0.8.10
with:
python-version: '3.11' # Version range or exact version of a Python version to use, using SemVer's version range syntax
- name: Install vinca
run: |
pip install git+https://github.com/RoboStack/vinca.git
frozen: true

- name: Generate recipes for linux-64
run: |
git clean -fdx
cp vinca_linux_64.yaml vinca.yaml
vinca --multiple --platform linux-64
- name: Generate azure pipelines for linux-64
pixi run -v vinca --multiple --platform linux-64
- name: Generate GitHub Actions pipelines for linux-64
run: |
vinca-gha --platform linux-64 --trigger-branch buildbranch_linux -d ./recipes --additional-recipes
pixi run -v vinca-gha --platform linux-64 --trigger-branch buildbranch_linux -d ./recipes
- name: Commit files for linux-64
run: |
if [[ -f "linux.yml" ]]; then
Expand All @@ -51,11 +48,10 @@ jobs:
- name: Generate recipes for osx-64
run: |
git clean -fdx
cp vinca_osx.yaml vinca.yaml
vinca --multiple --platform osx-64
- name: Generate azure pipelines for osx-64
pixi run -v vinca --multiple --platform osx-64
- name: Generate GitHub Actions pipelines for osx-64
run: |
vinca-gha --platform osx-64 --trigger-branch buildbranch_osx -d ./recipes --additional-recipes
pixi run -v vinca-gha --platform osx-64 --trigger-branch buildbranch_osx -d ./recipes
- name: Commit files for osx-64
run: |
if [[ -f "osx.yml" ]]; then
Expand All @@ -77,11 +73,10 @@ jobs:
- name: Generate recipes for osx-arm64
run: |
git clean -fdx
cp vinca_osx_arm64.yaml vinca.yaml
vinca --multiple --platform osx-arm64
- name: Generate azure pipelines for osx-arm64
pixi run -v vinca --multiple --platform osx-arm64
- name: Generate GitHub Actions pipelines for osx-arm64
run: |
vinca-gha --platform osx-arm64 --trigger-branch buildbranch_osx_arm64 -d ./recipes --additional-recipes
pixi run -v vinca-gha --platform osx-arm64 --trigger-branch buildbranch_osx_arm64 -d ./recipes
- name: Commit files for osx-arm64
run: |
if [[ -f "osx_arm64.yml" ]]; then
Expand All @@ -103,11 +98,11 @@ jobs:
- name: Generate recipes for win-64
run: |
git clean -fdx
cp vinca_win.yaml vinca.yaml
vinca --multiple --platform win-64
- name: Generate azure pipelines for win-64
pixi run -v vinca --multiple --platform win-64
- name: Generate GitHub Actions pipelines for win-64
run: |
vinca-gha --platform win-64 --trigger-branch buildbranch_win -d ./recipes --additional-recipes
# --batch_size 10 is a workaround for https://github.com/RoboStack/robostack.github.io/issues/105
pixi run -v vinca-gha --platform win-64 --trigger-branch buildbranch_win -d ./recipes --batch_size 10
- name: Commit files for win-64
run: |
if [[ -f "win.yml" ]]; then
Expand All @@ -129,11 +124,10 @@ jobs:
- name: Generate recipes for linux-aarch64
run: |
git clean -fdx
cp vinca_linux_aarch64.yaml vinca.yaml
vinca --multiple --platform linux-aarch64
- name: Generate azure pipelines for linux-aarch64
pixi run -v vinca --multiple --platform linux-aarch64
- name: Generate GitHub Actions pipelines for linux-aarch64
run: |
vinca-gha --platform linux-aarch64 --trigger-branch buildbranch_linux_aarch64 -d ./recipes --additional-recipes
pixi run -v vinca-gha --platform linux-aarch64 --trigger-branch buildbranch_linux_aarch64 -d ./recipes
- name: Commit files for linux-aarch64
run: |
if [[ -f "linux_aarch64.yml" ]]; then
Expand Down
140 changes: 71 additions & 69 deletions .github/workflows/testpr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,10 @@ on:

env:
ROS_VERSION: 1

# Change to 'true' to enable the cache upload as artifacts
SAVE_CACHE_AS_ARTIFACT: 'false'
# Change to 'true' to ignore cache and force a full rebuild, but please restore to 'false' before merging
IGNORE_CACHE_AND_DO_FULL_REBUILD: 'true'
jobs:
build:
strategy:
Expand All @@ -13,20 +16,24 @@ jobs:
include:
- os: ubuntu-latest
platform: linux-64
folder_cache: 'output/linux-64'
- os: ubuntu-24.04-arm
platform: linux-aarch64
folder_cache: 'output/linux-aarch64'
- os: macos-13
platform: osx-64
folder_cache: 'output/osx-64'
- os: macos-14
platform: osx-arm64
folder_cache: 'output/osx-arm64'
- os: windows-2022
platform: win-64

folder_cache: 'C:/bld/win-64'

runs-on: ${{ matrix.os }}

steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
with:
persist-credentials: false # otherwise, the token used is the GITHUB_TOKEN, instead of your personal token
fetch-depth: 0 # otherwise, you will failed to push refs to dest repo
Expand All @@ -35,6 +42,14 @@ jobs:
with:
frozen: true

- name: Long paths workarounds for win-64
shell: bash -l {0}
if: matrix.platform == 'win-64'
run: |
# Workaround for problem related to long paths
echo "CONDA_BLD_PATH=C:\\bld\\" >> $GITHUB_ENV
mkdir /c/bld

# Workaround for https://github.com/RoboStack/ros-humble/pull/141#issuecomment-1941919816
- name: Clean up PATH
if: contains(matrix.os, 'windows')
Expand All @@ -54,86 +69,73 @@ jobs:
rm -rf /c/Strawberry
rm -rf "/c/Program Files (x86)/Windows Kits/10/Include/10.0.17763.0/"

- name: Generate recipes for linux-64
shell: bash -l {0}
if: matrix.platform == 'linux-64'
run: |
cp vinca_linux_64.yaml vinca.yaml
mkdir -p recipes
$HOME/.pixi/bin/pixi run -v vinca --platform linux-64 -m
ls -la recipes
- name: Generate recipes for linux-aarch64
shell: bash -l {0}
if: matrix.platform == 'linux-aarch64'
run: |
cp vinca_linux_aarch64.yaml vinca.yaml
mkdir -p recipes
$HOME/.pixi/bin/pixi run -v vinca --platform linux-aarch64 -m
ls -la recipes
- name: Generate recipes for osx-64
shell: bash -l {0}
if: matrix.platform == 'osx-64'
run: |
cp vinca_osx.yaml vinca.yaml
mkdir -p recipes
$HOME/.pixi/bin/pixi run -v vinca --platform osx-64 -m
ls -la recipes
- name: Generate recipes for osx-arm64
# Regression for https://github.com/RoboStack/ros-jazzy/issues/44
- name: Check that anaconda-client command works fine
shell: bash -l {0}
if: matrix.platform == 'osx-arm64'
run: |
cp vinca_osx_arm64.yaml vinca.yaml
mkdir -p recipes
$HOME/.pixi/bin/pixi run -v vinca --platform osx-arm64 -m
ls -la recipes
- name: Generate recipes for win-64
pixi run anaconda --version

- name: Generate recipes
shell: bash -l {0}
if: matrix.platform == 'win-64'
run: |
# Workaround for problem related to long paths
echo "CONDA_BLD_PATH=C:\\bld\\" >> $GITHUB_ENV
mkdir /c/bld
cp vinca_win.yaml vinca.yaml
mkdir -p recipes
$HOME/.pixi/bin/pixi run -v vinca --platform win-64 -m
ls -la recipes
- name: Check if there are packages to be built
id: newrecipecheck
pixi run -v vinca --platform ${{ matrix.platform }} -m -n

- name: Check patches
shell: bash -l {0}
run: |
set +e
if [ ! -d recipes ] || [ -z "$(ls -A recipes)" ]; then
echo "RECIPE_CREATED=0" >> $GITHUB_OUTPUT
else
echo "RECIPE_CREATED=1" >> $GITHUB_OUTPUT
fi
- name: Build recipes for linux-64
pixi run python check_patches_clean_apply.py

- name: Restore build cache
id: cache-restore
uses: actions/cache/restore@v4
with:
path: |
${{ matrix.folder_cache }}
key: ${{ runner.os }}-${{ matrix.platform }}-pr-${{ github.event.pull_request.number }}
# allow a later run to pick up a cache that has an extra suffix
restore-keys: |
${{ runner.os }}-${{ matrix.platform }}-pr-${{ github.event.pull_request.number }}-

- name: Optional force full rebuild
if: ${{ env.IGNORE_CACHE_AND_DO_FULL_REBUILD == 'true' }}
shell: bash -l {0}
if: steps.newrecipecheck.outputs.RECIPE_CREATED == 1 && matrix.platform == 'linux-64'
run: |
env -i $HOME/.pixi/bin/pixi run rattler-build build --recipe-dir additional_recipes --target-platform linux-64 -m ./conda_build_config.yaml -c robostack-staging -c conda-forge --skip-existing
env -i $HOME/.pixi/bin/pixi run rattler-build build --recipe-dir recipes --target-platform linux-64 -m ./conda_build_config.yaml -c robostack-staging -c conda-forge --skip-existing
- name: Build recipes for linux-aarch64
rm -rf ${{ matrix.folder_cache }}/*

- name: See packages restored by cache
shell: bash -l {0}
if: steps.newrecipecheck.outputs.RECIPE_CREATED == 1 && matrix.platform == 'linux-aarch64'
run: |
env -i $HOME/.pixi/bin/pixi run rattler-build build --recipe-dir additional_recipes --target-platform linux-aarch64 -m ./conda_build_config.yaml -c robostack-staging -c conda-forge --skip-existing
env -i $HOME/.pixi/bin/pixi run rattler-build build --recipe-dir recipes --target-platform linux-aarch64 -m ./conda_build_config.yaml -c robostack-staging -c conda-forge --skip-existing
- name: Build recipes for osx-64
ls ${{ matrix.folder_cache }} || true

- name: Build recipes
shell: bash -l {0}
if: steps.newrecipecheck.outputs.RECIPE_CREATED == 1 && matrix.platform == 'osx-64'
run: |
env -i $HOME/.pixi/bin/pixi run rattler-build build --recipe-dir additional_recipes --target-platform osx-64 -m ./conda_build_config.yaml -c robostack-staging -c conda-forge --skip-existing
env -i $HOME/.pixi/bin/pixi run rattler-build build --recipe-dir recipes --target-platform osx-64 -m ./conda_build_config.yaml -c robostack-staging -c conda-forge --skip-existing
- name: Build recipes for osx-arm64
pixi run rattler-build build --recipe-dir recipes --target-platform ${{ matrix.platform }} -m ./conda_build_config.yaml -c conda-forge -c robostack-staging --skip-existing

- name: See packages that will be saved in cache
shell: bash -l {0}
if: steps.newrecipecheck.outputs.RECIPE_CREATED == 1 && matrix.platform == 'osx-arm64'
if: always()
run: |
env -i $HOME/.pixi/bin/pixi run rattler-build build --recipe-dir additional_recipes --target-platform osx-arm64 -m ./conda_build_config.yaml -c robostack-staging -c conda-forge --skip-existing
env -i $HOME/.pixi/bin/pixi run rattler-build build --recipe-dir recipes --target-platform osx-arm64 -m ./conda_build_config.yaml -c robostack-staging -c conda-forge --skip-existing
- name: Build recipes for win-64
ls ${{ matrix.folder_cache }} || true

- name: Save build cache
uses: actions/cache/save@v4
if: always()
with:
path: |
${{ matrix.folder_cache }}
key: ${{ runner.os }}-${{ matrix.platform }}-pr-${{ github.event.pull_request.number }}-${{ github.run_id }}-${{ github.run_attempt }}

- name: Generate GitHub Actions workflows to catch post-PR problems
shell: bash -l {0}
if: steps.newrecipecheck.outputs.RECIPE_CREATED == 1 && matrix.platform == 'win-64'
run: |
$HOME/.pixi/bin/pixi run rattler-build build --recipe-dir additional_recipes --target-platform win-64 -m ./conda_build_config.yaml -c robostack-staging -c conda-forge --skip-existing
$HOME/.pixi/bin/pixi run rattler-build build --recipe-dir recipes -m ./conda_build_config.yaml --target-platform win-64 -c robostack-staging -c conda-forge --skip-existing
pixi run vinca-gha --platform ${{ matrix.platform }} --trigger-branch dummy_build_branch_as_it_is_unused -d ./recipes

- name: Upload build cache as artifact
if: ${{ always() && env.SAVE_CACHE_AS_ARTIFACT == 'true' }}
uses: actions/upload-artifact@v4
with:
name: cache-${{ matrix.platform }}-${{ github.run_id }}
path: ${{ matrix.folder_cache }}
retention-days: 7
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
vinca.yaml
recipes/
*.bat
*.sh
Expand Down
Loading
Loading