test(win): bin layouts use incorrect artifact names on win - #15517
Merged
Conversation
Signed-off-by: Ali Caglayan <alizter@gmail.com>
3 tasks
Alizter
added a commit
that referenced
this pull request
Jul 20, 2026
## Description
Use installed filenames when materializing `%{bin:...}` PATH layouts for
local package binaries.
Artifact lookup keys intentionally omit `.exe` on Windows, but those
keys were also being used as physical layout filenames. Carry the lookup
name together with the installed filename of the selected binary through
the layout key instead. Native executables are therefore materialized as
`launcher.exe`, while explicitly named entries such as `tool.cmd` remain
unchanged.
This updates the Windows regression test added in #15517 from the
documented failure to the corrected behavior.
## Related Issue and Motivation
Fixes #15512.
## Validation
- `./dune.exe build @check @fmt`
- Focused cram test with the `mingw-5.4` opam switch on native Windows
11
## Checklist
- [x] Tests added in #15517 and updated here.
- [x] Change log entry added.
- [x] Documentation not required beyond the regression test.
Alizter
added a commit
to Alizter/dune
that referenced
this pull request
Jul 20, 2026
## Description
Add a native Windows cram test covering the artifact names materialized
in `%{bin:...}` PATH layouts.
The test records the current behavior: a native executable is placed in
the layout as extensionless `launcher`, so Windows command lookup fails,
while a declared `tool.cmd` entry retains its filename. This PR
intentionally captures the existing failure as expected output so the
test-only change remains independently passing. The production fix will
follow in a separate PR and update these expectations.
Validated with the `mingw-5.4` opam switch on native Windows 11.
## Related Issue and Motivation
Regression coverage for ocaml#15512.
This isolates the Windows regression coverage from its fix so both
changes can pass CI independently and be reviewed in order.
## Checklist
- [x] Tests added, if applicable.
- [x] Change log entry not required for this test-only change.
- [x] Documentation not required for this test-only change.
- [x] windows tests pass
(cherry picked from commit a4d600b)
Signed-off-by: Ali Caglayan <alizter@gmail.com>
Alizter
added a commit
that referenced
this pull request
Jul 20, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Add a native Windows cram test covering the artifact names materialized in
%{bin:...}PATH layouts.The test records the current behavior: a native executable is placed in the layout as extensionless
launcher, so Windows command lookup fails, while a declaredtool.cmdentry retains its filename. This PR intentionally captures the existing failure as expected output so the test-only change remains independently passing. The production fix will follow in a separate PR and update these expectations.Validated with the
mingw-5.4opam switch on native Windows 11.Related Issue and Motivation
Regression coverage for #15512.
This isolates the Windows regression coverage from its fix so both changes can pass CI independently and be reviewed in order.
Checklist