mitre / HTTP-Proxy-Servlet

Smiley's HTTP Proxy implemented as a Java servlet
Apache License 2.0
1.46k stars 555 forks source link

Spring boot 3 incompatibility #237

Open onderilkesever opened 1 year ago

onderilkesever commented 1 year ago

Hi! We are trying to upgrade our application to Spring Boot 3 and as part of the migration we had to move away from javax to jakarta as all the dependencies moved there. This creates incompatibility with this library since it is still based on javax implementations/classes. Question is, do you plan to release new version which migrates your implementation to jakarta from javax?

dsmiley commented 1 year ago

Hi! Oh right; I forgot about that industry change coming. Until your request, I had only heard about it but have yet to see someone ask or in any way truly encounter the matter. I suppose this would be a breaking change; perhaps a major release.

onderilkesever commented 1 year ago

Hi David, although changes seems lot actual code change might be very minimal since the libraries moved and they did not have lots of version difference compared to what you have in your library. And the reason you haven't heard about this in the repo might be the fact that people are taking a bit slow to migrate latest spring boot but i suppose inevitably they will have to at some point.. It would be nice to hear if you could share your plans for releasing new version.. Best..

dsmiley commented 1 year ago

I can do a release but I suppose it should be a new major version as it's breaking change.

PR's welcome of course. I'm just a maintainer/reviewer these days.

jetztgradnet commented 1 year ago

We are currently migrating an application using this proxy servlet to JakartaEE and are looking for a solution as well. @reda-alaoui I will test your draft PR #238 and provide some feedback. @dsmiley what would work for you regarding a timeline of a release, assuming the PR is ready and working?

dsmiley commented 1 year ago

I can commit to a release within 2 weeks of when we want it; probably 1 week. It's not hard.

Not sure if the major release should also be combining Apache HttpClient 5 which is also major-release worth -- #236 . There is no PR there yet. If we do combine these, is there any concern from you all in that?

lburja commented 1 year ago

I believe that Apache HttpClient 5 is also important for compatibility with Spring Boot 3. At least, Spring Boot 3 has migrated to it (see migration guide).

dsmiley commented 1 year ago

Maybe I closed this prematurely. See #239 for HttpClient 5, which is also worthy of a 2.0 upgrade change.

jetztgradnet commented 1 year ago

@dsmiley Could we possibly release this with the current HttpClient 4.5 as 2.0 for existing users who just need that the JakartaEE change? An update to HttpClient 5.0 could be done in a 2.1 release?

dsmiley commented 1 year ago

Yeah... or maybe that would be 3.0 as it's really a large change.

umadeva commented 1 year ago

@dsmiley when can we expect 2.0 , change for JakartaEE to be available?

dsmiley commented 1 year ago

Whoops I forgot to this past weekend. I'll try to get to that in the next couple days

dsmiley commented 1 year ago

I bumped the minimum Java version to 11 as well. I also deployed a snapshots: https://oss.sonatype.org/content/repositories/snapshots/org/mitre/dsmiley/httpproxy/smiley-http-proxy-servlet/2.0-SNAPSHOT/ Please verify if it works for you.

cmuchinsky commented 1 year ago

I bumped the minimum Java version to 11 as well. I also deployed a snapshots: https://oss.sonatype.org/content/repositories/snapshots/org/mitre/dsmiley/httpproxy/smiley-http-proxy-servlet/2.0-SNAPSHOT/ Please verify if it works for you.

I was able to successfully perform a local test with the 2.0-SNAPSHOT version and spring-boot 3.1.1

dsmiley commented 1 year ago

published; see: https://central.sonatype.com/namespace/org.mitre.dsmiley.httpproxy If all is well, please close this issue to confirm.

onderilkesever commented 1 year ago

Thanks @dsmiley and everyone who worked on the issue. I will close this issue once I have time to try out in our codebase. If you prefer it to stay closed meanwhile, feel free to close. I can open again if the issue somehow persists(hardly think though).

jetztgradnet commented 1 year ago

thanks, @reda-alaoui and @dsmiley for making this happen! Just in time for (the QA phase before) our product release.