What about having parallel 'planes' of execution? Stuff like checktyle, rat, validation plugin may run in their own plane of execution. By default every existing plugin will be on a 'default' plane. When the build starts we start a thread/fork a process for each plane used by plugins declared in the pom. Maybe we could define standard planes so that plugins will be able to choose from a well know list of ids.
This approach is very naive, because it does deal with a real graph, but it can be an easy step compared to a global refactoring/ introduction of input/output declaration for each existing plugin. This can be orthogonal to phases, each plane will execute every of the phases. Maybe I have a limited view of the Maven core model. Hope that helps Enrico Il gio 6 dic 2018, 15:35 Romain Manni-Bucau <rmannibu...@gmail.com> ha scritto: > Mojos already have the ability to say if they are threadsafe, what do you > see missing? > > Romain Manni-Bucau > @rmannibucau <https://twitter.com/rmannibucau> | Blog > <https://rmannibucau.metawerx.net/> | Old Blog > <http://rmannibucau.wordpress.com> | Github < > https://github.com/rmannibucau> | > LinkedIn <https://www.linkedin.com/in/rmannibucau> | Book > < > https://www.packtpub.com/application-development/java-ee-8-high-performance > > > > > Le jeu. 6 déc. 2018 à 15:23, Mickael Istria <mist...@redhat.com> a écrit : > > > I think there is a difference between scheduling tasks (one is after the > > other) and assuming that 2 tasks that are ready can run in parallel. > > Adding scheduling data would be helpful and get rid of the concept of > > phases, for sure; but we also -and more importantly- need the existing > > mojos to be audited and be able to declare whether they're thread-safe > > before running them in parallel, and this sounds like a gigantic work. > > > -- -- Enrico Olivelli