Clarifications for build-requires graph cost & more
- Dominant language
- C++
- Stars
- 125
- Forks
- 382
- Avg merge
- 22h 39m
- Merged PRs (30d)
- 21
Description
The problem is that tests are still needed in the root module. The `options` based solution allows us to enable tests in the current recipe, but disable them in dependencies. Now, when performing build tasks in CI/CD pipelines, tests for the current module will be performed, but not for dependencies. If developers are prohibited from performing `conan upload` manually, we can be sure that any recipe uploaded to the repository has already passed tests at some point, and we can safely perform `--build missing` without running tests at least until we expand the list of supported systems.
So I close the task. However, I want to note that the conan documentation currently does not contain several important things:
- The description of [`build_requirements`](https://docs.conan.io/2/reference/conanfile/methods/build_requirements.html) does not contain anything about the impact on the complexity of the dependency graph. In this section, it is definitely necessary to add a warning about the problem when using `build_requires`, which themselves have many dependencies.
- The description of the [`options`](https://docs.conan.io/2/reference/conanfile/attributes.html#options) attribute does not contain anything about the `update` method. It is not obvious whether it is possible to add new options in the `config_options` method.
- The possibility of calling `self.info.options.rm_safe` in [`package_id`](https://docs.conan.io/2/reference/conanfile/methods/package_id.html) is also not obvious. Although removing options from the `pakcage_id` is not a typical case, in an enterprise environment there may be many reasons to use options without affecting the `package_id`, and the documentation should be more explicit on this issue. I wouldn't want to run into a compatibility issue after a while.
_Originally posted by @Ariox41 in https://github.com/conan-io/conan/issues/15579#issuecomment-1937535402_
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.