ethz-asl / hand_eye_calibration

Python tools to perform time-synchronization and hand-eye calibration.
BSD 3-Clause "New" or "Revised" License
430 stars 115 forks source link

Combined rosinstall script and README #47

Closed mfehr closed 7 years ago

HannesSommer commented 7 years ago

Ah, you mean for every user? No I didn't export that functionality, yet. BUT if you just want to extract the current union: it should be lying in Jenkins workspace. Shall I grab it?

ffurrer commented 7 years ago

@HannesSommer well that would be nice to see if it's the same, but most probably @mfehr did already a perfect job so probably not necessary. The script to do it on the other hand would be awesome in general, maybe we could just put it in a separate repo, such that all they have to do is clone this one repo and the first repo of the chain and then everything else gets automated, wdyt?

HannesSommer commented 7 years ago

Ah, you mean for every user? No I didn't export that functionality, yet. BUT if you just want to extract the current union: it should be lying in Jenkins workspace. Shall I quickly grab it?(2min)

HannesSommer commented 7 years ago

Oops, did I send that twice? I was interrupted.. Strange .. Sorry

mfehr commented 7 years ago

@HannesSommer @ffurrer I think I might have added too many dependencies, all are necessary to build the complete workspace, but if you just build hand_eye_calibration packages you might not need some of them. So it would indeed be interesting to compare them.

HannesSommer commented 7 years ago

@ffurrer sure that would be a very nice tool to have :). My biggest concern is that should actually go to wstool but there things get way more complicate for example because it is cross VCS. But probably this is me being perfectionist. Is someone volunteering to care for that? It should be possible to extract something working from https://github.com/ethz-asl/continuous_integration/blob/master/modules/pull_auto_dependencies.sh, which leans on https://github.com/ethz-asl/continuous_integration/blob/master/modules/rosinstall_diff.py. However for it to be user-friendly and robust some considerable cleanup would be necessary. If none I might do it but a bit later..

@mfehr here is the list from Jenkins (ibex-xenial):

- git:
    local-name: Schweizer-Messer
    uri: https://github.com/ethz-asl/Schweizer-Messer.git
- git:
    local-name: asl_cmake_modules
    uri: https://github.com/ethz-asl/asl_cmake_modules.git
- git:
    local-name: aslam_cv2
    uri: git@github.com:ethz-asl/aslam_cv2
- git:
    local-name: aslam_cv2_basic
    uri: git@github.com:ethz-asl/aslam_cv2_basic
- git:
    local-name: aslam_optimizer
    uri: https://github.com/ethz-asl/aslam_optimizer.git
- git:
    local-name: aslam_splines
    uri: https://github.com/ethz-asl/aslam_splines.git
- git:
    local-name: catkin_simple
    uri: https://github.com/catkin/catkin_simple.git
- git:
    local-name: doxygen_catkin
    uri: https://github.com/ethz-asl/doxygen_catkin.git
- git:
    local-name: eigen_catkin
    uri: https://github.com/ethz-asl/eigen_catkin.git
- git:
    local-name: eigen_checks
    uri: https://github.com/ethz-asl/eigen_checks.git
- git:
    local-name: ethzasl_apriltag2
    uri: git@github.com:ethz-asl/ethzasl_apriltag2.git
- git:
    local-name: ethzasl_brisk
    uri: git@github.com:ethz-asl/ethzasl_brisk.git
- git:
    local-name: gflags_catkin
    uri: https://github.com/ethz-asl/gflags_catkin.git
- git:
    local-name: glog_catkin
    uri: https://github.com/ethz-asl/glog_catkin.git
- git:
    local-name: libnabo
    uri: https://github.com/ethz-asl/libnabo.git
- git:
    local-name: minkindr
    uri: https://github.com/ethz-asl/minkindr.git
- git:
    local-name: oomact
    uri: https://github.com/ethz-asl/oomact
- git:
    local-name: opencv3_catkin
    uri: https://github.com/ethz-asl/opencv3_catkin.git
- git:
    local-name: opengv
    uri: https://github.com/ethz-asl/opengv.git
- git:
    local-name: suitesparse
    uri: https://github.com/ethz-asl/suitesparse.git
- git:
    local-name: yaml_cpp_catkin
    uri: https://github.com/ethz-asl/yaml_cpp_catkin.git

It is probably also not perfect because it doesn't consider dependencies on a packag level. Only on a repo level. One problem is that most things are not needed for all packages in the repo. In fact they are very heterogeneous. This type of repo makes exactly the big difference between dep resolution on package vs. on repo level.

HannesSommer commented 7 years ago

Btw: in that list we can nicely detect what might still need to be published or replaced: those that have ssh URIs (starting with git@).