carlaviz icon indicating copy to clipboard operation
carlaviz copied to clipboard

Libcarla as submodule

Open umateusz opened this issue 2 years ago • 4 comments

Hey, I have prepared a version where libcarla is a submodule. It will be easier to change libcarla and compare carlaviz repo changes. What do you think?

umateusz avatar Nov 26 '21 11:11 umateusz

Hi @umateusz , I considered this before but I don't think this is a good idea. Here are my reasons.

  1. Carla's official repo has too many unrelated things/codes. Some of them belong to the server side or Unreal Engine side. Including all of them will bring messy stuffs to this repo.
  2. When carla upgrades, we may still need to change some bash scripts, like setup.sh in this repo. So why not copying the LibCarla codes as well?

mjxu96 avatar Nov 30 '21 03:11 mjxu96

Hi @umateusz , I considered this before but I don't think this is a good idea. Here are my reasons.

  1. Carla's official repo has too many unrelated things/codes. Some of them belong to the server side or Unreal Engine side. Including all of them will bring messy stuffs to this repo.
  2. When carla upgrades, we may still need to change some bash scripts, like setup.sh in this repo. So why not copying the LibCarla codes as well?

mjxu96 avatar Nov 30 '21 03:11 mjxu96

Hi @mjxu96.

Having libcarla as a submodule will make it easier to change version and control it. Currently, we cannot check which version of carlaviz works.

  1. I agree that It would be better to download libcarla without any additional dependencies but that would require some extra work on Carla side. I think it's better to download too much than copy the code.
  2. If we need any code changes, it's better to do them on the Carla side. If there are small changes to e.g. setup.sh, only this file can be copied.

It's your decision, if you think it's better to copy the code please close this PR.

umateusz avatar Dec 07 '21 09:12 umateusz

Hi all,

I think there is a solution somewhere in between of including whole CARLA sources as a submodule (which I agree could get quite messy) and copying the LibCarla code. Why not add downloading & extracting LibCarla sources as a part of setup.sh, the way other libs are added? It seemed to work quite well in our quick-and-dirty upgrade to 0.9.13 (https://github.com/wielgosz-info/carlaviz/commit/797fa93fe075616c139ecea1d79bb5e28914dc4a#diff-d32ba621b1d068eebb89e2404a5da195eafb40d58ee9f5c9d542a18a9cc6b35a). It allows both to avoid the overhead of checking out the whole carla repo history & ensures the carlaviz versioning is for a specific version of CARLA.

@mjxu96, do you think something like that could work?

yuijim avatar Feb 04 '22 11:02 yuijim

I will use Conan to manage the dependency in this PR https://github.com/mjxu96/carlaviz/pull/62

Thanks for the PR and thoughts.

mjxu96 avatar Jul 25 '23 14:07 mjxu96