Hi Chris, first, thank you for all your work on the build. One feat that gets stronger and stronger for me is the complexity of our build, which I dislike. I know that this is a necessity of our current setup but I think we have to do something about it as the build himself currently has the complexity of a simple driver but "no" testcoverage and is very hard to debug (and very few are able to maintain or even understand it, myself included).
So I think we have to think about how we can change this and this is, from my perspective the most important issue and should drive how we organize our modules. This includes questions like - should we organize by language or by "role" (which is basically your question) - should we only use maven as driver for the build or should we decouple all builds and leave it to Jenkins to execute all of these - should we split repos or should we keep one repo as it is currently - how do we handle interdependencies between different languages - how to we deal with general "tools" in the build pipeline (longer idempotent build vs complexer individual setup) I know that some of these suggestions would imply large changes but I think we should not drive these important decisions. Julian Am 27.04.19, 18:43 schrieb "Christofer Dutz" <christofer.d...@c-ware.de>: Hi all, currently we have a structure where Java modules are located in plc4j, c++ modules in plc4cpp and python modules in plc4py … however the integration modules and examples are at root level. Even if we don’t yet have any non java integration modules or examples, we will be getting some in the near future. What is observable, is that Java plugin configuration is leaking over to the cpp and python modules, which isn’t good. For the sake of a simpler build and cleaner configuration, I would propose to create integrations and examples modules inside each of the language directories and to move the existing modules there. What do you think? Chris