Skip to content

Revert use of pinned vcpkg versions#2222

Merged
kcgen merged 1 commit intomainfrom
kc/bump-vcpkg-baseline-1
Jan 13, 2023
Merged

Revert use of pinned vcpkg versions#2222
kcgen merged 1 commit intomainfrom
kc/bump-vcpkg-baseline-1

Conversation

@kcgen
Copy link
Copy Markdown
Member

@kcgen kcgen commented Jan 13, 2023

Pinned VCPKG dependencies were working as of yesterday:

2023-01-13_11-10

But within a day, they broke:

2023-01-13_11-12

Not a big deal; maybe there were some package changes.
I updated our manifest's baseline to the latest:

2023-01-13_11-02

However, this didn't help.

The root cause is due VCPKG's "minimum-version" policy conflicting with repository maintainers desire to keep the "maximally-fixed-repo" versions and drop the "least-fixed-repo" versions, for a given major.minor.bugfix series.

For example: vcpkg determined that libtool-2.4.6-9 is the least version that can satisfy the requirement, but the repo maintainers have rolled off libtool-2.4.6-9 and kept >= libtool-2.4.6-10:

2023-01-13_11-31

We can see how it plays out here:

2023-01-13_10-47

Why did our non-pinned builds work but the pinned builds failed?

Because this minimum-version policy is only applied when using versioned manifests.

.. within 24 hours, we've already been shown a real-world example of how quickly the pinned version tree gets in trouble and produced a configuration that's no longer available to download or build... and we were using the latest possible dependency versions available.

So for now, I'm reverting the VCPKG pinned approach. But keeping the Meson bracketing.

Because VCPKG cannot force repo hosts to keep the oldest, buggiest versions to satisfy VCPKG's minimum-version-policy, the only viable route is for them to offer bounded versions.

@kcgen kcgen merged commit bc17355 into main Jan 13, 2023
@delete-merged-branch delete-merged-branch Bot deleted the kc/bump-vcpkg-baseline-1 branch January 13, 2023 19:36
@johnnovak johnnovak added the build system Build system related issues label Nov 13, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

build system Build system related issues

Projects

No open projects
Status: Done

Development

Successfully merging this pull request may close these issues.

2 participants