Skip to content

[vcpkg] Improve various versioning error messages#7

Merged
ras0219-msft merged 5 commits intomicrosoft:mainfrom
ras0219:dev/roschuma/version-conflict
Feb 11, 2021
Merged

[vcpkg] Improve various versioning error messages#7
ras0219-msft merged 5 commits intomicrosoft:mainfrom
ras0219:dev/roschuma/version-conflict

Conversation

@ras0219
Copy link
Contributor

@ras0219 ras0219 commented Feb 10, 2021

With suggested fixes and additional help links.

See also changes to vcpkg help versioning in help.cpp.

Example 1:

{
    "name": "testing2",
    "version": "0",
    "builtin-baseline": "23306bdfe67d081915c798695a780366775ed288",
    "dependencies": [
        {
            "name": "glfw3",
            "version>=": "3.3-2"
        }
    ]
}

Before:

$ vcpkg.old install
Version conflict on glfw3@3.3-2: baseline required 3.3.2

After:

$ vcpkg.new install
Error: Version conflict on glfw3:x64-linux: baseline required 3.3.2 but vcpkg could not compare it to 3.3-2

The two versions used incomparable schemes:
    "3.3-2" was of scheme string
    "3.3.2" was of scheme string

This can be resolved by adding an explicit override to the preferred version, for example:

    "overrides": [
        { "name": "glfw3", "version": "3.3-2" }
    ]

See `vcpkg help versioning` for more information.

Example 2:

{
    "name": "testing2",
    "version": "0",
    "builtin-baseline": "23306bdfe67d081915c798695a780366775ed288",
    "dependencies": [
        "glfw"
    ]
}

Before:

$ vcpkg.old install
Cannot resolve unversioned dependency from top-level to glfw without a baseline entry or override.

After:

$ vcpkg install
Error: Cannot resolve a minimum constraint for dependency glfw from testing2:x64-linux.
The dependency was not found in the baseline, indicating that the package did not exist at that time.
This may be fixed by providing an explicit override version via the "overrides" field or by updating the baseline.
See `vcpkg help versioning` for more information.

With suggested fixes and additional help links
@ras0219-msft ras0219-msft merged commit ddead91 into microsoft:main Feb 11, 2021
vicroms added a commit to vicroms/vcpkg-tool that referenced this pull request Aug 28, 2025
# This is the 1st commit message:

WIP

# The commit message #2 will be skipped:

# Fix build error

# The commit message microsoft#3 will be skipped:

# Implement bulk operation

# The commit message microsoft#4 will be skipped:

# Remove unused struct

# The commit message microsoft#5 will be skipped:

# Follow redirects

# The commit message microsoft#6 will be skipped:

# Get HTTP response code

# The commit message microsoft#7 will be skipped:

# Map URL response code to the correct index

# The commit message microsoft#8 will be skipped:

# Map URL response code to the correct index

# The commit message microsoft#9 will be skipped:

# Undo changes to workflows

# The commit message microsoft#10 will be skipped:

# Implement store to asset cache

# The commit message microsoft#11 will be skipped:

# handle file:// protocol

# The commit message microsoft#12 will be skipped:

# Implement try_download_file

# The commit message microsoft#13 will be skipped:

# Add missing calls to curl_easy_cleanup

# The commit message microsoft#14 will be skipped:

# Fix global init

# The commit message microsoft#15 will be skipped:

# Replace all calls in downloads.cpp and fix unit tests

# The commit message microsoft#16 will be skipped:

# use libcurl to submit metrics payload

# The commit message microsoft#17 will be skipped:

# Use Schannel on Windows

# The commit message microsoft#18 will be skipped:

# Apply suggestions from code review
#
# Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

# The commit message microsoft#19 will be skipped:

# Fix unit test

# The commit message microsoft#20 will be skipped:

# Change curl error messages

# The commit message microsoft#21 will be skipped:

# generate message map

# The commit message microsoft#22 will be skipped:

# Always call multi_remove_handle

# The commit message microsoft#23 will be skipped:

# Fix end-to-end tests

# The commit message microsoft#24 will be skipped:

# Cleanup header lists

# The commit message microsoft#25 will be skipped:

# curl global init order

# The commit message microsoft#26 will be skipped:

# Use external libcurl on non-Windows

# The commit message microsoft#27 will be skipped:

# Install libcurl4 dev package on Linux

# The commit message microsoft#28 will be skipped:

# Disable metrics by default in debug builds

# The commit message microsoft#29 will be skipped:

# Set user agent using CURLOPT_USERAGENT

# The commit message microsoft#30 will be skipped:

# curl initialization again
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants