[question] How to handle the Standard version requirement in recipes?
See original GitHub issueRecipes should handle problems of incompatible standard version flags gracefully and raise ConanInvalidConfiguration
appropriately.
Issue Analytics
- State:
- Created 4 years ago
- Reactions:2
- Comments:7 (7 by maintainers)
Top Results From Across the Web
Chapter 6 – Standardized Recipes
Standardized recipes are an important control tool for food service ... Obtain the conversion factor by dividing the required yield (from Step 2)...
Read more >6. Converting and Adjusting Recipes and Formulas
Determine the required yield of the recipe by multiplying the new number of portions and the new size of each portion. Find the...
Read more >What Is A Standardized Recipe? - YouTube
Describes why and when standardized recipes are needed in the Child and Adult Care Food Program (CACFP) and the required components of ...
Read more >Types of Recipe Construction
The method follows in paragraphs or steps. Especially good form for recipes using many ingredients. +Easy to see ingredients needed; -Must look back...
Read more >Quiz #2 Flashcards - Quizlet
Recipe standardization is important because the operation needs to have menu items that are consistent and will please the guest every time he...
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
We could follow 2 approaches, not necessarily incompatible:
We would need probably a
tool
that report the appliedcompiler.cppstd
setting taking into account that the input could be None and the applied one is the default from the applied compiler. That way we could raise if the minimum is not satisfied and the conan-index CI service will automatically skip the profiles with the compiler without a compiler that supports the minimum cppstd. But if the library only supports>=17
we might have an issue if we don’t explicitly apply a profile with the cppstd.We could always add something to the
config.yml
file to indicate thecppstd
value (vaues? which ones?) to apply for that version.Okay, I think now I get it how we should do.
The thing with
cppstd
is that we really need to consider the case when it’s not specified to be the case of using the default standard version of the current compiler. The reason for that is because while standard libraries don’t usually break ABI, projects are free to do it between different versions. For example to conditionally usestd::string_view
is the standard version is allowed. On the other hand, projects that are compatible with older standard versions should probably delete the setting in the package_id.All it means that indeed if a project requires a
>=17
than we need to handle it in CCI builds. How can we achieve it?About the algorithm to handle the package configuration:
check_min_cppstd
. We need to handle if the tool doesn’t know about the current compiler, it could be a customer provided one.We can nicely wrap it into an additional tool.