-
Notifications
You must be signed in to change notification settings - Fork 970
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
Fix profile repeated build requires #8463
Fix profile repeated build requires #8463
Conversation
I like the changes, I think they make sense, IMO existing test was testing the bug. |
conans/client/profile_loader.py
Outdated
@@ -137,7 +137,7 @@ def _load_profile(text, profile_path, default_folder): | |||
for include in profile_parser.get_includes(): | |||
# Recursion !! | |||
profile, included_vars = read_profile(include, cwd, default_folder) | |||
inherited_profile.update(profile) | |||
inherited_profile.update_profile(profile) |
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.
IMO profile.update_profile()
looks too redundand. profile.update()
is nice and self-explaining.
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.
Until you try to search for occurrences, or code calling this method and it becomes almost impossible to know, and you need to rely on CI running to find all occurrences.
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.
Agree that the update_profile()
is not great and redundant. I have replaced it for compose()
because it doesn't conflict with common dicts update() and also because in our docs we refer to this operation as "Profile composition".
Co-authored-by: Javier G. Sogo <jgsogo@gmail.com>
Co-authored-by: Javier G. Sogo <jgsogo@gmail.com>
Changelog: Bugfix: Fix repeated
build_requires
, including conflicting versions in profile composition or inclusion that repeats[build_requires]
values.Docs: Omit
Comes from #8205 (comment)