Open thorsten-klein opened 3 months ago
Note: When not using --update
then I get expected error
ERROR: The '9fe383f0b6264c07feddde68bf57a649' revision recipe in the local cache doesn't match the requested 'Tool/0.1@lasote/stable#29af85a7594ea33bdcf6c58775e52986'. Use '--update' to check in the remote.
I would expect that --update
flag downloads the new correct revision on demand. It seems not to do so.
Hi @thorsten-klein
Thanks for your report.
This would be a known limitation of the Conan cache in Conan 1.X, it cannot contain more than 1 different revision for the same package-version simultaneously. Consequently the same dependency graph cannot define nor contain 2 different revisions of the same dependency, and if recipes explicitly define requires
or tool-requires
including a revision, then users need to make sure to align those revisions.
This limitation of the Conan cache in 1.X was one of the important reasons why the major breaking Conan 2 was necessary, the changes in the cache were simply too large to be able to introduce them in Conan 1, it is basically a completely new cache with different paradigm.
Describe the bug
We are using recipe revisions with conan 1.x We have two libraries which depend on same build_requires, but with different #RREV. Conan does not take the correct #RREV of the tool for the library build.
How to reproduce it
Add following test to
conans/test/integration/build_requires/build_requires_test.py