You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Packages such as intel-mkl, intel-parallel-studio and others define variant() that do not change the final binaries produced by the recipe. These variants only serve to propagate information about a component of the package to dependent packages. The unfortunate consequence is that changing the variant, often triggers unnecessary installations that are essentially duplicates.
In the case of intel-parallel-studio some of the variants serve as aliases to the version information encoded in the package. That provides, perhaps, a convenient way to express a spec but introduces yet another avenue for triggering unnecessary installs.
A PR attempting to address these issues for intel-mkl and intel-parallel-studio was opened here: #15567 .
Perhaps the overuse of variant() can be addressed by provides()? Unfortunately, it isn't clear from the documentation what qualifies as a virtual package.
Since changing a variant() always triggers an install, it would be better if it is only used for options that change the binary output of a recipe.
Additional information
I have searched the issues of this repo and believe this is not a duplicate
This discussion was converted from issue #16021 on December 08, 2020 19:48.
Heading
Bold
Italic
Quote
Code
Link
Numbered list
Unordered list
Task list
Attach files
Mention
Reference
Menu
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
Packages such as
intel-mkl
,intel-parallel-studio
and others definevariant()
that do not change the final binaries produced by the recipe. These variants only serve to propagate information about a component of the package to dependent packages. The unfortunate consequence is that changing the variant, often triggers unnecessary installations that are essentially duplicates.In the case of
intel-parallel-studio
some of the variants serve as aliases to the version information encoded in the package. That provides, perhaps, a convenient way to express a spec but introduces yet another avenue for triggering unnecessary installs.A PR attempting to address these issues for
intel-mkl
andintel-parallel-studio
was opened here: #15567 .Perhaps the overuse of
variant()
can be addressed byprovides()
? Unfortunately, it isn't clear from the documentation what qualifies as a virtual package.Since changing a
variant()
always triggers an install, it would be better if it is only used for options that change the binary output of a recipe.Additional information
Beta Was this translation helpful? Give feedback.
All reactions