fskorgen opened a new issue, #8233:
URL: https://github.com/apache/hop/issues/8233

   ### Apache Hop version?
   
   2.20.0-SNAPSHOT
   
   ### Java version?
   
   21
   
   ### Operating system
   
   Windows
   
   ### What happened?
   
   I found this while preparing a pull request for another issue. After a 
build, two files I had not
   touched showed up as modified.
   
   Both files use a NUL character as a separator, and it is written as a real 
byte in the source:
   
   - `HopGuiSearchHelper.java`, line 461
   - `MetadataPerspective.java`, lines 3161 and 3180
   
   Git sees that NUL and treats these two files as binary. Because of that it 
does not normalize line
   endings for them, so on Windows the build rewrites both files with CRLF. 
They then look like a
   4200 line change, even though nothing has really changed - `git diff 
--ignore-cr-at-eol` shows
   nothing at all. I have to run `git restore` after every build, and it is 
easy to include that noise
   in a pull request by mistake.
   
   If the NUL is written as the escape `"\0"` instead of a real byte, the 
character is the same at
   runtime and both files become normal text files for Git. It is a three line 
change.
   
   I have the change ready and tested locally, and will open a pull request for 
it as soon as this
   issue has a number.
   
   Tested on main (`2611fdfdda`), Windows, Java 21.
   
   The ten `.txt` files that Git also reports as binary are test files with 
special bytes and should
   stay as they are.
   
   ### Issue Priority
   
   Priority: 3
   
   ### Issue Component
   
   Component: Infrastructure


-- 
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