[Bug]: Macro overlay source files can collide with real sources
Maintainers usually reply within 7 days
Assessment
This issue has not been assessed yet.
Description
Bug Description
The macro overlay hardcodes its source to 9999 (synthesizeMacroLoadOverlays()), which can collide (see texlive.spec](https://raw.githubusercontent.com/microsoft/azurelinux/refs/heads/4.0/specs/t/texlive/texlive.spec)
Reproduction Steps
- Move textlive to its own
*.comp.tomlfile - Add
[components.texlive] [components.texlive.build] defines = { azl_poc_macro = "1" } - Run
azldev comp render -p texlive
Expected behavior
Should add the macro file in a smart way that doesn't cause errors.
Actual behavior
17:09:41 INF Finishing rendered output count=1
17:09:41 ERR Failed to finish rendering component component=texlive error="mock processing failed for `texlive`:\nspectool failed: error: source 9999 defined multiple times"
17:09:41 ERR Some components failed to render errorCount=1 cancelledCount=0
Logs / Output
azldev comp render -p texlive 2>&1 | tee base/build/work/scratch/texlive-render.log | tail -40
17:08:02 INF Mock processor available mockConfig=/home/damcilva/repos/temp/azurelinux/distro/mock/azl4/stage2/azurelinux-4.0-x86_64.cfg
17:08:02 INF Preparing component sources count=1
17:08:02 INF Preparing component sources component=texlive
17:08:02 INF Getting component from git repo component=texlive upstreamComponent=texlive branch=f43 upstreamCommit=f5f486ecd487e3c34a8e747c0fc561fa1eaff9fe snapshot=2026-02-24T00:00:00-08:00
17:08:02 INF Cloning git repo repoURL=https://src.fedoraproject.org/rpms/texlive.git
17:09:23 INF Using explicit upstream commit hash commitHash=f5f486ecd487e3c34a8e747c0fc561fa1eaff9fe
17:09:23 INF Checking out git commit commitHash=f5f486ecd487e3c34a8e747c0fc561fa1eaff9fe
17:09:23 INF Applying overlays component=texlive
17:09:24 INF Current fingerprint differs from HEAD lock file; adding dirty entry lockFile=locks/texlive.lock
17:09:25 INF Bumping static release component=texlive oldRelease=80%{?dist} newRelease=82%{?dist} commitCount=2
17:09:25 INF Creating synthetic commit commit=1 total=2 projectHash=5d461a2449294d42c9b47ed04ad3d5935d8ce244 upstreamCommit=f5f486ecd487e3c34a8e747c0fc561fa1eaff9fe isLast=false
17:09:25 INF Creating synthetic commit commit=2 total=2 projectHash=dirty upstreamCommit=f5f486ecd487e3c34a8e747c0fc561fa1eaff9fe isLast=true
17:09:25 INF Interleaved synthetic history complete syntheticCommits=2 totalCommits=3
17:09:25 INF Initializing mock chroot for rendering
17:09:37 INF Mock chroot ready for rendering
17:09:37 INF Batch processing components in mock chroot count=1
17:09:37 INF Processing specs in mock chroot count=1
17:09:41 INF Finishing rendered output count=1
17:09:41 ERR Failed to finish rendering component component=texlive error="mock processing failed for `texlive`:\nspectool failed: error: source 9999 defined multiple times"
17:09:41 ERR Some components failed to render errorCount=1 cancelledCount=0
╭───────────┬──────────────────────────────────────────────────────┬────────┬────────────────────────────────────────────────────────────┬─────────╮
│ COMPONENT │ OUTPUT │ STATUS │ ERROR │ CHANGED │
├───────────┼──────────────────────────────────────────────────────┼────────┼────────────────────────────────────────────────────────────┼─────────┤
│ texlive │ /home/damcilva/repos/temp/azurelinux/specs/t/texlive │ error │ mock processing failed for `texlive`: │ false │
│ │ │ │ spectool failed: error: source 9999 defined multiple times │ │
╰───────────┴──────────────────────────────────────────────────────┴────────┴────────────────────────────────────────────────────────────┴─────────╯
azldev version
╭────────────┬──────────────────────────────────────╮
│ version │ v0.1.1-0.20260520162735-44f81cce609a │
│ gitCommit │ N/A │
│ goVersion │ go1.26.3 │
│ platform │ linux/amd64 │
│ compiler │ gc │
│ buildDate │ N/A │
│ commitDate │ N/A │
│ dirtyBuild │ false │
╰────────────┴──────────────────────────────────────╯
Environment
- azl3
- Dominant language
- Go
- Stars
- 18
- Forks
- 28
- Avg merge
- 6d 19h
- Merged PRs (30d)
- 19
Getting set up
Starts the project's dev container in your browser, under your own GitHub account.
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from microsoft/azure-linux-dev-tools
-
`patch-add` overlay appends `PatchN:` tag at end of preamble instead of grouping with existing Patch tagsPossibly taken @IzanVil claimed this 12 days ago. Openarea: overlays enhancement priority: low
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
microsoft/azure-linux-dev-tools#284 · 2 comments ·
Maintainers usually reply within 7 days
-
enhancement
Difficulty 5/5 Over a week Newbie friendliness 15/100
microsoft/azure-linux-dev-tools#374 ·
Maintainers usually reply within 7 days
-
[Bug]: no specification for TOML object modelMay be free again @ddstreet claimed this 38 days ago, and no pull request is open. Openbug
microsoft/azure-linux-dev-tools#318 · 1 comment · 1 assignee ·
Maintainers usually reply within 7 days
-
[Bug]: azldev comp render doesn't always add changelog entriesMay be free again @ddstreet claimed this 50 days ago, and no pull request is open. Openbug GA blocker
microsoft/azure-linux-dev-tools#316 · 1 assignee ·
Maintainers usually reply within 7 days
-
config dump omits per-file overlays and inherited default-component-configPossibly taken @liunan-ms claimed this 50 days ago. Openbug GA blocker
microsoft/azure-linux-dev-tools#264 · 1 assignee ·
Maintainers usually reply within 7 days
All issues in microsoft/azure-linux-dev-tools
Similar issues
-
duplication
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
openvibely/openvibely#1443 ·
Maintainers usually reply within 2 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 80/100
keyxmakerx/Chronicle#1179 ·
Maintainers usually reply within 1 day
-
raised-by:worker
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
medici-finance/assay#2486 ·
Maintainers usually reply within 1 day
-
area/testing kind/bug triage/needs-triage
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
cozystack/cozystack#4841 · 1 reaction ·
Maintainers usually reply within 2 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
openimsdk/openim-sdk-core#1127 ·