# Poetry Core
[![Poetry](https://img.shields.io/endpoint?url=https://python-poetry.org/badge/v0.json)](https://python-poetry.org/)
[![PyPI version](https://img.shields.io/pypi/v/poetry-core)](https://pypi.org/project/poetry-core/)
[![Python Versions](https://img.shields.io/pypi/pyversions/poetry-core)](https://pypi.org/project/poetry-core/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
[![](https://github.com/python-poetry/poetry-core/workflows/Tests/badge.svg)](https://github.com/python-poetry/poetry-core/actions?query=workflow%3ATests)
A [PEP 517](https://www.python.org/dev/peps/pep-0517/) build backend implementation developed for
[Poetry](https://github.com/python-poetry/poetry). This project is intended to be a lightweight, fully compliant,
self-contained package allowing PEP 517-compatible build frontends to build Poetry-managed projects.
## Usage
In most cases, the usage of this package is transparent to the end-user as it is either used by Poetry itself
or a PEP 517 frontend (eg: `pip`).
In order to enable the use of `poetry-core` as your build backend, the following snippet must be present in your
project's `pyproject.toml` file.
```toml
[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"
```
Once this is present, a PEP 517 frontend like `pip` can build and install your project from source without the need
for Poetry or any of its dependencies (besides `poetry-core`).
```shell
# install to current environment
pip install /path/to/poetry/managed/project
# build a wheel package
pip wheel /path/to/poetry/managed/project
```
## Why is this required?
Prior to the release of version `1.1.0`, Poetry was a project management tool that included a PEP 517
build backend. This was inefficient and time consuming when a PEP 517 build was required. For example,
both `pip` and `tox` (with isolated builds) would install Poetry and all dependencies it required. Most of these
dependencies are not required when the objective is to simply build either a source or binary distribution of your
project.
In order to improve the above situation, `poetry-core` was created. Shared functionality pertaining to PEP 517 build
backends, including reading `pyproject.toml` and building wheel/sdist, were implemented in this package. This
makes PEP 517 builds extremely fast for Poetry-managed packages.
Raw data
{
"_id": null,
"home_page": "https://github.com/python-poetry/poetry-core",
"name": "poetry-core",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.8",
"maintainer_email": null,
"keywords": "packaging, dependency, poetry",
"author": "S\u00e9bastien Eustace",
"author_email": "sebastien@eustace.io",
"download_url": "https://files.pythonhosted.org/packages/c7/5c/3609519b7d890ced542fe327ea26a7c8ea55ef298c323c46cca2a011c1cb/poetry_core-1.9.1.tar.gz",
"platform": null,
"description": "# Poetry Core\n[![Poetry](https://img.shields.io/endpoint?url=https://python-poetry.org/badge/v0.json)](https://python-poetry.org/)\n[![PyPI version](https://img.shields.io/pypi/v/poetry-core)](https://pypi.org/project/poetry-core/)\n[![Python Versions](https://img.shields.io/pypi/pyversions/poetry-core)](https://pypi.org/project/poetry-core/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n[![](https://github.com/python-poetry/poetry-core/workflows/Tests/badge.svg)](https://github.com/python-poetry/poetry-core/actions?query=workflow%3ATests)\n\nA [PEP 517](https://www.python.org/dev/peps/pep-0517/) build backend implementation developed for\n[Poetry](https://github.com/python-poetry/poetry). This project is intended to be a lightweight, fully compliant,\nself-contained package allowing PEP 517-compatible build frontends to build Poetry-managed projects.\n\n## Usage\nIn most cases, the usage of this package is transparent to the end-user as it is either used by Poetry itself\nor a PEP 517 frontend (eg: `pip`).\n\nIn order to enable the use of `poetry-core` as your build backend, the following snippet must be present in your\nproject's `pyproject.toml` file.\n\n```toml\n[build-system]\nrequires = [\"poetry-core\"]\nbuild-backend = \"poetry.core.masonry.api\"\n```\n\nOnce this is present, a PEP 517 frontend like `pip` can build and install your project from source without the need\nfor Poetry or any of its dependencies (besides `poetry-core`).\n\n```shell\n# install to current environment\npip install /path/to/poetry/managed/project\n\n# build a wheel package\npip wheel /path/to/poetry/managed/project\n```\n\n## Why is this required?\nPrior to the release of version `1.1.0`, Poetry was a project management tool that included a PEP 517\nbuild backend. This was inefficient and time consuming when a PEP 517 build was required. For example,\nboth `pip` and `tox` (with isolated builds) would install Poetry and all dependencies it required. Most of these\ndependencies are not required when the objective is to simply build either a source or binary distribution of your\nproject.\n\nIn order to improve the above situation, `poetry-core` was created. Shared functionality pertaining to PEP 517 build\nbackends, including reading `pyproject.toml` and building wheel/sdist, were implemented in this package. This\nmakes PEP 517 builds extremely fast for Poetry-managed packages.\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Poetry PEP 517 Build Backend",
"version": "1.9.1",
"project_urls": {
"Bug Tracker": "https://github.com/python-poetry/poetry/issues",
"Homepage": "https://github.com/python-poetry/poetry-core",
"Repository": "https://github.com/python-poetry/poetry-core"
},
"split_keywords": [
"packaging",
" dependency",
" poetry"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "f7b4ae500aaba6e003ff80889e3dee449b154d2dd70d520dc0402f23535a5995",
"md5": "ba723e89bc30e540bd082b23344cabb0",
"sha256": "6f45dd3598e0de8d9b0367360253d4c5d4d0110c8f5c71120a14f0e0f116c1a0"
},
"downloads": -1,
"filename": "poetry_core-1.9.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "ba723e89bc30e540bd082b23344cabb0",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.8",
"size": 309472,
"upload_time": "2024-10-13T15:54:37",
"upload_time_iso_8601": "2024-10-13T15:54:37.459974Z",
"url": "https://files.pythonhosted.org/packages/f7/b4/ae500aaba6e003ff80889e3dee449b154d2dd70d520dc0402f23535a5995/poetry_core-1.9.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "c75c3609519b7d890ced542fe327ea26a7c8ea55ef298c323c46cca2a011c1cb",
"md5": "64e2c60933b5647f274151ebb1c968f0",
"sha256": "7a2d49214bf58b4f17f99d6891d947a9836c9899a67a5069f52d7b67217f61b8"
},
"downloads": -1,
"filename": "poetry_core-1.9.1.tar.gz",
"has_sig": false,
"md5_digest": "64e2c60933b5647f274151ebb1c968f0",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.8",
"size": 337193,
"upload_time": "2024-10-13T15:54:38",
"upload_time_iso_8601": "2024-10-13T15:54:38.942036Z",
"url": "https://files.pythonhosted.org/packages/c7/5c/3609519b7d890ced542fe327ea26a7c8ea55ef298c323c46cca2a011c1cb/poetry_core-1.9.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-10-13 15:54:38",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "python-poetry",
"github_project": "poetry-core",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "poetry-core"
}