wheelfile


Namewheelfile JSON
Version 0.0.9 PyPI version JSON
download
home_pagehttps://github.com/MrMino/wheelfile
SummaryAPI for inspecting and creating .whl files
upload_time2024-07-18 23:17:51
maintainerNone
docs_urlNone
authorBłażej Michalik
requires_python>=3.9
licenseNone
keywords wheel packaging pip build distutils
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            

<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"
}
        
Elapsed time: 0.29233s