bootique / bootique-jetty

Provides Jetty integration with Bootique

Home Page:https://bootique.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

jetty 10 support

ari opened this issue · comments

Some bits of jetty changed and its not possible to just upgrade it without changing this module. Or maybe skip directly to jetty 11 and deal with all the package changes in one go.

Good idea. So there are a couple of dimensions to consider:

  • Jetty 10 requires Java 11
  • Jetty 11 requires Java 11 and also switched to Jakarta EE namespace

Now that BQ 2.0 has gone Beta, and we split a new 3.0 line of development, this may be a good time to contemplate our choices. Let me actually start a thread on the Bootique forum, as e.g. a JDK requirements change would affect a lot of modules and a lot of people.

Perhaps there needs to be bootique-jetty11 as a module for people wanting to upgrade. I can't see how it could be clever enough to work out which jetty to depend on depending on what is in the classpath unless there is reflection all over the place.

Yeah, that's what we do with other modules (e.g. bootique-cayenne has 3 varieties). It should be explicit.

I am more concerned about conditional JDK dependency, as it would break an implicit assumption that you can mix and match any bootique modules with each other. So 3.0 may have to fully switch to Java 11

I'm not sure what the concern is. The user will figure out pretty quickly that they cannot compile their project.

Why does bootique have to move forward with the most advanced module? If bootique-jetty12 required Java16 next month, would you have to force everyone forward even if they don't install bootique-jetty12?

Right now the move to groovy3 is causing some difficulties between gradle (needs 7) and Cayenne (cgen doesn't work with gradle 7). If bootique has to solve all those sorts of interdependencies its going to be a bumpy ride. Imagine you had some bootique-spock testing module which pulls in groovy and then collides with Cayenne and gradle.

Now that Jetty 11 is integrated as "bootique-jetty-jakarta", I suppose the default "bootique-jetty" can be switched to Jetty 10. From my experience with 11, it should not be too hard to integrate, and application-side changes will not be required.

bootique-jetty is now on Jetty 10.