-
Notifications
You must be signed in to change notification settings - Fork 296
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Clarify what it means to be "unsupported" by a supports expression. #879
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you!
What I find confusing is how the message prints the requested platform first, i.e.:
... this reads like "The linux package is only supported on windows".
This area also needs improvements when a dependency is unsupported. ATM it doesn't tell the requested feature which asks for unsupported dependency. This is difficult to resolve for users. Example:
|
That's fair, I'll take a look at this again
I agree. |
locales/messages.json
Outdated
"UnsupportedShortOptions": "short options are not supported: '{value}'", | ||
"_UnsupportedShortOptions.comment": "'{value}' is the short option given", | ||
"UnsupportedSupportsExpression": "{spec} is only supported on '{supports_expression}'. This usually means that there are known build failures, or runtime problems, when building other platforms. To ignore this and attempt to build {spec} anyway, rerun vcpkg with `--allow-unsupported`.", | ||
"_UnsupportedSupportsExpression.comment": "An example of {spec} is zlib:x64-windows. An example of {supports_expression} is windows & !static.", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"_UnsupportedSupportsExpression.comment": "An example of {spec} is zlib:x64-windows. An example of {supports_expression} is windows & !static.", | |
"_UnsupportedSupportsExpression.comment": "An example of {spec} is zlib:x64-windows. An example of {supports_expression} is 'windows & !static'.", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This (and all other examples) are generated code.
locales/messages.json
Outdated
"UnsupportedSupportsExpression": "{spec} is only supported on '{supports_expression}'. This usually means that there are known build failures, or runtime problems, when building other platforms. To ignore this and attempt to build {spec} anyway, rerun vcpkg with `--allow-unsupported`.", | ||
"_UnsupportedSupportsExpression.comment": "An example of {spec} is zlib:x64-windows. An example of {supports_expression} is windows & !static.", | ||
"UnsupportedSupportsExpressionWarning": "{spec} is only supported on '{supports_expression}'. This usually means that there are known build failures, or runtime problems, when building other platforms. Proceeding anyway due to `--allow-unsupported`.", | ||
"_UnsupportedSupportsExpressionWarning.comment": "An example of {spec} is zlib:x64-windows. An example of {supports_expression} is windows & !static.", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"_UnsupportedSupportsExpressionWarning.comment": "An example of {spec} is zlib:x64-windows. An example of {supports_expression} is windows & !static.", | |
"_UnsupportedSupportsExpressionWarning.comment": "An example of {spec} is zlib:x64-windows. An example of {supports_expression} is 'windows & !static'.", |
locales/messages.json
Outdated
"UnsupportedShortOptions": "short options are not supported: '{value}'", | ||
"_UnsupportedShortOptions.comment": "'{value}' is the short option given", | ||
"UnsupportedSupportsExpression": "{spec} is only supported on '{supports_expression}'. This usually means that there are known build failures, or runtime problems, when building other platforms. To ignore this and attempt to build {spec} anyway, rerun vcpkg with `--allow-unsupported`.", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"UnsupportedSupportsExpression": "{spec} is only supported on '{supports_expression}'. This usually means that there are known build failures, or runtime problems, when building other platforms. To ignore this and attempt to build {spec} anyway, rerun vcpkg with `--allow-unsupported`.", | |
"UnsupportedSupportsExpression": "{package_name} is only supported on '{supports_expression}'. This usually means that there are known build failures, or runtime problems, when building other platforms. To ignore this and attempt to build {package_name} anyway, rerun vcpkg with `--allow-unsupported`.", |
{spec}
implies triplet information (see comment). I think {package_name}
is the closest we have without defining a new placeholder.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We are printing triplet information here; that's @dg0yt's comment :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Package, features and triplets done right...
See the gdal example I added to #879 (comment).
What I want is app.
$ ./vcpkg install gdal[*]:x64-linux
Computing installation plan...
gdal[aws-ec2-windows]:x64-linux cannot be installed:
atlmfc[core] is only supported on 'windows'
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I agree that would be an improvement but that's more than the 10 minute "this should explain what we mean" fix I was going for here.
@@ -2213,9 +2223,10 @@ namespace vcpkg | |||
"", | |||
"To remove dependencies in manifest mode, edit your manifest (vcpkg.json) and run 'install'."); | |||
DECLARE_MESSAGE(RemovePackageConflict, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@JavierMatosD Hopefully this makes it clearer for the customer you were working with.
Also fixes a few places where we were printing a spec but should have only printed a package name.