Changelog
### 0.31.1
```
======
- Fixed arch as ``None`` when converting eggs to wheels
```
### 0.31.0
```
======
- Fixed displaying of errors on Python 3
- Fixed single digit versions in wheel files not being properly recognized
- Fixed wrong character encodings being used (instead of UTF-8) to read and
write ``RECORD`` (this sometimes crashed bdist_wheel too)
- Enabled Zip64 support in wheels by default
- Metadata-Version is now 2.1
- Dropped DESCRIPTION.rst and metadata.json from the list of generated files
- Dropped support for the non-standard, undocumented ``provides-extra`` and
``requires-dist`` keywords in setup.cfg metadata
- Deprecated all wheel signing and signature verification commands
- Removed the (already defunct) ``tool`` extras from setup.py
```
### 0.30.0
```
======
- Added py-limited-api {cp32|cp33|cp34|...} flag to produce cpNN.abi3.{arch}
tags on CPython 3.
- Documented the ``license_file`` metadata key
- Improved Python, abi tagging for `wheel convert`. Thanks Ales Erjavec.
- Fixed `>` being prepended to lines starting with "From" in the long description
- Added support for specifying a build number (as per PEP 427).
Thanks Ian Cordasco.
- Made the order of files in generated ZIP files deterministic.
Thanks Matthias Bach.
- Made the order of requirements in metadata deterministic. Thanks Chris Lamb.
- Fixed `wheel install` clobbering existing files
- Improved the error message when trying to verify an unsigned wheel file
- Removed support for Python 2.6, 3.2 and 3.3.
```
### 0.29.0
```
======
- Fix compression type of files in archive (Issue 155, Pull Request 62,
thanks Xavier Fernandez)
```
### 0.28.0
```
======
- Fix file modes in archive (Issue 154)
```
### 0.27.0
```
======
- Support forcing a platform tag using `--plat-name` on pure-Python wheels, as
well as nonstandard platform tags on non-pure wheels (Pull Request 60, Issue
144, thanks Andrés Díaz)
- Add SOABI tags to platform-specific wheels built for Python 2.X (Pull Request
55, Issue 63, Issue 101)
- Support reproducible wheel files, wheels that can be rebuilt and will hash to
the same values as previous builds (Pull Request 52, Issue 143, thanks
Barry Warsaw)
- Support for changes in keyring >= 8.0 (Pull Request 61, thanks Jason R.
Coombs)
- Use the file context manager when checking if dependency_links.txt is empty,
fixes problems building wheels under PyPy on Windows (Issue 150, thanks
Cosimo Lupo)
- Don't attempt to (recursively) create a build directory ending with `..`
(invalid on all platforms, but code was only executed on Windows) (Issue 91)
- Added the PyPA Code of Conduct (Pull Request 56)
```
### 0.26.0
```
======
- Fix multiple entrypoint comparison failure on Python 3 (Issue 148)
```
### 0.25.0
```
======
- Add Python 3.5 to tox configuration
- Deterministic (sorted) metadata
- Fix tagging for Python 3.5 compatibility
- Support py2-none-'arch' and py3-none-'arch' tags
- Treat data-only wheels as pure
- Write to temporary file and rename when using wheel install --force
```
### 0.24.0
```
======
- The python tag used for pure-python packages is now .pyN (major version
only). This change actually occurred in 0.23.0 when the --python-tag
option was added, but was not explicitly mentioned in the changelog then.
- wininst2wheel and egg2wheel removed. Use "wheel convert [archive]"
instead.
- Wheel now supports setuptools style conditional requirements via the
extras_require={} syntax. Separate 'extra' names from conditions using
the : character. Wheel's own setup.py does this. (The empty-string
extra is the same as install_requires.) These conditional requirements
should work the same whether the package is installed by wheel or
by setup.py.
```
### 0.23.0
```
======
- Compatibility tag flags added to the bdist_wheel command
- sdist should include files necessary for tests
- 'wheel convert' can now also convert unpacked eggs to wheel
- Rename pydist.json to metadata.json to avoid stepping on the PEP
- The --skip-scripts option has been removed, and not generating scripts is now
the default. The option was a temporary approach until installers could
generate scripts themselves. That is now the case with pip 1.5 and later.
Note that using pip 1.4 to install a wheel without scripts will leave the
installation without entry-point wrappers. The "wheel install-scripts"
command can be used to generate the scripts in such cases.
- Thank you contributors
```
### 0.22.0
```
======
- Include entry_points.txt, scripts a.k.a. commands, in experimental
pydist.json
- Improved test_requires parsing
- Python 2.6 fixes, "wheel version" command courtesy pombredanne
```
### 0.21.0
```
======
- Pregenerated scripts are the default again.
- "setup.py bdist_wheel --skip-scripts" turns them off.
- setuptools is no longer a listed requirement for the 'wheel'
package. It is of course still required in order for bdist_wheel
to work.
- "python -m wheel" avoids importing pkg_resources until it's necessary.
```
### 0.20.0
```
======
- No longer include console_scripts in wheels. Ordinary scripts (shell files,
standalone Python files) are included as usual.
- Include new command "python -m wheel install-scripts [distribution
[distribution ...]]" to install the console_scripts (setuptools-style
scripts using pkg_resources) for a distribution.
```
### 0.19.0
```
======
- pymeta.json becomes pydist.json
```
### 0.18.0
```
======
- Python 3 Unicode improvements
```
### 0.17.0
```
======
- Support latest PEP-426 "pymeta.json" (json-format metadata)
```
### 0.16.0
```
======
- Python 2.6 compatibility bugfix (thanks John McFarlane)
- Non-prerelease version number
```
### 0.15.0
```
======
- Various improvements
```
### 0.14.0
```
======
- Changed the signature format to better comply with the current JWS spec.
Breaks all existing signatures.
- Include ``wheel unsign`` command to remove RECORD.jws from an archive.
- Put the description in the newly allowed payload section of PKG-INFO
(METADATA) files.
```
### 0.13.0
```
======
- Use distutils instead of sysconfig to get installation paths; can install
headers.
- Improve WheelFile() sort.
- Allow bootstrap installs without any pkg_resources.
```
### 0.12.0
```
======
- Unit test for wheel.tool.install
```
### 0.11.0
```
======
- API cleanup
```
### 0.10.3
```
======
- Scripts fixer fix
```
### 0.10.2
```
======
- Fix keygen
```
### 0.10.1
```
======
- Preserve attributes on install.
```
### 0.10.0
```
======
- Include a copy of pkg_resources. Wheel can now install into a virtualenv
that does not have distribute (though most packages still require
pkg_resources to actually work; wheel install distribute)
- Define a new setup.cfg section [wheel]. universal=1 will
apply the py2.py3-none-any tag for pure python wheels.
```
### 0.9.7
```
=====
- Only import dirspec when needed. dirspec is only needed to find the
configuration for keygen/signing operations.
```
### 0.9.6
```
=====
- requires-dist from setup.cfg overwrites any requirements from setup.py
Care must be taken that the requirements are the same in both cases,
or just always install from wheel.
- drop dirspec requirement on win32
- improved command line utility, adds 'wheel convert [egg or wininst]' to
convert legacy binary formats to wheel
```
### 0.9.5
```
=====
- Wheel's own wheel file can be executed by Python, and can install itself:
``python wheel-0.9.5-py27-none-any/wheel install ...``
- Use argparse; basic ``wheel install`` command should run with only stdlib
dependencies.
- Allow requires_dist in setup.cfg's [metadata] section. In addition to
dependencies in setup.py, but will only be interpreted when installing
from wheel, not from sdist. Can be qualified with environment markers.
```
### 0.9.4
```
=====
- Fix wheel.signatures in sdist
```
### 0.9.3
```
=====
- Integrated digital signatures support without C extensions.
- Integrated "wheel install" command (single package, no dependency
resolution) including compatibility check.
- Support Python 3.3
- Use Metadata 1.3 (PEP 426)
```
### 0.9.2
```
=====
- Automatic signing if WHEEL_TOOL points to the wheel binary
- Even more Python 3 fixes
```
### 0.9.1
```
=====
- 'wheel sign' uses the keys generated by 'wheel keygen' (instead of generating
a new key at random each time)
- Python 2/3 encoding/decoding fixes
- Run tests on Python 2.6 (without signature verification)
```
### 0.9
```
===
- Updated digital signatures scheme
- Python 3 support for digital signatures
- Always verify RECORD hashes on extract
- "wheel" command line tool to sign, verify, unpack wheel files
```
### 0.8
```
===
- none/any draft pep tags update
- improved wininst2wheel script
- doc changes and other improvements
```
### 0.7
```
===
- sort .dist-info at end of wheel archive
- Windows & Python 3 fixes from Paul Moore
- pep8
- scripts to convert wininst & egg to wheel
```
### 0.6
```
===
- require distribute >= 0.6.28
- stop using verlib
```
### 0.5
```
===
- working pretty well
```
### 0.4.2
```
=====
- hyphenated name fix
```
### 0.4
```
===
- improve test coverage
- improve Windows compatibility
- include tox.ini courtesy of Marc Abramowitz
- draft hmac sha-256 signing function
```
### 0.3
```
===
- prototype egg2wheel conversion script
```
### 0.2
```
===
- Python 3 compatibility
```
### 0.1
```
===
- Initial version
```
Links
- PyPI: https://pypi.org/project/wheel
- Changelog: https://pyup.io/changelogs/wheel/
- Repo: https://github.com/pypa/wheel
This PR pins wheel to the latest release 0.31.1.
Changelog
### 0.31.1 ``` ====== - Fixed arch as ``None`` when converting eggs to wheels ``` ### 0.31.0 ``` ====== - Fixed displaying of errors on Python 3 - Fixed single digit versions in wheel files not being properly recognized - Fixed wrong character encodings being used (instead of UTF-8) to read and write ``RECORD`` (this sometimes crashed bdist_wheel too) - Enabled Zip64 support in wheels by default - Metadata-Version is now 2.1 - Dropped DESCRIPTION.rst and metadata.json from the list of generated files - Dropped support for the non-standard, undocumented ``provides-extra`` and ``requires-dist`` keywords in setup.cfg metadata - Deprecated all wheel signing and signature verification commands - Removed the (already defunct) ``tool`` extras from setup.py ``` ### 0.30.0 ``` ====== - Added py-limited-api {cp32|cp33|cp34|...} flag to produce cpNN.abi3.{arch} tags on CPython 3. - Documented the ``license_file`` metadata key - Improved Python, abi tagging for `wheel convert`. Thanks Ales Erjavec. - Fixed `>` being prepended to lines starting with "From" in the long description - Added support for specifying a build number (as per PEP 427). Thanks Ian Cordasco. - Made the order of files in generated ZIP files deterministic. Thanks Matthias Bach. - Made the order of requirements in metadata deterministic. Thanks Chris Lamb. - Fixed `wheel install` clobbering existing files - Improved the error message when trying to verify an unsigned wheel file - Removed support for Python 2.6, 3.2 and 3.3. ``` ### 0.29.0 ``` ====== - Fix compression type of files in archive (Issue 155, Pull Request 62, thanks Xavier Fernandez) ``` ### 0.28.0 ``` ====== - Fix file modes in archive (Issue 154) ``` ### 0.27.0 ``` ====== - Support forcing a platform tag using `--plat-name` on pure-Python wheels, as well as nonstandard platform tags on non-pure wheels (Pull Request 60, Issue 144, thanks Andrés Díaz) - Add SOABI tags to platform-specific wheels built for Python 2.X (Pull Request 55, Issue 63, Issue 101) - Support reproducible wheel files, wheels that can be rebuilt and will hash to the same values as previous builds (Pull Request 52, Issue 143, thanks Barry Warsaw) - Support for changes in keyring >= 8.0 (Pull Request 61, thanks Jason R. Coombs) - Use the file context manager when checking if dependency_links.txt is empty, fixes problems building wheels under PyPy on Windows (Issue 150, thanks Cosimo Lupo) - Don't attempt to (recursively) create a build directory ending with `..` (invalid on all platforms, but code was only executed on Windows) (Issue 91) - Added the PyPA Code of Conduct (Pull Request 56) ``` ### 0.26.0 ``` ====== - Fix multiple entrypoint comparison failure on Python 3 (Issue 148) ``` ### 0.25.0 ``` ====== - Add Python 3.5 to tox configuration - Deterministic (sorted) metadata - Fix tagging for Python 3.5 compatibility - Support py2-none-'arch' and py3-none-'arch' tags - Treat data-only wheels as pure - Write to temporary file and rename when using wheel install --force ``` ### 0.24.0 ``` ====== - The python tag used for pure-python packages is now .pyN (major version only). This change actually occurred in 0.23.0 when the --python-tag option was added, but was not explicitly mentioned in the changelog then. - wininst2wheel and egg2wheel removed. Use "wheel convert [archive]" instead. - Wheel now supports setuptools style conditional requirements via the extras_require={} syntax. Separate 'extra' names from conditions using the : character. Wheel's own setup.py does this. (The empty-string extra is the same as install_requires.) These conditional requirements should work the same whether the package is installed by wheel or by setup.py. ``` ### 0.23.0 ``` ====== - Compatibility tag flags added to the bdist_wheel command - sdist should include files necessary for tests - 'wheel convert' can now also convert unpacked eggs to wheel - Rename pydist.json to metadata.json to avoid stepping on the PEP - The --skip-scripts option has been removed, and not generating scripts is now the default. The option was a temporary approach until installers could generate scripts themselves. That is now the case with pip 1.5 and later. Note that using pip 1.4 to install a wheel without scripts will leave the installation without entry-point wrappers. The "wheel install-scripts" command can be used to generate the scripts in such cases. - Thank you contributors ``` ### 0.22.0 ``` ====== - Include entry_points.txt, scripts a.k.a. commands, in experimental pydist.json - Improved test_requires parsing - Python 2.6 fixes, "wheel version" command courtesy pombredanne ``` ### 0.21.0 ``` ====== - Pregenerated scripts are the default again. - "setup.py bdist_wheel --skip-scripts" turns them off. - setuptools is no longer a listed requirement for the 'wheel' package. It is of course still required in order for bdist_wheel to work. - "python -m wheel" avoids importing pkg_resources until it's necessary. ``` ### 0.20.0 ``` ====== - No longer include console_scripts in wheels. Ordinary scripts (shell files, standalone Python files) are included as usual. - Include new command "python -m wheel install-scripts [distribution [distribution ...]]" to install the console_scripts (setuptools-style scripts using pkg_resources) for a distribution. ``` ### 0.19.0 ``` ====== - pymeta.json becomes pydist.json ``` ### 0.18.0 ``` ====== - Python 3 Unicode improvements ``` ### 0.17.0 ``` ====== - Support latest PEP-426 "pymeta.json" (json-format metadata) ``` ### 0.16.0 ``` ====== - Python 2.6 compatibility bugfix (thanks John McFarlane) - Non-prerelease version number ``` ### 0.15.0 ``` ====== - Various improvements ``` ### 0.14.0 ``` ====== - Changed the signature format to better comply with the current JWS spec. Breaks all existing signatures. - Include ``wheel unsign`` command to remove RECORD.jws from an archive. - Put the description in the newly allowed payload section of PKG-INFO (METADATA) files. ``` ### 0.13.0 ``` ====== - Use distutils instead of sysconfig to get installation paths; can install headers. - Improve WheelFile() sort. - Allow bootstrap installs without any pkg_resources. ``` ### 0.12.0 ``` ====== - Unit test for wheel.tool.install ``` ### 0.11.0 ``` ====== - API cleanup ``` ### 0.10.3 ``` ====== - Scripts fixer fix ``` ### 0.10.2 ``` ====== - Fix keygen ``` ### 0.10.1 ``` ====== - Preserve attributes on install. ``` ### 0.10.0 ``` ====== - Include a copy of pkg_resources. Wheel can now install into a virtualenv that does not have distribute (though most packages still require pkg_resources to actually work; wheel install distribute) - Define a new setup.cfg section [wheel]. universal=1 will apply the py2.py3-none-any tag for pure python wheels. ``` ### 0.9.7 ``` ===== - Only import dirspec when needed. dirspec is only needed to find the configuration for keygen/signing operations. ``` ### 0.9.6 ``` ===== - requires-dist from setup.cfg overwrites any requirements from setup.py Care must be taken that the requirements are the same in both cases, or just always install from wheel. - drop dirspec requirement on win32 - improved command line utility, adds 'wheel convert [egg or wininst]' to convert legacy binary formats to wheel ``` ### 0.9.5 ``` ===== - Wheel's own wheel file can be executed by Python, and can install itself: ``python wheel-0.9.5-py27-none-any/wheel install ...`` - Use argparse; basic ``wheel install`` command should run with only stdlib dependencies. - Allow requires_dist in setup.cfg's [metadata] section. In addition to dependencies in setup.py, but will only be interpreted when installing from wheel, not from sdist. Can be qualified with environment markers. ``` ### 0.9.4 ``` ===== - Fix wheel.signatures in sdist ``` ### 0.9.3 ``` ===== - Integrated digital signatures support without C extensions. - Integrated "wheel install" command (single package, no dependency resolution) including compatibility check. - Support Python 3.3 - Use Metadata 1.3 (PEP 426) ``` ### 0.9.2 ``` ===== - Automatic signing if WHEEL_TOOL points to the wheel binary - Even more Python 3 fixes ``` ### 0.9.1 ``` ===== - 'wheel sign' uses the keys generated by 'wheel keygen' (instead of generating a new key at random each time) - Python 2/3 encoding/decoding fixes - Run tests on Python 2.6 (without signature verification) ``` ### 0.9 ``` === - Updated digital signatures scheme - Python 3 support for digital signatures - Always verify RECORD hashes on extract - "wheel" command line tool to sign, verify, unpack wheel files ``` ### 0.8 ``` === - none/any draft pep tags update - improved wininst2wheel script - doc changes and other improvements ``` ### 0.7 ``` === - sort .dist-info at end of wheel archive - Windows & Python 3 fixes from Paul Moore - pep8 - scripts to convert wininst & egg to wheel ``` ### 0.6 ``` === - require distribute >= 0.6.28 - stop using verlib ``` ### 0.5 ``` === - working pretty well ``` ### 0.4.2 ``` ===== - hyphenated name fix ``` ### 0.4 ``` === - improve test coverage - improve Windows compatibility - include tox.ini courtesy of Marc Abramowitz - draft hmac sha-256 signing function ``` ### 0.3 ``` === - prototype egg2wheel conversion script ``` ### 0.2 ``` === - Python 3 compatibility ``` ### 0.1 ``` === - Initial version ```Links
- PyPI: https://pypi.org/project/wheel - Changelog: https://pyup.io/changelogs/wheel/ - Repo: https://github.com/pypa/wheel