# HG changeset patch # User Victor Stinner # Date 1315259096 -7200 # Node ID fb4d2e6d393e96baac13c4efc216e361bf12c293 # Parent cb47cf5138a4567718a25d69a79d1c62d13f187c Issue #9561: distutils now reads and writes egg-info files using UTF-8 instead of the locale encoding. diff --git a/Lib/distutils/command/install_egg_info.py b/Lib/distutils/command/install_egg_info.py --- a/Lib/distutils/command/install_egg_info.py +++ b/Lib/distutils/command/install_egg_info.py @@ -40,9 +40,8 @@ class install_egg_info(Command): "Creating "+self.install_dir) log.info("Writing %s", target) if not self.dry_run: - f = open(target, 'w') - self.distribution.metadata.write_pkg_file(f) - f.close() + with open(target, 'w', encoding='UTF-8') as f: + self.distribution.metadata.write_pkg_file(f) def get_outputs(self): return self.outputs diff --git a/Lib/distutils/dist.py b/Lib/distutils/dist.py --- a/Lib/distutils/dist.py +++ b/Lib/distutils/dist.py @@ -1010,11 +1010,9 @@ class DistributionMetadata: def write_pkg_info(self, base_dir): """Write the PKG-INFO file into the release tree. """ - pkg_info = open(os.path.join(base_dir, 'PKG-INFO'), 'w') - try: + with open(os.path.join(base_dir, 'PKG-INFO'), 'w', + encoding='UTF-8') as pkg_info: self.write_pkg_file(pkg_info) - finally: - pkg_info.close() def write_pkg_file(self, file): """Write the PKG-INFO format data to a file object.