ppkarwasz commented on PR #3855: URL: https://github.com/apache/logging-log4j2/pull/3855#issuecomment-3113019577
I'm a strong advocate for using `Path` instead of `String` or `File`. This proposal, however, feels like an *ad hoc* patch that only addresses one of the [file appenders](https://logging.apache.org/log4j/2.x/manual/appenders/file.html) and doesn't even touch on rolling file appenders. Given that this is clearly important for your employer, would it be possible to ask them to let you work on #2117 during work hours? :pray: I recall you volunteered for that on Slack, though it's totally understandable that tackling something of that scope in your spare time isn’t feasible, especially with all the Commons tasks already on your plate. There are clear benefits to transitioning Log4j’s file handling from IO to NIO: * You're primarily developing on Windows, where the low-level file access flags differ: NIO automatically sets `FILE_SHARE_DELETE`, which avoids many file locking issues. * A NIO-based Log4j would better align with your employer’s own applications, after you migrate them to NIO. * NIO opens the door to alternative `FileSystemProvider` implementations. This could make it possible (for example) to write logs from Unix-based servers directly to Windows shares using SMB or CIFS. * Testing Log4j from Windows would become more reliable: many current flaky tests stem from attempts to delete files with open handles. * This change feels incremental and uninspired. In contrast, tackling #2117 would be a substantial improvement, something we could confidently showcase in the release notes for `2.26.0` or `2.27.0` (whenever the timing works for you). -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
