From 811eaa0f4a76b62ed96bd333763d2f0eeea1a003 Mon Sep 17 00:00:00 2001 From: Ali Caglayan Date: Mon, 17 Aug 2026 16:30:54 +0200 Subject: [PATCH] test(pkg): document legacy per-platform version selection Capture the current behavior where different requested platforms may select different versions of the same package. The joint-solver feature updates this expectation to the intended all-platform failure. Signed-off-by: Ali Caglayan --- ...-lockdirs-language-version-compatibility.t | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 test/blackbox-tests/test-cases/pkg/portable-lockdirs/portable-lockdirs-language-version-compatibility.t diff --git a/test/blackbox-tests/test-cases/pkg/portable-lockdirs/portable-lockdirs-language-version-compatibility.t b/test/blackbox-tests/test-cases/pkg/portable-lockdirs/portable-lockdirs-language-version-compatibility.t new file mode 100644 index 00000000000..8956165e09a --- /dev/null +++ b/test/blackbox-tests/test-cases/pkg/portable-lockdirs/portable-lockdirs-language-version-compatibility.t @@ -0,0 +1,38 @@ +Existing language versions permit a portable lock directory to select different +versions on different platforms. + + $ mkrepo + $ add_mock_repo_if_needed + + $ mkpkg foo 1 <<'EOF' + > available: os = "linux" + > EOF + $ mkpkg foo 2 <<'EOF' + > available: os = "macos" + > EOF + $ cat >dune-project <<'EOF' + > (lang dune 3.18) + > (package + > (name x) + > (depends foo)) + > EOF + + $ DUNE_CONFIG__OS=linux DUNE_CONFIG__ARCH=x86_64 dune pkg lock + Solution for dune.lock + + Dependencies common to all supported platforms: + (none) + + Additionally, some packages will only be built on specific platforms. + + arch = arm64; os = linux: + - foo.1 + + arch = arm64; os = macos: + - foo.2 + + arch = x86_64; os = linux: + - foo.1 + + arch = x86_64; os = macos: + - foo.2