{ "info": { "author": "Luis Alejandro Mart\u00ednez Faneyth", "author_email": "luis@huntingbears.com.ve", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License v3 (GPLv3)", "Natural Language :: English", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7" ], "description": ".. image:: https://gitcdn.xyz/repo/LuisAlejandro/pypicontents/master/docs/_static/banner.svg\n\n..\n\n PyPIContents is an application that generates a Module Index from the Python Package Index (PyPI)\n and also from various versions of the Python Standard Library.\n\n.. image:: https://img.shields.io/pypi/v/pypicontents.svg\n :target: https://pypi.python.org/pypi/pypicontents\n :alt: PyPI Package\n\n.. image:: https://img.shields.io/travis/LuisAlejandro/pypicontents.svg\n :target: https://travis-ci.org/LuisAlejandro/pypicontents\n :alt: Travis CI\n\n.. image:: https://coveralls.io/repos/github/LuisAlejandro/pypicontents/badge.svg?branch=master\n :target: https://coveralls.io/github/LuisAlejandro/pypicontents?branch=master\n :alt: Coveralls\n\n.. image:: https://codeclimate.com/github/LuisAlejandro/pypicontents/badges/gpa.svg\n :target: https://codeclimate.com/github/LuisAlejandro/pypicontents\n :alt: Code Climate\n\n.. image:: https://pyup.io/repos/github/LuisAlejandro/pipsalabim/shield.svg\n :target: https://pyup.io/repos/github/LuisAlejandro/pipsalabim/\n :alt: Updates\n\n.. image:: https://readthedocs.org/projects/pypicontents/badge/?version=latest\n :target: https://readthedocs.org/projects/pypicontents/?badge=latest\n :alt: Read The Docs\n\n.. image:: https://cla-assistant.io/readme/badge/LuisAlejandro/pypicontents\n :target: https://cla-assistant.io/LuisAlejandro/pypicontents\n :alt: Contributor License Agreement\n\n.. image:: https://badges.gitter.im/LuisAlejandro/pypicontents.svg\n :target: https://gitter.im/LuisAlejandro/pypicontents\n :alt: Gitter Chat\n\n|\n|\n\n.. _pipsalabim: https://github.com/LuisAlejandro/pipsalabim\n.. _full documentation: https://pypicontents.readthedocs.org\n.. _Contents: https://www.debian.org/distrib/packages#search_contents\n\nPyPIContents generates a configurable index written in ``JSON`` format that serves as a database for applications\nlike `pipsalabim`_. It can be configured to process only a range of packages (by initial letter) and to have\nmemory, time or log size limits. It basically aims to mimic what the `Contents`_ file means for a Debian\nbased package repository, but for the Python Package Index.\n\nThis repository stores the application in the ``master`` branch. It also stores a Module Index in the ``contents``\nbranch that is updated daily through a Travis cron. Read below for more information on how to use one or the other.\n\nFor more information, please read the `full documentation`_.\n\nGetting started\n===============\n\nInstallation\n------------\n\n.. _PyPI: https://pypi.python.org/pypi/pypicontents\n\nThe ``pypicontents`` program is written in python and hosted on PyPI_. Therefore, you can use\npip to install the stable version::\n\n $ pip install --upgrade pypicontents\n\nIf you want to install the development version (not recomended), you can install\ndirectlty from GitHub like this::\n\n $ pip install --upgrade https://github.com/LuisAlejandro/pypicontents/archive/master.tar.gz\n\nUsing the application\n---------------------\n\nPyPIContents is divided in several commands.\n\npypicontents pypi\n~~~~~~~~~~~~~~~~~\n\nThis command generates a JSON module index with information from PyPI. Read below for more information\non how to use it::\n\n $ pypicontents pypi --help\n\n usage: pypicontents pypi [options]\n\n General Options:\n -V, --version Print version and exit.\n -h, --help Show this help message and exit.\n\n Pypi Options:\n -l , --loglevel \n Logger verbosity level (default: INFO). Must be one\n of: DEBUG, INFO, WARNING, ERROR or CRITICAL.\n -f , --logfile \n A path pointing to a file to be used to store logs.\n -o , --outputfile \n A path pointing to a file that will be used to store\n the JSON Module Index (required).\n -R , --letter-range \n An expression representing an alphanumeric range to be\n used to filter packages from PyPI (default: 0-z). You\n can use a single alphanumeric character like \"0\" to\n process only packages beginning with \"0\". You can use\n commas use as a list o dashes to use as an interval.\n -L , --limit-log-size \n Stop processing if log size exceeds (default:\n 3M).\n -M , --limit-mem \n Stop processing if process memory exceeds \n (default: 2G).\n -T , --limit-time \n Stop processing if process time exceeds \n (default: 2100).\n\npypicontents stdlib\n~~~~~~~~~~~~~~~~~~~\n\nThis command generates a JSON Module Index from the Python Standard Library. Read below for more information\non how to use it::\n\n $ pypicontents stdlib --help\n\n usage: pypicontents stdlib [options]\n\n General Options:\n -V, --version Print version and exit.\n -h, --help Show this help message and exit.\n\n Stdlib Options:\n -o , --outputfile \n A path pointing to a file that will be used to store\n the JSON Module Index (required).\n -p , --pyver \n Python version to be used for the Standard Library\n (default: 2.7).\n\npypicontents stats\n~~~~~~~~~~~~~~~~~~\n\nThis command gathers statistics from the logs generated by the ``pypi`` command. Read below for more information\non how to use it::\n\n $ pypicontents stats --help\n\n usage: pypicontents stats [options]\n\n General Options:\n -V, --version Print version and exit.\n -h, --help Show this help message and exit.\n\n Stats Options:\n -i , --inputdir \n A path pointing to a directory containing JSON files\n generated by the pypi command (required).\n -o , --outputfile \n A path pointing to a file that will be used to store\n the statistics (required).\n\npypicontents errors\n~~~~~~~~~~~~~~~~~~~\n\nThis command summarizes errors found in the logs generated by the ``pypi`` command. Read below for more information\non how to use it::\n\n $ pypicontents errors --help\n\n usage: pypicontents errors [options]\n\n General Options:\n -V, --version Print version and exit.\n -h, --help Show this help message and exit.\n\n Errors Options:\n -i , --inputdir \n A path pointing to a directory containing JSON files\n generated by the pypi command (required).\n -o , --outputfile \n A path pointing to a file that will be used to store\n the errors (required).\n\npypicontents merge\n~~~~~~~~~~~~~~~~~~\n\nThis command searches for JSON files generated by the ``pypi`` or ``stdlib`` commands and combines them into one.\nRead below for more information on how to use it::\n\n $ pypicontents merge --help\n\n usage: pypicontents merge [options]\n\n General Options:\n -V, --version Print version and exit.\n -h, --help Show this help message and exit.\n\n Merge Options:\n -i , --inputdir \n A path pointing to a directory containing JSON files\n generated by pypi or stdlib commands (required).\n -o , --outputfile \n A path pointing to a file that will be used to store\n the merged JSON files (required).\n\nAbout the Module Index\n----------------------\n\n.. _Travis: https://travis-ci.org/LuisAlejandro/pypicontents\n.. _pypi.json: https://github.com/LuisAlejandro/pypicontents/blob/contents/pypi.json\n\nIn the `pypi.json`_ file (located in the ``contents`` branch) you will find a dictionary with all the packages registered\nat the main PyPI instance, each one with the following information::\n\n {\n \"pkg_a\": {\n \"version\": [\n \"X.Y.Z\"\n ],\n \"modules\": [\n \"module_1\",\n \"module_2\",\n \"...\"\n ],\n \"cmdline\": [\n \"path_1\",\n \"path_2\",\n \"...\"\n ]\n },\n \"pkg_b\": {\n \"...\": \"...\"\n },\n \"...\": {},\n \"...\": {}\n }\n\nThis index is generated using Travis_. This is done by executing the ``setup.py`` file\nof each package through a monkeypatch that allows us to read the parameters that were passed\nto ``setup()``. Check out ``pypicontents/api/process.py`` for more info.\n\nUse cases\n~~~~~~~~~\n\n.. _Pip Sala Bim: https://github.com/LuisAlejandro/pipsalabim\n\n* Search which package (or packages) contain a python module. Useful to determine a project's ``requirements.txt`` or ``install_requires``.\n\n::\n\n import json\n import urllib2\n from pprint import pprint\n\n pypic = 'https://raw.githubusercontent.com/LuisAlejandro/pypicontents/contents/pypi.json'\n\n f = urllib2.urlopen(pypic)\n pypicontents = json.loads(f.read())\n\n def find_package(contents, module):\n for pkg, data in contents.items():\n for mod in data['modules']:\n if mod == module:\n yield {pkg: data['modules']}\n\n # Which package(s) content the 'django' module?\n # Output: \n pprint(list(find_package(pypicontents, 'django')))\n\n..\n\n Hint: Check out `Pip Sala Bim`_.\n\nKnown Issues\n~~~~~~~~~~~~\n\n#. Some packages have partial or totally absent data because of some of these\n reasons:\n\n #. Some packages depend on other packages outside of ``stdlib``. We try to\n override these imports but if the setup heavily depends on it, it will fail anyway.\n #. Some packages are broken and error out when executing ``setup.py``.\n #. Some packages are empty or have no releases.\n\n#. If a package gets updated on PyPI and the change introduces or deletes\n modules, then it won't be reflected until the next index rebuild. You\n should check for the ``version`` field for consistency. Also, if you need a\n more up-to-date index, feel free to download this software and build your own\n index.\n\nGetting help\n============\n\n.. _Gitter Chat: https://gitter.im/LuisAlejandro/pypicontents\n.. _StackOverflow: http://stackoverflow.com/questions/ask\n\nIf you have any doubts or problems, suscribe to our `Gitter Chat`_ and ask for help. You can also\nask your question on StackOverflow_ (tag it ``pypicontents``) or drop me an email at luis@huntingbears.com.ve.\n\nContributing\n============\n\n.. _CONTRIBUTING.rst: CONTRIBUTING.rst\n\nSee CONTRIBUTING.rst_ for details.\n\n\nRelease history\n===============\n\n.. _HISTORY.rst: HISTORY.rst\n\nSee HISTORY.rst_ for details.\n\nLicense\n=======\n\n.. _COPYING.rst: COPYING.rst\n.. _AUTHORS.rst: AUTHORS.rst\n.. _GPL-3 License: LICENSE.rst\n\nCopyright 2016-2017, PyPIContents Developers (read AUTHORS.rst_ for a full list of copyright holders).\n\nReleased under a `GPL-3 License`_ (read COPYING.rst_ for license details).\n\nMade with :heart: and :hamburger:\n=================================\n\n.. image:: http://huntingbears.com.ve/static/img/site/banner.svg\n\n.. _Patreon: https://www.patreon.com/luisalejandro\n.. _Flattr: https://flattr.com/profile/luisalejandro\n.. _PayPal: https://www.paypal.me/martinezfaneyth\n.. _LuisAlejandroTwitter: https://twitter.com/LuisAlejandro\n.. _LuisAlejandroGitHub: https://github.com/LuisAlejandro\n.. _huntingbears.com.ve: http://huntingbears.com.ve\n\n|\n\nMy name is Luis (`@LuisAlejandro`__) and I'm a Free and\nOpen-Source Software developer living in Maracay, Venezuela.\n\n__ LuisAlejandroTwitter_\n\nIf you like what I do, please support me on Patreon_, Flattr_, or donate via PayPal_,\nso that I can continue doing what I love.\n\n Blog huntingbears.com.ve_ \u00b7 GitHub `@LuisAlejandro`__ \u00b7 Twitter `@LuisAlejandro`__\n\n__ LuisAlejandroGitHub_\n__ LuisAlejandroTwitter_\n\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/LuisAlejandro/pypicontents", "keywords": "PyPI", "license": "\nCopyright (C) 2016-2017, PyPIContents Developers.\n\nPlease refer to AUTHORS.rst for a complete list of Copyright holders.\n\nPyPIContents is free software: you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation, either version 3 of the License, or\n(at your option) any later version.\n\nPyPIContents is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\nGNU General Public License for more details.\n\nYou should have received a copy of the GNU General Public License\nalong with this program. If not, see http://www.gnu.org/licenses.\n", "maintainer": "", "maintainer_email": "", "name": "pypicontents", "package_url": "https://pypi.org/project/pypicontents/", "platform": "posix", "project_url": "https://pypi.org/project/pypicontents/", "project_urls": { "Homepage": "https://github.com/LuisAlejandro/pypicontents" }, "release_url": "https://pypi.org/project/pypicontents/0.1.15/", "requires_dist": null, "requires_python": "", "summary": "PyPIContents is an application that generates a Module Index from the Python Package Index (PyPI) and also from various versions of the Python Standard Library.", "version": "0.1.15" }, "last_serial": 4610731, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "e8d0d1935b4cb2faedfb2181fc213310", "sha256": "61d5b6c9f7edc8fba27c78f7b5c30e952c903659b35e480bf7fecb63b5ac8983" }, "downloads": -1, "filename": "pypicontents-0.1.0.tar.gz", "has_sig": false, "md5_digest": "e8d0d1935b4cb2faedfb2181fc213310", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 56926, "upload_time": "2016-12-19T05:20:57", "url": "https://files.pythonhosted.org/packages/75/21/0c651370446cffd35cb57bfc983c3e28e82876147a70760f8172d9fa847d/pypicontents-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "73ad6443e317df8aa619f1fdec68779b", "sha256": "8e84935a460f475506022f9be02dbbb87cdb1060a7032becbaa49b46fc4afc1b" }, "downloads": -1, "filename": "pypicontents-0.1.1.tar.gz", "has_sig": false, "md5_digest": "73ad6443e317df8aa619f1fdec68779b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 55162, "upload_time": "2016-12-19T19:22:25", "url": "https://files.pythonhosted.org/packages/bd/72/3add38aaa263f05b6a63e70513c6309ff3046555947fb73d5f3a374019bb/pypicontents-0.1.1.tar.gz" } ], "0.1.10": [ { "comment_text": "", "digests": { "md5": "09f1e0c519d382baad3dc66a40e97343", "sha256": "98a7faca61f05135293e35593b3400aaa0d634c9c33601afb05cd5582128fd3f" }, "downloads": -1, "filename": "pypicontents-0.1.10.tar.gz", "has_sig": false, "md5_digest": "09f1e0c519d382baad3dc66a40e97343", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 57775, "upload_time": "2017-05-19T19:20:18", "url": "https://files.pythonhosted.org/packages/b9/3f/649282f873ab764deb6d98eaeb075c6581d7f2d44610e708e891cd9eb5c1/pypicontents-0.1.10.tar.gz" } ], "0.1.11": [ { "comment_text": "", "digests": { "md5": "17820dcd0c0b0071e4eb751b1d96523e", "sha256": "2b5da1f661d9ba7a05680dbeeab5cea3695088d16f1bbcdaee6879f1a15b8ecc" }, "downloads": -1, "filename": "pypicontents-0.1.11.tar.gz", "has_sig": false, "md5_digest": "17820dcd0c0b0071e4eb751b1d96523e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 58805, "upload_time": "2017-07-17T16:04:57", "url": "https://files.pythonhosted.org/packages/09/2e/99cd8676f0ee5c79652cdb101de45d1a878572bd0f52f562f9163f417442/pypicontents-0.1.11.tar.gz" } ], "0.1.13": [ { "comment_text": "", "digests": { "md5": "c0d82df1cc0506179e0b96436851559e", "sha256": "1576ea467f76a48d0364d3b639800a1b581115933ddcfc3ce1d2f6530e1c016b" }, "downloads": -1, "filename": "pypicontents-0.1.13.tar.gz", "has_sig": false, "md5_digest": "c0d82df1cc0506179e0b96436851559e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 58239, "upload_time": "2017-08-02T14:52:03", "url": "https://files.pythonhosted.org/packages/98/cf/1048f9caa9f9bdb98c967fd06f579c6d35992386aa594e7c80790b9dffa4/pypicontents-0.1.13.tar.gz" } ], "0.1.14": [ { "comment_text": "", "digests": { "md5": "0552d6c9bc170a0a24c34d032ebb265b", "sha256": "4dacc3497c5f7b1a16ba967d156baef4bf98d6ecc10f79b0290ad220372b92c8" }, "downloads": -1, "filename": "pypicontents-0.1.14.tar.gz", "has_sig": false, "md5_digest": "0552d6c9bc170a0a24c34d032ebb265b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 58392, "upload_time": "2018-04-18T04:29:23", "url": "https://files.pythonhosted.org/packages/f6/db/b8adc573eed15815305bdc00285791134957d606c2130c5b78725e01b4da/pypicontents-0.1.14.tar.gz" } ], "0.1.15": [ { "comment_text": "", "digests": { "md5": "4278ab8cbdf36cd3d9c9d21abcd15a95", "sha256": "6c374680d5a72e173604a43db87ac46ec327eef1370a30e4ddbf0a23ecdba7c8" }, "downloads": -1, "filename": "pypicontents-0.1.15.tar.gz", "has_sig": false, "md5_digest": "4278ab8cbdf36cd3d9c9d21abcd15a95", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 59784, "upload_time": "2018-12-18T03:59:14", "url": "https://files.pythonhosted.org/packages/0f/9f/0b68f0c2ec6310681b7796f19401371d3e0a18ba65bfd059627a7aa2ea3c/pypicontents-0.1.15.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "0f5b5080eca5607f61272dc3dddf4da5", "sha256": "3eab4b01dc351186783d06c74b8a8b470b766a61de77c3c02724e1ca9948b196" }, "downloads": -1, "filename": "pypicontents-0.1.2.tar.gz", "has_sig": false, "md5_digest": "0f5b5080eca5607f61272dc3dddf4da5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 56294, "upload_time": "2017-01-04T22:36:37", "url": "https://files.pythonhosted.org/packages/7b/b2/2fc510c0c327a933f9231306df86414e8061374d17be7466bfb302928d1e/pypicontents-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "dd3119e3833bba182bf275220a159aef", "sha256": "ac4e33a0acbdae337860a28186a033485a329be79afcf9515f48de7c4f812c16" }, "downloads": -1, "filename": "pypicontents-0.1.3.tar.gz", "has_sig": false, "md5_digest": "dd3119e3833bba182bf275220a159aef", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 56376, "upload_time": "2017-01-04T23:54:39", "url": "https://files.pythonhosted.org/packages/66/6e/dfd33c341cd8379e6f8f81f7e597ca24d78b5e13a49d77f12a5519b0e6ae/pypicontents-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "f420f36e9ab02d5ffac98356cd560a08", "sha256": "8d0ec282c541a28139cbeb440fc1a04e80921b3a19159bbe6ab24fbf91620e91" }, "downloads": -1, "filename": "pypicontents-0.1.4.tar.gz", "has_sig": false, "md5_digest": "f420f36e9ab02d5ffac98356cd560a08", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 56408, "upload_time": "2017-01-05T16:12:44", "url": "https://files.pythonhosted.org/packages/f4/11/095c89607b2f0d53a3ff8aea2034b16e1a6af5800471f3d357eebd0f4fdd/pypicontents-0.1.4.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "4eba7c4eec9172679917ab67350ce7e7", "sha256": "38e7c58017d63ebc371b3b7ff0deb55b3a3051b8ee44ba120915bc02c7c0d841" }, "downloads": -1, "filename": "pypicontents-0.1.5.tar.gz", "has_sig": false, "md5_digest": "4eba7c4eec9172679917ab67350ce7e7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 56630, "upload_time": "2017-01-05T22:08:43", "url": "https://files.pythonhosted.org/packages/f7/69/26f6d052f27a139975c51e5d46a89a2c1a5352d12db4259b378b66483fc1/pypicontents-0.1.5.tar.gz" } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "7acc485452dc107730dd504956b16127", "sha256": "5c70988322a0eb425f9803318e38eabd86ca055b7ba90a800abcc92c99197cf2" }, "downloads": -1, "filename": "pypicontents-0.1.6.tar.gz", "has_sig": false, "md5_digest": "7acc485452dc107730dd504956b16127", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 57193, "upload_time": "2017-05-13T19:24:17", "url": "https://files.pythonhosted.org/packages/69/52/fdb27fbe7bd53bdfd5f45b2590cc22e098b628553ee1fabcd9b226932092/pypicontents-0.1.6.tar.gz" } ], "0.1.7": [ { "comment_text": "", "digests": { "md5": "6fcfbd35009aa556ad3f846cbd7a59ce", "sha256": "1fd3d307f6a55f8dade7da322924b4616b381c749748c9f375bf4fc22c2aba31" }, "downloads": -1, "filename": "Pypicontents-0.1.7.tar.gz", "has_sig": false, "md5_digest": "6fcfbd35009aa556ad3f846cbd7a59ce", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 57442, "upload_time": "2017-05-18T13:58:55", "url": "https://files.pythonhosted.org/packages/74/0b/72a3d1a1cd21523aec78d25080eb41a5a670f279894c3cde70800d6c4fdc/Pypicontents-0.1.7.tar.gz" } ], "0.1.8": [ { "comment_text": "", "digests": { "md5": "b4e155ec4d9f6b09f1debdc268331b57", "sha256": "d700e7493fce29e04ed7df7f62ba566e7836a8b26521fa1c369db56671fb75a2" }, "downloads": -1, "filename": "pypicontents-0.1.8.tar.gz", "has_sig": false, "md5_digest": "b4e155ec4d9f6b09f1debdc268331b57", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 57498, "upload_time": "2017-05-18T17:58:49", "url": "https://files.pythonhosted.org/packages/7f/d6/ba91c59e347970f16ea5ed5381dfacbb8cac76ab875e972d1bb1411a8ec7/pypicontents-0.1.8.tar.gz" } ], "0.1.9": [ { "comment_text": "", "digests": { "md5": "b662f95cd0be9a80b7e21a8799adf6a1", "sha256": "3234c0c2c1fc11eeee4a5f2b91862b0a445b077e582fb3c66efb6a01f4990de9" }, "downloads": -1, "filename": "pypicontents-0.1.9.tar.gz", "has_sig": false, "md5_digest": "b662f95cd0be9a80b7e21a8799adf6a1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 57677, "upload_time": "2017-05-18T23:28:11", "url": "https://files.pythonhosted.org/packages/e5/03/16fca3fb33cfec280103fe75fa22c9ac37bf6e8f24381a3f10d21240d723/pypicontents-0.1.9.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "4278ab8cbdf36cd3d9c9d21abcd15a95", "sha256": "6c374680d5a72e173604a43db87ac46ec327eef1370a30e4ddbf0a23ecdba7c8" }, "downloads": -1, "filename": "pypicontents-0.1.15.tar.gz", "has_sig": false, "md5_digest": "4278ab8cbdf36cd3d9c9d21abcd15a95", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 59784, "upload_time": "2018-12-18T03:59:14", "url": "https://files.pythonhosted.org/packages/0f/9f/0b68f0c2ec6310681b7796f19401371d3e0a18ba65bfd059627a7aa2ea3c/pypicontents-0.1.15.tar.gz" } ] }