Useful tools and utilities that extend Java, Apache Commons Lang, and Apache Commons IO to make them a little more accessible and non-intrusive.
In your build.gradle:
compile group: "us.ihmc", name: "ihmc-commons", version:
testCompile group: "us.ihmc", name: "ihmc-commons-testing", version:
- Apache Commons Lang 3
- Apache Commons I/O
- IHMC's Log Tools logging library providing setting log level from CLI
- File and Path tools that interface using Java's NIO.2 API.
- Minimal Stopwatch with friendly API.
- Commonly needed conversions. (Data information units, etc.)
- Epsilons for explicitness and convenience.
- Functional exception handling including one-liner option.
- Recycling and preallocated lists, deque.
- Tools to increase threading safety.
- Tools for defining time intervals.
- Ring buffers and array sorters.
- Tools for working with angles and arrays.
- Tools for working with deadbands.
- Support for mutation testing and displaying the results in your browser.
- Tools for running parallel continuous integration tests in the cloud.
- Extra assertions. (assertSerializable, assertExceptionThrown, etc.)
- Tools for allocation testing. (Filtering on top of google/java-allocation-instrumenter)
This build requires Gradle 5.0+.
This library aims to be small, lightweight, and stable with minimal dependencies. Pull requests will be heavily reviewed.