{ "info": { "author": "Max Zheng", "author_email": "maxzheng.os@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6", "Topic :: Software Development" ], "description": "developer-tools\n===============\n\nUseful tools for Python developers.\n\nThis is mostly an example to show how `autopip `_ can be used to install a group of\napps with various version specifications, but the author does install it as it conveniently provides all the tools\nuseful for doing Python software development.\n\nTo tell `autopip` to install other apps, simply add an `autopip` entry point group in ``setup.py`` with the list of\napps and versions. Versions can be pinned to major or a specific version, or use `latest` to install the latest version.\nUpdate frequency can also be specified per app. See working example of `autopip` entry point group\nin `developer-tools' setup.py `_::\n\n entry_points={\n 'autopip': [\n 'ansible = 2.5.4', # Pin to specific version without auto-update (recommended for 3rd party)\n 'ansible-hostmanager = latest', # Install latest and update hourly (for apps that you own)\n 'awscli = 1.15 [monthly]', # Pin to minor and update monthly\n 'flake8 = 3 [weekly]', # Pin to major and update weekly\n 'twine = 1 [weekly]',\n 'rstcheck = 3.0.1',\n 'workspace-tools = latest',\n ],\n },\n\nFor better security and user experience, it is recommended to pin to a specific version -- at least minor -- for 3rd\nparty apps. For apps that you own where you have good versioning in the app, then `latest` works better to let the app\ncontrol its own release.\n\nSeeing is believing, so try installing it::\n\n autopip install developer-tools\n\nWhich should output something like the following -- line 3 is the interesting part::\n\n Installing developer-tools to /home/mzheng/.apps/developer-tools/0.0.3\n Hourly auto-update enabled via cron service\n This app has defined \"autopip\" entry points to install: ansible==2.5.4 ... twine==1.* workspace-tools\n Installing ansible to /home/mzheng/.apps/ansible/2.5.4\n Updating script symlinks in /home/mzheng/.apps/bin\n + ansible\n ...\n ...\n Installing workspace-tools to /home/mzheng/.apps/workspace-tools/3.2.4\n Hourly auto-update enabled via cron service\n Updating script symlinks in /home/mzheng/.apps/bin\n + wst\n\nAnd everything is installed as expected:\n\n.. code-block:: console\n\n $ autopip list\n ansible 2.5.4 /home/mzheng/.apps/ansible/2.5.4\n ansible-hostmanager 0.2.3 /home/mzheng/.apps/ansible-hostmanager/0.2.3 [updates hourly]\n awscli 1.15.31 /home/mzheng/.apps/awscli/1.15.31 [updates monthly]\n developer-tools 1.0.1 /home/mzheng/.apps/developer-tools/1.0.1 [updates hourly]\n flake8 3.5.0 /home/mzheng/.apps/flake8/3.5.0 [updates weekly]\n rstcheck 3.0.1 /home/mzheng/.apps/rstcheck/3.0.1\n twine 1.11.0 /home/mzheng/.apps/twine/1.11.0 [updates weekly]\n workspace-tools 3.2.4 /home/mzheng/.apps/workspace-tools/3.2.4 [updates hourly]\n\nFinally, uninstall will remove them all as well -- though I do recommend keeping them:\n\n.. code-block:: console\n\n $ app uninstall developer-tools\n Uninstalling developer-tools\n This app has defined \"autopip\" entry points to uninstall: ansible ... workspace-tools\n Uninstalling ansible\n Uninstalling ansible-hostmanager\n Uninstalling awscli\n Uninstalling flake8\n Uninstalling rstcheck\n Uninstalling twine\n Uninstalling workspace-tools\n\nPretty cool, huh? :)\n\n\nLinks & Contact Info\n====================\n\n| PyPI Package: https://pypi.python.org/pypi/developer-tools\n| GitHub Source: https://github.com/maxzheng/developer-tools\n| Report Issues/Bugs: https://github.com/maxzheng/developer-tools/issues\n|\n| Follow: https://twitter.com/MaxZhengX\n| Connect: https://www.linkedin.com/in/maxzheng\n| Contact: maxzheng.os @t gmail.com\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/maxzheng/developer-tools", "keywords": "autopip entry points example installation group", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "developer-tools", "package_url": "https://pypi.org/project/developer-tools/", "platform": "", "project_url": "https://pypi.org/project/developer-tools/", "project_urls": { "Homepage": "https://github.com/maxzheng/developer-tools" }, "release_url": "https://pypi.org/project/developer-tools/1.0.7/", "requires_dist": null, "requires_python": ">=3.6", "summary": "Useful tools for Python developers", "version": "1.0.7" }, "last_serial": 3934797, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "3dbfc852abe71267b100805e777b8915", "sha256": "a241ecb45a2ef1317fe92c443bc71d1d0322fc22ec593c1c3cc9475af829c360" }, "downloads": -1, "filename": "developer-tools-0.0.1.tar.gz", "has_sig": false, "md5_digest": "3dbfc852abe71267b100805e777b8915", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 3440, "upload_time": "2018-06-01T17:25:16", "url": "https://files.pythonhosted.org/packages/f6/73/4dd14691b09d5d8ef0c55b22525fb330d6f5370fda4e5f0b36e79c50924e/developer-tools-0.0.1.tar.gz" } ], "0.0.10": [ { "comment_text": "", "digests": { "md5": "34bd22512f06b7914afcf28c16e2bd13", "sha256": "4d5d486817096ba762b2e4def604285f127dfb8cae34890e1e5c878584f43ed7" }, "downloads": -1, "filename": "developer-tools-0.0.10.tar.gz", "has_sig": false, "md5_digest": "34bd22512f06b7914afcf28c16e2bd13", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 4674, "upload_time": "2018-06-03T00:44:28", "url": "https://files.pythonhosted.org/packages/18/24/57e9f1e7947d0cdf3a8d8d7a6d27100dd2d2278b5f97aaacd14bec8594f0/developer-tools-0.0.10.tar.gz" } ], "0.0.11": [ { "comment_text": "", "digests": { "md5": "70e2444f2f37315d1879b2fbaf51dd4a", "sha256": "7f9a92edf839e3c7792edf7ffa74371a8728e5af5ae768985079c9ee2b91d55c" }, "downloads": -1, "filename": "developer-tools-0.0.11.tar.gz", "has_sig": false, "md5_digest": "70e2444f2f37315d1879b2fbaf51dd4a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 4691, "upload_time": "2018-06-03T00:47:28", "url": "https://files.pythonhosted.org/packages/01/78/5646dee60968899691b396913dac033f966f2b761638925be9e052d670de/developer-tools-0.0.11.tar.gz" } ], "0.0.12": [ { "comment_text": "", "digests": { "md5": "6fd39d0f18986940d80dfe408dadd408", "sha256": "2bb8590e6dd31ed48a23ead94c7c82870c758593a1f8b45dc4c7ad8af7f47f5c" }, "downloads": -1, "filename": "developer-tools-0.0.12.tar.gz", "has_sig": false, "md5_digest": "6fd39d0f18986940d80dfe408dadd408", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 4762, "upload_time": "2018-06-03T01:03:34", "url": "https://files.pythonhosted.org/packages/26/9d/ee5d5dccaf8f1d0621b7dd975b51eb6d2438f853c030992a60f1b2747e59/developer-tools-0.0.12.tar.gz" } ], "0.0.13": [ { "comment_text": "", "digests": { "md5": "962d40075cf61aa6656bb0a745494005", "sha256": "f941742dc5cc970fc0c5eec7fbd531d3264f2cf695eb0b59ddb2adb9076b22da" }, "downloads": -1, "filename": "developer-tools-0.0.13.tar.gz", "has_sig": false, "md5_digest": "962d40075cf61aa6656bb0a745494005", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 4782, "upload_time": "2018-06-03T01:13:51", "url": "https://files.pythonhosted.org/packages/a9/8a/f525dde38b761316464a937b60855a068b0858b4ef1804921d3c8fa8718c/developer-tools-0.0.13.tar.gz" } ], "0.0.14": [ { "comment_text": "", "digests": { "md5": "7f5b2c86d98ef055413608533035d3ea", "sha256": "fbe40f15a958b5b487305383c1130a6d0030e17a93f20aff1037be69d89a434b" }, "downloads": -1, "filename": "developer-tools-0.0.14.tar.gz", "has_sig": false, "md5_digest": "7f5b2c86d98ef055413608533035d3ea", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 4845, "upload_time": "2018-06-03T14:22:52", "url": "https://files.pythonhosted.org/packages/5e/55/34dd30f37f18ae3cd8789b9345537633dd45bfaa7b7d9f0365c9f557cf18/developer-tools-0.0.14.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "18ca8b1522e3c0acac58369c11f50feb", "sha256": "b6e41ae949881c773aa93ebb0fb425a8c2a5cb0035bf9d9b8e925e8e82f9d5be" }, "downloads": -1, "filename": "developer-tools-0.0.2.tar.gz", "has_sig": false, "md5_digest": "18ca8b1522e3c0acac58369c11f50feb", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 3591, "upload_time": "2018-06-01T18:55:23", "url": "https://files.pythonhosted.org/packages/82/72/56eed27757600cedadf4892b26269f1ef27e7656bec9fd5f8db59b3afca7/developer-tools-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "bedc4b8d17dea80bb45ca9728900e60b", "sha256": "a6f63cd1d06d703c6dab370e3c24ad4d8f6699ae466821fc20d957ab3fd4e64e" }, "downloads": -1, "filename": "developer-tools-0.0.3.tar.gz", "has_sig": false, "md5_digest": "bedc4b8d17dea80bb45ca9728900e60b", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 3604, "upload_time": "2018-06-02T05:08:01", "url": "https://files.pythonhosted.org/packages/95/c6/f0929b9da6f942db7f8c9b0be84045baf216cd2fc689ae6d74a612d3aabc/developer-tools-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "c2832bb5de4fd45b478e5b5a47404112", "sha256": "d42d08b8fe71524449aa0bbc33061cf14e6c6de3d18a447bb33c3b7b52d78954" }, "downloads": -1, "filename": "developer-tools-0.0.4.tar.gz", "has_sig": false, "md5_digest": "c2832bb5de4fd45b478e5b5a47404112", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 4531, "upload_time": "2018-06-03T00:15:47", "url": "https://files.pythonhosted.org/packages/34/16/5123ff28b6b2d7622af579d19f2c92486f434e36b7e6cf0cecc72dacf3b8/developer-tools-0.0.4.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "a083933029044b456f377ed1c8178515", "sha256": "6c166d3f647145189826f969ebbc90af8e117fe843c160865e7d49b328bc7ff6" }, "downloads": -1, "filename": "developer-tools-0.0.5.tar.gz", "has_sig": false, "md5_digest": "a083933029044b456f377ed1c8178515", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 4592, "upload_time": "2018-06-03T00:24:18", "url": "https://files.pythonhosted.org/packages/8a/4f/64c56cc1832bbd89d4054f2dccf025685085955f2182b0044329412de176/developer-tools-0.0.5.tar.gz" } ], "0.0.6": [ { "comment_text": "", "digests": { "md5": "065fedf5391fb337a1ddd34b9a5ca462", "sha256": "309bf990e6cdd5891462dbcb1dfc49ef23eaa311d9c893ec57785b8e1f0d97a0" }, "downloads": -1, "filename": "developer-tools-0.0.6.tar.gz", "has_sig": false, "md5_digest": "065fedf5391fb337a1ddd34b9a5ca462", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 4640, "upload_time": "2018-06-03T00:29:10", "url": "https://files.pythonhosted.org/packages/8c/69/da042b520ad9209db76c66107709e904a5ffe208279d2591787bbc3394cf/developer-tools-0.0.6.tar.gz" } ], "0.0.7": [ { "comment_text": "", "digests": { "md5": "e077d0c89fb6d45f48c843caeb76acc6", "sha256": "3079d27be00d0d80aa87aff13bc0567b72ad4444a3a8fc1009c22f259def2381" }, "downloads": -1, "filename": "developer-tools-0.0.7.tar.gz", "has_sig": false, "md5_digest": "e077d0c89fb6d45f48c843caeb76acc6", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 4641, "upload_time": "2018-06-03T00:31:37", "url": "https://files.pythonhosted.org/packages/9a/65/d14f7c95611ae45ba52b1696022215dd7641db65e90cce1a684911e2299b/developer-tools-0.0.7.tar.gz" } ], "0.0.8": [ { "comment_text": "", "digests": { "md5": "57f30ff223b8db4d974c45e086f6027f", "sha256": "4fdb454c8d77ea760fce8058288cbd9285b69fbdc72c5a985b2cd238333ae1ea" }, "downloads": -1, "filename": "developer-tools-0.0.8.tar.gz", "has_sig": false, "md5_digest": "57f30ff223b8db4d974c45e086f6027f", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 4220, "upload_time": "2018-06-03T00:32:57", "url": "https://files.pythonhosted.org/packages/90/87/483e5d924f6f7c8a3a61c64f047cea8a90e069e2f9ed8b902673576d990e/developer-tools-0.0.8.tar.gz" } ], "0.0.9": [ { "comment_text": "", "digests": { "md5": "7ceb890604d51af44f6222b84ae8e664", "sha256": "a7f893e30dc5adf348e63327dbb7facac23c0f8ce62d82544530de7d31d04b0b" }, "downloads": -1, "filename": "developer-tools-0.0.9.tar.gz", "has_sig": false, "md5_digest": "7ceb890604d51af44f6222b84ae8e664", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 4064, "upload_time": "2018-06-03T00:34:00", "url": "https://files.pythonhosted.org/packages/c3/99/ce8cfbbc13c8c29d559d5af5179aac69c9161ff3beacd83b13c9caff8a90/developer-tools-0.0.9.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "650bdf92b02a088daf3b7ba35da92f24", "sha256": "f7a6b67dccb1955e170c5ba8c5a07194341ff9fbd49d9acb4c63df0f60fe963c" }, "downloads": -1, "filename": "developer-tools-1.0.0.tar.gz", "has_sig": false, "md5_digest": "650bdf92b02a088daf3b7ba35da92f24", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 4892, "upload_time": "2018-06-03T14:33:36", "url": "https://files.pythonhosted.org/packages/20/1a/15bb7c74b9d7828d0afe9336a0be199dbc2f64c06568d1373d966f3c4b3b/developer-tools-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "e75094d58d894e90f9949f5454f3a59b", "sha256": "b3c6bcafa891fa764f530464146c54a502b686a9cab544d94e07d56370b07318" }, "downloads": -1, "filename": "developer-tools-1.0.1.tar.gz", "has_sig": false, "md5_digest": "e75094d58d894e90f9949f5454f3a59b", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 4928, "upload_time": "2018-06-03T15:14:50", "url": "https://files.pythonhosted.org/packages/ee/45/10d94f9bba71056c1a1b75826cf18f0b31fd39bbf3a78654b7b917cbdd13/developer-tools-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "e317eeb2d8d22494487351eaac945acc", "sha256": "a3ea23412c65c3c62c2e8523bbd516634d659c67789541055352c9291d566e48" }, "downloads": -1, "filename": "developer-tools-1.0.2.tar.gz", "has_sig": false, "md5_digest": "e317eeb2d8d22494487351eaac945acc", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 4864, "upload_time": "2018-06-03T16:44:59", "url": "https://files.pythonhosted.org/packages/3c/3a/bafb49a2d71351dcf4edfd9fd4886ac28001e9103d47e5f69b442a5ed81e/developer-tools-1.0.2.tar.gz" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "e5c3227bd1bd3a88ba91ef0f0baf7bc4", "sha256": "6390873ec0355b19c78aea12e7a8f5e0070cfc10269c13c812a8e2512c87f149" }, "downloads": -1, "filename": "developer-tools-1.0.3.tar.gz", "has_sig": false, "md5_digest": "e5c3227bd1bd3a88ba91ef0f0baf7bc4", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 5126, "upload_time": "2018-06-03T16:52:30", "url": "https://files.pythonhosted.org/packages/b8/0a/c99d00ef2c5bef0e39655ae75b847519b301b496f45e28f35c5da9ba26e5/developer-tools-1.0.3.tar.gz" } ], "1.0.4": [ { "comment_text": "", "digests": { "md5": "bbee033539fe6d8e9604b3718eaf8f2a", "sha256": "7d0e03f3b739d2f31a655369b1acec45b638cb8aa6a6ab1164e82b8411bb0479" }, "downloads": -1, "filename": "developer-tools-1.0.4.tar.gz", "has_sig": false, "md5_digest": "bbee033539fe6d8e9604b3718eaf8f2a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 5331, "upload_time": "2018-06-03T17:00:35", "url": "https://files.pythonhosted.org/packages/54/4c/45614c34ff1869728325559da27b17debe07a55374b86b7d015084a0bcb9/developer-tools-1.0.4.tar.gz" } ], "1.0.5": [ { "comment_text": "", "digests": { "md5": "6b90b034a2c24df535bd45fab0efa418", "sha256": "fc599666375e8c8f3c37b6eae43ad9dfce5e06e0c9c4ff09e6a2d052d6acedd7" }, "downloads": -1, "filename": "developer-tools-1.0.5.tar.gz", "has_sig": false, "md5_digest": "6b90b034a2c24df535bd45fab0efa418", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 5525, "upload_time": "2018-06-03T17:16:56", "url": "https://files.pythonhosted.org/packages/58/dc/612ab65d8402f652e83043ad4451c6a4277c2e33bd82aef16d19b00ca8d5/developer-tools-1.0.5.tar.gz" } ], "1.0.6": [ { "comment_text": "", "digests": { "md5": "e85d3e28f4a88b46f92c905a9da32480", "sha256": "630a7652e570d929cdf907c5b5658537dd99c0ee518ec9ab84d7b85c97bad546" }, "downloads": -1, "filename": "developer-tools-1.0.6.tar.gz", "has_sig": false, "md5_digest": "e85d3e28f4a88b46f92c905a9da32480", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 5482, "upload_time": "2018-06-03T19:00:14", "url": "https://files.pythonhosted.org/packages/97/3c/f3938817d69cdf901523802bca292599f227c5c3b25d2cb303870f169a8a/developer-tools-1.0.6.tar.gz" } ], "1.0.7": [ { "comment_text": "", "digests": { "md5": "8c0eeaf5b66522a150e34644a46aa052", "sha256": "272943ccee6e4a80a314075850f875a8968d6c6bd0376ce6251cbabedc29d8ee" }, "downloads": -1, "filename": "developer_tools-1.0.7-py3-none-any.whl", "has_sig": false, "md5_digest": "8c0eeaf5b66522a150e34644a46aa052", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 3189, "upload_time": "2018-06-06T05:32:40", "url": "https://files.pythonhosted.org/packages/f8/34/4ff2b8315a35e311b72227f04d7723b7bc137af8cb02eee452af2a806810/developer_tools-1.0.7-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "aa0203ae3d68d582bf2980be4707cdfc", "sha256": "de8b56afcbca9a05df3dc247cc694009a1716fd82e4105a969efd2de2e8f3749" }, "downloads": -1, "filename": "developer-tools-1.0.7.tar.gz", "has_sig": false, "md5_digest": "aa0203ae3d68d582bf2980be4707cdfc", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 5499, "upload_time": "2018-06-06T05:32:41", "url": "https://files.pythonhosted.org/packages/a3/cc/be6d03079446c40eead86a010c73309f44a9581f15eae2629f9c86694e50/developer-tools-1.0.7.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "8c0eeaf5b66522a150e34644a46aa052", "sha256": "272943ccee6e4a80a314075850f875a8968d6c6bd0376ce6251cbabedc29d8ee" }, "downloads": -1, "filename": "developer_tools-1.0.7-py3-none-any.whl", "has_sig": false, "md5_digest": "8c0eeaf5b66522a150e34644a46aa052", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 3189, "upload_time": "2018-06-06T05:32:40", "url": "https://files.pythonhosted.org/packages/f8/34/4ff2b8315a35e311b72227f04d7723b7bc137af8cb02eee452af2a806810/developer_tools-1.0.7-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "aa0203ae3d68d582bf2980be4707cdfc", "sha256": "de8b56afcbca9a05df3dc247cc694009a1716fd82e4105a969efd2de2e8f3749" }, "downloads": -1, "filename": "developer-tools-1.0.7.tar.gz", "has_sig": false, "md5_digest": "aa0203ae3d68d582bf2980be4707cdfc", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 5499, "upload_time": "2018-06-06T05:32:41", "url": "https://files.pythonhosted.org/packages/a3/cc/be6d03079446c40eead86a010c73309f44a9581f15eae2629f9c86694e50/developer-tools-1.0.7.tar.gz" } ] }