Convert source file encoding to UTF-8 #865
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes simplecov-ruby/simplecov-html#91
Summary
IO#set_encoding
to convert encoding to UTF-8.Background
File.open(..., "rb")
will set its encoding to ASCII-8BIT instead of script encoding (UTF-8).This means all lines are ASCII-8BIT.
In simplecov-html, following line
https://github.com/colszowka/simplecov-html/blob/7540373ed44ccd43d1347b775a69673297cc8f90/views/source_file.erb#L48
will try to convert
src
from ASCII-8BIT to UTF-8!Therefore, all non-ASCII characters will be replaced by Unicode Replacement Character.