RoboStack / RoboStack/robostack.github.io

Track packages that are released in ROS build farm but are/should be in conda-forge

Đang mở
#17 12 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Ngôn ngữ chính
Astro
Star
385
Fork
36
Merge trung bình
5 giờ 37 phút
Pull request đã merge (30 ngày)
18

Mô tả

The ROS Debian binary packages that are released via Bloom are essentially a distribution of software that builds on top of another distribution of software (the base Debian/Ubuntu repositories). This relation is similar to the one that in the conda world exists between conda-forge and bioconda channels, and in a sense is the same relation that we would like to create between conda-forge and robostack.

Over the time some packages that we not ROS-specific (i.e. they did not depend on the ROS communication middleware) were released with Bloom for several reasons. The major reason is that it was much faster and easier to get a package published via Bloom rather then by going through the actual Debian/Ubuntu packaging process, while in some other cases a package was indeed available in Debian/Ubuntu repos, but the version available in the repos was not recent enough, and it was not possible to update it due to Debian policies for updates in already released distros.

In the case of robostack, given that getting new packages in conda-forge is relatively easy and fast, and the same holds for updating the version of existing packages, I think it make sense to avoid to re-build packages that are or should be in conda-forge even if they are release in bloom/rosdistro, but rather we should have some systematic way to skip them and install the conda-forge version instead. I am not sure what is the proper way of doing so, but for the time being I opened this issue to track the occurrences of this pattern that I spot.

Package repo It is already in conda-forge? rosdistro package name Does the rosdistro package also adds some files? Related issue(s)
https://github.com/pybind/pybind11 https://github.com/conda-forge/pybind11-feedstock pybind11_catkin in ROS1, pybind11_vendor in ROS2 Yes https://github.com/RoboStack/ros-noetic/issues/19
https://github.com/OctoMap/octomap https://github.com/conda-forge/octomap-feedstock octomap No https://github.com/ros/rosdistro/issues/26527
https://github.com/flexible-collision-library/fcl https://github.com/conda-forge/fcl-feedstock fcl No https://github.com/ros/rosdistro/pull/27789
https://github.com/IntelRealSense/librealsense No librealsense No https://github.com/robotology/robotology-superbuild/issues/564
https://github.com/borglab/gtsam Yes gtsam No https://github.com/ros/rosdistro/pull/23198
https://github.com/ethz-adrl/ifopt No ifopt No
https://github.com/stack-of-tasks/pinocchio https://github.com/conda-forge/pinocchio-feedstock pinocchio No
https://github.com/oxfordcontrol/osqp Soon, https://github.com/conda-forge/staged-recipes/pull/13587 osqp_vendor Yes, the CMake config files for the osqp_vendor CMake package, and the osqp_vendor-extras.cmake file. See https://github.com/tier4/osqp_vendor
https://github.com/OGRECave/ogre https://github.com/conda-forge/ogre-feedstock rviz_ogre_vendor Yes, it also installs the CMake config files for the rviz_ogre_vendor CMake files, and some additional related files. Furthermore, just on Windows the used ogre also statically links a locally built copy of freetype and zlib.
https://github.com/stack-of-tasks/eigenpy Yes eigenpy No.
https://tvm.apache.org/ https://github.com/conda-forge/libtvm-feedstock tvm_vendor Yes, it even enables some options while compiling tvm, that are related to vulkan and spirv, that I am not sure if they are available in conda-forge.

Just for ROS2, there are a few more in https://github.com/ros2/?q=vendor .

Hướng dẫn đóng góp

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Hướng nghiên cứu

Bắt đầu với bảng gói và các issue được liên kết của conda-forge, rosdistro cùng các issue liên quan; so sánh những gói nào bị trùng lặp và liệu các gói vendor có thêm tệp hay không. Được xem là hoàn tất khi dự án có một phương pháp có tài liệu và mang tính hệ thống để xác định các gói nên sử dụng conda-forge thay vì được xây dựng lại thông qua Bloom.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
cmake, debian
Lĩnh vực
build-system, devops
Loại issue
Tính năng
Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Cần làm rõ
Mức phù hợp với người mới
25/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.