Name | vendy JSON |
Version |
0.0.3
JSON |
| download |
home_page | http://github.com/di/vendy |
Summary | Vendy is a tool for vendoring third-party packages into your project |
upload_time | 2023-11-28 01:56:38 |
maintainer | |
docs_url | None |
author | Dustin Ingram |
requires_python | >=2.7,!=3.0,!=3.1,!=3.2,!=3.3 |
license | |
keywords |
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
Vendy is a tool for vendoring third-party packages into your project.
## Disclaimer:
This is not an officially supported Google product.
## Example:
In a `pyproject.toml` file in the root of your package, define the target
directory (should be in the same directory as the `pyproject.toml` file), and
the packages to vendor:
```toml
[tool.vendy]
target = 'my_project'
packages = [
"sampleproject==1.2.0",
]
```
On the command line:
```
$ python -m vendy
[vendy] Using vendor dir: /private/tmp/my_project/my_project/_vendor
[vendy] Cleaning /private/tmp/my_project/my_project/_vendor
[vendy] Installing vendored libraries
Collecting sampleproject==1.3.0
Using cached https://files.pythonhosted.org/packages/a1/fd/3564a5176430eac106c27eff4de50b58fc916f5083782062cea3141acfaa/sampleproject-1.3.0-py2.py3-none-any.whl
Installing collected packages: sampleproject
Successfully installed sampleproject-1.3.0
[vendy] Detected vendored libraries: bin, my_data, sample
[vendy] Rewriting all imports related to vendored libs
[vendy] Downloading licenses
Collecting sampleproject==1.3.0
Using cached https://files.pythonhosted.org/packages/a6/aa/0090d487d204f5de30035c00f6c71b53ec7f613138d8653eebac50f47f45/sampleproject-1.3.0.tar.gz
Saved ./my_project/_vendor/__tmp__/sampleproject-1.3.0.tar.gz
Successfully downloaded sampleproject
[vendy] Extracting sampleproject-1.3.0/LICENSE.txt into my_project/_vendor/sampleproject.LICENSE.txt
[vendy] Revendoring complete
```
Result:
```
$ tree
.
├── my_project
│ ├── __init__.py
│ └── _vendor
│ ├── bin
│ │ └── sample
│ ├── my_data
│ │ └── data_file
│ ├── sample
│ │ ├── __init__.py
│ │ └── package_data.dat
│ └── sampleproject.LICENSE.txt
└── pyproject.toml
```
And you can import from the vendored library like:
```diff
-from sampleproject.foo import bar
+from myproject._vendor.sampleproject.foo import bar
```
Raw data
{
"_id": null,
"home_page": "http://github.com/di/vendy",
"name": "vendy",
"maintainer": "",
"docs_url": null,
"requires_python": ">=2.7,!=3.0,!=3.1,!=3.2,!=3.3",
"maintainer_email": "",
"keywords": "",
"author": "Dustin Ingram",
"author_email": "di@python.org",
"download_url": "https://files.pythonhosted.org/packages/c1/ec/56e9280d772964255d7cea51ac48050981bf287012b6ff5450ceae5b1c19/vendy-0.0.3.tar.gz",
"platform": null,
"description": "Vendy is a tool for vendoring third-party packages into your project.\n\n## Disclaimer:\nThis is not an officially supported Google product.\n\n## Example:\n\nIn a `pyproject.toml` file in the root of your package, define the target\ndirectory (should be in the same directory as the `pyproject.toml` file), and\nthe packages to vendor:\n\n```toml\n[tool.vendy]\ntarget = 'my_project'\npackages = [\n \"sampleproject==1.2.0\",\n]\n```\n\nOn the command line:\n\n```\n$ python -m vendy\n[vendy] Using vendor dir: /private/tmp/my_project/my_project/_vendor\n[vendy] Cleaning /private/tmp/my_project/my_project/_vendor\n[vendy] Installing vendored libraries\nCollecting sampleproject==1.3.0\n Using cached https://files.pythonhosted.org/packages/a1/fd/3564a5176430eac106c27eff4de50b58fc916f5083782062cea3141acfaa/sampleproject-1.3.0-py2.py3-none-any.whl\nInstalling collected packages: sampleproject\nSuccessfully installed sampleproject-1.3.0\n[vendy] Detected vendored libraries: bin, my_data, sample\n[vendy] Rewriting all imports related to vendored libs\n[vendy] Downloading licenses\nCollecting sampleproject==1.3.0\n Using cached https://files.pythonhosted.org/packages/a6/aa/0090d487d204f5de30035c00f6c71b53ec7f613138d8653eebac50f47f45/sampleproject-1.3.0.tar.gz\n Saved ./my_project/_vendor/__tmp__/sampleproject-1.3.0.tar.gz\nSuccessfully downloaded sampleproject\n[vendy] Extracting sampleproject-1.3.0/LICENSE.txt into my_project/_vendor/sampleproject.LICENSE.txt\n[vendy] Revendoring complete\n```\n\nResult:\n\n```\n$ tree\n.\n\u251c\u2500\u2500 my_project\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 __init__.py\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 _vendor\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 bin\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u2514\u2500\u2500 sample\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 my_data\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u2514\u2500\u2500 data_file\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 sample\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 __init__.py\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u2514\u2500\u2500 package_data.dat\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 sampleproject.LICENSE.txt\n\u2514\u2500\u2500 pyproject.toml\n```\n\nAnd you can import from the vendored library like:\n\n```diff\n-from sampleproject.foo import bar\n+from myproject._vendor.sampleproject.foo import bar\n```\n",
"bugtrack_url": null,
"license": "",
"summary": "Vendy is a tool for vendoring third-party packages into your project",
"version": "0.0.3",
"project_urls": {
"Homepage": "http://github.com/di/vendy"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "a87a95babb035f49a5cda516e93ed7a7218ecccac466aef92bf3310b5436389b",
"md5": "3499f622b549999b75508dc5445dc023",
"sha256": "d9af12563e7d1e2d829cec5c4b88f8c3d9bf6e1e108a24b79e5128bf7cb972ff"
},
"downloads": -1,
"filename": "vendy-0.0.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "3499f622b549999b75508dc5445dc023",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=2.7,!=3.0,!=3.1,!=3.2,!=3.3",
"size": 10855,
"upload_time": "2023-11-28T01:55:49",
"upload_time_iso_8601": "2023-11-28T01:55:49.395349Z",
"url": "https://files.pythonhosted.org/packages/a8/7a/95babb035f49a5cda516e93ed7a7218ecccac466aef92bf3310b5436389b/vendy-0.0.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "c1ec56e9280d772964255d7cea51ac48050981bf287012b6ff5450ceae5b1c19",
"md5": "25a14add577d8b6bd9f86519dfccb51c",
"sha256": "d80f212b59b956c0e31c958d1d27dee747e6b2c119a6622f4ea87e81d8385a03"
},
"downloads": -1,
"filename": "vendy-0.0.3.tar.gz",
"has_sig": false,
"md5_digest": "25a14add577d8b6bd9f86519dfccb51c",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=2.7,!=3.0,!=3.1,!=3.2,!=3.3",
"size": 10345,
"upload_time": "2023-11-28T01:56:38",
"upload_time_iso_8601": "2023-11-28T01:56:38.784309Z",
"url": "https://files.pythonhosted.org/packages/c1/ec/56e9280d772964255d7cea51ac48050981bf287012b6ff5450ceae5b1c19/vendy-0.0.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-11-28 01:56:38",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "di",
"github_project": "vendy",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "vendy"
}