Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

build: add missing build dependency #2721

Closed
wants to merge 6 commits into from

Conversation

jspricke
Copy link

@jspricke jspricke commented Jan 23, 2023

Description

See autowarefoundation/autoware#3222

Pre-review checklist for the PR author

The PR author must check the checkboxes below when creating the PR.

In-review checklist for the PR reviewers

The PR reviewers must check the checkboxes below before approval.

Post-review checklist for the PR author

The PR author must check the checkboxes below before merging.

  • There are no open discussions or they are tracked via tickets.

After all checkboxes are checked, anyone who has write access can merge the PR.

@jspricke jspricke requested review from scepter914, taikitanaka3 and a team as code owners January 23, 2023 12:38
@github-actions github-actions bot added the component:common Common packages from the autoware-common repository. (auto-assigned) label Jan 23, 2023
@jspricke jspricke changed the title build: Add missing build dependency build: add missing build dependency Jan 23, 2023
@esteve
Copy link
Contributor

esteve commented Jan 23, 2023

@jspricke thanks, I've triggered the CI to make sure the PR is correct.

@codecov
Copy link

codecov bot commented Jan 23, 2023

Codecov Report

Base: 11.54% // Head: 11.52% // Decreases project coverage by -0.02% ⚠️

Coverage data is based on head (93cc36f) compared to base (4c9d247).
Patch has no changes to coverable lines.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2721      +/-   ##
==========================================
- Coverage   11.54%   11.52%   -0.02%     
==========================================
  Files        1309     1309              
  Lines       91291    91477     +186     
  Branches    24211    24366     +155     
==========================================
+ Hits        10540    10547       +7     
- Misses      69716    69867     +151     
- Partials    11035    11063      +28     
Flag Coverage Δ *Carryforward flag
differential 2.81% <ø> (?)
total 11.51% <ø> (-0.03%) ⬇️ Carriedforward from e9c2d23

*This pull request uses carry forward flags. Click here to find out more.

Impacted Files Coverage Δ
localization/ekf_localizer/src/mahalanobis.cpp 66.66% <0.00%> (-13.34%) ⬇️
...zation/ekf_localizer/test/test_warning_message.cpp 54.54% <0.00%> (-12.13%) ⬇️
...vehicle_model/sim_model_ideal_steer_acc_geared.cpp 80.95% <0.00%> (-4.77%) ⬇️
...calization/ekf_localizer/test/test_mahalanobis.cpp 45.45% <0.00%> (-4.55%) ⬇️
localization/ekf_localizer/src/ekf_localizer.cpp 0.00% <0.00%> (ø)
localization/ekf_localizer/src/warning_message.cpp 66.66% <0.00%> (ø)
...erception/traffic_light_classifier/src/nodelet.cpp 0.00% <0.00%> (ø)
..._localizer/include/ekf_localizer/ekf_localizer.hpp 0.00% <0.00%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

☔ View full report at Codecov.
📢 Do you have feedback about the report comment? Let us know in this issue.

@jspricke
Copy link
Author

Failing build without this: https://github.com/jspricke/autoware_packages/actions/runs/3986476130
Successful build with this: https://github.com/jspricke/autoware_packages/actions/runs/3986552483 (check the raw logs as long as it is running)

The failing CI job seems unrelated.

@github-actions github-actions bot added component:sensing Data acquisition from sensors, drivers, preprocessing. (auto-assigned) component:system System design and integration. (auto-assigned) labels Jan 23, 2023
@github-actions github-actions bot removed the component:sensing Data acquisition from sensors, drivers, preprocessing. (auto-assigned) label Jan 23, 2023
Copy link
Contributor

@yukkysaito yukkysaito left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@github-actions github-actions bot added the component:sensing Data acquisition from sensors, drivers, preprocessing. (auto-assigned) label Jan 23, 2023
@github-actions github-actions bot added the component:perception Advanced sensor data processing and environment understanding. (auto-assigned) label Jan 24, 2023
@esteve
Copy link
Contributor

esteve commented Jan 24, 2023

@jspricke thanks for your contribution, I'm tasked with working on generating Debian packages (hence the PRs to your repostory), so I'll take it from here. I might have to close this PR and break it into smaller PRs because we require package maintainers to approve the changes, and the list of reviewers for this PR is growing quickly.

Used in predicted_objects_display.hpp.

Signed-off-by: Jochen Sprickerhof <git@jochen.sprickerhof.de>
Signed-off-by: Jochen Sprickerhof <git@jochen.sprickerhof.de>
Signed-off-by: Jochen Sprickerhof <git@jochen.sprickerhof.de>
Used in lowpass_filter_1d.hpp.

Signed-off-by: Jochen Sprickerhof <git@jochen.sprickerhof.de>
Signed-off-by: Jochen Sprickerhof <git@jochen.sprickerhof.de>
@jspricke
Copy link
Author

@esteve sure feel free to rework this, feel free to ask again if you get stuck. I'm really happy that you try to use the action and sorry for being strict with how it works but I have enough experience with build farms to know that you need to be strict with their interfaces to make it work for everyone.

@jspricke
Copy link
Author

@esteve also, as there are a lot of packages in the repo, @v4hn is working on a action that chains multiple builds: https://github.com/v4hn/ros-o-builder/actions/runs/3990975152
Currently it is rather specific to ROS one, tough.

@esteve
Copy link
Contributor

esteve commented Jan 24, 2023

@esteve sure feel free to rework this, feel free to ask again if you get stuck. I'm really happy that you try to use the action and sorry for being strict with how it works but I have enough experience with build farms to know that you need to be strict with their interfaces to make it work for everyone.

@jspricke no worries, I understand, I've been doing open source for over 20 years and sometimes you just need to be more strict with the contributions you accept. And I get what you say about build farms, I became quite familiar with the ROS build farm when I was at OSRF, that's why I insisted on correctness about the exec_depend tag, even if it seemed to fixed the issue 🙂

@esteve
Copy link
Contributor

esteve commented Jan 24, 2023

@esteve also, as there are a lot of packages in the repo, @v4hn is working on a action that chains multiple builds: https://github.com/v4hn/ros-o-builder/actions/runs/3990975152
Currently it is rather specific to ROS one, tough.

@jspricke that's really cool, let us know if there's something we can help with

@jspricke
Copy link
Author

@jspricke no worries, I understand, I've been doing open source for over 20 years and sometimes you just need to be more strict with the contributions you accept. And I get what you say about build farms, I became quite familiar with the ROS build farm when I was at OSRF,

Ha, part of this is honestly to fix things from back when I was at Willow ;).

that's why I insisted on correctness about the exec_depend tag, even if it seemed to fixed the issue slightly_smiling_face

Sure, though bloom does not distinguish the difference and neither Debian and I'm not aware of any build system that does.

@esteve
Copy link
Contributor

esteve commented Jan 24, 2023

Ha, part of this is honestly to fix things from back when I was at Willow ;).

Cool story ;-)

Sure, though bloom does not distinguish the difference and neither Debian and I'm not aware of any build system that does.

My memory is a bit blurry, I'd say OpenEmbedded/Yocto/Bitbake do differentiate, but I can't remember well and anyway that's not the point of this PR. Also, Debian uses Build-Depends and Depends, but bloom probably does not care about that. In any case, the exec/build/buildtool difference makes sense when you're crosscompiling, but again, let's not delve too much into that, that's not the point :-)

@jspricke
Copy link
Author

My memory is a bit blurry, I'd say OpenEmbedded/Yocto/Bitbake do differentiate, but I can't remember well and anyway that's not the point of this PR. Also, Debian uses Build-Depends and Depends, but bloom probably does not care about that. In any case, the exec/build/buildtool difference makes sense when you're crosscompiling, but again, let's not delve too much into that, that's not the point :-)

bloom does differentiate for (Build-)Depends, that's usually build_depend and exec_depend (or run_depend in old versions). Use the bloom packages for cross compiling in Debian would be nice but would need quiet some work on the ROS side..

@v4hn
Copy link

v4hn commented Jan 24, 2023

@esteve also, as there are a lot of packages in the repo, @v4hn is working on a action that chains multiple builds: https://github.com/v4hn/ros-o-builder/actions/runs/3990975152
Currently it is rather specific to ROS one, tough.

@jspricke that's really cool, let us know if there's something we can help with

I'll try to finalize my work on that repository soon to move it to the ros-o organization and aim to get all support it needs back into @jspricke's action.
After that, major requirements from my side for the future are

  1. only update package versions if the contents changed. Jochen proposed to check this via reproducible builds and byte-identity of the contents.
  2. Running all package tests. This is currently disabled.
  3. Support for parallel jobs. My setup currently uses only sequential builds. I don't want a single job per package, but 2-5 manually split jobs to build leaf/twig packages in different repos files would be great.

@xmfcx xmfcx enabled auto-merge (squash) January 24, 2023 14:45
@esteve esteve marked this pull request as draft January 24, 2023 14:48
auto-merge was automatically disabled January 24, 2023 14:48

Pull request was converted to draft

Not sure why pre-commit hasn't fixed this automatically.
@jspricke jspricke closed this Jan 30, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component:common Common packages from the autoware-common repository. (auto-assigned) component:perception Advanced sensor data processing and environment understanding. (auto-assigned) component:sensing Data acquisition from sensors, drivers, preprocessing. (auto-assigned) component:system System design and integration. (auto-assigned)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants