Skip to content

allowing tool-requires negated or - #19780

Merged
czoido merged 8 commits into
conan-io:develop2from
memsharded:feature/tool_requires_negate_or
Mar 25, 2026
Merged

czoido merged 8 commits into
conan-io:develop2from
memsharded:feature/tool_requires_negate_or

Conversation

@memsharded

@memsharded memsharded commented Mar 23, 2026

Copy link
Copy Markdown
Member

Changelog: Feature: Feature: Allow negated OR patterns !(<pattern1>|<pattern2>|...) in profile [tool_requires] for breaking cycles in build context.
Docs: conan-io/docs#4403

Alternative to #19387

Closes #17474
Close #19773

@memsharded
memsharded marked this pull request as ready for review March 23, 2026 13:52
@memsharded memsharded added this to the 2.27.0 milestone Mar 23, 2026
Comment on lines +236 to +238
mold/1.0
!zlib*:cmake/1.0
!mold*:cmake/1.0

@czoido czoido Mar 24, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The fact that changing the order will make the test fail:

!zlib*:cmake/1.0
mold/1.0
!mold*:cmake/1.0

makes me wonder if we want to change the way this syntax is processed or maybe we should reconsider using the original one which feels more explicit: !(zlib*|mold*):cmake/1.0

@czoido
czoido merged commit f24c162 into conan-io:develop2 Mar 25, 2026
16 checks passed
@memsharded
memsharded deleted the feature/tool_requires_negate_or branch March 25, 2026 10:37
memsharded added a commit to memsharded/conan that referenced this pull request Apr 22, 2026
* allowing tool-requires negated or

* fix

* new proposal

* review

* format

---------

Co-authored-by: Francisco Ramírez <franchuti688@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[question] How to "tool require" cmake and ninja for *every* build [question] How to force on build requires of a dependency?

4 participants