diff options
| author | Alex Grönholm <alex.gronholm@nextday.fi> | 2020-11-29 13:57:04 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-11-29 13:57:04 +0200 |
| commit | b3ae92cfea824fcc29b4153e7c7025463199adde (patch) | |
| tree | 619d9421351c4d704af0dd0b99473c758e522110 /src | |
| parent | e8cff0b1871724649966d6181483e88b66f6f524 (diff) | |
| download | wheel-git-b3ae92cfea824fcc29b4153e7c7025463199adde.tar.gz | |
Fixed CRLF being used when generating WHEEL files on Windows (#383)
Fixes #378.
Diffstat (limited to 'src')
| -rw-r--r-- | src/wheel/bdist_wheel.py | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/src/wheel/bdist_wheel.py b/src/wheel/bdist_wheel.py index f52b0f2..ebe654d 100644 --- a/src/wheel/bdist_wheel.py +++ b/src/wheel/bdist_wheel.py @@ -12,9 +12,9 @@ import sys import re import warnings from collections import OrderedDict -from email.generator import Generator from distutils.core import Command from distutils import log as logger +from io import BytesIO from glob import iglob from shutil import rmtree from sysconfig import get_config_var @@ -29,6 +29,10 @@ from .vendored.packaging import tags from .wheelfile import WheelFile from . import __version__ as wheel_version +if sys.version_info < (3,): + from email.generator import Generator as BytesGenerator +else: + from email.generator import BytesGenerator safe_name = pkg_resources.safe_name safe_version = pkg_resources.safe_version @@ -381,8 +385,10 @@ class bdist_wheel(Command): wheelfile_path = os.path.join(wheelfile_base, 'WHEEL') logger.info('creating %s', wheelfile_path) - with open(wheelfile_path, 'w') as f: - Generator(f, maxheaderlen=0).flatten(msg) + buffer = BytesIO() + BytesGenerator(buffer, maxheaderlen=0).flatten(msg) + with open(wheelfile_path, 'wb') as f: + f.write(buffer.getvalue().replace(b'\r\n', b'\r')) def _ensure_relative(self, path): # copied from dir_util, deleted |
