20 Aug 2025

feedDZone Java Zone

Filtering Java Stack Traces With MgntUtils Library

Introduction: Problem Definition and Suggested Solution Idea

This article is a a technical article for Java developers that suggest a solution for a major pain point of analyzing very long stack traces searching for meaningful information in a pile of frameworks related stack trace lines. The core idea of the solution is to provide a capability to intelligently filter out irrelevant parts of the stack trace without losing important and meaningful information. The benefits are two-fold:

1. Making stack trace much easier to read and analyze, making it more clear and concise

20 Aug 2025 8:00pm GMT

15 Aug 2025

feedDZone Java Zone

Java JEP 400 Explained: Why UTF-8 Became the Default Charset

A JDK Enhancement Proposal (JEP) is a formal process used to propose and document improvements to the Java Development Kit. It ensures that enhancements are thoughtfully planned, reviewed, and integrated to keep the JDK modern, consistent, and sustainable over time. Since its inception, many JEPs have introduced significant language and runtime features that shape the evolution of Java. One such important proposal, JEP 400, introduced in JDK 18 in 2022, standardizes UTF-8 as the default charset, addressing long-standing issues with platform-dependent encoding and improving Java's cross-platform reliability.

Traditionally, Java's I/O API, introduced in JDK 1.1, includes classes like FileReader and FileWriter that read and write text files. These classes rely on a Charset to correctly interpret byte data. When a charset is explicitly passed to the constructor, like in:

15 Aug 2025 7:00pm GMT

12 Aug 2025

feedDZone Java Zone

Scoped Values: Revolutionizing Java Context Management

In an application meant for concurrent execution need of sharing data (or context) between threads is imperative. The available design choices are to pass the context as method parameter(s) or enable the context to be universally accessible (viz. global variable or equivalent).

While former choice (i.e. context as method argument) is easiest it doesn't scale well. As the application evolves, the context too grows and thus the method parameters. Moreover, the method is required to accept parameters which aren't utilized by itself directly but instead some method deep down the call hierarchy. Thus, overall data flow isn't clean or intuitive. In case the context is mutable any of the callee potentially could corrupt the context. Identifying this rouge behavior is unpleasant at best.

12 Aug 2025 12:00pm GMT

30 Jun 2025

feedLua: news

Lua 5.5.0 (beta) released

Lua 5.5.0 (beta) released The beta version of Lua 5.5 has been released for testing.

30 Jun 2025 1:07pm GMT

04 Jun 2025

feedLua: news

Lua 5.4.8 released

Lua 5.4.8 has been released. It fixes all known bugs in Lua 5.4.7.

04 Jun 2025 10:34am GMT

25 Jun 2024

feedLua: news

Lua 5.4.7 released

Lua 5.4.7 has been released. It fixes all known bugs in Lua 5.4.6.

25 Jun 2024 1:01pm GMT