java-rest-api icon indicating copy to clipboard operation
java-rest-api copied to clipboard

Remove runtime dependency on maven-artifact

Open ryanrupp opened this issue 1 year ago • 3 comments

This was primarily being used to check the Java version to handle < Java 7 in a different way for date formatting, but since Java 8 is the minimum version at this point it is no longer necessary. Also ends up removing the transitive dependency on commons lang which had minimal usage but replaced with an internal StringUtils equivalent.

ryanrupp avatar Nov 22 '24 16:11 ryanrupp

Will note this change came in as part of this commit but the compiler target at that point was already 1.8 (so there should be no Java 6 runtime users unless someone is manually compiling this with a change target of 1.6). Unclear what the minimum Java version is supposed to be, I would personally say Java 8 is reasonable at this point, looks like at some point this was actually at Java 11 but pulled back to 8 here.

ryanrupp avatar Nov 22 '24 19:11 ryanrupp

I also confirmed the latest release (6.2.2) on maven central is indeed producing Java 8 output bytecode (in case there was another build system/config doing the actual publishing).

file com/messagebird/APIResponse.class
com/messagebird/APIResponse.class: compiled Java class data, version 52.0 (Java 1.8)

ryanrupp avatar Nov 22 '24 19:11 ryanrupp

I guess would maybe use this PR (or a follow up) to call out the minimum Java version requirement in the README

ryanrupp avatar Nov 22 '24 19:11 ryanrupp