{
"info": {
"author": "Juan-Pablo Scaletti",
"author_email": "juanpablo@jpscaletti.com",
"bugtrack_url": null,
"classifiers": [
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"License :: OSI Approved :: Apache Software License",
"Programming Language :: Python :: 3"
],
"description": "> **NOTE**: I'm thankful for any bug fix or report; They are more than welcome.
\n> However, I want to keep the scope of this project very small, so any other kind of pull-requests are discouraged.\n\n# \n\n[](https://coveralls.io/github/jpsca/hecto?branch=master) [](https://travis-ci.org/jpsca/hecto/)\n\nA small and simple **library** for rendering projects templates.\n\n* Works with **local** paths and **git URLs**.\n* Your project can include any file and **Hecto** can dynamically replace values in any kind of text files.\n* It generates a beautiful output and take care of not overwrite existing files, unless instructed to do so.\n\n\n## How to use\n\n```bash\npip install hecto\n```\n\n```python\nfrom hecto import copy\n\n# Create a project from a local path\ncopy('path/to/project/template', 'path/to/destination')\n\n# Or from a git URL.\n# You can also use \"gh:\" as a shortcut of \"https://github.com/\"\n# Or \"gl:\" as a shortcut of \"https://gitlab.com/\"\ncopy('https://github.com/jpsca/base36.git', 'path/to/destination')\ncopy('gh:jpsca/base36.git', 'path/to/destination')\ncopy('gl:jpsca/base36.git', 'path/to/destination')\n\n```\n\n## How it works\n\nThe content of the files inside the project template are copied to the destination without changes, **unless are suffixed with the extension '.tmpl'.** (you can customize that with the `render_as` setting). In that case, the templating engine is used to render them.\n\nA slightly customized Jinja2 templates are used. The main difference is\nthat variables are referenced with ``[[ name ]]`` instead of\n``{{ name }}`` and blocks are ``[% if name %]`` instead of\n``{% if name %}``. To read more about templating see the [Jinja2\ndocumentation](http://jinja.pocoo.org/docs>).\n\nUse the `data` argument to pass whatever extra context you want to be available\nin the templates. The arguments can be any valid Python value, even a\nfunction.\n\n\n## API\n\n#### hecto.copy()\n\n```python\nhecto.copy(\n src_path,\n dst_path,\n\n data=DEFAULT_DATA,\n *,\n exclude=DEFAULT_EXCLUDE,\n include=[],\n skip_if_exists=[],\n envops={},\n render_as=DEFAULT_RENDER_AS,\n\n pretend=False,\n force=False,\n skip=False,\n quiet=False,\n)\n```\n\nUses the template in `src_path` to generate a new project at `dst_path`.\n\n**Arguments**:\n\n- **src_path** (str):
\n Absolute path to the project skeleton. May be a version control system URL.\n\n- **dst_path** (str):
\n Absolute path to where to render the project template.\n\n- **data** (dict):
\n Optional. Data to be passed to the templates.\n\n- **exclude** (list of str):
\n Optional. A list of names or shell-style patterns matching files or folders\n that must not be copied.\n\n- **include** (list of str):
\n Optional. A list of names or shell-style patterns matching files or folders that must be included, even if its name is a match for the `exclude` list. Eg: `['.gitignore']`.\n The default is an empty list.\n\n- **skip_if_exists** (list of str):
\n Optional. Skip any of these file names or shell-style patterns, without asking, if another with the same name already exists in the destination folder.\n It only makes sense if you are copying to a folder that already exists.\n\n- **envops** (dict):
\n Optional. Extra options for the Jinja template environment.\n\n- **render_as** (function):
\n An optional hook that takes the absolute source path and the relative destination path of a file as arguments.\n\n It should return `None` if the file must be copied as-is or a Path object of the new relative destination (can be the same as the one received).\n\n By default all the files with the `.tmpl` postfix are rendered and saved without that postfix. Eg: `readme.md.tmpl` becomes `readme.md`.\n\n- **get_context** (function):
\n An optional hook called before rendering a file. Takes the relative\n destination path of the file as argument, and should return a dictionary\n with the context for its rendering.\n\n- **pretend** (bool):
\n Optional. Run but do not make any changes\n\n- **force** (bool):
\n Optional. Overwrite files that already exist, without asking\n\n- **skip** (bool):
\n Optional. Skip files that already exist, without asking\n\n- **quiet** (bool):
\n Optional. Suppress the status output\n\n\n## The hecto.yaml file\n\nIf a YAML file named `hecto.yaml` is found in the root of the project, it will be read and used for arguments defaults.\n\nNote that they become just _the defaults_, so any explicitly-passed argument will overwrite them.\n\n```yaml\n# Shell-style patterns files/folders that must not be copied.\nexclude:\n - \"*.bar\"\n - \".git\"\n - \".git/*\"\n\n# Shell-style patterns files/folders that *must be* copied, even if\n# they are in the exclude list\ninclude:\n - \"foo.bar\"\n\n# Shell-style patterns files to skip, without asking, if they already exists\n# in the destination folder\nskip_if_exists:\n - \".gitignore\"\n\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": "https://github.com/jpsca/hecto",
"keywords": "",
"license": "Apache License Version 2.0",
"maintainer": "",
"maintainer_email": "",
"name": "hecto",
"package_url": "https://pypi.org/project/hecto/",
"platform": "",
"project_url": "https://pypi.org/project/hecto/",
"project_urls": {
"Homepage": "https://github.com/jpsca/hecto"
},
"release_url": "https://pypi.org/project/hecto/1.200708/",
"requires_dist": [
"jinja2 (~=2.10)",
"colorama (~=0.4)",
"pyyaml (~=5.1)",
"pytest ; extra == 'dev'",
"pytest-cov ; extra == 'dev'",
"flake8 ; extra == 'dev'",
"ipdb ; extra == 'dev'",
"tox ; extra == 'dev'",
"pytest ; extra == 'testing'",
"pytest-cov ; extra == 'testing'"
],
"requires_python": ">=3.6,<4.0",
"summary": "(graph).",
"version": "1.200708",
"yanked": false,
"yanked_reason": null
},
"last_serial": 7650808,
"releases": {
"1.0": [
{
"comment_text": "",
"digests": {
"md5": "bc7257022fa2ef128bd22789e997d394",
"sha256": "dfe0990dd9d3da20488edbb2d4d5130d7240f640d968d22feca1a51c76e7dea6"
},
"downloads": -1,
"filename": "hecto-1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "bc7257022fa2ef128bd22789e997d394",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6,<4.0",
"size": 12635,
"upload_time": "2019-10-11T02:39:10",
"upload_time_iso_8601": "2019-10-11T02:39:10.575240Z",
"url": "https://files.pythonhosted.org/packages/ed/10/c25855c5b0c83441e552e479df7e08c765b7c5d66f3331318881822e6ab6/hecto-1.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "c872c4a4f239876ede0c2a3be3ed6ed2",
"sha256": "df3bbb07c67631b3d9265e3cac943fb04c5557adba8d20f6ee63e7f7efc25ae3"
},
"downloads": -1,
"filename": "hecto-1.0.tar.gz",
"has_sig": false,
"md5_digest": "c872c4a4f239876ede0c2a3be3ed6ed2",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6,<4.0",
"size": 7932,
"upload_time": "2019-10-11T02:39:13",
"upload_time_iso_8601": "2019-10-11T02:39:13.161505Z",
"url": "https://files.pythonhosted.org/packages/4f/36/46b9cff2055dab75dda8450281075fa4fba58ab0abf0c346e2ae846055a0/hecto-1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"1.191024": [
{
"comment_text": "",
"digests": {
"md5": "da42ac46e1c32a1adde3c0e11395974e",
"sha256": "aa0e78c9419c6586fbe9802c121434b123854b4968cdd9c7d3eebe56e9f7ea01"
},
"downloads": -1,
"filename": "hecto-1.191024-py3-none-any.whl",
"has_sig": false,
"md5_digest": "da42ac46e1c32a1adde3c0e11395974e",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6,<4.0",
"size": 15036,
"upload_time": "2019-10-25T03:17:37",
"upload_time_iso_8601": "2019-10-25T03:17:37.912814Z",
"url": "https://files.pythonhosted.org/packages/94/e9/e9d7db330f1e37e984a05041955e014d5c9cb7005870c4c6123522135fa1/hecto-1.191024-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "9976df16760b64c33d161ec347326f1f",
"sha256": "37b8d4a049dac9960b3d1454bdef1b21df77c33e26932e50d177e0244e1af308"
},
"downloads": -1,
"filename": "hecto-1.191024.tar.gz",
"has_sig": false,
"md5_digest": "9976df16760b64c33d161ec347326f1f",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6,<4.0",
"size": 10574,
"upload_time": "2019-10-25T03:17:39",
"upload_time_iso_8601": "2019-10-25T03:17:39.980893Z",
"url": "https://files.pythonhosted.org/packages/52/91/935f27898054899c2c7651e5496ba069669bcab2615e646f4e233ab35d20/hecto-1.191024.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"1.191025": [
{
"comment_text": "",
"digests": {
"md5": "778c2f594daeac72e32b133f38e5c9dc",
"sha256": "9cbc9b41fa278017a85ebe828cb3836689faea2d42a009f7eb53fb7b0c2ad294"
},
"downloads": -1,
"filename": "hecto-1.191025-py3-none-any.whl",
"has_sig": false,
"md5_digest": "778c2f594daeac72e32b133f38e5c9dc",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6,<4.0",
"size": 15036,
"upload_time": "2019-10-25T14:27:37",
"upload_time_iso_8601": "2019-10-25T14:27:37.906781Z",
"url": "https://files.pythonhosted.org/packages/9f/85/7241112c4448197d07095f91f890b76cd389e127a32c0f54a853cadc4e4d/hecto-1.191025-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "23ef59087d961cc648f4a20ab0f1b6e6",
"sha256": "2369145a5abb8833afb2089e60b7ab3437efa521a1bd48c1133b952a9b2b7600"
},
"downloads": -1,
"filename": "hecto-1.191025.tar.gz",
"has_sig": false,
"md5_digest": "23ef59087d961cc648f4a20ab0f1b6e6",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6,<4.0",
"size": 10577,
"upload_time": "2019-10-25T14:27:41",
"upload_time_iso_8601": "2019-10-25T14:27:41.214311Z",
"url": "https://files.pythonhosted.org/packages/ff/ee/30c1e2107997c047a677606ef73eb5c61349eb5090afe29fe558d61c2e7e/hecto-1.191025.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"1.191026": [
{
"comment_text": "",
"digests": {
"md5": "45e1e283057c3fbbfc8fbf1312793b26",
"sha256": "bada3b994f7e955375da15595f47cab4bd51eb576491a2fd3e3b75e517637e68"
},
"downloads": -1,
"filename": "hecto-1.191026-py3-none-any.whl",
"has_sig": false,
"md5_digest": "45e1e283057c3fbbfc8fbf1312793b26",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6,<4.0",
"size": 15192,
"upload_time": "2019-10-27T03:38:16",
"upload_time_iso_8601": "2019-10-27T03:38:16.145643Z",
"url": "https://files.pythonhosted.org/packages/5b/18/76fce4d604ab721069d14715391274cb3c9a978bf58df12b4efc3c3e40e9/hecto-1.191026-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "08c08c348a6371e516b2e7a44d789a82",
"sha256": "3858711e9f8f3ea78a9172c22067778395171e0348abf65f2c6d658ea190177d"
},
"downloads": -1,
"filename": "hecto-1.191026.tar.gz",
"has_sig": false,
"md5_digest": "08c08c348a6371e516b2e7a44d789a82",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6,<4.0",
"size": 10704,
"upload_time": "2019-10-27T03:38:19",
"upload_time_iso_8601": "2019-10-27T03:38:19.465410Z",
"url": "https://files.pythonhosted.org/packages/1a/28/74c938c6c95dbe2c3603177d6ea214cb4e984ac9e238a55945f5ce1230cc/hecto-1.191026.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"1.200103": [
{
"comment_text": "",
"digests": {
"md5": "322ac177d5c2991d3d3b49d1b711a5fb",
"sha256": "07772814702b21816b53af3faaa50d3867ff3ef11f8aecc01b058ea9a08941a2"
},
"downloads": -1,
"filename": "hecto-1.200103-py3-none-any.whl",
"has_sig": false,
"md5_digest": "322ac177d5c2991d3d3b49d1b711a5fb",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6,<4.0",
"size": 15270,
"upload_time": "2020-01-03T21:30:27",
"upload_time_iso_8601": "2020-01-03T21:30:27.349141Z",
"url": "https://files.pythonhosted.org/packages/32/b1/709c70b46196e27f972f5d66583391806c453df456ecc883c7d14c73abaf/hecto-1.200103-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "9966e9689cc8103b8248e9900356246a",
"sha256": "c8f56f15f01b2aab511d12758327d136b56f8fbbeeb8ba092ef58e4fb104c42c"
},
"downloads": -1,
"filename": "hecto-1.200103.tar.gz",
"has_sig": false,
"md5_digest": "9966e9689cc8103b8248e9900356246a",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6,<4.0",
"size": 14247,
"upload_time": "2020-01-03T21:30:29",
"upload_time_iso_8601": "2020-01-03T21:30:29.206463Z",
"url": "https://files.pythonhosted.org/packages/88/3c/26401ff349df51be5b8516676b34327b5dbfb9cdc3a8b5738a3fbbf1b3ed/hecto-1.200103.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"1.200120": [
{
"comment_text": "",
"digests": {
"md5": "03960f08b4fa795c39a8328cee5e939b",
"sha256": "fcdb90603047453bf49993b9e6064dcb5bd11706d89ee8adf2d025c34bbbe793"
},
"downloads": -1,
"filename": "hecto-1.200120-py3-none-any.whl",
"has_sig": false,
"md5_digest": "03960f08b4fa795c39a8328cee5e939b",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6,<4.0",
"size": 15363,
"upload_time": "2020-01-22T21:34:08",
"upload_time_iso_8601": "2020-01-22T21:34:08.464530Z",
"url": "https://files.pythonhosted.org/packages/7f/c1/dd2771bcc15b7c464ae4f5627fc7fde46f7e412f7462f03d14c0cb53c756/hecto-1.200120-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "b723777df7482a9b0ae935ad27b759e0",
"sha256": "c6d56ba8052574ebe611add4aa474d71ff52c02dc2f7e7f5c9df5c3fa0480091"
},
"downloads": -1,
"filename": "hecto-1.200120.tar.gz",
"has_sig": false,
"md5_digest": "b723777df7482a9b0ae935ad27b759e0",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6,<4.0",
"size": 10904,
"upload_time": "2020-01-22T21:34:09",
"upload_time_iso_8601": "2020-01-22T21:34:09.976306Z",
"url": "https://files.pythonhosted.org/packages/1e/97/b69e73f15d5922b58c1985aac40a2f416edbfc5cdd3a68e701e6b46f22b8/hecto-1.200120.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"1.200121": [
{
"comment_text": "",
"digests": {
"md5": "fa8f4c49605c386d0b7702588adc8f79",
"sha256": "6d024a0ada2529130007533593df10e9d92ba41e6052149e2db49de244dd3453"
},
"downloads": -1,
"filename": "hecto-1.200121-py3-none-any.whl",
"has_sig": false,
"md5_digest": "fa8f4c49605c386d0b7702588adc8f79",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6,<4.0",
"size": 15361,
"upload_time": "2020-01-23T00:44:06",
"upload_time_iso_8601": "2020-01-23T00:44:06.769542Z",
"url": "https://files.pythonhosted.org/packages/2e/34/d9e5f6fc75c48470b555d27038d816df272b990601b5c8a4a140b4060620/hecto-1.200121-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "3399927fcd84acbb1bb926d19ed83e8f",
"sha256": "8e3752bd02665ef2834e77b9cd93996377389c91745f25a73928b19771c41ab9"
},
"downloads": -1,
"filename": "hecto-1.200121.tar.gz",
"has_sig": false,
"md5_digest": "3399927fcd84acbb1bb926d19ed83e8f",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6,<4.0",
"size": 14374,
"upload_time": "2020-01-23T00:44:09",
"upload_time_iso_8601": "2020-01-23T00:44:09.907091Z",
"url": "https://files.pythonhosted.org/packages/8b/b9/91f8f789042d1260362001a51fc0da84f50157185df2ec218e87fd29007f/hecto-1.200121.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"1.200628": [
{
"comment_text": "",
"digests": {
"md5": "2eeaa422bcba7f14f769e201de761235",
"sha256": "d6656e9bbbbba84305dc2dcc4a2f49c70106d7f79d51fc58daacd89e18e7368b"
},
"downloads": -1,
"filename": "hecto-1.200628-py3-none-any.whl",
"has_sig": false,
"md5_digest": "2eeaa422bcba7f14f769e201de761235",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6,<4.0",
"size": 15365,
"upload_time": "2020-06-28T17:42:52",
"upload_time_iso_8601": "2020-06-28T17:42:52.765691Z",
"url": "https://files.pythonhosted.org/packages/e8/1e/127f801692bf7d4cfb510f7c523e0a157efe6bedd965761c905d8ba30692/hecto-1.200628-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "b51de4bbed88add9845a38683dd52278",
"sha256": "0e797ba2b08c040805a939b712644332581373155631a30141f62eaa3473dc96"
},
"downloads": -1,
"filename": "hecto-1.200628.tar.gz",
"has_sig": false,
"md5_digest": "b51de4bbed88add9845a38683dd52278",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6,<4.0",
"size": 15397,
"upload_time": "2020-06-28T17:42:54",
"upload_time_iso_8601": "2020-06-28T17:42:54.359096Z",
"url": "https://files.pythonhosted.org/packages/62/02/8674d911a6ac7079b5680750f0076b93c893b0ca69da6d3181c12221dc65/hecto-1.200628.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"1.200706": [
{
"comment_text": "",
"digests": {
"md5": "0ee15fa1175be4c528cb18f6cfda3868",
"sha256": "cd6747e327bb020021f8b910780c62e6c24e872b134b8745e13fef54224ba7a5"
},
"downloads": -1,
"filename": "hecto-1.200706-py3-none-any.whl",
"has_sig": false,
"md5_digest": "0ee15fa1175be4c528cb18f6cfda3868",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6,<4.0",
"size": 15405,
"upload_time": "2020-07-07T04:27:14",
"upload_time_iso_8601": "2020-07-07T04:27:14.617344Z",
"url": "https://files.pythonhosted.org/packages/c4/f6/dd61f4805dc0a6cfef263043a15d57c040c325aad1aaec57673b79e16ea8/hecto-1.200706-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "5634e2db659ae25a4df85e97c162233d",
"sha256": "6fe5fb01f744e6aebdd3f4b3eaf68c9efb85ccda9d2d49e673b8bffa22b81e3a"
},
"downloads": -1,
"filename": "hecto-1.200706.tar.gz",
"has_sig": false,
"md5_digest": "5634e2db659ae25a4df85e97c162233d",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6,<4.0",
"size": 15443,
"upload_time": "2020-07-07T04:27:16",
"upload_time_iso_8601": "2020-07-07T04:27:16.642643Z",
"url": "https://files.pythonhosted.org/packages/b6/d3/41a6a403571bbd9ac9f7be789e9e303981fe63f2f69ff265d2c6a9bad0d3/hecto-1.200706.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"1.200707": [
{
"comment_text": "",
"digests": {
"md5": "bb78c06b459d26c5ab89ba28134b77a9",
"sha256": "091bcc827f2a2893b9463af7f20f88ae57f9c2f6ab89b89801d1818584c713a0"
},
"downloads": -1,
"filename": "hecto-1.200707-py3-none-any.whl",
"has_sig": false,
"md5_digest": "bb78c06b459d26c5ab89ba28134b77a9",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6,<4.0",
"size": 15409,
"upload_time": "2020-07-07T21:31:12",
"upload_time_iso_8601": "2020-07-07T21:31:12.331565Z",
"url": "https://files.pythonhosted.org/packages/51/0a/00d772f08d1c2c3e9e0a9f9ae460c50088ac9899784f9fa9dd294b2c9c50/hecto-1.200707-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "37901d160acaa33ba7d5723ef434e3f6",
"sha256": "85beea2b87724a9c845c2351f98ba8c705542981d18aeb6bc4b02ce25e616635"
},
"downloads": -1,
"filename": "hecto-1.200707.tar.gz",
"has_sig": false,
"md5_digest": "37901d160acaa33ba7d5723ef434e3f6",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6,<4.0",
"size": 15420,
"upload_time": "2020-07-07T21:31:13",
"upload_time_iso_8601": "2020-07-07T21:31:13.585346Z",
"url": "https://files.pythonhosted.org/packages/cd/a6/dc2a68b963c2f19f8573d52a9bd0968734b044c94c202b6b01d787e2dca8/hecto-1.200707.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"1.200708": [
{
"comment_text": "",
"digests": {
"md5": "1830d5274723c5e0bf16ff12224a13d1",
"sha256": "326e98c716bbbe2c72b0e28603a0a390bc3c69b8d25d8f54c3a414e8e641e7bf"
},
"downloads": -1,
"filename": "hecto-1.200708-py3-none-any.whl",
"has_sig": false,
"md5_digest": "1830d5274723c5e0bf16ff12224a13d1",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6,<4.0",
"size": 15412,
"upload_time": "2020-07-07T21:44:08",
"upload_time_iso_8601": "2020-07-07T21:44:08.706782Z",
"url": "https://files.pythonhosted.org/packages/62/a7/35ceb86c0762c55dc6fba1a16c27c79663f9f50c2d9bc1bdb904f0f744f1/hecto-1.200708-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "d6906bc372ac286cb9b21e89debfacee",
"sha256": "a6be4ecfacf1b092f5c399bc057c6a3604b77f3f2f91f862b8257128a5e2f87b"
},
"downloads": -1,
"filename": "hecto-1.200708.tar.gz",
"has_sig": false,
"md5_digest": "d6906bc372ac286cb9b21e89debfacee",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6,<4.0",
"size": 15416,
"upload_time": "2020-07-07T21:44:10",
"upload_time_iso_8601": "2020-07-07T21:44:10.833409Z",
"url": "https://files.pythonhosted.org/packages/14/6c/501bfafb1a0fc809882aef0cce9095dff63cfa45e8e4170125fb2c3c6de0/hecto-1.200708.tar.gz",
"yanked": false,
"yanked_reason": null
}
]
},
"urls": [
{
"comment_text": "",
"digests": {
"md5": "1830d5274723c5e0bf16ff12224a13d1",
"sha256": "326e98c716bbbe2c72b0e28603a0a390bc3c69b8d25d8f54c3a414e8e641e7bf"
},
"downloads": -1,
"filename": "hecto-1.200708-py3-none-any.whl",
"has_sig": false,
"md5_digest": "1830d5274723c5e0bf16ff12224a13d1",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6,<4.0",
"size": 15412,
"upload_time": "2020-07-07T21:44:08",
"upload_time_iso_8601": "2020-07-07T21:44:08.706782Z",
"url": "https://files.pythonhosted.org/packages/62/a7/35ceb86c0762c55dc6fba1a16c27c79663f9f50c2d9bc1bdb904f0f744f1/hecto-1.200708-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "d6906bc372ac286cb9b21e89debfacee",
"sha256": "a6be4ecfacf1b092f5c399bc057c6a3604b77f3f2f91f862b8257128a5e2f87b"
},
"downloads": -1,
"filename": "hecto-1.200708.tar.gz",
"has_sig": false,
"md5_digest": "d6906bc372ac286cb9b21e89debfacee",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6,<4.0",
"size": 15416,
"upload_time": "2020-07-07T21:44:10",
"upload_time_iso_8601": "2020-07-07T21:44:10.833409Z",
"url": "https://files.pythonhosted.org/packages/14/6c/501bfafb1a0fc809882aef0cce9095dff63cfa45e8e4170125fb2c3c6de0/hecto-1.200708.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"vulnerabilities": []
}