Details
-
Bug
-
Status: Closed
-
Normal
-
Resolution: Fixed
-
PUP 4.3.2
-
None
-
2
-
Windows 2016-03-09, Windows 2016-04-20, Windows 2016-05-04
Description
There are a number of places in Puppet where the internal file abstraction Puppet::FileSystem is not used, but should be, to enforce files are read properly as UTF-8. This primarily affects Windows, where the local codepage frequently causes unnecessary conversions if UTF-8 is not explicitly specified.
An initial spike is in the branch - https://github.com/Iristyle/puppet/commits/ticket/stable/PUP-5728-convert-remaining-File-read-calls-to-Puppet-FileSystem that built on the work in PUP-5728
Two other items of note:
- PE-13721 exposed a similar issue in the puppet_enterprise module in a Japanese Windows - this module should be spot checked and additional tickets filed if similar problems are discovered
- Mcollective should also be analyzed, given it's Ruby code... for areas where it touches the FileSystem, etc (this should result in additional tickets if necessary)
Attachments
Issue Links
- relates to
-
PUP-8729 Puppet does not accept UTF8 on the command line
-
- Resolved
-
-
PUP-5728 Change default parsing of manifest files to UTF-8
-
- Closed
-
-
PUP-5768 Fix problematic usage of ENV for Windows
-
- Closed
-
-
PUP-6190 Puppet module build errors if a file or directory contains non US English characters
-
- Closed
-
-
PUP-6188 Document Puppet::FileSystem.open / exclusive_open encoding usage, and make existing code explicitly use encodings
-
- Closed
-