Decouple libConfiguration from libCommon#3
Decouple libConfiguration from libCommon#3PascalBoeschoten merged 3 commits intoAliceO2Group:masterfrom
Conversation
The dependency of libConfiguration to libCommon is not actually required as the only usage of libCommon is done by helper tools, not by libConfiguration itself. This takes that into account and decouples the two libraries. This is required by the fact that currently DataSampling has a dependency on libConfiguration but not libCommon and this simplifies therefore integration.
|
@knopers8 this is part of your problem. |
|
@PascalBoeschoten @Barthelemy could you have a look at this? Without this solved, one way or another, I cannot continue integrating @knopers8 stuff and this seems to me as the best ratio between amount of changes and cleanliness of the solution. |
| SYSTEMINCLUDE_DIRECTORIES | ||
| ${Boost_INCLUDE_DIR} | ||
| ${CURL_INCLUDE_DIRS} | ||
| ${Common_INCLUDE_DIRS} |
There was a problem hiding this comment.
@ktf This will break src/Backends/MySql/MySqlBackend.cxx which requires Common/GuardFunction.h
There was a problem hiding this comment.
Actually the GuardFunction is not used so this include can be delete
There was a problem hiding this comment.
Looks like that's a leftover import. We can remove it. It's just strange that the CI build isn't broken
There was a problem hiding this comment.
Shouldn't we use ScopeExit which is roughly the same thing from boost?
That said, where is GuardFunction actually used? I think this is a spurious include. Can you check if my new commit works (I do not have mysql installed on my laptop)?
This is also another great example of why the backend should be split from the actual frontend API.
There was a problem hiding this comment.
... and of course we should disable / drop the mysql backend now that we decided to go for consul.
There was a problem hiding this comment.
@ktf indeed, the code for mysql can be disabled but I would do it in another PR.
There was a problem hiding this comment.
@Barthelemy agree. I will wait for @awegrzyn and @PascalBoeschoten to give green light to this and then I will let them to disable the MySQL part.
|
Thanks. Can you tag and do a PR in alidist as well, so that I can continue integrating this in O2? |
|
@ktf Done |
The dependency of libConfiguration to libCommon is not actually required
as the only usage of libCommon is done by helper tools, not
by libConfiguration itself. This takes that into account and
decouples the two libraries. This is required by the fact that
currently DataSampling has a dependency on libConfiguration but not
libCommon and so this simplifies therefore integration.