Hi, again, On Tue, 2020-06-09 at 01:00 +0300, Eugen Stan wrote: > Hello, > > It's been a while since I wrote on this list. I just tried to build > James locally and failed. > > I `git clone`d master and `mvn clean package` using adoptopenjdk 11 . > > The compilation fails on my machine (Debian Buster+Testing). That is > however besides the point. > > I noticed the integration tests are ran as part of the normal build. > Especially Casandra, ActiveMQ and DB integration tests. > > These have a habbit of taking a lot of time and personally I believe > they should be OPT-IN. > > I don't use Casandra and ActiveMQ and I don't test on them. It's fine > that we have integration tests but they should be activated on CI or > locally for interested parties. > > I believe we need to improve the developer experience a bit and this > is > my proposal that I would like to discuss with everyone. > > > I propose we make integration tests OPT-IN behind a maven profile ?!
I hate maven profiles because everything becomes unpredictable very quickly when we use them. However, I agree that few people want a long testsuite to run when building a software and it should be OPT-IN. We invented CI for a thing after all. I suggest we just change the default behavior of surefire maven plugin to not run tests by default and document how to run tests when wanted. > I propose we document how people can OPT-IN FOR them. > > What are other ways of making a James build slimmer ?! There are many ways: we did experiments with gradle and the results were very promising (around 1 minute on my computer) but postponed the adoption for now. We could also, for component relying on stable APIs, move these components in their own git repository to avoid building them with the main codebase. Cheers, -- Matthieu Baechler <matth...@apache.org> --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org