{ "info": { "author": "Dustin Ingram", "author_email": "di@python.org", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7" ], "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$ 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\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/di/vendy", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "vendy", "package_url": "https://pypi.org/project/vendy/", "platform": "", "project_url": "https://pypi.org/project/vendy/", "project_urls": { "Homepage": "http://github.com/di/vendy" }, "release_url": "https://pypi.org/project/vendy/0.0.2/", "requires_dist": [ "click", "requests", "toml" ], "requires_python": ">=2.7,!=3.0,!=3.1,!=3.2,!=3.3", "summary": "Vendy is a tool for vendoring third-party packages into your project", "version": "0.0.2", "yanked": false, "yanked_reason": null }, "last_serial": 6016213, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "c607bdbe8b5146b5adb183837026fcdf", "sha256": "139a19b6019f56c71d8fd2df822729865b92cd8282f682001c63c2cb9a198a6b" }, "downloads": -1, "filename": "vendy-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "c607bdbe8b5146b5adb183837026fcdf", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=2.7,!=3.0,!=3.1,!=3.2,!=3.3", "size": 7478, "upload_time": "2019-06-06T19:51:59", "upload_time_iso_8601": "2019-06-06T19:51:59.582449Z", "url": "https://files.pythonhosted.org/packages/16/ed/93802448bf9210cba289a7f6d044231572706b88cddba61b611e6f457a1d/vendy-0.0.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "2d755916568b576b72e583a603084d04", "sha256": "8abfbd50779e8fad0e81679d4c236ed55d7a3b1bc3d1c4362fc146ea603aa746" }, "downloads": -1, "filename": "vendy-0.0.1.tar.gz", "has_sig": false, "md5_digest": "2d755916568b576b72e583a603084d04", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7,!=3.0,!=3.1,!=3.2,!=3.3", "size": 3087, "upload_time": "2019-06-06T19:52:01", "upload_time_iso_8601": "2019-06-06T19:52:01.832180Z", "url": "https://files.pythonhosted.org/packages/92/ae/33de30e4463a0d36fbbb73245cd9cf36ccfce9af55fb51e63ba9d3a75778/vendy-0.0.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "ca1da99fe1e72feead488753d817e97b", "sha256": "7ea88355405b72488c3c5065b6189932d74c4d6f5c269544ae98e0a07900a8de" }, "downloads": -1, "filename": "vendy-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "ca1da99fe1e72feead488753d817e97b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=2.7,!=3.0,!=3.1,!=3.2,!=3.3", "size": 10658, "upload_time": "2019-10-23T02:25:00", "upload_time_iso_8601": "2019-10-23T02:25:00.258779Z", "url": "https://files.pythonhosted.org/packages/c1/f0/9c6092ca2cf1998cff66a7166ff2147131cf979427fd4b78f09baf2da30a/vendy-0.0.2-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "9c346d72576476adda1a481817f0145d", "sha256": "fe39d45a2294d3461f87b93feb68b324253408dee562ff14f971c0f29c0d6c55" }, "downloads": -1, "filename": "vendy-0.0.2.tar.gz", "has_sig": false, "md5_digest": "9c346d72576476adda1a481817f0145d", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7,!=3.0,!=3.1,!=3.2,!=3.3", "size": 5663, "upload_time": "2019-10-23T02:25:01", "upload_time_iso_8601": "2019-10-23T02:25:01.770135Z", "url": "https://files.pythonhosted.org/packages/ae/b8/ad013a1705830401e4fbae6759c1fc5bdcaf7578040023a071969df442ac/vendy-0.0.2.tar.gz", "yanked": false, "yanked_reason": null } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "ca1da99fe1e72feead488753d817e97b", "sha256": "7ea88355405b72488c3c5065b6189932d74c4d6f5c269544ae98e0a07900a8de" }, "downloads": -1, "filename": "vendy-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "ca1da99fe1e72feead488753d817e97b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=2.7,!=3.0,!=3.1,!=3.2,!=3.3", "size": 10658, "upload_time": "2019-10-23T02:25:00", "upload_time_iso_8601": "2019-10-23T02:25:00.258779Z", "url": "https://files.pythonhosted.org/packages/c1/f0/9c6092ca2cf1998cff66a7166ff2147131cf979427fd4b78f09baf2da30a/vendy-0.0.2-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "9c346d72576476adda1a481817f0145d", "sha256": "fe39d45a2294d3461f87b93feb68b324253408dee562ff14f971c0f29c0d6c55" }, "downloads": -1, "filename": "vendy-0.0.2.tar.gz", "has_sig": false, "md5_digest": "9c346d72576476adda1a481817f0145d", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7,!=3.0,!=3.1,!=3.2,!=3.3", "size": 5663, "upload_time": "2019-10-23T02:25:01", "upload_time_iso_8601": "2019-10-23T02:25:01.770135Z", "url": "https://files.pythonhosted.org/packages/ae/b8/ad013a1705830401e4fbae6759c1fc5bdcaf7578040023a071969df442ac/vendy-0.0.2.tar.gz", "yanked": false, "yanked_reason": null } ], "vulnerabilities": [] }