Skip to content

Releases: sbabcoc/Java-Utils

Fix Macintosh path acquisition; omit duplicate entries; clean up stuff

09 Aug 06:42
Compare
Choose a tag to compare

In this release, I fixed a bug in the acquisition of Macintosh path entries, optimizing the process. I added logic to omit entries that were already represented. I also performed some basic clean-up - removing unnecessary boxing, adding 'final' specifiers where possible, etc.

PathUtils: Add methods to acquire system paths

09 Aug 04:02
Compare
Choose a tag to compare

In this release, I added methods to acquire the system paths in two different flavors - standard PATH from the system environment and the path_helper collection found on Mac OS X. These are returned independently as list augmenters or together as a path-delimited string.

Build for Java 8; upgrade dependencies and plugins

11 Jun 05:28
Compare
Choose a tag to compare

In this release, I finally dropped support for Java 7. By building this library for Java 8, I'm able to upgrade dependencies to newer versions that resolve identified vulnerabilities.

Add new stack trace capture class

15 May 19:29
Compare
Choose a tag to compare

In this release, I added a cool widget for capturing diagnostic information: the StackTrack class. This class extends Throwable and it's intended to facilitate capture of the flow of execution that triggered system state changes that may lead to future operation errors. For example, an object that's no longer valid might get used subsequent to the event that caused it to become invalid, or a long-lived object may get discarded without corresponding resources being cleaned up.

For more details, check out the blog post that provided the implementation for StackTrace.

Add new classpath/javaagent method that returns a list

20 Sep 05:26
Compare
Choose a tag to compare

In this release, I added a new getContextPaths method that returns the classpath and Java agent specifications in a list. After using the existing getClasspath method, I realized that I ended up having to perform a lot of processing on the string it returns that essentially undoes the string concatenation the method had just done.

Tweak dependencies to suppress aggressive Guava warning

26 Aug 19:17
Compare
Choose a tag to compare

Guava 30.1.1-android adds an obtrusive warning regarding the intent to remove support for Java 7 in an unspecified future release. I figured out a way to suppress the warning, but this requires pulling in guava transitively through guava-agent:

com.nordstrom.tools:guava-agent:30.1.1a
└── com.google.guava:guava:30.1.1-android

Upgrade dependencies and plugins

23 Aug 02:55
Compare
Choose a tag to compare

This release contains no functional changes but is instead focused on project housekeeping.
I also fixed a platform-specific bug in one of the unit tests and resolves a JavaDoc warning.

Revise cross-compile configuration

20 Aug 19:37
Compare
Choose a tag to compare

This release is solely focused on non-functional aspects of the project, Specifically, I revised the POM to use the cross-compilation features that were added in Java 9. This eliminated the need for maven-toolchains-plugin, which obviated the Eclipse M2E lifecycle-mapping configuration. I also migrated the project to the newer Sonatype s01 staging host for the deployment of releases.

In addition to this project configuration refresh, I corrected the formatting of line breaks in my JavaDoc comments.

Genericize database methods; require result instead of masking lack thereof

24 Jan 08:53
Compare
Choose a tag to compare

This release is focused on a few pervasive issues in the DatabaseUtils class:

  • Prior to this release, many methods returned Object instead of specifying a generic return type. This required client code to declare explicit type-cast operations and ignore the resulting "unchecked cast" warnings. These have all been updated to eliminate the need for these type-casts.
  • If the specified query or stored procedure failed to return a result, the two getString(...) methods would return null and the two getInt(...) methods would return -1. In this release, failure to return a result for these methods will now cause IllegalStateException to be thrown.

I also added README references to a few neglected utility classes that I hope folks will find useful.

Add documentation and attributions for JarUtils

24 Jan 05:56
Compare
Choose a tag to compare

This release is focused on adding documentation for the JarUtils class. After all, features that no one can find don't exist.
I also added attributions regarding the provenance of the core function of this class. Credit where credit is due!