Resolve min-version in project.conf across internal junctions and suggest to update it
- Dominant language
- Python
- Stars
- 140
- Forks
- 45
- Avg merge
- 1d 3h
- Merged PRs (30d)
- 6
Description
Currently, if project.conf has a `min-version: 2.3` (say) and some internal junctions of plugins:
```
name: foobar
min-version: 2.3
element-path: elements
junctions:
- plugins/buildstream-plugins.bst
```
If `plugins/buildstream-plugins.bst` is updated to a version that requires higher `min-version` than that the project itself specifies in `project.conf`, `bst` does not suggest or warn that `min-version: 2.3` needs to be updated, but it should.
If the junction plugins start asking for a higher `min-version` then that _effectively_ becomes the `min-version` of the project.conf, otherwise the project can be loaded.
Showing a warning or an error in this case would help people make a conscious decision of when/how to update internal junctions.
Contributor guide
Research direction
Start by tracing how project.conf reads min-version and how internal junctions are loaded and version requirements are checked. Confirm the behavior when a junction requires a higher version, then add coverage and ensure bst warns or errors clearly when the project's declared min-version must be updated.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- build-system
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100