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]

Reply via email to