Skip to content

Rebuild 0.15 to align missing pins#79

Open
diegoferigo-rai wants to merge 13 commits intoRoboStack:mainfrom
diegoferigo-rai:diegoferigo/conda-build-config-rebuild
Open

Rebuild 0.15 to align missing pins#79
diegoferigo-rai wants to merge 13 commits intoRoboStack:mainfrom
diegoferigo-rai:diegoferigo/conda-build-config-rebuild

Conversation

@diegoferigo-rai
Copy link
Copy Markdown
Contributor

Replaces #78 since mutex bump likely messed up GitHub Actions cache.


This PR aims to fully address the problem discussed in:

Given that this change does not introduce any revision bumps, I do not anticipate build failures or platform-specific regressions.


I also introduced a new pixi task that prints the diff against the YAML from conda-forge-pinning-feedstock. This is intended to improve visibility into divergence from upstream pinning and make maintenance of the custom YAML more explicit.

pixi run conda-build-config-upstream-diff
--- conda_build_config.yaml     2026-04-30 15:48:36.102601184 +0200
+++ -	2026-04-30 15:48:37.478141867 +0200
@@ -1,9 +1,9 @@
 numpy:
   - 2
 assimp:
-  - 5
+  - 6.0.3
 libprotobuf:
-  - 6.33.5
+  - 6.31.1
 protobuf:
   - 6.33.5
 spdlog:
@@ -38,7 +38,13 @@
 cdt_name: # [linux]
   - conda # [linux]
 python:
-  - 3.12.* *_cpython
+  # win-arm64 on conda-forge supports only 3.14+
+  # part of a zip_keys: python, is_python_min
+  - 3.10.* *_cpython # [not (win and arm64)]
+  - 3.11.* *_cpython # [not (win and arm64)]
+  - 3.12.* *_cpython # [not (win and arm64)]
+  - 3.13.* *_cp313 # [not (win and arm64)]
+  - 3.14.* *_cp314 # [win and arm64]
 python_impl:
   - cpython
 c_compiler:
@@ -47,7 +53,7 @@
   - vs2022 # [win]
 c_compiler_version: # [unix]
   - 14 # [linux]
-  - 18 # [osx]
+  - 19 # [osx]
   - 14 # [linux and not ppc64le and os.environ.get("CF_CUDA_ENABLED", "False") == "True"]
 c_stdlib:
   - sysroot # [linux]
@@ -63,7 +69,7 @@
   - vs2022 # [win]
 cxx_compiler_version: # [unix]
   - 14 # [linux]
-  - 18 # [osx]
+  - 19 # [osx]
   - 14 # [linux and not ppc64le and os.environ.get("CF_CUDA_ENABLED", "False") == "True"]
 libzenohc:
   - 1.7.2
@@ -72,6 +78,6 @@
 libhwloc:
   - 2.12.2
 urdfdom:
-  -  4.0.1
+  - '5.1'
 urdfdom-headers:
   - 1.1.2

The generated diff includes updates beyond the assimp changes.

@traversaro @Tobias-Fischer could you take a look and advise which of these additional changes are appropriate to include in this minor rebuild?

@diegoferigo-rai
Copy link
Copy Markdown
Contributor Author

diegoferigo-rai commented Apr 30, 2026

Moving this comment here for visibility:

@traversaro @Tobias-Fischer - do you have any insight into why this PR, which doesn't appear to introduce any functional changes yet, is now failing to build? I would expect it to behave as:

@traversaro
Copy link
Copy Markdown
Member

Moving this comment here for visibility:

@traversaro @Tobias-Fischer - do you have any insight into why this PR, which doesn't appear to introduce any functional changes yet, is now failing to build? I would expect it to behave as:

* [Full rebuild March 2026 bump ros2-distro-mutex to 0.14.0 and build number to 17 #62](https://github.com/RoboStack/ros-kilted/pull/62)

The build and host environments do not use any kind of lockfile. The only thing ensuring reproducibility are the pinning. In this specific case, the build are failing for exactly the same reason for which:

micromamba create -n test "ffmpeg>=8.0.1" libprotobuf==6.33.* shaderc==2026.02.*

is failing with error:

error    libmamba Could not solve for environment specs
    The following packages are incompatible
    ├─ ffmpeg >=8.0.1 * is installable with the potential options
    │  ├─ ffmpeg 8.0.1 would require
    │  │  └─ libopenvino-tensorflow-frontend >=2025.2.0,<2025.2.1.0a0 * with the potential options
    │  │     ├─ libopenvino-tensorflow-frontend 2025.2.0 would require
    │  │     │  └─ libprotobuf >=6.31.1,<6.31.2.0a0 *, which can be installed;
    │  │     └─ libopenvino-tensorflow-frontend 2025.2.0 would require
    │  │        └─ libprotobuf >=5.29.3,<5.29.4.0a0 *, which can be installed;
    │  ├─ ffmpeg 8.0.1 would require
    │  │  └─ shaderc >=2025.5,<2025.6.0a0 *, which can be installed;
    │  └─ ffmpeg 8.0.1 would require
    │     └─ libopenvino-onnx-frontend >=2025.3.0,<2025.3.1.0a0 *, which requires
    │        └─ libprotobuf >=6.31.1,<6.31.2.0a0 *, which can be installed;
    ├─ libprotobuf =6.33 * is not installable because it conflicts with any installable versions previously reported;
    └─ shaderc =2026.2 * is not installable because it conflicts with any installable versions previously reported.

earlier build worked fine as shaderc 2026.2 was not released (see conda-forge/shaderc-feedstock#23), so ros-kilted-gz-ogre-next-vendor was built with shaderc 2026.1, and a build of ffmpeg compatible with shaderc 2026.1 was present. Now that shaderc 2026.2 was released, it is used by the ros-kilted-gz-ogre-next-vendor, resulting in a build of a package not co-installable with ffmpeg .

The proper way to fix this is:

  • Rebuild all conda-forge packages that depend on shaderc with 2026.2
  • Pin shaderc to 2026.2 in conda-forge-pinnings
  • Add shaderc pin to 2026.2 also in the local conda_build_config.yaml here in ros-kilted

The fast way is to pin shaderc to 2026.1 here. : )

@traversaro
Copy link
Copy Markdown
Member

The build with shaderc 2026.1 fails with:

2026-04-30T23:33:05.5897611Z  │
2026-04-30T23:33:05.5897871Z  ╰─────────────────── (took 5 seconds)
2026-04-30T23:33:05.7576108Z Error:   × Failed to resolve dependencies: Cannot solve the request because of: The
2026-04-30T23:33:05.7576767Z   │ following packages are incompatible
2026-04-30T23:33:05.7577619Z   │ ├─ libopencv 4.13.0.* can be installed with any of the following options:
2026-04-30T23:33:05.7578495Z   │ │  ├─ libopencv 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7579267Z   │ 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7580020Z   │ 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7580749Z   │ 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7581490Z   │ 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7582270Z   │ 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7583018Z   │ 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7583775Z   │ 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7584510Z   │ 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7585249Z   │ 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7585916Z   │ 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7586507Z   │ 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7587104Z   │ 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 would require
2026-04-30T23:33:05.7587870Z   │ │  │  └─ ffmpeg >=8.0.1,<9.0a0, which can be installed with any of the
2026-04-30T23:33:05.7588396Z   │ following options:
2026-04-30T23:33:05.7589016Z   │ │  │     └─ ffmpeg 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 |
2026-04-30T23:33:05.7589741Z   │ 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 |
2026-04-30T23:33:05.7590527Z   │ 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 |
2026-04-30T23:33:05.7591589Z   │ 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 |
2026-04-30T23:33:05.7592321Z   │ 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 |
2026-04-30T23:33:05.7592923Z   │ 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 |
2026-04-30T23:33:05.7593525Z   │ 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 |
2026-04-30T23:33:05.7594109Z   │ 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 |
2026-04-30T23:33:05.7594705Z   │ 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 would
2026-04-30T23:33:05.7595178Z   │ require
2026-04-30T23:33:05.7595626Z   │ │  │        └─ shaderc >=2025.5,<2025.6.0a0, which can be installed with
2026-04-30T23:33:05.7596260Z   │ any of the following options:
2026-04-30T23:33:05.7596681Z   │ │  │           └─ shaderc 2025.5 | 2025.5
2026-04-30T23:33:05.7597362Z   │ │  └─ libopencv 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7598101Z   │ 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7598686Z   │ 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7599284Z   │ 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7599853Z   │ 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7600437Z   │ 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7601022Z   │ 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7601613Z   │ 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7602205Z   │ 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7602903Z   │ 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0
2026-04-30T23:33:05.7603378Z   │ would require
2026-04-30T23:33:05.7603906Z   │ │     └─ libprotobuf >=6.31.1,<6.31.2.0a0, which can be installed with any
2026-04-30T23:33:05.7604509Z   │ of the following options:
2026-04-30T23:33:05.7605041Z   │ │        └─ libprotobuf 6.31.1 | 6.31.1 | 6.31.1 | 6.31.1 | 6.31.1
2026-04-30T23:33:05.7605741Z   │ └─ ros2-distro-mutex 0.15.* kilted_* cannot be installed because there are
2026-04-30T23:33:05.7606340Z   │ no viable options:
2026-04-30T23:33:05.7606767Z   │    └─ ros2-distro-mutex 0.15.0 would constrain
2026-04-30T23:33:05.7607622Z   │       ├─ shaderc 2026.1.*, which conflicts with any installable versions
2026-04-30T23:33:05.7608299Z   │ previously reported
2026-04-30T23:33:05.7608889Z   │       └─ libprotobuf 6.33.5.*, which conflicts with any installable
2026-04-30T23:33:05.7609498Z   │ versions previously reported
2026-04-30T23:33:05.7609877Z   │ 
2026-04-30T23:33:05.7610422Z   ╰─▶ Cannot solve the request because of: The following packages are
2026-04-30T23:33:05.7610964Z       incompatible
2026-04-30T23:33:05.7611533Z       ├─ libopencv 4.13.0.* can be installed with any of the following
2026-04-30T23:33:05.7612030Z       options:
2026-04-30T23:33:05.7612574Z       │  ├─ libopencv 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7613095Z       4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7613573Z       4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7614039Z       4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7614495Z       4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7614980Z       4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7615572Z       4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7616194Z       4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7616798Z       4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7617515Z       4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7618121Z       4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7618689Z       4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7619243Z       4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 would require
2026-04-30T23:33:05.7619889Z       │  │  └─ ffmpeg >=8.0.1,<9.0a0, which can be installed with any of the
2026-04-30T23:33:05.7620349Z       following options:
2026-04-30T23:33:05.7620825Z       │  │     └─ ffmpeg 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1
2026-04-30T23:33:05.7621323Z       | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1
2026-04-30T23:33:05.7621816Z       | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1
2026-04-30T23:33:05.7622404Z       | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1
2026-04-30T23:33:05.7623103Z       | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1
2026-04-30T23:33:05.7623698Z       | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1
2026-04-30T23:33:05.7624287Z       | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1
2026-04-30T23:33:05.7624877Z       | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1
2026-04-30T23:33:05.7625356Z       | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 | 8.0.1 would
2026-04-30T23:33:05.7625745Z       require
2026-04-30T23:33:05.7626165Z       │  │        └─ shaderc >=2025.5,<2025.6.0a0, which can be installed with
2026-04-30T23:33:05.7626608Z       any of the following options:
2026-04-30T23:33:05.7627104Z       │  │           └─ shaderc 2025.5 | 2025.5
2026-04-30T23:33:05.7627833Z       │  └─ libopencv 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7628448Z       4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7629046Z       4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7629642Z       4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7630228Z       4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7630824Z       4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7631505Z       4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7631986Z       4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7632457Z       4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 |
2026-04-30T23:33:05.7632939Z       4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0 | 4.13.0
2026-04-30T23:33:05.7633328Z       would require
2026-04-30T23:33:05.7633791Z       │     └─ libprotobuf >=6.31.1,<6.31.2.0a0, which can be installed with
2026-04-30T23:33:05.7634358Z       any of the following options:
2026-04-30T23:33:05.7634975Z       │        └─ libprotobuf 6.31.1 | 6.31.1 | 6.31.1 | 6.31.1 | 6.31.1
2026-04-30T23:33:05.7635714Z       └─ ros2-distro-mutex 0.15.* kilted_* cannot be installed because there
2026-04-30T23:33:05.7636334Z       are no viable options:
2026-04-30T23:33:05.7636854Z          └─ ros2-distro-mutex 0.15.0 would constrain
2026-04-30T23:33:05.7637670Z             ├─ shaderc 2026.1.*, which conflicts with any installable versions
2026-04-30T23:33:05.7638276Z       previously reported
2026-04-30T23:33:05.7638863Z             └─ libprotobuf 6.33.5.*, which conflicts with any installable
2026-04-30T23:33:05.7639381Z       versions previously reported
2026-04-30T23:33:05.7639829Z       
2026-04-30T23:33:05.7639981Z 

probably it is just easier to ensure that shaderc is properly pinned at conda-forge level.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants