Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Christmas 2024 rebuild #5

Merged
merged 56 commits into from
Jan 3, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
56 commits
Select commit Hold shift + click to select a range
afae6d6
Remove ros-humble packages.
oursland Sep 15, 2024
d83ebcc
Remove homebrew from $PATH.
oursland Sep 15, 2024
ce05747
Run pixi with verbosity.
oursland Sep 15, 2024
2a4135c
Use the rattler-build branch of vinca.
oursland Sep 15, 2024
056800d
Set protobuf version to match conda-forge dependencies.
oursland Oct 8, 2024
76010fc
Add build and run dependencies.
oursland Oct 8, 2024
057c804
Build with Python 3.11.*
oursland Oct 8, 2024
047acb5
Add ros-jazzy-rviz-ogre-vendor.patch.
oursland Sep 12, 2024
11889f0
Add ros-jazzy-python-qt-binding.patch
oursland Oct 8, 2024
7acc473
Add ros-jazzy-qt-gui-cpp.patch
oursland Oct 8, 2024
b171664
Add ros-jazzy-rosidl-generator-py.patch
oursland Oct 8, 2024
b82cb10
Add ros-jazzy-ament-cmake-vendor-package.patch
oursland Oct 8, 2024
cfc968a
Add ros-jazzy-gz-ogre-next-vendor.patch
oursland Oct 8, 2024
efb2e9a
Add ros-jazzy-ros-gz-image.patch
oursland Oct 8, 2024
9acb6b5
Add ros-jazzy-rosbag2-py.osx.patch
oursland Oct 8, 2024
a22c989
Add ros-jazzy-rosidl-generator-py.osx.patch.
oursland Oct 8, 2024
adbe79b
Rename ros-jazzy-rclpy.patch to ros-jazzy-rclpy.osx.patch
oursland Oct 8, 2024
eef3d3a
Build ros-jazzy-desktop, with some exceptions.
oursland Sep 14, 2024
fac10b2
Update pixi.lock
oursland Oct 8, 2024
f916d0e
testpr: use rattler-build.
oursland Sep 15, 2024
d753848
Add dependencies to de-vendor gz-* packages
traversaro Oct 9, 2024
420a27a
WIP: build gazebo without vendoring.
oursland Oct 10, 2024
9f08062
Fix setting GZ_RELAX_VERSION_MATCH.
oursland Oct 10, 2024
b9e6b4c
WIP: more de-vendoring effort.
oursland Oct 11, 2024
5fc6344
WIP: use protobuf 5.27.5
oursland Oct 11, 2024
e3a7dc5
Update .ci_support/conda_forge_pinnings.yaml to match authoritative u…
oursland Oct 11, 2024
977762e
WIP: de-vendoring nearly complete.
oursland Oct 12, 2024
23bcf6e
HACK: force de-vendoring of gz-dartsim and gz-ogre-next.
oursland Oct 13, 2024
e0daf2b
[ci skip][skip ci] Fixup typo
Tobias-Fischer Dec 25, 2024
456d09d
Sync with humble
Tobias-Fischer Dec 27, 2024
194c4f4
Locally built >500 packages on osx-arm64
Tobias-Fischer Dec 29, 2024
037938b
Add git dep; do not build ompl tests
Tobias-Fischer Dec 30, 2024
da2bbf4
Try fix linux build
Tobias-Fischer Dec 30, 2024
61c1d2c
A bunch more patches
Tobias-Fischer Dec 30, 2024
d7b9180
Try fix Windows issue
Tobias-Fischer Dec 30, 2024
94d03dd
Unvendor sdformat, try fix Windows
Tobias-Fischer Dec 30, 2024
d05475f
Fix plotjuggler line endings
Tobias-Fischer Dec 30, 2024
0c20dc1
setup pixi before checkout
Tobias-Fischer Dec 30, 2024
9390ba5
debug
Tobias-Fischer Dec 30, 2024
93beb29
Mirror humble
Tobias-Fischer Dec 30, 2024
d54df06
Debug
Tobias-Fischer Dec 30, 2024
696a404
Win-2022?
Tobias-Fischer Dec 30, 2024
02e5c04
Fixup
Tobias-Fischer Dec 30, 2024
c467355
Update testpr.yml
Tobias-Fischer Dec 30, 2024
4caf21c
Try fix linux issues
Tobias-Fischer Dec 30, 2024
94cd8c9
Unvendor urdfdom
Tobias-Fischer Dec 31, 2024
069b546
Fixes
Tobias-Fischer Dec 31, 2024
a1adec5
Fix
Tobias-Fischer Dec 31, 2024
783795c
Fixes
Tobias-Fischer Dec 31, 2024
ddf7432
Temp workaround
Tobias-Fischer Dec 31, 2024
4d629ee
Update ros-jazzy-hardware-interface.patch
Tobias-Fischer Dec 31, 2024
e4b7fbc
Fixup hardware-interface patch
Tobias-Fischer Dec 31, 2024
986b27c
unvendor urdfdom
Tobias-Fischer Dec 31, 2024
1bf78b0
Fix patch
Tobias-Fischer Dec 31, 2024
7878835
Try fix linux builds
Tobias-Fischer Jan 1, 2025
53604c9
avoid env -i for testing
Tobias-Fischer Jan 2, 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
464 changes: 275 additions & 189 deletions .ci_support/conda_forge_pinnings.yaml

Large diffs are not rendered by default.

15 changes: 0 additions & 15 deletions .github/testpr_environment.yml

This file was deleted.

2 changes: 1 addition & 1 deletion .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ jobs:
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@rattler-build
pip install git+https://github.com/RoboStack/vinca.git@rattler-build-humble

- name: Generate recipes for linux-64
run: |
Expand Down
98 changes: 44 additions & 54 deletions .github/workflows/testpr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ jobs:
matrix:
os: [ubuntu-latest, macos-latest, macos-14, windows-2019]
platform: [linux-64, linux-aarch64, osx-64, win-64, osx-arm64]
environment: [beta]
exclude:
- os: ubuntu-latest
platform: win-64
Expand Down Expand Up @@ -46,25 +47,25 @@ jobs:
- os: windows-2019
platform: osx-arm64
steps:
- uses: actions/checkout@v4
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: prefix-dev/[email protected]
with:
environments: ${{ matrix.environment }}
frozen: true

# Workaround for https://github.com/RoboStack/ros-humble/pull/141#issuecomment-1941919816
- name: Clean up PATH
if: contains(matrix.os, 'windows')
uses: egor-tensin/cleanup-path@v4
with:
# cygpath in C:\Program Files\Git\usr\bin is used by install micromamba
# git in C:\Program Files\Git\bin is used by pip install git+
# git in C:\Program Files\Git\bin is used by pip install git+
dirs: 'C:\Program Files\Git\usr\bin;C:\Program Files\Git\bin;C:\Program Files\Git\cmd;C:\Program Files\Git\mingw64\bin'

- uses: actions/checkout@master
- name: install micromamba
uses: mamba-org/setup-micromamba@main
with:
environment-file: .github/testpr_environment.yml
condarc: |
channels:
- robostack-staging
- conda-forge

- shell: bash -l {0}
if: matrix.platform == 'linux-aarch64'
run: |
Expand All @@ -81,24 +82,15 @@ jobs:
sudo apt-get update
sudo apt-get install -y libgl1-mesa-dev libglu1-mesa-dev libx11-dev libxi-dev libxmu-dev

- shell: bash -l {0}
run: |
conda config --show channels | grep defaults && conda config --remove channels defaults
conda info
conda config --show
micromamba install -y pip rospkg networkx "catkin_pkg>=0.4.16" "ruamel.yaml>=0.16.6" "rosdistro>=0.8.0" "empy>=3.3.4" boa
- name: install vinca
shell: bash -l {0}
run: |
# use no-deps for now, otherwise problems with ruamel.
pip install git+https://github.com/RoboStack/vinca.git --no-deps
# For some reason, the Strawberry perl's pkg-config is found
# instead of the conda's one, so let's delete the /c/Strawberry directory
# Furthermore, we also need to remove an older SDK that is used and can result in compilation problems
- name: Debug pkg-config problem
if: contains(matrix.os, 'windows')
shell: bash -l {0}
run: |
rm -rf /c/Strawberry
rm -rf "/c/Program Files (x86)/Windows Kits/10/Include/10.0.17763.0/"

- name: Check what files have changed
id: filecheck
Expand All @@ -121,82 +113,80 @@ jobs:
shell: bash -l {0}
if: steps.filecheck.outputs.LINUX_YAML_CHANGED == 1 && matrix.os == 'ubuntu-latest' && matrix.platform == 'linux-64'
run: |
git clean -fdx
cp vinca_linux_64.yaml vinca.yaml
vinca --platform linux-64
ls
cat recipe.yaml
mkdir -p recipes
$HOME/.pixi/bin/pixi run -e beta -v vinca --platform linux-64 -m -n
ls -la recipes
- name: Generate recipes for linux-aarch64
shell: bash -l {0}
if: steps.filecheck.outputs.LINUX_AARCH_YAML_CHANGED == 1 && matrix.os == 'ubuntu-latest' && matrix.platform == 'linux-aarch64'
run: |
git clean -fdx
cp vinca_linux_aarch64.yaml vinca.yaml
vinca --platform linux-aarch64
ls
cat recipe.yaml
mkdir -p recipes
$HOME/.pixi/bin/pixi run -e beta -v vinca --platform linux-aarch64 -m -n
ls -la recipes
- name: Generate recipes for osx-64
shell: bash -l {0}
if: steps.filecheck.outputs.OSX_YAML_CHANGED == 1 && matrix.os == 'macos-latest' && matrix.platform == 'osx-64'
run: |
git clean -fdx
cp vinca_osx.yaml vinca.yaml
vinca --platform osx-64
ls
cat recipe.yaml
mkdir -p recipes
$HOME/.pixi/bin/pixi run -e beta -v vinca --platform osx-64 -m -n
ls -la recipes
- name: Generate recipes for osx-arm64
shell: bash -l {0}
if: steps.filecheck.outputs.OSX_ARM_YAML_CHANGED == 1 && matrix.os == 'macos-14' && matrix.platform == 'osx-arm64'
run: |
git clean -fdx
cp vinca_osx_arm64.yaml vinca.yaml
vinca --platform osx-arm64
ls
cat recipe.yaml
mkdir -p recipes
$HOME/.pixi/bin/pixi run -e beta -v vinca --platform osx-arm64 -m -n
ls -la recipes
- name: Generate recipes for win-64
shell: bash -l {0}
if: steps.filecheck.outputs.WIN_YAML_CHANGED == 1 && matrix.os == 'windows-2019' && matrix.platform == 'win-64'
run: |
git clean -fdx
# Workaround for problem related to long paths
echo "CONDA_BLD_PATH=C:\\bld\\" >> $GITHUB_ENV
mkdir /c/bld
cp vinca_win.yaml vinca.yaml
vinca --platform win-64
ls
cat recipe.yaml
mkdir -p recipes
$HOME/.pixi/bin/pixi run -e beta -v vinca --platform win-64 -m -n
ls -la recipes
- name: Check if there are packages to be built
id: newrecipecheck
shell: bash -l {0}
run: |
# continue on error
set +e
grep -q "outputs: \[\]" recipe.yaml > /dev/null
test ! -d recipes
echo "::set-output name=RECIPE_CREATED::${?}"
- name: Build recipes for linux-64
shell: bash -l {0}
run: |
boa build additional_recipes/ros2-distro-mutex/ -m ./.ci_support/conda_forge_pinnings.yaml -m ./conda_build_config.yaml
boa build . -m ./.ci_support/conda_forge_pinnings.yaml -m ./conda_build_config.yaml
if: steps.newrecipecheck.outputs.RECIPE_CREATED == 1 && steps.filecheck.outputs.LINUX_YAML_CHANGED == 1 && matrix.os == 'ubuntu-latest' && matrix.platform == 'linux-64'
run: |
env -i $HOME/.pixi/bin/pixi run -e beta rattler-build build --recipe-dir additional_recipes -m ./conda_build_config.yaml -c robostack-jazzy -c conda-forge --skip-existing
env -i $HOME/.pixi/bin/pixi run -e beta rattler-build build --recipe-dir recipes -m ./conda_build_config.yaml -c robostack-jazzy -c conda-forge --skip-existing
- name: Build recipes for linux-aarch64
shell: bash -l {0}
if: steps.newrecipecheck.outputs.RECIPE_CREATED == 1 && steps.filecheck.outputs.LINUX_AARCH_YAML_CHANGED == 1 && matrix.os == 'ubuntu-latest' && matrix.platform == 'linux-aarch64'
run: |
boa build additional_recipes/ros2-distro-mutex/ -m ./.ci_support/conda_forge_pinnings.yaml -m ./conda_build_config.yaml --target-platform=linux-aarch64
boa build . -m ./.ci_support/conda_forge_pinnings.yaml -m ./conda_build_config.yaml --target-platform=linux-aarch64
env -i $HOME/.pixi/bin/pixi run -e beta rattler-build build --recipe-dir additional_recipes -m ./conda_build_config.yaml -c robostack-jazzy -c conda-forge --skip-existing
env -i $HOME/.pixi/bin/pixi run -e beta rattler-build build --recipe-dir recipes -m ./conda_build_config.yaml -c robostack-jazzy -c conda-forge --skip-existing
- name: Build recipes for osx-64
shell: bash -l {0}
if: steps.newrecipecheck.outputs.RECIPE_CREATED == 1 && steps.filecheck.outputs.OSX_YAML_CHANGED == 1 && matrix.os == 'macos-latest' && matrix.platform == 'osx-64'
run: |
boa build additional_recipes/ros2-distro-mutex/ -m ./.ci_support/conda_forge_pinnings.yaml -m ./conda_build_config.yaml
boa build . -m ./.ci_support/conda_forge_pinnings.yaml -m ./conda_build_config.yaml
env -i $HOME/.pixi/bin/pixi run -e beta rattler-build build --recipe-dir additional_recipes -m ./conda_build_config.yaml -c robostack-jazzy -c conda-forge --skip-existing
env -i $HOME/.pixi/bin/pixi run -e beta rattler-build build --recipe-dir recipes -m ./conda_build_config.yaml -c robostack-jazzy -c conda-forge --skip-existing
- name: Build recipes for osx-arm64
shell: bash -l {0}
if: steps.newrecipecheck.outputs.RECIPE_CREATED == 1 && steps.filecheck.outputs.OSX_ARM_YAML_CHANGED == 1 && matrix.os == 'macos-14' && matrix.platform == 'osx-arm64'
run: |
boa build additional_recipes/ros2-distro-mutex/ -m ./.ci_support/conda_forge_pinnings.yaml -m ./conda_build_config.yaml --target-platform=osx-arm64
boa build . -m ./.ci_support/conda_forge_pinnings.yaml -m ./conda_build_config.yaml
env -i $HOME/.pixi/bin/pixi run -e beta rattler-build build --recipe-dir additional_recipes -m ./conda_build_config.yaml -c robostack-jazzy -c conda-forge --skip-existing
env -i $HOME/.pixi/bin/pixi run -e beta rattler-build build --recipe-dir recipes -m ./conda_build_config.yaml -c robostack-jazzy -c conda-forge --skip-existing
- name: Build recipes for win-64
shell: bash -l {0}
if: steps.newrecipecheck.outputs.RECIPE_CREATED == 1 && steps.filecheck.outputs.WIN_YAML_CHANGED == 1 && matrix.os == 'windows-2019' && matrix.platform == 'win-64'
run: |
boa build additional_recipes/ros2-distro-mutex/ -m ./.ci_support/conda_forge_pinnings.yaml -m ./conda_build_config.yaml
boa build . -m ./.ci_support/conda_forge_pinnings.yaml -m ./conda_build_config.yaml
$HOME/.pixi/bin/pixi run -e beta rattler-build build --recipe-dir additional_recipes -m ./conda_build_config.yaml -c robostack-jazzy -c conda-forge --skip-existing
$HOME/.pixi/bin/pixi run -e beta rattler-build build --recipe-dir recipes -m ./conda_build_config.yaml -c robostack-jazzy -c conda-forge --skip-existing
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -8,3 +8,4 @@ recipes/
# pixi environments
.pixi
*.egg-info
output/
2 changes: 1 addition & 1 deletion .scripts/build_linux.sh
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ pwd
cd ${FEEDSTOCK_ROOT}

for recipe in ${CURRENT_RECIPES[@]}; do
pixi run rattler-build build \
pixi run -v rattler-build build \
--recipe ${FEEDSTOCK_ROOT}/recipes/${recipe} \
-m ${FEEDSTOCK_ROOT}/conda_build_config.yaml \
-c robostack-jazzy -c conda-forge \
Expand Down
7 changes: 5 additions & 2 deletions .scripts/build_osx.sh
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,11 @@ export "CONDA_BLD_PATH=$HOME/conda-bld/"
curl -fsSL https://pixi.sh/install.sh | bash
export PATH="$HOME/.pixi/bin:$PATH"

# Remove homebrew from $PATH
export PATH=$(echo $PATH | tr ":" "\n" | grep -v 'homebrew' | xargs | tr ' ' ':')

for recipe in ${CURRENT_RECIPES[@]}; do
pixi run rattler-build build \
pixi run -v rattler-build build \
--recipe ${FEEDSTOCK_ROOT}/recipes/${recipe} \
-m ${FEEDSTOCK_ROOT}/conda_build_config.yaml \
-c robostack-jazzy -c conda-forge \
Expand All @@ -19,4 +22,4 @@ for recipe in ${CURRENT_RECIPES[@]}; do
# -m ${FEEDSTOCK_ROOT}/.ci_support/conda_forge_pinnings.yaml \
done

pixi run upload ${CONDA_BLD_PATH}/osx-*/*.conda --force
pixi run upload ${CONDA_BLD_PATH}/osx-*/*.conda --force
10 changes: 6 additions & 4 deletions .scripts/build_osx_arm64.sh
Original file line number Diff line number Diff line change
Expand Up @@ -9,15 +9,17 @@ export "CONDA_BLD_PATH=$HOME/conda-bld/"
curl -fsSL https://pixi.sh/install.sh | bash
export PATH="$HOME/.pixi/bin:$PATH"

# Remove homebrew from $PATH
export PATH=$(echo $PATH | tr ":" "\n" | grep -v 'homebrew' | xargs | tr ' ' ':')

for recipe in ${CURRENT_RECIPES[@]}; do
pixi run rattler-build build \
pixi run -v rattler-build build \
--recipe ${FEEDSTOCK_ROOT}/recipes/${recipe} \
-m ${FEEDSTOCK_ROOT}/conda_build_config.yaml \
-c robostack-jazzy -c conda-forge \
--output-dir $CONDA_BLD_PATH \
--target-platform=osx-arm64
--output-dir $CONDA_BLD_PATH

# -m ${FEEDSTOCK_ROOT}/.ci_support/conda_forge_pinnings.yaml \
done

pixi run upload ${CONDA_BLD_PATH}/osx-*/*.conda --force
pixi run upload ${CONDA_BLD_PATH}/osx-*/*.conda --force
2 changes: 1 addition & 1 deletion .scripts/build_win.bat
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ reg add HKLM\SYSTEM\CurrentControlSet\Control\FileSystem /v LongPathsEnabled /t
for %%X in (%CURRENT_RECIPES%) do (
echo "BUILDING RECIPE %%X"
cd %FEEDSTOCK_ROOT%\recipes\%%X\
pixi run rattler-build build --recipe %FEEDSTOCK_ROOT%\recipes\%%X\ ^
pixi run -v rattler-build build --recipe %FEEDSTOCK_ROOT%\recipes\%%X\ ^
-m %FEEDSTOCK_ROOT%\conda_build_config.yaml ^
-c robostack-jazzy -c conda-forge ^
--output-dir %CONDA_BLD_PATH%
Expand Down
21 changes: 0 additions & 21 deletions additional_recipes/ros-humble-octomap/recipe.yaml

This file was deleted.

20 changes: 20 additions & 0 deletions additional_recipes/ros-jazzy-urdfdom-headers/recipe.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
package:
name: ros-jazzy-urdfdom-headers
version: "1.1.2"

build:
number: 0

requirements:
run:
- urdfdom_headers ==1.1.2
- python 3.11.* *_cpython

about:
homepage: https://github.com/conda-forge/urdfdom_headers-feedstock
license: BSD-3-Clause
summary: |
Headers for URDF parsers
extra:
recipe-maintainers:
- ros-forge
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
package:
name: ros-humble-urdfdom-py
version: "1.2.0"
name: ros-jazzy-urdfdom-py
version: "1.2.1"

build:
number: 2
number: 0

requirements:
run:
- urdfdom-py 1.2.0
- urdfdom-py 1.2.1.*
- python 3.11.* *_cpython

about:
homepage: https://github.com/ros/urdf_parser_py
Expand All @@ -16,4 +17,4 @@ about:
Standalone URDF parser for Python.
extra:
recipe-maintainers:
- ros-forge
- ros-forge
20 changes: 20 additions & 0 deletions additional_recipes/ros-jazzy-urdfdom/recipe.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
package:
name: ros-jazzy-urdfdom
version: "4.0.1"

build:
number: 0

requirements:
run:
- urdfdom ==4.0.1
- python 3.11.* *_cpython

about:
homepage: https://github.com/conda-forge/urdfdom-feedstock
license: BSD-3-Clause
summary: |
URDF parser
extra:
recipe-maintainers:
- ros-forge
Loading
Loading