Comments (7)
The requested change colcon/colcon-core#13 made this visible. I think letting the user know about it makes sense. Maybe we should ignore those packages on Windows (e.g. by placing an IGNORE
marker file in their directories)?
from ci.
Yeah I agree that for source builds this visibility makes sense, it's just misleading in the specific case of the packaging job.
The packaging job never used to install anything in the share
directory for packages that got skipped by CMake.
e.g.:
$ cd ~/Downloads/ros2-osx-beta1
$ ls share | grep pendulum
pendulum_msgs
$ cd ~/Downloads/ros2-osx-colcon-bash-fix/
$ ls share | grep pendulum
pendulum_control
pendulum_msgs
Do you think it is possible to restore that behaviour (technically)? If so I think that would be preferred over adding ignore markers (the skip in cmake is nicely self-contained and self-describing and so should be sufficient)
from ci.
Do you think it is possible to restore that behaviour (technically)?
What exact behavior do you want to "restore" / are you looking for? Revert the referenced patch and don't output a message (until COLCON_TRACE
is set)?
from ci.
The behaviour I'm referring to is more about the cause of the problem, i.e. that the packaging job is installing stuff for skipped cmake packages (where it didn't with ament_tools)/that skipped cmake packages get listed in the generated prefix.bash
file. If we address that, we wouldn't need to change the behaviour of outputting the message or not, because those files wouldn't be looked for to start with. But I am not sure what "underneath" has caused this change in behaviour.
from ci.
Or, put another way:
Why is the prefix.bash
on OS X / the prefix.bat
on Windows trying to source files that never have existed? That is my understanding of what is causing that output message. Contrary to colcon/colcon-bash#3, it is not because a directory has been deleted; the scripts it's looking for never got installed.
from ci.
So when a package specific setup file doesn't exist you want the prefix script to not complain about it. For this case that makes sense. But that will also apply to other cases: e.g. you build and install a package B but not its dependency A. Then the resulting prefix script should not print a message that A isn't present.
We can certainly change it that way - we just have to be certain that this is the way we want it to be in all the cases which have the same "state".
from ci.
Currently the build tool also checks that these files actually exist (https://github.com/colcon/colcon-core/blob/f093f0bcffe2f0d1ea66d434e40fcad95638cee0/colcon_core/shell/sh.py#L84-L96) before generating the prefix script. So I am not yet sure how this gets into the state and how we could distinguish the case described.
from ci.
Related Issues (20)
- Error in ros2_batch_job due to pytest being imported before install. HOT 3
- False positive Clang warnings on Linux from openssl output. HOT 3
- Connext security tests failing on Windows HOT 3
- "The system cannot find the path specified." for every command invoked during a Windows build HOT 1
- publish xUnit test result report failed in ros2 ci HOT 1
- Unpin cryptography version HOT 3
- Windows docker image uses pyreadline causing deprecation warnings HOT 11
- Unpin flake8-blind-except version
- Painted source code isn't updated in coverage jobs
- Update xunit plugins and restore backwards-compatible templates.
- Docker image for windows HOT 1
- About https://build.ros2.org/ Jenkins's "Collapsing Console Sections" setting HOT 2
- Connext incorrectly trying to be installed in RHEL packaging job for Foxy HOT 1
- rticonnextdds-src HOT 4
- ros2_batch_job --workspace-path option does not work HOT 1
- CI is broken because osrf/rticonnextdds-src doesn't exist anymore? HOT 3
- CI should throw an error if ``CI_BRANCH_TO_TEST`` is not found in any of the repos
- ROS 2 CI not merging branches with master HOT 1
- Phased updates can cause build regressions on Ubuntu Jammy HOT 2
- `error waiting for container: unexpected EOF` failing builds HOT 12
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ci.