Commit 177d4e4
committed
fix: git URLs working with bootstrap-parallel
The bootstrap-parallel command failed when top-level requirements were
specified as git URLs. During the bootstrap phase, git URLs were
correctly stored in the dependency graph, but the build-parallel phase
reconstructed requirements as name==version, losing the URL
information. This caused the system to treat local directory paths as
HTTP URLs, resulting in invalid URL errors.
Changes:
- Add get_top_level_requirement() method to DependencyGraph that
efficiently retrieves original requirement specifications by iterating
through node parents instead of ROOT children
- Modify build_parallel() to use original top-level requirements only
when they contain URLs, ensuring non-URL requirements always use the
already-resolved version from the graph
- Move urlparse import to top of sources.py following PEP 8 guidelines
- Add URL parsing logic in download_source() to extract @ref from git
URLs (e.g., repo.git@5.2.0) before calling download_git_source()
This fix enables nightly build pipelines that rely on git URLs with
the bootstrap-parallel command for faster builds.
Now #762 can be revisited.
Fixes: #761
Co-authored-by: Claude <claude@anthropic.com>
Signed-off-by: Ioannis Angelakopoulos <iangelak@redhat.com>1 parent 90ae492 commit 177d4e4
3 files changed
Lines changed: 49 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
696 | 696 | | |
697 | 697 | | |
698 | 698 | | |
699 | | - | |
| 699 | + | |
| 700 | + | |
| 701 | + | |
| 702 | + | |
| 703 | + | |
| 704 | + | |
| 705 | + | |
| 706 | + | |
| 707 | + | |
| 708 | + | |
| 709 | + | |
| 710 | + | |
| 711 | + | |
700 | 712 | | |
701 | 713 | | |
702 | 714 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
352 | 352 | | |
353 | 353 | | |
354 | 354 | | |
| 355 | + | |
| 356 | + | |
| 357 | + | |
| 358 | + | |
| 359 | + | |
| 360 | + | |
| 361 | + | |
| 362 | + | |
| 363 | + | |
| 364 | + | |
| 365 | + | |
| 366 | + | |
| 367 | + | |
355 | 368 | | |
356 | 369 | | |
357 | 370 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
8 | 8 | | |
9 | 9 | | |
10 | 10 | | |
| 11 | + | |
11 | 12 | | |
12 | 13 | | |
13 | 14 | | |
| |||
77 | 78 | | |
78 | 79 | | |
79 | 80 | | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
80 | 101 | | |
81 | 102 | | |
82 | 103 | | |
83 | | - | |
| 104 | + | |
84 | 105 | | |
| 106 | + | |
85 | 107 | | |
86 | 108 | | |
87 | 109 | | |
| |||
0 commit comments