From: "austin (Austin Ziegler)" Date: 2022-06-27T15:10:34+00:00 Subject: [ruby-core:109072] [Ruby master Bug#18882] File.read cuts off a text file with special characters when reading it on MS Windows Issue #18882 has been updated by austin (Austin Ziegler). magynhard (Matth��us Johannes Beyrle) wrote in #note-7: > alanwu (Alan Wu) wrote in #note-5: > Might be nice if File.read would use binary mode by default, but that would be a breaking change. So extending the documentation might be the better choice. Or do you think that there is a smart way to throw an error in cases, where a 0x1A character is included and therefore the read file is incomplete? There is no way to throw an error in this case, because there���s no error condition. `0x1a` is read just fine on non-Windows systems in "text" mode, but ignored on Windows, because the underlying operating system APIs respect file mode, which is not really accessible to Ruby. The OS sees an EOF and reports that back to Ruby. Ruby does not know this. ---------------------------------------- Bug #18882: File.read cuts off a text file with special characters when reading it on MS Windows https://bugs.ruby-lang.org/issues/18882#change-98217 * Author: magynhard (Matth��us Johannes Beyrle) * Status: Open * Priority: Normal * ruby -v: ruby 3.1.2p20 (2022-04-12 revision 4491bb740a) [x64-mingw-ucrt] * Backport: 2.7: UNKNOWN, 3.0: UNKNOWN, 3.1: UNKNOWN ---------------------------------------- When using File.read to read a text file (in this case a javascript file) with special characters, the content is cut off at special characters. It occurs only when running ruby on Windows, tried several versions, including the latest. Does not occur on Linux or WSL (Windows Subsystem for Linux). I created a github repo including a test script and the source file as the result inside a file as well: https://github.com/grob-net4industry/ruby_win_file_bug ---Files-------------------------------- copy_pdfmake.min.js (582 KB) pdfmake.min.js (1.29 MB) diff.png (55.9 KB) -- https://bugs.ruby-lang.org/ Unsubscribe: