Name | poetry-plugin-deps-juice JSON |
Version |
0.0.3
JSON |
| download |
home_page | None |
Summary | Poetry plugin for simple mix dependencies from toml option and wrap poetry 'build' command. |
upload_time | 2024-04-28 12:47:45 |
maintainer | None |
docs_url | None |
author | BlackCatDevel0per |
requires_python | <4.0,>=3.8 |
license | Apache 2.0 |
keywords |
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
## Poetry Dependency Juice Plugin
This plugin simplifies the process of managing dependencies in your Poetry projects by allowing you to mix dependencies from specified groups and wrap the `poetry build` command into `poetry jbuild`.
It provides an easy way to create custom mixes of dependencies and execute the build command with those mixes.
See difference:
#### Poetry build:
```bash
poetry build && pkginfo -f requires_dist dist/*.whl
```
#### output:
```plaintext
Building poetry-plugin-deps-juice (0.0.2)
- Building sdist
- Built poetry_plugin_deps_juice-0.0.2.tar.gz
- Building wheel
- Built poetry_plugin_deps_juice-0.0.2-py3-none-any.whl
requires_dist: ['poetry (>=1.8.0,<2.0.0)']
```
#### Juice build:
```bash
poetry jbuild && pkginfo -f requires_dist dist/*.whl
```
#### output:
```plaintext
Mixing juice..
base -> poetry
{'poetry-core': '^1.7.0', 'wheel': '^0.42.0'}
setup -> poetry
{'build': '^1.0.3', 'setuptools': '^69.0.3'}
Building poetry-plugin-deps-juice (0.0.2)
- Building sdist
- Built poetry_plugin_deps_juice-0.0.2.tar.gz
- Building wheel
- Built poetry_plugin_deps_juice-0.0.2-py3-none-any.whl
requires_dist: ['build (>=1.0.3,<2.0.0)', 'poetry (>=1.8.0,<2.0.0)', 'poetry-core (>=1.7.0,<2.0.0)', 'setuptools (>=69.0.3,<70.0.0)', 'wheel (>=0.42.0,<0.43.0)']
```
### Usage
1. **Installation**:
Install the plugin using Poetry:
```bash
pip install poetry-plugin-deps-juice
```
or
```bash
pip install --user poetry-plugin-deps-juice
```
or at least
```bash
poetry self add poetry-plugin-deps-juice
```
2. **Define Dependency Mix**:
Add your dependency mix to the `pyproject.toml` file under the `[tool.poetry-plugin-deps-juice]` section:
```toml
[tool.poetry-plugin-deps-juice]
"fancy" = [
"base",
"setup",
]
```
Here, `poetry` is the custom mix name, and `base` and `setup` are the groups of dependencies to be mixed.
To mix into default group `[tool.poetry.dependencies]` use:
```toml
[tool.poetry-plugin-deps-juice]
"poetry" = [
"base",
"setup",
]
```
3. **Execute Juice Command**:
Now you can use the defined mix with Poetry:
```bash
poetry jbuild
```
This command will mix dependencies from the specified groups and execute the `poetry build` command.
This is easier than manually merging all dependencies into one group or adding them manually to the `[tool.poetry.dependencies]` option. When installing the built package using pip, only dependencies listed in the `[tool.poetry.dependencies]` option are installed (in current time). This plugin simplifies the process by allowing you to create mixes on-the-fly for the final package.
4. **List Available Dependency Mixes**:
To get a list of available mixes along with their corresponding groups, run:
```bash
poetry juice-list
```
This will display a list of mixes and their associated groups:
```plaintext
"poetry" <-
"base"
"setup"
```
### Contributing
Feel free to contribute to this plugin by reporting issues, suggesting features, or submitting pull requests on [GitHub](https://github.com/BlackCatDevel0per/poetry-plugin-deps-juice).
### License
This plugin is licensed under the Apache 2. License. See the [LICENSE](https://www.apache.org/licenses/LICENSE-2.0) file for details.
Raw data
{
"_id": null,
"home_page": null,
"name": "poetry-plugin-deps-juice",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.8",
"maintainer_email": null,
"keywords": null,
"author": "BlackCatDevel0per",
"author_email": "bcdev@mail.ru",
"download_url": "https://files.pythonhosted.org/packages/b0/99/a1f46b7953c053476df8bd03f7fa72edbf3094af4eff4942e68aa0fda684/poetry_plugin_deps_juice-0.0.3.tar.gz",
"platform": null,
"description": "## Poetry Dependency Juice Plugin\n\nThis plugin simplifies the process of managing dependencies in your Poetry projects by allowing you to mix dependencies from specified groups and wrap the `poetry build` command into `poetry jbuild`.\nIt provides an easy way to create custom mixes of dependencies and execute the build command with those mixes.\n\nSee difference:\n\n#### Poetry build:\n```bash\npoetry build && pkginfo -f requires_dist dist/*.whl\n```\n\n#### output:\n```plaintext\nBuilding poetry-plugin-deps-juice (0.0.2)\n - Building sdist\n - Built poetry_plugin_deps_juice-0.0.2.tar.gz\n - Building wheel\n - Built poetry_plugin_deps_juice-0.0.2-py3-none-any.whl\nrequires_dist: ['poetry (>=1.8.0,<2.0.0)']\n```\n\n#### Juice build:\n```bash\npoetry jbuild && pkginfo -f requires_dist dist/*.whl\n```\n\n#### output:\n```plaintext\nMixing juice..\nbase -> poetry\n {'poetry-core': '^1.7.0', 'wheel': '^0.42.0'}\nsetup -> poetry\n {'build': '^1.0.3', 'setuptools': '^69.0.3'}\nBuilding poetry-plugin-deps-juice (0.0.2)\n - Building sdist\n - Built poetry_plugin_deps_juice-0.0.2.tar.gz\n - Building wheel\n - Built poetry_plugin_deps_juice-0.0.2-py3-none-any.whl\nrequires_dist: ['build (>=1.0.3,<2.0.0)', 'poetry (>=1.8.0,<2.0.0)', 'poetry-core (>=1.7.0,<2.0.0)', 'setuptools (>=69.0.3,<70.0.0)', 'wheel (>=0.42.0,<0.43.0)']\n```\n\n### Usage\n\n1. **Installation**:\n\n Install the plugin using Poetry:\n\n ```bash\n pip install poetry-plugin-deps-juice\n ```\n\n or\n\n ```bash\n pip install --user poetry-plugin-deps-juice\n ```\n\n or at least\n\n ```bash\n poetry self add poetry-plugin-deps-juice\n ```\n\n2. **Define Dependency Mix**:\n\n Add your dependency mix to the `pyproject.toml` file under the `[tool.poetry-plugin-deps-juice]` section:\n\n ```toml\n [tool.poetry-plugin-deps-juice]\n \"fancy\" = [\n \"base\",\n \"setup\",\n ]\n ```\n\n Here, `poetry` is the custom mix name, and `base` and `setup` are the groups of dependencies to be mixed.\n\n To mix into default group `[tool.poetry.dependencies]` use:\n\n ```toml\n [tool.poetry-plugin-deps-juice]\n \"poetry\" = [\n \"base\",\n \"setup\",\n ]\n ```\n\n3. **Execute Juice Command**:\n\n Now you can use the defined mix with Poetry:\n\n ```bash\n poetry jbuild\n ```\n\n This command will mix dependencies from the specified groups and execute the `poetry build` command.\n\n This is easier than manually merging all dependencies into one group or adding them manually to the `[tool.poetry.dependencies]` option. When installing the built package using pip, only dependencies listed in the `[tool.poetry.dependencies]` option are installed (in current time). This plugin simplifies the process by allowing you to create mixes on-the-fly for the final package.\n\n4. **List Available Dependency Mixes**:\n\n To get a list of available mixes along with their corresponding groups, run:\n\n ```bash\n poetry juice-list\n ```\n\n This will display a list of mixes and their associated groups:\n\n ```plaintext\n \"poetry\" <-\n \"base\"\n \"setup\"\n ```\n\n### Contributing\n\nFeel free to contribute to this plugin by reporting issues, suggesting features, or submitting pull requests on [GitHub](https://github.com/BlackCatDevel0per/poetry-plugin-deps-juice).\n\n### License\n\nThis plugin is licensed under the Apache 2. License. See the [LICENSE](https://www.apache.org/licenses/LICENSE-2.0) file for details.\n",
"bugtrack_url": null,
"license": "Apache 2.0",
"summary": "Poetry plugin for simple mix dependencies from toml option and wrap poetry 'build' command.",
"version": "0.0.3",
"project_urls": {
"Documentation": "https://github.com/BlackCatDevel0per/poetry-plugin-deps-juice",
"Homepage": "https://github.com/BlackCatDevel0per/poetry-plugin-deps-juice",
"Repository": "https://github.com/BlackCatDevel0per/poetry-plugin-deps-juice"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "ab6b18f44939d73ae062ede063fd89cd5665ad99b0e7ac7ac42f4d3df6867c05",
"md5": "1bd6f72af05c80018532f12e352d0222",
"sha256": "dae95aa9b0723710397da08a3867048544404779722b6fb0a408d0c6404aa3a9"
},
"downloads": -1,
"filename": "poetry_plugin_deps_juice-0.0.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "1bd6f72af05c80018532f12e352d0222",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.8",
"size": 9539,
"upload_time": "2024-04-28T12:47:43",
"upload_time_iso_8601": "2024-04-28T12:47:43.101198Z",
"url": "https://files.pythonhosted.org/packages/ab/6b/18f44939d73ae062ede063fd89cd5665ad99b0e7ac7ac42f4d3df6867c05/poetry_plugin_deps_juice-0.0.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "b099a1f46b7953c053476df8bd03f7fa72edbf3094af4eff4942e68aa0fda684",
"md5": "8c16bdf58266261d4700e55831fa590e",
"sha256": "ccf82221558df040a4a542a9b8488458122f884466e519095fb1d303b136b5bb"
},
"downloads": -1,
"filename": "poetry_plugin_deps_juice-0.0.3.tar.gz",
"has_sig": false,
"md5_digest": "8c16bdf58266261d4700e55831fa590e",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.8",
"size": 8742,
"upload_time": "2024-04-28T12:47:45",
"upload_time_iso_8601": "2024-04-28T12:47:45.066174Z",
"url": "https://files.pythonhosted.org/packages/b0/99/a1f46b7953c053476df8bd03f7fa72edbf3094af4eff4942e68aa0fda684/poetry_plugin_deps_juice-0.0.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-04-28 12:47:45",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "BlackCatDevel0per",
"github_project": "poetry-plugin-deps-juice",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "poetry-plugin-deps-juice"
}