{ "info": { "author": "Tencent Cloud", "author_email": "", "bugtrack_url": null, "classifiers": [], "description": "# tcf cli\n\n------\n\n## \u4ec0\u4e48\u662f tcf\n\ntcf \u5168\u79f0\u4e3a tencent cloud function\uff0c\u662f\u817e\u8baf\u4e91\u65e0\u670d\u52a1\u5668\u4e91\u51fd\u6570 SCF\uff08Serverless Cloud Function\uff09\u4ea7\u54c1\u7684\u547d\u4ee4\u884c\u5de5\u5177\u3002\u901a\u8fc7 tcf \u547d\u4ee4\u884c\u5de5\u5177\uff0c\u60a8\u53ef\u4ee5\u65b9\u4fbf\u7684\u5b9e\u73b0\u51fd\u6570\u6253\u5305\u3001\u90e8\u7f72\u3001\u672c\u5730\u8c03\u8bd5\uff0c\u4e5f\u53ef\u4ee5\u65b9\u4fbf\u7684\u751f\u6210\u4e91\u51fd\u6570\u7684\u9879\u76ee\u5e76\u57fa\u4e8e demo \u9879\u76ee\u8fdb\u4e00\u6b65\u7684\u5f00\u53d1\u3002\n\ntcf \u901a\u8fc7\u4e00\u4e2a\u51fd\u6570\u6a21\u677f\u914d\u7f6e\u6587\u4ef6\uff0c\u5b8c\u6210\u51fd\u6570\u53ca\u76f8\u5173\u5468\u8fb9\u8d44\u6e90\u7684\u63cf\u8ff0\uff0c\u5e76\u57fa\u4e8e\u914d\u7f6e\u6587\u4ef6\u5b9e\u73b0\u672c\u5730\u4ee3\u7801\u53ca\u914d\u7f6e\u90e8\u7f72\u5230\u4e91\u7aef\u7684\u8fc7\u7a0b\u3002\n\n\u76ee\u524d tcf \u4ee5\u5f00\u6e90\u5f62\u5f0f\u53d1\u5e03\uff0c\u60a8\u53ef\u4ee5\u5728\u672c\u9879\u76ee\u4e2d\u67e5\u770b\u547d\u4ee4\u884c\u6e90\u4ee3\u7801\u53ca\u66f4\u591a\u5e2e\u52a9\u6587\u6863\uff0c\u5e76\u53ef\u4ee5\u901a\u8fc7\u9879\u76ee issue \u53cd\u9988\u95ee\u9898\u3002\n\n## \u529f\u80fd\u7279\u6027\n\n\u901a\u8fc7 tcf \u547d\u4ee4\u884c\u5de5\u5177\uff0c\u4f60\u53ef\u4ee5\uff1a\n\n* \u5feb\u901f\u521d\u59cb\u5316\u4e91\u51fd\u6570\u9879\u76ee\n* \u5728\u672c\u5730\u5f00\u53d1\u53ca\u6d4b\u8bd5\u4f60\u7684\u4e91\u51fd\u6570\u4ee3\u7801\n* \u4f7f\u7528\u6a21\u62df\u7684 COS\u3001CMQ\u3001Ckafka\u3001API \u7f51\u5173\u7b49\u89e6\u53d1\u5668\u4e8b\u4ef6\u6765\u89e6\u53d1\u51fd\u6570\u8fd0\u884c\n* \u9a8c\u8bc1 TCSAM \u6a21\u677f\u914d\u7f6e\u6587\u4ef6\n* \u6253\u5305\u3001\u4e0a\u4f20\u51fd\u6570\u4ee3\u7801\uff0c\u521b\u5efa\u51fd\u6570\u53ca\u66f4\u65b0\u51fd\u6570\u914d\u7f6e\n\n## \u8fd0\u884c\u73af\u5883\n\ntcf \u53ef\u4ee5\u5728 Windows\u3001Linux\u3001Mac \u4e0a\u8fd0\u884c\u3002tcf \u57fa\u4e8e Python \u5f00\u53d1\u5b8c\u6210\uff0c\u56e0\u6b64\u5728\u5b89\u88c5\u53ca\u8fd0\u884c\u524d\u9700\u8981\u7cfb\u7edf\u4e2d\u5b89\u88c5\u6709 Python \u73af\u5883\u3002\u66f4\u8be6\u7ec6\u4fe1\u606f\u53ef\u89c1[\u5b89\u88c5\u53ca\u914d\u7f6e](https://github.com/tencentyun/tcfcli/blob/master/docs/\u5b89\u88c5\u4e0e\u914d\u7f6e.md)\u3002\n\n## \u5feb\u901f\u5165\u95e8\n\n\n### \u5b89\u88c5 tcf\n\n#### \u524d\u7f6e\u4f9d\u8d56\n\n\u5728\u5b89\u88c5 tcf \u524d\uff0c\u8bf7\u786e\u4fdd\u7cfb\u7edf\u4e2d\u5df2\u7ecf\u5b89\u88c5\u597d\u4e86\u5982\u4e0b\u8f6f\u4ef6\uff1a\n\n* Python 2.7+ \u6216 Python 3.6+\n* pip\n* git\n* \u5bf9\u5e94\u7684\u5f00\u53d1\u8bed\u8a00\uff08\u5982Node.js 8.9\u7b49\uff09\n\n\n#### \u901a\u8fc7 pip \u5b89\u88c5 tcf\n\n\u901a\u8fc7\u4f7f\u7528\u5982\u4e0b\u547d\u4ee4\u5b8c\u6210 tcf \u5b89\u88c5\uff1a\n\n```bash\n$ pip install tcf\n```\n\n\u901a\u8fc7\u6267\u884c\u5982\u4e0b\u547d\u4ee4\u53ca\u8f93\u51fa\u786e\u4fdd tcf \u5b89\u88c5\u5df2\u6210\u529f\uff1a\n\n```bash\n$ tcf --version\nTCF CLI, version 0.1.0\n```\n\n### \u914d\u7f6e tcf\n\n\u4ece\u817e\u8baf\u4e91\u63a7\u5236\u53f0\u83b7\u53d6\u5230\u8d26\u53f7\u7684 APPID\uff0cSecretId\u53ca SecretKey \u4fe1\u606f\uff0c\u5e76\u914d\u7f6e\u5230 tcf \u4e2d\uff0c\u4f5c\u4e3a tcf \u8c03\u7528\u4e91 API \u65f6\u7684\u8ba4\u8bc1\u4fe1\u606f\u3002\n\n\u4f8b\u5982\u83b7\u53d6\u5230\u7684\u8d26\u53f7 APPID \u4e3a 1253970223\uff0cSecretId \u548c SecretKey \u5206\u522b\u4e3a AKIxxxxxxxxxx \u53ca uxxlxxxxxxxx\uff0c\u671f\u671b\u5728\u5e7f\u5dde\u533a\u4f7f\u7528\u4e91\u51fd\u6570\u3002\u5219\u901a\u8fc7\u5982\u4e0b\u547d\u4ee4\u5b8c\u6210 tcf \u7684\u914d\u7f6e\n\uff1a\n\n```bash\n$ tcf configure set --region ap-guangzhou --appid 1253970223 --secret-id AKIxxxxxxxxxx --secret-key uxxlxxxxxxxx\n```\n\n### \u521d\u59cb\u5316\u6a21\u677f\u9879\u76ee\n\n\u9009\u62e9\u8fdb\u5165\u5230\u5408\u9002\u7684\u4ee3\u7801\u76ee\u5f55\uff0c\u4f8b\u5982 `cd ~`\u3002\n\n\u901a\u8fc7\u6267\u884c\u5982\u4e0b\u547d\u4ee4\uff0c\u521b\u5efa\u8fd0\u884c\u73af\u5883\u4e3a Node.js 8.9\uff0c\u540d\u79f0\u4e3a testscf \u7684\u9879\u76ee\u3002\n\n```bash\n$ tcf init --runtime nodejs8.9 --name testscf\n```\n\n\u6b64\u547d\u4ee4\u4f1a\u5728\u5f53\u524d\u76ee\u5f55\u4e0b\u521b\u5efa testscf \u9879\u76ee\u76ee\u5f55\u3002\n\n\n### \u672c\u5730\u89e6\u53d1\u51fd\u6570\n\n\u6267\u884c `$ cd testscf` \u8fdb\u5165\u9879\u76ee\u76ee\u5f55\u3002\n\n\u901a\u8fc7\u6267\u884c\u5982\u4e0b\u547d\u4ee4\uff0c\u672c\u5730\u6a21\u62df\u89e6\u53d1\u51fd\u6570\u3002\n\n```bash\n$ tcf native invoke -t template.yaml --no-event\n```\n\n\u6ce8\uff1a\u5f53\u524d\u4ec5Node.js runtime\u652f\u6301\u8be5\u80fd\u529b\uff0c\u5e76\u4e14\u9700\u8981\u5347\u7ea7TCF CLI >= 0.2.0\u7248\u672c\u3002\u4e3a\u4fdd\u8bc1\u90e8\u7f72\u4e91\u7aef\u548c\u672c\u5730\u8fd0\u884c\u7684\u7ed3\u679c\u4e00\u81f4\uff0c\u5efa\u8bae\u672c\u5730\u5b89\u88c5\u7684runtime\u7248\u672c\u548c\u4e91\u7aef\u7248\u672c\u4fdd\u6301\u4e00\u81f4\u3002\u4f8b\u5982\uff0c\u5982\u5728\u4e91\u7aef\u4f7f\u7528Node.js 8.9\uff0c\u5219\u672c\u673a\u5efa\u8bae\u4e5f\u5b89\u88c5Node.js 8.x\u7248\u672c\u3002\n\n### \u6253\u5305\u9879\u76ee\n\n\u6267\u884c `$ cd testscf` \u8fdb\u5165\u9879\u76ee\u76ee\u5f55\u3002\n\n\u53ef\u4ee5\u901a\u8fc7 `ls` \u547d\u4ee4\u770b\u5230\uff0c\u5f53\u524d\u9879\u76ee\u76ee\u5f55\u4e0b\u5305\u62ec\u4e86 README \u8bf4\u660e\u6587\u6863\uff0chello_world \u4ee3\u7801\u76ee\u5f55\uff0ctemplate.yaml \u914d\u7f6e\u6587\u4ef6\u3002\n\n\u901a\u8fc7\u6267\u884c\u5982\u4e0b\u6253\u5305\u547d\u4ee4\uff1a\n```\n$ tcf package --template-file template.yaml\n```\n\ntcf \u4f1a\u4f9d\u636e template.yaml \u6587\u4ef6\u5185\u7684\u63cf\u8ff0\uff0c\u5c06 hello_world \u4ee3\u7801\u76ee\u5f55\u5185\u7684\u4ee3\u7801\u751f\u6210\u90e8\u7f72\u7a0b\u5e8f\u5305\uff0c\u5e76\u751f\u6210 deploy \u914d\u7f6e\u6587\u4ef6\u3002\n\n\u6b64\u65f6\u518d\u6b21\u901a\u8fc7 `ls` \u547d\u4ee4\uff0c\u53ef\u4ee5\u770b\u5230\u9879\u76ee\u76ee\u5f55\u5185\u591a\u4e86 deploy.yaml \u90e8\u7f72\u7528\u914d\u7f6e\u6587\u4ef6\uff0c\u4ee5\u53ca\u7c7b\u4f3c `32b29935-1ec1-11e9-be82-9801a7af1801.zip` \u7684\u90e8\u7f72\u5305\u3002\n\n\n### \u90e8\u7f72\u4e91\u51fd\u6570\n\n\u901a\u8fc7\u6267\u884c\u5982\u4e0b\u547d\u4ee4\uff0c\u5b8c\u6210\u672c\u5730\u4ee3\u7801\u5305\u53ca\u51fd\u6570\u914d\u7f6e\u90e8\u7f72\u5230\u4e91\u7aef\uff1a\n\n```bash\n$ tcf deploy --template-file deploy.yaml \n```\n\n\u8fd0\u884c\u6210\u529f\u5b8c\u6210\u90e8\u7f72\u540e\uff0c\u53ef\u4ee5\u901a\u8fc7\u8fdb\u5165\u817e\u8baf\u4e91\u4e91\u51fd\u6570\u7684\u63a7\u5236\u53f0\uff0c\u68c0\u67e5\u51fd\u6570\u662f\u5426\u5df2\u7ecf\u6210\u529f\u90e8\u7f72\u3002\n\n\n\n## \u8be6\u7ec6\u4f7f\u7528\u6307\u5bfc\n\n* [\u5feb\u901f\u5f00\u59cb](https://github.com/tencentyun/tcfcli/blob/master/docs/\u5feb\u901f\u5f00\u59cb.md)\n* [\u5b89\u88c5\u4e0e\u914d\u7f6e](https://github.com/tencentyun/tcfcli/blob/master/docs/\u5b89\u88c5\u4e0e\u914d\u7f6e.md)\n* [\u521d\u59cb\u5316\u793a\u4f8b\u9879\u76ee](https://github.com/tencentyun/tcfcli/blob/master/docs/\u521d\u59cb\u5316\u793a\u4f8b\u9879\u76ee.md)\n* [\u6253\u5305\u90e8\u7f72](https://github.com/tencentyun/tcfcli/blob/master/docs/\u6253\u5305\u90e8\u7f72.md)\n* [\u672c\u5730\u8c03\u8bd5(native invoke)](https://github.com/tencentyun/tcfcli/blob/master/docs/%E6%9C%AC%E5%9C%B0%E8%B0%83%E8%AF%95(native%20invoke).md)\n* [\u672c\u5730\u8c03\u8bd5(local invoke)](https://github.com/tencentyun/tcfcli/blob/master/docs/%E6%9C%AC%E5%9C%B0%E8%B0%83%E8%AF%95(local%20invoke).md)\n* [\u6d4b\u8bd5\u6a21\u677f](https://github.com/tencentyun/tcfcli/blob/master/docs/\u6d4b\u8bd5\u6a21\u677f.md)\n* [\u6a21\u677f\u6587\u4ef6](https://github.com/tencentyun/tcfcli/blob/master/docs/\u6a21\u677f\u6587\u4ef6.md)\n* [TCSAM\u8bf4\u660e](https://github.com/tencentyun/tcfcli/blob/master/docs/specs/tencentcloud%20sam%20version%202018-11-11-zh-cn.md)\n* [\u5e38\u89c1\u95ee\u9898 FAQ](https://github.com/tencentyun/tcfcli/blob/master/docs/\u5e38\u89c1\u95ee\u9898%20FAQ.md)", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/tencentyun/tcfcli.git", "keywords": "", "license": "Apache License 2.0", "maintainer": "", "maintainer_email": "qcloud_middleware@qq.com", "name": "tcf", "package_url": "https://pypi.org/project/tcf/", "platform": "", "project_url": "https://pypi.org/project/tcf/", "project_urls": { "Homepage": "https://github.com/tencentyun/tcfcli.git" }, "release_url": "https://pypi.org/project/tcf/0.3.0/", "requires_dist": null, "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*", "summary": "This is a local tools for SCF.", "version": "0.3.0" }, "last_serial": 5365803, "releases": { "0.1.10": [ { "comment_text": "", "digests": { "md5": "94889b32dfdb8012374c3a80e2b069da", "sha256": "3f5bd6f1b9148e7c16121ca1c113351ebe277788ecd64a3ced2eba7d98c54ade" }, "downloads": -1, "filename": "tcf-0.1.10.tar.gz", "has_sig": false, "md5_digest": "94889b32dfdb8012374c3a80e2b069da", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*", "size": 39832, "upload_time": "2019-05-15T09:45:47", "url": "https://files.pythonhosted.org/packages/97/50/79398d746cb2d0cb2b0ad643c76fcbb95e026196eac5fd1c1a7a5322c6bf/tcf-0.1.10.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "23f756da3768b18b74f2580dc7201d64", "sha256": "530f471336fc7f383bcf1ceb6ccbc5431ad619307fc606e116c3afa6ab37f0b1" }, "downloads": -1, "filename": "tcf-0.1.5.tar.gz", "has_sig": false, "md5_digest": "23f756da3768b18b74f2580dc7201d64", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*", "size": 28507, "upload_time": "2019-04-10T11:14:49", "url": "https://files.pythonhosted.org/packages/72/47/33477ae5fdddc6c28ec175ab44dd904e3bf2434cfc6be21b0c249312d8e8/tcf-0.1.5.tar.gz" } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "bac839b475db3446b9ea3a6434727176", "sha256": "fb5708309b794f2babc9c185c124dc670dd0b6bce868de4dfb81fa6267f44c71" }, "downloads": -1, "filename": "tcf-0.1.6-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "bac839b475db3446b9ea3a6434727176", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*", "size": 52691, "upload_time": "2019-04-22T13:18:45", "url": "https://files.pythonhosted.org/packages/c4/e1/4012c4a05b209da1e460df09a45cac2edd303c602e67048a8d672339f8be/tcf-0.1.6-py2.py3-none-any.whl" } ], "0.1.7": [ { "comment_text": "", "digests": { "md5": "272a8954930bc6c3fda6d71e9698728c", "sha256": "33165b7e2b4107434179f1f9353dd44d0f9486e53c9a265caaf667105086f25b" }, "downloads": -1, "filename": "tcf-0.1.7.tar.gz", "has_sig": false, "md5_digest": "272a8954930bc6c3fda6d71e9698728c", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*", "size": 29187, "upload_time": "2019-04-25T10:28:43", "url": "https://files.pythonhosted.org/packages/28/46/d469d32e076a3bc0de71198e7faca8049096477d13f090f9027e8851078b/tcf-0.1.7.tar.gz" } ], "0.1.8": [ { "comment_text": "", "digests": { "md5": "595cec12173cecbba4b47c6832052896", "sha256": "db7fd5324087b6634b3414a6904dca4fda5ee3885803e0e14733e3fa525f0cd8" }, "downloads": -1, "filename": "tcf-0.1.8.tar.gz", "has_sig": false, "md5_digest": "595cec12173cecbba4b47c6832052896", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*", "size": 29195, "upload_time": "2019-04-26T11:11:59", "url": "https://files.pythonhosted.org/packages/47/26/7b8d32317fd3efe455481eb4a2e11dabf4a16173235ca664e796da8fd1bb/tcf-0.1.8.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "a83848c813a8bf6ca94d64819c8bc0dc", "sha256": "fa7298abdf02ec4f6c186ad3ae4fa73b7696aae3cd864d4e8940d5ab565312ad" }, "downloads": -1, "filename": "tcf-0.2.0.tar.gz", "has_sig": false, "md5_digest": "a83848c813a8bf6ca94d64819c8bc0dc", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*", "size": 39848, "upload_time": "2019-05-15T10:07:09", "url": "https://files.pythonhosted.org/packages/67/08/33b88fc7a2e0065bd41285b41744a05b9e8d958332770c2e700edf7a1fba/tcf-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "05473c4b4cf5a95f54eea92e70297e8e", "sha256": "b80c6f28151c11a9787a0c15afa1d2c0a0aadd8db4b42639c9ac76d58f5700a4" }, "downloads": -1, "filename": "tcf-0.2.1.tar.gz", "has_sig": false, "md5_digest": "05473c4b4cf5a95f54eea92e70297e8e", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*", "size": 40288, "upload_time": "2019-05-20T11:26:40", "url": "https://files.pythonhosted.org/packages/eb/1b/efbe5b51539571f1d9b2e326c05bffc85ea8c06ecd70956dcc2de82bcd9b/tcf-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "c3a0a1e169a978a34d5c52d12e4bd0ec", "sha256": "caa1a0bb4325d0046c25ff5d1dfb355964e818611d43b80bacac1cf7cfa7a077" }, "downloads": -1, "filename": "tcf-0.2.2.tar.gz", "has_sig": false, "md5_digest": "c3a0a1e169a978a34d5c52d12e4bd0ec", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*", "size": 55063, "upload_time": "2019-05-23T10:10:06", "url": "https://files.pythonhosted.org/packages/c5/e2/d0517162c527b0a2fe206e6effd61334ec4e55cfd520554fb749f74abe18/tcf-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "835526c92473e30bb9706c0bcd53e3d5", "sha256": "fdd7fa166533ede2408185b81d852afc3f247cf50aec420e4965b4d06a031fc3" }, "downloads": -1, "filename": "tcf-0.2.3.tar.gz", "has_sig": false, "md5_digest": "835526c92473e30bb9706c0bcd53e3d5", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*", "size": 68217, "upload_time": "2019-05-30T02:46:53", "url": "https://files.pythonhosted.org/packages/5c/e0/e4aa57debc27fb5b27986317c798617ecd2fd8026487dd40ecfaa0fc414d/tcf-0.2.3.tar.gz" } ], "0.2.4": [ { "comment_text": "", "digests": { "md5": "040defbf8811bb59bda7dcd2dc1121ac", "sha256": "616e03204a0a658638c76dd52eed11cce87cb2291f4b384597c1959505bee32f" }, "downloads": -1, "filename": "tcf-0.2.4.tar.gz", "has_sig": false, "md5_digest": "040defbf8811bb59bda7dcd2dc1121ac", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*", "size": 68244, "upload_time": "2019-05-30T08:08:39", "url": "https://files.pythonhosted.org/packages/28/8e/0bf61aff920beb0b4338c2778c6e092b40269be14662cd550e548c0ebcc8/tcf-0.2.4.tar.gz" } ], "0.2.5": [ { "comment_text": "", "digests": { "md5": "46e78551ee9e6b59db4ae0e7840754e5", "sha256": "3d5a9611cc80c1794addc9db1d43a35c82710f3d2ba5c4269051a95b3cde8145" }, "downloads": -1, "filename": "tcf-0.2.5.tar.gz", "has_sig": false, "md5_digest": "46e78551ee9e6b59db4ae0e7840754e5", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*", "size": 68922, "upload_time": "2019-06-04T08:47:24", "url": "https://files.pythonhosted.org/packages/41/bb/65423a74d2cf9002344b37ae4bd1cdb48824b77206c2359a93bd3f79a2e4/tcf-0.2.5.tar.gz" } ], "0.2.6": [ { "comment_text": "", "digests": { "md5": "a91e40d202ba182e0d257bcb24578e66", "sha256": "0d31185a0b31837a4e6b3e795669593baf1470a2f8e26c0723fd132f2cb48435" }, "downloads": -1, "filename": "tcf-0.2.6.tar.gz", "has_sig": false, "md5_digest": "a91e40d202ba182e0d257bcb24578e66", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*", "size": 68961, "upload_time": "2019-06-05T11:02:09", "url": "https://files.pythonhosted.org/packages/bb/dd/5ce33c2af120c5222b55743bf90ebb9bb8e5ad8be8db896bc5657531cf70/tcf-0.2.6.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "51bd08143e4b93c5b4eede14976488fe", "sha256": "eb01033349643cb0744865dab94eb8228fde39a10473f3c20bd8fc574974645b" }, "downloads": -1, "filename": "tcf-0.3.0.tar.gz", "has_sig": false, "md5_digest": "51bd08143e4b93c5b4eede14976488fe", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*", "size": 68823, "upload_time": "2019-06-06T07:09:59", "url": "https://files.pythonhosted.org/packages/c1/20/afa12c034a57876fd0b350edb320337935776ab1d64bc9f317283c149d11/tcf-0.3.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "51bd08143e4b93c5b4eede14976488fe", "sha256": "eb01033349643cb0744865dab94eb8228fde39a10473f3c20bd8fc574974645b" }, "downloads": -1, "filename": "tcf-0.3.0.tar.gz", "has_sig": false, "md5_digest": "51bd08143e4b93c5b4eede14976488fe", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*", "size": 68823, "upload_time": "2019-06-06T07:09:59", "url": "https://files.pythonhosted.org/packages/c1/20/afa12c034a57876fd0b350edb320337935776ab1d64bc9f317283c149d11/tcf-0.3.0.tar.gz" } ] }