conda-forge / pinocchio-feedstock

A conda-smithy repository for pinocchio.
BSD 3-Clause "New" or "Revised" License
12 stars 10 forks source link

pinocchio needs to be part of global pinning #113

Open h-vetinari opened 5 months ago

h-vetinari commented 5 months ago

Pinocchio has a very tight run-export https://github.com/conda-forge/pinocchio-feedstock/blob/3f9ec3394ff5c2c0afb0254047b68f8a0da6cd4d/recipe/meta.yaml#L17-L18

which means that packages depending on pinocchio (like hpp-pinocchio) need to be rebuilt for every pinocchio version, otherwise there will be conflicts. For example, the bot hasn't been able to open a python 3.12 PR for hpp-corbaserver because hpp-pinocchio only got Python 3.12 support as of 2.6.21, whereas the last build of hpp-pinocchio was only built for 2.6.20, and therefore the bot fails miserably with long...

...resolution errors ``` linux_64_python3.12.____cpython: Could not solve for environment specs The following packages are incompatible ├─ hpp-pinocchio 4.15.1.* is installable with the potential options │ ├─ hpp-pinocchio 4.15.1 would require │ │ └─ pinocchio >=2.6.20,<2.6.21.0a0 with the potential options │ │ ├─ pinocchio [2.6.18|2.6.20] would require │ │ │ └─ python_abi 3.10.* *_cp310, which can be installed; │ │ ├─ pinocchio 2.6.20 would require │ │ │ ├─ boost >=1.78.0,<1.78.1.0a0 with the potential options │ │ │ │ ├─ boost 1.78.0 would require │ │ │ │ │ └─ boost-cpp 1.78.0.* , which can be installed; │ │ │ │ └─ boost 1.78.0 would require │ │ │ │ └─ python_abi 3.12.* *_cp312, which conflicts with any installable versions previously reported; │ │ │ └─ python_abi 3.10.* *_cp310, which can be installed; │ │ ├─ pinocchio [2.6.18|2.6.20] would require │ │ │ └─ python_abi 3.11.* *_cp311, which can be installed; │ │ ├─ pinocchio 2.6.20 would require │ │ │ ├─ boost >=1.78.0,<1.78.1.0a0 with the potential options │ │ │ │ ├─ boost 1.78.0, which can be installed (as previously explained); │ │ │ │ └─ boost 1.78.0, which cannot be installed (as previously explained); │ │ │ └─ python_abi 3.11.* *_cp311, which can be installed; │ │ ├─ pinocchio [2.6.18|2.6.20] would require │ │ │ └─ python_abi 3.8.* *_cp38, which can be installed; │ │ ├─ pinocchio 2.6.20 would require │ │ │ ├─ boost >=1.78.0,<1.78.1.0a0 with the potential options │ │ │ │ ├─ boost 1.78.0, which can be installed (as previously explained); │ │ │ │ └─ boost 1.78.0, which cannot be installed (as previously explained); │ │ │ └─ python_abi 3.8 *_pypy38_pp73, which can be installed; │ │ ├─ pinocchio 2.6.20 would require │ │ │ ├─ boost >=1.78.0,<1.78.1.0a0 with the potential options │ │ │ │ ├─ boost 1.78.0, which can be installed (as previously explained); │ │ │ │ └─ boost 1.78.0, which cannot be installed (as previously explained); │ │ │ └─ python_abi 3.8.* *_cp38, which can be installed; │ │ ├─ pinocchio 2.6.20 would require │ │ │ ├─ boost >=1.78.0,<1.78.1.0a0 with the potential options │ │ │ │ ├─ boost 1.78.0, which can be installed (as previously explained); │ │ │ │ └─ boost 1.78.0, which cannot be installed (as previously explained); │ │ │ └─ python_abi 3.9.* *_cp39, which can be installed; │ │ ├─ pinocchio [2.6.18|2.6.20] would require │ │ │ └─ python_abi 3.9.* *_cp39, which can be installed; │ │ ├─ pinocchio 2.6.20 would require │ │ │ ├─ boost >=1.78.0,<1.78.1.0a0 with the potential options │ │ │ │ ├─ boost 1.78.0, which can be installed (as previously explained); │ │ │ │ └─ boost 1.78.0, which cannot be installed (as previously explained); │ │ │ └─ python_abi 3.9 *_pypy39_pp73, which can be installed; │ │ └─ pinocchio [2.6.18|2.6.20] would require │ │ └─ python_abi 3.9 *_pypy39_pp73, which can be installed; │ └─ hpp-pinocchio 4.15.1 would require │ ├─ assimp >=5.2.5,<5.2.6.0a0 , which requires │ │ └─ boost-cpp >=1.78.0,<1.78.1.0a0 , which can be installed; │ ├─ hpp-fcl >=2.2.0,<2.3.0a0 with the potential options │ │ ├─ hpp-fcl 2.2.0 would require │ │ │ └─ python_abi 3.10.* *_cp310, which can be installed; │ │ ├─ hpp-fcl 2.2.0 would require │ │ │ └─ python_abi 3.11.* *_cp311, which can be installed; │ │ ├─ hpp-fcl 2.2.0 would require │ │ │ └─ python_abi 3.8 *_pypy38_pp73, which can be installed; │ │ ├─ hpp-fcl 2.2.0 would require │ │ │ └─ python_abi 3.8.* *_cp38, which can be installed; │ │ ├─ hpp-fcl 2.2.0 would require │ │ │ └─ python_abi 3.9.* *_cp39, which can be installed; │ │ └─ hpp-fcl 2.2.0 would require │ │ └─ python_abi 3.9 *_pypy39_pp73, which can be installed; │ └─ pinocchio >=2.6.18,<2.6.19.0a0 with the potential options │ ├─ pinocchio [2.6.18|2.6.20], which can be installed (as previously explained); │ ├─ pinocchio [2.6.18|2.6.20], which can be installed (as previously explained); │ ├─ pinocchio [2.6.18|2.6.20], which can be installed (as previously explained); │ ├─ pinocchio [2.6.18|2.6.20], which can be installed (as previously explained); │ ├─ pinocchio [2.6.18|2.6.20], which can be installed (as previously explained); │ └─ pinocchio 2.6.18 would require │ └─ python_abi 3.8 *_pypy38_pp73, which can be installed; ├─ libboost-devel 1.82.* is not installable because it requires │ └─ boost-cpp 1.82.0* , which conflicts with any installable versions previously reported; └─ python 3.12.* *_cpython is not installable because there are no viable options ├─ python [3.12.0|3.12.1|3.12.2|3.12.3] would require │ └─ python_abi 3.12.* *_cp312, which conflicts with any installable versions previously reported; └─ python 3.12.0rc3 would require └─ _python_rc, which does not exist (perhaps a missing channel). ```

Adding pinocchio to the global pinning will at least ensure that the bot opens a PR for a new migrator whenever there's a new pinocchio version.

CC @conda-forge/pinocchio @conda-forge/hpp-pinocchio @conda-forge/hpp-corbaserver

jcarpent commented 5 months ago

Perfect !

ManifoldFR commented 2 weeks ago

Have we made progress on this ?