From: "mame (Yusuke Endoh)" Date: 2022-07-21T12:20:42+00:00 Subject: [ruby-core:109279] [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 mame (Yusuke Endoh). We discussed this ticket at the dev meeting. @usa and @nobu said that `File.read` reads a file in text mode. And the VC runtime (msvcrt) does EOF character handling, CRLF conversion, etc under text mode. There is no fine-grained control on the Ruby side. It is possible for `File.read` to read a file in binary mode, but it would require careful consideration about implementation, side effect, compatibility, etc. For now, it is good to add a sentence like "This method reads a file in text mode." to the rdoc of `File.read` (and `File.write`). ---------------------------------------- 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-98411 * Author: magynhard (Matth��us Johannes Beyrle) * Status: Rejected * 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: