Our CI for this project uses the ASWF Docker image, so that we have USD available.
Then, in this PR, we use Conan to install OpenAssetIO and its dependencies.
Since there are no pre-built binaries in ConanCenter that match the Docker image, everything (the whole dependency chain, i.e. CPython and its crazy dependencies) has to be built from scratch. This defeats the purpose of using Conan instead of cloning and building from source.
If we wanted this to work then we would need to ensure we cache the Conan builds.
But then the main benefit of using Conan for OpenAssetIO here, is that we would get cross-platform builds. However, how would we get USD on other platforms? - that was the main reason we used Docker in the first place.
As for why CI is failing with
In file included from /__w/usdOpenAssetIOResolver/usdOpenAssetIOResolver/src/resolver.cpp:4:
/__w/usdOpenAssetIOResolver/usdOpenAssetIOResolver/src/resolver.h:11:10: fatal error: openassetio/typedefs.hpp: No such file or directory
11 | #include <openassetio/typedefs.hpp>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
I'm not sure.
Regardless, I'm going to close this PR since there's a lot more to think about than a simple drop-in replacement.
Our CI for this project uses the ASWF Docker image, so that we have USD available.
Then, in this PR, we use Conan to install OpenAssetIO and its dependencies.
Since there are no pre-built binaries in ConanCenter that match the Docker image, everything (the whole dependency chain, i.e. CPython and its crazy dependencies) has to be built from scratch. This defeats the purpose of using Conan instead of cloning and building from source.
If we wanted this to work then we would need to ensure we cache the Conan builds.
But then the main benefit of using Conan for OpenAssetIO here, is that we would get cross-platform builds. However, how would we get USD on other platforms? - that was the main reason we used Docker in the first place.
As for why CI is failing with
I'm not sure.
Regardless, I'm going to close this PR since there's a lot more to think about than a simple drop-in replacement.