-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Description
What is your question?
Hello,
while experimenting with conan workspaces i noticed several things that didn't work or i couldn't make them work. I had taken the libraries from here: https://github.com/conan-io/examples2/tree/main/ci/game and added external dependencies and lockfiles.
For WS files i have used the content from here: https://docs.conan.io/2/tutorial/developing_packages/workspaces.html#id2
The first thing that didn't happen was that the generation of individual toolchain files for each library. The setting of preprocessor definition (eg. in ai: https://github.com/conan-io/examples2/blob/main/ci/game/ai/conanfile.py#L24) wasn't done. This was easily overcome by adding the line of code inside WS conanws.py. But this will not scale with a lot of editable libraries and also they will be globally available and not defined per library.
When performing conan workspace super-install --lockfile-out <file>.lock conan didn't generate a lockfile. Im not sure if im missing something in the command. This is not a problem since the lockfile can easily be created for the end product.
After doing modifications and creating new packages with conan workspace create i wanted to have an updated lockfile for the game but couldn't get it generated by appending --lockfile-out <file.lock> to create command.
I tried then to generate the lockfile as to i would normally do with conan lock create game/conanfile.py but that didn't work because the packages are editable and the lockfile i get contains no real info. I was able to generate it outside of my WS folder but the problem there is that the lockfile can be polluted with package RREVs coming from other projects. Would it be possible to have something like conan workspace deactivate? Now i do it by renaming conanws.py to _conanws.py
Thanks
Have you read the CONTRIBUTING guide?
- I've read the CONTRIBUTING guide