<table style="border: none">
<tr style="border: none">
<td style="border: none">
<h1 style='border-bottom-style: none' align="center"> Wheelfile 🔪🧀</h1>
This library aims to make it dead simple to create a format-compliant [.whl
file (wheel)](https://pythonwheels.com/). It provides an API comparable to
[zipfile](https://docs.python.org/3/library/zipfile.html). Use this if you wish
to inspect or create wheels in your code.
For a quick look, see the example on the right, which packages the wheelfile
module itself into a wheel 🤸.
#### What's the difference between this and [wheel](https://pypi.org/project/wheel/)?
"Wheel" tries to provide a reference implementation for the standard. It is used
by setuptools and has its own CLI, but no stable API. The goal of Wheelfile is
to provide a simple API.
Wheelfile does not depend on Wheel.
## Acknowledgements
Thanks to [Paul Moore](https://github.com/pfmoore) for providing
[his gist](https://gist.github.com/pfmoore/20f3654ca33f8b14f0fcb6dfa1a6b469)
of basic metadata parsing logic, which helped to avoid many foolish mistakes
in the initial implementation.
</td>
<td style="border: none">
<br/>
<a href="https://pypi.org/project/wheelfile/#history">
<img src="https://img.shields.io/pypi/v/wheelfile?style=for-the-badge"/>
</a>
<a href="https://wheelfile.readthedocs.io/en/latest/">
<img src="https://readthedocs.org/projects/wheelfile/badge/?version=latest&style=for-the-badge"/>
</a>
<br/>
<br/>
```
pip install wheelfile
```
```py
from wheelfile import WheelFile, __version__
spec = {
'distname': 'wheelfile',
'version': __version__
}
requirements = [
'packaging >= 20.8',
]
with WheelFile(mode='w', **spec) as wf:
wf.metadata.requires_dists = requirements
wf.write('./wheelfile.py')
# 🧀
```
<br/>
<b> More examples:
<a href="https://wheelfile.readthedocs.io/en/latest/examples/buildscript.html"> buildscript </a> |
<a href="https://wheelfile.readthedocs.io/en/latest/examples/pep-517-builder.html"> PEP-517 builder </a>
</b>
<br/>
</td>
</tr>
Raw data
{
"_id": null,
"home_page": "https://github.com/MrMino/wheelfile",
"name": "wheelfile",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": "wheel, packaging, pip, build, distutils",
"author": "B\u0142a\u017cej Michalik",
"author_email": null,
"download_url": null,
"platform": null,
"description": "\n\n<table style=\"border: none\">\n<tr style=\"border: none\">\n<td style=\"border: none\">\n<h1 style='border-bottom-style: none' align=\"center\"> Wheelfile \ud83d\udd2a\ud83e\uddc0</h1>\n\nThis library aims to make it dead simple to create a format-compliant [.whl\nfile (wheel)](https://pythonwheels.com/). It provides an API comparable to\n[zipfile](https://docs.python.org/3/library/zipfile.html). Use this if you wish\nto inspect or create wheels in your code.\n\nFor a quick look, see the example on the right, which packages the wheelfile\nmodule itself into a wheel \ud83e\udd38.\n\n#### What's the difference between this and [wheel](https://pypi.org/project/wheel/)?\n\n\"Wheel\" tries to provide a reference implementation for the standard. It is used\nby setuptools and has its own CLI, but no stable API. The goal of Wheelfile is\nto provide a simple API.\n\nWheelfile does not depend on Wheel.\n\n## Acknowledgements\n\nThanks to [Paul Moore](https://github.com/pfmoore) for providing\n[his gist](https://gist.github.com/pfmoore/20f3654ca33f8b14f0fcb6dfa1a6b469)\nof basic metadata parsing logic, which helped to avoid many foolish mistakes\nin the initial implementation.\n\n</td>\n<td style=\"border: none\">\n\n<br/>\n\n<a href=\"https://pypi.org/project/wheelfile/#history\">\n<img src=\"https://img.shields.io/pypi/v/wheelfile?style=for-the-badge\"/>\n</a>\n<a href=\"https://wheelfile.readthedocs.io/en/latest/\">\n<img src=\"https://readthedocs.org/projects/wheelfile/badge/?version=latest&style=for-the-badge\"/>\n</a>\n\n<br/>\n<br/>\n\n```\npip install wheelfile\n```\n\n```py\nfrom wheelfile import WheelFile, __version__\n\nspec = {\n 'distname': 'wheelfile',\n 'version': __version__\n}\n\nrequirements = [\n 'packaging >= 20.8',\n]\n\nwith WheelFile(mode='w', **spec) as wf:\n wf.metadata.requires_dists = requirements\n wf.write('./wheelfile.py')\n\n# \ud83e\uddc0\n```\n<br/>\n<b> More examples:\n <a href=\"https://wheelfile.readthedocs.io/en/latest/examples/buildscript.html\"> buildscript </a> |\n <a href=\"https://wheelfile.readthedocs.io/en/latest/examples/pep-517-builder.html\"> PEP-517 builder </a>\n</b>\n<br/>\n\n</td>\n</tr>\n",
"bugtrack_url": null,
"license": null,
"summary": "API for inspecting and creating .whl files",
"version": "0.0.9",
"project_urls": {
"Homepage": "https://github.com/MrMino/wheelfile"
},
"split_keywords": [
"wheel",
" packaging",
" pip",
" build",
" distutils"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "81830e2c652cb35427594350cd0733ec448a6c202d3b26442b7ef39fb8600057",
"md5": "4b3a57cf1b850d336ce7fafdf079364f",
"sha256": "120b742a8b2e954e2b8d954507fe747124350fb06ae5b9d3850ad83fd7e6fa7c"
},
"downloads": -1,
"filename": "wheelfile-0.0.9-py3-none-any.whl",
"has_sig": false,
"md5_digest": "4b3a57cf1b850d336ce7fafdf079364f",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 24720,
"upload_time": "2024-07-18T23:17:51",
"upload_time_iso_8601": "2024-07-18T23:17:51.896326Z",
"url": "https://files.pythonhosted.org/packages/81/83/0e2c652cb35427594350cd0733ec448a6c202d3b26442b7ef39fb8600057/wheelfile-0.0.9-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-07-18 23:17:51",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "MrMino",
"github_project": "wheelfile",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [],
"lcname": "wheelfile"
}