apache / apache/buildstream

Import elements allow build dependencies

Open
#948 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
140
Forks
45
Avg merge
1d 3h
Merged PRs (30d)
6

Description

[See original issue on GitLab](https://gitlab.com/BuildStream/buildstream/-/issues/948)
In GitLab by [[Gitlab user @juergbi]](https://gitlab.com/juergbi) on Mar 6, 2019, 09:47

Import elements currently allow build dependencies even though they are never used, except for scheduling/pipeline purposes. This may be confusing to users.

We should set `BST_FORBID_BDEPENDS` in `import.py`. However, various test cases currently rely on import elements supporting build dependencies. While some of them should be easy to fix (change `depends` to `runtime-depends`), others might indeed need the build dependencies as they test scheduler/pipeline behavior. Thus, test case changes need to be done very carefully.

I've pushed the `juerg/import-no-build-deps` branch as a possible starting point.

Contributor guide

Open the contributing guide

Research direction

Start in import.py and review the import-element test cases that currently use build dependencies. Use the juerg/import-no-build-deps branch as a possible starting point, then distinguish cases that should use runtime dependencies from those testing scheduler or pipeline behavior. Done means the intended build-dependency restriction is enforced without breaking valid scheduler and pipeline tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
build-system
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.