Everything about

#libraries

Image with slug jspecify-valhalla
How Project Valhalla And JSpecify Can Kill NPEs#video#project‑valhalla #libraries #conversation
Project Valhalla's value types need to be aware of which instance can be null and which can't, so the JVM can inline them. So will Java get a null-aware type system after all? Not quite, but it may get close and JSpecify can help with some of those steps.
Image with slug jspecify-presentation
Java, null, and JSpecify#video#libraries
Kevin Bourrillion gives an introductory presentation on JSpecify, a project spearheading a set of standard annotations for Java static analysis, specifically for tracking null
Image with slug inside-java-newscast-34
Loom in the Java Ecosystem - Inside Java Newscast #34#video#java‑19 #project‑loom #libraries
Among other things, Java 19 ships with virtual threads, structured concurrency APIs, sealed types, and pattern matching in switch - all of them as previews, but still very cool! I'm using these features here to create a GitHub crawler.
Image with slug java-react-folders
Sorting A React App Into Java's Folder Structure#post#js #libraries #tools
How to use react-app-rewired to sort a React app into a Java folder structure with package.json at the root, and sources in src/{main|test}/js
Image with slug junit-5-basics
JUnit 5 Basics: @Test, Lifecycle, Assertions, Assumptions, And More#post#java‑basics #junit‑5 #libraries #testing
The Basics of JUnit 5: How to use @Test, @BeforeAll, @BeforeEach, @AfterEach, @AfterAll, assertions, and assumptions. How to disable, name, and tag tests.
Image with slug junit-5-disabled-conditions
JUnit 5 Conditions: @Enabled, @Disabled, Customized#post#junit‑5 #libraries #testing
A detailed look at JUnit 5's @Disabled, @DisabledOnOs, @DisabledOnJre, etc. and how to create custom conditions to flexibly disable test methods.
Image with slug junit-5-architecture-jupiter
JUnit 5 Architecture or "What's Jupiter?"#post#architecture #junit‑5 #libraries #testing
The JUnit 5 architecture promotes a better separation of concerns than JUnit 4 did. It also provides clear APIs for testers (Jupiter) and tools (Platform).
Image with slug junit-5-dynamic-tests
JUnit 5 - Dynamic Tests#post#junit‑5 #lambda #libraries #testing
With JUnit 5's dynamic tests, we can create tests at run time, for example to parameterize tests, create hierarchical test plans, or define tests with lambdas.
Image with slug junit-5-parameterized-tests
JUnit 5 - Parameterized Tests#post#junit‑5 #libraries #testing
Thorough introduction to parameterized tests in JUnit 5 with @ParameterizedTest, argument sources (eg @MethodSource, @CsvSource), and argument converters.
Image with slug junit-5-extension-model
JUnit 5 Extension Model: How To Create Your Own Extensions#post#architecture #junit‑5 #libraries #testing
The JUnit 5 extension model enables detailed, flexible, and powerful additions to JUnit 5's core features. For that it provides specific extension points.
Image with slug junit-5-setup
JUnit 5 Setup in IntelliJ, Eclipse, Maven, and Gradle#post#tools #junit‑5 #libraries #testing
How to set up JUnit 5 so tests run in IntelliJ, Eclipse, Maven, Gradle or, if all else fails, via JUnit 4 or on the command line.
Image with slug junit-lambda-prototype
JUnit Lambda - The Prototype#post#junit‑5 #libraries #testing
JUnit Lambda will eventually bring us JUnit 5. This is a discussion of the recent prototype, its features, core principles and compatibility considerations.
Image with slug test-collection-implementations-guava
Test Collection Implementations with Guava#post#collections #libraries #testing
Here's how to use Guava-Testlib to easily and thoroughly test your own Java collection implementations.