From a7cc7f0b9c22ccca9d4f6a1e84062b0949a17f62 Mon Sep 17 00:00:00 2001 From: David Hotham Date: Tue, 26 Jul 2022 21:16:42 +0100 Subject: [PATCH] Avoid the deprecated JSON API --- src/poetry/repositories/link_sources/json.py | 31 + src/poetry/repositories/pypi_repository.py | 63 +- src/poetry/utils/authenticator.py | 3 +- tests/installation/test_executor.py | 18 +- .../fixtures/pypi.org/json/attrs.json | 139 +- .../fixtures/pypi.org/json/black.json | 151 +- .../fixtures/pypi.org/json/cachecontrol.json | 216 +- .../fixtures/pypi.org/json/clikit.json | 125 +- .../fixtures/pypi.org/json/clikit/0.2.4.json | 95 + .../fixtures/pypi.org/json/colorama.json | 123 +- .../fixtures/pypi.org/json/funcsigs.json | 122 +- .../fixtures/pypi.org/json/isort.json | 165 +- .../fixtures/pypi.org/json/isort/4.3.4.json | 117 + .../fixtures/pypi.org/json/jupyter.json | 161 +- .../fixtures/pypi.org/json/jupyter/1.0.0.json | 112 + .../fixtures/pypi.org/json/lockfile.json | 127 +- .../pypi.org/json/more-itertools.json | 153 +- .../fixtures/pypi.org/json/pluggy.json | 92 +- .../fixtures/pypi.org/json/poetry.json | 343 +- .../fixtures/pypi.org/json/py.json | 125 +- .../pypi.org/json/pygame-music-grid.json | 96 +- .../fixtures/pypi.org/json/pylev.json | 88 +- .../fixtures/pypi.org/json/pylev/1.3.0.json | 88 + .../fixtures/pypi.org/json/pytest.json | 132 +- .../fixtures/pypi.org/json/pytest/3.5.1.json | 108 + .../fixtures/pypi.org/json/pyyaml.json | 661 +-- .../fixtures/pypi.org/json/pyyaml/3.13.0.json | 340 ++ .../fixtures/pypi.org/json/requests.json | 4684 +++++------------ .../fixtures/pypi.org/json/setuptools.json | 126 +- .../pypi.org/json/setuptools/39.2.0.json | 100 + .../fixtures/pypi.org/json/six.json | 113 +- .../fixtures/pypi.org/json/sqlalchemy.json | 90 +- .../pypi.org/json/sqlalchemy/1.2.12.json | 123 + .../fixtures/pypi.org/json/toga.json | 464 +- .../fixtures/pypi.org/json/tomlkit.json | 176 +- .../fixtures/pypi.org/json/tomlkit/0.5.3.json | 94 + .../fixtures/pypi.org/json/trackpy.json | 107 +- .../fixtures/pypi.org/json/trackpy/0.4.1.json | 60 + .../fixtures/pypi.org/json/twisted.json | 87 +- .../pypi.org/json/twisted/18.9.0.json | 237 + tests/repositories/test_pypi_repository.py | 7 +- 41 files changed, 3695 insertions(+), 6767 deletions(-) create mode 100644 src/poetry/repositories/link_sources/json.py create mode 100644 tests/repositories/fixtures/pypi.org/json/clikit/0.2.4.json create mode 100644 tests/repositories/fixtures/pypi.org/json/isort/4.3.4.json create mode 100644 tests/repositories/fixtures/pypi.org/json/jupyter/1.0.0.json create mode 100644 tests/repositories/fixtures/pypi.org/json/pylev/1.3.0.json create mode 100644 tests/repositories/fixtures/pypi.org/json/pytest/3.5.1.json create mode 100644 tests/repositories/fixtures/pypi.org/json/pyyaml/3.13.0.json create mode 100644 tests/repositories/fixtures/pypi.org/json/setuptools/39.2.0.json create mode 100644 tests/repositories/fixtures/pypi.org/json/sqlalchemy/1.2.12.json create mode 100644 tests/repositories/fixtures/pypi.org/json/tomlkit/0.5.3.json create mode 100644 tests/repositories/fixtures/pypi.org/json/trackpy/0.4.1.json create mode 100644 tests/repositories/fixtures/pypi.org/json/twisted/18.9.0.json diff --git a/src/poetry/repositories/link_sources/json.py b/src/poetry/repositories/link_sources/json.py new file mode 100644 index 00000000000..0d8bb05b822 --- /dev/null +++ b/src/poetry/repositories/link_sources/json.py @@ -0,0 +1,31 @@ +from __future__ import annotations + +from typing import TYPE_CHECKING +from typing import Any + +from poetry.core.packages.utils.link import Link + +from poetry.repositories.link_sources.base import LinkSource + + +if TYPE_CHECKING: + from collections.abc import Iterator + + +class SimpleJsonPage(LinkSource): + """Links as returned by PEP 691 compatible JSON-based Simple API.""" + + def __init__(self, url: str, content: dict[str, Any]) -> None: + super().__init__(url=url) + self.content = content + + @property + def links(self) -> Iterator[Link]: + for file in self.content["files"]: + url = file["url"] + requires_python = file.get("requires-python") + link = Link(url, requires_python=requires_python) + if link.ext not in self.SUPPORTED_FORMATS: + continue + + yield link diff --git a/src/poetry/repositories/pypi_repository.py b/src/poetry/repositories/pypi_repository.py index a0e78f4ea5d..7c46b236599 100644 --- a/src/poetry/repositories/pypi_repository.py +++ b/src/poetry/repositories/pypi_repository.py @@ -12,11 +12,11 @@ from html5lib.html5parser import parse from poetry.core.packages.package import Package from poetry.core.packages.utils.link import Link -from poetry.core.semver.version import Version from poetry.core.version.exceptions import InvalidVersion from poetry.repositories.exceptions import PackageNotFound from poetry.repositories.http import HTTPRepository +from poetry.repositories.link_sources.json import SimpleJsonPage from poetry.utils._compat import to_str from poetry.utils.constants import REQUESTS_TIMEOUT @@ -27,6 +27,7 @@ if TYPE_CHECKING: + from poetry.core.semver.version import Version from poetry.core.semver.version_constraint import VersionConstraint @@ -110,47 +111,40 @@ def _find_packages(self, name: str, constraint: VersionConstraint) -> list[Packa Find packages on the remote server. """ try: - info = self.get_package_info(name) + json_page = self.get_json_page(name) except PackageNotFound: self._log( - f"No packages found for {name} {constraint!s}", + f"No packages found for {name}", level="debug", ) return [] - packages = [] + versions: list[Version] - for version_string, release in info["releases"].items(): - if not release: - # Bad release - self._log( - f"No release information found for {name}-{version_string}," - " skipping", - level="debug", - ) - continue + key = name + if not constraint.is_any(): + key = f"{key}:{constraint!s}" - try: - version = Version.parse(version_string) - except InvalidVersion: - self._log( - f'Unable to parse version "{version_string}" for the' - f" {name} package, skipping", - level="debug", - ) - continue - - if constraint.allows(version): - packages.append(Package(info["info"]["name"], version)) + if self._cache.store("matches").has(key): + versions = self._cache.store("matches").get(key) + else: + versions = [ + version + for version in json_page.versions(name) + if constraint.allows(version) + ] + self._cache.store("matches").put(key, versions, 5) - return packages + pretty_name = json_page.content["name"] + return [Package(pretty_name, version) for version in versions] def _get_package_info(self, name: str) -> dict[str, Any]: - data = self._get(f"pypi/{name}/json") - if data is None: + headers = {"Accept": "application/vnd.pypi.simple.v1+json"} + info = self._get(f"simple/{name}/", headers=headers) + if info is None: raise PackageNotFound(f"Package [{name}] not found.") - return data + return info def find_links_for_package(self, package: Package) -> list[Link]: json_data = self._get(f"pypi/{package.name}/{package.version}/json") @@ -229,12 +223,20 @@ def _get_release_info( return data.asdict() - def _get(self, endpoint: str) -> dict[str, Any] | None: + def get_json_page(self, name: str) -> SimpleJsonPage: + source = self._base_url + f"simple/{name}/" + info = self.get_package_info(name) + return SimpleJsonPage(source, info) + + def _get( + self, endpoint: str, headers: dict[str, str] | None = None + ) -> dict[str, Any] | None: try: json_response = self.session.get( self._base_url + endpoint, raise_for_status=False, timeout=REQUESTS_TIMEOUT, + headers=headers, ) except requests.exceptions.TooManyRedirects: # Cache control redirect loop. @@ -244,6 +246,7 @@ def _get(self, endpoint: str) -> dict[str, Any] | None: self._base_url + endpoint, raise_for_status=False, timeout=REQUESTS_TIMEOUT, + headers=headers, ) if json_response.status_code != 200: diff --git a/src/poetry/utils/authenticator.py b/src/poetry/utils/authenticator.py index fbcb25ea502..d4bf9a2370d 100644 --- a/src/poetry/utils/authenticator.py +++ b/src/poetry/utils/authenticator.py @@ -191,7 +191,8 @@ def authenticated_url(self, url: str) -> str: def request( self, method: str, url: str, raise_for_status: bool = True, **kwargs: Any ) -> requests.Response: - request = requests.Request(method, url) + headers = kwargs.get("headers") + request = requests.Request(method, url, headers=headers) credential = self.get_credentials_for_url(url) if credential.username is not None or credential.password is not None: diff --git a/tests/installation/test_executor.py b/tests/installation/test_executor.py index 7f60905a33c..21bd0e1f2ec 100644 --- a/tests/installation/test_executor.py +++ b/tests/installation/test_executor.py @@ -146,7 +146,7 @@ def test_execute_executes_a_batch_of_operations( return_code = executor.execute( [ - Install(Package("pytest", "3.5.2")), + Install(Package("pytest", "3.5.1")), Uninstall(Package("attrs", "17.4.0")), Update(Package("requests", "2.18.3"), Package("requests", "2.18.4")), Uninstall(Package("clikit", "0.2.3")).skip("Not currently installed"), @@ -159,7 +159,7 @@ def test_execute_executes_a_batch_of_operations( expected = f""" Package operations: 4 installs, 1 update, 1 removal - • Installing pytest (3.5.2) + • Installing pytest (3.5.1) • Removing attrs (17.4.0) • Updating requests (2.18.3 -> 2.18.4) • Installing demo (0.1.0 {file_package.source_url}) @@ -243,7 +243,7 @@ def test_execute_works_with_ansi_output( mocker.patch.object(env, "_run", return_value=install_output) return_code = executor.execute( [ - Install(Package("pytest", "3.5.2")), + Install(Package("pytest", "3.5.1")), ] ) env._run.assert_called_once() @@ -251,10 +251,10 @@ def test_execute_works_with_ansi_output( # fmt: off expected = [ "\x1b[39;1mPackage operations\x1b[39;22m: \x1b[34m1\x1b[39m install, \x1b[34m0\x1b[39m updates, \x1b[34m0\x1b[39m removals", # noqa: E501 - "\x1b[34;1m•\x1b[39;22m \x1b[39mInstalling \x1b[39m\x1b[36mpytest\x1b[39m\x1b[39m (\x1b[39m\x1b[39;1m3.5.2\x1b[39;22m\x1b[39m)\x1b[39m: \x1b[34mPending...\x1b[39m", # noqa: E501 - "\x1b[34;1m•\x1b[39;22m \x1b[39mInstalling \x1b[39m\x1b[36mpytest\x1b[39m\x1b[39m (\x1b[39m\x1b[39;1m3.5.2\x1b[39;22m\x1b[39m)\x1b[39m: \x1b[34mDownloading...\x1b[39m", # noqa: E501 - "\x1b[34;1m•\x1b[39;22m \x1b[39mInstalling \x1b[39m\x1b[36mpytest\x1b[39m\x1b[39m (\x1b[39m\x1b[39;1m3.5.2\x1b[39;22m\x1b[39m)\x1b[39m: \x1b[34mInstalling...\x1b[39m", # noqa: E501 - "\x1b[32;1m•\x1b[39;22m \x1b[39mInstalling \x1b[39m\x1b[36mpytest\x1b[39m\x1b[39m (\x1b[39m\x1b[32m3.5.2\x1b[39m\x1b[39m)\x1b[39m", # finished # noqa: E501 + "\x1b[34;1m•\x1b[39;22m \x1b[39mInstalling \x1b[39m\x1b[36mpytest\x1b[39m\x1b[39m (\x1b[39m\x1b[39;1m3.5.1\x1b[39;22m\x1b[39m)\x1b[39m: \x1b[34mPending...\x1b[39m", # noqa: E501 + "\x1b[34;1m•\x1b[39;22m \x1b[39mInstalling \x1b[39m\x1b[36mpytest\x1b[39m\x1b[39m (\x1b[39m\x1b[39;1m3.5.1\x1b[39;22m\x1b[39m)\x1b[39m: \x1b[34mDownloading...\x1b[39m", # noqa: E501 + "\x1b[34;1m•\x1b[39;22m \x1b[39mInstalling \x1b[39m\x1b[36mpytest\x1b[39m\x1b[39m (\x1b[39m\x1b[39;1m3.5.1\x1b[39;22m\x1b[39m)\x1b[39m: \x1b[34mInstalling...\x1b[39m", # noqa: E501 + "\x1b[32;1m•\x1b[39;22m \x1b[39mInstalling \x1b[39m\x1b[36mpytest\x1b[39m\x1b[39m (\x1b[39m\x1b[32m3.5.1\x1b[39m\x1b[39m)\x1b[39m", # finished # noqa: E501 ] # fmt: on @@ -285,7 +285,7 @@ def test_execute_works_with_no_ansi_output( mocker.patch.object(env, "_run", return_value=install_output) return_code = executor.execute( [ - Install(Package("pytest", "3.5.2")), + Install(Package("pytest", "3.5.1")), ] ) env._run.assert_called_once() @@ -293,7 +293,7 @@ def test_execute_works_with_no_ansi_output( expected = """ Package operations: 1 install, 0 updates, 0 removals - • Installing pytest (3.5.2) + • Installing pytest (3.5.1) """ expected = set(expected.splitlines()) output = set(io_not_decorated.fetch_output().splitlines()) diff --git a/tests/repositories/fixtures/pypi.org/json/attrs.json b/tests/repositories/fixtures/pypi.org/json/attrs.json index 1242aa45a70..aa1e27f5ff2 100644 --- a/tests/repositories/fixtures/pypi.org/json/attrs.json +++ b/tests/repositories/fixtures/pypi.org/json/attrs.json @@ -1,134 +1,25 @@ { - "info": { - "author": "Hynek Schlawack", - "author_email": "hs@ox.cx", - "bugtrack_url": null, - "classifiers": [ - "Development Status :: 5 - Production/Stable", - "Intended Audience :: Developers", - "License :: OSI Approved :: MIT License", - "Natural Language :: English", - "Operating System :: OS Independent", - "Programming Language :: Python", - "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 :: Implementation :: CPython", - "Programming Language :: Python :: Implementation :: PyPy", - "Topic :: Software Development :: Libraries :: Python Modules" - ], - "description": "", - "docs_url": null, - "download_url": "", - "downloads": { - "last_day": -1, - "last_month": -1, - "last_week": -1 - }, - "home_page": "http://www.attrs.org/", - "keywords": "class,attribute,boilerplate", - "license": "MIT", - "maintainer": "", - "maintainer_email": "", - "name": "attrs", - "package_url": "https://pypi.org/project/attrs/", - "platform": "", - "project_url": "https://pypi.org/project/attrs/", - "release_url": "https://pypi.org/project/attrs/17.4.0/", - "requires_dist": [ - "coverage; extra == 'dev'", - "hypothesis; extra == 'dev'", - "pympler; extra == 'dev'", - "pytest; extra == 'dev'", - "six; extra == 'dev'", - "zope.interface; extra == 'dev'", - "sphinx; extra == 'dev'", - "zope.interface; extra == 'dev'", - "sphinx; extra == 'docs'", - "zope.interface; extra == 'docs'", - "coverage; extra == 'tests'", - "hypothesis; extra == 'tests'", - "pympler; extra == 'tests'", - "pytest; extra == 'tests'", - "six; extra == 'tests'", - "zope.interface; extra == 'tests'" - ], - "requires_python": "", - "summary": "Classes Without Boilerplate", - "version": "17.4.0" - }, - "last_serial": 3451237, - "releases": { - "17.4.0": [ - { - "comment_text": "", - "digests": { - "md5": "5835a573b3f0316e1602dac3fd9c1daf", - "sha256": "a17a9573a6f475c99b551c0e0a812707ddda1ec9653bed04c13841404ed6f450" - }, - "downloads": -1, - "filename": "attrs-17.4.0-py2.py3-none-any.whl", - "has_sig": true, - "md5_digest": "5835a573b3f0316e1602dac3fd9c1daf", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 31658, - "upload_time": "2017-12-30T08:20:05", - "url": "https://files.pythonhosted.org/packages/b5/60/4e178c1e790fd60f1229a9b3cb2f8bc2f4cc6ff2c8838054c142c70b5adc/attrs-17.4.0-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "d7a89063b2e0fd36bd82389c4d82821d", - "sha256": "1c7960ccfd6a005cd9f7ba884e6316b5e430a3f1a6c37c5f87d8b43f83b54ec9" - }, - "downloads": -1, - "filename": "attrs-17.4.0.tar.gz", - "has_sig": true, - "md5_digest": "d7a89063b2e0fd36bd82389c4d82821d", - "packagetype": "sdist", - "python_version": "source", - "size": 97071, - "upload_time": "2017-12-30T08:20:08", - "url": "https://files.pythonhosted.org/packages/8b/0b/a06cfcb69d0cb004fde8bc6f0fd192d96d565d1b8aa2829f0f20adb796e5/attrs-17.4.0.tar.gz" - } - ] - }, - "urls": [ + "name": "attrs", + "files": [ { - "comment_text": "", - "digests": { + "filename": "attrs-17.4.0-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/b5/60/4e178c1e790fd60f1229a9b3cb2f8bc2f4cc6ff2c8838054c142c70b5adc/attrs-17.4.0-py2.py3-none-any.whl", + "hashes": { "md5": "5835a573b3f0316e1602dac3fd9c1daf", "sha256": "a17a9573a6f475c99b551c0e0a812707ddda1ec9653bed04c13841404ed6f450" - }, - "downloads": -1, - "filename": "attrs-17.4.0-py2.py3-none-any.whl", - "has_sig": true, - "md5_digest": "5835a573b3f0316e1602dac3fd9c1daf", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 31658, - "upload_time": "2017-12-30T08:20:05", - "url": "https://files.pythonhosted.org/packages/b5/60/4e178c1e790fd60f1229a9b3cb2f8bc2f4cc6ff2c8838054c142c70b5adc/attrs-17.4.0-py2.py3-none-any.whl" + } }, { - "comment_text": "", - "digests": { + "filename": "attrs-17.4.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/8b/0b/a06cfcb69d0cb004fde8bc6f0fd192d96d565d1b8aa2829f0f20adb796e5/attrs-17.4.0.tar.gz", + "hashes": { "md5": "d7a89063b2e0fd36bd82389c4d82821d", "sha256": "1c7960ccfd6a005cd9f7ba884e6316b5e430a3f1a6c37c5f87d8b43f83b54ec9" - }, - "downloads": -1, - "filename": "attrs-17.4.0.tar.gz", - "has_sig": true, - "md5_digest": "d7a89063b2e0fd36bd82389c4d82821d", - "packagetype": "sdist", - "python_version": "source", - "size": 97071, - "upload_time": "2017-12-30T08:20:08", - "url": "https://files.pythonhosted.org/packages/8b/0b/a06cfcb69d0cb004fde8bc6f0fd192d96d565d1b8aa2829f0f20adb796e5/attrs-17.4.0.tar.gz" + } } - ] + ], + "meta": { + "api-version": "1.0", + "_last-serial": 3451237 + } } diff --git a/tests/repositories/fixtures/pypi.org/json/black.json b/tests/repositories/fixtures/pypi.org/json/black.json index 17c61d29de4..3056c13cd34 100644 --- a/tests/repositories/fixtures/pypi.org/json/black.json +++ b/tests/repositories/fixtures/pypi.org/json/black.json @@ -1,146 +1,29 @@ { - "info": { - "author": "Łukasz Langa", - "author_email": "lukasz@langa.pl", - "bugtrack_url": null, - "classifiers": [ - "Development Status :: 4 - Beta", - "Environment :: Console", - "Intended Audience :: Developers", - "License :: OSI Approved :: MIT License", - "Operating System :: OS Independent", - "Programming Language :: Python", - "Programming Language :: Python :: 3.6", - "Programming Language :: Python :: 3.7", - "Programming Language :: Python :: 3.8", - "Programming Language :: Python :: 3 :: Only", - "Topic :: Software Development :: Libraries :: Python Modules", - "Topic :: Software Development :: Quality Assurance" - ], - "description": "", - "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/psf/black", - "keywords": "automation formatter yapf autopep8 pyfmt gofmt rustfmt", - "license": "MIT", - "maintainer": "", - "maintainer_email": "", - "name": "black", - "package_url": "https://pypi.org/project/black/", - "platform": "", - "project_url": "https://pypi.org/project/black/", - "project_urls": { - "Homepage": "https://github.com/psf/black" - }, - "release_url": "https://pypi.org/project/black/19.10b0/", - "requires_dist": [ - "click (>=6.5)", - "attrs (>=18.1.0)", - "appdirs", - "toml (>=0.9.4)", - "typed-ast (>=1.4.0)", - "regex", - "pathspec (<1,>=0.6)", - "aiohttp (>=3.3.2) ; extra == 'd'", - "aiohttp-cors ; extra == 'd'" - ], - "requires_python": ">=3.6", - "summary": "The uncompromising code formatter.", - "version": "19.10b0", - "yanked": false, - "yanked_reason": null - }, - "last_serial": 6044498, - "releases": { - "19.10b0": [ - { - "comment_text": "", - "digests": { - "md5": "067efd0498107b5fb2299fbfb000b0b6", - "sha256": "1b30e59be925fafc1ee4565e5e08abef6b03fe455102883820fe5ee2e4734e0b" - }, - "downloads": -1, - "filename": "black-19.10b0-py36-none-any.whl", - "has_sig": true, - "md5_digest": "067efd0498107b5fb2299fbfb000b0b6", - "packagetype": "bdist_wheel", - "python_version": "py36", - "requires_python": ">=3.6", - "size": 97525, - "upload_time": "2019-10-28T23:53:54", - "upload_time_iso_8601": "2019-10-28T23:53:54.000711Z", - "url": "https://files.pythonhosted.org/packages/fd/bb/ad34bbc93d1bea3de086d7c59e528d4a503ac8fe318bd1fa48605584c3d2/black-19.10b0-py36-none-any.whl", - "yanked": false, - "yanked_reason": null - }, - { - "comment_text": "", - "digests": { - "md5": "496632a95b73b8f5c5081d795a4e6af1", - "sha256": "c2edb73a08e9e0e6f65a0e6af18b059b8b1cdd5bef997d7a0b181df93dc81539" - }, - "downloads": -1, - "filename": "black-19.10b0.tar.gz", - "has_sig": true, - "md5_digest": "496632a95b73b8f5c5081d795a4e6af1", - "packagetype": "sdist", - "python_version": "source", - "requires_python": ">=3.6", - "size": 1019740, - "upload_time": "2019-10-28T23:54:05", - "upload_time_iso_8601": "2019-10-28T23:54:05.455213Z", - "url": "https://files.pythonhosted.org/packages/b0/dc/ecd83b973fb7b82c34d828aad621a6e5865764d52375b8ac1d7a45e23c8d/black-19.10b0.tar.gz", - "yanked": false, - "yanked_reason": null - } - ] - }, - "urls": [ + "name": "black", + "files": [ { - "comment_text": "", - "digests": { + "filename": "black-19.10b0-py36-none-any.whl", + "url": "https://files.pythonhosted.org/packages/fd/bb/ad34bbc93d1bea3de086d7c59e528d4a503ac8fe318bd1fa48605584c3d2/black-19.10b0-py36-none-any.whl", + "hashes": { "md5": "067efd0498107b5fb2299fbfb000b0b6", "sha256": "1b30e59be925fafc1ee4565e5e08abef6b03fe455102883820fe5ee2e4734e0b" }, - "downloads": -1, - "filename": "black-19.10b0-py36-none-any.whl", - "has_sig": true, - "md5_digest": "067efd0498107b5fb2299fbfb000b0b6", - "packagetype": "bdist_wheel", - "python_version": "py36", - "requires_python": ">=3.6", - "size": 97525, - "upload_time": "2019-10-28T23:53:54", - "upload_time_iso_8601": "2019-10-28T23:53:54.000711Z", - "url": "https://files.pythonhosted.org/packages/fd/bb/ad34bbc93d1bea3de086d7c59e528d4a503ac8fe318bd1fa48605584c3d2/black-19.10b0-py36-none-any.whl", - "yanked": false, - "yanked_reason": null + "requires-python": ">=3.6", + "yanked": false }, { - "comment_text": "", - "digests": { + "filename": "black-19.10b0.tar.gz", + "url": "https://files.pythonhosted.org/packages/b0/dc/ecd83b973fb7b82c34d828aad621a6e5865764d52375b8ac1d7a45e23c8d/black-19.10b0.tar.gz", + "hashes": { "md5": "496632a95b73b8f5c5081d795a4e6af1", "sha256": "c2edb73a08e9e0e6f65a0e6af18b059b8b1cdd5bef997d7a0b181df93dc81539" }, - "downloads": -1, - "filename": "black-19.10b0.tar.gz", - "has_sig": true, - "md5_digest": "496632a95b73b8f5c5081d795a4e6af1", - "packagetype": "sdist", - "python_version": "source", - "requires_python": ">=3.6", - "size": 1019740, - "upload_time": "2019-10-28T23:54:05", - "upload_time_iso_8601": "2019-10-28T23:54:05.455213Z", - "url": "https://files.pythonhosted.org/packages/b0/dc/ecd83b973fb7b82c34d828aad621a6e5865764d52375b8ac1d7a45e23c8d/black-19.10b0.tar.gz", - "yanked": false, - "yanked_reason": null + "requires-python": ">=3.6", + "yanked": false } - ] + ], + "meta": { + "api-version": "1.0", + "_last-serial": 6044498 + } } diff --git a/tests/repositories/fixtures/pypi.org/json/cachecontrol.json b/tests/repositories/fixtures/pypi.org/json/cachecontrol.json index 78a829875ff..f134f04f648 100644 --- a/tests/repositories/fixtures/pypi.org/json/cachecontrol.json +++ b/tests/repositories/fixtures/pypi.org/json/cachecontrol.json @@ -1,182 +1,58 @@ { - "info": { - "author": "Eric Larson", - "author_email": "eric@ionrock.org", - "bugtrack_url": null, - "classifiers": [ - "Development Status :: 4 - Beta", - "Environment :: Web Environment", - "License :: OSI Approved :: Apache Software License", - "Operating System :: OS Independent", - "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", - "Topic :: Internet :: WWW/HTTP" - ], - "description": "", - "description_content_type": "", - "docs_url": null, - "download_url": "", - "downloads": { - "last_day": -1, - "last_month": -1, - "last_week": -1 - }, - "home_page": "https://github.com/ionrock/cachecontrol", - "keywords": "requests http caching web", - "license": "", - "maintainer": "", - "maintainer_email": "", - "name": "CacheControl", - "package_url": "https://pypi.org/project/CacheControl/", - "platform": "", - "project_url": "https://pypi.org/project/CacheControl/", - "project_urls": { - "Homepage": "https://github.com/ionrock/cachecontrol" - }, - "release_url": "https://pypi.org/project/CacheControl/0.12.5/", - "requires_dist": null, - "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", - "summary": "httplib2 caching for requests", - "version": "0.12.5" - }, - "last_serial": 3939938, - "releases": { - "0.12.0": [ - { - "comment_text": "", - "digests": { - "md5": "807c457b3b7df9d1f23b1aad7f9c9a22", - "sha256": "ce479e88e697dc088297a5781daa2e812aa0dc888dc439602a308af6f4ff09e8" - }, - "downloads": -1, - "filename": "CacheControl-0.12.0.tar.gz", - "has_sig": false, - "md5_digest": "807c457b3b7df9d1f23b1aad7f9c9a22", - "packagetype": "sdist", - "python_version": "source", - "requires_python": null, - "size": 13815, - "upload_time": "2017-01-30T05:05:38", - "url": "https://files.pythonhosted.org/packages/41/ae/b9c375b001f13d73c0d8eba2264f6de955769f7cef9140d7fc192814255e/CacheControl-0.12.0.tar.gz" - } - ], - "0.12.1": [ - { - "comment_text": "", - "digests": { - "md5": "c6c5944d3a6f73bb752a4b4e2e1ffca5", - "sha256": "99c1506b98d53c222493e0ff65904c91aaedd7c8e235cb4f00287ddbbb597072" - }, - "downloads": -1, - "filename": "CacheControl-0.12.1.tar.gz", - "has_sig": false, - "md5_digest": "c6c5944d3a6f73bb752a4b4e2e1ffca5", - "packagetype": "sdist", - "python_version": "source", - "requires_python": null, - "size": 13939, - "upload_time": "2017-03-14T21:42:44", - "url": "https://files.pythonhosted.org/packages/3a/f7/075de886ad249f4ca08615ebd8bec9ce995ed6852790b6d9df38ae059e43/CacheControl-0.12.1.tar.gz" + "name": "CacheControl", + "files": [ + { + "filename": "CacheControl-0.12.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/41/ae/b9c375b001f13d73c0d8eba2264f6de955769f7cef9140d7fc192814255e/CacheControl-0.12.0.tar.gz", + "hashes": { + "md5": "807c457b3b7df9d1f23b1aad7f9c9a22", + "sha256": "ce479e88e697dc088297a5781daa2e812aa0dc888dc439602a308af6f4ff09e8" } - ], - "0.12.2": [ - { - "comment_text": "", - "digests": { - "md5": "38667f538f36c641eb0b00d0db145823", - "sha256": "d7d919830d7edc5f4b355fa678a2ea49e9ccb67966abc373ec20f93f3f471265" - }, - "downloads": -1, - "filename": "CacheControl-0.12.2.tar.gz", - "has_sig": false, - "md5_digest": "38667f538f36c641eb0b00d0db145823", - "packagetype": "sdist", - "python_version": "source", - "requires_python": null, - "size": 14327, - "upload_time": "2017-03-27T15:49:21", - "url": "https://files.pythonhosted.org/packages/d2/6c/221f699710a6a643bd9a4324cf22ffb9fb73a089d2bfbed5fe4694f3caaf/CacheControl-0.12.2.tar.gz" + }, + { + "filename": "CacheControl-0.12.1.tar.gz", + "url": "https://files.pythonhosted.org/packages/3a/f7/075de886ad249f4ca08615ebd8bec9ce995ed6852790b6d9df38ae059e43/CacheControl-0.12.1.tar.gz", + "hashes": { + "md5": "c6c5944d3a6f73bb752a4b4e2e1ffca5", + "sha256": "99c1506b98d53c222493e0ff65904c91aaedd7c8e235cb4f00287ddbbb597072" } - ], - "0.12.3": [ - { - "comment_text": "", - "digests": { - "md5": "45bf98a2e3435438dcee89e519b34195", - "sha256": "a9fc50e216c7c101f4ec4312f012dea501c2859cb256c7a68186a172ab71f632" - }, - "downloads": -1, - "filename": "CacheControl-0.12.3.tar.gz", - "has_sig": false, - "md5_digest": "45bf98a2e3435438dcee89e519b34195", - "packagetype": "sdist", - "python_version": "source", - "requires_python": null, - "size": 14345, - "upload_time": "2017-05-25T13:49:06", - "url": "https://files.pythonhosted.org/packages/a3/b3/6bb6c1535a283f01fe0c4e9644784756fee2ec080e2a6097f1c59325609e/CacheControl-0.12.3.tar.gz" + }, + { + "filename": "CacheControl-0.12.2.tar.gz", + "url": "https://files.pythonhosted.org/packages/d2/6c/221f699710a6a643bd9a4324cf22ffb9fb73a089d2bfbed5fe4694f3caaf/CacheControl-0.12.2.tar.gz", + "hashes": { + "md5": "38667f538f36c641eb0b00d0db145823", + "sha256": "d7d919830d7edc5f4b355fa678a2ea49e9ccb67966abc373ec20f93f3f471265" } - ], - "0.12.4": [ - { - "comment_text": "", - "digests": { - "md5": "464675fc575b3a0b841598cb916be516", - "sha256": "a7d21ba4e3633d95ac9fed5be205ee6d1da36bdc4b8914eb7a57ff50b7e5628c" - }, - "downloads": -1, - "filename": "CacheControl-0.12.4.tar.gz", - "has_sig": false, - "md5_digest": "464675fc575b3a0b841598cb916be516", - "packagetype": "sdist", - "python_version": "source", - "requires_python": null, - "size": 14471, - "upload_time": "2018-01-27T06:24:40", - "url": "https://files.pythonhosted.org/packages/98/f5/76619a63f0e4a1d2f5a1792ebc233a395c648c63d3461dc0331479ef120a/CacheControl-0.12.4.tar.gz" + }, + { + "filename": "CacheControl-0.12.3.tar.gz", + "url": "https://files.pythonhosted.org/packages/a3/b3/6bb6c1535a283f01fe0c4e9644784756fee2ec080e2a6097f1c59325609e/CacheControl-0.12.3.tar.gz", + "hashes": { + "md5": "45bf98a2e3435438dcee89e519b34195", + "sha256": "a9fc50e216c7c101f4ec4312f012dea501c2859cb256c7a68186a172ab71f632" } - ], - "0.12.5": [ - { - "comment_text": "", - "digests": { - "md5": "f1baef403e8dd68c5a203e2eb23a0f2e", - "sha256": "cef77effdf51b43178f6a2d3b787e3734f98ade253fa3187f3bb7315aaa42ff7" - }, - "downloads": -1, - "filename": "CacheControl-0.12.5.tar.gz", - "has_sig": false, - "md5_digest": "f1baef403e8dd68c5a203e2eb23a0f2e", - "packagetype": "sdist", - "python_version": "source", - "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", - "size": 14383, - "upload_time": "2018-06-07T14:53:13", - "url": "https://files.pythonhosted.org/packages/5e/f0/2c193ed1f17c97ae539da7e1c2d48b80d8cccb1917163b26a91ca4355aa6/CacheControl-0.12.5.tar.gz" + }, + { + "filename": "CacheControl-0.12.4.tar.gz", + "url": "https://files.pythonhosted.org/packages/98/f5/76619a63f0e4a1d2f5a1792ebc233a395c648c63d3461dc0331479ef120a/CacheControl-0.12.4.tar.gz", + "hashes": { + "md5": "464675fc575b3a0b841598cb916be516", + "sha256": "a7d21ba4e3633d95ac9fed5be205ee6d1da36bdc4b8914eb7a57ff50b7e5628c" } - ] - }, - "urls": [ + }, { - "comment_text": "", - "digests": { + "filename": "CacheControl-0.12.5.tar.gz", + "url": "https://files.pythonhosted.org/packages/5e/f0/2c193ed1f17c97ae539da7e1c2d48b80d8cccb1917163b26a91ca4355aa6/CacheControl-0.12.5.tar.gz", + "hashes": { "md5": "f1baef403e8dd68c5a203e2eb23a0f2e", "sha256": "cef77effdf51b43178f6a2d3b787e3734f98ade253fa3187f3bb7315aaa42ff7" }, - "downloads": -1, - "filename": "CacheControl-0.12.5.tar.gz", - "has_sig": false, - "md5_digest": "f1baef403e8dd68c5a203e2eb23a0f2e", - "packagetype": "sdist", - "python_version": "source", - "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", - "size": 14383, - "upload_time": "2018-06-07T14:53:13", - "url": "https://files.pythonhosted.org/packages/5e/f0/2c193ed1f17c97ae539da7e1c2d48b80d8cccb1917163b26a91ca4355aa6/CacheControl-0.12.5.tar.gz" + "requires-python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" } - ] + ], + "meta": { + "api-version": "1.0", + "_last-serial": 3939938 + } } diff --git a/tests/repositories/fixtures/pypi.org/json/clikit.json b/tests/repositories/fixtures/pypi.org/json/clikit.json index 645d42563c9..ea10b9cee34 100644 --- a/tests/repositories/fixtures/pypi.org/json/clikit.json +++ b/tests/repositories/fixtures/pypi.org/json/clikit.json @@ -1,122 +1,27 @@ { - "info": { - "author": "Sébastien Eustace", - "author_email": "sebastien@eustace.io", - "bugtrack_url": null, - "classifiers": [ - "License :: OSI Approved :: MIT License", - "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": "", - "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/sdispater/clikit", - "keywords": "packaging,dependency,poetry", - "license": "MIT", - "maintainer": "Sébastien Eustace", - "maintainer_email": "sebastien@eustace.io", - "name": "clikit", - "package_url": "https://pypi.org/project/clikit/", - "platform": "", - "project_url": "https://pypi.org/project/clikit/", - "project_urls": { - "Homepage": "https://github.com/sdispater/clikit", - "Repository": "https://github.com/sdispater/clikit" - }, - "release_url": "https://pypi.org/project/clikit/0.2.4/", - "requires_dist": [ - "pastel (>=0.1.0,<0.2.0)", - "pylev (>=1.3,<2.0)" - ], - "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", - "summary": "CliKit is a group of utilities to build beautiful and testable command line interfaces.", - "version": "0.2.4" - }, - "last_serial": 5256718, - "releases": { - "0.2.4": [ - { - "comment_text": "", - "digests": { - "md5": "280f18c82d0810c9b5ca11380529c04c", - "sha256": "a7597999555aeb2ce9946f07187f690ab6864213f337e51250178c4bd19bd810" - }, - "downloads": -1, - "filename": "clikit-0.2.4-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "280f18c82d0810c9b5ca11380529c04c", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", - "size": 85786, - "upload_time": "2019-05-11T17:09:23", - "url": "https://files.pythonhosted.org/packages/7b/0d/bb4c8a2d0edca8c300373ed736fb4680cf73be5be2ff84544dee5f979c14/clikit-0.2.4-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "2543daad83b072e960ded5f68074a443", - "sha256": "d6807cf4a41e6b981b056075c0aefca2db1dabc597ed18fa4d92b8b2e2678835" - }, - "downloads": -1, - "filename": "clikit-0.2.4.tar.gz", - "has_sig": false, - "md5_digest": "2543daad83b072e960ded5f68074a443", - "packagetype": "sdist", - "python_version": "source", - "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", - "size": 50980, - "upload_time": "2019-05-11T17:09:25", - "url": "https://files.pythonhosted.org/packages/c5/33/14fad4c82f256b0ef60dd25d4b6d8145b463da5274fd9cd842f06af318ed/clikit-0.2.4.tar.gz" - } - ] - }, - "urls": [ + "name": "clikit", + "files": [ { - "comment_text": "", - "digests": { + "filename": "clikit-0.2.4-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/7b/0d/bb4c8a2d0edca8c300373ed736fb4680cf73be5be2ff84544dee5f979c14/clikit-0.2.4-py2.py3-none-any.whl", + "hashes": { "md5": "280f18c82d0810c9b5ca11380529c04c", "sha256": "a7597999555aeb2ce9946f07187f690ab6864213f337e51250178c4bd19bd810" }, - "downloads": -1, - "filename": "clikit-0.2.4-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "280f18c82d0810c9b5ca11380529c04c", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", - "size": 85786, - "upload_time": "2019-05-11T17:09:23", - "url": "https://files.pythonhosted.org/packages/7b/0d/bb4c8a2d0edca8c300373ed736fb4680cf73be5be2ff84544dee5f979c14/clikit-0.2.4-py2.py3-none-any.whl" + "requires-python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" }, { - "comment_text": "", - "digests": { + "filename": "clikit-0.2.4.tar.gz", + "url": "https://files.pythonhosted.org/packages/c5/33/14fad4c82f256b0ef60dd25d4b6d8145b463da5274fd9cd842f06af318ed/clikit-0.2.4.tar.gz", + "hashes": { "md5": "2543daad83b072e960ded5f68074a443", "sha256": "d6807cf4a41e6b981b056075c0aefca2db1dabc597ed18fa4d92b8b2e2678835" }, - "downloads": -1, - "filename": "clikit-0.2.4.tar.gz", - "has_sig": false, - "md5_digest": "2543daad83b072e960ded5f68074a443", - "packagetype": "sdist", - "python_version": "source", - "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", - "size": 50980, - "upload_time": "2019-05-11T17:09:25", - "url": "https://files.pythonhosted.org/packages/c5/33/14fad4c82f256b0ef60dd25d4b6d8145b463da5274fd9cd842f06af318ed/clikit-0.2.4.tar.gz" + "requires-python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" } - ] + ], + "meta": { + "api-version": "1.0", + "_last-serial": 5256718 + } } diff --git a/tests/repositories/fixtures/pypi.org/json/clikit/0.2.4.json b/tests/repositories/fixtures/pypi.org/json/clikit/0.2.4.json new file mode 100644 index 00000000000..633cf18be8c --- /dev/null +++ b/tests/repositories/fixtures/pypi.org/json/clikit/0.2.4.json @@ -0,0 +1,95 @@ +{ + "info": { + "author": "Sébastien Eustace", + "author_email": "sebastien@eustace.io", + "bugtrack_url": null, + "classifiers": [ + "License :: OSI Approved :: MIT License", + "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": "# CliKit\n\nCliKit is a group of utilities to build beautiful and testable command line interfaces.\n\nThis is at the core of [Cleo](https://github.com/sdispater/cleo).\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/sdispater/clikit", + "keywords": "packaging,dependency,poetry", + "license": "MIT", + "maintainer": "Sébastien Eustace", + "maintainer_email": "sebastien@eustace.io", + "name": "clikit", + "package_url": "https://pypi.org/project/clikit/", + "platform": "", + "project_url": "https://pypi.org/project/clikit/", + "project_urls": { + "Homepage": "https://github.com/sdispater/clikit", + "Repository": "https://github.com/sdispater/clikit" + }, + "release_url": "https://pypi.org/project/clikit/0.2.4/", + "requires_dist": [ + "enum34 (>=1.1,<2.0); python_version >= \"2.7\" and python_version < \"2.8\"", + "typing (>=3.6,<4.0); python_version >= \"2.7\" and python_version < \"2.8\" or python_version >= \"3.4\" and python_version < \"3.5\"", + "pylev (>=1.3,<2.0)", + "pastel (>=0.1.0,<0.2.0)" + ], + "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", + "summary": "CliKit is a group of utilities to build beautiful and testable command line interfaces.", + "version": "0.2.4", + "yanked": false, + "yanked_reason": null + }, + "last_serial": 7436676, + "urls": [ + { + "comment_text": "", + "digests": { + "md5": "280f18c82d0810c9b5ca11380529c04c", + "sha256": "a7597999555aeb2ce9946f07187f690ab6864213f337e51250178c4bd19bd810" + }, + "downloads": -1, + "filename": "clikit-0.2.4-py2.py3-none-any.whl", + "has_sig": false, + "md5_digest": "280f18c82d0810c9b5ca11380529c04c", + "packagetype": "bdist_wheel", + "python_version": "py2.py3", + "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", + "size": 85786, + "upload_time": "2019-05-11T17:09:23", + "upload_time_iso_8601": "2019-05-11T17:09:23.516387Z", + "url": "https://files.pythonhosted.org/packages/7b/0d/bb4c8a2d0edca8c300373ed736fb4680cf73be5be2ff84544dee5f979c14/clikit-0.2.4-py2.py3-none-any.whl", + "yanked": false, + "yanked_reason": null + }, + { + "comment_text": "", + "digests": { + "md5": "2543daad83b072e960ded5f68074a443", + "sha256": "d6807cf4a41e6b981b056075c0aefca2db1dabc597ed18fa4d92b8b2e2678835" + }, + "downloads": -1, + "filename": "clikit-0.2.4.tar.gz", + "has_sig": false, + "md5_digest": "2543daad83b072e960ded5f68074a443", + "packagetype": "sdist", + "python_version": "source", + "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", + "size": 50980, + "upload_time": "2019-05-11T17:09:25", + "upload_time_iso_8601": "2019-05-11T17:09:25.865051Z", + "url": "https://files.pythonhosted.org/packages/c5/33/14fad4c82f256b0ef60dd25d4b6d8145b463da5274fd9cd842f06af318ed/clikit-0.2.4.tar.gz", + "yanked": false, + "yanked_reason": null + } + ], + "vulnerabilities": [] +} diff --git a/tests/repositories/fixtures/pypi.org/json/colorama.json b/tests/repositories/fixtures/pypi.org/json/colorama.json index 5417b41abcc..62320e74c64 100644 --- a/tests/repositories/fixtures/pypi.org/json/colorama.json +++ b/tests/repositories/fixtures/pypi.org/json/colorama.json @@ -1,118 +1,25 @@ { - "info": { - "author": "Arnon Yaari", - "author_email": "tartley@tartley.com", - "bugtrack_url": null, - "classifiers": [ - "Development Status :: 5 - Production/Stable", - "Environment :: Console", - "Intended Audience :: Developers", - "License :: OSI Approved :: BSD License", - "Operating System :: OS Independent", - "Programming Language :: Python :: 2", - "Programming Language :: Python :: 2.5", - "Programming Language :: Python :: 2.6", - "Programming Language :: Python :: 2.7", - "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.1", - "Programming Language :: Python :: 3.2", - "Programming Language :: Python :: 3.3", - "Programming Language :: Python :: 3.4", - "Programming Language :: Python :: 3.5", - "Topic :: Terminals" - ], - "description": "", - "docs_url": null, - "download_url": "UNKNOWN", - "downloads": { - "last_day": -1, - "last_month": -1, - "last_week": -1 - }, - "home_page": "https://github.com/tartley/colorama", - "keywords": "color colour terminal text ansi windows crossplatform xplatform", - "license": "BSD", - "maintainer": null, - "maintainer_email": null, - "name": "colorama", - "package_url": "https://pypi.org/project/colorama/", - "platform": "UNKNOWN", - "project_url": "https://pypi.org/project/colorama/", - "release_url": "https://pypi.org/project/colorama/0.3.9/", - "requires_dist": null, - "requires_python": null, - "summary": "Cross-platform colored terminal text.", - "version": "0.3.9" - }, - "last_serial": 2833818, - "releases": { - "0.3.9": [ - { - "comment_text": "", - "digests": { - "md5": "cc0c01c7b3b34d0354d813e9ab26aca3", - "sha256": "463f8483208e921368c9f306094eb6f725c6ca42b0f97e313cb5d5512459feda" - }, - "downloads": -1, - "filename": "colorama-0.3.9-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "cc0c01c7b3b34d0354d813e9ab26aca3", - "packagetype": "bdist_wheel", - "python_version": "2.7", - "size": 20181, - "upload_time": "2017-04-27T07:12:36", - "url": "https://files.pythonhosted.org/packages/db/c8/7dcf9dbcb22429512708fe3a547f8b6101c0d02137acbd892505aee57adf/colorama-0.3.9-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "3a0e415259690f4dd7455c2683ee5850", - "sha256": "48eb22f4f8461b1df5734a074b57042430fb06e1d61bd1e11b078c0fe6d7a1f1" - }, - "downloads": -1, - "filename": "colorama-0.3.9.tar.gz", - "has_sig": false, - "md5_digest": "3a0e415259690f4dd7455c2683ee5850", - "packagetype": "sdist", - "python_version": "source", - "size": 25053, - "upload_time": "2017-04-27T07:12:12", - "url": "https://files.pythonhosted.org/packages/e6/76/257b53926889e2835355d74fec73d82662100135293e17d382e2b74d1669/colorama-0.3.9.tar.gz" - } - ] - }, - "urls": [ + "name": "colorama", + "files": [ { - "comment_text": "", - "digests": { + "filename": "colorama-0.3.9-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/db/c8/7dcf9dbcb22429512708fe3a547f8b6101c0d02137acbd892505aee57adf/colorama-0.3.9-py2.py3-none-any.whl", + "hashes": { "md5": "cc0c01c7b3b34d0354d813e9ab26aca3", "sha256": "463f8483208e921368c9f306094eb6f725c6ca42b0f97e313cb5d5512459feda" - }, - "downloads": -1, - "filename": "colorama-0.3.9-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "cc0c01c7b3b34d0354d813e9ab26aca3", - "packagetype": "bdist_wheel", - "python_version": "2.7", - "size": 20181, - "upload_time": "2017-04-27T07:12:36", - "url": "https://files.pythonhosted.org/packages/db/c8/7dcf9dbcb22429512708fe3a547f8b6101c0d02137acbd892505aee57adf/colorama-0.3.9-py2.py3-none-any.whl" + } }, { - "comment_text": "", - "digests": { + "filename": "colorama-0.3.9.tar.gz", + "url": "https://files.pythonhosted.org/packages/e6/76/257b53926889e2835355d74fec73d82662100135293e17d382e2b74d1669/colorama-0.3.9.tar.gz", + "hashes": { "md5": "3a0e415259690f4dd7455c2683ee5850", "sha256": "48eb22f4f8461b1df5734a074b57042430fb06e1d61bd1e11b078c0fe6d7a1f1" - }, - "downloads": -1, - "filename": "colorama-0.3.9.tar.gz", - "has_sig": false, - "md5_digest": "3a0e415259690f4dd7455c2683ee5850", - "packagetype": "sdist", - "python_version": "source", - "size": 25053, - "upload_time": "2017-04-27T07:12:12", - "url": "https://files.pythonhosted.org/packages/e6/76/257b53926889e2835355d74fec73d82662100135293e17d382e2b74d1669/colorama-0.3.9.tar.gz" + } } - ] + ], + "meta": { + "api-version": "1.0", + "_last-serial": 2833818 + } } diff --git a/tests/repositories/fixtures/pypi.org/json/funcsigs.json b/tests/repositories/fixtures/pypi.org/json/funcsigs.json index 9ee371c2a40..2b42d6bee3e 100644 --- a/tests/repositories/fixtures/pypi.org/json/funcsigs.json +++ b/tests/repositories/fixtures/pypi.org/json/funcsigs.json @@ -1,117 +1,25 @@ { - "info": { - "author": "Testing Cabal", - "author_email": "testing-in-python@lists.idyll.org", - "bugtrack_url": null, - "classifiers": [ - "Development Status :: 4 - Beta", - "Intended Audience :: Developers", - "License :: OSI Approved :: Apache Software License", - "Operating System :: OS Independent", - "Programming Language :: Python", - "Programming Language :: Python :: 2", - "Programming Language :: Python :: 2.6", - "Programming Language :: Python :: 2.7", - "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.3", - "Programming Language :: Python :: 3.4", - "Programming Language :: Python :: 3.5", - "Programming Language :: Python :: Implementation :: CPython", - "Programming Language :: Python :: Implementation :: PyPy", - "Topic :: Software Development :: Libraries :: Python Modules" - ], - "description": "", - "docs_url": null, - "download_url": "UNKNOWN", - "downloads": { - "last_day": -1, - "last_month": -1, - "last_week": -1 - }, - "home_page": "http://funcsigs.readthedocs.org", - "keywords": null, - "license": "ASL", - "maintainer": null, - "maintainer_email": null, - "name": "funcsigs", - "package_url": "https://pypi.org/project/funcsigs/", - "platform": "UNKNOWN", - "project_url": "https://pypi.org/project/funcsigs/", - "release_url": "https://pypi.org/project/funcsigs/1.0.2/", - "requires_dist": null, - "requires_python": null, - "summary": "Python function signatures from PEP362 for Python 2.6, 2.7 and 3.2+", - "version": "1.0.2" - }, - "last_serial": 2083703, - "releases": { - "1.0.2": [ - { - "comment_text": "", - "digests": { - "md5": "701d58358171f34b6d1197de2923a35a", - "sha256": "330cc27ccbf7f1e992e69fef78261dc7c6569012cf397db8d3de0234e6c937ca" - }, - "downloads": -1, - "filename": "funcsigs-1.0.2-py2.py3-none-any.whl", - "has_sig": true, - "md5_digest": "701d58358171f34b6d1197de2923a35a", - "packagetype": "bdist_wheel", - "python_version": "2.7", - "size": 17697, - "upload_time": "2016-04-25T22:22:05", - "url": "https://files.pythonhosted.org/packages/69/cb/f5be453359271714c01b9bd06126eaf2e368f1fddfff30818754b5ac2328/funcsigs-1.0.2-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "7e583285b1fb8a76305d6d68f4ccc14e", - "sha256": "a7bb0f2cf3a3fd1ab2732cb49eba4252c2af4240442415b4abce3b87022a8f50" - }, - "downloads": -1, - "filename": "funcsigs-1.0.2.tar.gz", - "has_sig": true, - "md5_digest": "7e583285b1fb8a76305d6d68f4ccc14e", - "packagetype": "sdist", - "python_version": "source", - "size": 27947, - "upload_time": "2016-04-25T22:22:33", - "url": "https://files.pythonhosted.org/packages/94/4a/db842e7a0545de1cdb0439bb80e6e42dfe82aaeaadd4072f2263a4fbed23/funcsigs-1.0.2.tar.gz" - } - ] - }, - "urls": [ + "name": "funcsigs", + "files": [ { - "comment_text": "", - "digests": { + "filename": "funcsigs-1.0.2-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/69/cb/f5be453359271714c01b9bd06126eaf2e368f1fddfff30818754b5ac2328/funcsigs-1.0.2-py2.py3-none-any.whl", + "hashes": { "md5": "701d58358171f34b6d1197de2923a35a", "sha256": "330cc27ccbf7f1e992e69fef78261dc7c6569012cf397db8d3de0234e6c937ca" - }, - "downloads": -1, - "filename": "funcsigs-1.0.2-py2.py3-none-any.whl", - "has_sig": true, - "md5_digest": "701d58358171f34b6d1197de2923a35a", - "packagetype": "bdist_wheel", - "python_version": "2.7", - "size": 17697, - "upload_time": "2016-04-25T22:22:05", - "url": "https://files.pythonhosted.org/packages/69/cb/f5be453359271714c01b9bd06126eaf2e368f1fddfff30818754b5ac2328/funcsigs-1.0.2-py2.py3-none-any.whl" + } }, { - "comment_text": "", - "digests": { + "filename": "funcsigs-1.0.2.tar.gz", + "url": "https://files.pythonhosted.org/packages/94/4a/db842e7a0545de1cdb0439bb80e6e42dfe82aaeaadd4072f2263a4fbed23/funcsigs-1.0.2.tar.gz", + "hashes": { "md5": "7e583285b1fb8a76305d6d68f4ccc14e", "sha256": "a7bb0f2cf3a3fd1ab2732cb49eba4252c2af4240442415b4abce3b87022a8f50" - }, - "downloads": -1, - "filename": "funcsigs-1.0.2.tar.gz", - "has_sig": true, - "md5_digest": "7e583285b1fb8a76305d6d68f4ccc14e", - "packagetype": "sdist", - "python_version": "source", - "size": 27947, - "upload_time": "2016-04-25T22:22:33", - "url": "https://files.pythonhosted.org/packages/94/4a/db842e7a0545de1cdb0439bb80e6e42dfe82aaeaadd4072f2263a4fbed23/funcsigs-1.0.2.tar.gz" + } } - ] + ], + "meta": { + "api-version": "1.0", + "_last-serial": 2083703 + } } diff --git a/tests/repositories/fixtures/pypi.org/json/isort.json b/tests/repositories/fixtures/pypi.org/json/isort.json index 7a6fdc7294f..cef290e0f1c 100644 --- a/tests/repositories/fixtures/pypi.org/json/isort.json +++ b/tests/repositories/fixtures/pypi.org/json/isort.json @@ -1,160 +1,33 @@ { - "info": { - "author": "Timothy Crosley", - "author_email": "timothy.crosley@gmail.com", - "bugtrack_url": null, - "classifiers": [ - "Development Status :: 6 - Mature", - "Environment :: Console", - "Intended Audience :: Developers", - "License :: OSI Approved :: MIT License", - "Natural Language :: English", - "Programming Language :: Python", - "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 :: Implementation :: CPython", - "Programming Language :: Python :: Implementation :: PyPy", - "Topic :: Software Development :: Libraries", - "Topic :: Utilities" - ], - "description": "", - "description_content_type": null, - "docs_url": null, - "download_url": "", - "downloads": { - "last_day": -1, - "last_month": -1, - "last_week": -1 - }, - "home_page": "https://github.com/timothycrosley/isort", - "keywords": "Refactor", - "license": "MIT", - "maintainer": "", - "maintainer_email": "", - "name": "isort", - "package_url": "https://pypi.org/project/isort/", - "platform": "", - "project_url": "https://pypi.org/project/isort/", - "project_urls": { - "Homepage": "https://github.com/timothycrosley/isort" - }, - "release_url": "https://pypi.org/project/isort/4.3.4/", - "requires_dist": null, - "requires_python": "", - "summary": "A Python utility / library to sort Python imports.", - "version": "4.3.4" - }, - "last_serial": 3575149, - "releases": { - "4.3.4": [ - { - "comment_text": "", - "digests": { - "md5": "f0ad7704b6dc947073398ba290c3517f", - "sha256": "ec9ef8f4a9bc6f71eec99e1806bfa2de401650d996c59330782b89a5555c1497" - }, - "downloads": -1, - "filename": "isort-4.3.4-py2-none-any.whl", - "has_sig": false, - "md5_digest": "f0ad7704b6dc947073398ba290c3517f", - "packagetype": "bdist_wheel", - "python_version": "2.7", - "requires_python": null, - "size": 45393, - "upload_time": "2018-02-12T15:06:38", - "url": "https://files.pythonhosted.org/packages/41/d8/a945da414f2adc1d9e2f7d6e7445b27f2be42766879062a2e63616ad4199/isort-4.3.4-py2-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "fbaac4cd669ac21ea9e21ab1ea3180db", - "sha256": "1153601da39a25b14ddc54955dbbacbb6b2d19135386699e2ad58517953b34af" - }, - "downloads": -1, - "filename": "isort-4.3.4-py3-none-any.whl", - "has_sig": false, - "md5_digest": "fbaac4cd669ac21ea9e21ab1ea3180db", - "packagetype": "bdist_wheel", - "python_version": "3.6", - "requires_python": null, - "size": 45352, - "upload_time": "2018-02-12T15:06:20", - "url": "https://files.pythonhosted.org/packages/1f/2c/22eee714d7199ae0464beda6ad5fedec8fee6a2f7ffd1e8f1840928fe318/isort-4.3.4-py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "fb554e9c8f9aa76e333a03d470a5cf52", - "sha256": "b9c40e9750f3d77e6e4d441d8b0266cf555e7cdabdcff33c4fd06366ca761ef8" - }, - "downloads": -1, - "filename": "isort-4.3.4.tar.gz", - "has_sig": false, - "md5_digest": "fb554e9c8f9aa76e333a03d470a5cf52", - "packagetype": "sdist", - "python_version": "source", - "requires_python": null, - "size": 56070, - "upload_time": "2018-02-12T15:06:16", - "url": "https://files.pythonhosted.org/packages/b1/de/a628d16fdba0d38cafb3d7e34d4830f2c9cb3881384ce5c08c44762e1846/isort-4.3.4.tar.gz" - } - ] - }, - "urls": [ + "name": "isort", + "files": [ { - "comment_text": "", - "digests": { + "filename": "isort-4.3.4-py2-none-any.whl", + "url": "https://files.pythonhosted.org/packages/41/d8/a945da414f2adc1d9e2f7d6e7445b27f2be42766879062a2e63616ad4199/isort-4.3.4-py2-none-any.whl", + "hashes": { "md5": "f0ad7704b6dc947073398ba290c3517f", "sha256": "ec9ef8f4a9bc6f71eec99e1806bfa2de401650d996c59330782b89a5555c1497" - }, - "downloads": -1, - "filename": "isort-4.3.4-py2-none-any.whl", - "has_sig": false, - "md5_digest": "f0ad7704b6dc947073398ba290c3517f", - "packagetype": "bdist_wheel", - "python_version": "2.7", - "requires_python": null, - "size": 45393, - "upload_time": "2018-02-12T15:06:38", - "url": "https://files.pythonhosted.org/packages/41/d8/a945da414f2adc1d9e2f7d6e7445b27f2be42766879062a2e63616ad4199/isort-4.3.4-py2-none-any.whl" + } }, { - "comment_text": "", - "digests": { + "filename": "isort-4.3.4-py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/1f/2c/22eee714d7199ae0464beda6ad5fedec8fee6a2f7ffd1e8f1840928fe318/isort-4.3.4-py3-none-any.whl", + "hashes": { "md5": "fbaac4cd669ac21ea9e21ab1ea3180db", "sha256": "1153601da39a25b14ddc54955dbbacbb6b2d19135386699e2ad58517953b34af" - }, - "downloads": -1, - "filename": "isort-4.3.4-py3-none-any.whl", - "has_sig": false, - "md5_digest": "fbaac4cd669ac21ea9e21ab1ea3180db", - "packagetype": "bdist_wheel", - "python_version": "3.6", - "requires_python": null, - "size": 45352, - "upload_time": "2018-02-12T15:06:20", - "url": "https://files.pythonhosted.org/packages/1f/2c/22eee714d7199ae0464beda6ad5fedec8fee6a2f7ffd1e8f1840928fe318/isort-4.3.4-py3-none-any.whl" + } }, { - "comment_text": "", - "digests": { + "filename": "isort-4.3.4.tar.gz", + "url": "https://files.pythonhosted.org/packages/b1/de/a628d16fdba0d38cafb3d7e34d4830f2c9cb3881384ce5c08c44762e1846/isort-4.3.4.tar.gz", + "hashes": { "md5": "fb554e9c8f9aa76e333a03d470a5cf52", "sha256": "b9c40e9750f3d77e6e4d441d8b0266cf555e7cdabdcff33c4fd06366ca761ef8" - }, - "downloads": -1, - "filename": "isort-4.3.4.tar.gz", - "has_sig": false, - "md5_digest": "fb554e9c8f9aa76e333a03d470a5cf52", - "packagetype": "sdist", - "python_version": "source", - "requires_python": null, - "size": 56070, - "upload_time": "2018-02-12T15:06:16", - "url": "https://files.pythonhosted.org/packages/b1/de/a628d16fdba0d38cafb3d7e34d4830f2c9cb3881384ce5c08c44762e1846/isort-4.3.4.tar.gz" + } } - ] + ], + "meta": { + "api-version": "1.0", + "_last-serial": 3575149 + } } diff --git a/tests/repositories/fixtures/pypi.org/json/isort/4.3.4.json b/tests/repositories/fixtures/pypi.org/json/isort/4.3.4.json new file mode 100644 index 00000000000..e08ac7272a5 --- /dev/null +++ b/tests/repositories/fixtures/pypi.org/json/isort/4.3.4.json @@ -0,0 +1,117 @@ +{ + "info": { + "author": "Timothy Crosley", + "author_email": "timothy.crosley@gmail.com", + "bugtrack_url": null, + "classifiers": [ + "Development Status :: 6 - Mature", + "Environment :: Console", + "Intended Audience :: Developers", + "License :: OSI Approved :: MIT License", + "Natural Language :: English", + "Programming Language :: Python", + "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 :: Implementation :: CPython", + "Programming Language :: Python :: Implementation :: PyPy", + "Topic :: Software Development :: Libraries", + "Topic :: Utilities" + ], + "description": ".. image:: https://raw.github.com/timothycrosley/isort/master/logo.png\n :alt: isort\n\n########\n\n.. image:: https://badge.fury.io/py/isort.svg\n :target: https://badge.fury.io/py/isort\n :alt: PyPI version\n\n.. image:: https://travis-ci.org/timothycrosley/isort.svg?branch=master\n :target: https://travis-ci.org/timothycrosley/isort\n :alt: Build Status\n\n\n.. image:: https://coveralls.io/repos/timothycrosley/isort/badge.svg?branch=release%2F2.6.0&service=github\n :target: https://coveralls.io/github/timothycrosley/isort?branch=release%2F2.6.0\n :alt: Coverage\n\n.. image:: https://img.shields.io/github/license/mashape/apistatus.svg\n :target: https://pypi.python.org/pypi/hug/\n :alt: License\n\n.. image:: https://badges.gitter.im/Join%20Chat.svg\n :alt: Join the chat at https://gitter.im/timothycrosley/isort\n :target: https://gitter.im/timothycrosley/isort?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge\n\n\nisort your python imports for you so you don't have to.\n\nisort is a Python utility / library to sort imports alphabetically, and automatically separated into sections.\nIt provides a command line utility, Python library and `plugins for various editors `_ to quickly sort all your imports.\nIt currently cleanly supports Python 2.7 - 3.6 without any dependencies.\n\n.. image:: https://raw.github.com/timothycrosley/isort/develop/example.gif\n :alt: Example Usage\n\nBefore isort:\n\n.. code-block:: python\n\n from my_lib import Object\n\n print(\"Hey\")\n\n import os\n\n from my_lib import Object3\n\n from my_lib import Object2\n\n import sys\n\n from third_party import lib15, lib1, lib2, lib3, lib4, lib5, lib6, lib7, lib8, lib9, lib10, lib11, lib12, lib13, lib14\n\n import sys\n\n from __future__ import absolute_import\n\n from third_party import lib3\n\n print(\"yo\")\n\nAfter isort:\n\n.. code-block:: python\n\n from __future__ import absolute_import\n\n import os\n import sys\n\n from third_party import (lib1, lib2, lib3, lib4, lib5, lib6, lib7, lib8,\n lib9, lib10, lib11, lib12, lib13, lib14, lib15)\n\n from my_lib import Object, Object2, Object3\n\n print(\"Hey\")\n print(\"yo\")\n\nInstalling isort\n================\n\nInstalling isort is as simple as:\n\n.. code-block:: bash\n\n pip install isort\n\nor if you prefer\n\n.. code-block:: bash\n\n easy_install isort\n\nUsing isort\n===========\n\n**From the command line**:\n\n.. code-block:: bash\n\n isort mypythonfile.py mypythonfile2.py\n\nor recursively:\n\n.. code-block:: bash\n\n isort -rc .\n\n*which is equivalent to:*\n\n.. code-block:: bash\n\n isort **/*.py\n\nor to see the proposed changes without applying them:\n\n.. code-block:: bash\n\n isort mypythonfile.py --diff\n\nFinally, to atomically run isort against a project, only applying changes if they don't introduce syntax errors do:\n\n.. code-block:: bash\n\n isort -rc --atomic .\n\n(Note: this is disabled by default as it keeps isort from being able to run against code written using a different version of Python)\n\n**From within Python**:\n\n.. code-block:: bash\n\n from isort import SortImports\n\n SortImports(\"pythonfile.py\")\n\nor:\n\n.. code-block:: bash\n\n from isort import SortImports\n\n new_contents = SortImports(file_contents=old_contents).output\n\n**From within Kate:**\n\n.. code-block:: bash\n\n ctrl+[\n\nor:\n\n.. code-block:: bash\n\n menu > Python > Sort Imports\n\nInstalling isort's Kate plugin\n==============================\n\nFor KDE 4.13+ / Pate 2.0+:\n\n.. code-block:: bash\n\n wget https://raw.github.com/timothycrosley/isort/master/kate_plugin/isort_plugin.py --output-document ~/.kde/share/apps/kate/pate/isort_plugin.py\n wget https://raw.github.com/timothycrosley/isort/master/kate_plugin/isort_plugin_ui.rc --output-document ~/.kde/share/apps/kate/pate/isort_plugin_ui.rc\n wget https://raw.github.com/timothycrosley/isort/master/kate_plugin/katepart_isort.desktop --output-document ~/.kde/share/kde4/services/katepart_isort.desktop\n\nFor all older versions:\n\n.. code-block:: bash\n\n wget https://raw.github.com/timothycrosley/isort/master/kate_plugin/isort_plugin_old.py --output-document ~/.kde/share/apps/kate/pate/isort_plugin.py\n\nYou will then need to restart kate and enable Python Plugins as well as the isort plugin itself.\n\nInstalling isort's for your preferred text editor\n=================================================\n\nSeveral plugins have been written that enable to use isort from within a variety of text-editors.\nYou can find a full list of them `on the isort wiki `_.\nAdditionally, I will enthusiastically accept pull requests that include plugins for other text editors\nand add documentation for them as I am notified.\n\nHow does isort work?\n====================\n\nisort parses specified files for global level import lines (imports outside of try / except blocks, functions, etc..)\nand puts them all at the top of the file grouped together by the type of import:\n\n- Future\n- Python Standard Library\n- Third Party\n- Current Python Project\n- Explicitly Local (. before import, as in: ``from . import x``)\n- Custom Separate Sections (Defined by forced_separate list in configuration file)\n- Custom Sections (Defined by sections list in configuration file)\n\nInside of each section the imports are sorted alphabetically. isort automatically removes duplicate python imports,\nand wraps long from imports to the specified line length (defaults to 80).\n\nWhen will isort not work?\n=========================\n\nIf you ever have the situation where you need to have a try / except block in the middle of top-level imports or if\nyour import order is directly linked to precedence.\n\nFor example: a common practice in Django settings files is importing * from various settings files to form\na new settings file. In this case if any of the imports change order you are changing the settings definition itself.\n\nHowever, you can configure isort to skip over just these files - or even to force certain imports to the top.\n\nConfiguring isort\n=================\n\nIf you find the default isort settings do not work well for your project, isort provides several ways to adjust\nthe behavior.\n\nTo configure isort for a single user create a ``~/.isort.cfg`` file:\n\n.. code-block:: ini\n\n [settings]\n line_length=120\n force_to_top=file1.py,file2.py\n skip=file3.py,file4.py\n known_future_library=future,pies\n known_standard_library=std,std2\n known_third_party=randomthirdparty\n known_first_party=mylib1,mylib2\n indent=' '\n multi_line_output=3\n length_sort=1\n forced_separate=django.contrib,django.utils\n default_section=FIRSTPARTY\n no_lines_before=LOCALFOLDER\n\nAdditionally, you can specify project level configuration simply by placing a ``.isort.cfg`` file at the root of your\nproject. isort will look up to 25 directories up, from the file it is ran against, to find a project specific configuration.\n\nOr, if you prefer, you can add an isort section to your project's ``setup.cfg`` or ``tox.ini`` file with any desired settings.\n\nYou can then override any of these settings by using command line arguments, or by passing in override values to the\nSortImports class.\n\nFinally, as of version 3.0 isort supports editorconfig files using the standard syntax defined here:\nhttp://editorconfig.org/\n\nMeaning you place any standard isort configuration parameters within a .editorconfig file under the ``*.py`` section\nand they will be honored.\n\nFor a full list of isort settings and their meanings `take a look at the isort wiki `_.\n\nMulti line output modes\n=======================\n\nYou will notice above the \"multi_line_output\" setting. This setting defines how from imports wrap when they extend\npast the line_length limit and has 6 possible settings:\n\n**0 - Grid**\n\n.. code-block:: python\n\n from third_party import (lib1, lib2, lib3,\n lib4, lib5, ...)\n\n**1 - Vertical**\n\n.. code-block:: python\n\n from third_party import (lib1,\n lib2,\n lib3\n lib4,\n lib5,\n ...)\n\n**2 - Hanging Indent**\n\n.. code-block:: python\n\n from third_party import \\\n lib1, lib2, lib3, \\\n lib4, lib5, lib6\n\n**3 - Vertical Hanging Indent**\n\n.. code-block:: python\n\n from third_party import (\n lib1,\n lib2,\n lib3,\n lib4,\n )\n\n**4 - Hanging Grid**\n\n.. code-block:: python\n\n from third_party import (\n lib1, lib2, lib3, lib4,\n lib5, ...)\n\n**5 - Hanging Grid Grouped**\n\n.. code-block:: python\n\n from third_party import (\n lib1, lib2, lib3, lib4,\n lib5, ...\n )\n\n**6 - NOQA**\n\n.. code-block:: python\n\n from third_party import lib1, lib2, lib3, ... # NOQA\n\nAlternatively, you can set ``force_single_line`` to ``True`` (``-sl`` on the command line) and every import will appear on its\nown line:\n\n.. code-block:: python\n\n from third_party import lib1\n from third_party import lib2\n from third_party import lib3\n ...\n\nNote: to change the how constant indents appear - simply change the indent property with the following accepted formats:\n* Number of spaces you would like. For example: 4 would cause standard 4 space indentation.\n* Tab\n* A verbatim string with quotes around it.\n\nFor example:\n\n.. code-block:: python\n\n \" \"\n\nis equivalent to 4.\n\nFor the import styles that use parentheses, you can control whether or not to\ninclude a trailing comma after the last import with the ``include_trailing_comma``\noption (defaults to ``False``).\n\nIntelligently Balanced Multi-line Imports\n=========================================\n\nAs of isort 3.1.0 support for balanced multi-line imports has been added.\nWith this enabled isort will dynamically change the import length to the one that produces the most balanced grid,\nwhile staying below the maximum import length defined.\n\nExample:\n\n.. code-block:: python\n\n from __future__ import (absolute_import, division,\n print_function, unicode_literals)\n\nWill be produced instead of:\n\n.. code-block:: python\n\n from __future__ import (absolute_import, division, print_function,\n unicode_literals)\n\nTo enable this set ``balanced_wrapping`` to ``True`` in your config or pass the ``-e`` option into the command line utility.\n\nCustom Sections and Ordering\n============================\n\nYou can change the section order with ``sections`` option from the default of:\n\n.. code-block:: ini\n\n FUTURE,STDLIB,THIRDPARTY,FIRSTPARTY,LOCALFOLDER\n\nto your preference:\n\n.. code-block:: ini\n\n sections=FUTURE,STDLIB,FIRSTPARTY,THIRDPARTY,LOCALFOLDER\n\nYou also can define your own sections and their order.\n\nExample:\n\n.. code-block:: ini\n\n known_django=django\n known_pandas=pandas,numpy\n sections=FUTURE,STDLIB,DJANGO,THIRDPARTY,PANDAS,FIRSTPARTY,LOCALFOLDER\n\nwould create two new sections with the specified known modules.\n\nThe ``no_lines_before`` option will prevent the listed sections from being split from the previous section by an empty line.\n\nExample:\n\n.. code-block:: ini\n\n sections=FUTURE,STDLIB,THIRDPARTY,FIRSTPARTY,LOCALFOLDER\n no_lines_before=LOCALFOLDER\n\nwould produce a section with both FIRSTPARTY and LOCALFOLDER modules combined.\n\nAuto-comment import sections\n============================\n\nSome projects prefer to have import sections uniquely titled to aid in identifying the sections quickly\nwhen visually scanning. isort can automate this as well. To do this simply set the ``import_heading_{section_name}``\nsetting for each section you wish to have auto commented - to the desired comment.\n\nFor Example:\n\n.. code-block:: ini\n\n import_heading_stdlib=Standard Library\n import_heading_firstparty=My Stuff\n\nWould lead to output looking like the following:\n\n.. code-block:: python\n\n # Standard Library\n import os\n import sys\n\n import django.settings\n\n # My Stuff\n import myproject.test\n\nOrdering by import length\n=========================\n\nisort also makes it easy to sort your imports by length, simply by setting the ``length_sort`` option to ``True``.\nThis will result in the following output style:\n\n.. code-block:: python\n\n from evn.util import (\n Pool,\n Dict,\n Options,\n Constant,\n DecayDict,\n UnexpectedCodePath,\n )\n\nSkip processing of imports (outside of configuration)\n=====================================================\n\nTo make isort ignore a single import simply add a comment at the end of the import line containing the text ``isort:skip``:\n\n.. code-block:: python\n\n import module # isort:skip\n\nor:\n\n.. code-block:: python\n\n from xyz import (abc, # isort:skip\n yo,\n hey)\n\nTo make isort skip an entire file simply add ``isort:skip_file`` to the module's doc string:\n\n.. code-block:: python\n\n \"\"\" my_module.py\n Best module ever\n\n isort:skip_file\n \"\"\"\n\n import b\n import a\n\nAdding an import to multiple files\n==================================\n\nisort makes it easy to add an import statement across multiple files, while being assured it's correctly placed.\n\nFrom the command line:\n\n.. code-block:: bash\n\n isort -a \"from __future__ import print_function\" *.py\n\nfrom within Kate:\n\n.. code-block::\n\n ctrl+]\n\nor:\n\n.. code-block::\n\n menu > Python > Add Import\n\nRemoving an import from multiple files\n======================================\n\nisort also makes it easy to remove an import from multiple files, without having to be concerned with how it was originally\nformatted.\n\nFrom the command line:\n\n.. code-block:: bash\n\n isort -r \"os.system\" *.py\n\nfrom within Kate:\n\n.. code-block::\n\n ctrl+shift+]\n\nor:\n\n.. code-block::\n\n menu > Python > Remove Import\n\nUsing isort to verify code\n==========================\n\nThe ``--check-only`` option\n---------------------------\n\nisort can also be used to used to verify that code is correctly formatted by running it with ``-c``.\nAny files that contain incorrectly sorted and/or formatted imports will be outputted to ``stderr``.\n\n.. code-block:: bash\n\n isort **/*.py -c -vb\n\n SUCCESS: /home/timothy/Projects/Open_Source/isort/isort_kate_plugin.py Everything Looks Good!\n ERROR: /home/timothy/Projects/Open_Source/isort/isort/isort.py Imports are incorrectly sorted.\n\nOne great place this can be used is with a pre-commit git hook, such as this one by @acdha:\n\nhttps://gist.github.com/acdha/8717683\n\nThis can help to ensure a certain level of code quality throughout a project.\n\n\nGit hook\n--------\n\nisort provides a hook function that can be integrated into your Git pre-commit script to check\nPython code before committing.\n\nTo cause the commit to fail if there are isort errors (strict mode), include the following in\n``.git/hooks/pre-commit``:\n\n.. code-block:: python\n\n #!/usr/bin/env python\n import sys\n from isort.hooks import git_hook\n\n sys.exit(git_hook(strict=True))\n\nIf you just want to display warnings, but allow the commit to happen anyway, call ``git_hook`` without\nthe `strict` parameter.\n\nSetuptools integration\n----------------------\n\nUpon installation, isort enables a ``setuptools`` command that checks Python files\ndeclared by your project.\n\nRunning ``python setup.py isort`` on the command line will check the files\nlisted in your ``py_modules`` and ``packages``. If any warning is found,\nthe command will exit with an error code:\n\n.. code-block:: bash\n\n $ python setup.py isort\n\nAlso, to allow users to be able to use the command without having to install\nisort themselves, add isort to the setup_requires of your ``setup()`` like so:\n\n.. code-block:: python\n\n setup(\n name=\"project\",\n packages=[\"project\"],\n\n setup_requires=[\n \"isort\"\n ]\n )\n\n\nWhy isort?\n==========\n\nisort simply stands for import sort. It was originally called \"sortImports\" however I got tired of typing the extra\ncharacters and came to the realization camelCase is not pythonic.\n\nI wrote isort because in an organization I used to work in the manager came in one day and decided all code must\nhave alphabetically sorted imports. The code base was huge - and he meant for us to do it by hand. However, being a\nprogrammer - I'm too lazy to spend 8 hours mindlessly performing a function, but not too lazy to spend 16\nhours automating it. I was given permission to open source sortImports and here we are :)\n\n--------------------------------------------\n\nThanks and I hope you find isort useful!\n\n~Timothy Crosley\n", + "description_content_type": null, + "docs_url": null, + "download_url": "", + "downloads": { + "last_day": -1, + "last_month": -1, + "last_week": -1 + }, + "home_page": "https://github.com/timothycrosley/isort", + "keywords": "Refactor", + "license": "MIT", + "maintainer": "", + "maintainer_email": "", + "name": "isort", + "package_url": "https://pypi.org/project/isort/", + "platform": "", + "project_url": "https://pypi.org/project/isort/", + "project_urls": { + "Homepage": "https://github.com/timothycrosley/isort" + }, + "release_url": "https://pypi.org/project/isort/4.3.4/", + "requires_dist": null, + "requires_python": "", + "summary": "A Python utility / library to sort Python imports.", + "version": "4.3.4", + "yanked": false, + "yanked_reason": null + }, + "last_serial": 11968646, + "urls": [ + { + "comment_text": "", + "digests": { + "md5": "f0ad7704b6dc947073398ba290c3517f", + "sha256": "ec9ef8f4a9bc6f71eec99e1806bfa2de401650d996c59330782b89a5555c1497" + }, + "downloads": -1, + "filename": "isort-4.3.4-py2-none-any.whl", + "has_sig": false, + "md5_digest": "f0ad7704b6dc947073398ba290c3517f", + "packagetype": "bdist_wheel", + "python_version": "2.7", + "requires_python": null, + "size": 45393, + "upload_time": "2018-02-12T15:06:38", + "upload_time_iso_8601": "2018-02-12T15:06:38.441257Z", + "url": "https://files.pythonhosted.org/packages/41/d8/a945da414f2adc1d9e2f7d6e7445b27f2be42766879062a2e63616ad4199/isort-4.3.4-py2-none-any.whl", + "yanked": false, + "yanked_reason": null + }, + { + "comment_text": "", + "digests": { + "md5": "fbaac4cd669ac21ea9e21ab1ea3180db", + "sha256": "1153601da39a25b14ddc54955dbbacbb6b2d19135386699e2ad58517953b34af" + }, + "downloads": -1, + "filename": "isort-4.3.4-py3-none-any.whl", + "has_sig": false, + "md5_digest": "fbaac4cd669ac21ea9e21ab1ea3180db", + "packagetype": "bdist_wheel", + "python_version": "3.6", + "requires_python": null, + "size": 45352, + "upload_time": "2018-02-12T15:06:20", + "upload_time_iso_8601": "2018-02-12T15:06:20.089641Z", + "url": "https://files.pythonhosted.org/packages/1f/2c/22eee714d7199ae0464beda6ad5fedec8fee6a2f7ffd1e8f1840928fe318/isort-4.3.4-py3-none-any.whl", + "yanked": false, + "yanked_reason": null + }, + { + "comment_text": "", + "digests": { + "md5": "fb554e9c8f9aa76e333a03d470a5cf52", + "sha256": "b9c40e9750f3d77e6e4d441d8b0266cf555e7cdabdcff33c4fd06366ca761ef8" + }, + "downloads": -1, + "filename": "isort-4.3.4.tar.gz", + "has_sig": false, + "md5_digest": "fb554e9c8f9aa76e333a03d470a5cf52", + "packagetype": "sdist", + "python_version": "source", + "requires_python": null, + "size": 56070, + "upload_time": "2018-02-12T15:06:16", + "upload_time_iso_8601": "2018-02-12T15:06:16.498194Z", + "url": "https://files.pythonhosted.org/packages/b1/de/a628d16fdba0d38cafb3d7e34d4830f2c9cb3881384ce5c08c44762e1846/isort-4.3.4.tar.gz", + "yanked": false, + "yanked_reason": null + } + ], + "vulnerabilities": [] +} diff --git a/tests/repositories/fixtures/pypi.org/json/jupyter.json b/tests/repositories/fixtures/pypi.org/json/jupyter.json index eba1032aa39..aa7043c6016 100644 --- a/tests/repositories/fixtures/pypi.org/json/jupyter.json +++ b/tests/repositories/fixtures/pypi.org/json/jupyter.json @@ -1,156 +1,33 @@ { - "info": { - "author": "Jupyter Development Team", - "author_email": "jupyter@googlegroups.org", - "bugtrack_url": null, - "classifiers": [ - "Intended Audience :: Developers", - "Intended Audience :: Science/Research", - "Intended Audience :: System Administrators", - "License :: OSI Approved :: BSD License", - "Programming Language :: Python", - "Programming Language :: Python :: 2", - "Programming Language :: Python :: 2.7", - "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.3", - "Programming Language :: Python :: 3.4" - ], - "description": "Install the Jupyter system, including the notebook, qtconsole, and the IPython kernel.", - "description_content_type": null, - "docs_url": null, - "download_url": "UNKNOWN", - "downloads": { - "last_day": -1, - "last_month": -1, - "last_week": -1 - }, - "home_page": "http://jupyter.org", - "keywords": null, - "license": "BSD", - "maintainer": null, - "maintainer_email": null, - "name": "jupyter", - "package_url": "https://pypi.org/project/jupyter/", - "platform": "UNKNOWN", - "project_url": "https://pypi.org/project/jupyter/", - "project_urls": { - "Download": "UNKNOWN", - "Homepage": "http://jupyter.org" - }, - "release_url": "https://pypi.org/project/jupyter/1.0.0/", - "requires_dist": null, - "requires_python": null, - "summary": "Jupyter metapackage. Install all the Jupyter components in one go.", - "version": "1.0.0" - }, - "last_serial": 1673841, - "releases": { - "0.0.0": [], - "1.0.0": [ - { - "comment_text": "", - "digests": { - "md5": "f81d039e084c2c0c4da9e4a86446b863", - "sha256": "5b290f93b98ffbc21c0c7e749f054b3267782166d72fa5e3ed1ed4eaf34a2b78" - }, - "downloads": -1, - "filename": "jupyter-1.0.0-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "f81d039e084c2c0c4da9e4a86446b863", - "packagetype": "bdist_wheel", - "python_version": "3.4", - "requires_python": null, - "size": 2736, - "upload_time": "2015-08-12T00:42:58", - "url": "https://files.pythonhosted.org/packages/83/df/0f5dd132200728a86190397e1ea87cd76244e42d39ec5e88efd25b2abd7e/jupyter-1.0.0-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "c6030444c7eb6c05a4d7b1768c72aed7", - "sha256": "d9dc4b3318f310e34c82951ea5d6683f67bed7def4b259fafbfe4f1beb1d8e5f" - }, - "downloads": -1, - "filename": "jupyter-1.0.0.tar.gz", - "has_sig": false, - "md5_digest": "c6030444c7eb6c05a4d7b1768c72aed7", - "packagetype": "sdist", - "python_version": "source", - "requires_python": null, - "size": 12916, - "upload_time": "2015-08-12T00:43:08", - "url": "https://files.pythonhosted.org/packages/c9/a9/371d0b8fe37dd231cf4b2cff0a9f0f25e98f3a73c3771742444be27f2944/jupyter-1.0.0.tar.gz" - }, - { - "comment_text": "", - "digests": { - "md5": "25142b08e2ad7142b6f920bc8cc8dfeb", - "sha256": "3e1f86076bbb7c8c207829390305a2b1fe836d471ed54be66a3b8c41e7f46cc7" - }, - "downloads": -1, - "filename": "jupyter-1.0.0.zip", - "has_sig": false, - "md5_digest": "25142b08e2ad7142b6f920bc8cc8dfeb", - "packagetype": "sdist", - "python_version": "source", - "requires_python": null, - "size": 16690, - "upload_time": "2015-08-12T00:43:12", - "url": "https://files.pythonhosted.org/packages/fc/21/a372b73e3a498b41b92ed915ada7de2ad5e16631546329c03e484c3bf4e9/jupyter-1.0.0.zip" - } - ] - }, - "urls": [ + "name": "jupyter", + "files": [ { - "comment_text": "", - "digests": { + "filename": "jupyter-1.0.0-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/83/df/0f5dd132200728a86190397e1ea87cd76244e42d39ec5e88efd25b2abd7e/jupyter-1.0.0-py2.py3-none-any.whl", + "hashes": { "md5": "f81d039e084c2c0c4da9e4a86446b863", "sha256": "5b290f93b98ffbc21c0c7e749f054b3267782166d72fa5e3ed1ed4eaf34a2b78" - }, - "downloads": -1, - "filename": "jupyter-1.0.0-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "f81d039e084c2c0c4da9e4a86446b863", - "packagetype": "bdist_wheel", - "python_version": "3.4", - "requires_python": null, - "size": 2736, - "upload_time": "2015-08-12T00:42:58", - "url": "https://files.pythonhosted.org/packages/83/df/0f5dd132200728a86190397e1ea87cd76244e42d39ec5e88efd25b2abd7e/jupyter-1.0.0-py2.py3-none-any.whl" + } }, { - "comment_text": "", - "digests": { + "filename": "jupyter-1.0.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/c9/a9/371d0b8fe37dd231cf4b2cff0a9f0f25e98f3a73c3771742444be27f2944/jupyter-1.0.0.tar.gz", + "hashes": { "md5": "c6030444c7eb6c05a4d7b1768c72aed7", "sha256": "d9dc4b3318f310e34c82951ea5d6683f67bed7def4b259fafbfe4f1beb1d8e5f" - }, - "downloads": -1, - "filename": "jupyter-1.0.0.tar.gz", - "has_sig": false, - "md5_digest": "c6030444c7eb6c05a4d7b1768c72aed7", - "packagetype": "sdist", - "python_version": "source", - "requires_python": null, - "size": 12916, - "upload_time": "2015-08-12T00:43:08", - "url": "https://files.pythonhosted.org/packages/c9/a9/371d0b8fe37dd231cf4b2cff0a9f0f25e98f3a73c3771742444be27f2944/jupyter-1.0.0.tar.gz" + } }, { - "comment_text": "", - "digests": { + "filename": "jupyter-1.0.0.zip", + "url": "https://files.pythonhosted.org/packages/fc/21/a372b73e3a498b41b92ed915ada7de2ad5e16631546329c03e484c3bf4e9/jupyter-1.0.0.zip", + "hashes": { "md5": "25142b08e2ad7142b6f920bc8cc8dfeb", "sha256": "3e1f86076bbb7c8c207829390305a2b1fe836d471ed54be66a3b8c41e7f46cc7" - }, - "downloads": -1, - "filename": "jupyter-1.0.0.zip", - "has_sig": false, - "md5_digest": "25142b08e2ad7142b6f920bc8cc8dfeb", - "packagetype": "sdist", - "python_version": "source", - "requires_python": null, - "size": 16690, - "upload_time": "2015-08-12T00:43:12", - "url": "https://files.pythonhosted.org/packages/fc/21/a372b73e3a498b41b92ed915ada7de2ad5e16631546329c03e484c3bf4e9/jupyter-1.0.0.zip" + } } - ] + ], + "meta": { + "api-version": "1.0", + "_last-serial": 1673841 + } } diff --git a/tests/repositories/fixtures/pypi.org/json/jupyter/1.0.0.json b/tests/repositories/fixtures/pypi.org/json/jupyter/1.0.0.json new file mode 100644 index 00000000000..3f305d40af1 --- /dev/null +++ b/tests/repositories/fixtures/pypi.org/json/jupyter/1.0.0.json @@ -0,0 +1,112 @@ +{ + "info": { + "author": "Jupyter Development Team", + "author_email": "jupyter@googlegroups.org", + "bugtrack_url": null, + "classifiers": [ + "Intended Audience :: Developers", + "Intended Audience :: Science/Research", + "Intended Audience :: System Administrators", + "License :: OSI Approved :: BSD License", + "Programming Language :: Python", + "Programming Language :: Python :: 2", + "Programming Language :: Python :: 2.7", + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3.3", + "Programming Language :: Python :: 3.4" + ], + "description": "Install the Jupyter system, including the notebook, qtconsole, and the IPython kernel.", + "description_content_type": null, + "docs_url": null, + "download_url": "UNKNOWN", + "downloads": { + "last_day": -1, + "last_month": -1, + "last_week": -1 + }, + "home_page": "http://jupyter.org", + "keywords": null, + "license": "BSD", + "maintainer": null, + "maintainer_email": null, + "name": "jupyter", + "package_url": "https://pypi.org/project/jupyter/", + "platform": "UNKNOWN", + "project_url": "https://pypi.org/project/jupyter/", + "project_urls": { + "Download": "UNKNOWN", + "Homepage": "http://jupyter.org" + }, + "release_url": "https://pypi.org/project/jupyter/1.0.0/", + "requires_dist": null, + "requires_python": null, + "summary": "Jupyter metapackage. Install all the Jupyter components in one go.", + "version": "1.0.0", + "yanked": false, + "yanked_reason": null + }, + "last_serial": 1673841, + "urls": [ + { + "comment_text": "", + "digests": { + "md5": "f81d039e084c2c0c4da9e4a86446b863", + "sha256": "5b290f93b98ffbc21c0c7e749f054b3267782166d72fa5e3ed1ed4eaf34a2b78" + }, + "downloads": -1, + "filename": "jupyter-1.0.0-py2.py3-none-any.whl", + "has_sig": false, + "md5_digest": "f81d039e084c2c0c4da9e4a86446b863", + "packagetype": "bdist_wheel", + "python_version": "3.4", + "requires_python": null, + "size": 2736, + "upload_time": "2015-08-12T00:42:58", + "upload_time_iso_8601": "2015-08-12T00:42:58.951595Z", + "url": "https://files.pythonhosted.org/packages/83/df/0f5dd132200728a86190397e1ea87cd76244e42d39ec5e88efd25b2abd7e/jupyter-1.0.0-py2.py3-none-any.whl", + "yanked": false, + "yanked_reason": null + }, + { + "comment_text": "", + "digests": { + "md5": "c6030444c7eb6c05a4d7b1768c72aed7", + "sha256": "d9dc4b3318f310e34c82951ea5d6683f67bed7def4b259fafbfe4f1beb1d8e5f" + }, + "downloads": -1, + "filename": "jupyter-1.0.0.tar.gz", + "has_sig": false, + "md5_digest": "c6030444c7eb6c05a4d7b1768c72aed7", + "packagetype": "sdist", + "python_version": "source", + "requires_python": null, + "size": 12916, + "upload_time": "2015-08-12T00:43:08", + "upload_time_iso_8601": "2015-08-12T00:43:08.537857Z", + "url": "https://files.pythonhosted.org/packages/c9/a9/371d0b8fe37dd231cf4b2cff0a9f0f25e98f3a73c3771742444be27f2944/jupyter-1.0.0.tar.gz", + "yanked": false, + "yanked_reason": null + }, + { + "comment_text": "", + "digests": { + "md5": "25142b08e2ad7142b6f920bc8cc8dfeb", + "sha256": "3e1f86076bbb7c8c207829390305a2b1fe836d471ed54be66a3b8c41e7f46cc7" + }, + "downloads": -1, + "filename": "jupyter-1.0.0.zip", + "has_sig": false, + "md5_digest": "25142b08e2ad7142b6f920bc8cc8dfeb", + "packagetype": "sdist", + "python_version": "source", + "requires_python": null, + "size": 16690, + "upload_time": "2015-08-12T00:43:12", + "upload_time_iso_8601": "2015-08-12T00:43:12.460314Z", + "url": "https://files.pythonhosted.org/packages/fc/21/a372b73e3a498b41b92ed915ada7de2ad5e16631546329c03e484c3bf4e9/jupyter-1.0.0.zip", + "yanked": false, + "yanked_reason": null + } + ], + "vulnerabilities": [] +} diff --git a/tests/repositories/fixtures/pypi.org/json/lockfile.json b/tests/repositories/fixtures/pypi.org/json/lockfile.json index 53ba5f7bd18..d5bfefe15b0 100644 --- a/tests/repositories/fixtures/pypi.org/json/lockfile.json +++ b/tests/repositories/fixtures/pypi.org/json/lockfile.json @@ -1,122 +1,25 @@ { - "info": { - "author": "OpenStack", - "author_email": "openstack-dev@lists.openstack.org", - "bugtrack_url": null, - "classifiers": [ - "Intended Audience :: Developers", - "License :: OSI Approved :: MIT License", - "Operating System :: MacOS", - "Operating System :: Microsoft :: Windows :: Windows NT/2000", - "Operating System :: POSIX", - "Operating System :: POSIX :: Linux", - "Programming Language :: Python", - "Programming Language :: Python :: 2", - "Programming Language :: Python :: 2.7", - "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.3", - "Topic :: Software Development :: Libraries :: Python Modules" - ], - "description": "", - "description_content_type": null, - "docs_url": "https://pythonhosted.org/lockfile/", - "download_url": "", - "downloads": { - "last_day": -1, - "last_month": -1, - "last_week": -1 - }, - "home_page": "http://launchpad.net/pylockfile", - "keywords": "", - "license": "", - "maintainer": "", - "maintainer_email": "", - "name": "lockfile", - "package_url": "https://pypi.org/project/lockfile/", - "platform": "UNKNOWN", - "project_url": "https://pypi.org/project/lockfile/", - "project_urls": { - "Homepage": "http://launchpad.net/pylockfile" - }, - "release_url": "https://pypi.org/project/lockfile/0.12.2/", - "requires_dist": null, - "requires_python": "", - "summary": "Platform-independent file locking module", - "version": "0.12.2" - }, - "last_serial": 2139845, - "releases": { - "0.12.2": [ - { - "comment_text": "", - "digests": { - "md5": "07b04864472c90cdf4452cf250687334", - "sha256": "6c3cb24f344923d30b2785d5ad75182c8ea7ac1b6171b08657258ec7429d50fa" - }, - "downloads": -1, - "filename": "lockfile-0.12.2-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "07b04864472c90cdf4452cf250687334", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "requires_python": null, - "size": 13564, - "upload_time": "2015-11-25T18:29:51", - "url": "https://files.pythonhosted.org/packages/c8/22/9460e311f340cb62d26a38c419b1381b8593b0bb6b5d1f056938b086d362/lockfile-0.12.2-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "a6a1a82957a23afdf44cfdd039b65ff9", - "sha256": "6aed02de03cba24efabcd600b30540140634fc06cfa603822d508d5361e9f799" - }, - "downloads": -1, - "filename": "lockfile-0.12.2.tar.gz", - "has_sig": false, - "md5_digest": "a6a1a82957a23afdf44cfdd039b65ff9", - "packagetype": "sdist", - "python_version": "source", - "requires_python": null, - "size": 20874, - "upload_time": "2015-11-25T18:29:58", - "url": "https://files.pythonhosted.org/packages/17/47/72cb04a58a35ec495f96984dddb48232b551aafb95bde614605b754fe6f7/lockfile-0.12.2.tar.gz" - } - ] - }, - "urls": [ + "name": "lockfile", + "files": [ { - "comment_text": "", - "digests": { + "filename": "lockfile-0.12.2-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/c8/22/9460e311f340cb62d26a38c419b1381b8593b0bb6b5d1f056938b086d362/lockfile-0.12.2-py2.py3-none-any.whl", + "hashes": { "md5": "07b04864472c90cdf4452cf250687334", "sha256": "6c3cb24f344923d30b2785d5ad75182c8ea7ac1b6171b08657258ec7429d50fa" - }, - "downloads": -1, - "filename": "lockfile-0.12.2-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "07b04864472c90cdf4452cf250687334", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "requires_python": null, - "size": 13564, - "upload_time": "2015-11-25T18:29:51", - "url": "https://files.pythonhosted.org/packages/c8/22/9460e311f340cb62d26a38c419b1381b8593b0bb6b5d1f056938b086d362/lockfile-0.12.2-py2.py3-none-any.whl" + } }, { - "comment_text": "", - "digests": { + "filename": "lockfile-0.12.2.tar.gz", + "url": "https://files.pythonhosted.org/packages/17/47/72cb04a58a35ec495f96984dddb48232b551aafb95bde614605b754fe6f7/lockfile-0.12.2.tar.gz", + "hashes": { "md5": "a6a1a82957a23afdf44cfdd039b65ff9", "sha256": "6aed02de03cba24efabcd600b30540140634fc06cfa603822d508d5361e9f799" - }, - "downloads": -1, - "filename": "lockfile-0.12.2.tar.gz", - "has_sig": false, - "md5_digest": "a6a1a82957a23afdf44cfdd039b65ff9", - "packagetype": "sdist", - "python_version": "source", - "requires_python": null, - "size": 20874, - "upload_time": "2015-11-25T18:29:58", - "url": "https://files.pythonhosted.org/packages/17/47/72cb04a58a35ec495f96984dddb48232b551aafb95bde614605b754fe6f7/lockfile-0.12.2.tar.gz" + } } - ] + ], + "meta": { + "api-version": "1.0", + "_last-serial": 2139845 + } } diff --git a/tests/repositories/fixtures/pypi.org/json/more-itertools.json b/tests/repositories/fixtures/pypi.org/json/more-itertools.json index fb2dbcd17fb..1ef39b1373e 100644 --- a/tests/repositories/fixtures/pypi.org/json/more-itertools.json +++ b/tests/repositories/fixtures/pypi.org/json/more-itertools.json @@ -1,148 +1,33 @@ { - "info": { - "author": "Erik Rose", - "author_email": "erikrose@grinchcentral.com", - "bugtrack_url": "", - "classifiers": [ - "Development Status :: 5 - Production/Stable", - "Intended Audience :: Developers", - "License :: OSI Approved :: MIT License", - "Natural Language :: English", - "Programming Language :: Python :: 2", - "Programming Language :: Python :: 2.7", - "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.2", - "Programming Language :: Python :: 3.3", - "Programming Language :: Python :: 3.4", - "Programming Language :: Python :: 3.5", - "Topic :: Software Development :: Libraries" - ], - "description": "", - "docs_url": "https://pythonhosted.org/more-itertools/", - "download_url": "", - "downloads": { - "last_day": -1, - "last_month": -1, - "last_week": -1 - }, - "home_page": "https://github.com/erikrose/more-itertools", - "keywords": "itertools,iterator,iteration,filter,peek,peekable,collate,chunk,chunked", - "license": "MIT", - "maintainer": "", - "maintainer_email": "", - "name": "more-itertools", - "package_url": "https://pypi.org/project/more-itertools/", - "platform": "", - "project_url": "https://pypi.org/project/more-itertools/", - "release_url": "https://pypi.org/project/more-itertools/4.1.0/", - "requires_dist": [ - "six (<2.0.0,>=1.0.0)" - ], - "requires_python": "", - "summary": "More routines for operating on iterables, beyond itertools", - "version": "4.1.0" - }, - "last_serial": 3508946, - "releases": { - "4.1.0": [ - { - "comment_text": "", - "digests": { - "md5": "2a6a4b9abf941edf6d190fc995c0c935", - "sha256": "11a625025954c20145b37ff6309cd54e39ca94f72f6bb9576d1195db6fa2442e" - }, - "downloads": -1, - "filename": "more_itertools-4.1.0-py2-none-any.whl", - "has_sig": false, - "md5_digest": "2a6a4b9abf941edf6d190fc995c0c935", - "packagetype": "bdist_wheel", - "python_version": "py2", - "size": 47987, - "upload_time": "2018-01-21T15:34:19", - "url": "https://files.pythonhosted.org/packages/4a/88/c28e2a2da8f3dc3a391d9c97ad949f2ea0c05198222e7e6af176e5bf9b26/more_itertools-4.1.0-py2-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "3229d872f8d193e36119ec76e1b0c097", - "sha256": "0dd8f72eeab0d2c3bd489025bb2f6a1b8342f9b198f6fc37b52d15cfa4531fea" - }, - "downloads": -1, - "filename": "more_itertools-4.1.0-py3-none-any.whl", - "has_sig": false, - "md5_digest": "3229d872f8d193e36119ec76e1b0c097", - "packagetype": "bdist_wheel", - "python_version": "py3", - "size": 47988, - "upload_time": "2018-01-21T15:34:20", - "url": "https://files.pythonhosted.org/packages/7a/46/886917c6a4ce49dd3fff250c01c5abac5390d57992751384fe61befc4877/more_itertools-4.1.0-py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "246f46686d95879fbad37855c115dc52", - "sha256": "c9ce7eccdcb901a2c75d326ea134e0886abfbea5f93e91cc95de9507c0816c44" - }, - "downloads": -1, - "filename": "more-itertools-4.1.0.tar.gz", - "has_sig": false, - "md5_digest": "246f46686d95879fbad37855c115dc52", - "packagetype": "sdist", - "python_version": "source", - "size": 51310, - "upload_time": "2018-01-21T15:34:22", - "url": "https://files.pythonhosted.org/packages/db/0b/f5660bf6299ec5b9f17bd36096fa8148a1c843fa77ddfddf9bebac9301f7/more-itertools-4.1.0.tar.gz" - } - ] - }, - "urls": [ + "name": "more-itertools", + "files": [ { - "comment_text": "", - "digests": { + "filename": "more_itertools-4.1.0-py2-none-any.whl", + "url": "https://files.pythonhosted.org/packages/4a/88/c28e2a2da8f3dc3a391d9c97ad949f2ea0c05198222e7e6af176e5bf9b26/more_itertools-4.1.0-py2-none-any.whl", + "hashes": { "md5": "2a6a4b9abf941edf6d190fc995c0c935", "sha256": "11a625025954c20145b37ff6309cd54e39ca94f72f6bb9576d1195db6fa2442e" - }, - "downloads": -1, - "filename": "more_itertools-4.1.0-py2-none-any.whl", - "has_sig": false, - "md5_digest": "2a6a4b9abf941edf6d190fc995c0c935", - "packagetype": "bdist_wheel", - "python_version": "py2", - "size": 47987, - "upload_time": "2018-01-21T15:34:19", - "url": "https://files.pythonhosted.org/packages/4a/88/c28e2a2da8f3dc3a391d9c97ad949f2ea0c05198222e7e6af176e5bf9b26/more_itertools-4.1.0-py2-none-any.whl" + } }, { - "comment_text": "", - "digests": { + "filename": "more_itertools-4.1.0-py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/7a/46/886917c6a4ce49dd3fff250c01c5abac5390d57992751384fe61befc4877/more_itertools-4.1.0-py3-none-any.whl", + "hashes": { "md5": "3229d872f8d193e36119ec76e1b0c097", "sha256": "0dd8f72eeab0d2c3bd489025bb2f6a1b8342f9b198f6fc37b52d15cfa4531fea" - }, - "downloads": -1, - "filename": "more_itertools-4.1.0-py3-none-any.whl", - "has_sig": false, - "md5_digest": "3229d872f8d193e36119ec76e1b0c097", - "packagetype": "bdist_wheel", - "python_version": "py3", - "size": 47988, - "upload_time": "2018-01-21T15:34:20", - "url": "https://files.pythonhosted.org/packages/7a/46/886917c6a4ce49dd3fff250c01c5abac5390d57992751384fe61befc4877/more_itertools-4.1.0-py3-none-any.whl" + } }, { - "comment_text": "", - "digests": { + "filename": "more-itertools-4.1.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/db/0b/f5660bf6299ec5b9f17bd36096fa8148a1c843fa77ddfddf9bebac9301f7/more-itertools-4.1.0.tar.gz", + "hashes": { "md5": "246f46686d95879fbad37855c115dc52", "sha256": "c9ce7eccdcb901a2c75d326ea134e0886abfbea5f93e91cc95de9507c0816c44" - }, - "downloads": -1, - "filename": "more-itertools-4.1.0.tar.gz", - "has_sig": false, - "md5_digest": "246f46686d95879fbad37855c115dc52", - "packagetype": "sdist", - "python_version": "source", - "size": 51310, - "upload_time": "2018-01-21T15:34:22", - "url": "https://files.pythonhosted.org/packages/db/0b/f5660bf6299ec5b9f17bd36096fa8148a1c843fa77ddfddf9bebac9301f7/more-itertools-4.1.0.tar.gz" + } } - ] + ], + "meta": { + "api-version": "1.0", + "_last-serial": 3508946 + } } diff --git a/tests/repositories/fixtures/pypi.org/json/pluggy.json b/tests/repositories/fixtures/pypi.org/json/pluggy.json index f52ee57b991..9a09d0fc128 100644 --- a/tests/repositories/fixtures/pypi.org/json/pluggy.json +++ b/tests/repositories/fixtures/pypi.org/json/pluggy.json @@ -1,87 +1,17 @@ { - "info": { - "author": "Holger Krekel", - "author_email": "holger@merlinux.eu", - "bugtrack_url": null, - "classifiers": [ - "Development Status :: 4 - Beta", - "Intended Audience :: Developers", - "License :: OSI Approved :: MIT License", - "Operating System :: MacOS :: MacOS X", - "Operating System :: Microsoft :: Windows", - "Operating System :: POSIX", - "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 :: Implementation :: CPython", - "Programming Language :: Python :: Implementation :: PyPy", - "Topic :: Software Development :: Libraries", - "Topic :: Software Development :: Testing", - "Topic :: Utilities" - ], - "description": "", - "docs_url": null, - "download_url": "", - "downloads": { - "last_day": -1, - "last_month": -1, - "last_week": -1 - }, - "home_page": "https://github.com/pytest-dev/pluggy", - "keywords": "", - "license": "MIT license", - "maintainer": "", - "maintainer_email": "", - "name": "pluggy", - "package_url": "https://pypi.org/project/pluggy/", - "platform": "unix", - "project_url": "https://pypi.org/project/pluggy/", - "release_url": "https://pypi.org/project/pluggy/0.6.0/", - "requires_dist": null, - "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", - "summary": "plugin and hook calling mechanisms for python", - "version": "0.6.0" - }, - "last_serial": 3361295, - "releases": { - "0.6.0": [ - { - "comment_text": "", - "digests": { - "md5": "ffdde7c3a5ba9a440404570366ffb6d5", - "sha256": "7f8ae7f5bdf75671a718d2daf0a64b7885f74510bcd98b1a0bb420eb9a9d0cff" - }, - "downloads": -1, - "filename": "pluggy-0.6.0.tar.gz", - "has_sig": false, - "md5_digest": "ffdde7c3a5ba9a440404570366ffb6d5", - "packagetype": "sdist", - "python_version": "source", - "size": 19678, - "upload_time": "2017-11-24T16:33:11", - "url": "https://files.pythonhosted.org/packages/11/bf/cbeb8cdfaffa9f2ea154a30ae31a9d04a1209312e2919138b4171a1f8199/pluggy-0.6.0.tar.gz" - } - ] - }, - "urls": [ + "name": "pluggy", + "files": [ { - "comment_text": "", - "digests": { + "filename": "pluggy-0.6.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/11/bf/cbeb8cdfaffa9f2ea154a30ae31a9d04a1209312e2919138b4171a1f8199/pluggy-0.6.0.tar.gz", + "hashes": { "md5": "ffdde7c3a5ba9a440404570366ffb6d5", "sha256": "7f8ae7f5bdf75671a718d2daf0a64b7885f74510bcd98b1a0bb420eb9a9d0cff" - }, - "downloads": -1, - "filename": "pluggy-0.6.0.tar.gz", - "has_sig": false, - "md5_digest": "ffdde7c3a5ba9a440404570366ffb6d5", - "packagetype": "sdist", - "python_version": "source", - "size": 19678, - "upload_time": "2017-11-24T16:33:11", - "url": "https://files.pythonhosted.org/packages/11/bf/cbeb8cdfaffa9f2ea154a30ae31a9d04a1209312e2919138b4171a1f8199/pluggy-0.6.0.tar.gz" + } } - ] + ], + "meta": { + "api-version": "1.0", + "_last-serial": 3361295 + } } diff --git a/tests/repositories/fixtures/pypi.org/json/poetry.json b/tests/repositories/fixtures/pypi.org/json/poetry.json index 0d5536cd3fc..f3aa04a8b98 100644 --- a/tests/repositories/fixtures/pypi.org/json/poetry.json +++ b/tests/repositories/fixtures/pypi.org/json/poetry.json @@ -1,282 +1,99 @@ { - "info": { - "author": "Sébastien Eustace", - "author_email": "sebastien@eustace.io", - "bugtrack_url": null, - "classifiers": [ - "License :: OSI Approved :: MIT License", - "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", - "Topic :: Software Development :: Build Tools", - "Topic :: Software Development :: Libraries :: Python Modules" - ], - "description": "", - "description_content_type": "text/markdown", - "docs_url": null, - "download_url": "", - "downloads": { - "last_day": -1, - "last_month": -1, - "last_week": -1 + "name": "poetry", + "files": [ + { + "filename": "poetry-0.12.0-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/9f/34/cb438970b165513f66f681082092871aa3b88be60218f74ca933a8af4009/poetry-0.12.0-py2.py3-none-any.whl", + "hashes": { + "md5": "e41b413e4ee8d551cc867adb968843a5", + "sha256": "1c818dcca72a9dc5cd13a30e29654986e3e288f6b158673e3d5b2cc51dec2309" + }, + "requires-python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" }, - "home_page": "https://python-poetry.org/", - "keywords": "packaging,dependency,poetry", - "license": "MIT", - "maintainer": "Sébastien Eustace", - "maintainer_email": "sebastien@eustace.io", - "name": "poetry", - "package_url": "https://pypi.org/project/poetry/", - "platform": "", - "project_url": "https://pypi.org/project/poetry/", - "project_urls": { - "Documentation": "https://python-poetry.org/docs", - "Homepage": "https://python-poetry.org/", - "Repository": "https://github.com/python-poetry/poetry" + { + "filename": "poetry-0.12.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/c6/68/471e26c5d04474aa51b4eb3173645b0e8987e4fb632a035488278d626438/poetry-0.12.0.tar.gz", + "hashes": { + "md5": "18c57cdba5fc86cb74b36e766114959b", + "sha256": "f8565669c5b7679fb5a560a1f93d367f7729f5f2ad1ed06e835549196e764fdb" + }, + "requires-python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" }, - "release_url": "https://pypi.org/project/poetry/0.12.4/", - "requires_dist": [ - "virtualenv (>=16.0,<17.0); python_version >= \"2.7\" and python_version < \"2.8\"", - "pathlib2 (>=2.3,<3.0); python_version >= \"2.7\" and python_version < \"2.8\" or python_version >= \"3.4\" and python_version < \"3.5\"", - "typing (>=3.6,<4.0); python_version >= \"2.7\" and python_version < \"2.8\" or python_version >= \"3.4\" and python_version < \"3.5\"", - "tomlkit (>=0.4.4,<0.5.0)", - "shellingham (>=1.1,<2.0)", - "html5lib (>=1.0,<2.0)", - "pkginfo (>=1.4,<2.0)", - "cachecontrol[filecache] (>=0.12.4,<0.13.0)", - "pyparsing (>=2.2,<3.0)", - "pyrsistent (>=0.14.2,<0.15.0)", - "jsonschema (>=3.0a3,<4.0)", - "requests-toolbelt (>=0.8.0,<0.9.0)", - "cachy (>=0.2,<0.3)", - "requests (>=2.18,<3.0)", - "cleo (>=0.6.7,<0.7.0)" - ], - "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", - "summary": "Python dependency management and packaging made easy.", - "version": "0.12.4" - }, - "last_serial": 4399781, - "releases": { - "0.12.0": [ - { - "comment_text": "", - "digests": { - "md5": "e41b413e4ee8d551cc867adb968843a5", - "sha256": "1c818dcca72a9dc5cd13a30e29654986e3e288f6b158673e3d5b2cc51dec2309" - }, - "downloads": -1, - "filename": "poetry-0.12.0-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "e41b413e4ee8d551cc867adb968843a5", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", - "size": 627048, - "upload_time": "2018-10-17T20:31:41", - "url": "https://files.pythonhosted.org/packages/9f/34/cb438970b165513f66f681082092871aa3b88be60218f74ca933a8af4009/poetry-0.12.0-py2.py3-none-any.whl" + { + "filename": "poetry-0.12.1-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/de/b4/087632dcc5d0d54bbc2c66a91d23ab6550c26e0849eab0ce713c638cbcb9/poetry-0.12.1-py2.py3-none-any.whl", + "hashes": { + "md5": "01da4d43121437cd730160b803d4fe48", + "sha256": "2f1c3f3545ff0b192f543a35523ece22824bdee0954627960a7562ec0e377113" }, - { - "comment_text": "", - "digests": { - "md5": "18c57cdba5fc86cb74b36e766114959b", - "sha256": "f8565669c5b7679fb5a560a1f93d367f7729f5f2ad1ed06e835549196e764fdb" - }, - "downloads": -1, - "filename": "poetry-0.12.0.tar.gz", - "has_sig": false, - "md5_digest": "18c57cdba5fc86cb74b36e766114959b", - "packagetype": "sdist", - "python_version": "source", - "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", - "size": 145585, - "upload_time": "2018-10-17T20:31:43", - "url": "https://files.pythonhosted.org/packages/c6/68/471e26c5d04474aa51b4eb3173645b0e8987e4fb632a035488278d626438/poetry-0.12.0.tar.gz" - } - ], - "0.12.1": [ - { - "comment_text": "", - "digests": { - "md5": "01da4d43121437cd730160b803d4fe48", - "sha256": "2f1c3f3545ff0b192f543a35523ece22824bdee0954627960a7562ec0e377113" - }, - "downloads": -1, - "filename": "poetry-0.12.1-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "01da4d43121437cd730160b803d4fe48", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", - "size": 627051, - "upload_time": "2018-10-17T21:24:48", - "url": "https://files.pythonhosted.org/packages/de/b4/087632dcc5d0d54bbc2c66a91d23ab6550c26e0849eab0ce713c638cbcb9/poetry-0.12.1-py2.py3-none-any.whl" + "requires-python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + }, + { + "filename": "poetry-0.12.1.tar.gz", + "url": "https://files.pythonhosted.org/packages/89/90/1698d2d1f7c3d25b62c701995cce4f0432308c9899614e34489e8d5c364a/poetry-0.12.1.tar.gz", + "hashes": { + "md5": "9dd2e98a85a36bde43d0f10b991d6982", + "sha256": "adefe0e70c91bc98b272a2c0dd7ac67882de62972eafac7625606b14cc49c8a9" }, - { - "comment_text": "", - "digests": { - "md5": "9dd2e98a85a36bde43d0f10b991d6982", - "sha256": "adefe0e70c91bc98b272a2c0dd7ac67882de62972eafac7625606b14cc49c8a9" - }, - "downloads": -1, - "filename": "poetry-0.12.1.tar.gz", - "has_sig": false, - "md5_digest": "9dd2e98a85a36bde43d0f10b991d6982", - "packagetype": "sdist", - "python_version": "source", - "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", - "size": 145596, - "upload_time": "2018-10-17T21:24:51", - "url": "https://files.pythonhosted.org/packages/89/90/1698d2d1f7c3d25b62c701995cce4f0432308c9899614e34489e8d5c364a/poetry-0.12.1.tar.gz" - } - ], - "0.12.2": [ - { - "comment_text": "", - "digests": { - "md5": "8d52945ff3e6d057f0a5c8d43dbdd1be", - "sha256": "07bb0d57798b54564526a83b3b6ee31450e3ff9c91580deff7970402e8cf9648" - }, - "downloads": -1, - "filename": "poetry-0.12.2-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "8d52945ff3e6d057f0a5c8d43dbdd1be", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", - "size": 627151, - "upload_time": "2018-10-17T21:55:08", - "url": "https://files.pythonhosted.org/packages/a5/62/4f4c9a0c49145e5368829806baa202f760403299d3a6a4d8d9e2dd277f85/poetry-0.12.2-py2.py3-none-any.whl" + "requires-python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + }, + { + "filename": "poetry-0.12.2-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/a5/62/4f4c9a0c49145e5368829806baa202f760403299d3a6a4d8d9e2dd277f85/poetry-0.12.2-py2.py3-none-any.whl", + "hashes": { + "md5": "8d52945ff3e6d057f0a5c8d43dbdd1be", + "sha256": "07bb0d57798b54564526a83b3b6ee31450e3ff9c91580deff7970402e8cf9648" }, - { - "comment_text": "", - "digests": { - "md5": "03a09bf2b231701bc698e9fe2e237bd0", - "sha256": "1b9c7a70ac71a416c2b4ec69b89e37fa39afd965a1d0fe58a01e3121d89e98ef" - }, - "downloads": -1, - "filename": "poetry-0.12.2.tar.gz", - "has_sig": false, - "md5_digest": "03a09bf2b231701bc698e9fe2e237bd0", - "packagetype": "sdist", - "python_version": "source", - "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", - "size": 145641, - "upload_time": "2018-10-17T21:55:09", - "url": "https://files.pythonhosted.org/packages/72/9d/30c6c7b2823bda75a568827fe518bc6fc7d59a199336767afb7ac888da4c/poetry-0.12.2.tar.gz" - } - ], - "0.12.3": [ - { - "comment_text": "", - "digests": { - "md5": "541da5e58318b5b5804ee068c9c98468", - "sha256": "936365627f5a29921886c5d2f9aef688899e691af706d136bf17d291a4f33d9b" - }, - "downloads": -1, - "filename": "poetry-0.12.3-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "541da5e58318b5b5804ee068c9c98468", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", - "size": 630173, - "upload_time": "2018-10-18T23:53:33", - "url": "https://files.pythonhosted.org/packages/91/5c/fd1507d5950bf31050650b0ea973c3aa98cd231ed0a18ab36eefde7db9c3/poetry-0.12.3-py2.py3-none-any.whl" + "requires-python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + }, + { + "filename": "poetry-0.12.2.tar.gz", + "url": "https://files.pythonhosted.org/packages/72/9d/30c6c7b2823bda75a568827fe518bc6fc7d59a199336767afb7ac888da4c/poetry-0.12.2.tar.gz", + "hashes": { + "md5": "03a09bf2b231701bc698e9fe2e237bd0", + "sha256": "1b9c7a70ac71a416c2b4ec69b89e37fa39afd965a1d0fe58a01e3121d89e98ef" }, - { - "comment_text": "", - "digests": { - "md5": "48e88e9ae840e2f0c5da5cd00c8b5b1e", - "sha256": "dbc6f7269f8015d2f2408471f2b2eec2365b5bfd20cff8d9824664b67505aaae" - }, - "downloads": -1, - "filename": "poetry-0.12.3.tar.gz", - "has_sig": false, - "md5_digest": "48e88e9ae840e2f0c5da5cd00c8b5b1e", - "packagetype": "sdist", - "python_version": "source", - "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", - "size": 146247, - "upload_time": "2018-10-18T23:53:35", - "url": "https://files.pythonhosted.org/packages/23/86/9166b68a9b9084eca5a3a53ef6131b3318a0b9c48ee8593623330e164c85/poetry-0.12.3.tar.gz" - } - ], - "0.12.4": [ - { - "comment_text": "", - "digests": { - "md5": "a7975e8b090eb3e006814d5e7c2c986f", - "sha256": "9d3759bf7f3d8107262cda917b615c185da57e96785a696dd1f117526917f850" - }, - "downloads": -1, - "filename": "poetry-0.12.4-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "a7975e8b090eb3e006814d5e7c2c986f", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", - "size": 630184, - "upload_time": "2018-10-21T16:33:56", - "url": "https://files.pythonhosted.org/packages/1b/af/013cdcc6f9d4c0bf025b3924981991a8b034db7818fd324c525b7e8a2b6c/poetry-0.12.4-py2.py3-none-any.whl" + "requires-python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + }, + { + "filename": "poetry-0.12.3-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/91/5c/fd1507d5950bf31050650b0ea973c3aa98cd231ed0a18ab36eefde7db9c3/poetry-0.12.3-py2.py3-none-any.whl", + "hashes": { + "md5": "541da5e58318b5b5804ee068c9c98468", + "sha256": "936365627f5a29921886c5d2f9aef688899e691af706d136bf17d291a4f33d9b" + }, + "requires-python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + }, + { + "filename": "poetry-0.12.3.tar.gz", + "url": "https://files.pythonhosted.org/packages/23/86/9166b68a9b9084eca5a3a53ef6131b3318a0b9c48ee8593623330e164c85/poetry-0.12.3.tar.gz", + "hashes": { + "md5": "48e88e9ae840e2f0c5da5cd00c8b5b1e", + "sha256": "dbc6f7269f8015d2f2408471f2b2eec2365b5bfd20cff8d9824664b67505aaae" }, - { - "comment_text": "", - "digests": { - "md5": "c3d1d7576d2ee6663b59e12236a163e9", - "sha256": "fc924ef535c9229aac4f7cfda948e64e890417242d808c0880febb0ea333b9f6" - }, - "downloads": -1, - "filename": "poetry-0.12.4.tar.gz", - "has_sig": false, - "md5_digest": "c3d1d7576d2ee6663b59e12236a163e9", - "packagetype": "sdist", - "python_version": "source", - "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", - "size": 146262, - "upload_time": "2018-10-21T16:33:58", - "url": "https://files.pythonhosted.org/packages/b5/4f/8a864e12a4a03f13467d5ac3d0cc67e75130ae966e3528e9ecbe3df980d6/poetry-0.12.4.tar.gz" - } - ] - }, - "urls": [ + "requires-python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + }, { - "comment_text": "", - "digests": { + "filename": "poetry-0.12.4-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/1b/af/013cdcc6f9d4c0bf025b3924981991a8b034db7818fd324c525b7e8a2b6c/poetry-0.12.4-py2.py3-none-any.whl", + "hashes": { "md5": "a7975e8b090eb3e006814d5e7c2c986f", "sha256": "9d3759bf7f3d8107262cda917b615c185da57e96785a696dd1f117526917f850" }, - "downloads": -1, - "filename": "poetry-0.12.4-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "a7975e8b090eb3e006814d5e7c2c986f", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", - "size": 630184, - "upload_time": "2018-10-21T16:33:56", - "url": "https://files.pythonhosted.org/packages/1b/af/013cdcc6f9d4c0bf025b3924981991a8b034db7818fd324c525b7e8a2b6c/poetry-0.12.4-py2.py3-none-any.whl" + "requires-python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" }, { - "comment_text": "", - "digests": { + "filename": "poetry-0.12.4.tar.gz", + "url": "https://files.pythonhosted.org/packages/b5/4f/8a864e12a4a03f13467d5ac3d0cc67e75130ae966e3528e9ecbe3df980d6/poetry-0.12.4.tar.gz", + "hashes": { "md5": "c3d1d7576d2ee6663b59e12236a163e9", "sha256": "fc924ef535c9229aac4f7cfda948e64e890417242d808c0880febb0ea333b9f6" }, - "downloads": -1, - "filename": "poetry-0.12.4.tar.gz", - "has_sig": false, - "md5_digest": "c3d1d7576d2ee6663b59e12236a163e9", - "packagetype": "sdist", - "python_version": "source", - "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", - "size": 146262, - "upload_time": "2018-10-21T16:33:58", - "url": "https://files.pythonhosted.org/packages/b5/4f/8a864e12a4a03f13467d5ac3d0cc67e75130ae966e3528e9ecbe3df980d6/poetry-0.12.4.tar.gz" + "requires-python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" } - ] + ], + "meta": { + "api-version": "1.0", + "_last-serial": 4399781 + } } diff --git a/tests/repositories/fixtures/pypi.org/json/py.json b/tests/repositories/fixtures/pypi.org/json/py.json index 41b98bbd861..6838d02b10d 100644 --- a/tests/repositories/fixtures/pypi.org/json/py.json +++ b/tests/repositories/fixtures/pypi.org/json/py.json @@ -1,120 +1,25 @@ { - "info": { - "author": "holger krekel, Ronny Pfannschmidt, Benjamin Peterson and others", - "author_email": "pytest-dev@python.org", - "bugtrack_url": "https://github.com/pytest-dev/py/issues", - "classifiers": [ - "Development Status :: 6 - Mature", - "Intended Audience :: Developers", - "License :: OSI Approved :: MIT License", - "Operating System :: MacOS :: MacOS X", - "Operating System :: Microsoft :: Windows", - "Operating System :: POSIX", - "Programming Language :: Python", - "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 :: Implementation :: CPython", - "Programming Language :: Python :: Implementation :: PyPy", - "Topic :: Software Development :: Libraries", - "Topic :: Software Development :: Testing", - "Topic :: Utilities" - ], - "description": "", - "docs_url": null, - "download_url": "", - "downloads": { - "last_day": -1, - "last_month": -1, - "last_week": -1 - }, - "home_page": "http://py.readthedocs.io/", - "keywords": "", - "license": "MIT license", - "maintainer": "", - "maintainer_email": "", - "name": "py", - "package_url": "https://pypi.org/project/py/", - "platform": "unix", - "project_url": "https://pypi.org/project/py/", - "release_url": "https://pypi.org/project/py/1.5.3/", - "requires_dist": null, - "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", - "summary": "library with cross-python path, ini-parsing, io, code, log facilities", - "version": "1.5.3" - }, - "last_serial": 3694828, - "releases": { - "1.5.3": [ - { - "comment_text": "", - "digests": { - "md5": "3184fb17d224b073117a25336040d7c7", - "sha256": "983f77f3331356039fdd792e9220b7b8ee1aa6bd2b25f567a963ff1de5a64f6a" - }, - "downloads": -1, - "filename": "py-1.5.3-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "3184fb17d224b073117a25336040d7c7", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 84903, - "upload_time": "2018-03-22T10:06:50", - "url": "https://files.pythonhosted.org/packages/67/a5/f77982214dd4c8fd104b066f249adea2c49e25e8703d284382eb5e9ab35a/py-1.5.3-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "667d37a148ad9fb81266492903f2d880", - "sha256": "29c9fab495d7528e80ba1e343b958684f4ace687327e6f789a94bf3d1915f881" - }, - "downloads": -1, - "filename": "py-1.5.3.tar.gz", - "has_sig": false, - "md5_digest": "667d37a148ad9fb81266492903f2d880", - "packagetype": "sdist", - "python_version": "source", - "size": 202335, - "upload_time": "2018-03-22T10:06:52", - "url": "https://files.pythonhosted.org/packages/f7/84/b4c6e84672c4ceb94f727f3da8344037b62cee960d80e999b1cd9b832d83/py-1.5.3.tar.gz" - } - ] - }, - "urls": [ + "name": "py", + "files": [ { - "comment_text": "", - "digests": { + "filename": "py-1.5.3-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/67/a5/f77982214dd4c8fd104b066f249adea2c49e25e8703d284382eb5e9ab35a/py-1.5.3-py2.py3-none-any.whl", + "hashes": { "md5": "3184fb17d224b073117a25336040d7c7", "sha256": "983f77f3331356039fdd792e9220b7b8ee1aa6bd2b25f567a963ff1de5a64f6a" - }, - "downloads": -1, - "filename": "py-1.5.3-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "3184fb17d224b073117a25336040d7c7", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 84903, - "upload_time": "2018-03-22T10:06:50", - "url": "https://files.pythonhosted.org/packages/67/a5/f77982214dd4c8fd104b066f249adea2c49e25e8703d284382eb5e9ab35a/py-1.5.3-py2.py3-none-any.whl" + } }, { - "comment_text": "", - "digests": { + "filename": "py-1.5.3.tar.gz", + "url": "https://files.pythonhosted.org/packages/f7/84/b4c6e84672c4ceb94f727f3da8344037b62cee960d80e999b1cd9b832d83/py-1.5.3.tar.gz", + "hashes": { "md5": "667d37a148ad9fb81266492903f2d880", "sha256": "29c9fab495d7528e80ba1e343b958684f4ace687327e6f789a94bf3d1915f881" - }, - "downloads": -1, - "filename": "py-1.5.3.tar.gz", - "has_sig": false, - "md5_digest": "667d37a148ad9fb81266492903f2d880", - "packagetype": "sdist", - "python_version": "source", - "size": 202335, - "upload_time": "2018-03-22T10:06:52", - "url": "https://files.pythonhosted.org/packages/f7/84/b4c6e84672c4ceb94f727f3da8344037b62cee960d80e999b1cd9b832d83/py-1.5.3.tar.gz" + } } - ] + ], + "meta": { + "api-version": "1.0", + "_last-serial": 3694828 + } } diff --git a/tests/repositories/fixtures/pypi.org/json/pygame-music-grid.json b/tests/repositories/fixtures/pypi.org/json/pygame-music-grid.json index 47b676141fe..9c26ae2ffd5 100644 --- a/tests/repositories/fixtures/pypi.org/json/pygame-music-grid.json +++ b/tests/repositories/fixtures/pypi.org/json/pygame-music-grid.json @@ -1,79 +1,25 @@ { - "info": { - "author": "eric dexter", - "author_email": "irc.dexter@gmail.com", - "bugtrack_url": null, - "classifiers": [ - "Topic :: Multimedia :: Sound/Audio :: Editors" - ], - "description": "a clickable grid for drum machines, piano rolls that is customizble from an init \r\nfile)or will be) that will include the script to be ran when a definable button is \r\nhit written in pygame and tested with python 2.5", - "description_content_type": null, - "docs_url": null, - "download_url": "http://www.ziddu.com/download/5498230/pygamepianorollbeta.90.zip.html", - "downloads": { - "last_day": -1, - "last_month": -1, - "last_week": -1 - }, - "home_page": "http://dexrowem.blogspot.com/search?q=pygame+music+grid", - "keywords": "python, pygame, drum machine, piano roll", - "license": "", - "maintainer": "", - "maintainer_email": "", - "name": "pygame-music-grid", - "package_url": "https://pypi.org/project/pygame-music-grid/", - "platform": "", - "project_url": "https://pypi.org/project/pygame-music-grid/", - "project_urls": { - "Download": "http://www.ziddu.com/download/5498230/pygamepianorollbeta.90.zip.html", - "Homepage": "http://dexrowem.blogspot.com/search?q=pygame+music+grid" - }, - "release_url": "https://pypi.org/project/pygame-music-grid/.9/", - "requires_dist": null, - "requires_python": null, - "summary": "a grid for music programs", - "version": ".9" - }, - "last_serial": 710340, - "releases": { - ".9": [ - { - "comment_text": "", - "digests": { - "md5": "76e2c2e8adea20377d9a7e6b6713c952", - "sha256": "8d6d96001aa7f0a6a4a95e8143225b5d06e41b1131044913fecb8f85a125714b" - }, - "downloads": -1, - "filename": "PyYAML-4.2b4-cp27-cp27m-win32.whl", - "has_sig": false, - "md5_digest": "76e2c2e8adea20377d9a7e6b6713c952", - "packagetype": "bdist_wheel", - "python_version": "cp27", - "requires_python": null, - "size": 104988, - "upload_time": "2018-07-02T03:17:55", - "url": "https://files.pythonhosted.org/packages/12/9b/efdbaa3c9694b6315a4410e0d494ad50c5ade22ce33f4b482bfaea3930fd/PyYAML-4.2b4-cp27-cp27m-win32.whl" + "name": "pygame-music-grid", + "files": [ + { + "filename": "pygame_music_grid-.9-cp27-cp27m-win32.whl", + "url": "https://files.pythonhosted.org/packages/12/9b/efdbaa3c9694b6315a4410e0d494ad50c5ade22ce33f4b482bfaea3930fd/pygame_music_grid-.9-cp27-cp27m-win32.whl", + "hashes": { + "md5": "76e2c2e8adea20377d9a7e6b6713c952", + "sha256": "8d6d96001aa7f0a6a4a95e8143225b5d06e41b1131044913fecb8f85a125714b" } - ], - "1.0": [ - { - "comment_text": "", - "digests": { - "md5": "a83441aa7004e474bed6f6daeb61f27a", - "sha256": "d5eef459e30b09f5a098b9cea68bebfeb268697f78d647bd255a085371ac7f3f" - }, - "downloads": -1, - "filename": "PyYAML-3.13-cp27-cp27m-win32.whl", - "has_sig": false, - "md5_digest": "a83441aa7004e474bed6f6daeb61f27a", - "packagetype": "bdist_wheel", - "python_version": "cp27", - "requires_python": null, - "size": 191712, - "upload_time": "2018-07-05T22:53:15", - "url": "https://files.pythonhosted.org/packages/b8/2e/9c2285870c9de070a1fa5ede702ab5fb329901b3cc4028c24f44eda27c5f/PyYAML-3.13-cp27-cp27m-win32.whl" + }, + { + "filename": "pygame_music_grid-3.13-cp27-cp27m-win32.whl", + "url": "https://files.pythonhosted.org/packages/b8/2e/9c2285870c9de070a1fa5ede702ab5fb329901b3cc4028c24f44eda27c5f/pygame_music_grid-3.13-cp27-cp27m-win32.whl", + "hashes": { + "md5": "a83441aa7004e474bed6f6daeb61f27a", + "sha256": "d5eef459e30b09f5a098b9cea68bebfeb268697f78d647bd255a085371ac7f3f" } - ] - }, - "urls": [] + } + ], + "meta": { + "api-version": "1.0", + "_last-serial": 710340 + } } diff --git a/tests/repositories/fixtures/pypi.org/json/pylev.json b/tests/repositories/fixtures/pypi.org/json/pylev.json index 237c5acac0c..d48d828091d 100644 --- a/tests/repositories/fixtures/pypi.org/json/pylev.json +++ b/tests/repositories/fixtures/pypi.org/json/pylev.json @@ -1,83 +1,17 @@ { - "info": { - "author": "Daniel Lindsley", - "author_email": "daniel@toastdriven.com", - "bugtrack_url": null, - "classifiers": [ - "Development Status :: 5 - Production/Stable", - "Intended Audience :: Developers", - "License :: OSI Approved :: BSD License", - "Operating System :: OS Independent", - "Programming Language :: Python", - "Programming Language :: Python :: 3" - ], - "description": "", - "description_content_type": null, - "docs_url": null, - "download_url": "UNKNOWN", - "downloads": { - "last_day": -1, - "last_month": -1, - "last_week": -1 - }, - "home_page": "http://github.com/toastdriven/pylev", - "keywords": null, - "license": "UNKNOWN", - "maintainer": null, - "maintainer_email": null, - "name": "pylev", - "package_url": "https://pypi.org/project/pylev/", - "platform": "UNKNOWN", - "project_url": "https://pypi.org/project/pylev/", - "project_urls": { - "Download": "UNKNOWN", - "Homepage": "http://github.com/toastdriven/pylev" - }, - "release_url": "https://pypi.org/project/pylev/1.3.0/", - "requires_dist": null, - "requires_python": null, - "summary": "A pure Python Levenshtein implementation that's not freaking GPL'd.", - "version": "1.3.0" - }, - "last_serial": 1279536, - "releases": { - "1.3.0": [ - { - "comment_text": "", - "digests": { - "md5": "6da14dfce5034873fc5c2d7a6e83dc29", - "sha256": "1d29a87beb45ebe1e821e7a3b10da2b6b2f4c79b43f482c2df1a1f748a6e114e" - }, - "downloads": -1, - "filename": "pylev-1.3.0-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "6da14dfce5034873fc5c2d7a6e83dc29", - "packagetype": "bdist_wheel", - "python_version": "2.7", - "requires_python": null, - "size": 4927, - "upload_time": "2014-10-23T00:24:34", - "url": "https://files.pythonhosted.org/packages/40/1c/7dff1d242bf1e19f9c6202f0ba4e6fd18cc7ecb8bc85b17b2d16c806e228/pylev-1.3.0-py2.py3-none-any.whl" - } - ] - }, - "urls": [ + "name": "pylev", + "files": [ { - "comment_text": "", - "digests": { + "filename": "pylev-1.3.0-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/40/1c/7dff1d242bf1e19f9c6202f0ba4e6fd18cc7ecb8bc85b17b2d16c806e228/pylev-1.3.0-py2.py3-none-any.whl", + "hashes": { "md5": "6da14dfce5034873fc5c2d7a6e83dc29", "sha256": "1d29a87beb45ebe1e821e7a3b10da2b6b2f4c79b43f482c2df1a1f748a6e114e" - }, - "downloads": -1, - "filename": "pylev-1.3.0-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "6da14dfce5034873fc5c2d7a6e83dc29", - "packagetype": "bdist_wheel", - "python_version": "2.7", - "requires_python": null, - "size": 4927, - "upload_time": "2014-10-23T00:24:34", - "url": "https://files.pythonhosted.org/packages/40/1c/7dff1d242bf1e19f9c6202f0ba4e6fd18cc7ecb8bc85b17b2d16c806e228/pylev-1.3.0-py2.py3-none-any.whl" + } } - ] + ], + "meta": { + "api-version": "1.0", + "_last-serial": 1279536 + } } diff --git a/tests/repositories/fixtures/pypi.org/json/pylev/1.3.0.json b/tests/repositories/fixtures/pypi.org/json/pylev/1.3.0.json new file mode 100644 index 00000000000..32299a2452f --- /dev/null +++ b/tests/repositories/fixtures/pypi.org/json/pylev/1.3.0.json @@ -0,0 +1,88 @@ +{ + "info": { + "author": "Daniel Lindsley", + "author_email": "daniel@toastdriven.com", + "bugtrack_url": null, + "classifiers": [ + "Development Status :: 5 - Production/Stable", + "Intended Audience :: Developers", + "License :: OSI Approved :: BSD License", + "Operating System :: OS Independent", + "Programming Language :: Python", + "Programming Language :: Python :: 3" + ], + "description": "pylev\n=====\n\nA pure Python Levenshtein implementation that's not freaking GPL'd.\n\nBased off the Wikipedia code samples at\nhttp://en.wikipedia.org/wiki/Levenshtein_distance.\n\n\nRequirements\n------------\n\n* Python 2.7.X, Python 3.3+ or PyPy 1.6.0+\n\n\nUsage\n-----\n\nUsage is fairly straightforward.::\n\n import pylev\n distance = pylev.levenshtein('kitten', 'sitting')\n assert(distance, 3)\n\n\nLicense\n-------\n\nNew BSD.\n\n\nTests\n-----\n\nSetup::\n\n $ git clone https://github.com/toastdriven/pylev.git\n $ cd pylev\n\nRunning::\n\n $ python -m unittest tests\n\n[![Build Status](https://travis-ci.org/toastdriven/pylev.png)](https://travis-ci.org/toastdriven/pylev)\n\n\nVersion History\n---------------\n\n* v1.3.0\n\n * Implemented a considerably faster variants (orders of magnitude).\n * Tested & working on Python 2.7.4, Python 3.3.1 & PyPy 1.9.0.\n\n* v1.2.0\n\n * Fixed all incorrect spellings of \"Levenshtein\" (there's no \"c\" in it).\n * Old methods are aliased for backward-compatibility.\n\n* v1.1.0\n\n * Implemented a much faster variant (several orders of magnitude).\n * The older variant was renamed to ``classic_levenschtein``.\n * Tested & working on Python 3.3 & PyPy 1.6.0 as well.\n\n* v1.0.2\n\n * Python packaging is **REALLY** hard. Including the README *this time*.\n\n* v1.0.1\n\n * Python packaging is hard. Including the README this time.\n\n* v1.0.0\n\n * Initial release, just the naive implementation of Levenshtein.", + "description_content_type": null, + "docs_url": null, + "download_url": "UNKNOWN", + "downloads": { + "last_day": -1, + "last_month": -1, + "last_week": -1 + }, + "home_page": "http://github.com/toastdriven/pylev", + "keywords": null, + "license": "UNKNOWN", + "maintainer": null, + "maintainer_email": null, + "name": "pylev", + "package_url": "https://pypi.org/project/pylev/", + "platform": "UNKNOWN", + "project_url": "https://pypi.org/project/pylev/", + "project_urls": { + "Download": "UNKNOWN", + "Homepage": "http://github.com/toastdriven/pylev" + }, + "release_url": "https://pypi.org/project/pylev/1.3.0/", + "requires_dist": null, + "requires_python": null, + "summary": "A pure Python Levenshtein implementation that's not freaking GPL'd.", + "version": "1.3.0", + "yanked": false, + "yanked_reason": null + }, + "last_serial": 10513237, + "urls": [ + { + "comment_text": "", + "digests": { + "md5": "6da14dfce5034873fc5c2d7a6e83dc29", + "sha256": "1d29a87beb45ebe1e821e7a3b10da2b6b2f4c79b43f482c2df1a1f748a6e114e" + }, + "downloads": -1, + "filename": "pylev-1.3.0-py2.py3-none-any.whl", + "has_sig": false, + "md5_digest": "6da14dfce5034873fc5c2d7a6e83dc29", + "packagetype": "bdist_wheel", + "python_version": "2.7", + "requires_python": null, + "size": 4927, + "upload_time": "2014-10-23T00:24:34", + "upload_time_iso_8601": "2014-10-23T00:24:34.125905Z", + "url": "https://files.pythonhosted.org/packages/40/1c/7dff1d242bf1e19f9c6202f0ba4e6fd18cc7ecb8bc85b17b2d16c806e228/pylev-1.3.0-py2.py3-none-any.whl", + "yanked": false, + "yanked_reason": null + }, + { + "comment_text": "", + "digests": { + "md5": "3be579cfc32ce5140cc04001f898741b", + "sha256": "063910098161199b81e453025653ec53556c1be7165a9b7c50be2f4d57eae1c3" + }, + "downloads": -1, + "filename": "pylev-1.3.0.tar.gz", + "has_sig": false, + "md5_digest": "3be579cfc32ce5140cc04001f898741b", + "packagetype": "sdist", + "python_version": "source", + "requires_python": null, + "size": 3193, + "upload_time": "2014-10-23T00:24:19", + "upload_time_iso_8601": "2014-10-23T00:24:19.460779Z", + "url": "https://files.pythonhosted.org/packages/cc/61/dab2081d3d86dcf0b9f5dcfb11b256d76cd14aad7ccdd7c8dd5e7f7e41a0/pylev-1.3.0.tar.gz", + "yanked": false, + "yanked_reason": null + } + ], + "vulnerabilities": [] +} diff --git a/tests/repositories/fixtures/pypi.org/json/pytest.json b/tests/repositories/fixtures/pypi.org/json/pytest.json index e1891d3cc0e..6b600d14a84 100644 --- a/tests/repositories/fixtures/pypi.org/json/pytest.json +++ b/tests/repositories/fixtures/pypi.org/json/pytest.json @@ -1,127 +1,25 @@ { - "info": { - "author": "Holger Krekel, Bruno Oliveira, Ronny Pfannschmidt, Floris Bruynooghe, Brianna Laugher, Florian Bruhin and others", - "author_email": "", - "bugtrack_url": "https://github.com/pytest-dev/pytest/issues", - "classifiers": [ - "Development Status :: 6 - Mature", - "Intended Audience :: Developers", - "License :: OSI Approved :: MIT License", - "Operating System :: MacOS :: MacOS X", - "Operating System :: Microsoft :: Windows", - "Operating System :: POSIX", - "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", - "Topic :: Software Development :: Libraries", - "Topic :: Software Development :: Testing", - "Topic :: Utilities" - ], - "description": ".. image:: http://docs.pytest.org/en/latest/_static/pytest1.png\n :target: http://docs.pytest.org\n :align: center\n :alt: pytest\n\n------\n\n.. image:: https://img.shields.io/pypi/v/pytest.svg\n :target: https://pypi.python.org/pypi/pytest\n\n.. image:: https://anaconda.org/conda-forge/pytest/badges/version.svg\n :target: https://anaconda.org/conda-forge/pytest\n\n.. image:: https://img.shields.io/pypi/pyversions/pytest.svg\n :target: https://pypi.python.org/pypi/pytest\n\n.. image:: https://img.shields.io/coveralls/pytest-dev/pytest/master.svg\n :target: https://coveralls.io/r/pytest-dev/pytest\n\n.. image:: https://travis-ci.org/pytest-dev/pytest.svg?branch=master\n :target: https://travis-ci.org/pytest-dev/pytest\n\n.. image:: https://ci.appveyor.com/api/projects/status/mrgbjaua7t33pg6b?svg=true\n :target: https://ci.appveyor.com/project/pytestbot/pytest\n\n.. image:: https://www.codetriage.com/pytest-dev/pytest/badges/users.svg\n :target: https://www.codetriage.com/pytest-dev/pytest\n\nThe ``pytest`` framework makes it easy to write small tests, yet\nscales to support complex functional testing for applications and libraries.\n\nAn example of a simple test:\n\n.. code-block:: python\n\n # content of test_sample.py\n def inc(x):\n return x + 1\n\n def test_answer():\n assert inc(3) == 5\n\n\nTo execute it::\n\n $ pytest\n ============================= test session starts =============================\n collected 1 items\n\n test_sample.py F\n\n ================================== FAILURES ===================================\n _________________________________ test_answer _________________________________\n\n def test_answer():\n > assert inc(3) == 5\n E assert 4 == 5\n E + where 4 = inc(3)\n\n test_sample.py:5: AssertionError\n ========================== 1 failed in 0.04 seconds ===========================\n\n\nDue to ``pytest``'s detailed assertion introspection, only plain ``assert`` statements are used. See `getting-started `_ for more examples.\n\n\nFeatures\n--------\n\n- Detailed info on failing `assert statements `_ (no need to remember ``self.assert*`` names);\n\n- `Auto-discovery\n `_\n of test modules and functions;\n\n- `Modular fixtures `_ for\n managing small or parametrized long-lived test resources;\n\n- Can run `unittest `_ (or trial),\n `nose `_ test suites out of the box;\n\n- Python 2.7, Python 3.4+, PyPy 2.3, Jython 2.5 (untested);\n\n- Rich plugin architecture, with over 315+ `external plugins `_ and thriving community;\n\n\nDocumentation\n-------------\n\nFor full documentation, including installation, tutorials and PDF documents, please see http://docs.pytest.org.\n\n\nBugs/Requests\n-------------\n\nPlease use the `GitHub issue tracker `_ to submit bugs or request features.\n\n\nChangelog\n---------\n\nConsult the `Changelog `__ page for fixes and enhancements of each version.\n\n\nLicense\n-------\n\nCopyright Holger Krekel and others, 2004-2017.\n\nDistributed under the terms of the `MIT`_ license, pytest is free and open source software.\n\n.. _`MIT`: https://github.com/pytest-dev/pytest/blob/master/LICENSE\n\n\n", - "docs_url": null, - "download_url": "", - "downloads": { - "last_day": -1, - "last_month": -1, - "last_week": -1 - }, - "home_page": "http://pytest.org", - "keywords": "test unittest", - "license": "MIT license", - "maintainer": "", - "maintainer_email": "", - "name": "pytest", - "package_url": "https://pypi.org/project/pytest/", - "platform": "unix", - "project_url": "https://pypi.org/project/pytest/", - "release_url": "https://pypi.org/project/pytest/3.5.0/", - "requires_dist": [ - "py (>=1.5.0)", - "six (>=1.10.0)", - "setuptools", - "attrs (>=17.4.0)", - "more-itertools (>=4.0.0)", - "pluggy (<0.7,>=0.5)", - "funcsigs; python_version < \"3.0\"", - "colorama; sys_platform == \"win32\"" - ], - "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", - "summary": "pytest: simple powerful testing with Python", - "version": "3.5.0" - }, - "last_serial": 3697219, - "releases": { - "3.5.0": [ - { - "comment_text": "", - "digests": { - "md5": "c0b6697b7130c495aba71cdfcf939cc9", - "sha256": "6266f87ab64692112e5477eba395cfedda53b1933ccd29478e671e73b420c19c" - }, - "downloads": -1, - "filename": "pytest-3.5.0-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "c0b6697b7130c495aba71cdfcf939cc9", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 194247, - "upload_time": "2018-03-22T23:47:54", - "url": "https://files.pythonhosted.org/packages/ed/96/271c93f75212c06e2a7ec3e2fa8a9c90acee0a4838dc05bf379ea09aae31/pytest-3.5.0-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "b8e13a4091f07ff1fda081cf40ff99f1", - "sha256": "fae491d1874f199537fd5872b5e1f0e74a009b979df9d53d1553fd03da1703e1" - }, - "downloads": -1, - "filename": "pytest-3.5.0.tar.gz", - "has_sig": false, - "md5_digest": "b8e13a4091f07ff1fda081cf40ff99f1", - "packagetype": "sdist", - "python_version": "source", - "size": 830816, - "upload_time": "2018-03-22T23:47:56", - "url": "https://files.pythonhosted.org/packages/2d/56/6019153cdd743300c5688ab3b07702355283e53c83fbf922242c053ffb7b/pytest-3.5.0.tar.gz" - } - ] - }, - "urls": [ + "name": "pytest", + "files": [ { - "comment_text": "", - "digests": { + "filename": "pytest-3.5.0-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/ed/96/271c93f75212c06e2a7ec3e2fa8a9c90acee0a4838dc05bf379ea09aae31/pytest-3.5.0-py2.py3-none-any.whl", + "hashes": { "md5": "c0b6697b7130c495aba71cdfcf939cc9", "sha256": "6266f87ab64692112e5477eba395cfedda53b1933ccd29478e671e73b420c19c" - }, - "downloads": -1, - "filename": "pytest-3.5.0-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "c0b6697b7130c495aba71cdfcf939cc9", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 194247, - "upload_time": "2018-03-22T23:47:54", - "url": "https://files.pythonhosted.org/packages/ed/96/271c93f75212c06e2a7ec3e2fa8a9c90acee0a4838dc05bf379ea09aae31/pytest-3.5.0-py2.py3-none-any.whl" + } }, { - "comment_text": "", - "digests": { + "filename": "pytest-3.5.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/2d/56/6019153cdd743300c5688ab3b07702355283e53c83fbf922242c053ffb7b/pytest-3.5.0.tar.gz", + "hashes": { "md5": "b8e13a4091f07ff1fda081cf40ff99f1", "sha256": "fae491d1874f199537fd5872b5e1f0e74a009b979df9d53d1553fd03da1703e1" - }, - "downloads": -1, - "filename": "pytest-3.5.0.tar.gz", - "has_sig": false, - "md5_digest": "b8e13a4091f07ff1fda081cf40ff99f1", - "packagetype": "sdist", - "python_version": "source", - "size": 830816, - "upload_time": "2018-03-22T23:47:56", - "url": "https://files.pythonhosted.org/packages/2d/56/6019153cdd743300c5688ab3b07702355283e53c83fbf922242c053ffb7b/pytest-3.5.0.tar.gz" + } } - ] + ], + "meta": { + "api-version": "1.0", + "_last-serial": 3697219 + } } diff --git a/tests/repositories/fixtures/pypi.org/json/pytest/3.5.1.json b/tests/repositories/fixtures/pypi.org/json/pytest/3.5.1.json new file mode 100644 index 00000000000..684d341cf6c --- /dev/null +++ b/tests/repositories/fixtures/pypi.org/json/pytest/3.5.1.json @@ -0,0 +1,108 @@ +{ + "info": { + "author": "Holger Krekel, Bruno Oliveira, Ronny Pfannschmidt, Floris Bruynooghe, Brianna Laugher, Florian Bruhin and others", + "author_email": "", + "bugtrack_url": null, + "classifiers": [ + "Development Status :: 6 - Mature", + "Intended Audience :: Developers", + "License :: OSI Approved :: MIT License", + "Operating System :: MacOS :: MacOS X", + "Operating System :: Microsoft :: Windows", + "Operating System :: POSIX", + "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", + "Topic :: Software Development :: Libraries", + "Topic :: Software Development :: Testing", + "Topic :: Utilities" + ], + "description": ".. image:: http://docs.pytest.org/en/latest/_static/pytest1.png\n :target: http://docs.pytest.org\n :align: center\n :alt: pytest\n\n------\n\n.. image:: https://img.shields.io/pypi/v/pytest.svg\n :target: https://pypi.python.org/pypi/pytest\n\n.. image:: https://anaconda.org/conda-forge/pytest/badges/version.svg\n :target: https://anaconda.org/conda-forge/pytest\n\n.. image:: https://img.shields.io/pypi/pyversions/pytest.svg\n :target: https://pypi.python.org/pypi/pytest\n\n.. image:: https://img.shields.io/coveralls/pytest-dev/pytest/master.svg\n :target: https://coveralls.io/r/pytest-dev/pytest\n\n.. image:: https://travis-ci.org/pytest-dev/pytest.svg?branch=master\n :target: https://travis-ci.org/pytest-dev/pytest\n\n.. image:: https://ci.appveyor.com/api/projects/status/mrgbjaua7t33pg6b?svg=true\n :target: https://ci.appveyor.com/project/pytestbot/pytest\n\n.. image:: https://www.codetriage.com/pytest-dev/pytest/badges/users.svg\n :target: https://www.codetriage.com/pytest-dev/pytest\n\nThe ``pytest`` framework makes it easy to write small tests, yet\nscales to support complex functional testing for applications and libraries.\n\nAn example of a simple test:\n\n.. code-block:: python\n\n # content of test_sample.py\n def inc(x):\n return x + 1\n\n def test_answer():\n assert inc(3) == 5\n\n\nTo execute it::\n\n $ pytest\n ============================= test session starts =============================\n collected 1 items\n\n test_sample.py F\n\n ================================== FAILURES ===================================\n _________________________________ test_answer _________________________________\n\n def test_answer():\n > assert inc(3) == 5\n E assert 4 == 5\n E + where 4 = inc(3)\n\n test_sample.py:5: AssertionError\n ========================== 1 failed in 0.04 seconds ===========================\n\n\nDue to ``pytest``'s detailed assertion introspection, only plain ``assert`` statements are used. See `getting-started `_ for more examples.\n\n\nFeatures\n--------\n\n- Detailed info on failing `assert statements `_ (no need to remember ``self.assert*`` names);\n\n- `Auto-discovery\n `_\n of test modules and functions;\n\n- `Modular fixtures `_ for\n managing small or parametrized long-lived test resources;\n\n- Can run `unittest `_ (or trial),\n `nose `_ test suites out of the box;\n\n- Python 2.7, Python 3.4+, PyPy 2.3, Jython 2.5 (untested);\n\n- Rich plugin architecture, with over 315+ `external plugins `_ and thriving community;\n\n\nDocumentation\n-------------\n\nFor full documentation, including installation, tutorials and PDF documents, please see http://docs.pytest.org.\n\n\nBugs/Requests\n-------------\n\nPlease use the `GitHub issue tracker `_ to submit bugs or request features.\n\n\nChangelog\n---------\n\nConsult the `Changelog `__ page for fixes and enhancements of each version.\n\n\nLicense\n-------\n\nCopyright Holger Krekel and others, 2004-2017.\n\nDistributed under the terms of the `MIT`_ license, pytest is free and open source software.\n\n.. _`MIT`: https://github.com/pytest-dev/pytest/blob/master/LICENSE\n\n\n", + "description_content_type": "", + "docs_url": null, + "download_url": "", + "downloads": { + "last_day": -1, + "last_month": -1, + "last_week": -1 + }, + "home_page": "http://pytest.org", + "keywords": "test unittest", + "license": "MIT license", + "maintainer": "", + "maintainer_email": "", + "name": "pytest", + "package_url": "https://pypi.org/project/pytest/", + "platform": "unix", + "project_url": "https://pypi.org/project/pytest/", + "project_urls": { + "Homepage": "http://pytest.org", + "Source": "https://github.com/pytest-dev/pytest", + "Tracker": "https://github.com/pytest-dev/pytest/issues" + }, + "release_url": "https://pypi.org/project/pytest/3.5.1/", + "requires_dist": [ + "py (>=1.5.0)", + "six (>=1.10.0)", + "setuptools", + "attrs (>=17.4.0)", + "more-itertools (>=4.0.0)", + "pluggy (<0.7,>=0.5)", + "funcsigs; python_version < \"3.0\"", + "colorama; sys_platform == \"win32\"" + ], + "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", + "summary": "pytest: simple powerful testing with Python", + "version": "3.5.1", + "yanked": false, + "yanked_reason": null + }, + "last_serial": 13600682, + "urls": [ + { + "comment_text": "", + "digests": { + "md5": "01b206fe1d54f5255c360743ac9a044d", + "sha256": "829230122facf05a5f81a6d4dfe6454a04978ea3746853b2b84567ecf8e5c526" + }, + "downloads": -1, + "filename": "pytest-3.5.1-py2.py3-none-any.whl", + "has_sig": false, + "md5_digest": "01b206fe1d54f5255c360743ac9a044d", + "packagetype": "bdist_wheel", + "python_version": "py2.py3", + "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", + "size": 192143, + "upload_time": "2018-04-24T21:37:43", + "upload_time_iso_8601": "2018-04-24T21:37:43.104462Z", + "url": "https://files.pythonhosted.org/packages/76/52/fc48d02492d9e6070cb672d9133382e83084f567f88eff1c27bd2c6c27a8/pytest-3.5.1-py2.py3-none-any.whl", + "yanked": false, + "yanked_reason": null + }, + { + "comment_text": "", + "digests": { + "md5": "ffd870ee3ca561695d2f916f0f0f3c0b", + "sha256": "54713b26c97538db6ff0703a12b19aeaeb60b5e599de542e7fca0ec83b9038e8" + }, + "downloads": -1, + "filename": "pytest-3.5.1.tar.gz", + "has_sig": false, + "md5_digest": "ffd870ee3ca561695d2f916f0f0f3c0b", + "packagetype": "sdist", + "python_version": "source", + "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", + "size": 830571, + "upload_time": "2018-04-24T21:37:44", + "upload_time_iso_8601": "2018-04-24T21:37:44.492084Z", + "url": "https://files.pythonhosted.org/packages/b2/85/24954df0ea8156599563b753de54383a5d702081093b7953334e4701b8d8/pytest-3.5.1.tar.gz", + "yanked": false, + "yanked_reason": null + } + ], + "vulnerabilities": [] +} diff --git a/tests/repositories/fixtures/pypi.org/json/pyyaml.json b/tests/repositories/fixtures/pypi.org/json/pyyaml.json index bde85c65d83..51ce928179b 100644 --- a/tests/repositories/fixtures/pypi.org/json/pyyaml.json +++ b/tests/repositories/fixtures/pypi.org/json/pyyaml.json @@ -1,584 +1,169 @@ { - "info": { - "author": "Kirill Simonov", - "author_email": "xi@resolvent.net", - "bugtrack_url": null, - "classifiers": [ - "Development Status :: 5 - Production/Stable", - "Intended Audience :: Developers", - "License :: OSI Approved :: MIT License", - "Operating System :: OS Independent", - "Programming Language :: Python", - "Programming Language :: Python :: 2", - "Programming Language :: Python :: 2.7", - "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.4", - "Programming Language :: Python :: 3.5", - "Topic :: Software Development :: Libraries :: Python Modules", - "Topic :: Text Processing :: Markup" - ], - "description": "", - "description_content_type": "", - "docs_url": null, - "download_url": "http://pyyaml.org/download/pyyaml/PyYAML-3.13.tar.gz", - "downloads": { - "last_day": -1, - "last_month": -1, - "last_week": -1 - }, - "home_page": "http://pyyaml.org/wiki/PyYAML", - "keywords": "", - "license": "MIT", - "maintainer": "", - "maintainer_email": "", - "name": "PyYAML", - "package_url": "https://pypi.org/project/PyYAML/", - "platform": "Any", - "project_url": "https://pypi.org/project/PyYAML/", - "project_urls": { - "Download": "http://pyyaml.org/download/pyyaml/PyYAML-3.13.tar.gz", - "Homepage": "http://pyyaml.org/wiki/PyYAML" - }, - "release_url": "https://pypi.org/project/PyYAML/3.13/", - "requires_dist": null, - "requires_python": "", - "summary": "YAML parser and emitter for Python", - "version": "3.13" - }, - "last_serial": 4034753, - "releases": { - "3.13": [ - { - "comment_text": "", - "digests": { - "md5": "a83441aa7004e474bed6f6daeb61f27a", - "sha256": "d5eef459e30b09f5a098b9cea68bebfeb268697f78d647bd255a085371ac7f3f" - }, - "downloads": -1, - "filename": "PyYAML-3.13-cp27-cp27m-win32.whl", - "has_sig": false, - "md5_digest": "a83441aa7004e474bed6f6daeb61f27a", - "packagetype": "bdist_wheel", - "python_version": "cp27", - "requires_python": null, - "size": 191712, - "upload_time": "2018-07-05T22:53:15", - "url": "https://files.pythonhosted.org/packages/b8/2e/9c2285870c9de070a1fa5ede702ab5fb329901b3cc4028c24f44eda27c5f/PyYAML-3.13-cp27-cp27m-win32.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "dd05ba2d6cb042452a3849dea13b94f0", - "sha256": "e01d3203230e1786cd91ccfdc8f8454c8069c91bee3962ad93b87a4b2860f537" - }, - "downloads": -1, - "filename": "PyYAML-3.13-cp27-cp27m-win_amd64.whl", - "has_sig": false, - "md5_digest": "dd05ba2d6cb042452a3849dea13b94f0", - "packagetype": "bdist_wheel", - "python_version": "cp27", - "requires_python": null, - "size": 209872, - "upload_time": "2018-07-05T22:53:16", - "url": "https://files.pythonhosted.org/packages/df/4d/1ef8d60464a171112401e17a3a3e88fdb1d5b44af7606e8652b2f39ee9ce/PyYAML-3.13-cp27-cp27m-win_amd64.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "49365caa070d53e30deceae118e4fea8", - "sha256": "558dd60b890ba8fd982e05941927a3911dc409a63dcb8b634feaa0cda69330d3" - }, - "downloads": -1, - "filename": "PyYAML-3.13-cp34-cp34m-win32.whl", - "has_sig": false, - "md5_digest": "49365caa070d53e30deceae118e4fea8", - "packagetype": "bdist_wheel", - "python_version": "cp34", - "requires_python": null, - "size": 192898, - "upload_time": "2018-07-05T22:53:19", - "url": "https://files.pythonhosted.org/packages/35/f0/cf0363b5c431c3a828284903aeacc6bdbba342fd4d7871dda9a3b0b00d15/PyYAML-3.13-cp34-cp34m-win32.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "0c486a54c19dd18b9e65a559886935c4", - "sha256": "d46d7982b62e0729ad0175a9bc7e10a566fc07b224d2c79fafb5e032727eaa04" - }, - "downloads": -1, - "filename": "PyYAML-3.13-cp34-cp34m-win_amd64.whl", - "has_sig": false, - "md5_digest": "0c486a54c19dd18b9e65a559886935c4", - "packagetype": "bdist_wheel", - "python_version": "cp34", - "requires_python": null, - "size": 206242, - "upload_time": "2018-07-05T22:53:20", - "url": "https://files.pythonhosted.org/packages/8c/bc/8950092a86259dc511e02a4c3a517ed4b28a254e4da134e3c04e5264e5a3/PyYAML-3.13-cp34-cp34m-win_amd64.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "53ce2b9f6b741fb2f070d12839b5789e", - "sha256": "a7c28b45d9f99102fa092bb213aa12e0aaf9a6a1f5e395d36166639c1f96c3a1" - }, - "downloads": -1, - "filename": "PyYAML-3.13-cp35-cp35m-win32.whl", - "has_sig": false, - "md5_digest": "53ce2b9f6b741fb2f070d12839b5789e", - "packagetype": "bdist_wheel", - "python_version": "cp35", - "requires_python": null, - "size": 187499, - "upload_time": "2018-07-05T22:53:22", - "url": "https://files.pythonhosted.org/packages/29/33/8bbcd3740d9e96cfb57427b8db7a12093402a3a83f2054887e027b2849de/PyYAML-3.13-cp35-cp35m-win32.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "1b70e7ced4c82364bda4ac9094d6e259", - "sha256": "bc558586e6045763782014934bfaf39d48b8ae85a2713117d16c39864085c613" - }, - "downloads": -1, - "filename": "PyYAML-3.13-cp35-cp35m-win_amd64.whl", - "has_sig": false, - "md5_digest": "1b70e7ced4c82364bda4ac9094d6e259", - "packagetype": "bdist_wheel", - "python_version": "cp35", - "requires_python": null, - "size": 205387, - "upload_time": "2018-07-05T22:53:24", - "url": "https://files.pythonhosted.org/packages/ad/d4/d895fb7ac1b0828151b829a32cefc8a8b58b4499570520b91af20982b880/PyYAML-3.13-cp35-cp35m-win_amd64.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "8f62197b853b5b387ff588df05cee7a6", - "sha256": "40c71b8e076d0550b2e6380bada1f1cd1017b882f7e16f09a65be98e017f211a" - }, - "downloads": -1, - "filename": "PyYAML-3.13-cp36-cp36m-win32.whl", - "has_sig": false, - "md5_digest": "8f62197b853b5b387ff588df05cee7a6", - "packagetype": "bdist_wheel", - "python_version": "cp36", - "requires_python": null, - "size": 188186, - "upload_time": "2018-07-05T22:53:25", - "url": "https://files.pythonhosted.org/packages/fb/51/0c49c6caafe8d9a27ad9b0ca9f91adda5a5072b9efbbe7585fb97a4c71c4/PyYAML-3.13-cp36-cp36m-win32.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "ff7280dd032d202b417871d39febadec", - "sha256": "3d7da3009c0f3e783b2c873687652d83b1bbfd5c88e9813fb7e5b03c0dd3108b" - }, - "downloads": -1, - "filename": "PyYAML-3.13-cp36-cp36m-win_amd64.whl", - "has_sig": false, - "md5_digest": "ff7280dd032d202b417871d39febadec", - "packagetype": "bdist_wheel", - "python_version": "cp36", - "requires_python": null, - "size": 206277, - "upload_time": "2018-07-05T22:53:27", - "url": "https://files.pythonhosted.org/packages/4f/ca/5fad249c5032270540c24d2189b0ddf1396aac49b0bdc548162edcf14131/PyYAML-3.13-cp36-cp36m-win_amd64.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "03ac720a2dcb18f2f1a3d026d281d778", - "sha256": "e170a9e6fcfd19021dd29845af83bb79236068bf5fd4df3327c1be18182b2531" - }, - "downloads": -1, - "filename": "PyYAML-3.13-cp37-cp37m-win32.whl", - "has_sig": false, - "md5_digest": "03ac720a2dcb18f2f1a3d026d281d778", - "packagetype": "bdist_wheel", - "python_version": "cp37", - "requires_python": null, - "size": 188313, - "upload_time": "2018-07-05T22:53:28", - "url": "https://files.pythonhosted.org/packages/5c/ed/d6557f70daaaab6ee5cd2f8ccf7bedd63081e522e38679c03840e1acc114/PyYAML-3.13-cp37-cp37m-win32.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "02ab28701247a80e059daa6efe11e67d", - "sha256": "aa7dd4a6a427aed7df6fb7f08a580d68d9b118d90310374716ae90b710280af1" - }, - "downloads": -1, - "filename": "PyYAML-3.13-cp37-cp37m-win_amd64.whl", - "has_sig": false, - "md5_digest": "02ab28701247a80e059daa6efe11e67d", - "packagetype": "bdist_wheel", - "python_version": "cp37", - "requires_python": null, - "size": 206614, - "upload_time": "2018-07-05T22:53:30", - "url": "https://files.pythonhosted.org/packages/bf/96/d02ef8e1f3073e07ffdc240444e5041f403f29c0775f9f1653f18221082f/PyYAML-3.13-cp37-cp37m-win_amd64.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "b78b96636d68ac581c0e2f38158c224f", - "sha256": "3ef3092145e9b70e3ddd2c7ad59bdd0252a94dfe3949721633e41344de00a6bf" - }, - "downloads": -1, - "filename": "PyYAML-3.13.tar.gz", - "has_sig": false, - "md5_digest": "b78b96636d68ac581c0e2f38158c224f", - "packagetype": "sdist", - "python_version": "source", - "requires_python": null, - "size": 270607, - "upload_time": "2018-07-05T22:52:16", - "url": "https://files.pythonhosted.org/packages/9e/a3/1d13970c3f36777c583f136c136f804d70f500168edc1edea6daa7200769/PyYAML-3.13.tar.gz" - } - ], - "4.2b4": [ - { - "comment_text": "", - "digests": { - "md5": "76e2c2e8adea20377d9a7e6b6713c952", - "sha256": "8d6d96001aa7f0a6a4a95e8143225b5d06e41b1131044913fecb8f85a125714b" - }, - "downloads": -1, - "filename": "PyYAML-4.2b4-cp27-cp27m-win32.whl", - "has_sig": false, - "md5_digest": "76e2c2e8adea20377d9a7e6b6713c952", - "packagetype": "bdist_wheel", - "python_version": "cp27", - "requires_python": null, - "size": 104988, - "upload_time": "2018-07-02T03:17:55", - "url": "https://files.pythonhosted.org/packages/12/9b/efdbaa3c9694b6315a4410e0d494ad50c5ade22ce33f4b482bfaea3930fd/PyYAML-4.2b4-cp27-cp27m-win32.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "2ab351c6736b4e98721b37b14fd88002", - "sha256": "c8a88edd93ee29ede719080b2be6cb2333dfee1dccba213b422a9c8e97f2967b" - }, - "downloads": -1, - "filename": "PyYAML-4.2b4-cp27-cp27m-win_amd64.whl", - "has_sig": false, - "md5_digest": "2ab351c6736b4e98721b37b14fd88002", - "packagetype": "bdist_wheel", - "python_version": "cp27", - "requires_python": null, - "size": 115361, - "upload_time": "2018-07-02T03:18:06", - "url": "https://files.pythonhosted.org/packages/da/81/4ecefcc907b4ba1d181eb031a6da45b79e7b6db8b2376aa3040c4a2d01ea/PyYAML-4.2b4-cp27-cp27m-win_amd64.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "cae07819a730ec7a811b3a20b31e0103", - "sha256": "3108529b78577327d15eec243f0ff348a0640b0c3478d67ad7f5648f93bac3e2" - }, - "downloads": -1, - "filename": "PyYAML-4.2b4-cp34-cp34m-win32.whl", - "has_sig": false, - "md5_digest": "cae07819a730ec7a811b3a20b31e0103", - "packagetype": "bdist_wheel", - "python_version": "cp34", - "requires_python": null, - "size": 104095, - "upload_time": "2018-07-02T03:18:13", - "url": "https://files.pythonhosted.org/packages/41/63/9a082d3be6e53452959b66389646b56ecef2c6e4f205a52ff8196ce49eef/PyYAML-4.2b4-cp34-cp34m-win32.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "d0e6d73234c356003022281f2e61748a", - "sha256": "254bf6fda2b7c651837acb2c718e213df29d531eebf00edb54743d10bcb694eb" - }, - "downloads": -1, - "filename": "PyYAML-4.2b4-cp34-cp34m-win_amd64.whl", - "has_sig": false, - "md5_digest": "d0e6d73234c356003022281f2e61748a", - "packagetype": "bdist_wheel", - "python_version": "cp34", - "requires_python": null, - "size": 113201, - "upload_time": "2018-07-02T03:18:16", - "url": "https://files.pythonhosted.org/packages/96/2b/8c2841d7ea6a319acc62537ad59910d545008ccd87d84b6a7813fb8d724d/PyYAML-4.2b4-cp34-cp34m-win_amd64.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "a842bc7391e145bbe4e7fd0d32da1132", - "sha256": "3c17fb92c8ba2f525e4b5f7941d850e7a48c3a59b32d331e2502a3cdc6648e76" - }, - "downloads": -1, - "filename": "PyYAML-4.2b4.tar.gz", - "has_sig": false, - "md5_digest": "a842bc7391e145bbe4e7fd0d32da1132", - "packagetype": "sdist", - "python_version": "source", - "requires_python": null, - "size": 262628, - "upload_time": "2018-07-02T03:18:24", - "url": "https://files.pythonhosted.org/packages/a8/c6/a8d1555e795dbd0375c3c93b576ca13bbf139db51ea604afa19a2c35fc03/PyYAML-4.2b4.tar.gz" - }, - { - "comment_text": "", - "digests": { - "md5": "e8b64f1f531762b4f7a7ee1c32d6819d", - "sha256": "1cbc199009e78f92d9edf554be4fe40fb7b0bef71ba688602a00e97a51909110" - }, - "downloads": -1, - "filename": "PyYAML-4.2b4.win32-py2.7.exe", - "has_sig": false, - "md5_digest": "e8b64f1f531762b4f7a7ee1c32d6819d", - "packagetype": "bdist_wininst", - "python_version": "2.7", - "requires_python": null, - "size": 301122, - "upload_time": "2018-07-02T03:18:50", - "url": "https://files.pythonhosted.org/packages/16/06/6157cf397464f883e7d5e22b3c6b8c86025291f62304ccba75285e3cf25b/PyYAML-4.2b4.win32-py2.7.exe" - }, - { - "comment_text": "", - "digests": { - "md5": "5dc5a4b389eab8de7492429ac9f190a7", - "sha256": "6f89b5c95e93945b597776163403d47af72d243f366bf4622ff08bdfd1c950b7" - }, - "downloads": -1, - "filename": "PyYAML-4.2b4.win32-py3.4.exe", - "has_sig": false, - "md5_digest": "5dc5a4b389eab8de7492429ac9f190a7", - "packagetype": "bdist_wininst", - "python_version": "3.4", - "requires_python": null, - "size": 295125, - "upload_time": "2018-07-02T03:18:57", - "url": "https://files.pythonhosted.org/packages/47/83/7f39055bd68e0918dde8308fd57f0bf75d1579e2695e8b9a127d0c401a03/PyYAML-4.2b4.win32-py3.4.exe" - }, - { - "comment_text": "", - "digests": { - "md5": "e56fcfe6196a5858fbc4ab69c9c5c21f", - "sha256": "be622cc81696e24d0836ba71f6272a2b5767669b0d79fdcf0295d51ac2e156c8" - }, - "downloads": -1, - "filename": "PyYAML-4.2b4.win-amd64-py2.7.exe", - "has_sig": false, - "md5_digest": "e56fcfe6196a5858fbc4ab69c9c5c21f", - "packagetype": "bdist_wininst", - "python_version": "2.7", - "requires_python": null, - "size": 339138, - "upload_time": "2018-07-02T03:18:31", - "url": "https://files.pythonhosted.org/packages/bc/51/36675a109c0cf585c1cb3c89f50f2014f4c228dc69572178c5b01de5aa96/PyYAML-4.2b4.win-amd64-py2.7.exe" - }, - { - "comment_text": "", - "digests": { - "md5": "0c60ac15877e9f50f72c52eb45cb85c6", - "sha256": "f39411e380e2182ad33be039e8ee5770a5d9efe01a2bfb7ae58d9ba31c4a2a9d" - }, - "downloads": -1, - "filename": "PyYAML-4.2b4.win-amd64-py3.4.exe", - "has_sig": false, - "md5_digest": "0c60ac15877e9f50f72c52eb45cb85c6", - "packagetype": "bdist_wininst", - "python_version": "3.4", - "requires_python": null, - "size": 335462, - "upload_time": "2018-07-02T03:18:40", - "url": "https://files.pythonhosted.org/packages/f2/62/415e37aa4296599a0db50dbdb6d9dd480ad4571008db855cf3c4dfdccea6/PyYAML-4.2b4.win-amd64-py3.4.exe" - } - ] - }, - "urls": [ + "name": "PyYAML", + "files": [ { - "comment_text": "", - "digests": { + "filename": "PyYAML-3.13-cp27-cp27m-win32.whl", + "url": "https://files.pythonhosted.org/packages/b8/2e/9c2285870c9de070a1fa5ede702ab5fb329901b3cc4028c24f44eda27c5f/PyYAML-3.13-cp27-cp27m-win32.whl", + "hashes": { "md5": "a83441aa7004e474bed6f6daeb61f27a", "sha256": "d5eef459e30b09f5a098b9cea68bebfeb268697f78d647bd255a085371ac7f3f" - }, - "downloads": -1, - "filename": "PyYAML-3.13-cp27-cp27m-win32.whl", - "has_sig": false, - "md5_digest": "a83441aa7004e474bed6f6daeb61f27a", - "packagetype": "bdist_wheel", - "python_version": "cp27", - "requires_python": null, - "size": 191712, - "upload_time": "2018-07-05T22:53:15", - "url": "https://files.pythonhosted.org/packages/b8/2e/9c2285870c9de070a1fa5ede702ab5fb329901b3cc4028c24f44eda27c5f/PyYAML-3.13-cp27-cp27m-win32.whl" + } }, { - "comment_text": "", - "digests": { + "filename": "PyYAML-3.13-cp27-cp27m-win_amd64.whl", + "url": "https://files.pythonhosted.org/packages/df/4d/1ef8d60464a171112401e17a3a3e88fdb1d5b44af7606e8652b2f39ee9ce/PyYAML-3.13-cp27-cp27m-win_amd64.whl", + "hashes": { "md5": "dd05ba2d6cb042452a3849dea13b94f0", "sha256": "e01d3203230e1786cd91ccfdc8f8454c8069c91bee3962ad93b87a4b2860f537" - }, - "downloads": -1, - "filename": "PyYAML-3.13-cp27-cp27m-win_amd64.whl", - "has_sig": false, - "md5_digest": "dd05ba2d6cb042452a3849dea13b94f0", - "packagetype": "bdist_wheel", - "python_version": "cp27", - "requires_python": null, - "size": 209872, - "upload_time": "2018-07-05T22:53:16", - "url": "https://files.pythonhosted.org/packages/df/4d/1ef8d60464a171112401e17a3a3e88fdb1d5b44af7606e8652b2f39ee9ce/PyYAML-3.13-cp27-cp27m-win_amd64.whl" + } }, { - "comment_text": "", - "digests": { + "filename": "PyYAML-3.13-cp34-cp34m-win32.whl", + "url": "https://files.pythonhosted.org/packages/35/f0/cf0363b5c431c3a828284903aeacc6bdbba342fd4d7871dda9a3b0b00d15/PyYAML-3.13-cp34-cp34m-win32.whl", + "hashes": { "md5": "49365caa070d53e30deceae118e4fea8", "sha256": "558dd60b890ba8fd982e05941927a3911dc409a63dcb8b634feaa0cda69330d3" - }, - "downloads": -1, - "filename": "PyYAML-3.13-cp34-cp34m-win32.whl", - "has_sig": false, - "md5_digest": "49365caa070d53e30deceae118e4fea8", - "packagetype": "bdist_wheel", - "python_version": "cp34", - "requires_python": null, - "size": 192898, - "upload_time": "2018-07-05T22:53:19", - "url": "https://files.pythonhosted.org/packages/35/f0/cf0363b5c431c3a828284903aeacc6bdbba342fd4d7871dda9a3b0b00d15/PyYAML-3.13-cp34-cp34m-win32.whl" + } }, { - "comment_text": "", - "digests": { + "filename": "PyYAML-3.13-cp34-cp34m-win_amd64.whl", + "url": "https://files.pythonhosted.org/packages/8c/bc/8950092a86259dc511e02a4c3a517ed4b28a254e4da134e3c04e5264e5a3/PyYAML-3.13-cp34-cp34m-win_amd64.whl", + "hashes": { "md5": "0c486a54c19dd18b9e65a559886935c4", "sha256": "d46d7982b62e0729ad0175a9bc7e10a566fc07b224d2c79fafb5e032727eaa04" - }, - "downloads": -1, - "filename": "PyYAML-3.13-cp34-cp34m-win_amd64.whl", - "has_sig": false, - "md5_digest": "0c486a54c19dd18b9e65a559886935c4", - "packagetype": "bdist_wheel", - "python_version": "cp34", - "requires_python": null, - "size": 206242, - "upload_time": "2018-07-05T22:53:20", - "url": "https://files.pythonhosted.org/packages/8c/bc/8950092a86259dc511e02a4c3a517ed4b28a254e4da134e3c04e5264e5a3/PyYAML-3.13-cp34-cp34m-win_amd64.whl" + } }, { - "comment_text": "", - "digests": { + "filename": "PyYAML-3.13-cp35-cp35m-win32.whl", + "url": "https://files.pythonhosted.org/packages/29/33/8bbcd3740d9e96cfb57427b8db7a12093402a3a83f2054887e027b2849de/PyYAML-3.13-cp35-cp35m-win32.whl", + "hashes": { "md5": "53ce2b9f6b741fb2f070d12839b5789e", "sha256": "a7c28b45d9f99102fa092bb213aa12e0aaf9a6a1f5e395d36166639c1f96c3a1" - }, - "downloads": -1, - "filename": "PyYAML-3.13-cp35-cp35m-win32.whl", - "has_sig": false, - "md5_digest": "53ce2b9f6b741fb2f070d12839b5789e", - "packagetype": "bdist_wheel", - "python_version": "cp35", - "requires_python": null, - "size": 187499, - "upload_time": "2018-07-05T22:53:22", - "url": "https://files.pythonhosted.org/packages/29/33/8bbcd3740d9e96cfb57427b8db7a12093402a3a83f2054887e027b2849de/PyYAML-3.13-cp35-cp35m-win32.whl" + } }, { - "comment_text": "", - "digests": { + "filename": "PyYAML-3.13-cp35-cp35m-win_amd64.whl", + "url": "https://files.pythonhosted.org/packages/ad/d4/d895fb7ac1b0828151b829a32cefc8a8b58b4499570520b91af20982b880/PyYAML-3.13-cp35-cp35m-win_amd64.whl", + "hashes": { "md5": "1b70e7ced4c82364bda4ac9094d6e259", "sha256": "bc558586e6045763782014934bfaf39d48b8ae85a2713117d16c39864085c613" - }, - "downloads": -1, - "filename": "PyYAML-3.13-cp35-cp35m-win_amd64.whl", - "has_sig": false, - "md5_digest": "1b70e7ced4c82364bda4ac9094d6e259", - "packagetype": "bdist_wheel", - "python_version": "cp35", - "requires_python": null, - "size": 205387, - "upload_time": "2018-07-05T22:53:24", - "url": "https://files.pythonhosted.org/packages/ad/d4/d895fb7ac1b0828151b829a32cefc8a8b58b4499570520b91af20982b880/PyYAML-3.13-cp35-cp35m-win_amd64.whl" + } }, { - "comment_text": "", - "digests": { + "filename": "PyYAML-3.13-cp36-cp36m-win32.whl", + "url": "https://files.pythonhosted.org/packages/fb/51/0c49c6caafe8d9a27ad9b0ca9f91adda5a5072b9efbbe7585fb97a4c71c4/PyYAML-3.13-cp36-cp36m-win32.whl", + "hashes": { "md5": "8f62197b853b5b387ff588df05cee7a6", "sha256": "40c71b8e076d0550b2e6380bada1f1cd1017b882f7e16f09a65be98e017f211a" - }, - "downloads": -1, - "filename": "PyYAML-3.13-cp36-cp36m-win32.whl", - "has_sig": false, - "md5_digest": "8f62197b853b5b387ff588df05cee7a6", - "packagetype": "bdist_wheel", - "python_version": "cp36", - "requires_python": null, - "size": 188186, - "upload_time": "2018-07-05T22:53:25", - "url": "https://files.pythonhosted.org/packages/fb/51/0c49c6caafe8d9a27ad9b0ca9f91adda5a5072b9efbbe7585fb97a4c71c4/PyYAML-3.13-cp36-cp36m-win32.whl" + } }, { - "comment_text": "", - "digests": { + "filename": "PyYAML-3.13-cp36-cp36m-win_amd64.whl", + "url": "https://files.pythonhosted.org/packages/4f/ca/5fad249c5032270540c24d2189b0ddf1396aac49b0bdc548162edcf14131/PyYAML-3.13-cp36-cp36m-win_amd64.whl", + "hashes": { "md5": "ff7280dd032d202b417871d39febadec", "sha256": "3d7da3009c0f3e783b2c873687652d83b1bbfd5c88e9813fb7e5b03c0dd3108b" - }, - "downloads": -1, - "filename": "PyYAML-3.13-cp36-cp36m-win_amd64.whl", - "has_sig": false, - "md5_digest": "ff7280dd032d202b417871d39febadec", - "packagetype": "bdist_wheel", - "python_version": "cp36", - "requires_python": null, - "size": 206277, - "upload_time": "2018-07-05T22:53:27", - "url": "https://files.pythonhosted.org/packages/4f/ca/5fad249c5032270540c24d2189b0ddf1396aac49b0bdc548162edcf14131/PyYAML-3.13-cp36-cp36m-win_amd64.whl" + } }, { - "comment_text": "", - "digests": { + "filename": "PyYAML-3.13-cp37-cp37m-win32.whl", + "url": "https://files.pythonhosted.org/packages/5c/ed/d6557f70daaaab6ee5cd2f8ccf7bedd63081e522e38679c03840e1acc114/PyYAML-3.13-cp37-cp37m-win32.whl", + "hashes": { "md5": "03ac720a2dcb18f2f1a3d026d281d778", "sha256": "e170a9e6fcfd19021dd29845af83bb79236068bf5fd4df3327c1be18182b2531" - }, - "downloads": -1, - "filename": "PyYAML-3.13-cp37-cp37m-win32.whl", - "has_sig": false, - "md5_digest": "03ac720a2dcb18f2f1a3d026d281d778", - "packagetype": "bdist_wheel", - "python_version": "cp37", - "requires_python": null, - "size": 188313, - "upload_time": "2018-07-05T22:53:28", - "url": "https://files.pythonhosted.org/packages/5c/ed/d6557f70daaaab6ee5cd2f8ccf7bedd63081e522e38679c03840e1acc114/PyYAML-3.13-cp37-cp37m-win32.whl" + } }, { - "comment_text": "", - "digests": { + "filename": "PyYAML-3.13-cp37-cp37m-win_amd64.whl", + "url": "https://files.pythonhosted.org/packages/bf/96/d02ef8e1f3073e07ffdc240444e5041f403f29c0775f9f1653f18221082f/PyYAML-3.13-cp37-cp37m-win_amd64.whl", + "hashes": { "md5": "02ab28701247a80e059daa6efe11e67d", "sha256": "aa7dd4a6a427aed7df6fb7f08a580d68d9b118d90310374716ae90b710280af1" - }, - "downloads": -1, - "filename": "PyYAML-3.13-cp37-cp37m-win_amd64.whl", - "has_sig": false, - "md5_digest": "02ab28701247a80e059daa6efe11e67d", - "packagetype": "bdist_wheel", - "python_version": "cp37", - "requires_python": null, - "size": 206614, - "upload_time": "2018-07-05T22:53:30", - "url": "https://files.pythonhosted.org/packages/bf/96/d02ef8e1f3073e07ffdc240444e5041f403f29c0775f9f1653f18221082f/PyYAML-3.13-cp37-cp37m-win_amd64.whl" + } }, { - "comment_text": "", - "digests": { + "filename": "PyYAML-3.13.tar.gz", + "url": "https://files.pythonhosted.org/packages/9e/a3/1d13970c3f36777c583f136c136f804d70f500168edc1edea6daa7200769/PyYAML-3.13.tar.gz", + "hashes": { "md5": "b78b96636d68ac581c0e2f38158c224f", "sha256": "3ef3092145e9b70e3ddd2c7ad59bdd0252a94dfe3949721633e41344de00a6bf" - }, - "downloads": -1, - "filename": "PyYAML-3.13.tar.gz", - "has_sig": false, - "md5_digest": "b78b96636d68ac581c0e2f38158c224f", - "packagetype": "sdist", - "python_version": "source", - "requires_python": null, - "size": 270607, - "upload_time": "2018-07-05T22:52:16", - "url": "https://files.pythonhosted.org/packages/9e/a3/1d13970c3f36777c583f136c136f804d70f500168edc1edea6daa7200769/PyYAML-3.13.tar.gz" + } + }, + { + "filename": "PyYAML-4.2b4-cp27-cp27m-win32.whl", + "url": "https://files.pythonhosted.org/packages/12/9b/efdbaa3c9694b6315a4410e0d494ad50c5ade22ce33f4b482bfaea3930fd/PyYAML-4.2b4-cp27-cp27m-win32.whl", + "hashes": { + "md5": "76e2c2e8adea20377d9a7e6b6713c952", + "sha256": "8d6d96001aa7f0a6a4a95e8143225b5d06e41b1131044913fecb8f85a125714b" + } + }, + { + "filename": "PyYAML-4.2b4-cp27-cp27m-win_amd64.whl", + "url": "https://files.pythonhosted.org/packages/da/81/4ecefcc907b4ba1d181eb031a6da45b79e7b6db8b2376aa3040c4a2d01ea/PyYAML-4.2b4-cp27-cp27m-win_amd64.whl", + "hashes": { + "md5": "2ab351c6736b4e98721b37b14fd88002", + "sha256": "c8a88edd93ee29ede719080b2be6cb2333dfee1dccba213b422a9c8e97f2967b" + } + }, + { + "filename": "PyYAML-4.2b4-cp34-cp34m-win32.whl", + "url": "https://files.pythonhosted.org/packages/41/63/9a082d3be6e53452959b66389646b56ecef2c6e4f205a52ff8196ce49eef/PyYAML-4.2b4-cp34-cp34m-win32.whl", + "hashes": { + "md5": "cae07819a730ec7a811b3a20b31e0103", + "sha256": "3108529b78577327d15eec243f0ff348a0640b0c3478d67ad7f5648f93bac3e2" + } + }, + { + "filename": "PyYAML-4.2b4-cp34-cp34m-win_amd64.whl", + "url": "https://files.pythonhosted.org/packages/96/2b/8c2841d7ea6a319acc62537ad59910d545008ccd87d84b6a7813fb8d724d/PyYAML-4.2b4-cp34-cp34m-win_amd64.whl", + "hashes": { + "md5": "d0e6d73234c356003022281f2e61748a", + "sha256": "254bf6fda2b7c651837acb2c718e213df29d531eebf00edb54743d10bcb694eb" + } + }, + { + "filename": "PyYAML-4.2b4.tar.gz", + "url": "https://files.pythonhosted.org/packages/a8/c6/a8d1555e795dbd0375c3c93b576ca13bbf139db51ea604afa19a2c35fc03/PyYAML-4.2b4.tar.gz", + "hashes": { + "md5": "a842bc7391e145bbe4e7fd0d32da1132", + "sha256": "3c17fb92c8ba2f525e4b5f7941d850e7a48c3a59b32d331e2502a3cdc6648e76" + } + }, + { + "filename": "PyYAML-4.2b4.win32-py2.7.exe", + "url": "https://files.pythonhosted.org/packages/16/06/6157cf397464f883e7d5e22b3c6b8c86025291f62304ccba75285e3cf25b/PyYAML-4.2b4.win32-py2.7.exe", + "hashes": { + "md5": "e8b64f1f531762b4f7a7ee1c32d6819d", + "sha256": "1cbc199009e78f92d9edf554be4fe40fb7b0bef71ba688602a00e97a51909110" + } + }, + { + "filename": "PyYAML-4.2b4.win32-py3.4.exe", + "url": "https://files.pythonhosted.org/packages/47/83/7f39055bd68e0918dde8308fd57f0bf75d1579e2695e8b9a127d0c401a03/PyYAML-4.2b4.win32-py3.4.exe", + "hashes": { + "md5": "5dc5a4b389eab8de7492429ac9f190a7", + "sha256": "6f89b5c95e93945b597776163403d47af72d243f366bf4622ff08bdfd1c950b7" + } + }, + { + "filename": "PyYAML-4.2b4.win-amd64-py2.7.exe", + "url": "https://files.pythonhosted.org/packages/bc/51/36675a109c0cf585c1cb3c89f50f2014f4c228dc69572178c5b01de5aa96/PyYAML-4.2b4.win-amd64-py2.7.exe", + "hashes": { + "md5": "e56fcfe6196a5858fbc4ab69c9c5c21f", + "sha256": "be622cc81696e24d0836ba71f6272a2b5767669b0d79fdcf0295d51ac2e156c8" + } + }, + { + "filename": "PyYAML-4.2b4.win-amd64-py3.4.exe", + "url": "https://files.pythonhosted.org/packages/f2/62/415e37aa4296599a0db50dbdb6d9dd480ad4571008db855cf3c4dfdccea6/PyYAML-4.2b4.win-amd64-py3.4.exe", + "hashes": { + "md5": "0c60ac15877e9f50f72c52eb45cb85c6", + "sha256": "f39411e380e2182ad33be039e8ee5770a5d9efe01a2bfb7ae58d9ba31c4a2a9d" + } } - ] + ], + "meta": { + "api-version": "1.0", + "_last-serial": 4034753 + } } diff --git a/tests/repositories/fixtures/pypi.org/json/pyyaml/3.13.0.json b/tests/repositories/fixtures/pypi.org/json/pyyaml/3.13.0.json new file mode 100644 index 00000000000..bb718fe500f --- /dev/null +++ b/tests/repositories/fixtures/pypi.org/json/pyyaml/3.13.0.json @@ -0,0 +1,340 @@ +{ + "info": { + "author": "Kirill Simonov", + "author_email": "xi@resolvent.net", + "bugtrack_url": null, + "classifiers": [ + "Development Status :: 5 - Production/Stable", + "Intended Audience :: Developers", + "License :: OSI Approved :: MIT License", + "Operating System :: OS Independent", + "Programming Language :: Python", + "Programming Language :: Python :: 2", + "Programming Language :: Python :: 2.7", + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3.4", + "Programming Language :: Python :: 3.5", + "Topic :: Software Development :: Libraries :: Python Modules", + "Topic :: Text Processing :: Markup" + ], + "description": "YAML is a data serialization format designed for human readability\nand interaction with scripting languages. PyYAML is a YAML parser\nand emitter for Python.\n\nPyYAML features a complete YAML 1.1 parser, Unicode support, pickle\nsupport, capable extension API, and sensible error messages. PyYAML\nsupports standard YAML tags and provides Python-specific tags that\nallow to represent an arbitrary Python object.\n\nPyYAML is applicable for a broad range of tasks from complex\nconfiguration files to object serialization and persistance.", + "description_content_type": "", + "docs_url": null, + "download_url": "http://pyyaml.org/download/pyyaml/PyYAML-3.13.tar.gz", + "downloads": { + "last_day": -1, + "last_month": -1, + "last_week": -1 + }, + "home_page": "http://pyyaml.org/wiki/PyYAML", + "keywords": "", + "license": "MIT", + "maintainer": "", + "maintainer_email": "", + "name": "PyYAML", + "package_url": "https://pypi.org/project/PyYAML/", + "platform": "Any", + "project_url": "https://pypi.org/project/PyYAML/", + "project_urls": { + "Download": "http://pyyaml.org/download/pyyaml/PyYAML-3.13.tar.gz", + "Homepage": "http://pyyaml.org/wiki/PyYAML" + }, + "release_url": "https://pypi.org/project/PyYAML/3.13/", + "requires_dist": null, + "requires_python": "", + "summary": "YAML parser and emitter for Python", + "version": "3.13", + "yanked": false, + "yanked_reason": null + }, + "last_serial": 11716096, + "urls": [ + { + "comment_text": "", + "digests": { + "md5": "a83441aa7004e474bed6f6daeb61f27a", + "sha256": "d5eef459e30b09f5a098b9cea68bebfeb268697f78d647bd255a085371ac7f3f" + }, + "downloads": -1, + "filename": "PyYAML-3.13-cp27-cp27m-win32.whl", + "has_sig": false, + "md5_digest": "a83441aa7004e474bed6f6daeb61f27a", + "packagetype": "bdist_wheel", + "python_version": "cp27", + "requires_python": null, + "size": 191712, + "upload_time": "2018-07-05T22:53:15", + "upload_time_iso_8601": "2018-07-05T22:53:15.231061Z", + "url": "https://files.pythonhosted.org/packages/b8/2e/9c2285870c9de070a1fa5ede702ab5fb329901b3cc4028c24f44eda27c5f/PyYAML-3.13-cp27-cp27m-win32.whl", + "yanked": false, + "yanked_reason": null + }, + { + "comment_text": "", + "digests": { + "md5": "dd05ba2d6cb042452a3849dea13b94f0", + "sha256": "e01d3203230e1786cd91ccfdc8f8454c8069c91bee3962ad93b87a4b2860f537" + }, + "downloads": -1, + "filename": "PyYAML-3.13-cp27-cp27m-win_amd64.whl", + "has_sig": false, + "md5_digest": "dd05ba2d6cb042452a3849dea13b94f0", + "packagetype": "bdist_wheel", + "python_version": "cp27", + "requires_python": null, + "size": 209872, + "upload_time": "2018-07-05T22:53:16", + "upload_time_iso_8601": "2018-07-05T22:53:16.904443Z", + "url": "https://files.pythonhosted.org/packages/df/4d/1ef8d60464a171112401e17a3a3e88fdb1d5b44af7606e8652b2f39ee9ce/PyYAML-3.13-cp27-cp27m-win_amd64.whl", + "yanked": false, + "yanked_reason": null + }, + { + "comment_text": "", + "digests": { + "md5": "49365caa070d53e30deceae118e4fea8", + "sha256": "558dd60b890ba8fd982e05941927a3911dc409a63dcb8b634feaa0cda69330d3" + }, + "downloads": -1, + "filename": "PyYAML-3.13-cp34-cp34m-win32.whl", + "has_sig": false, + "md5_digest": "49365caa070d53e30deceae118e4fea8", + "packagetype": "bdist_wheel", + "python_version": "cp34", + "requires_python": null, + "size": 192898, + "upload_time": "2018-07-05T22:53:19", + "upload_time_iso_8601": "2018-07-05T22:53:19.190872Z", + "url": "https://files.pythonhosted.org/packages/35/f0/cf0363b5c431c3a828284903aeacc6bdbba342fd4d7871dda9a3b0b00d15/PyYAML-3.13-cp34-cp34m-win32.whl", + "yanked": false, + "yanked_reason": null + }, + { + "comment_text": "", + "digests": { + "md5": "0c486a54c19dd18b9e65a559886935c4", + "sha256": "d46d7982b62e0729ad0175a9bc7e10a566fc07b224d2c79fafb5e032727eaa04" + }, + "downloads": -1, + "filename": "PyYAML-3.13-cp34-cp34m-win_amd64.whl", + "has_sig": false, + "md5_digest": "0c486a54c19dd18b9e65a559886935c4", + "packagetype": "bdist_wheel", + "python_version": "cp34", + "requires_python": null, + "size": 206242, + "upload_time": "2018-07-05T22:53:20", + "upload_time_iso_8601": "2018-07-05T22:53:20.770605Z", + "url": "https://files.pythonhosted.org/packages/8c/bc/8950092a86259dc511e02a4c3a517ed4b28a254e4da134e3c04e5264e5a3/PyYAML-3.13-cp34-cp34m-win_amd64.whl", + "yanked": false, + "yanked_reason": null + }, + { + "comment_text": "", + "digests": { + "md5": "53ce2b9f6b741fb2f070d12839b5789e", + "sha256": "a7c28b45d9f99102fa092bb213aa12e0aaf9a6a1f5e395d36166639c1f96c3a1" + }, + "downloads": -1, + "filename": "PyYAML-3.13-cp35-cp35m-win32.whl", + "has_sig": false, + "md5_digest": "53ce2b9f6b741fb2f070d12839b5789e", + "packagetype": "bdist_wheel", + "python_version": "cp35", + "requires_python": null, + "size": 187499, + "upload_time": "2018-07-05T22:53:22", + "upload_time_iso_8601": "2018-07-05T22:53:22.576919Z", + "url": "https://files.pythonhosted.org/packages/29/33/8bbcd3740d9e96cfb57427b8db7a12093402a3a83f2054887e027b2849de/PyYAML-3.13-cp35-cp35m-win32.whl", + "yanked": false, + "yanked_reason": null + }, + { + "comment_text": "", + "digests": { + "md5": "1b70e7ced4c82364bda4ac9094d6e259", + "sha256": "bc558586e6045763782014934bfaf39d48b8ae85a2713117d16c39864085c613" + }, + "downloads": -1, + "filename": "PyYAML-3.13-cp35-cp35m-win_amd64.whl", + "has_sig": false, + "md5_digest": "1b70e7ced4c82364bda4ac9094d6e259", + "packagetype": "bdist_wheel", + "python_version": "cp35", + "requires_python": null, + "size": 205387, + "upload_time": "2018-07-05T22:53:24", + "upload_time_iso_8601": "2018-07-05T22:53:24.438646Z", + "url": "https://files.pythonhosted.org/packages/ad/d4/d895fb7ac1b0828151b829a32cefc8a8b58b4499570520b91af20982b880/PyYAML-3.13-cp35-cp35m-win_amd64.whl", + "yanked": false, + "yanked_reason": null + }, + { + "comment_text": "", + "digests": { + "md5": "8f62197b853b5b387ff588df05cee7a6", + "sha256": "40c71b8e076d0550b2e6380bada1f1cd1017b882f7e16f09a65be98e017f211a" + }, + "downloads": -1, + "filename": "PyYAML-3.13-cp36-cp36m-win32.whl", + "has_sig": false, + "md5_digest": "8f62197b853b5b387ff588df05cee7a6", + "packagetype": "bdist_wheel", + "python_version": "cp36", + "requires_python": null, + "size": 188186, + "upload_time": "2018-07-05T22:53:25", + "upload_time_iso_8601": "2018-07-05T22:53:25.923669Z", + "url": "https://files.pythonhosted.org/packages/fb/51/0c49c6caafe8d9a27ad9b0ca9f91adda5a5072b9efbbe7585fb97a4c71c4/PyYAML-3.13-cp36-cp36m-win32.whl", + "yanked": false, + "yanked_reason": null + }, + { + "comment_text": "", + "digests": { + "md5": "ff7280dd032d202b417871d39febadec", + "sha256": "3d7da3009c0f3e783b2c873687652d83b1bbfd5c88e9813fb7e5b03c0dd3108b" + }, + "downloads": -1, + "filename": "PyYAML-3.13-cp36-cp36m-win_amd64.whl", + "has_sig": false, + "md5_digest": "ff7280dd032d202b417871d39febadec", + "packagetype": "bdist_wheel", + "python_version": "cp36", + "requires_python": null, + "size": 206277, + "upload_time": "2018-07-05T22:53:27", + "upload_time_iso_8601": "2018-07-05T22:53:27.386610Z", + "url": "https://files.pythonhosted.org/packages/4f/ca/5fad249c5032270540c24d2189b0ddf1396aac49b0bdc548162edcf14131/PyYAML-3.13-cp36-cp36m-win_amd64.whl", + "yanked": false, + "yanked_reason": null + }, + { + "comment_text": "", + "digests": { + "md5": "03ac720a2dcb18f2f1a3d026d281d778", + "sha256": "e170a9e6fcfd19021dd29845af83bb79236068bf5fd4df3327c1be18182b2531" + }, + "downloads": -1, + "filename": "PyYAML-3.13-cp37-cp37m-win32.whl", + "has_sig": false, + "md5_digest": "03ac720a2dcb18f2f1a3d026d281d778", + "packagetype": "bdist_wheel", + "python_version": "cp37", + "requires_python": null, + "size": 188313, + "upload_time": "2018-07-05T22:53:28", + "upload_time_iso_8601": "2018-07-05T22:53:28.995194Z", + "url": "https://files.pythonhosted.org/packages/5c/ed/d6557f70daaaab6ee5cd2f8ccf7bedd63081e522e38679c03840e1acc114/PyYAML-3.13-cp37-cp37m-win32.whl", + "yanked": false, + "yanked_reason": null + }, + { + "comment_text": "", + "digests": { + "md5": "02ab28701247a80e059daa6efe11e67d", + "sha256": "aa7dd4a6a427aed7df6fb7f08a580d68d9b118d90310374716ae90b710280af1" + }, + "downloads": -1, + "filename": "PyYAML-3.13-cp37-cp37m-win_amd64.whl", + "has_sig": false, + "md5_digest": "02ab28701247a80e059daa6efe11e67d", + "packagetype": "bdist_wheel", + "python_version": "cp37", + "requires_python": null, + "size": 206614, + "upload_time": "2018-07-05T22:53:30", + "upload_time_iso_8601": "2018-07-05T22:53:30.864210Z", + "url": "https://files.pythonhosted.org/packages/bf/96/d02ef8e1f3073e07ffdc240444e5041f403f29c0775f9f1653f18221082f/PyYAML-3.13-cp37-cp37m-win_amd64.whl", + "yanked": false, + "yanked_reason": null + }, + { + "comment_text": "", + "digests": { + "md5": "b78b96636d68ac581c0e2f38158c224f", + "sha256": "3ef3092145e9b70e3ddd2c7ad59bdd0252a94dfe3949721633e41344de00a6bf" + }, + "downloads": -1, + "filename": "PyYAML-3.13.tar.gz", + "has_sig": false, + "md5_digest": "b78b96636d68ac581c0e2f38158c224f", + "packagetype": "sdist", + "python_version": "source", + "requires_python": null, + "size": 270607, + "upload_time": "2018-07-05T22:52:16", + "upload_time_iso_8601": "2018-07-05T22:52:16.800539Z", + "url": "https://files.pythonhosted.org/packages/9e/a3/1d13970c3f36777c583f136c136f804d70f500168edc1edea6daa7200769/PyYAML-3.13.tar.gz", + "yanked": false, + "yanked_reason": null + } + ], + "vulnerabilities": [ + { + "aliases": [ + "CVE-2017-18342" + ], + "details": "In PyYAML before 5.1, the yaml.load() API could execute arbitrary code if used with untrusted data. The load() function has been deprecated in version 5.1 and the 'UnsafeLoader' has been introduced for backward compatibility with the function.", + "fixed_in": [ + "5.1" + ], + "id": "PYSEC-2018-49", + "link": "https://osv.dev/vulnerability/PYSEC-2018-49", + "source": "osv", + "summary": null + }, + { + "aliases": [ + "CVE-2020-14343" + ], + "details": "A vulnerability was discovered in the PyYAML library in versions before 5.4, where it is susceptible to arbitrary code execution when it processes untrusted YAML files through the full_load method or with the FullLoader loader. Applications that use the library to process untrusted input may be vulnerable to this flaw. This flaw allows an attacker to execute arbitrary code on the system by abusing the python/object/new constructor. This flaw is due to an incomplete fix for CVE-2020-1747.", + "fixed_in": [ + "5.4" + ], + "id": "PYSEC-2021-142", + "link": "https://osv.dev/vulnerability/PYSEC-2021-142", + "source": "osv", + "summary": null + }, + { + "aliases": [ + "CVE-2017-18342" + ], + "details": "In PyYAML before 4.1, the yaml.load() API could execute arbitrary code. In other words, yaml.safe_load is not used.", + "fixed_in": [ + "4.1" + ], + "id": "GHSA-rprw-h62v-c2w7", + "link": "https://osv.dev/vulnerability/GHSA-rprw-h62v-c2w7", + "source": "osv", + "summary": null + }, + { + "aliases": [ + "CVE-2020-14343" + ], + "details": "A vulnerability was discovered in the PyYAML library in versions before 5.4, where it is susceptible to arbitrary code execution when it processes untrusted YAML files through the full_load method or with the FullLoader loader. Applications that use the library to process untrusted input may be vulnerable to this flaw. This flaw allows an attacker to execute arbitrary code on the system by abusing the python/object/new constructor. This flaw is due to an incomplete fix for CVE-2020-1747.", + "fixed_in": [ + "5.4" + ], + "id": "GHSA-8q59-q68h-6hv4", + "link": "https://osv.dev/vulnerability/GHSA-8q59-q68h-6hv4", + "source": "osv", + "summary": null + }, + { + "aliases": [ + "CVE-2020-1747" + ], + "details": "A vulnerability was discovered in the PyYAML library in versions before 5.3.1, where it is susceptible to arbitrary code execution when it processes untrusted YAML files through the full_load method or with the FullLoader loader. Applications that use the library to process untrusted input may be vulnerable to this flaw. An attacker could use this flaw to execute arbitrary code on the system by abusing the python/object/new constructor.", + "fixed_in": [ + "5.3.1" + ], + "id": "GHSA-6757-jp84-gxfx", + "link": "https://osv.dev/vulnerability/GHSA-6757-jp84-gxfx", + "source": "osv", + "summary": null + } + ] +} diff --git a/tests/repositories/fixtures/pypi.org/json/requests.json b/tests/repositories/fixtures/pypi.org/json/requests.json index 3db88fcd652..da008f1ff71 100644 --- a/tests/repositories/fixtures/pypi.org/json/requests.json +++ b/tests/repositories/fixtures/pypi.org/json/requests.json @@ -1,3246 +1,1456 @@ { - "info": { - "author": "Kenneth Reitz", - "author_email": "me@kennethreitz.org", - "bugtrack_url": null, - "classifiers": [ - "Development Status :: 5 - Production/Stable", - "Intended Audience :: Developers", - "License :: OSI Approved :: Apache Software License", - "Natural Language :: English", - "Programming Language :: Python", - "Programming Language :: Python :: 2.6", - "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 :: Implementation :: CPython", - "Programming Language :: Python :: Implementation :: PyPy" - ], - "description": "", - "docs_url": null, - "download_url": "", - "downloads": { - "last_day": 0, - "last_month": 0, - "last_week": 0 - }, - "home_page": "http://python-requests.org", - "keywords": "", - "license": "Apache 2.0", - "maintainer": "", - "maintainer_email": "", - "name": "requests", - "platform": "", - "project_url": "https://pypi.org/project/requests/", - "release_url": "https://pypi.org/project/requests/2.18.4/", - "requires_dist": [ - "win-inet-pton; sys_platform == \"win32\" and (python_version == \"2.7\" or python_version == \"2.6\") and extra == 'socks'", - "PySocks (!=1.5.7,>=1.5.6); extra == 'socks'", - "pyOpenSSL (>=0.14); extra == 'security'", - "idna (>=2.0.0); extra == 'security'", - "cryptography (>=1.3.4); extra == 'security'", - "urllib3 (<1.23,>=1.21.1)", - "idna (>=2.5,<2.7)", - "chardet (>=3.0.2,<3.1.0)", - "certifi (>=2017.4.17)" - ], - "requires_python": "", - "summary": "Python HTTP for Humans.", - "version": "2.18.4" - }, - "releases": { - "0.0.1": [], - "0.10.0": [ - { - "comment_text": "", - "digests": { - "md5": "c90a48af18eb4170dbe4832c1104440c", - "sha256": "210a82e678c45d433a4ad1f105974b3102a8ab5198872dc0a3238a8750d4c65e" - }, - "downloads": -1, - "filename": "requests-0.10.0.tar.gz", - "has_sig": false, - "md5_digest": "c90a48af18eb4170dbe4832c1104440c", - "packagetype": "sdist", - "python_version": "source", - "size": 62046, - "upload_time": "2012-01-22T05:08:17", - "url": "https://files.pythonhosted.org/packages/62/35/0230421b8c4efad6624518028163329ad0c2df9e58e6b3bee013427bf8f6/requests-0.10.0.tar.gz" - } - ], - "0.10.1": [ - { - "comment_text": "", - "digests": { - "md5": "699147d2143bff95238befa58980b912", - "sha256": "da6031575a30c7b65ea99465183468349b3645e6bf5322e49d53f565b27ed2b5" - }, - "downloads": -1, - "filename": "requests-0.10.1.tar.gz", - "has_sig": false, - "md5_digest": "699147d2143bff95238befa58980b912", - "packagetype": "sdist", - "python_version": "source", - "size": 63234, - "upload_time": "2012-01-23T08:22:52", - "url": "https://files.pythonhosted.org/packages/b4/56/ba2d803383ec32d70f8faa7df5eb37ee9b3fc662ff68b7ab01ad9740b83a/requests-0.10.1.tar.gz" - } - ], - "0.10.2": [ - { - "comment_text": "", - "digests": { - "md5": "47c3cf85a0112d423137b43989663bef", - "sha256": "1546ef1e291ae337086369b621096fb0f69f88f6f67f60b1f6b7c18d1ca278e1" - }, - "downloads": -1, - "filename": "requests-0.10.2.tar.gz", - "has_sig": false, - "md5_digest": "47c3cf85a0112d423137b43989663bef", - "packagetype": "sdist", - "python_version": "source", - "size": 60158, - "upload_time": "2012-02-15T09:48:52", - "url": "https://files.pythonhosted.org/packages/58/1e/6b84552b6553f5beaf7cb0fe15115e7e4673326ed9188ad5338559ee8285/requests-0.10.2.tar.gz" - } - ], - "0.10.3": [ - { - "comment_text": "", - "digests": { - "md5": "a055af00593f4828c3becd0ccfab503f", - "sha256": "8eeb24328304b015cbd59a49670e2738b77034b225b566729ddb19941899e490" - }, - "downloads": -1, - "filename": "requests-0.10.3.tar.gz", - "has_sig": false, - "md5_digest": "a055af00593f4828c3becd0ccfab503f", - "packagetype": "sdist", - "python_version": "source", - "size": 60493, - "upload_time": "2012-02-20T20:10:57", - "url": "https://files.pythonhosted.org/packages/01/44/39988315e036b79fe70428273053617266bf20d1363e91082346fae8450d/requests-0.10.3.tar.gz" - } - ], - "0.10.4": [ - { - "comment_text": "", - "digests": { - "md5": "5e465e9e739bcc9f71935ca4e9706168", - "sha256": "2ad4cc51d7595ca6f97373a0d697999e0cbdbbf1ba665d18f0f3dcec12b8be77" - }, - "downloads": -1, - "filename": "requests-0.10.4.tar.gz", - "has_sig": false, - "md5_digest": "5e465e9e739bcc9f71935ca4e9706168", - "packagetype": "sdist", - "python_version": "source", - "size": 60889, - "upload_time": "2012-02-20T22:21:31", - "url": "https://files.pythonhosted.org/packages/94/ac/5fa21e435ba8050d14db92ce29763c28196b727d4079dc608d39177fbf9b/requests-0.10.4.tar.gz" - } - ], - "0.10.6": [ - { - "comment_text": "", - "digests": { - "md5": "c889401445de3cbbac98509208a73b83", - "sha256": "31134b4f35951730dcce59f2af334478b68caa5728902a1d6bd5e115ec677d8b" - }, - "downloads": -1, - "filename": "requests-0.10.6.tar.gz", - "has_sig": false, - "md5_digest": "c889401445de3cbbac98509208a73b83", - "packagetype": "sdist", - "python_version": "source", - "size": 61673, - "upload_time": "2012-02-26T05:17:54", - "url": "https://files.pythonhosted.org/packages/b4/1f/8f5430040fcf4391dc5bd324424a569e2e0d96595952b21eb82403602d98/requests-0.10.6.tar.gz" - } - ], - "0.10.7": [ - { - "comment_text": "", - "digests": { - "md5": "a3ac9d431981dcfd592fd0f35c499e4a", - "sha256": "80f32a74bed8cf081a3a25512f8725e09ceda217101ea706efced262bb05aec6" - }, - "downloads": -1, - "filename": "requests-0.10.7.tar.gz", - "has_sig": false, - "md5_digest": "a3ac9d431981dcfd592fd0f35c499e4a", - "packagetype": "sdist", - "python_version": "source", - "size": 61826, - "upload_time": "2012-03-08T01:50:58", - "url": "https://files.pythonhosted.org/packages/c5/cd/0597f9c040db24ca6d23cc74faa102554cb0a93bdbffb855d7749547921f/requests-0.10.7.tar.gz" - } - ], - "0.10.8": [ - { - "comment_text": "", - "digests": { - "md5": "0fc89a30eef76b2393cbc7ebace91750", - "sha256": "bec280d924a8be87b3377ee78a976334a6e7c944a8fe09bbd9447e669b984dae" - }, - "downloads": -1, - "filename": "requests-0.10.8.tar.gz", - "has_sig": false, - "md5_digest": "0fc89a30eef76b2393cbc7ebace91750", - "packagetype": "sdist", - "python_version": "source", - "size": 62201, - "upload_time": "2012-03-09T17:59:54", - "url": "https://files.pythonhosted.org/packages/9a/05/4ab34c6aae63a01aef2fd8be3573a99c197cc76a67f8cee751cb3a7784fb/requests-0.10.8.tar.gz" - } - ], - "0.11.1": [ - { - "comment_text": "", - "digests": { - "md5": "c903c32a0e1f04889e693da8e9c71872", - "sha256": "fd4260541d0e559c78e2b3072bd79f36e0f8ef935bcbbadaa8c98cd8b5a62897" - }, - "downloads": -1, - "filename": "requests-0.11.1.tar.gz", - "has_sig": false, - "md5_digest": "c903c32a0e1f04889e693da8e9c71872", - "packagetype": "sdist", - "python_version": "source", - "size": 63100, - "upload_time": "2012-03-31T05:47:56", - "url": "https://files.pythonhosted.org/packages/d7/ee/6826f31ae3e0e68606cb9086c3904582b3982bbccc73f34d6dc9912b48ad/requests-0.11.1.tar.gz" - } - ], - "0.11.2": [ - { - "comment_text": "", - "digests": { - "md5": "5acd23600c897bf1560dca18005b428c", - "sha256": "547bf78a774a6018271d6e5c40613ec554642ba4d6cdf45813e7894145293c57" - }, - "downloads": -1, - "filename": "requests-0.11.2.tar.gz", - "has_sig": false, - "md5_digest": "5acd23600c897bf1560dca18005b428c", - "packagetype": "sdist", - "python_version": "source", - "size": 71080, - "upload_time": "2012-04-23T04:29:36", - "url": "https://files.pythonhosted.org/packages/b6/52/ad2911cf5586f2372a296a93a94d0324e4ffdd225975241562c450594795/requests-0.11.2.tar.gz" - } - ], - "0.12.0": [ - { - "comment_text": "", - "digests": { - "md5": "c38bacf4d6a065f3c47463e63efdfb5a", - "sha256": "8a88a291599444be608940c227b6114212220d8126c512af821f1ab207fe5072" - }, - "downloads": -1, - "filename": "requests-0.12.0.tar.gz", - "has_sig": false, - "md5_digest": "c38bacf4d6a065f3c47463e63efdfb5a", - "packagetype": "sdist", - "python_version": "source", - "size": 76859, - "upload_time": "2012-05-03T01:18:47", - "url": "https://files.pythonhosted.org/packages/3a/ac/0372d6b7fbde19444d5cc560f296e70b26283d2bac0665b576dd3f5e6b60/requests-0.12.0.tar.gz" - } - ], - "0.12.01": [], - "0.12.1": [ - { - "comment_text": "", - "digests": { - "md5": "fe9e0515d09733d0eb9e2031c03401b2", - "sha256": "9ce56b87180c06728d96ca734055675abf8f5cc3136e0d7712a6260430685589" - }, - "downloads": -1, - "filename": "requests-0.12.1.tar.gz", - "has_sig": false, - "md5_digest": "fe9e0515d09733d0eb9e2031c03401b2", - "packagetype": "sdist", - "python_version": "source", - "size": 78245, - "upload_time": "2012-05-08T07:21:59", - "url": "https://files.pythonhosted.org/packages/3a/0a/7c62c06702ddb4d3bc50d27f5b8e094d6e66a3374fc2eedf264742f84805/requests-0.12.1.tar.gz" - } - ], - "0.13.0": [ - { - "comment_text": "", - "digests": { - "md5": "7d41e51c273806456faab61370d5147e", - "sha256": "03a2001843546147ddb6972d0661e2002b9be4ccbbbd2177ee10f05bd1910109" - }, - "downloads": -1, - "filename": "requests-0.13.0.tar.gz", - "has_sig": false, - "md5_digest": "7d41e51c273806456faab61370d5147e", - "packagetype": "sdist", - "python_version": "source", - "size": 68172, - "upload_time": "2012-05-30T02:54:18", - "url": "https://files.pythonhosted.org/packages/86/1b/88d3753931419a226bb4e4c1d354cd2d40acff3482b37e30dd84ba8a243b/requests-0.13.0.tar.gz" - } - ], - "0.13.1": [ - { - "comment_text": "", - "digests": { - "md5": "31a08091feeefe60817e45122d933219", - "sha256": "31f3ae96787fe74a78c7dd9626bf997fd4eabacc040b7b33fbd8632d2c2a97f6" - }, - "downloads": -1, - "filename": "requests-0.13.1.tar.gz", - "has_sig": false, - "md5_digest": "31a08091feeefe60817e45122d933219", - "packagetype": "sdist", - "python_version": "source", - "size": 68474, - "upload_time": "2012-06-08T04:22:28", - "url": "https://files.pythonhosted.org/packages/0d/63/0e6c6b817ab38fb3e38a192d6631d698fe78308a68659af3aa523cd736d4/requests-0.13.1.tar.gz" - } - ], - "0.13.2": [ - { - "comment_text": "", - "digests": { - "md5": "fac5635391778e2394a411d37e69ae5e", - "sha256": "37684324da8aca40e88fa2f7faa526cc116d74e979c2ac5d9119fe6e1bb5ced5" - }, - "downloads": -1, - "filename": "requests-0.13.2.tar.gz", - "has_sig": false, - "md5_digest": "fac5635391778e2394a411d37e69ae5e", - "packagetype": "sdist", - "python_version": "source", - "size": 514484, - "upload_time": "2012-06-29T02:37:41", - "url": "https://files.pythonhosted.org/packages/62/ca/338cf287e172099e4500cfa2cb580d2c9a1874427a8a14324d7a4c9d01b1/requests-0.13.2.tar.gz" - } - ], - "0.13.3": [ - { - "comment_text": "", - "digests": { - "md5": "54387d7df6c69580b906dcb5a2bd0724", - "sha256": "79503a14a43d6ae0b0b2e92f88ed0b01015528b8a8ab47721c28aa993aa4db2b" - }, - "downloads": -1, - "filename": "requests-0.13.3.tar.gz", - "has_sig": false, - "md5_digest": "54387d7df6c69580b906dcb5a2bd0724", - "packagetype": "sdist", - "python_version": "source", - "size": 515192, - "upload_time": "2012-07-12T23:20:43", - "url": "https://files.pythonhosted.org/packages/54/9d/1ee0bd44e9334b6382ed5226d4bc33518d0d0b03ed806af6444d1c80ed83/requests-0.13.3.tar.gz" - } - ], - "0.13.4": [ - { - "comment_text": "", - "digests": { - "md5": "286cd3352509691e81c520accc5b9e48", - "sha256": "94672e92c23fefe516c5310b84d97b4ea19ef373003a7ba7af1057102a87f345" - }, - "downloads": -1, - "filename": "requests-0.13.4.tar.gz", - "has_sig": false, - "md5_digest": "286cd3352509691e81c520accc5b9e48", - "packagetype": "sdist", - "python_version": "source", - "size": 519515, - "upload_time": "2012-07-27T08:22:09", - "url": "https://files.pythonhosted.org/packages/04/75/52e169351e24a9faa8bfac69a07ea3551b845ca6354f22da15c5da3d5100/requests-0.13.4.tar.gz" - } - ], - "0.13.5": [ - { - "comment_text": "", - "digests": { - "md5": "805fd122b4cfd224e15ff2f5288c5ba0", - "sha256": "c6abb4b15a3f2aaad18c22b214b9b35d69ec4e2730c5b922f95f17a88981f957" - }, - "downloads": -1, - "filename": "requests-0.13.5.tar.gz", - "has_sig": false, - "md5_digest": "805fd122b4cfd224e15ff2f5288c5ba0", - "packagetype": "sdist", - "python_version": "source", - "size": 519553, - "upload_time": "2012-07-27T09:23:41", - "url": "https://files.pythonhosted.org/packages/ba/d1/919f6240a37ce5aade82da39809e1f28a5f2899a29a0ca10c381ba70efbb/requests-0.13.5.tar.gz" - } - ], - "0.13.6": [ - { - "comment_text": "", - "digests": { - "md5": "9ea0f38cc4bf444be5a4c90f127211f2", - "sha256": "3cca63908f1b941d2da61ef0e8baf7bf014cc0df6512e172b8d2ac87be82b916" - }, - "downloads": -1, - "filename": "requests-0.13.6.tar.gz", - "has_sig": false, - "md5_digest": "9ea0f38cc4bf444be5a4c90f127211f2", - "packagetype": "sdist", - "python_version": "source", - "size": 520031, - "upload_time": "2012-08-06T08:46:22", - "url": "https://files.pythonhosted.org/packages/02/56/a6203485b552f9e8e8f16bd4e576446f94737ccbc563957e7510c8e401e4/requests-0.13.6.tar.gz" - } - ], - "0.13.7": [ - { - "comment_text": "", - "digests": { - "md5": "9212044f915d44fe3010cb923c0e08e5", - "sha256": "d9c6cf2890a0dc1200407f99130d334ef5ab5270bed3d9b4c14b0bb9c6cc3400" - }, - "downloads": -1, - "filename": "requests-0.13.7.tar.gz", - "has_sig": false, - "md5_digest": "9212044f915d44fe3010cb923c0e08e5", - "packagetype": "sdist", - "python_version": "source", - "size": 521660, - "upload_time": "2012-08-19T00:47:48", - "url": "https://files.pythonhosted.org/packages/b4/48/e82ded36a3cee7c0ef9605b44c4615ffe4a37f8b6c8b17fdbc15fae18daa/requests-0.13.7.tar.gz" - } - ], - "0.13.8": [ - { - "comment_text": "", - "digests": { - "md5": "d01596bd344db94763b2e4dfaa7bc7b9", - "sha256": "3ef37004f6394b111a27f0b6d0a64be83f7e4bccfbbbcdd21455400af5f4fbd4" - }, - "downloads": -1, - "filename": "requests-0.13.8.tar.gz", - "has_sig": false, - "md5_digest": "d01596bd344db94763b2e4dfaa7bc7b9", - "packagetype": "sdist", - "python_version": "source", - "size": 522140, - "upload_time": "2012-08-20T15:24:42", - "url": "https://files.pythonhosted.org/packages/db/1e/1f37495384a628887e10ecd61d45dba455ceec4b8b5b463512b4700e5b3d/requests-0.13.8.tar.gz" - } - ], - "0.13.9": [ - { - "comment_text": "", - "digests": { - "md5": "66d52b8f47be517fc91a6e18d6b9ce82", - "sha256": "d887bb1c06948a8930d6e73a1f942f9febe9157a299a984994c20c84b2c21e20" - }, - "downloads": -1, - "filename": "requests-0.13.9.tar.gz", - "has_sig": false, - "md5_digest": "66d52b8f47be517fc91a6e18d6b9ce82", - "packagetype": "sdist", - "python_version": "source", - "size": 522477, - "upload_time": "2012-08-25T15:26:50", - "url": "https://files.pythonhosted.org/packages/01/da/da83c242c5a77c58aa86072d68fd2855aa9b4d3b1a8bac4b402531b25ff1/requests-0.13.9.tar.gz" - } - ], - "0.14.0": [ - { - "comment_text": "", - "digests": { - "md5": "a809c747e4f09b92147721ebc3e23dd6", - "sha256": "4e690ba0275ab4a8c9a5c7a6eb14e79e1adad0f84331fc638a18d7751f41ac3b" - }, - "downloads": -1, - "filename": "requests-0.14.0.tar.gz", - "has_sig": false, - "md5_digest": "a809c747e4f09b92147721ebc3e23dd6", - "packagetype": "sdist", - "python_version": "source", - "size": 523133, - "upload_time": "2012-09-02T08:50:39", - "url": "https://files.pythonhosted.org/packages/4e/31/50a12e5b5e585e0b00ce2592c9b45f2ae109575e3707a341afd7550a8d1a/requests-0.14.0.tar.gz" - } - ], - "0.14.1": [ - { - "comment_text": "", - "digests": { - "md5": "3de30600072cbc7214ae342d1d08aa46", - "sha256": "4f563b907782b2c95dd2cbaf882a96133e567d46290a0e7aafa0c6f3efad19ba" - }, - "downloads": -1, - "filename": "requests-0.14.1.tar.gz", - "has_sig": false, - "md5_digest": "3de30600072cbc7214ae342d1d08aa46", - "packagetype": "sdist", - "python_version": "source", - "size": 523254, - "upload_time": "2012-10-01T17:30:05", - "url": "https://files.pythonhosted.org/packages/40/1d/63a729208e1e93cf2cbda953b9f20ec9b101eb964e3f6205d1c2e294f294/requests-0.14.1.tar.gz" - } - ], - "0.14.2": [ - { - "comment_text": "", - "digests": { - "md5": "488508ba3e8270992ad5b3fb54d364ca", - "sha256": "0e3345a8ac0d712bf17bd9d3276415050c5f972265ab62993cd4540a3a1aaaef" - }, - "downloads": -1, - "filename": "requests-0.14.2.tar.gz", - "has_sig": false, - "md5_digest": "488508ba3e8270992ad5b3fb54d364ca", - "packagetype": "sdist", - "python_version": "source", - "size": 361488, - "upload_time": "2012-10-27T15:08:51", - "url": "https://files.pythonhosted.org/packages/fa/d1/0dd60e1146e79e7b193e7b0189d8c13ef100d55cbfe65e1825ac5f03c397/requests-0.14.2.tar.gz" - } - ], - "0.2.0": [ - { - "comment_text": "", - "digests": { - "md5": "637ae94cb6f2f1d9ea9020293055964a", - "sha256": "813202ace4d9301a3c00740c700e012fb9f3f8c73ddcfe02ab558a8df6f175fd" - }, - "downloads": -1, - "filename": "requests-0.2.0.tar.gz", - "has_sig": false, - "md5_digest": "637ae94cb6f2f1d9ea9020293055964a", - "packagetype": "sdist", - "python_version": "source", - "size": 5533, - "upload_time": "2011-02-14T08:49:42", - "url": "https://files.pythonhosted.org/packages/ba/bb/dfa0141a32d773c47e4dede1a617c59a23b74dd302e449cf85413fc96bc4/requests-0.2.0.tar.gz" - } - ], - "0.2.1": [ - { - "comment_text": "", - "digests": { - "md5": "7e9590f3985ece46fc8306e906b458c7", - "sha256": "d54eb33499f018fc6bd297613bf866f8d134629c8e02964aab6ef951f460e41e" - }, - "downloads": -1, - "filename": "requests-0.2.1.tar.gz", - "has_sig": false, - "md5_digest": "7e9590f3985ece46fc8306e906b458c7", - "packagetype": "sdist", - "python_version": "source", - "size": 12715, - "upload_time": "2011-02-14T16:38:12", - "url": "https://files.pythonhosted.org/packages/4b/ad/d536b2e572e843fda13e4458c67f937b05ce359722c1e4cdad35ba05b6e3/requests-0.2.1.tar.gz" - } - ], - "0.2.2": [ - { - "comment_text": "", - "digests": { - "md5": "a703489b1a4a650698ddcf84857360c6", - "sha256": "b3289694b2ddf6adb4f7e1f470b9771330c76125611222b9c702f0e2e9733cbc" - }, - "downloads": -1, - "filename": "requests-0.2.2.tar.gz", - "has_sig": false, - "md5_digest": "a703489b1a4a650698ddcf84857360c6", - "packagetype": "sdist", - "python_version": "source", - "size": 13049, - "upload_time": "2011-02-14T18:58:40", - "url": "https://files.pythonhosted.org/packages/82/3c/3b5beca192da920c0c2ba67119d66ba1e4b1e766f40898e5e684d697ca1c/requests-0.2.2.tar.gz" - } - ], - "0.2.3": [ - { - "comment_text": "", - "digests": { - "md5": "102243646fc0cffdc82269f4bb5c6d5d", - "sha256": "8e374b75aaae7f85325e9bb126e96cb77a3bfc17e81ee74a0e96916aac1cc2ba" - }, - "downloads": -1, - "filename": "requests-0.2.3.tar.gz", - "has_sig": false, - "md5_digest": "102243646fc0cffdc82269f4bb5c6d5d", - "packagetype": "sdist", - "python_version": "source", - "size": 13255, - "upload_time": "2011-02-15T15:47:29", - "url": "https://files.pythonhosted.org/packages/6f/7e/5c2d7d9102c6ab847bd1215f96255e894fbfc81c8abf2c1714ae2a504913/requests-0.2.3.tar.gz" - } - ], - "0.2.4": [ - { - "comment_text": "", - "digests": { - "md5": "62dbe8cf12bc1ccd03776e74f59e9ef6", - "sha256": "ef1bd1a81022e9bf574ecfe69cbd8597e79371b890d29bd3847dd946102c8eed" - }, - "downloads": -1, - "filename": "requests-0.2.4.tar.gz", - "has_sig": false, - "md5_digest": "62dbe8cf12bc1ccd03776e74f59e9ef6", - "packagetype": "sdist", - "python_version": "source", - "size": 13653, - "upload_time": "2011-02-19T07:03:14", - "url": "https://files.pythonhosted.org/packages/dc/02/789859c27162bb91ecf6b72ed4ce1af3ed1710255265ad0901c4d4e25666/requests-0.2.4.tar.gz" - } - ], - "0.3.0": [ - { - "comment_text": "", - "digests": { - "md5": "aa1306575a78ba8b5e625dd2645d2ef0", - "sha256": "57eed745eb2a2e3c7e1dd935ccd49eb2eac51cfcdace4a97fb44de5da70f0035" - }, - "downloads": -1, - "filename": "requests-0.3.0.tar.gz", - "has_sig": false, - "md5_digest": "aa1306575a78ba8b5e625dd2645d2ef0", - "packagetype": "sdist", - "python_version": "source", - "size": 15021, - "upload_time": "2011-02-25T14:58:38", - "url": "https://files.pythonhosted.org/packages/96/2b/88e9d6bf2e9d75cda77bf4fdc03720f4ba262beb532f9510a4a7f3e45660/requests-0.3.0.tar.gz" - } - ], - "0.3.1": [ - { - "comment_text": "", - "digests": { - "md5": "3f4701e2ab414cd7018804a70328c527", - "sha256": "05dddfd656d25b7738778d2b4e8fa72e53b5357a2f80a319e6e1fa59edb03339" - }, - "downloads": -1, - "filename": "requests-0.3.1.tar.gz", - "has_sig": false, - "md5_digest": "3f4701e2ab414cd7018804a70328c527", - "packagetype": "sdist", - "python_version": "source", - "size": 15275, - "upload_time": "2011-04-01T20:55:03", - "url": "https://files.pythonhosted.org/packages/5e/c0/76fac9445cd8b6394eacae1e098ca0c97767cc0112e45e68521f553df003/requests-0.3.1.tar.gz" - } - ], - "0.3.2": [ - { - "comment_text": "", - "digests": { - "md5": "bde777f4c5b7bbb09033901c443962b3", - "sha256": "78ecf812ee865b62be106100a3c6f24058c7901ad995351b8818f18ea97ce848" - }, - "downloads": -1, - "filename": "requests-0.3.2.tar.gz", - "has_sig": false, - "md5_digest": "bde777f4c5b7bbb09033901c443962b3", - "packagetype": "sdist", - "python_version": "source", - "size": 15515, - "upload_time": "2011-04-15T23:30:50", - "url": "https://files.pythonhosted.org/packages/d5/f1/16b57088f11cd5c6c82834bad6475826309cee44edaae860e9f65c084703/requests-0.3.2.tar.gz" - } - ], - "0.3.3": [ - { - "comment_text": "", - "digests": { - "md5": "84c762c116617ba4dd03c19e2b61eb53", - "sha256": "ccbbc41c4c009baecf41e993727048c65c440fefadb217b11e73f63cd0cae09a" - }, - "downloads": -1, - "filename": "requests-0.3.3.tar.gz", - "has_sig": false, - "md5_digest": "84c762c116617ba4dd03c19e2b61eb53", - "packagetype": "sdist", - "python_version": "source", - "size": 18995, - "upload_time": "2011-05-12T10:03:24", - "url": "https://files.pythonhosted.org/packages/f1/64/8a2ba81294381bb90e8fb4b6fa750e0dca3f2d19e8caaeeae5e7bb6b3753/requests-0.3.3.tar.gz" - } - ], - "0.3.4": [ - { - "comment_text": "", - "digests": { - "md5": "55152cc2b135bc8989dc4fa279295f8b", - "sha256": "e72a42a0317f33114b48c972d3056bad3265b92450d4e0e51ad0b384e43bc6d9" - }, - "downloads": -1, - "filename": "requests-0.3.4.tar.gz", - "has_sig": false, - "md5_digest": "55152cc2b135bc8989dc4fa279295f8b", - "packagetype": "sdist", - "python_version": "source", - "size": 19773, - "upload_time": "2011-05-14T20:30:44", - "url": "https://files.pythonhosted.org/packages/ed/1b/8682a0cfe92f67e30fb9ac7982cb785a1230ca4385dc1353513f5b87b9f4/requests-0.3.4.tar.gz" - } - ], - "0.4.0": [ - { - "comment_text": "", - "digests": { - "md5": "77a7a7edd54169c6fa7ace49dcb0b20c", - "sha256": "35185852569456de25a654c5f9a43a1b8e4dc18a2a676985bbb9d5e7e5a9703e" - }, - "downloads": -1, - "filename": "requests-0.4.0.tar.gz", - "has_sig": false, - "md5_digest": "77a7a7edd54169c6fa7ace49dcb0b20c", - "packagetype": "sdist", - "python_version": "source", - "size": 17194, - "upload_time": "2011-05-15T05:58:43", - "url": "https://files.pythonhosted.org/packages/56/c3/0887d5d6c18a366308b3dc7024210b4c89ff9ae92ae5fb87cf8fe58bcae2/requests-0.4.0.tar.gz" - } - ], - "0.4.1": [ - { - "comment_text": "", - "digests": { - "md5": "812ff0ce63d14f7b940bacd880d54ee0", - "sha256": "f978616765803e9e0e9943136b34be0da69d74ba8fbd064cbfcf28f33ca54d8a" - }, - "downloads": -1, - "filename": "requests-0.4.1.tar.gz", - "has_sig": false, - "md5_digest": "812ff0ce63d14f7b940bacd880d54ee0", - "packagetype": "sdist", - "python_version": "source", - "size": 18443, - "upload_time": "2011-05-25T18:54:05", - "url": "https://files.pythonhosted.org/packages/b3/54/dbc9b89a66a15ab9f3e2595de1b1ebd1da954efcb30a329c98710e014c05/requests-0.4.1.tar.gz" - } - ], - "0.5.0": [ - { - "comment_text": "", - "digests": { - "md5": "6dfdc1688217d774d524e056ec6605a6", - "sha256": "747c8c79e9c75ba8608c7628e39d533a0234ff78a80569e40ba64865abc0e521" - }, - "downloads": -1, - "filename": "requests-0.5.0.tar.gz", - "has_sig": false, - "md5_digest": "6dfdc1688217d774d524e056ec6605a6", - "packagetype": "sdist", - "python_version": "source", - "size": 21945, - "upload_time": "2011-06-22T04:44:39", - "url": "https://files.pythonhosted.org/packages/0c/4d/d67bd4e4b17148aad88e6d75c62763ec27363d18038ed75019239e1516d0/requests-0.5.0.tar.gz" - } - ], - "0.5.1": [ - { - "comment_text": "", - "digests": { - "md5": "33a6e65d6a4e5b2d91df76256f607b81", - "sha256": "cfed662472d48e7bd6bfd8d7f79fe9072fc873b2e372fe3b9178a26daabebccc" - }, - "downloads": -1, - "filename": "requests-0.5.1.tar.gz", - "has_sig": false, - "md5_digest": "33a6e65d6a4e5b2d91df76256f607b81", - "packagetype": "sdist", - "python_version": "source", - "size": 23080, - "upload_time": "2011-07-24T05:01:45", - "url": "https://files.pythonhosted.org/packages/5f/1c/8d145fbdb23986063a8a0c954d484a793024137a99ac7f3da603717fe64a/requests-0.5.1.tar.gz" - } - ], - "0.6.0": [ - { - "comment_text": "", - "digests": { - "md5": "235e9fb6bfd71a48c0f00c0d5aef8896", - "sha256": "2c5036387b75dfb0ff3971604bd1e691cf6a55dc6c397df7adf9fc4804bc7f48" - }, - "downloads": -1, - "filename": "requests-0.6.0.tar.gz", - "has_sig": false, - "md5_digest": "235e9fb6bfd71a48c0f00c0d5aef8896", - "packagetype": "sdist", - "python_version": "source", - "size": 25692, - "upload_time": "2011-08-17T10:33:05", - "url": "https://files.pythonhosted.org/packages/0b/b8/932de3bc1b8630357de85bc0c794ee1a7d343cb8008b470a0c9d15e84341/requests-0.6.0.tar.gz" - } - ], - "0.6.1": [ - { - "comment_text": "", - "digests": { - "md5": "07770334d48bd69ede1cc28cd0dd7680", - "sha256": "2656b23db25398e990e6f5d75dfbd960454a1fe573aeedc651773ddd2a8a3bbc" - }, - "downloads": -1, - "filename": "requests-0.6.1.tar.gz", - "has_sig": false, - "md5_digest": "07770334d48bd69ede1cc28cd0dd7680", - "packagetype": "sdist", - "python_version": "source", - "size": 26107, - "upload_time": "2011-08-21T00:25:37", - "url": "https://files.pythonhosted.org/packages/a6/1f/f948fb7ba68b69b13a1fbbb70d7706e889c7b7d3e9867b498ca7971126db/requests-0.6.1.tar.gz" - } - ], - "0.6.2": [ - { - "comment_text": "", - "digests": { - "md5": "0583bb5393b9cfcb022dc2aef7d6ffc8", - "sha256": "b5419f909fc21b8eb037dc4bade29530c28993610b68213b7f7633bf10bcabbc" - }, - "downloads": -1, - "filename": "requests-0.6.2.tar.gz", - "has_sig": false, - "md5_digest": "0583bb5393b9cfcb022dc2aef7d6ffc8", - "packagetype": "sdist", - "python_version": "source", - "size": 26524, - "upload_time": "2011-10-09T13:12:45", - "url": "https://files.pythonhosted.org/packages/55/19/986305b95fae17c58c95e191943a282bce19f82535af4530890c483937ad/requests-0.6.2.tar.gz" - } - ], - "0.6.3": [ - { - "comment_text": "", - "digests": { - "md5": "35a954ae85b358e498fb0e602f1dce9d", - "sha256": "bde3e2ea45f6e47acd24ff55628fc7325cacd75746ee2d2b63c093554131fe41" - }, - "downloads": -1, - "filename": "requests-0.6.3.tar.gz", - "has_sig": false, - "md5_digest": "35a954ae85b358e498fb0e602f1dce9d", - "packagetype": "sdist", - "python_version": "source", - "size": 26606, - "upload_time": "2011-10-14T03:35:13", - "url": "https://files.pythonhosted.org/packages/e1/3f/9235f98536b1393ef8a8e2dbd27273588fc3246000b93b0d763325b2e30c/requests-0.6.3.tar.gz" - } - ], - "0.6.4": [ - { - "comment_text": "", - "digests": { - "md5": "e0eec314178ad9a7bb14f2ec32f35ba3", - "sha256": "151f105506913a6b84f6119400ca94732ec39f5b4e0991ca2fc840ddb4e37816" - }, - "downloads": -1, - "filename": "requests-0.6.4.tar.gz", - "has_sig": false, - "md5_digest": "e0eec314178ad9a7bb14f2ec32f35ba3", - "packagetype": "sdist", - "python_version": "source", - "size": 30212, - "upload_time": "2011-10-14T04:23:31", - "url": "https://files.pythonhosted.org/packages/97/e0/a2bc7317b13caf227a75c8151b562b62a2e9f5d4ab4ad59694bfdbf5c35c/requests-0.6.4.tar.gz" - } - ], - "0.6.5": [ - { - "comment_text": "", - "digests": { - "md5": "52f8bc956e027c8a0eb2684f6928169d", - "sha256": "bb332c171913c2f57cea805d013601af86a46b9aef9b7ef76bdcbed14f939bd7" - }, - "downloads": -1, - "filename": "requests-0.6.5.tar.gz", - "has_sig": false, - "md5_digest": "52f8bc956e027c8a0eb2684f6928169d", - "packagetype": "sdist", - "python_version": "source", - "size": 30647, - "upload_time": "2011-10-19T07:30:59", - "url": "https://files.pythonhosted.org/packages/a8/a6/38b9de830719e4cd62ddf51f240654200658d0315aa9e908eda90ee64879/requests-0.6.5.tar.gz" - } - ], - "0.6.6": [ - { - "comment_text": "", - "digests": { - "md5": "2180dacebc0e30ba730d083739907af6", - "sha256": "6670aee5fe3bb545e1f7e8bb073a06be65344b467cd698b0ad58e7d7792dc2bb" - }, - "downloads": -1, - "filename": "requests-0.6.6.tar.gz", - "has_sig": false, - "md5_digest": "2180dacebc0e30ba730d083739907af6", - "packagetype": "sdist", - "python_version": "source", - "size": 30809, - "upload_time": "2011-10-19T09:39:56", - "url": "https://files.pythonhosted.org/packages/df/8d/4b1bb15e8814fefa2cdf8f971a479b459d07f8176094bd59742720f31270/requests-0.6.6.tar.gz" - } - ], - "0.7.0": [ - { - "comment_text": "", - "digests": { - "md5": "83a1a7d79218756efd19b254eeb6b1f0", - "sha256": "13570c41a218affafe3f3e01db16d1f6cd238d3bd7a1d52cc435bf9de3df099a" - }, - "downloads": -1, - "filename": "requests-0.7.0.tar.gz", - "has_sig": false, - "md5_digest": "83a1a7d79218756efd19b254eeb6b1f0", - "packagetype": "sdist", - "python_version": "source", - "size": 31260, - "upload_time": "2011-10-23T03:33:24", - "url": "https://files.pythonhosted.org/packages/5c/8c/0399c9554b04b2b267d81239773657ddc720799a08565b6c21f7aed652df/requests-0.7.0.tar.gz" - } - ], - "0.7.1": [ - { - "comment_text": "", - "digests": { - "md5": "4821c6902d8e83c910c69c6492388e5f", - "sha256": "6795818f5f46d7ecf53965d96e2ceae66bf652c79703292973b7c56afb88b946" - }, - "downloads": -1, - "filename": "requests-0.7.1.tar.gz", - "has_sig": false, - "md5_digest": "4821c6902d8e83c910c69c6492388e5f", - "packagetype": "sdist", - "python_version": "source", - "size": 31804, - "upload_time": "2011-10-23T21:19:22", - "url": "https://files.pythonhosted.org/packages/00/c8/8cf0f078100ce5fe7ff35927d8861e2e36daed9be2db56690f3ad80ccec4/requests-0.7.1.tar.gz" - } - ], - "0.7.2": [ - { - "comment_text": "", - "digests": { - "md5": "03eb97ed6aacb4102fd434bbfc13ce17", - "sha256": "7e58616c2c943116c7fb7595ebc3b00c5016ede5e6b14cf4bd72a812a5534aef" - }, - "downloads": -1, - "filename": "requests-0.7.2.tar.gz", - "has_sig": false, - "md5_digest": "03eb97ed6aacb4102fd434bbfc13ce17", - "packagetype": "sdist", - "python_version": "source", - "size": 31837, - "upload_time": "2011-10-23T21:40:37", - "url": "https://files.pythonhosted.org/packages/7c/af/b46199ae37c032801bcdc5dbb1c82a59613883ee690ff4fd2b5dc3140130/requests-0.7.2.tar.gz" - } - ], - "0.7.3": [ - { - "comment_text": "", - "digests": { - "md5": "267f6f7d1109775d24a288f798e3ab4a", - "sha256": "2e7a0cb6251da5dd8c185f5d404e110d29e47afec7c8e60d78806436360a40d7" - }, - "downloads": -1, - "filename": "requests-0.7.3.tar.gz", - "has_sig": false, - "md5_digest": "267f6f7d1109775d24a288f798e3ab4a", - "packagetype": "sdist", - "python_version": "source", - "size": 31805, - "upload_time": "2011-10-23T23:04:13", - "url": "https://files.pythonhosted.org/packages/3d/54/c4a7dcfccac9e6dd738e9ed86848a9a5b07a4345e5949f8795cfdc0ea95f/requests-0.7.3.tar.gz" - } - ], - "0.7.4": [ - { - "comment_text": "", - "digests": { - "md5": "c015765399b8c1e309c84ade0d38f07b", - "sha256": "3101a857831c6b6ec1f88ccebc8a19d38af6a10372537f437cd978c5775b4286" - }, - "downloads": -1, - "filename": "requests-0.7.4.tar.gz", - "has_sig": false, - "md5_digest": "c015765399b8c1e309c84ade0d38f07b", - "packagetype": "sdist", - "python_version": "source", - "size": 31873, - "upload_time": "2011-10-27T00:36:25", - "url": "https://files.pythonhosted.org/packages/64/50/219c9ff86e6fecfb89bdfe1093aea523f14882657186f806462887220267/requests-0.7.4.tar.gz" - } - ], - "0.7.5": [ - { - "comment_text": "", - "digests": { - "md5": "9a12281a811ca25d347d806c456d96f1", - "sha256": "ae10f2c5d112768a2e62282dd6b33db230c10ef7a2c3b1cf404806598bacd0b6" - }, - "downloads": -1, - "filename": "requests-0.7.5.tar.gz", - "has_sig": false, - "md5_digest": "9a12281a811ca25d347d806c456d96f1", - "packagetype": "sdist", - "python_version": "source", - "size": 32298, - "upload_time": "2011-11-05T04:32:37", - "url": "https://files.pythonhosted.org/packages/2b/9e/1be659005a6bb394b02e12804fcaf8cd85050958a459945708b21e362b32/requests-0.7.5.tar.gz" - } - ], - "0.7.6": [ - { - "comment_text": "", - "digests": { - "md5": "728b21bf3914d69a4ff1012c66d9b6ba", - "sha256": "667f9c9cc447c9ee09d34d891db488f2695c99d025fae3ec8d02e235eb7eba95" - }, - "downloads": -1, - "filename": "requests-0.7.6.tar.gz", - "has_sig": false, - "md5_digest": "728b21bf3914d69a4ff1012c66d9b6ba", - "packagetype": "sdist", - "python_version": "source", - "size": 32748, - "upload_time": "2011-11-07T20:19:31", - "url": "https://files.pythonhosted.org/packages/de/f0/8fc024ef4f25ef5690c2121215029f88e1895b60c867c1a39134045b181e/requests-0.7.6.tar.gz" - } - ], - "0.8.0": [ - { - "comment_text": "", - "digests": { - "md5": "64dc0095cb645aa7f0083957950d524d", - "sha256": "62b557533f685c4a0af4e38dddc598c38f5ce0bd8e3b15b20809d1606f3843dd" - }, - "downloads": -1, - "filename": "requests-0.8.0.tar.gz", - "has_sig": false, - "md5_digest": "64dc0095cb645aa7f0083957950d524d", - "packagetype": "sdist", - "python_version": "source", - "size": 38785, - "upload_time": "2011-11-13T06:52:10", - "url": "https://files.pythonhosted.org/packages/6a/85/32d23f3dbc43e54631bb9bd76d34c2448cc2f2f0de29babfb1a6a79b4d60/requests-0.8.0.tar.gz" - } - ], - "0.8.1": [ - { - "comment_text": "", - "digests": { - "md5": "6135f837fbd113fc62904c60dcc5c70d", - "sha256": "23756d85cbf7dec36dd624853e76b380c2b538c21769adba1dcced9de0409f68" - }, - "downloads": -1, - "filename": "requests-0.8.1.tar.gz", - "has_sig": false, - "md5_digest": "6135f837fbd113fc62904c60dcc5c70d", - "packagetype": "sdist", - "python_version": "source", - "size": 39046, - "upload_time": "2011-11-15T16:01:47", - "url": "https://files.pythonhosted.org/packages/ae/fb/b1d6916b5278c44a1a2beb919d7ab96327051c3d47db9d6ee6978743444e/requests-0.8.1.tar.gz" - } - ], - "0.8.2": [ - { - "comment_text": "", - "digests": { - "md5": "bdbbd7f45688e23e87eec52835959943", - "sha256": "826244e9612aa9a548d1289bef7bbce07eee4872ca21ca80631094d1c512b121" - }, - "downloads": -1, - "filename": "requests-0.8.2.tar.gz", - "has_sig": false, - "md5_digest": "bdbbd7f45688e23e87eec52835959943", - "packagetype": "sdist", - "python_version": "source", - "size": 51162, - "upload_time": "2011-11-19T22:28:31", - "url": "https://files.pythonhosted.org/packages/65/5d/e69bad1f71d5284113165738d563a997d0d1ac968f939d1375f3df7c59fc/requests-0.8.2.tar.gz" - } - ], - "0.8.3": [ - { - "comment_text": "", - "digests": { - "md5": "93e4cd27ab646fb613a926fede1cc4f5", - "sha256": "7277ec1fc8b8251bc1ce628651cbfad886704a77aea9f6203dcc042a4f12d214" - }, - "downloads": -1, - "filename": "requests-0.8.3.tar.gz", - "has_sig": false, - "md5_digest": "93e4cd27ab646fb613a926fede1cc4f5", - "packagetype": "sdist", - "python_version": "source", - "size": 51252, - "upload_time": "2011-11-27T16:44:51", - "url": "https://files.pythonhosted.org/packages/f8/17/42ab05005c88e8d301fe0ee9b24e34139422268d0d7b8b11f98107c2a794/requests-0.8.3.tar.gz" - } - ], - "0.8.4": [ - { - "comment_text": "", - "digests": { - "md5": "642e5c70250989e4feda9c50be57b100", - "sha256": "3ef7efbe083bcb6f7b1144c7665b5b1f6bd4fc7043dc50ccd564edf62b814c2b" - }, - "downloads": -1, - "filename": "requests-0.8.4.tar.gz", - "has_sig": false, - "md5_digest": "642e5c70250989e4feda9c50be57b100", - "packagetype": "sdist", - "python_version": "source", - "size": 52100, - "upload_time": "2011-12-11T17:40:28", - "url": "https://files.pythonhosted.org/packages/aa/a7/ec41790a8fb50f8d359568f82cd37a994af5d0159cccb543d147a7eea751/requests-0.8.4.tar.gz" - } - ], - "0.8.5": [ - { - "comment_text": "", - "digests": { - "md5": "5f2975ee9e57f4ea000e5a3f50fc85d1", - "sha256": "1db43116f612b016169d9a994d16aea9c166c55355bac2e05fae75e0ff610f4c" - }, - "downloads": -1, - "filename": "requests-0.8.5.tar.gz", - "has_sig": false, - "md5_digest": "5f2975ee9e57f4ea000e5a3f50fc85d1", - "packagetype": "sdist", - "python_version": "source", - "size": 52351, - "upload_time": "2011-12-14T16:43:21", - "url": "https://files.pythonhosted.org/packages/fc/f8/329450760dddd7e437eef0cd16a8d48582405e72495cf79a77a82e2f0047/requests-0.8.5.tar.gz" - } - ], - "0.8.6": [ - { - "comment_text": "", - "digests": { - "md5": "21b03926ab38417a704ebce57972571a", - "sha256": "b9ad56ff5971b7a4005598e5a9588584ee1153fbf027ed76a7d13585f71489f7" - }, - "downloads": -1, - "filename": "requests-0.8.6.tar.gz", - "has_sig": false, - "md5_digest": "21b03926ab38417a704ebce57972571a", - "packagetype": "sdist", - "python_version": "source", - "size": 52670, - "upload_time": "2011-12-19T01:18:29", - "url": "https://files.pythonhosted.org/packages/4e/9b/a78a3bb2913576fad3ec6f18b8d26dd9579268f6b2191d73f4ec40e09490/requests-0.8.6.tar.gz" - } - ], - "0.8.7": [ - { - "comment_text": "", - "digests": { - "md5": "e4d4ee3a90396908bd04b50bf2136617", - "sha256": "2c5b08f7afe8d5ffc1c4f7819e74d5309a52b2f2eb1d78cc144cb57aa10380fe" - }, - "downloads": -1, - "filename": "requests-0.8.7.tar.gz", - "has_sig": false, - "md5_digest": "e4d4ee3a90396908bd04b50bf2136617", - "packagetype": "sdist", - "python_version": "source", - "size": 53578, - "upload_time": "2011-12-24T09:18:54", - "url": "https://files.pythonhosted.org/packages/a7/83/bb447075090f4a3a60082765051d476b62f375d0f8174ebe9545d4bb8938/requests-0.8.7.tar.gz" - } - ], - "0.8.8": [ - { - "comment_text": "", - "digests": { - "md5": "bfb182cfd3ed839b97744c553b87f502", - "sha256": "70352c48f106fe4a15537bdb4a029ebbb80c1ae1b6836a9033f2b3d7e52e01fd" - }, - "downloads": -1, - "filename": "requests-0.8.8.tar.gz", - "has_sig": false, - "md5_digest": "bfb182cfd3ed839b97744c553b87f502", - "packagetype": "sdist", - "python_version": "source", - "size": 54212, - "upload_time": "2011-12-28T09:55:45", - "url": "https://files.pythonhosted.org/packages/b7/1d/5c7973ca22bc95d53eba28a7dab7088f1ded7db0d174ea467afaaf898dfc/requests-0.8.8.tar.gz" - } - ], - "0.8.9": [ - { - "comment_text": "", - "digests": { - "md5": "ff5b3bf5bc3ad19930d3f3afe51f182b", - "sha256": "870780642a14f5e30a9ef8c419aeb405e5bd4340d4fefbf1e8493dde39225337" - }, - "downloads": -1, - "filename": "requests-0.8.9.tar.gz", - "has_sig": false, - "md5_digest": "ff5b3bf5bc3ad19930d3f3afe51f182b", - "packagetype": "sdist", - "python_version": "source", - "size": 55153, - "upload_time": "2011-12-28T10:34:17", - "url": "https://files.pythonhosted.org/packages/3a/72/9f39b173ee93645013563df119d28841f47b0ca2ebe04afcefd438e42f30/requests-0.8.9.tar.gz" - } - ], - "0.9.0": [ - { - "comment_text": "", - "digests": { - "md5": "5f6f03ec76f68a7a3f35120ab5a6c589", - "sha256": "43b26edb5c47e0ccf9612d3cf13639a1e7e6c774af5375a684cfa00e747f21b1" - }, - "downloads": -1, - "filename": "requests-0.9.0.tar.gz", - "has_sig": false, - "md5_digest": "5f6f03ec76f68a7a3f35120ab5a6c589", - "packagetype": "sdist", - "python_version": "source", - "size": 55217, - "upload_time": "2011-12-28T10:51:35", - "url": "https://files.pythonhosted.org/packages/89/ce/0115444a1f9d833768160e678c21483e271466918966c11212f040b5f2af/requests-0.9.0.tar.gz" - } - ], - "0.9.1": [ - { - "comment_text": "", - "digests": { - "md5": "8ed4667edb5d57945b74a9137adbb8bd", - "sha256": "0c6fc89ce4f8976dd8ddb1a9e896315a47fb3f1dba95417fd3fa8e626ca9a1e7" - }, - "downloads": -1, - "filename": "requests-0.9.1.tar.gz", - "has_sig": false, - "md5_digest": "8ed4667edb5d57945b74a9137adbb8bd", - "packagetype": "sdist", - "python_version": "source", - "size": 55547, - "upload_time": "2012-01-06T07:11:02", - "url": "https://files.pythonhosted.org/packages/48/aa/1077a5fef0c4fbdad8ce127166ca474c67788b7609137d26e17ab46ee16d/requests-0.9.1.tar.gz" - } - ], - "0.9.2": [ - { - "comment_text": "", - "digests": { - "md5": "65b36d99a4d2f78a22f08c95d2475e33", - "sha256": "eb9a3b0031af396fb6825be897655546f4c54e19669fddb5df72a4a688ae0555" - }, - "downloads": -1, - "filename": "requests-0.9.2.tar.gz", - "has_sig": false, - "md5_digest": "65b36d99a4d2f78a22f08c95d2475e33", - "packagetype": "sdist", - "python_version": "source", - "size": 60967, - "upload_time": "2012-01-19T03:39:58", - "url": "https://files.pythonhosted.org/packages/68/a1/fac8e1fa783d167cc49debc5b5328ca57eac9d53b58c34d17ce7592cdc6d/requests-0.9.2.tar.gz" - } - ], - "0.9.3": [ - { - "comment_text": "", - "digests": { - "md5": "b13b6fbfa8fc3fc3c25bae300748053f", - "sha256": "3c0dd7c014474e0cdd00cad661abd74c88c14183d260d0555dfa51fc5b29abc5" - }, - "downloads": -1, - "filename": "requests-0.9.3.tar.gz", - "has_sig": false, - "md5_digest": "b13b6fbfa8fc3fc3c25bae300748053f", - "packagetype": "sdist", - "python_version": "source", - "size": 61006, - "upload_time": "2012-01-19T16:51:33", - "url": "https://files.pythonhosted.org/packages/62/12/0840d1bba04e5d60e469610ad78e02e89e6828e776adaef4116413cf5fd0/requests-0.9.3.tar.gz" - } - ], - "1.0.0": [ - { - "comment_text": "", - "digests": { - "md5": "099c9035c4b30a7ae5484b1beabc7407", - "sha256": "f10d8fbcc02a58056ab44f79ff9b3f9fe78e410296527885250bbb36d15be8c6" - }, - "downloads": -1, - "filename": "requests-1.0.0.tar.gz", - "has_sig": false, - "md5_digest": "099c9035c4b30a7ae5484b1beabc7407", - "packagetype": "sdist", - "python_version": "source", - "size": 335548, - "upload_time": "2012-12-17T15:00:05", - "url": "https://files.pythonhosted.org/packages/46/da/94c0fd6ff79b85befc3b528cf3771700def274c52b347bf12eeaa466f34c/requests-1.0.0.tar.gz" - } - ], - "1.0.1": [ - { - "comment_text": "", - "digests": { - "md5": "2e938f26f2bdf2899862c751bfa7eff5", - "sha256": "c69222b7c02a8e46d61c3b986e6a3e766db0539235aaafc056c75b8dcf6f5eec" - }, - "downloads": -1, - "filename": "requests-1.0.1.tar.gz", - "has_sig": false, - "md5_digest": "2e938f26f2bdf2899862c751bfa7eff5", - "packagetype": "sdist", - "python_version": "source", - "size": 335625, - "upload_time": "2012-12-17T18:53:51", - "url": "https://files.pythonhosted.org/packages/b8/03/fb15922d14fa0b01a0ff4e2920bb8c08546d970ff387454ba892a67d5243/requests-1.0.1.tar.gz" - } - ], - "1.0.2": [ - { - "comment_text": "", - "digests": { - "md5": "e5c1a5a5472cd61f144743dd25a2a29f", - "sha256": "3c81f3ae43916161b8d98d7b329b19533b0d0332b7a774794964e6b08760b0c7" - }, - "downloads": -1, - "filename": "requests-1.0.2.tar.gz", - "has_sig": false, - "md5_digest": "e5c1a5a5472cd61f144743dd25a2a29f", - "packagetype": "sdist", - "python_version": "source", - "size": 335653, - "upload_time": "2012-12-17T19:04:31", - "url": "https://files.pythonhosted.org/packages/32/35/f2908b62b155b1737ab80b1a69142d007522bb0d1b3a0d3f8909595762f5/requests-1.0.2.tar.gz" - } - ], - "1.0.3": [ - { - "comment_text": "", - "digests": { - "md5": "a3169a33973d4b5b51843ead01c5e999", - "sha256": "c7b50dc01b751e5ef8785951a74d0c2373bb0f87b45dca75dc2c5477b7e30f44" - }, - "downloads": -1, - "filename": "requests-1.0.3.tar.gz", - "has_sig": false, - "md5_digest": "a3169a33973d4b5b51843ead01c5e999", - "packagetype": "sdist", - "python_version": "source", - "size": 335757, - "upload_time": "2012-12-18T09:51:12", - "url": "https://files.pythonhosted.org/packages/7f/76/66c01dd9afe4c5062e0c838bbd98ead7fa6b52984c7e26100a42c3eb965a/requests-1.0.3.tar.gz" - } - ], - "1.0.4": [ - { - "comment_text": "", - "digests": { - "md5": "0b7448f9e1a077a7218720575003a1b6", - "sha256": "f363690a47dd4d6d6e7605fc686b668097a114cd946dffdf21fe0c6a6a46f9e6" - }, - "downloads": -1, - "filename": "requests-1.0.4.tar.gz", - "has_sig": false, - "md5_digest": "0b7448f9e1a077a7218720575003a1b6", - "packagetype": "sdist", - "python_version": "source", - "size": 336280, - "upload_time": "2012-12-23T07:45:10", - "url": "https://files.pythonhosted.org/packages/5d/e8/f27e0868b9a49946b3f800722e02b19efebde22ae534276df3e5f6cca41d/requests-1.0.4.tar.gz" - } - ], - "1.1.0": [ - { - "comment_text": "", - "digests": { - "md5": "a0158815af244c32041a3147ee09abf3", - "sha256": "21a81ddf1a3c2f956524538966ae19c38cae251f5629821588cdc8246a1335f7" - }, - "downloads": -1, - "filename": "requests-1.1.0.tar.gz", - "has_sig": false, - "md5_digest": "a0158815af244c32041a3147ee09abf3", - "packagetype": "sdist", - "python_version": "source", - "size": 337229, - "upload_time": "2013-01-10T07:13:41", - "url": "https://files.pythonhosted.org/packages/e8/ff/d19b7461d84a5804c5cdc29791305530a2b774fe928b497e74ac9b304c79/requests-1.1.0.tar.gz" - } - ], - "1.2.0": [ - { - "comment_text": "", - "digests": { - "md5": "22af2682233770e5468a986f451c51c0", - "sha256": "cfa615644ae38efe8423ce9edb23470a4615a9147fa3cea5026afb47c9bb3913" - }, - "downloads": -1, - "filename": "requests-1.2.0.tar.gz", - "has_sig": false, - "md5_digest": "22af2682233770e5468a986f451c51c0", - "packagetype": "sdist", - "python_version": "source", - "size": 341511, - "upload_time": "2013-03-31T05:28:47", - "url": "https://files.pythonhosted.org/packages/37/e4/74cb55b3da7777a1dc7cd7985c3cb12e83e213c03b0f9ca20d2c0e92b3c3/requests-1.2.0.tar.gz" - } - ], - "1.2.1": [ - { - "comment_text": "", - "digests": { - "md5": "4d019670b94b17e329007d64e67e045e", - "sha256": "946b7c856aa62f4ad31de2b9bb501cfdcdb4afdc882ee76bd4664f57caefaa44" - }, - "downloads": -1, - "filename": "requests-1.2.1.tar.gz", - "has_sig": false, - "md5_digest": "4d019670b94b17e329007d64e67e045e", - "packagetype": "sdist", - "python_version": "source", - "size": 348710, - "upload_time": "2013-05-20T20:11:09", - "url": "https://files.pythonhosted.org/packages/3b/9e/bfa03431335e778854da3d562697e067df40870a78ca81b35089822c6583/requests-1.2.1.tar.gz" - } - ], - "1.2.2": [ - { - "comment_text": "", - "digests": { - "md5": "1f655ab7f2aa7447a1657ed69786f436", - "sha256": "56929d7b5dec9b37a9a8520f15202bada0ad55d2888a7c3243b9b194f2ef603d" - }, - "downloads": -1, - "filename": "requests-1.2.2.tar.gz", - "has_sig": false, - "md5_digest": "1f655ab7f2aa7447a1657ed69786f436", - "packagetype": "sdist", - "python_version": "source", - "size": 348851, - "upload_time": "2013-05-21T21:44:44", - "url": "https://files.pythonhosted.org/packages/c0/44/84a4b7a4e9d5fd1b358dbabd03f17e3dd91ce8881fc3446fbd2fd996be88/requests-1.2.2.tar.gz" - } - ], - "1.2.3": [ - { - "comment_text": "", - "digests": { - "md5": "adbd3f18445f7fe5e77f65c502e264fb", - "sha256": "156bf3ec27ba9ec7e0cf8fbe02808718099d218de403eb64a714d73ba1a29ab1" - }, - "downloads": -1, - "filename": "requests-1.2.3.tar.gz", - "has_sig": false, - "md5_digest": "adbd3f18445f7fe5e77f65c502e264fb", - "packagetype": "sdist", - "python_version": "source", - "size": 348854, - "upload_time": "2013-05-25T16:48:36", - "url": "https://files.pythonhosted.org/packages/61/79/efc316760a906763de872d7328c9bf8c5af28708a35fdae57fbb4ee005f7/requests-1.2.3.tar.gz" - } - ], - "2.0.0": [ - { - "comment_text": "", - "digests": { - "md5": "6af9c16dbddd2fc751ae4f1606d041e8", - "sha256": "2ef65639cb9600443f85451df487818c31f993ab288f313d29cc9db4f3cbe6ed" - }, - "downloads": -1, - "filename": "requests-2.0.0-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "6af9c16dbddd2fc751ae4f1606d041e8", - "packagetype": "bdist_wheel", - "python_version": "2.7", - "size": 391141, - "upload_time": "2013-11-15T19:09:51", - "url": "https://files.pythonhosted.org/packages/bf/78/be2b4c440ea767336d8448fe671fe1d78ca499e49d77dac90f92191cca0e/requests-2.0.0-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "856fc825c17483e25fd55db115028e3f", - "sha256": "78536038f54cff6ade3be6863403146665b5a3923dd61108c98d8b64141f9d70" - }, - "downloads": -1, - "filename": "requests-2.0.0.tar.gz", - "has_sig": false, - "md5_digest": "856fc825c17483e25fd55db115028e3f", - "packagetype": "sdist", - "python_version": "source", - "size": 362994, - "upload_time": "2013-09-24T18:39:33", - "url": "https://files.pythonhosted.org/packages/8e/88/102742c48605aef8d39fa719d932c67783d789679628fa1433cb4b2c7a2a/requests-2.0.0.tar.gz" - } - ], - "2.0.1": [ - { - "comment_text": "", - "digests": { - "md5": "d524f9a38a29efe1732fd130e5ebe433", - "sha256": "f4ebc402e0ea5a87a3d42e300b76c292612d8467024f45f9858a8768f9fb6f6e" - }, - "downloads": -1, - "filename": "requests-2.0.1-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "d524f9a38a29efe1732fd130e5ebe433", - "packagetype": "bdist_wheel", - "python_version": "2.7", - "size": 439330, - "upload_time": "2013-11-15T19:12:20", - "url": "https://files.pythonhosted.org/packages/8f/ea/140f18072bbcd81885a9490abb171792fd2961fd7f366be58396f4c6d634/requests-2.0.1-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "38e61c2856d2ba2782286730241975e6", - "sha256": "8cfddb97667c2a9edaf28b506d2479f1b8dc0631cbdcd0ea8c8864def59c698b" - }, - "downloads": -1, - "filename": "requests-2.0.1.tar.gz", - "has_sig": false, - "md5_digest": "38e61c2856d2ba2782286730241975e6", - "packagetype": "sdist", - "python_version": "source", - "size": 412648, - "upload_time": "2013-10-24T14:33:21", - "url": "https://files.pythonhosted.org/packages/1c/8e/376c93bb72bdae6a754797b8e31370df1e996e8b7dcc928e66691dbf611a/requests-2.0.1.tar.gz" - } - ], - "2.1.0": [ - { - "comment_text": "", - "digests": { - "md5": "0848cbc0cc7edd150cb8d6ddc25ca906", - "sha256": "fcef306d62b1c061eb00b8402cf136ff0ea1daf7a53b60cdef9563a22850072c" - }, - "downloads": -1, - "filename": "requests-2.1.0-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "0848cbc0cc7edd150cb8d6ddc25ca906", - "packagetype": "bdist_wheel", - "python_version": "2.7", - "size": 445280, - "upload_time": "2013-12-05T22:51:41", - "url": "https://files.pythonhosted.org/packages/1e/97/f0a8e5e71c75a2abf5ec91438b84ec1a40a5e1b5f985c06721a3ebe57c0a/requests-2.1.0-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "28543001831f46b1ff40686ebc027deb", - "sha256": "a57307f3a5f35ec9e1254aaf3e0484063ee3ee6b5f123fb35c5b2673492efa71" - }, - "downloads": -1, - "filename": "requests-2.1.0.tar.gz", - "has_sig": false, - "md5_digest": "28543001831f46b1ff40686ebc027deb", - "packagetype": "sdist", - "python_version": "source", - "size": 420289, - "upload_time": "2013-12-05T22:51:38", - "url": "https://files.pythonhosted.org/packages/51/5d/3729c242ed7693f29941fd9d40e936d4994b0aa704dfd0c023312fcce8a3/requests-2.1.0.tar.gz" - } - ], - "2.10.0": [ - { - "comment_text": "", - "digests": { - "md5": "abf5a77de3e8a5973c738cca884502a0", - "sha256": "09bc1b5f3a56cd8c48d433213a8cba51a67d12936568f73b5f1793fcb0c0979e" - }, - "downloads": -1, - "filename": "requests-2.10.0-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "abf5a77de3e8a5973c738cca884502a0", - "packagetype": "bdist_wheel", - "python_version": "2.7", - "size": 506877, - "upload_time": "2016-04-29T22:12:39", - "url": "https://files.pythonhosted.org/packages/99/b4/63d99ba8e189c47d906b43bae18af4396e336f2b1bfec86af31efe2d2cb8/requests-2.10.0-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "a36f7a64600f1bfec4d55ae021d232ae", - "sha256": "63f1815788157130cee16a933b2ee184038e975f0017306d723ac326b5525b54" - }, - "downloads": -1, - "filename": "requests-2.10.0.tar.gz", - "has_sig": false, - "md5_digest": "a36f7a64600f1bfec4d55ae021d232ae", - "packagetype": "sdist", - "python_version": "source", - "size": 477617, - "upload_time": "2016-04-29T22:12:32", - "url": "https://files.pythonhosted.org/packages/49/6f/183063f01aae1e025cf0130772b55848750a2f3a89bfa11b385b35d7329d/requests-2.10.0.tar.gz" - } - ], - "2.11.0": [ - { - "comment_text": "", - "digests": { - "md5": "369b7333bf2f710143a1b6678f2f214c", - "sha256": "8b9b147f3dff1fc4055ff794ff931f735ed25e87efe667ed7c845a4bafae9b73" - }, - "downloads": -1, - "filename": "requests-2.11.0-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "369b7333bf2f710143a1b6678f2f214c", - "packagetype": "bdist_wheel", - "python_version": "2.7", - "size": 514336, - "upload_time": "2016-08-08T15:07:35", - "url": "https://files.pythonhosted.org/packages/f8/90/42d5e0d9b5c4c3629a3d99823bbc3748fb85616f0f7a45e79ba7908d4642/requests-2.11.0-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "147afc07d8967cf46359701551a6cb69", - "sha256": "b2ff053e93ef11ea08b0e596a1618487c4e4c5f1006d7a1706e3671c57dea385" - }, - "downloads": -1, - "filename": "requests-2.11.0.tar.gz", - "has_sig": false, - "md5_digest": "147afc07d8967cf46359701551a6cb69", - "packagetype": "sdist", - "python_version": "source", - "size": 485199, - "upload_time": "2016-08-08T15:07:32", - "url": "https://files.pythonhosted.org/packages/8d/66/649f861f980c0a168dd4cccc4dd0ed8fa5bd6c1bed3bea9a286434632771/requests-2.11.0.tar.gz" - } - ], - "2.11.1": [ - { - "comment_text": "", - "digests": { - "md5": "b4269c6fb64b9361288620ba028fd385", - "sha256": "545c4855cd9d7c12671444326337013766f4eea6068c3f0307fb2dc2696d580e" - }, - "downloads": -1, - "filename": "requests-2.11.1-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "b4269c6fb64b9361288620ba028fd385", - "packagetype": "bdist_wheel", - "python_version": "2.7", - "size": 514827, - "upload_time": "2016-08-17T20:04:30", - "url": "https://files.pythonhosted.org/packages/ea/03/92d3278bf8287c5caa07dbd9ea139027d5a3592b0f4d14abf072f890fab2/requests-2.11.1-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "ad5f9c47b5c5dfdb28363ad7546b0763", - "sha256": "5acf980358283faba0b897c73959cecf8b841205bb4b2ad3ef545f46eae1a133" - }, - "downloads": -1, - "filename": "requests-2.11.1.tar.gz", - "has_sig": false, - "md5_digest": "ad5f9c47b5c5dfdb28363ad7546b0763", - "packagetype": "sdist", - "python_version": "source", - "size": 485936, - "upload_time": "2016-08-17T20:04:26", - "url": "https://files.pythonhosted.org/packages/2e/ad/e627446492cc374c284e82381215dcd9a0a87c4f6e90e9789afefe6da0ad/requests-2.11.1.tar.gz" - } - ], - "2.12.0": [ - { - "comment_text": "", - "digests": { - "md5": "018b0e512fc0c0c3f30c7fa3c376bb7a", - "sha256": "a7d8f8f46603b78f03a925227f33988276fbe6c1f3c8cb20174ba9bfc5114c4d" - }, - "downloads": -1, - "filename": "requests-2.12.0-py2.py3-none-any.whl", - "has_sig": true, - "md5_digest": "018b0e512fc0c0c3f30c7fa3c376bb7a", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 574416, - "upload_time": "2016-11-15T10:32:00", - "url": "https://files.pythonhosted.org/packages/00/93/9c5c04821578c2ee11af83189c5cbd8338724b5e04e1de5dc3643bbc5bbf/requests-2.12.0-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "d0d3e5fb81c6b4d87c08ed5cad677337", - "sha256": "57b6c314a2c5f014dce634a0e1eeeb1707741b2e30bc7fee9c5b01fa216d57a3" - }, - "downloads": -1, - "filename": "requests-2.12.0.tar.gz", - "has_sig": true, - "md5_digest": "d0d3e5fb81c6b4d87c08ed5cad677337", - "packagetype": "sdist", - "python_version": "source", - "size": 545112, - "upload_time": "2016-11-15T10:32:06", - "url": "https://files.pythonhosted.org/packages/6a/97/7b856a8c8a0efebebb0bbba70c7ee879ee3f9654f28928665b64026ef09a/requests-2.12.0.tar.gz" - } - ], - "2.12.1": [ - { - "comment_text": "", - "digests": { - "md5": "384ec19e410ffeb43951782c11d3223b", - "sha256": "3f3f27a9d0f9092935efc78054ef324eb9f8166718270aefe036dfa1e4f68e1e" - }, - "downloads": -1, - "filename": "requests-2.12.1-py2.py3-none-any.whl", - "has_sig": true, - "md5_digest": "384ec19e410ffeb43951782c11d3223b", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 574526, - "upload_time": "2016-11-16T10:45:37", - "url": "https://files.pythonhosted.org/packages/9b/31/e9925a2b9a06f97c3450bac6107928d3533bfe64ca5615442504104321e8/requests-2.12.1-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "8c8ff05ea401ea22718038c3a416ea50", - "sha256": "2109ecea94df90980be040490ff1d879971b024861539abb00054062388b612e" - }, - "downloads": -1, - "filename": "requests-2.12.1.tar.gz", - "has_sig": true, - "md5_digest": "8c8ff05ea401ea22718038c3a416ea50", - "packagetype": "sdist", - "python_version": "source", - "size": 545246, - "upload_time": "2016-11-16T10:45:42", - "url": "https://files.pythonhosted.org/packages/6e/40/7434b2d9fe24107ada25ec90a1fc646e97f346130a2c51aa6a2b1aba28de/requests-2.12.1.tar.gz" - } - ], - "2.12.2": [ - { - "comment_text": "", - "digests": { - "md5": "8c58fa0a054badea1cfbfa54a23299d2", - "sha256": "e5a102790b234bde8f949090e50e294490c2be0d81e3d55530fd91f3b5eded63" - }, - "downloads": -1, - "filename": "requests-2.12.2-py2.py3-none-any.whl", - "has_sig": true, - "md5_digest": "8c58fa0a054badea1cfbfa54a23299d2", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 575582, - "upload_time": "2016-11-30T12:39:31", - "url": "https://files.pythonhosted.org/packages/59/dc/54d39bef11678853ca78fc6167cc1b57becf491548942246dd2226bf2bd2/requests-2.12.2-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "1ec26adca0265ead9afd42919867c370", - "sha256": "09dadb7c5c4210ebbc7f1b14a351a754f1191bd7cd5a5b60ee1929b8c7dcbbe6" - }, - "downloads": -1, - "filename": "requests-2.12.2.tar.gz", - "has_sig": true, - "md5_digest": "1ec26adca0265ead9afd42919867c370", - "packagetype": "sdist", - "python_version": "source", - "size": 546512, - "upload_time": "2016-11-30T12:39:34", - "url": "https://files.pythonhosted.org/packages/18/87/3c46a06df7b29cd3ab51f055cae2a954758ee3dcbd075d7f4c9a4e8aafbc/requests-2.12.2.tar.gz" - } - ], - "2.12.3": [ - { - "comment_text": "", - "digests": { - "md5": "9b4e857c4a27a9c282cb1abb53ebaba2", - "sha256": "d92ed9912bab3f5e52d8e231be82c106650f648185e952f83c44ab4f2be55c0c" - }, - "downloads": -1, - "filename": "requests-2.12.3-py2.py3-none-any.whl", - "has_sig": true, - "md5_digest": "9b4e857c4a27a9c282cb1abb53ebaba2", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 575922, - "upload_time": "2016-12-01T10:49:02", - "url": "https://files.pythonhosted.org/packages/84/68/f0acceafe80354aa9ff4ae49de0572d27929b6d262f0c55196424eb86b2f/requests-2.12.3-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "0cafdecd95a46b081dd5fcfa4978db7a", - "sha256": "de5d266953875e9647e37ef7bfe6ef1a46ff8ddfe61b5b3652edf7ea717ee2b2" - }, - "downloads": -1, - "filename": "requests-2.12.3.tar.gz", - "has_sig": true, - "md5_digest": "0cafdecd95a46b081dd5fcfa4978db7a", - "packagetype": "sdist", - "python_version": "source", - "size": 546994, - "upload_time": "2016-12-01T10:49:08", - "url": "https://files.pythonhosted.org/packages/d9/03/155b3e67fe35fe5b6f4227a8d9e96a14fda828b18199800d161bcefc1359/requests-2.12.3.tar.gz" - } - ], - "2.12.4": [ - { - "comment_text": "", - "digests": { - "md5": "3989eaeaa2ccad20470afc61710d3498", - "sha256": "000748df49e087784441b2621c50fb81046c5c8e80e0d91674ffad65b9e13844" - }, - "downloads": -1, - "filename": "requests-2.12.4-py2.py3-none-any.whl", - "has_sig": true, - "md5_digest": "3989eaeaa2ccad20470afc61710d3498", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 576448, - "upload_time": "2016-12-14T11:39:35", - "url": "https://files.pythonhosted.org/packages/ed/9e/60cc074968c095f728f0d8d28370e8d396fa60afb7582735563cccf223dd/requests-2.12.4-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "acdb48888a9d3c7309da12fc7f83fedb", - "sha256": "ed98431a0631e309bb4b63c81d561c1654822cb103de1ac7b47e45c26be7ae34" - }, - "downloads": -1, - "filename": "requests-2.12.4.tar.gz", - "has_sig": true, - "md5_digest": "acdb48888a9d3c7309da12fc7f83fedb", - "packagetype": "sdist", - "python_version": "source", - "size": 547650, - "upload_time": "2016-12-14T11:39:39", - "url": "https://files.pythonhosted.org/packages/5b/0b/34be574b1ec997247796e5d516f3a6b6509c4e064f2885a96ed885ce7579/requests-2.12.4.tar.gz" - } - ], - "2.12.5": [ - { - "comment_text": "", - "digests": { - "md5": "eeb46098018d358d86c45131a8342060", - "sha256": "d57dae49f4267e8cb378aff9e426c9304a78794d03e945e39bfc607355715658" - }, - "downloads": -1, - "filename": "requests-2.12.5-py2.py3-none-any.whl", - "has_sig": true, - "md5_digest": "eeb46098018d358d86c45131a8342060", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 576765, - "upload_time": "2017-01-18T12:43:08", - "url": "https://files.pythonhosted.org/packages/bf/99/af6139323bac0ca0c6023eabbdc526579525f5584278d001dd2e169f8300/requests-2.12.5-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "360bb3af97881a7056ed5bb3d0a3e8a3", - "sha256": "d902a54f08d086a7cc6e58c20e2bb225b1ae82c19c35e5925269ee94fb9fce00" - }, - "downloads": -1, - "filename": "requests-2.12.5.tar.gz", - "has_sig": true, - "md5_digest": "360bb3af97881a7056ed5bb3d0a3e8a3", - "packagetype": "sdist", - "python_version": "source", - "size": 548336, - "upload_time": "2017-01-18T12:43:12", - "url": "https://files.pythonhosted.org/packages/b6/61/7b374462d5b6b1d824977182db287758d549d8680444bad8d530195acba2/requests-2.12.5.tar.gz" - } - ], - "2.13.0": [ - { - "comment_text": "", - "digests": { - "md5": "5e432dcf5bd1e3402ea1656700d99365", - "sha256": "1a720e8862a41aa22e339373b526f508ef0c8988baf48b84d3fc891a8e237efb" - }, - "downloads": -1, - "filename": "requests-2.13.0-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "5e432dcf5bd1e3402ea1656700d99365", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 584556, - "upload_time": "2017-01-24T12:53:25", - "url": "https://files.pythonhosted.org/packages/7e/ac/a80ed043485a3764053f59ca92f809cc8a18344692817152b0e8bd3ca891/requests-2.13.0-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "921ec6b48f2ddafc8bb6160957baf444", - "sha256": "5722cd09762faa01276230270ff16af7acf7c5c45d623868d9ba116f15791ce8" - }, - "downloads": -1, - "filename": "requests-2.13.0.tar.gz", - "has_sig": false, - "md5_digest": "921ec6b48f2ddafc8bb6160957baf444", - "packagetype": "sdist", - "python_version": "source", - "size": 557508, - "upload_time": "2017-01-24T12:53:28", - "url": "https://files.pythonhosted.org/packages/16/09/37b69de7c924d318e51ece1c4ceb679bf93be9d05973bb30c35babd596e2/requests-2.13.0.tar.gz" - } - ], - "2.14.0": [ - { - "comment_text": "", - "digests": { - "md5": "09e9f0852d50bee105ca859095298923", - "sha256": "a90555c0be723f5c711de36f256b21a65fc599602274fb3d5c4f83ac23aae3c5" - }, - "downloads": -1, - "filename": "requests-2.14.0-py2.py3-none-any.whl", - "has_sig": true, - "md5_digest": "09e9f0852d50bee105ca859095298923", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 559873, - "upload_time": "2017-05-09T15:45:03", - "url": "https://files.pythonhosted.org/packages/1b/d3/f2541f2965e78f139bff9f001594d41ed90f4b2ce4b61bca387e60c1d3b4/requests-2.14.0-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "09c5b60caced97cbe69064d486d6db53", - "sha256": "8c4f778459cb4a6bad7ceff4aa65a75697db28c21a6b41ea9a6c371df2a822c2" - }, - "downloads": -1, - "filename": "requests-2.14.0.tar.gz", - "has_sig": true, - "md5_digest": "09c5b60caced97cbe69064d486d6db53", - "packagetype": "sdist", - "python_version": "source", - "size": 520782, - "upload_time": "2017-05-09T15:45:05", - "url": "https://files.pythonhosted.org/packages/0b/ac/ffd3674211bc47ae3bf55c7cd4a8fe484b7289af2ffd9cfed5683708690a/requests-2.14.0.tar.gz" - } - ], - "2.14.1": [ - { - "comment_text": "", - "digests": { - "md5": "81754d76f9a71a2d25f8c413fcf86e2c", - "sha256": "c5a42004b9cd384e5ad0f868b1cc968a3c2bb0276dccc12e4bdc7330591b5f51" - }, - "downloads": -1, - "filename": "requests-2.14.1-py2.py3-none-any.whl", - "has_sig": true, - "md5_digest": "81754d76f9a71a2d25f8c413fcf86e2c", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 559930, - "upload_time": "2017-05-09T19:00:26", - "url": "https://files.pythonhosted.org/packages/74/ac/789eb98e0f5431d6d1ce36549ead88b2ab3154260f37c7dac9a34fd170b1/requests-2.14.1-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "e985e49070df0024777a55fd59ceef46", - "sha256": "b3b191d677e526c1e512db86bc7387ccb8356e8826bcc7faa07f78f09afe68dd" - }, - "downloads": -1, - "filename": "requests-2.14.1.tar.gz", - "has_sig": true, - "md5_digest": "e985e49070df0024777a55fd59ceef46", - "packagetype": "sdist", - "python_version": "source", - "size": 520890, - "upload_time": "2017-05-09T19:00:30", - "url": "https://files.pythonhosted.org/packages/8c/ff/78297074b9b4cf102f9bbd71b62508965dd5c1876e016ef131e5b15c16a4/requests-2.14.1.tar.gz" - } - ], - "2.14.2": [ - { - "comment_text": "", - "digests": { - "md5": "a1b2f02e7ba45dff7c76f621cde042c4", - "sha256": "3b39cde35be51762885631cf586f4dc2284951b44d479a4454020758d767cc2f" - }, - "downloads": -1, - "filename": "requests-2.14.2-py2.py3-none-any.whl", - "has_sig": true, - "md5_digest": "a1b2f02e7ba45dff7c76f621cde042c4", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 560030, - "upload_time": "2017-05-10T14:05:39", - "url": "https://files.pythonhosted.org/packages/e4/b0/286e8a936158e5cc5791d5fa3bc4b1d5a7e1ff4e5b3f3766b63d8e97708a/requests-2.14.2-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "4c3c169ed67466088a2a6947784fe444", - "sha256": "a274abba399a23e8713ffd2b5706535ae280ebe2b8069ee6a941cb089440d153" - }, - "downloads": -1, - "filename": "requests-2.14.2.tar.gz", - "has_sig": true, - "md5_digest": "4c3c169ed67466088a2a6947784fe444", - "packagetype": "sdist", - "python_version": "source", - "size": 521027, - "upload_time": "2017-05-10T14:05:43", - "url": "https://files.pythonhosted.org/packages/72/46/4abc3f5aaf7bf16a52206bb0c68677a26c216c1e6625c78c5aef695b5359/requests-2.14.2.tar.gz" - } - ], - "2.15.0": [], - "2.15.1": [ - { - "comment_text": "", - "digests": { - "md5": "bdf7767141594c4a927188f60665705a", - "sha256": "ff753b2196cd18b1bbeddc9dcd5c864056599f7a7d9a4fb5677e723efa2b7fb9" - }, - "downloads": -1, - "filename": "requests-2.15.1-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "bdf7767141594c4a927188f60665705a", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 558730, - "upload_time": "2017-05-27T02:14:19", - "url": "https://files.pythonhosted.org/packages/fa/a5/e04c4607dc96e3e6b22dfa13ba8776c64bb65cb97ab90f05a3ee14096a0a/requests-2.15.1-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "1bcf7a286fa26e40a5a397f06ece00e4", - "sha256": "e5659b9315a0610505e050bb7190bf6fa2ccee1ac295f2b760ef9d8a03ebbb2e" - }, - "downloads": -1, - "filename": "requests-2.15.1.tar.gz", - "has_sig": false, - "md5_digest": "1bcf7a286fa26e40a5a397f06ece00e4", - "packagetype": "sdist", - "python_version": "source", - "size": 548172, - "upload_time": "2017-05-27T02:14:22", - "url": "https://files.pythonhosted.org/packages/6d/ed/3adebdc29ca33f11bca00c38c72125cd4a51091e13685375ba4426fb59dc/requests-2.15.1.tar.gz" - } - ], - "2.16.0": [ - { - "comment_text": "", - "digests": { - "md5": "f219013c8cacaaae7534ce2373cbeadc", - "sha256": "012cddec41f96a1ce4bab4b0a0ed40263ae6b2b03aa4bc4711e00418e7f3157c" - }, - "downloads": -1, - "filename": "requests-2.16.0-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "f219013c8cacaaae7534ce2373cbeadc", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 85432, - "upload_time": "2017-05-27T03:45:40", - "url": "https://files.pythonhosted.org/packages/35/b8/8ff3310309beb5fbca033b56504f869b0c65c1f284ae2a7900593b5acd3c/requests-2.16.0-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "5ca9eafc020445c86efc0be1f28f602e", - "sha256": "88eee720e83bc1dcb009ad5e2a8f1d41e903892121ec2a36eba7bf5a2d3ac2a0" - }, - "downloads": -1, - "filename": "requests-2.16.0.tar.gz", - "has_sig": false, - "md5_digest": "5ca9eafc020445c86efc0be1f28f602e", - "packagetype": "sdist", - "python_version": "source", - "size": 120726, - "upload_time": "2017-05-27T03:48:25", - "url": "https://files.pythonhosted.org/packages/26/e7/4f1ec439ecbcfe3989bb79a9c323d2482e7beea3d8d453e07443302648ec/requests-2.16.0.tar.gz" - } - ], - "2.16.1": [ - { - "comment_text": "", - "digests": { - "md5": "0a825bf34bf2cd89b13a04a3a7800e61", - "sha256": "b81b3651a206f02709e374c52071b4ac9bdf463c193701a560ce8e25c9ecc80b" - }, - "downloads": -1, - "filename": "requests-2.16.1-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "0a825bf34bf2cd89b13a04a3a7800e61", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 85732, - "upload_time": "2017-05-27T13:43:53", - "url": "https://files.pythonhosted.org/packages/c7/5d/7711f9fc9b028dc7572f84589e206220f0072e29fd9c7ae3507e7d17d8a6/requests-2.16.1-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "4acb351824461eb3ae1f74ec3a65ff28", - "sha256": "14d663571c66410a7c3634f4cb9040b16a1c083078e37a0f8cc3710eae63411e" - }, - "downloads": -1, - "filename": "requests-2.16.1.tar.gz", - "has_sig": false, - "md5_digest": "4acb351824461eb3ae1f74ec3a65ff28", - "packagetype": "sdist", - "python_version": "source", - "size": 120972, - "upload_time": "2017-05-27T13:44:20", - "url": "https://files.pythonhosted.org/packages/4c/54/1d3abddbd4c7544138b88e8329ef5294ffdc6c5d7ea965bf42e3cc4c9c39/requests-2.16.1.tar.gz" - } - ], - "2.16.2": [ - { - "comment_text": "", - "digests": { - "md5": "cc40805ee6f06d148aaa5e76d3e24a07", - "sha256": "afebb4fcabd66ba6e3188fd31f09915f5afd213b204014ea02448011eca1e49a" - }, - "downloads": -1, - "filename": "requests-2.16.2-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "cc40805ee6f06d148aaa5e76d3e24a07", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 86285, - "upload_time": "2017-05-27T14:53:09", - "url": "https://files.pythonhosted.org/packages/67/91/b3893b0db7c645b9f92aa827ce3db630eef2dd3a2ad3109c2a28cdc9e6b7/requests-2.16.2-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "e5425e53aa95e27a9a8267a097feafdc", - "sha256": "a2956efcf8dd2d526286431fdb0ec78eff25ab8db8a03c4f9d66f5fe6024f168" - }, - "downloads": -1, - "filename": "requests-2.16.2.tar.gz", - "has_sig": false, - "md5_digest": "e5425e53aa95e27a9a8267a097feafdc", - "packagetype": "sdist", - "python_version": "source", - "size": 121652, - "upload_time": "2017-05-27T14:53:31", - "url": "https://files.pythonhosted.org/packages/3c/69/d49fd9a7be23c55278c92e60af6d57336c463d8593afe7260a1665346965/requests-2.16.2.tar.gz" - } - ], - "2.16.3": [ - { - "comment_text": "", - "digests": { - "md5": "0db7fa396a581c66ca4c1b8d02ce1bd4", - "sha256": "bcdc06ebfc25f2a198274ae4710c3217fb968c5f9468dc410cd603a59c47bff2" - }, - "downloads": -1, - "filename": "requests-2.16.3-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "0db7fa396a581c66ca4c1b8d02ce1bd4", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 86310, - "upload_time": "2017-05-27T16:24:47", - "url": "https://files.pythonhosted.org/packages/76/b6/e3035b7baa98e20d248fe17af2097b882ec7724d9a8ee7ae195ad7110f82/requests-2.16.3-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "c9816b77406fd9f8e9b80ec8a560d4d8", - "sha256": "7fda55400281de8fba713dd120b4614eabc10c0b096c22bfc88ccc671227c3d4" - }, - "downloads": -1, - "filename": "requests-2.16.3.tar.gz", - "has_sig": false, - "md5_digest": "c9816b77406fd9f8e9b80ec8a560d4d8", - "packagetype": "sdist", - "python_version": "source", - "size": 121736, - "upload_time": "2017-05-27T16:24:49", - "url": "https://files.pythonhosted.org/packages/07/db/3ed266e9cd3e3f69af3af38f56a0b4e21dadf3065521b2860030889284d7/requests-2.16.3.tar.gz" - } - ], - "2.16.4": [ - { - "comment_text": "", - "digests": { - "md5": "d1a5f370e6c5236f898f27aa40a84358", - "sha256": "784213e164287b403497195cf7f45071ae5eec60ae260cbc9a26368a91445f57" - }, - "downloads": -1, - "filename": "requests-2.16.4-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "d1a5f370e6c5236f898f27aa40a84358", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 87567, - "upload_time": "2017-05-27T21:17:38", - "url": "https://files.pythonhosted.org/packages/13/52/41fb28aa332ed68cd616cd1fc44d9e9c4bb85aa60c28d275f8857da561e5/requests-2.16.4-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "badefd50cfc5bc36926a2693e792d277", - "sha256": "14db43bfaa61fd3102eecaf447a593e0650ba0dc261c72597109a973c23091ab" - }, - "downloads": -1, - "filename": "requests-2.16.4.tar.gz", - "has_sig": false, - "md5_digest": "badefd50cfc5bc36926a2693e792d277", - "packagetype": "sdist", - "python_version": "source", - "size": 122918, - "upload_time": "2017-05-27T21:17:41", - "url": "https://files.pythonhosted.org/packages/47/68/4fe8c7e9e95133d15e342b1403a1751909cddb814a5a9cced2ba4c63487d/requests-2.16.4.tar.gz" - } - ], - "2.16.5": [ - { - "comment_text": "", - "digests": { - "md5": "d10cd92d383805c5cc5a0683cf231e55", - "sha256": "3a27020d547958f5270fd5e9d62250119ee7db7454644599b65fda20cb542ded" - }, - "downloads": -1, - "filename": "requests-2.16.5-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "d10cd92d383805c5cc5a0683cf231e55", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 87597, - "upload_time": "2017-05-28T04:35:44", - "url": "https://files.pythonhosted.org/packages/65/9c/57484d6ac262af20a10b52cd95ebc99843f282342ef008997ef60f9eeb9c/requests-2.16.5-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "cca4f82209373759f5799fc0df6aca23", - "sha256": "f717303ebff661099cc5b73ce723ae1246f19ac39faa4c8005be56744d1a1006" - }, - "downloads": -1, - "filename": "requests-2.16.5.tar.gz", - "has_sig": false, - "md5_digest": "cca4f82209373759f5799fc0df6aca23", - "packagetype": "sdist", - "python_version": "source", - "size": 122929, - "upload_time": "2017-05-28T04:35:48", - "url": "https://files.pythonhosted.org/packages/de/4c/7c36954d002030c82df31d000338d40fd91b4a993941a8f3c2dbe523c749/requests-2.16.5.tar.gz" - } - ], - "2.17.0": [ - { - "comment_text": "", - "digests": { - "md5": "6856177470710847da6eb8c5ffb94ed6", - "sha256": "73b4088c05f7fb5ca8e68651ed802df3ca40621281acf74bb321b4a8408aab7e" - }, - "downloads": -1, - "filename": "requests-2.17.0-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "6856177470710847da6eb8c5ffb94ed6", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 87361, - "upload_time": "2017-05-29T17:24:35", - "url": "https://files.pythonhosted.org/packages/5b/b6/9a18db79553524246aa1b081829e6f977667ec558cef684988895c1092d9/requests-2.17.0-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "60e16f82a83d02ba30f9139310bf5301", - "sha256": "eff227db5864238d44270cbadc8ac4133e69b69a2e7092b7b316ed1e4761cbd6" - }, - "downloads": -1, - "filename": "requests-2.17.0.tar.gz", - "has_sig": false, - "md5_digest": "60e16f82a83d02ba30f9139310bf5301", - "packagetype": "sdist", - "python_version": "source", - "size": 122994, - "upload_time": "2017-05-29T17:24:38", - "url": "https://files.pythonhosted.org/packages/7c/84/617aaa311f6504489459c016daff4c66df6bbd54ee35b4cbed3e994f322d/requests-2.17.0.tar.gz" - } - ], - "2.17.1": [ - { - "comment_text": "", - "digests": { - "md5": "6ef65029dde7091e65fae2561f36305a", - "sha256": "02242978c6aaee47953da9e4d20d9d9929a1284a6b3a8a63a243ac1b842bd12c" - }, - "downloads": -1, - "filename": "requests-2.17.1-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "6ef65029dde7091e65fae2561f36305a", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 87498, - "upload_time": "2017-05-29T19:59:39", - "url": "https://files.pythonhosted.org/packages/50/41/f6fdaf24a80c726a72f76b15869a20734b7a527081129a380ddce99ffae0/requests-2.17.1-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "53318fe8030b8b234ca672cde82916e4", - "sha256": "9cf3698006012c000af2804fe4186042a4d55df0303552dd190a74f5eaafe69b" - }, - "downloads": -1, - "filename": "requests-2.17.1.tar.gz", - "has_sig": false, - "md5_digest": "53318fe8030b8b234ca672cde82916e4", - "packagetype": "sdist", - "python_version": "source", - "size": 123045, - "upload_time": "2017-05-29T19:59:40", - "url": "https://files.pythonhosted.org/packages/d0/c0/f66d080e64a361382ed665023b9925e274d833f410f8c7282fb878e9c60e/requests-2.17.1.tar.gz" - } - ], - "2.17.2": [ - { - "comment_text": "", - "digests": { - "md5": "30bd4d2841ae4c86ffd89db2a2703c75", - "sha256": "76d2f962485ebb3b3c380f146d56f5475310e53fd0defd6df0eb1c014187d45c" - }, - "downloads": -1, - "filename": "requests-2.17.2-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "30bd4d2841ae4c86ffd89db2a2703c75", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 87516, - "upload_time": "2017-05-29T21:33:32", - "url": "https://files.pythonhosted.org/packages/9a/0b/7a65b391bde96d7b1749dc3562ce22f9cc86f37bd37122f71162304e3164/requests-2.17.2-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "f28069fe8ef82543387f3dbe152cffa3", - "sha256": "3cc7a584aad15e84d193a6d7c9176af0cf49bc6611f24ec2e04be6b05957c96d" - }, - "downloads": -1, - "filename": "requests-2.17.2.tar.gz", - "has_sig": false, - "md5_digest": "f28069fe8ef82543387f3dbe152cffa3", - "packagetype": "sdist", - "python_version": "source", - "size": 123058, - "upload_time": "2017-05-29T21:33:37", - "url": "https://files.pythonhosted.org/packages/23/c2/99fe3c5c15f3d06f0620bc0867bee95ec64074cbd7c9805bb5ad3010411e/requests-2.17.2.tar.gz" - } - ], - "2.17.3": [ - { - "comment_text": "", - "digests": { - "md5": "66a7f010b985631e768485af6f3c61df", - "sha256": "baf701b4a9d4cbe40169e8ab77816f7abadbad502ba459c30f7a2bc138e4d612" - }, - "downloads": -1, - "filename": "requests-2.17.3-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "66a7f010b985631e768485af6f3c61df", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 87526, - "upload_time": "2017-05-29T21:53:19", - "url": "https://files.pythonhosted.org/packages/29/b9/d26a6ab2ee178415ab8c0c591d2a1eb782a50c42a417ae390055f86a63c1/requests-2.17.3-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "b1b8e6412e11e00e12adbb7786c3f2a3", - "sha256": "8d29f97ed1541709b57caddb77bb20592411d7ca10ec4f03275f49ee8456e225" - }, - "downloads": -1, - "filename": "requests-2.17.3.tar.gz", - "has_sig": false, - "md5_digest": "b1b8e6412e11e00e12adbb7786c3f2a3", - "packagetype": "sdist", - "python_version": "source", - "size": 123148, - "upload_time": "2017-05-29T21:53:22", - "url": "https://files.pythonhosted.org/packages/27/c7/a45641c83c6e28f4922ba6af3d4ae4d79b41932c2f3d77fed9e0bf878149/requests-2.17.3.tar.gz" - } - ], - "2.18.0": [ - { - "comment_text": "", - "digests": { - "md5": "6f34e2439fcb3dd1b6e3304903bb6be8", - "sha256": "5e88d64aa56ac0fda54e77fb9762ebc65879e171b746d5479a33c4082519d6c6" - }, - "downloads": -1, - "filename": "requests-2.18.0-py2.py3-none-any.whl", - "has_sig": true, - "md5_digest": "6f34e2439fcb3dd1b6e3304903bb6be8", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 563596, - "upload_time": "2017-06-14T15:44:35", - "url": "https://files.pythonhosted.org/packages/e2/f0/c81405acbf53d0412b984eb3fc578cdd10e347374e1aec074638a500c186/requests-2.18.0-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "b8b333ace1653652ddcce95284577f5c", - "sha256": "cd0189f962787284bff715fddaad478eb4d9c15aa167bd64e52ea0f661e7ea5c" - }, - "downloads": -1, - "filename": "requests-2.18.0.tar.gz", - "has_sig": true, - "md5_digest": "b8b333ace1653652ddcce95284577f5c", - "packagetype": "sdist", - "python_version": "source", - "size": 124085, - "upload_time": "2017-06-14T15:44:37", - "url": "https://files.pythonhosted.org/packages/e0/97/e2f972b6826c9cfe57b6934e3773d2783733bc2d345d810bafd309df3d15/requests-2.18.0.tar.gz" - } - ], - "2.18.1": [ - { - "comment_text": "", - "digests": { - "md5": "a7fbdc82134a2610b3d0cdc7e59f0bde", - "sha256": "6afd3371c1f4c1970497cdcace5c5ecbbe58267bf05ca1abd93d99d170803ab7" - }, - "downloads": -1, - "filename": "requests-2.18.1-py2.py3-none-any.whl", - "has_sig": true, - "md5_digest": "a7fbdc82134a2610b3d0cdc7e59f0bde", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 88107, - "upload_time": "2017-06-14T17:51:25", - "url": "https://files.pythonhosted.org/packages/5a/58/671011e3ff4a06e2969322267d78dcfda1bf4d1576551df1cce93cd7239d/requests-2.18.1-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "40f723ed01dddeaf990d0609d073f021", - "sha256": "c6f3bdf4a4323ac7b45d01e04a6f6c20e32a052cd04de81e05103abc049ad9b9" - }, - "downloads": -1, - "filename": "requests-2.18.1.tar.gz", - "has_sig": true, - "md5_digest": "40f723ed01dddeaf990d0609d073f021", - "packagetype": "sdist", - "python_version": "source", - "size": 124229, - "upload_time": "2017-06-14T17:51:28", - "url": "https://files.pythonhosted.org/packages/2c/b5/2b6e8ef8dd18203b6399e9f28c7d54f6de7b7549853fe36d575bd31e29a7/requests-2.18.1.tar.gz" - } - ], - "2.18.2": [ - { - "comment_text": "", - "digests": { - "md5": "08026e24839d8bf36d248abfb2b6b674", - "sha256": "414459f05392835d4d653b57b8e58f98aea9c6ff2782e37de0a1ee92891ce900" - }, - "downloads": -1, - "filename": "requests-2.18.2-py2.py3-none-any.whl", - "has_sig": true, - "md5_digest": "08026e24839d8bf36d248abfb2b6b674", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 88342, - "upload_time": "2017-07-25T15:23:15", - "url": "https://files.pythonhosted.org/packages/cf/fa/31b222e4b44975de1b5ac3e1a725abdfeb00e0d761567ab426ee28a7fc73/requests-2.18.2-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "49bd9924d3be341871bc922cde6f372e", - "sha256": "5b26fcc5e72757a867e4d562333f841eddcef93548908a1bb1a9207260618da9" - }, - "downloads": -1, - "filename": "requests-2.18.2.tar.gz", - "has_sig": true, - "md5_digest": "49bd9924d3be341871bc922cde6f372e", - "packagetype": "sdist", - "python_version": "source", - "size": 125381, - "upload_time": "2017-07-25T15:23:18", - "url": "https://files.pythonhosted.org/packages/07/2e/81fdfdfac91cf3cb2518fb149ac67caf0e081b485eab68e9aee63396f7e8/requests-2.18.2.tar.gz" - } - ], - "2.18.3": [ - { - "comment_text": "", - "digests": { - "md5": "d2d34c959a45f7da592a383485ad8b8c", - "sha256": "b62be4ec5999c24d10c98d248a136e7db20ca6616a2b65060cd9399417331e8a" - }, - "downloads": -1, - "filename": "requests-2.18.3-py2.py3-none-any.whl", - "has_sig": true, - "md5_digest": "d2d34c959a45f7da592a383485ad8b8c", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 88626, - "upload_time": "2017-08-02T13:23:31", - "url": "https://files.pythonhosted.org/packages/ba/92/c35ed010e8f96781f08dfa6d9a6a19445a175a9304aceedece77cd48b68f/requests-2.18.3-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "c8f60cf816a35c0c3fef0a40d0e407a6", - "sha256": "fb68a7baef4965c12d9cd67c0f5a46e6e28be3d8c7b6910c758fbcc99880b518" - }, - "downloads": -1, - "filename": "requests-2.18.3.tar.gz", - "has_sig": true, - "md5_digest": "c8f60cf816a35c0c3fef0a40d0e407a6", - "packagetype": "sdist", - "python_version": "source", - "size": 126008, - "upload_time": "2017-08-02T13:23:35", - "url": "https://files.pythonhosted.org/packages/c3/38/d95ddb6cc8558930600be088e174a2152261a1e0708a18bf91b5b8c90b22/requests-2.18.3.tar.gz" - } - ], - "2.18.4": [ - { - "comment_text": "", - "digests": { - "md5": "eb9be71cc41fd73a51a7c9cd1adde5de", - "sha256": "6a1b267aa90cac58ac3a765d067950e7dbbf75b1da07e895d1f594193a40a38b" - }, - "downloads": -1, - "filename": "requests-2.18.4-py2.py3-none-any.whl", - "has_sig": true, - "md5_digest": "eb9be71cc41fd73a51a7c9cd1adde5de", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 88704, - "upload_time": "2017-08-15T13:23:43", - "url": "https://files.pythonhosted.org/packages/49/df/50aa1999ab9bde74656c2919d9c0c085fd2b3775fd3eca826012bef76d8c/requests-2.18.4-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "081412b2ef79bdc48229891af13f4d82", - "sha256": "9c443e7324ba5b85070c4a818ade28bfabedf16ea10206da1132edaa6dda237e" - }, - "downloads": -1, - "filename": "requests-2.18.4.tar.gz", - "has_sig": true, - "md5_digest": "081412b2ef79bdc48229891af13f4d82", - "packagetype": "sdist", - "python_version": "source", - "size": 126224, - "upload_time": "2017-08-15T13:23:46", - "url": "https://files.pythonhosted.org/packages/b0/e1/eab4fc3752e3d240468a8c0b284607899d2fbfb236a56b7377a329aa8d09/requests-2.18.4.tar.gz" - } - ], - "2.2.0": [ - { - "comment_text": "", - "digests": { - "md5": "8f989615bb0d276d5f3158e7efab494c", - "sha256": "889d334044cd3364d07419c37671ba4f213d0f59601109dcb54c8a7ebdde38ee" - }, - "downloads": -1, - "filename": "requests-2.2.0-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "8f989615bb0d276d5f3158e7efab494c", - "packagetype": "bdist_wheel", - "python_version": "2.7", - "size": 623932, - "upload_time": "2014-01-09T19:33:37", - "url": "https://files.pythonhosted.org/packages/3b/99/a8acc0c986281232f9476575c27a81ab697afbf089f42f05c196f51892c0/requests-2.2.0-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "4d2e17221d478ece045e2e81cdb177f5", - "sha256": "1ff74f88bbfddf94f92aa20bd8473c7d46d3398c95b1842d81b2f3c475d5625d" - }, - "downloads": -1, - "filename": "requests-2.2.0.tar.gz", - "has_sig": false, - "md5_digest": "4d2e17221d478ece045e2e81cdb177f5", - "packagetype": "sdist", - "python_version": "source", - "size": 421997, - "upload_time": "2014-01-09T19:33:32", - "url": "https://files.pythonhosted.org/packages/c9/5a/aa687599abd76de72ae5a554e2e70328fc311d59e0b1e999263fb094baf3/requests-2.2.0.tar.gz" - } - ], - "2.2.1": [ - { - "comment_text": "", - "digests": { - "md5": "1e38addb978e50bd86f62bda53956b03", - "sha256": "b5bd2e1b78d28051108ebaa6248750221f9ccef52b4f054cb727de61b0406de0" - }, - "downloads": -1, - "filename": "requests-2.2.1-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "1e38addb978e50bd86f62bda53956b03", - "packagetype": "bdist_wheel", - "python_version": "2.7", - "size": 625382, - "upload_time": "2014-01-23T18:26:15", - "url": "https://files.pythonhosted.org/packages/7d/15/6efffc6aee666e1456852c2bf1d483b46bf971a2d509b35a98fc3eae1c60/requests-2.2.1-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "ac27081135f58d1a43e4fb38258d6f4e", - "sha256": "1266921f1bed5fbf364cd83cf239b6d7b3ea5c32ccccbc93980d9ba12cdcfd02" - }, - "downloads": -1, - "filename": "requests-2.2.1.tar.gz", - "has_sig": false, - "md5_digest": "ac27081135f58d1a43e4fb38258d6f4e", - "packagetype": "sdist", - "python_version": "source", - "size": 421978, - "upload_time": "2014-01-23T18:26:12", - "url": "https://files.pythonhosted.org/packages/d1/0c/2dc2996268bc64b531a5a2dc6f4ec04552f3a8a2a86e88aeedcb92987741/requests-2.2.1.tar.gz" - } - ], - "2.3.0": [ - { - "comment_text": "", - "digests": { - "md5": "f2d850fd48fc10a93aa03d69b87b96b4", - "sha256": "3648802492e955ffeb28f6dab864ad714059f5438bf6798d82f9d477c666aca3" - }, - "downloads": -1, - "filename": "requests-2.3.0-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "f2d850fd48fc10a93aa03d69b87b96b4", - "packagetype": "bdist_wheel", - "python_version": "2.7", - "size": 452902, - "upload_time": "2014-05-16T17:57:05", - "url": "https://files.pythonhosted.org/packages/f7/51/7aa1e337862118bee783c0249debd64cb07b8fbdfef154b1e185754b02d5/requests-2.3.0-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "7449ffdc8ec9ac37bbcd286003c80f00", - "sha256": "1c1473875d846fe563d70868acf05b1953a4472f4695b7b3566d1d978957b8fc" - }, - "downloads": -1, - "filename": "requests-2.3.0.tar.gz", - "has_sig": false, - "md5_digest": "7449ffdc8ec9ac37bbcd286003c80f00", - "packagetype": "sdist", - "python_version": "source", - "size": 429521, - "upload_time": "2014-05-16T17:57:02", - "url": "https://files.pythonhosted.org/packages/ab/f9/4425c8410faf7c7d420dbd64e127f2cfb68cfef869a374b332610b6abc09/requests-2.3.0.tar.gz" - } - ], - "2.4.0": [ - { - "comment_text": "", - "digests": { - "md5": "47948d2fb3f2aa04235e6f637814b226", - "sha256": "8b2cc9e334b3e66aa5df15f2e4967f2c95b5164a4e6df7e92dd70ca67400912a" - }, - "downloads": -1, - "filename": "requests-2.4.0-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "47948d2fb3f2aa04235e6f637814b226", - "packagetype": "bdist_wheel", - "python_version": "2.7", - "size": 457810, - "upload_time": "2014-08-29T14:32:48", - "url": "https://files.pythonhosted.org/packages/78/14/23cf8ede304c7c8b69b929b17074292073827239c31659ab8c7beb22a059/requests-2.4.0-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "99b830d1afe2e5920adbea0fe3120948", - "sha256": "7007e03cbc73e357b5055c6ea0ad6e447e2afa00f1a1f843cd792a1ebaa3763e" - }, - "downloads": -1, - "filename": "requests-2.4.0.tar.gz", - "has_sig": false, - "md5_digest": "99b830d1afe2e5920adbea0fe3120948", - "packagetype": "sdist", - "python_version": "source", - "size": 436334, - "upload_time": "2014-08-29T14:32:45", - "url": "https://files.pythonhosted.org/packages/ef/a0/9863b20b6a87e45cd4353c10277d9674f9ddfd7c28c58e61a339e273a119/requests-2.4.0.tar.gz" - } - ], - "2.4.1": [ - { - "comment_text": "", - "digests": { - "md5": "19d5413dc71309e4fb1f8103b8eb99ce", - "sha256": "b9e3c10e5092b444bb4c1b0b337f57e6c3d7680ad7c5192f597e84dd931fb598" - }, - "downloads": -1, - "filename": "requests-2.4.1-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "19d5413dc71309e4fb1f8103b8eb99ce", - "packagetype": "bdist_wheel", - "python_version": "2.7", - "size": 458354, - "upload_time": "2014-09-09T16:35:12", - "url": "https://files.pythonhosted.org/packages/bf/81/22c8ed95e8088c0a7c022969534c8157930f0bed6ae77e12e86fdc2e855c/requests-2.4.1-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "931461f761c70708c46ea65b7889da58", - "sha256": "35d890b0aaa6e09ec40d49361d823b998ced86cc7673a9ce70bbc4f986e13ad8" - }, - "downloads": -1, - "filename": "requests-2.4.1.tar.gz", - "has_sig": false, - "md5_digest": "931461f761c70708c46ea65b7889da58", - "packagetype": "sdist", - "python_version": "source", - "size": 436872, - "upload_time": "2014-09-09T16:35:08", - "url": "https://files.pythonhosted.org/packages/0f/d0/e80371e64a7a7bafa303ea50465456e5292d9436504ce39b9619b6ba24be/requests-2.4.1.tar.gz" - } - ], - "2.4.2": [ - { - "comment_text": "", - "digests": { - "md5": "f49f34b1fcdef6b557964deea1a80cf3", - "sha256": "49df4571ecd49d00a4587237b7d8be9664bb326052e06d2c488255b34f13393d" - }, - "downloads": -1, - "filename": "requests-2.4.2-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "f49f34b1fcdef6b557964deea1a80cf3", - "packagetype": "bdist_wheel", - "python_version": "2.7", - "size": 459326, - "upload_time": "2014-10-05T17:15:53", - "url": "https://files.pythonhosted.org/packages/a2/87/afb7990b87f76ec9d11fd15668c2362a8fbe8436e0a780c7fe5aedf1a299/requests-2.4.2-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "a2476d2dd83a0520847f216ce0b5f9d1", - "sha256": "b98a76df30e95ef636af5e040ff7c5d0bc0b482899fd7a187b0ae525e41fe8f1" - }, - "downloads": -1, - "filename": "requests-2.4.2.tar.gz", - "has_sig": false, - "md5_digest": "a2476d2dd83a0520847f216ce0b5f9d1", - "packagetype": "sdist", - "python_version": "source", - "size": 437898, - "upload_time": "2014-10-05T17:15:45", - "url": "https://files.pythonhosted.org/packages/f8/25/1599a06d261fdd84256829d88f7a415c80a6e249988f9e17ba5016119b6f/requests-2.4.2.tar.gz" - } - ], - "2.4.3": [ - { - "comment_text": "", - "digests": { - "md5": "0a66a9c4c22272680430fbb9fb4ca34f", - "sha256": "124890f41723c85aa82dfe0807432aea46d24aeb0dafce340969d2089548c2c3" - }, - "downloads": -1, - "filename": "requests-2.4.3-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "0a66a9c4c22272680430fbb9fb4ca34f", - "packagetype": "bdist_wheel", - "python_version": "2.7", - "size": 459464, - "upload_time": "2014-10-06T09:44:49", - "url": "https://files.pythonhosted.org/packages/8a/98/bf72c7bd3ecfaf46dc2de3e59dcda6e61766526d3cf5897e9edd599795fc/requests-2.4.3-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "02214b3a179e445545de4b7a98d3dd17", - "sha256": "53c68313c5c6149b1a899234c000296e60a8900682accf73d6f0c6d608afc6b1" - }, - "downloads": -1, - "filename": "requests-2.4.3.tar.gz", - "has_sig": false, - "md5_digest": "02214b3a179e445545de4b7a98d3dd17", - "packagetype": "sdist", - "python_version": "source", - "size": 438132, - "upload_time": "2014-10-06T09:44:44", - "url": "https://files.pythonhosted.org/packages/f4/ff/34a5a2eb91e35280e65585c48304094b61b58f9966de74ab72673c2fde9d/requests-2.4.3.tar.gz" - } - ], - "2.5.0": [ - { - "comment_text": "", - "digests": { - "md5": "9d29a8a0210c236d9329bed49277b3fa", - "sha256": "66cbb850987e47177a3b4112392490bcb76eb75b37cc53da007e35f3ec894bc1" - }, - "downloads": -1, - "filename": "requests-2.5.0-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "9d29a8a0210c236d9329bed49277b3fa", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 464196, - "upload_time": "2014-12-01T23:27:51", - "url": "https://files.pythonhosted.org/packages/32/0e/11cfb3a5e269605d0bbe3bbca9845da9b57aed90e75bd489e5e7e3509c13/requests-2.5.0-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "b8bf3ddca75e7ecf1b6776da1e6e3385", - "sha256": "d2daef4919fc87262b8b3cb5a9d214cac8ce1e50950f8423bbc1d31c2e63d38e" - }, - "downloads": -1, - "filename": "requests-2.5.0.tar.gz", - "has_sig": false, - "md5_digest": "b8bf3ddca75e7ecf1b6776da1e6e3385", - "packagetype": "sdist", - "python_version": "source", - "size": 443222, - "upload_time": "2014-12-01T23:27:58", - "url": "https://files.pythonhosted.org/packages/c8/fb/d14d1c5166a8449d36c9a3b2656706c506a2cf261d37a79d16c18c37b646/requests-2.5.0.tar.gz" - } - ], - "2.5.1": [ - { - "comment_text": "", - "digests": { - "md5": "11dc91bc96c5c5e0b566ce8f9c9644ab", - "sha256": "1f046dcf5ec712ed3be8684b9f33c95b76e28cd1c825db0f5e1557bfd87b3745" - }, - "downloads": -1, - "filename": "requests-2.5.1-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "11dc91bc96c5c5e0b566ce8f9c9644ab", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 464421, - "upload_time": "2014-12-23T17:55:59", - "url": "https://files.pythonhosted.org/packages/54/9a/ee6051b19c62728d5467dead279c532798c287e39c3bc8becb1cfa9f525a/requests-2.5.1-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "c270eb5551a02e8ab7a4cbb83e22af2e", - "sha256": "7b7735efd3b1e2323dc9fcef060b380d05f5f18bd0f247f5e9e74a628279de66" - }, - "downloads": -1, - "filename": "requests-2.5.1.tar.gz", - "has_sig": false, - "md5_digest": "c270eb5551a02e8ab7a4cbb83e22af2e", - "packagetype": "sdist", - "python_version": "source", - "size": 443633, - "upload_time": "2014-12-23T17:56:08", - "url": "https://files.pythonhosted.org/packages/61/fe/2c0a4ca99c68ea24eec65d3094d6539d54635562678ee7a58420005c12b6/requests-2.5.1.tar.gz" - } - ], - "2.5.2": [ - { - "comment_text": "", - "digests": { - "md5": "7e72dfe8ed9d4ce5fd9dd9d799b3add1", - "sha256": "b4d1a981c443e19ee3f527b352022d698e16a298913d9b78ea1133f089eeb779" - }, - "downloads": -1, - "filename": "requests-2.5.2-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "7e72dfe8ed9d4ce5fd9dd9d799b3add1", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 474275, - "upload_time": "2015-02-23T22:37:39", - "url": "https://files.pythonhosted.org/packages/20/fc/53f45b9bdfa8bd5f11b7d60b50052a8e4729346fcc8d5854e0e1449d92b5/requests-2.5.2-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "424e2469202c9bace4e8bf4642d4217a", - "sha256": "306ead91d47a48b6a25d495d2495de99694641bd7d2cac5bcc405a8837c7a612" - }, - "downloads": -1, - "filename": "requests-2.5.2.tar.gz", - "has_sig": false, - "md5_digest": "424e2469202c9bace4e8bf4642d4217a", - "packagetype": "sdist", - "python_version": "source", - "size": 455688, - "upload_time": "2015-02-23T22:37:46", - "url": "https://files.pythonhosted.org/packages/d6/f7/1a4c1cae7618ad3d9fe5536ef74f47b2cb1028938e12d6dfe0a9806a8e1b/requests-2.5.2.tar.gz" - } - ], - "2.5.3": [ - { - "comment_text": "", - "digests": { - "md5": "233249f4627ac5481c948e494d2a090e", - "sha256": "3e66d7ba78e7a6a8eccd2e901079ab8d24e408b5375cf32eb51f291306302418" - }, - "downloads": -1, - "filename": "requests-2.5.3-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "233249f4627ac5481c948e494d2a090e", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 468593, - "upload_time": "2015-02-24T16:33:49", - "url": "https://files.pythonhosted.org/packages/95/54/44dc83b5f11c6da06bf9abd18c8a0905e0e297e0a9c3bfbc0c6ee4bdd33d/requests-2.5.3-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "23bf4fcc89ea8d353eb5353bb4a475b1", - "sha256": "55d7f5619daae94ec49ee81ed8c865e5a2a47f0bbf8e06cf94636bee103eaf65" - }, - "downloads": -1, - "filename": "requests-2.5.3.tar.gz", - "has_sig": false, - "md5_digest": "23bf4fcc89ea8d353eb5353bb4a475b1", - "packagetype": "sdist", - "python_version": "source", - "size": 448318, - "upload_time": "2015-02-24T16:33:58", - "url": "https://files.pythonhosted.org/packages/a6/36/06a7d4261f91552f21f017fe162d69df95ca7925d1436c8acf73283ee3d0/requests-2.5.3.tar.gz" - } - ], - "2.6.0": [ - { - "comment_text": "", - "digests": { - "md5": "3ab1972bbaf2802d94516fb86b9b0d0b", - "sha256": "fdb9af60d47ca57a80df0a213336019a34ff6192d8fff361c349f2c8398fe460" - }, - "downloads": -1, - "filename": "requests-2.6.0-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "3ab1972bbaf2802d94516fb86b9b0d0b", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 469802, - "upload_time": "2015-03-14T16:44:37", - "url": "https://files.pythonhosted.org/packages/73/63/b0729be549494a3e31316437053bc4e0a8bb71a07a6ee6059434b8f1cd5f/requests-2.6.0-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "25287278fa3ea106207461112bb37050", - "sha256": "1cdbed1f0e236f35ef54e919982c7a338e4fea3786310933d3a7887a04b74d75" - }, - "downloads": -1, - "filename": "requests-2.6.0.tar.gz", - "has_sig": false, - "md5_digest": "25287278fa3ea106207461112bb37050", - "packagetype": "sdist", - "python_version": "source", - "size": 450389, - "upload_time": "2015-03-14T16:44:48", - "url": "https://files.pythonhosted.org/packages/eb/70/237e11db04807a9409ed39997097118208e7814309d9bc3da7bb98d1fe3d/requests-2.6.0.tar.gz" - } - ], - "2.6.1": [ - { - "comment_text": "", - "digests": { - "md5": "adb8e91b3367bc0417ef1e4a6dced9b1", - "sha256": "79515d60eae4f5d426b8813ffd60ed874169d78b8815844e8e85798ef27a599f" - }, - "downloads": -1, - "filename": "requests-2.6.1-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "adb8e91b3367bc0417ef1e4a6dced9b1", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 469962, - "upload_time": "2015-04-23T02:27:04", - "url": "https://files.pythonhosted.org/packages/64/74/5bedd762987b5cb4ad5de4901d12942ad7635bffa5ae4f6b5e725d1b2068/requests-2.6.1-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "da6e487f89e6a531699b7fd97ff182af", - "sha256": "490b111c824d64b84797a899a4c22618bbc45323ac24a0a0bb4b73a8758e943c" - }, - "downloads": -1, - "filename": "requests-2.6.1.tar.gz", - "has_sig": false, - "md5_digest": "da6e487f89e6a531699b7fd97ff182af", - "packagetype": "sdist", - "python_version": "source", - "size": 450975, - "upload_time": "2015-04-23T02:27:12", - "url": "https://files.pythonhosted.org/packages/08/d5/3dfb95813d697d1e5a3eccb9b88f9d91a233fc35b0ddbb5bc238142f9de0/requests-2.6.1.tar.gz" - } - ], - "2.6.2": [ - { - "comment_text": "", - "digests": { - "md5": "36746c275589b2154307bbcc6d28320a", - "sha256": "8f0f56813f82d0c27d9578221268ac9af48f076c71ee69693305ceca6ca355bd" - }, - "downloads": -1, - "filename": "requests-2.6.2-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "36746c275589b2154307bbcc6d28320a", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 470140, - "upload_time": "2015-04-23T16:30:52", - "url": "https://files.pythonhosted.org/packages/9f/3e/c09023432b822a09d965878640de63f8126d77c948f45c24dcad13d42721/requests-2.6.2-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "0d703e5be558566e0f8c37f960d95372", - "sha256": "0577249d4b6c4b11fd97c28037e98664bfaa0559022fee7bcef6b752a106e505" - }, - "downloads": -1, - "filename": "requests-2.6.2.tar.gz", - "has_sig": false, - "md5_digest": "0d703e5be558566e0f8c37f960d95372", - "packagetype": "sdist", - "python_version": "source", - "size": 451109, - "upload_time": "2015-04-23T16:31:01", - "url": "https://files.pythonhosted.org/packages/37/b3/d1a5d9768240a1104a620730a1226975ceb9dd3882a8cfd8935b314ee0ca/requests-2.6.2.tar.gz" - } - ], - "2.7.0": [ - { - "comment_text": "", - "digests": { - "md5": "564fb256f865a79f977e57b79d31659a", - "sha256": "20f976cdce02a42b69ce80e9e03897a51814b36d448b37288546086ebc473146" - }, - "downloads": -1, - "filename": "requests-2.7.0-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "564fb256f865a79f977e57b79d31659a", - "packagetype": "bdist_wheel", - "python_version": "2.7", - "size": 470641, - "upload_time": "2015-05-03T15:01:28", - "url": "https://files.pythonhosted.org/packages/26/ff/c71b3943bebdd9f7ceb9e137296370587eb0b33fe2eb3732ae168bc45204/requests-2.7.0-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "29b173fd5fa572ec0764d1fd7b527260", - "sha256": "398a3db6d61899d25fd4a06c6ca12051b0ce171d705decd7ed5511517b4bb93d" - }, - "downloads": -1, - "filename": "requests-2.7.0.tar.gz", - "has_sig": false, - "md5_digest": "29b173fd5fa572ec0764d1fd7b527260", - "packagetype": "sdist", - "python_version": "source", - "size": 451723, - "upload_time": "2015-05-03T15:01:21", - "url": "https://files.pythonhosted.org/packages/0a/00/8cc925deac3a87046a4148d7846b571cf433515872b5430de4cd9dea83cb/requests-2.7.0.tar.gz" - } - ], - "2.8.0": [ - { - "comment_text": "", - "digests": { - "md5": "52236eb6f886db4d2afba43775c97050", - "sha256": "3a34af0dd06fed021286d93da464bbb76dcc0c709d02e7d3cdca195b1341c380" - }, - "downloads": -1, - "filename": "requests-2.8.0-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "52236eb6f886db4d2afba43775c97050", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 476582, - "upload_time": "2015-10-06T14:47:57", - "url": "https://files.pythonhosted.org/packages/5d/a6/90f822c17b4fc905da67aed49b511f110207242ff164aeda926461101dc6/requests-2.8.0-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "3ec7198fc935d83c3eacff1ed4095ce4", - "sha256": "b2f003589b60924909c0acde472590c5ea83906986a7a25b6f7929eb20923b7b" - }, - "downloads": -1, - "filename": "requests-2.8.0.tar.gz", - "has_sig": false, - "md5_digest": "3ec7198fc935d83c3eacff1ed4095ce4", - "packagetype": "sdist", - "python_version": "source", - "size": 457879, - "upload_time": "2015-10-06T14:48:08", - "url": "https://files.pythonhosted.org/packages/1b/92/0632a7eb5e94bfedd300a3a5f4ebbf8505fd9768ba00ab259b5bf786de5f/requests-2.8.0.tar.gz" - } - ], - "2.8.1": [ - { - "comment_text": "", - "digests": { - "md5": "46f1d621daa3ab38958a42f51478b1ee", - "sha256": "89f1b1f25dcd7b68f514e8d341a5b2eb466f960ae756822eaab480a3c1a81c28" - }, - "downloads": -1, - "filename": "requests-2.8.1-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "46f1d621daa3ab38958a42f51478b1ee", - "packagetype": "bdist_wheel", - "python_version": "2.7", - "size": 497953, - "upload_time": "2015-10-13T12:56:41", - "url": "https://files.pythonhosted.org/packages/c0/0f/a911a44c89ba01b23d8fe3defbdfca1e962de6f11a11da32658902cdc2a4/requests-2.8.1-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "a27ea3d72d7822906ddce5e252d6add9", - "sha256": "84fe8d5bf4dcdcc49002446c47a146d17ac10facf00d9086659064ac43b6c25b" - }, - "downloads": -1, - "filename": "requests-2.8.1.tar.gz", - "has_sig": false, - "md5_digest": "a27ea3d72d7822906ddce5e252d6add9", - "packagetype": "sdist", - "python_version": "source", - "size": 480803, - "upload_time": "2015-10-13T12:56:34", - "url": "https://files.pythonhosted.org/packages/38/2d/290d33417c079a5248fcd06b0b8492acdd1851e54e4bdad54c3859dab600/requests-2.8.1.tar.gz" - } - ], - "2.9.0": [ - { - "comment_text": "", - "digests": { - "md5": "149560afb69fe9e5048d05322eeb8ada", - "sha256": "1f4726bc7636edcbd141ba9c868dd92ecb77dbc869f68a28c32e9e149b070854" - }, - "downloads": -1, - "filename": "requests-2.9.0-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "149560afb69fe9e5048d05322eeb8ada", - "packagetype": "bdist_wheel", - "python_version": "2.7", - "size": 500695, - "upload_time": "2015-12-15T15:30:34", - "url": "https://files.pythonhosted.org/packages/bf/b7/c0b5a7fcf561577178ffd65af9af37c412cf6fbb1a2a198b9308b343d63f/requests-2.9.0-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "2f46fdceaf4f63e5e3665a8cb50d284f", - "sha256": "4881966532b5a36c552244fd909de66d1b8c4a26086f56fd5837cfcde63f8eb8" - }, - "downloads": -1, - "filename": "requests-2.9.0.tar.gz", - "has_sig": false, - "md5_digest": "2f46fdceaf4f63e5e3665a8cb50d284f", - "packagetype": "sdist", - "python_version": "source", - "size": 483589, - "upload_time": "2015-12-15T15:29:58", - "url": "https://files.pythonhosted.org/packages/e4/99/3e33bfe263894278a094c374f87031554406e57fd0b1ad22520357556627/requests-2.9.0.tar.gz" - } - ], - "2.9.1": [ - { - "comment_text": "", - "digests": { - "md5": "58a444aaa02780ad01983f5f540e67b2", - "sha256": "113fbba5531a9e34945b7d36b33a084e8ba5d0664b703c81a7c572d91919a5b8" - }, - "downloads": -1, - "filename": "requests-2.9.1-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "58a444aaa02780ad01983f5f540e67b2", - "packagetype": "bdist_wheel", - "python_version": "2.7", - "size": 501205, - "upload_time": "2015-12-21T14:55:10", - "url": "https://files.pythonhosted.org/packages/b8/f7/3bb4d18c234a8ce7044d5ee2e1082b7d72bf6c550afb8d51ae266dea56f1/requests-2.9.1-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "0b7f480d19012ec52bab78292efd976d", - "sha256": "c577815dd00f1394203fc44eb979724b098f88264a9ef898ee45b8e5e9cf587f" - }, - "downloads": -1, - "filename": "requests-2.9.1.tar.gz", - "has_sig": false, - "md5_digest": "0b7f480d19012ec52bab78292efd976d", - "packagetype": "sdist", - "python_version": "source", - "size": 484252, - "upload_time": "2015-12-21T14:55:00", - "url": "https://files.pythonhosted.org/packages/f9/6d/07c44fb1ebe04d069459a189e7dab9e4abfe9432adcd4477367c25332748/requests-2.9.1.tar.gz" - } - ], - "2.9.2": [ - { - "comment_text": "", - "digests": { - "md5": "afecc76f13f3ae5e5dab18ae64c73c84", - "sha256": "22a8c72dfc7fc18db1aca6784e97a638e9d09abe2cd387be473f88bd6dcba22f" - }, - "downloads": -1, - "filename": "requests-2.9.2-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "afecc76f13f3ae5e5dab18ae64c73c84", - "packagetype": "bdist_wheel", - "python_version": "2.7", - "size": 502812, - "upload_time": "2016-04-29T21:57:23", - "url": "https://files.pythonhosted.org/packages/8b/e7/229a428b8eb9a7f925ef16ff09ab25856efe789410d661f10157919f2ae2/requests-2.9.2-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "18d0e51cd5e84c7d8b6dcbdd51551984", - "sha256": "d8be941a08cf36e4f424ac76073eb911e5e646a33fcb3402e1642c426bf34682" - }, - "downloads": -1, - "filename": "requests-2.9.2.tar.gz", - "has_sig": false, - "md5_digest": "18d0e51cd5e84c7d8b6dcbdd51551984", - "packagetype": "sdist", - "python_version": "source", - "size": 474018, - "upload_time": "2016-04-29T21:57:10", - "url": "https://files.pythonhosted.org/packages/64/20/2133a092a0e87d1c250fe48704974b73a1341b7e4f800edecf40462a825d/requests-2.9.2.tar.gz" - } - ] - }, - "urls": [ - { - "comment_text": "", - "digests": { + "name": "requests", + "files": [ + { + "filename": "requests-0.10.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/62/35/0230421b8c4efad6624518028163329ad0c2df9e58e6b3bee013427bf8f6/requests-0.10.0.tar.gz", + "hashes": { + "md5": "c90a48af18eb4170dbe4832c1104440c", + "sha256": "210a82e678c45d433a4ad1f105974b3102a8ab5198872dc0a3238a8750d4c65e" + } + }, + { + "filename": "requests-0.10.1.tar.gz", + "url": "https://files.pythonhosted.org/packages/b4/56/ba2d803383ec32d70f8faa7df5eb37ee9b3fc662ff68b7ab01ad9740b83a/requests-0.10.1.tar.gz", + "hashes": { + "md5": "699147d2143bff95238befa58980b912", + "sha256": "da6031575a30c7b65ea99465183468349b3645e6bf5322e49d53f565b27ed2b5" + } + }, + { + "filename": "requests-0.10.2.tar.gz", + "url": "https://files.pythonhosted.org/packages/58/1e/6b84552b6553f5beaf7cb0fe15115e7e4673326ed9188ad5338559ee8285/requests-0.10.2.tar.gz", + "hashes": { + "md5": "47c3cf85a0112d423137b43989663bef", + "sha256": "1546ef1e291ae337086369b621096fb0f69f88f6f67f60b1f6b7c18d1ca278e1" + } + }, + { + "filename": "requests-0.10.3.tar.gz", + "url": "https://files.pythonhosted.org/packages/01/44/39988315e036b79fe70428273053617266bf20d1363e91082346fae8450d/requests-0.10.3.tar.gz", + "hashes": { + "md5": "a055af00593f4828c3becd0ccfab503f", + "sha256": "8eeb24328304b015cbd59a49670e2738b77034b225b566729ddb19941899e490" + } + }, + { + "filename": "requests-0.10.4.tar.gz", + "url": "https://files.pythonhosted.org/packages/94/ac/5fa21e435ba8050d14db92ce29763c28196b727d4079dc608d39177fbf9b/requests-0.10.4.tar.gz", + "hashes": { + "md5": "5e465e9e739bcc9f71935ca4e9706168", + "sha256": "2ad4cc51d7595ca6f97373a0d697999e0cbdbbf1ba665d18f0f3dcec12b8be77" + } + }, + { + "filename": "requests-0.10.6.tar.gz", + "url": "https://files.pythonhosted.org/packages/b4/1f/8f5430040fcf4391dc5bd324424a569e2e0d96595952b21eb82403602d98/requests-0.10.6.tar.gz", + "hashes": { + "md5": "c889401445de3cbbac98509208a73b83", + "sha256": "31134b4f35951730dcce59f2af334478b68caa5728902a1d6bd5e115ec677d8b" + } + }, + { + "filename": "requests-0.10.7.tar.gz", + "url": "https://files.pythonhosted.org/packages/c5/cd/0597f9c040db24ca6d23cc74faa102554cb0a93bdbffb855d7749547921f/requests-0.10.7.tar.gz", + "hashes": { + "md5": "a3ac9d431981dcfd592fd0f35c499e4a", + "sha256": "80f32a74bed8cf081a3a25512f8725e09ceda217101ea706efced262bb05aec6" + } + }, + { + "filename": "requests-0.10.8.tar.gz", + "url": "https://files.pythonhosted.org/packages/9a/05/4ab34c6aae63a01aef2fd8be3573a99c197cc76a67f8cee751cb3a7784fb/requests-0.10.8.tar.gz", + "hashes": { + "md5": "0fc89a30eef76b2393cbc7ebace91750", + "sha256": "bec280d924a8be87b3377ee78a976334a6e7c944a8fe09bbd9447e669b984dae" + } + }, + { + "filename": "requests-0.11.1.tar.gz", + "url": "https://files.pythonhosted.org/packages/d7/ee/6826f31ae3e0e68606cb9086c3904582b3982bbccc73f34d6dc9912b48ad/requests-0.11.1.tar.gz", + "hashes": { + "md5": "c903c32a0e1f04889e693da8e9c71872", + "sha256": "fd4260541d0e559c78e2b3072bd79f36e0f8ef935bcbbadaa8c98cd8b5a62897" + } + }, + { + "filename": "requests-0.11.2.tar.gz", + "url": "https://files.pythonhosted.org/packages/b6/52/ad2911cf5586f2372a296a93a94d0324e4ffdd225975241562c450594795/requests-0.11.2.tar.gz", + "hashes": { + "md5": "5acd23600c897bf1560dca18005b428c", + "sha256": "547bf78a774a6018271d6e5c40613ec554642ba4d6cdf45813e7894145293c57" + } + }, + { + "filename": "requests-0.12.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/3a/ac/0372d6b7fbde19444d5cc560f296e70b26283d2bac0665b576dd3f5e6b60/requests-0.12.0.tar.gz", + "hashes": { + "md5": "c38bacf4d6a065f3c47463e63efdfb5a", + "sha256": "8a88a291599444be608940c227b6114212220d8126c512af821f1ab207fe5072" + } + }, + { + "filename": "requests-0.12.1.tar.gz", + "url": "https://files.pythonhosted.org/packages/3a/0a/7c62c06702ddb4d3bc50d27f5b8e094d6e66a3374fc2eedf264742f84805/requests-0.12.1.tar.gz", + "hashes": { + "md5": "fe9e0515d09733d0eb9e2031c03401b2", + "sha256": "9ce56b87180c06728d96ca734055675abf8f5cc3136e0d7712a6260430685589" + } + }, + { + "filename": "requests-0.13.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/86/1b/88d3753931419a226bb4e4c1d354cd2d40acff3482b37e30dd84ba8a243b/requests-0.13.0.tar.gz", + "hashes": { + "md5": "7d41e51c273806456faab61370d5147e", + "sha256": "03a2001843546147ddb6972d0661e2002b9be4ccbbbd2177ee10f05bd1910109" + } + }, + { + "filename": "requests-0.13.1.tar.gz", + "url": "https://files.pythonhosted.org/packages/0d/63/0e6c6b817ab38fb3e38a192d6631d698fe78308a68659af3aa523cd736d4/requests-0.13.1.tar.gz", + "hashes": { + "md5": "31a08091feeefe60817e45122d933219", + "sha256": "31f3ae96787fe74a78c7dd9626bf997fd4eabacc040b7b33fbd8632d2c2a97f6" + } + }, + { + "filename": "requests-0.13.2.tar.gz", + "url": "https://files.pythonhosted.org/packages/62/ca/338cf287e172099e4500cfa2cb580d2c9a1874427a8a14324d7a4c9d01b1/requests-0.13.2.tar.gz", + "hashes": { + "md5": "fac5635391778e2394a411d37e69ae5e", + "sha256": "37684324da8aca40e88fa2f7faa526cc116d74e979c2ac5d9119fe6e1bb5ced5" + } + }, + { + "filename": "requests-0.13.3.tar.gz", + "url": "https://files.pythonhosted.org/packages/54/9d/1ee0bd44e9334b6382ed5226d4bc33518d0d0b03ed806af6444d1c80ed83/requests-0.13.3.tar.gz", + "hashes": { + "md5": "54387d7df6c69580b906dcb5a2bd0724", + "sha256": "79503a14a43d6ae0b0b2e92f88ed0b01015528b8a8ab47721c28aa993aa4db2b" + } + }, + { + "filename": "requests-0.13.4.tar.gz", + "url": "https://files.pythonhosted.org/packages/04/75/52e169351e24a9faa8bfac69a07ea3551b845ca6354f22da15c5da3d5100/requests-0.13.4.tar.gz", + "hashes": { + "md5": "286cd3352509691e81c520accc5b9e48", + "sha256": "94672e92c23fefe516c5310b84d97b4ea19ef373003a7ba7af1057102a87f345" + } + }, + { + "filename": "requests-0.13.5.tar.gz", + "url": "https://files.pythonhosted.org/packages/ba/d1/919f6240a37ce5aade82da39809e1f28a5f2899a29a0ca10c381ba70efbb/requests-0.13.5.tar.gz", + "hashes": { + "md5": "805fd122b4cfd224e15ff2f5288c5ba0", + "sha256": "c6abb4b15a3f2aaad18c22b214b9b35d69ec4e2730c5b922f95f17a88981f957" + } + }, + { + "filename": "requests-0.13.6.tar.gz", + "url": "https://files.pythonhosted.org/packages/02/56/a6203485b552f9e8e8f16bd4e576446f94737ccbc563957e7510c8e401e4/requests-0.13.6.tar.gz", + "hashes": { + "md5": "9ea0f38cc4bf444be5a4c90f127211f2", + "sha256": "3cca63908f1b941d2da61ef0e8baf7bf014cc0df6512e172b8d2ac87be82b916" + } + }, + { + "filename": "requests-0.13.7.tar.gz", + "url": "https://files.pythonhosted.org/packages/b4/48/e82ded36a3cee7c0ef9605b44c4615ffe4a37f8b6c8b17fdbc15fae18daa/requests-0.13.7.tar.gz", + "hashes": { + "md5": "9212044f915d44fe3010cb923c0e08e5", + "sha256": "d9c6cf2890a0dc1200407f99130d334ef5ab5270bed3d9b4c14b0bb9c6cc3400" + } + }, + { + "filename": "requests-0.13.8.tar.gz", + "url": "https://files.pythonhosted.org/packages/db/1e/1f37495384a628887e10ecd61d45dba455ceec4b8b5b463512b4700e5b3d/requests-0.13.8.tar.gz", + "hashes": { + "md5": "d01596bd344db94763b2e4dfaa7bc7b9", + "sha256": "3ef37004f6394b111a27f0b6d0a64be83f7e4bccfbbbcdd21455400af5f4fbd4" + } + }, + { + "filename": "requests-0.13.9.tar.gz", + "url": "https://files.pythonhosted.org/packages/01/da/da83c242c5a77c58aa86072d68fd2855aa9b4d3b1a8bac4b402531b25ff1/requests-0.13.9.tar.gz", + "hashes": { + "md5": "66d52b8f47be517fc91a6e18d6b9ce82", + "sha256": "d887bb1c06948a8930d6e73a1f942f9febe9157a299a984994c20c84b2c21e20" + } + }, + { + "filename": "requests-0.14.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/4e/31/50a12e5b5e585e0b00ce2592c9b45f2ae109575e3707a341afd7550a8d1a/requests-0.14.0.tar.gz", + "hashes": { + "md5": "a809c747e4f09b92147721ebc3e23dd6", + "sha256": "4e690ba0275ab4a8c9a5c7a6eb14e79e1adad0f84331fc638a18d7751f41ac3b" + } + }, + { + "filename": "requests-0.14.1.tar.gz", + "url": "https://files.pythonhosted.org/packages/40/1d/63a729208e1e93cf2cbda953b9f20ec9b101eb964e3f6205d1c2e294f294/requests-0.14.1.tar.gz", + "hashes": { + "md5": "3de30600072cbc7214ae342d1d08aa46", + "sha256": "4f563b907782b2c95dd2cbaf882a96133e567d46290a0e7aafa0c6f3efad19ba" + } + }, + { + "filename": "requests-0.14.2.tar.gz", + "url": "https://files.pythonhosted.org/packages/fa/d1/0dd60e1146e79e7b193e7b0189d8c13ef100d55cbfe65e1825ac5f03c397/requests-0.14.2.tar.gz", + "hashes": { + "md5": "488508ba3e8270992ad5b3fb54d364ca", + "sha256": "0e3345a8ac0d712bf17bd9d3276415050c5f972265ab62993cd4540a3a1aaaef" + } + }, + { + "filename": "requests-0.2.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/ba/bb/dfa0141a32d773c47e4dede1a617c59a23b74dd302e449cf85413fc96bc4/requests-0.2.0.tar.gz", + "hashes": { + "md5": "637ae94cb6f2f1d9ea9020293055964a", + "sha256": "813202ace4d9301a3c00740c700e012fb9f3f8c73ddcfe02ab558a8df6f175fd" + } + }, + { + "filename": "requests-0.2.1.tar.gz", + "url": "https://files.pythonhosted.org/packages/4b/ad/d536b2e572e843fda13e4458c67f937b05ce359722c1e4cdad35ba05b6e3/requests-0.2.1.tar.gz", + "hashes": { + "md5": "7e9590f3985ece46fc8306e906b458c7", + "sha256": "d54eb33499f018fc6bd297613bf866f8d134629c8e02964aab6ef951f460e41e" + } + }, + { + "filename": "requests-0.2.2.tar.gz", + "url": "https://files.pythonhosted.org/packages/82/3c/3b5beca192da920c0c2ba67119d66ba1e4b1e766f40898e5e684d697ca1c/requests-0.2.2.tar.gz", + "hashes": { + "md5": "a703489b1a4a650698ddcf84857360c6", + "sha256": "b3289694b2ddf6adb4f7e1f470b9771330c76125611222b9c702f0e2e9733cbc" + } + }, + { + "filename": "requests-0.2.3.tar.gz", + "url": "https://files.pythonhosted.org/packages/6f/7e/5c2d7d9102c6ab847bd1215f96255e894fbfc81c8abf2c1714ae2a504913/requests-0.2.3.tar.gz", + "hashes": { + "md5": "102243646fc0cffdc82269f4bb5c6d5d", + "sha256": "8e374b75aaae7f85325e9bb126e96cb77a3bfc17e81ee74a0e96916aac1cc2ba" + } + }, + { + "filename": "requests-0.2.4.tar.gz", + "url": "https://files.pythonhosted.org/packages/dc/02/789859c27162bb91ecf6b72ed4ce1af3ed1710255265ad0901c4d4e25666/requests-0.2.4.tar.gz", + "hashes": { + "md5": "62dbe8cf12bc1ccd03776e74f59e9ef6", + "sha256": "ef1bd1a81022e9bf574ecfe69cbd8597e79371b890d29bd3847dd946102c8eed" + } + }, + { + "filename": "requests-0.3.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/96/2b/88e9d6bf2e9d75cda77bf4fdc03720f4ba262beb532f9510a4a7f3e45660/requests-0.3.0.tar.gz", + "hashes": { + "md5": "aa1306575a78ba8b5e625dd2645d2ef0", + "sha256": "57eed745eb2a2e3c7e1dd935ccd49eb2eac51cfcdace4a97fb44de5da70f0035" + } + }, + { + "filename": "requests-0.3.1.tar.gz", + "url": "https://files.pythonhosted.org/packages/5e/c0/76fac9445cd8b6394eacae1e098ca0c97767cc0112e45e68521f553df003/requests-0.3.1.tar.gz", + "hashes": { + "md5": "3f4701e2ab414cd7018804a70328c527", + "sha256": "05dddfd656d25b7738778d2b4e8fa72e53b5357a2f80a319e6e1fa59edb03339" + } + }, + { + "filename": "requests-0.3.2.tar.gz", + "url": "https://files.pythonhosted.org/packages/d5/f1/16b57088f11cd5c6c82834bad6475826309cee44edaae860e9f65c084703/requests-0.3.2.tar.gz", + "hashes": { + "md5": "bde777f4c5b7bbb09033901c443962b3", + "sha256": "78ecf812ee865b62be106100a3c6f24058c7901ad995351b8818f18ea97ce848" + } + }, + { + "filename": "requests-0.3.3.tar.gz", + "url": "https://files.pythonhosted.org/packages/f1/64/8a2ba81294381bb90e8fb4b6fa750e0dca3f2d19e8caaeeae5e7bb6b3753/requests-0.3.3.tar.gz", + "hashes": { + "md5": "84c762c116617ba4dd03c19e2b61eb53", + "sha256": "ccbbc41c4c009baecf41e993727048c65c440fefadb217b11e73f63cd0cae09a" + } + }, + { + "filename": "requests-0.3.4.tar.gz", + "url": "https://files.pythonhosted.org/packages/ed/1b/8682a0cfe92f67e30fb9ac7982cb785a1230ca4385dc1353513f5b87b9f4/requests-0.3.4.tar.gz", + "hashes": { + "md5": "55152cc2b135bc8989dc4fa279295f8b", + "sha256": "e72a42a0317f33114b48c972d3056bad3265b92450d4e0e51ad0b384e43bc6d9" + } + }, + { + "filename": "requests-0.4.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/56/c3/0887d5d6c18a366308b3dc7024210b4c89ff9ae92ae5fb87cf8fe58bcae2/requests-0.4.0.tar.gz", + "hashes": { + "md5": "77a7a7edd54169c6fa7ace49dcb0b20c", + "sha256": "35185852569456de25a654c5f9a43a1b8e4dc18a2a676985bbb9d5e7e5a9703e" + } + }, + { + "filename": "requests-0.4.1.tar.gz", + "url": "https://files.pythonhosted.org/packages/b3/54/dbc9b89a66a15ab9f3e2595de1b1ebd1da954efcb30a329c98710e014c05/requests-0.4.1.tar.gz", + "hashes": { + "md5": "812ff0ce63d14f7b940bacd880d54ee0", + "sha256": "f978616765803e9e0e9943136b34be0da69d74ba8fbd064cbfcf28f33ca54d8a" + } + }, + { + "filename": "requests-0.5.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/0c/4d/d67bd4e4b17148aad88e6d75c62763ec27363d18038ed75019239e1516d0/requests-0.5.0.tar.gz", + "hashes": { + "md5": "6dfdc1688217d774d524e056ec6605a6", + "sha256": "747c8c79e9c75ba8608c7628e39d533a0234ff78a80569e40ba64865abc0e521" + } + }, + { + "filename": "requests-0.5.1.tar.gz", + "url": "https://files.pythonhosted.org/packages/5f/1c/8d145fbdb23986063a8a0c954d484a793024137a99ac7f3da603717fe64a/requests-0.5.1.tar.gz", + "hashes": { + "md5": "33a6e65d6a4e5b2d91df76256f607b81", + "sha256": "cfed662472d48e7bd6bfd8d7f79fe9072fc873b2e372fe3b9178a26daabebccc" + } + }, + { + "filename": "requests-0.6.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/0b/b8/932de3bc1b8630357de85bc0c794ee1a7d343cb8008b470a0c9d15e84341/requests-0.6.0.tar.gz", + "hashes": { + "md5": "235e9fb6bfd71a48c0f00c0d5aef8896", + "sha256": "2c5036387b75dfb0ff3971604bd1e691cf6a55dc6c397df7adf9fc4804bc7f48" + } + }, + { + "filename": "requests-0.6.1.tar.gz", + "url": "https://files.pythonhosted.org/packages/a6/1f/f948fb7ba68b69b13a1fbbb70d7706e889c7b7d3e9867b498ca7971126db/requests-0.6.1.tar.gz", + "hashes": { + "md5": "07770334d48bd69ede1cc28cd0dd7680", + "sha256": "2656b23db25398e990e6f5d75dfbd960454a1fe573aeedc651773ddd2a8a3bbc" + } + }, + { + "filename": "requests-0.6.2.tar.gz", + "url": "https://files.pythonhosted.org/packages/55/19/986305b95fae17c58c95e191943a282bce19f82535af4530890c483937ad/requests-0.6.2.tar.gz", + "hashes": { + "md5": "0583bb5393b9cfcb022dc2aef7d6ffc8", + "sha256": "b5419f909fc21b8eb037dc4bade29530c28993610b68213b7f7633bf10bcabbc" + } + }, + { + "filename": "requests-0.6.3.tar.gz", + "url": "https://files.pythonhosted.org/packages/e1/3f/9235f98536b1393ef8a8e2dbd27273588fc3246000b93b0d763325b2e30c/requests-0.6.3.tar.gz", + "hashes": { + "md5": "35a954ae85b358e498fb0e602f1dce9d", + "sha256": "bde3e2ea45f6e47acd24ff55628fc7325cacd75746ee2d2b63c093554131fe41" + } + }, + { + "filename": "requests-0.6.4.tar.gz", + "url": "https://files.pythonhosted.org/packages/97/e0/a2bc7317b13caf227a75c8151b562b62a2e9f5d4ab4ad59694bfdbf5c35c/requests-0.6.4.tar.gz", + "hashes": { + "md5": "e0eec314178ad9a7bb14f2ec32f35ba3", + "sha256": "151f105506913a6b84f6119400ca94732ec39f5b4e0991ca2fc840ddb4e37816" + } + }, + { + "filename": "requests-0.6.5.tar.gz", + "url": "https://files.pythonhosted.org/packages/a8/a6/38b9de830719e4cd62ddf51f240654200658d0315aa9e908eda90ee64879/requests-0.6.5.tar.gz", + "hashes": { + "md5": "52f8bc956e027c8a0eb2684f6928169d", + "sha256": "bb332c171913c2f57cea805d013601af86a46b9aef9b7ef76bdcbed14f939bd7" + } + }, + { + "filename": "requests-0.6.6.tar.gz", + "url": "https://files.pythonhosted.org/packages/df/8d/4b1bb15e8814fefa2cdf8f971a479b459d07f8176094bd59742720f31270/requests-0.6.6.tar.gz", + "hashes": { + "md5": "2180dacebc0e30ba730d083739907af6", + "sha256": "6670aee5fe3bb545e1f7e8bb073a06be65344b467cd698b0ad58e7d7792dc2bb" + } + }, + { + "filename": "requests-0.7.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/5c/8c/0399c9554b04b2b267d81239773657ddc720799a08565b6c21f7aed652df/requests-0.7.0.tar.gz", + "hashes": { + "md5": "83a1a7d79218756efd19b254eeb6b1f0", + "sha256": "13570c41a218affafe3f3e01db16d1f6cd238d3bd7a1d52cc435bf9de3df099a" + } + }, + { + "filename": "requests-0.7.1.tar.gz", + "url": "https://files.pythonhosted.org/packages/00/c8/8cf0f078100ce5fe7ff35927d8861e2e36daed9be2db56690f3ad80ccec4/requests-0.7.1.tar.gz", + "hashes": { + "md5": "4821c6902d8e83c910c69c6492388e5f", + "sha256": "6795818f5f46d7ecf53965d96e2ceae66bf652c79703292973b7c56afb88b946" + } + }, + { + "filename": "requests-0.7.2.tar.gz", + "url": "https://files.pythonhosted.org/packages/7c/af/b46199ae37c032801bcdc5dbb1c82a59613883ee690ff4fd2b5dc3140130/requests-0.7.2.tar.gz", + "hashes": { + "md5": "03eb97ed6aacb4102fd434bbfc13ce17", + "sha256": "7e58616c2c943116c7fb7595ebc3b00c5016ede5e6b14cf4bd72a812a5534aef" + } + }, + { + "filename": "requests-0.7.3.tar.gz", + "url": "https://files.pythonhosted.org/packages/3d/54/c4a7dcfccac9e6dd738e9ed86848a9a5b07a4345e5949f8795cfdc0ea95f/requests-0.7.3.tar.gz", + "hashes": { + "md5": "267f6f7d1109775d24a288f798e3ab4a", + "sha256": "2e7a0cb6251da5dd8c185f5d404e110d29e47afec7c8e60d78806436360a40d7" + } + }, + { + "filename": "requests-0.7.4.tar.gz", + "url": "https://files.pythonhosted.org/packages/64/50/219c9ff86e6fecfb89bdfe1093aea523f14882657186f806462887220267/requests-0.7.4.tar.gz", + "hashes": { + "md5": "c015765399b8c1e309c84ade0d38f07b", + "sha256": "3101a857831c6b6ec1f88ccebc8a19d38af6a10372537f437cd978c5775b4286" + } + }, + { + "filename": "requests-0.7.5.tar.gz", + "url": "https://files.pythonhosted.org/packages/2b/9e/1be659005a6bb394b02e12804fcaf8cd85050958a459945708b21e362b32/requests-0.7.5.tar.gz", + "hashes": { + "md5": "9a12281a811ca25d347d806c456d96f1", + "sha256": "ae10f2c5d112768a2e62282dd6b33db230c10ef7a2c3b1cf404806598bacd0b6" + } + }, + { + "filename": "requests-0.7.6.tar.gz", + "url": "https://files.pythonhosted.org/packages/de/f0/8fc024ef4f25ef5690c2121215029f88e1895b60c867c1a39134045b181e/requests-0.7.6.tar.gz", + "hashes": { + "md5": "728b21bf3914d69a4ff1012c66d9b6ba", + "sha256": "667f9c9cc447c9ee09d34d891db488f2695c99d025fae3ec8d02e235eb7eba95" + } + }, + { + "filename": "requests-0.8.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/6a/85/32d23f3dbc43e54631bb9bd76d34c2448cc2f2f0de29babfb1a6a79b4d60/requests-0.8.0.tar.gz", + "hashes": { + "md5": "64dc0095cb645aa7f0083957950d524d", + "sha256": "62b557533f685c4a0af4e38dddc598c38f5ce0bd8e3b15b20809d1606f3843dd" + } + }, + { + "filename": "requests-0.8.1.tar.gz", + "url": "https://files.pythonhosted.org/packages/ae/fb/b1d6916b5278c44a1a2beb919d7ab96327051c3d47db9d6ee6978743444e/requests-0.8.1.tar.gz", + "hashes": { + "md5": "6135f837fbd113fc62904c60dcc5c70d", + "sha256": "23756d85cbf7dec36dd624853e76b380c2b538c21769adba1dcced9de0409f68" + } + }, + { + "filename": "requests-0.8.2.tar.gz", + "url": "https://files.pythonhosted.org/packages/65/5d/e69bad1f71d5284113165738d563a997d0d1ac968f939d1375f3df7c59fc/requests-0.8.2.tar.gz", + "hashes": { + "md5": "bdbbd7f45688e23e87eec52835959943", + "sha256": "826244e9612aa9a548d1289bef7bbce07eee4872ca21ca80631094d1c512b121" + } + }, + { + "filename": "requests-0.8.3.tar.gz", + "url": "https://files.pythonhosted.org/packages/f8/17/42ab05005c88e8d301fe0ee9b24e34139422268d0d7b8b11f98107c2a794/requests-0.8.3.tar.gz", + "hashes": { + "md5": "93e4cd27ab646fb613a926fede1cc4f5", + "sha256": "7277ec1fc8b8251bc1ce628651cbfad886704a77aea9f6203dcc042a4f12d214" + } + }, + { + "filename": "requests-0.8.4.tar.gz", + "url": "https://files.pythonhosted.org/packages/aa/a7/ec41790a8fb50f8d359568f82cd37a994af5d0159cccb543d147a7eea751/requests-0.8.4.tar.gz", + "hashes": { + "md5": "642e5c70250989e4feda9c50be57b100", + "sha256": "3ef7efbe083bcb6f7b1144c7665b5b1f6bd4fc7043dc50ccd564edf62b814c2b" + } + }, + { + "filename": "requests-0.8.5.tar.gz", + "url": "https://files.pythonhosted.org/packages/fc/f8/329450760dddd7e437eef0cd16a8d48582405e72495cf79a77a82e2f0047/requests-0.8.5.tar.gz", + "hashes": { + "md5": "5f2975ee9e57f4ea000e5a3f50fc85d1", + "sha256": "1db43116f612b016169d9a994d16aea9c166c55355bac2e05fae75e0ff610f4c" + } + }, + { + "filename": "requests-0.8.6.tar.gz", + "url": "https://files.pythonhosted.org/packages/4e/9b/a78a3bb2913576fad3ec6f18b8d26dd9579268f6b2191d73f4ec40e09490/requests-0.8.6.tar.gz", + "hashes": { + "md5": "21b03926ab38417a704ebce57972571a", + "sha256": "b9ad56ff5971b7a4005598e5a9588584ee1153fbf027ed76a7d13585f71489f7" + } + }, + { + "filename": "requests-0.8.7.tar.gz", + "url": "https://files.pythonhosted.org/packages/a7/83/bb447075090f4a3a60082765051d476b62f375d0f8174ebe9545d4bb8938/requests-0.8.7.tar.gz", + "hashes": { + "md5": "e4d4ee3a90396908bd04b50bf2136617", + "sha256": "2c5b08f7afe8d5ffc1c4f7819e74d5309a52b2f2eb1d78cc144cb57aa10380fe" + } + }, + { + "filename": "requests-0.8.8.tar.gz", + "url": "https://files.pythonhosted.org/packages/b7/1d/5c7973ca22bc95d53eba28a7dab7088f1ded7db0d174ea467afaaf898dfc/requests-0.8.8.tar.gz", + "hashes": { + "md5": "bfb182cfd3ed839b97744c553b87f502", + "sha256": "70352c48f106fe4a15537bdb4a029ebbb80c1ae1b6836a9033f2b3d7e52e01fd" + } + }, + { + "filename": "requests-0.8.9.tar.gz", + "url": "https://files.pythonhosted.org/packages/3a/72/9f39b173ee93645013563df119d28841f47b0ca2ebe04afcefd438e42f30/requests-0.8.9.tar.gz", + "hashes": { + "md5": "ff5b3bf5bc3ad19930d3f3afe51f182b", + "sha256": "870780642a14f5e30a9ef8c419aeb405e5bd4340d4fefbf1e8493dde39225337" + } + }, + { + "filename": "requests-0.9.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/89/ce/0115444a1f9d833768160e678c21483e271466918966c11212f040b5f2af/requests-0.9.0.tar.gz", + "hashes": { + "md5": "5f6f03ec76f68a7a3f35120ab5a6c589", + "sha256": "43b26edb5c47e0ccf9612d3cf13639a1e7e6c774af5375a684cfa00e747f21b1" + } + }, + { + "filename": "requests-0.9.1.tar.gz", + "url": "https://files.pythonhosted.org/packages/48/aa/1077a5fef0c4fbdad8ce127166ca474c67788b7609137d26e17ab46ee16d/requests-0.9.1.tar.gz", + "hashes": { + "md5": "8ed4667edb5d57945b74a9137adbb8bd", + "sha256": "0c6fc89ce4f8976dd8ddb1a9e896315a47fb3f1dba95417fd3fa8e626ca9a1e7" + } + }, + { + "filename": "requests-0.9.2.tar.gz", + "url": "https://files.pythonhosted.org/packages/68/a1/fac8e1fa783d167cc49debc5b5328ca57eac9d53b58c34d17ce7592cdc6d/requests-0.9.2.tar.gz", + "hashes": { + "md5": "65b36d99a4d2f78a22f08c95d2475e33", + "sha256": "eb9a3b0031af396fb6825be897655546f4c54e19669fddb5df72a4a688ae0555" + } + }, + { + "filename": "requests-0.9.3.tar.gz", + "url": "https://files.pythonhosted.org/packages/62/12/0840d1bba04e5d60e469610ad78e02e89e6828e776adaef4116413cf5fd0/requests-0.9.3.tar.gz", + "hashes": { + "md5": "b13b6fbfa8fc3fc3c25bae300748053f", + "sha256": "3c0dd7c014474e0cdd00cad661abd74c88c14183d260d0555dfa51fc5b29abc5" + } + }, + { + "filename": "requests-1.0.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/46/da/94c0fd6ff79b85befc3b528cf3771700def274c52b347bf12eeaa466f34c/requests-1.0.0.tar.gz", + "hashes": { + "md5": "099c9035c4b30a7ae5484b1beabc7407", + "sha256": "f10d8fbcc02a58056ab44f79ff9b3f9fe78e410296527885250bbb36d15be8c6" + } + }, + { + "filename": "requests-1.0.1.tar.gz", + "url": "https://files.pythonhosted.org/packages/b8/03/fb15922d14fa0b01a0ff4e2920bb8c08546d970ff387454ba892a67d5243/requests-1.0.1.tar.gz", + "hashes": { + "md5": "2e938f26f2bdf2899862c751bfa7eff5", + "sha256": "c69222b7c02a8e46d61c3b986e6a3e766db0539235aaafc056c75b8dcf6f5eec" + } + }, + { + "filename": "requests-1.0.2.tar.gz", + "url": "https://files.pythonhosted.org/packages/32/35/f2908b62b155b1737ab80b1a69142d007522bb0d1b3a0d3f8909595762f5/requests-1.0.2.tar.gz", + "hashes": { + "md5": "e5c1a5a5472cd61f144743dd25a2a29f", + "sha256": "3c81f3ae43916161b8d98d7b329b19533b0d0332b7a774794964e6b08760b0c7" + } + }, + { + "filename": "requests-1.0.3.tar.gz", + "url": "https://files.pythonhosted.org/packages/7f/76/66c01dd9afe4c5062e0c838bbd98ead7fa6b52984c7e26100a42c3eb965a/requests-1.0.3.tar.gz", + "hashes": { + "md5": "a3169a33973d4b5b51843ead01c5e999", + "sha256": "c7b50dc01b751e5ef8785951a74d0c2373bb0f87b45dca75dc2c5477b7e30f44" + } + }, + { + "filename": "requests-1.0.4.tar.gz", + "url": "https://files.pythonhosted.org/packages/5d/e8/f27e0868b9a49946b3f800722e02b19efebde22ae534276df3e5f6cca41d/requests-1.0.4.tar.gz", + "hashes": { + "md5": "0b7448f9e1a077a7218720575003a1b6", + "sha256": "f363690a47dd4d6d6e7605fc686b668097a114cd946dffdf21fe0c6a6a46f9e6" + } + }, + { + "filename": "requests-1.1.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/e8/ff/d19b7461d84a5804c5cdc29791305530a2b774fe928b497e74ac9b304c79/requests-1.1.0.tar.gz", + "hashes": { + "md5": "a0158815af244c32041a3147ee09abf3", + "sha256": "21a81ddf1a3c2f956524538966ae19c38cae251f5629821588cdc8246a1335f7" + } + }, + { + "filename": "requests-1.2.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/37/e4/74cb55b3da7777a1dc7cd7985c3cb12e83e213c03b0f9ca20d2c0e92b3c3/requests-1.2.0.tar.gz", + "hashes": { + "md5": "22af2682233770e5468a986f451c51c0", + "sha256": "cfa615644ae38efe8423ce9edb23470a4615a9147fa3cea5026afb47c9bb3913" + } + }, + { + "filename": "requests-1.2.1.tar.gz", + "url": "https://files.pythonhosted.org/packages/3b/9e/bfa03431335e778854da3d562697e067df40870a78ca81b35089822c6583/requests-1.2.1.tar.gz", + "hashes": { + "md5": "4d019670b94b17e329007d64e67e045e", + "sha256": "946b7c856aa62f4ad31de2b9bb501cfdcdb4afdc882ee76bd4664f57caefaa44" + } + }, + { + "filename": "requests-1.2.2.tar.gz", + "url": "https://files.pythonhosted.org/packages/c0/44/84a4b7a4e9d5fd1b358dbabd03f17e3dd91ce8881fc3446fbd2fd996be88/requests-1.2.2.tar.gz", + "hashes": { + "md5": "1f655ab7f2aa7447a1657ed69786f436", + "sha256": "56929d7b5dec9b37a9a8520f15202bada0ad55d2888a7c3243b9b194f2ef603d" + } + }, + { + "filename": "requests-1.2.3.tar.gz", + "url": "https://files.pythonhosted.org/packages/61/79/efc316760a906763de872d7328c9bf8c5af28708a35fdae57fbb4ee005f7/requests-1.2.3.tar.gz", + "hashes": { + "md5": "adbd3f18445f7fe5e77f65c502e264fb", + "sha256": "156bf3ec27ba9ec7e0cf8fbe02808718099d218de403eb64a714d73ba1a29ab1" + } + }, + { + "filename": "requests-2.0.0-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/bf/78/be2b4c440ea767336d8448fe671fe1d78ca499e49d77dac90f92191cca0e/requests-2.0.0-py2.py3-none-any.whl", + "hashes": { + "md5": "6af9c16dbddd2fc751ae4f1606d041e8", + "sha256": "2ef65639cb9600443f85451df487818c31f993ab288f313d29cc9db4f3cbe6ed" + } + }, + { + "filename": "requests-2.0.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/8e/88/102742c48605aef8d39fa719d932c67783d789679628fa1433cb4b2c7a2a/requests-2.0.0.tar.gz", + "hashes": { + "md5": "856fc825c17483e25fd55db115028e3f", + "sha256": "78536038f54cff6ade3be6863403146665b5a3923dd61108c98d8b64141f9d70" + } + }, + { + "filename": "requests-2.0.1-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/8f/ea/140f18072bbcd81885a9490abb171792fd2961fd7f366be58396f4c6d634/requests-2.0.1-py2.py3-none-any.whl", + "hashes": { + "md5": "d524f9a38a29efe1732fd130e5ebe433", + "sha256": "f4ebc402e0ea5a87a3d42e300b76c292612d8467024f45f9858a8768f9fb6f6e" + } + }, + { + "filename": "requests-2.0.1.tar.gz", + "url": "https://files.pythonhosted.org/packages/1c/8e/376c93bb72bdae6a754797b8e31370df1e996e8b7dcc928e66691dbf611a/requests-2.0.1.tar.gz", + "hashes": { + "md5": "38e61c2856d2ba2782286730241975e6", + "sha256": "8cfddb97667c2a9edaf28b506d2479f1b8dc0631cbdcd0ea8c8864def59c698b" + } + }, + { + "filename": "requests-2.1.0-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/1e/97/f0a8e5e71c75a2abf5ec91438b84ec1a40a5e1b5f985c06721a3ebe57c0a/requests-2.1.0-py2.py3-none-any.whl", + "hashes": { + "md5": "0848cbc0cc7edd150cb8d6ddc25ca906", + "sha256": "fcef306d62b1c061eb00b8402cf136ff0ea1daf7a53b60cdef9563a22850072c" + } + }, + { + "filename": "requests-2.1.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/51/5d/3729c242ed7693f29941fd9d40e936d4994b0aa704dfd0c023312fcce8a3/requests-2.1.0.tar.gz", + "hashes": { + "md5": "28543001831f46b1ff40686ebc027deb", + "sha256": "a57307f3a5f35ec9e1254aaf3e0484063ee3ee6b5f123fb35c5b2673492efa71" + } + }, + { + "filename": "requests-2.10.0-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/99/b4/63d99ba8e189c47d906b43bae18af4396e336f2b1bfec86af31efe2d2cb8/requests-2.10.0-py2.py3-none-any.whl", + "hashes": { + "md5": "abf5a77de3e8a5973c738cca884502a0", + "sha256": "09bc1b5f3a56cd8c48d433213a8cba51a67d12936568f73b5f1793fcb0c0979e" + } + }, + { + "filename": "requests-2.10.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/49/6f/183063f01aae1e025cf0130772b55848750a2f3a89bfa11b385b35d7329d/requests-2.10.0.tar.gz", + "hashes": { + "md5": "a36f7a64600f1bfec4d55ae021d232ae", + "sha256": "63f1815788157130cee16a933b2ee184038e975f0017306d723ac326b5525b54" + } + }, + { + "filename": "requests-2.11.0-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/f8/90/42d5e0d9b5c4c3629a3d99823bbc3748fb85616f0f7a45e79ba7908d4642/requests-2.11.0-py2.py3-none-any.whl", + "hashes": { + "md5": "369b7333bf2f710143a1b6678f2f214c", + "sha256": "8b9b147f3dff1fc4055ff794ff931f735ed25e87efe667ed7c845a4bafae9b73" + } + }, + { + "filename": "requests-2.11.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/8d/66/649f861f980c0a168dd4cccc4dd0ed8fa5bd6c1bed3bea9a286434632771/requests-2.11.0.tar.gz", + "hashes": { + "md5": "147afc07d8967cf46359701551a6cb69", + "sha256": "b2ff053e93ef11ea08b0e596a1618487c4e4c5f1006d7a1706e3671c57dea385" + } + }, + { + "filename": "requests-2.11.1-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/ea/03/92d3278bf8287c5caa07dbd9ea139027d5a3592b0f4d14abf072f890fab2/requests-2.11.1-py2.py3-none-any.whl", + "hashes": { + "md5": "b4269c6fb64b9361288620ba028fd385", + "sha256": "545c4855cd9d7c12671444326337013766f4eea6068c3f0307fb2dc2696d580e" + } + }, + { + "filename": "requests-2.11.1.tar.gz", + "url": "https://files.pythonhosted.org/packages/2e/ad/e627446492cc374c284e82381215dcd9a0a87c4f6e90e9789afefe6da0ad/requests-2.11.1.tar.gz", + "hashes": { + "md5": "ad5f9c47b5c5dfdb28363ad7546b0763", + "sha256": "5acf980358283faba0b897c73959cecf8b841205bb4b2ad3ef545f46eae1a133" + } + }, + { + "filename": "requests-2.12.0-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/00/93/9c5c04821578c2ee11af83189c5cbd8338724b5e04e1de5dc3643bbc5bbf/requests-2.12.0-py2.py3-none-any.whl", + "hashes": { + "md5": "018b0e512fc0c0c3f30c7fa3c376bb7a", + "sha256": "a7d8f8f46603b78f03a925227f33988276fbe6c1f3c8cb20174ba9bfc5114c4d" + } + }, + { + "filename": "requests-2.12.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/6a/97/7b856a8c8a0efebebb0bbba70c7ee879ee3f9654f28928665b64026ef09a/requests-2.12.0.tar.gz", + "hashes": { + "md5": "d0d3e5fb81c6b4d87c08ed5cad677337", + "sha256": "57b6c314a2c5f014dce634a0e1eeeb1707741b2e30bc7fee9c5b01fa216d57a3" + } + }, + { + "filename": "requests-2.12.1-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/9b/31/e9925a2b9a06f97c3450bac6107928d3533bfe64ca5615442504104321e8/requests-2.12.1-py2.py3-none-any.whl", + "hashes": { + "md5": "384ec19e410ffeb43951782c11d3223b", + "sha256": "3f3f27a9d0f9092935efc78054ef324eb9f8166718270aefe036dfa1e4f68e1e" + } + }, + { + "filename": "requests-2.12.1.tar.gz", + "url": "https://files.pythonhosted.org/packages/6e/40/7434b2d9fe24107ada25ec90a1fc646e97f346130a2c51aa6a2b1aba28de/requests-2.12.1.tar.gz", + "hashes": { + "md5": "8c8ff05ea401ea22718038c3a416ea50", + "sha256": "2109ecea94df90980be040490ff1d879971b024861539abb00054062388b612e" + } + }, + { + "filename": "requests-2.12.2-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/59/dc/54d39bef11678853ca78fc6167cc1b57becf491548942246dd2226bf2bd2/requests-2.12.2-py2.py3-none-any.whl", + "hashes": { + "md5": "8c58fa0a054badea1cfbfa54a23299d2", + "sha256": "e5a102790b234bde8f949090e50e294490c2be0d81e3d55530fd91f3b5eded63" + } + }, + { + "filename": "requests-2.12.2.tar.gz", + "url": "https://files.pythonhosted.org/packages/18/87/3c46a06df7b29cd3ab51f055cae2a954758ee3dcbd075d7f4c9a4e8aafbc/requests-2.12.2.tar.gz", + "hashes": { + "md5": "1ec26adca0265ead9afd42919867c370", + "sha256": "09dadb7c5c4210ebbc7f1b14a351a754f1191bd7cd5a5b60ee1929b8c7dcbbe6" + } + }, + { + "filename": "requests-2.12.3-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/84/68/f0acceafe80354aa9ff4ae49de0572d27929b6d262f0c55196424eb86b2f/requests-2.12.3-py2.py3-none-any.whl", + "hashes": { + "md5": "9b4e857c4a27a9c282cb1abb53ebaba2", + "sha256": "d92ed9912bab3f5e52d8e231be82c106650f648185e952f83c44ab4f2be55c0c" + } + }, + { + "filename": "requests-2.12.3.tar.gz", + "url": "https://files.pythonhosted.org/packages/d9/03/155b3e67fe35fe5b6f4227a8d9e96a14fda828b18199800d161bcefc1359/requests-2.12.3.tar.gz", + "hashes": { + "md5": "0cafdecd95a46b081dd5fcfa4978db7a", + "sha256": "de5d266953875e9647e37ef7bfe6ef1a46ff8ddfe61b5b3652edf7ea717ee2b2" + } + }, + { + "filename": "requests-2.12.4-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/ed/9e/60cc074968c095f728f0d8d28370e8d396fa60afb7582735563cccf223dd/requests-2.12.4-py2.py3-none-any.whl", + "hashes": { + "md5": "3989eaeaa2ccad20470afc61710d3498", + "sha256": "000748df49e087784441b2621c50fb81046c5c8e80e0d91674ffad65b9e13844" + } + }, + { + "filename": "requests-2.12.4.tar.gz", + "url": "https://files.pythonhosted.org/packages/5b/0b/34be574b1ec997247796e5d516f3a6b6509c4e064f2885a96ed885ce7579/requests-2.12.4.tar.gz", + "hashes": { + "md5": "acdb48888a9d3c7309da12fc7f83fedb", + "sha256": "ed98431a0631e309bb4b63c81d561c1654822cb103de1ac7b47e45c26be7ae34" + } + }, + { + "filename": "requests-2.12.5-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/bf/99/af6139323bac0ca0c6023eabbdc526579525f5584278d001dd2e169f8300/requests-2.12.5-py2.py3-none-any.whl", + "hashes": { + "md5": "eeb46098018d358d86c45131a8342060", + "sha256": "d57dae49f4267e8cb378aff9e426c9304a78794d03e945e39bfc607355715658" + } + }, + { + "filename": "requests-2.12.5.tar.gz", + "url": "https://files.pythonhosted.org/packages/b6/61/7b374462d5b6b1d824977182db287758d549d8680444bad8d530195acba2/requests-2.12.5.tar.gz", + "hashes": { + "md5": "360bb3af97881a7056ed5bb3d0a3e8a3", + "sha256": "d902a54f08d086a7cc6e58c20e2bb225b1ae82c19c35e5925269ee94fb9fce00" + } + }, + { + "filename": "requests-2.13.0-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/7e/ac/a80ed043485a3764053f59ca92f809cc8a18344692817152b0e8bd3ca891/requests-2.13.0-py2.py3-none-any.whl", + "hashes": { + "md5": "5e432dcf5bd1e3402ea1656700d99365", + "sha256": "1a720e8862a41aa22e339373b526f508ef0c8988baf48b84d3fc891a8e237efb" + } + }, + { + "filename": "requests-2.13.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/16/09/37b69de7c924d318e51ece1c4ceb679bf93be9d05973bb30c35babd596e2/requests-2.13.0.tar.gz", + "hashes": { + "md5": "921ec6b48f2ddafc8bb6160957baf444", + "sha256": "5722cd09762faa01276230270ff16af7acf7c5c45d623868d9ba116f15791ce8" + } + }, + { + "filename": "requests-2.14.0-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/1b/d3/f2541f2965e78f139bff9f001594d41ed90f4b2ce4b61bca387e60c1d3b4/requests-2.14.0-py2.py3-none-any.whl", + "hashes": { + "md5": "09e9f0852d50bee105ca859095298923", + "sha256": "a90555c0be723f5c711de36f256b21a65fc599602274fb3d5c4f83ac23aae3c5" + } + }, + { + "filename": "requests-2.14.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/0b/ac/ffd3674211bc47ae3bf55c7cd4a8fe484b7289af2ffd9cfed5683708690a/requests-2.14.0.tar.gz", + "hashes": { + "md5": "09c5b60caced97cbe69064d486d6db53", + "sha256": "8c4f778459cb4a6bad7ceff4aa65a75697db28c21a6b41ea9a6c371df2a822c2" + } + }, + { + "filename": "requests-2.14.1-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/74/ac/789eb98e0f5431d6d1ce36549ead88b2ab3154260f37c7dac9a34fd170b1/requests-2.14.1-py2.py3-none-any.whl", + "hashes": { + "md5": "81754d76f9a71a2d25f8c413fcf86e2c", + "sha256": "c5a42004b9cd384e5ad0f868b1cc968a3c2bb0276dccc12e4bdc7330591b5f51" + } + }, + { + "filename": "requests-2.14.1.tar.gz", + "url": "https://files.pythonhosted.org/packages/8c/ff/78297074b9b4cf102f9bbd71b62508965dd5c1876e016ef131e5b15c16a4/requests-2.14.1.tar.gz", + "hashes": { + "md5": "e985e49070df0024777a55fd59ceef46", + "sha256": "b3b191d677e526c1e512db86bc7387ccb8356e8826bcc7faa07f78f09afe68dd" + } + }, + { + "filename": "requests-2.14.2-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/e4/b0/286e8a936158e5cc5791d5fa3bc4b1d5a7e1ff4e5b3f3766b63d8e97708a/requests-2.14.2-py2.py3-none-any.whl", + "hashes": { + "md5": "a1b2f02e7ba45dff7c76f621cde042c4", + "sha256": "3b39cde35be51762885631cf586f4dc2284951b44d479a4454020758d767cc2f" + } + }, + { + "filename": "requests-2.14.2.tar.gz", + "url": "https://files.pythonhosted.org/packages/72/46/4abc3f5aaf7bf16a52206bb0c68677a26c216c1e6625c78c5aef695b5359/requests-2.14.2.tar.gz", + "hashes": { + "md5": "4c3c169ed67466088a2a6947784fe444", + "sha256": "a274abba399a23e8713ffd2b5706535ae280ebe2b8069ee6a941cb089440d153" + } + }, + { + "filename": "requests-2.15.1-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/fa/a5/e04c4607dc96e3e6b22dfa13ba8776c64bb65cb97ab90f05a3ee14096a0a/requests-2.15.1-py2.py3-none-any.whl", + "hashes": { + "md5": "bdf7767141594c4a927188f60665705a", + "sha256": "ff753b2196cd18b1bbeddc9dcd5c864056599f7a7d9a4fb5677e723efa2b7fb9" + } + }, + { + "filename": "requests-2.15.1.tar.gz", + "url": "https://files.pythonhosted.org/packages/6d/ed/3adebdc29ca33f11bca00c38c72125cd4a51091e13685375ba4426fb59dc/requests-2.15.1.tar.gz", + "hashes": { + "md5": "1bcf7a286fa26e40a5a397f06ece00e4", + "sha256": "e5659b9315a0610505e050bb7190bf6fa2ccee1ac295f2b760ef9d8a03ebbb2e" + } + }, + { + "filename": "requests-2.16.0-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/35/b8/8ff3310309beb5fbca033b56504f869b0c65c1f284ae2a7900593b5acd3c/requests-2.16.0-py2.py3-none-any.whl", + "hashes": { + "md5": "f219013c8cacaaae7534ce2373cbeadc", + "sha256": "012cddec41f96a1ce4bab4b0a0ed40263ae6b2b03aa4bc4711e00418e7f3157c" + } + }, + { + "filename": "requests-2.16.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/26/e7/4f1ec439ecbcfe3989bb79a9c323d2482e7beea3d8d453e07443302648ec/requests-2.16.0.tar.gz", + "hashes": { + "md5": "5ca9eafc020445c86efc0be1f28f602e", + "sha256": "88eee720e83bc1dcb009ad5e2a8f1d41e903892121ec2a36eba7bf5a2d3ac2a0" + } + }, + { + "filename": "requests-2.16.1-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/c7/5d/7711f9fc9b028dc7572f84589e206220f0072e29fd9c7ae3507e7d17d8a6/requests-2.16.1-py2.py3-none-any.whl", + "hashes": { + "md5": "0a825bf34bf2cd89b13a04a3a7800e61", + "sha256": "b81b3651a206f02709e374c52071b4ac9bdf463c193701a560ce8e25c9ecc80b" + } + }, + { + "filename": "requests-2.16.1.tar.gz", + "url": "https://files.pythonhosted.org/packages/4c/54/1d3abddbd4c7544138b88e8329ef5294ffdc6c5d7ea965bf42e3cc4c9c39/requests-2.16.1.tar.gz", + "hashes": { + "md5": "4acb351824461eb3ae1f74ec3a65ff28", + "sha256": "14d663571c66410a7c3634f4cb9040b16a1c083078e37a0f8cc3710eae63411e" + } + }, + { + "filename": "requests-2.16.2-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/67/91/b3893b0db7c645b9f92aa827ce3db630eef2dd3a2ad3109c2a28cdc9e6b7/requests-2.16.2-py2.py3-none-any.whl", + "hashes": { + "md5": "cc40805ee6f06d148aaa5e76d3e24a07", + "sha256": "afebb4fcabd66ba6e3188fd31f09915f5afd213b204014ea02448011eca1e49a" + } + }, + { + "filename": "requests-2.16.2.tar.gz", + "url": "https://files.pythonhosted.org/packages/3c/69/d49fd9a7be23c55278c92e60af6d57336c463d8593afe7260a1665346965/requests-2.16.2.tar.gz", + "hashes": { + "md5": "e5425e53aa95e27a9a8267a097feafdc", + "sha256": "a2956efcf8dd2d526286431fdb0ec78eff25ab8db8a03c4f9d66f5fe6024f168" + } + }, + { + "filename": "requests-2.16.3-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/76/b6/e3035b7baa98e20d248fe17af2097b882ec7724d9a8ee7ae195ad7110f82/requests-2.16.3-py2.py3-none-any.whl", + "hashes": { + "md5": "0db7fa396a581c66ca4c1b8d02ce1bd4", + "sha256": "bcdc06ebfc25f2a198274ae4710c3217fb968c5f9468dc410cd603a59c47bff2" + } + }, + { + "filename": "requests-2.16.3.tar.gz", + "url": "https://files.pythonhosted.org/packages/07/db/3ed266e9cd3e3f69af3af38f56a0b4e21dadf3065521b2860030889284d7/requests-2.16.3.tar.gz", + "hashes": { + "md5": "c9816b77406fd9f8e9b80ec8a560d4d8", + "sha256": "7fda55400281de8fba713dd120b4614eabc10c0b096c22bfc88ccc671227c3d4" + } + }, + { + "filename": "requests-2.16.4-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/13/52/41fb28aa332ed68cd616cd1fc44d9e9c4bb85aa60c28d275f8857da561e5/requests-2.16.4-py2.py3-none-any.whl", + "hashes": { + "md5": "d1a5f370e6c5236f898f27aa40a84358", + "sha256": "784213e164287b403497195cf7f45071ae5eec60ae260cbc9a26368a91445f57" + } + }, + { + "filename": "requests-2.16.4.tar.gz", + "url": "https://files.pythonhosted.org/packages/47/68/4fe8c7e9e95133d15e342b1403a1751909cddb814a5a9cced2ba4c63487d/requests-2.16.4.tar.gz", + "hashes": { + "md5": "badefd50cfc5bc36926a2693e792d277", + "sha256": "14db43bfaa61fd3102eecaf447a593e0650ba0dc261c72597109a973c23091ab" + } + }, + { + "filename": "requests-2.16.5-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/65/9c/57484d6ac262af20a10b52cd95ebc99843f282342ef008997ef60f9eeb9c/requests-2.16.5-py2.py3-none-any.whl", + "hashes": { + "md5": "d10cd92d383805c5cc5a0683cf231e55", + "sha256": "3a27020d547958f5270fd5e9d62250119ee7db7454644599b65fda20cb542ded" + } + }, + { + "filename": "requests-2.16.5.tar.gz", + "url": "https://files.pythonhosted.org/packages/de/4c/7c36954d002030c82df31d000338d40fd91b4a993941a8f3c2dbe523c749/requests-2.16.5.tar.gz", + "hashes": { + "md5": "cca4f82209373759f5799fc0df6aca23", + "sha256": "f717303ebff661099cc5b73ce723ae1246f19ac39faa4c8005be56744d1a1006" + } + }, + { + "filename": "requests-2.17.0-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/5b/b6/9a18db79553524246aa1b081829e6f977667ec558cef684988895c1092d9/requests-2.17.0-py2.py3-none-any.whl", + "hashes": { + "md5": "6856177470710847da6eb8c5ffb94ed6", + "sha256": "73b4088c05f7fb5ca8e68651ed802df3ca40621281acf74bb321b4a8408aab7e" + } + }, + { + "filename": "requests-2.17.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/7c/84/617aaa311f6504489459c016daff4c66df6bbd54ee35b4cbed3e994f322d/requests-2.17.0.tar.gz", + "hashes": { + "md5": "60e16f82a83d02ba30f9139310bf5301", + "sha256": "eff227db5864238d44270cbadc8ac4133e69b69a2e7092b7b316ed1e4761cbd6" + } + }, + { + "filename": "requests-2.17.1-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/50/41/f6fdaf24a80c726a72f76b15869a20734b7a527081129a380ddce99ffae0/requests-2.17.1-py2.py3-none-any.whl", + "hashes": { + "md5": "6ef65029dde7091e65fae2561f36305a", + "sha256": "02242978c6aaee47953da9e4d20d9d9929a1284a6b3a8a63a243ac1b842bd12c" + } + }, + { + "filename": "requests-2.17.1.tar.gz", + "url": "https://files.pythonhosted.org/packages/d0/c0/f66d080e64a361382ed665023b9925e274d833f410f8c7282fb878e9c60e/requests-2.17.1.tar.gz", + "hashes": { + "md5": "53318fe8030b8b234ca672cde82916e4", + "sha256": "9cf3698006012c000af2804fe4186042a4d55df0303552dd190a74f5eaafe69b" + } + }, + { + "filename": "requests-2.17.2-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/9a/0b/7a65b391bde96d7b1749dc3562ce22f9cc86f37bd37122f71162304e3164/requests-2.17.2-py2.py3-none-any.whl", + "hashes": { + "md5": "30bd4d2841ae4c86ffd89db2a2703c75", + "sha256": "76d2f962485ebb3b3c380f146d56f5475310e53fd0defd6df0eb1c014187d45c" + } + }, + { + "filename": "requests-2.17.2.tar.gz", + "url": "https://files.pythonhosted.org/packages/23/c2/99fe3c5c15f3d06f0620bc0867bee95ec64074cbd7c9805bb5ad3010411e/requests-2.17.2.tar.gz", + "hashes": { + "md5": "f28069fe8ef82543387f3dbe152cffa3", + "sha256": "3cc7a584aad15e84d193a6d7c9176af0cf49bc6611f24ec2e04be6b05957c96d" + } + }, + { + "filename": "requests-2.17.3-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/29/b9/d26a6ab2ee178415ab8c0c591d2a1eb782a50c42a417ae390055f86a63c1/requests-2.17.3-py2.py3-none-any.whl", + "hashes": { + "md5": "66a7f010b985631e768485af6f3c61df", + "sha256": "baf701b4a9d4cbe40169e8ab77816f7abadbad502ba459c30f7a2bc138e4d612" + } + }, + { + "filename": "requests-2.17.3.tar.gz", + "url": "https://files.pythonhosted.org/packages/27/c7/a45641c83c6e28f4922ba6af3d4ae4d79b41932c2f3d77fed9e0bf878149/requests-2.17.3.tar.gz", + "hashes": { + "md5": "b1b8e6412e11e00e12adbb7786c3f2a3", + "sha256": "8d29f97ed1541709b57caddb77bb20592411d7ca10ec4f03275f49ee8456e225" + } + }, + { + "filename": "requests-2.18.0-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/e2/f0/c81405acbf53d0412b984eb3fc578cdd10e347374e1aec074638a500c186/requests-2.18.0-py2.py3-none-any.whl", + "hashes": { + "md5": "6f34e2439fcb3dd1b6e3304903bb6be8", + "sha256": "5e88d64aa56ac0fda54e77fb9762ebc65879e171b746d5479a33c4082519d6c6" + } + }, + { + "filename": "requests-2.18.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/e0/97/e2f972b6826c9cfe57b6934e3773d2783733bc2d345d810bafd309df3d15/requests-2.18.0.tar.gz", + "hashes": { + "md5": "b8b333ace1653652ddcce95284577f5c", + "sha256": "cd0189f962787284bff715fddaad478eb4d9c15aa167bd64e52ea0f661e7ea5c" + } + }, + { + "filename": "requests-2.18.1-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/5a/58/671011e3ff4a06e2969322267d78dcfda1bf4d1576551df1cce93cd7239d/requests-2.18.1-py2.py3-none-any.whl", + "hashes": { + "md5": "a7fbdc82134a2610b3d0cdc7e59f0bde", + "sha256": "6afd3371c1f4c1970497cdcace5c5ecbbe58267bf05ca1abd93d99d170803ab7" + } + }, + { + "filename": "requests-2.18.1.tar.gz", + "url": "https://files.pythonhosted.org/packages/2c/b5/2b6e8ef8dd18203b6399e9f28c7d54f6de7b7549853fe36d575bd31e29a7/requests-2.18.1.tar.gz", + "hashes": { + "md5": "40f723ed01dddeaf990d0609d073f021", + "sha256": "c6f3bdf4a4323ac7b45d01e04a6f6c20e32a052cd04de81e05103abc049ad9b9" + } + }, + { + "filename": "requests-2.18.2-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/cf/fa/31b222e4b44975de1b5ac3e1a725abdfeb00e0d761567ab426ee28a7fc73/requests-2.18.2-py2.py3-none-any.whl", + "hashes": { + "md5": "08026e24839d8bf36d248abfb2b6b674", + "sha256": "414459f05392835d4d653b57b8e58f98aea9c6ff2782e37de0a1ee92891ce900" + } + }, + { + "filename": "requests-2.18.2.tar.gz", + "url": "https://files.pythonhosted.org/packages/07/2e/81fdfdfac91cf3cb2518fb149ac67caf0e081b485eab68e9aee63396f7e8/requests-2.18.2.tar.gz", + "hashes": { + "md5": "49bd9924d3be341871bc922cde6f372e", + "sha256": "5b26fcc5e72757a867e4d562333f841eddcef93548908a1bb1a9207260618da9" + } + }, + { + "filename": "requests-2.18.3-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/ba/92/c35ed010e8f96781f08dfa6d9a6a19445a175a9304aceedece77cd48b68f/requests-2.18.3-py2.py3-none-any.whl", + "hashes": { + "md5": "d2d34c959a45f7da592a383485ad8b8c", + "sha256": "b62be4ec5999c24d10c98d248a136e7db20ca6616a2b65060cd9399417331e8a" + } + }, + { + "filename": "requests-2.18.3.tar.gz", + "url": "https://files.pythonhosted.org/packages/c3/38/d95ddb6cc8558930600be088e174a2152261a1e0708a18bf91b5b8c90b22/requests-2.18.3.tar.gz", + "hashes": { + "md5": "c8f60cf816a35c0c3fef0a40d0e407a6", + "sha256": "fb68a7baef4965c12d9cd67c0f5a46e6e28be3d8c7b6910c758fbcc99880b518" + } + }, + { + "filename": "requests-2.18.4-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/49/df/50aa1999ab9bde74656c2919d9c0c085fd2b3775fd3eca826012bef76d8c/requests-2.18.4-py2.py3-none-any.whl", + "hashes": { "md5": "eb9be71cc41fd73a51a7c9cd1adde5de", "sha256": "6a1b267aa90cac58ac3a765d067950e7dbbf75b1da07e895d1f594193a40a38b" - }, - "downloads": -1, - "filename": "requests-2.18.4-py2.py3-none-any.whl", - "has_sig": true, - "md5_digest": "eb9be71cc41fd73a51a7c9cd1adde5de", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 88704, - "upload_time": "2017-08-15T13:23:43", - "url": "https://files.pythonhosted.org/packages/49/df/50aa1999ab9bde74656c2919d9c0c085fd2b3775fd3eca826012bef76d8c/requests-2.18.4-py2.py3-none-any.whl" + } }, { - "comment_text": "", - "digests": { + "filename": "requests-2.18.4.tar.gz", + "url": "https://files.pythonhosted.org/packages/b0/e1/eab4fc3752e3d240468a8c0b284607899d2fbfb236a56b7377a329aa8d09/requests-2.18.4.tar.gz", + "hashes": { "md5": "081412b2ef79bdc48229891af13f4d82", "sha256": "9c443e7324ba5b85070c4a818ade28bfabedf16ea10206da1132edaa6dda237e" - }, - "downloads": -1, - "filename": "requests-2.18.4.tar.gz", - "has_sig": true, - "md5_digest": "081412b2ef79bdc48229891af13f4d82", - "packagetype": "sdist", - "python_version": "source", - "size": 126224, - "upload_time": "2017-08-15T13:23:46", - "url": "https://files.pythonhosted.org/packages/b0/e1/eab4fc3752e3d240468a8c0b284607899d2fbfb236a56b7377a329aa8d09/requests-2.18.4.tar.gz" + } + }, + { + "filename": "requests-2.2.0-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/3b/99/a8acc0c986281232f9476575c27a81ab697afbf089f42f05c196f51892c0/requests-2.2.0-py2.py3-none-any.whl", + "hashes": { + "md5": "8f989615bb0d276d5f3158e7efab494c", + "sha256": "889d334044cd3364d07419c37671ba4f213d0f59601109dcb54c8a7ebdde38ee" + } + }, + { + "filename": "requests-2.2.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/c9/5a/aa687599abd76de72ae5a554e2e70328fc311d59e0b1e999263fb094baf3/requests-2.2.0.tar.gz", + "hashes": { + "md5": "4d2e17221d478ece045e2e81cdb177f5", + "sha256": "1ff74f88bbfddf94f92aa20bd8473c7d46d3398c95b1842d81b2f3c475d5625d" + } + }, + { + "filename": "requests-2.2.1-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/7d/15/6efffc6aee666e1456852c2bf1d483b46bf971a2d509b35a98fc3eae1c60/requests-2.2.1-py2.py3-none-any.whl", + "hashes": { + "md5": "1e38addb978e50bd86f62bda53956b03", + "sha256": "b5bd2e1b78d28051108ebaa6248750221f9ccef52b4f054cb727de61b0406de0" + } + }, + { + "filename": "requests-2.2.1.tar.gz", + "url": "https://files.pythonhosted.org/packages/d1/0c/2dc2996268bc64b531a5a2dc6f4ec04552f3a8a2a86e88aeedcb92987741/requests-2.2.1.tar.gz", + "hashes": { + "md5": "ac27081135f58d1a43e4fb38258d6f4e", + "sha256": "1266921f1bed5fbf364cd83cf239b6d7b3ea5c32ccccbc93980d9ba12cdcfd02" + } + }, + { + "filename": "requests-2.3.0-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/f7/51/7aa1e337862118bee783c0249debd64cb07b8fbdfef154b1e185754b02d5/requests-2.3.0-py2.py3-none-any.whl", + "hashes": { + "md5": "f2d850fd48fc10a93aa03d69b87b96b4", + "sha256": "3648802492e955ffeb28f6dab864ad714059f5438bf6798d82f9d477c666aca3" + } + }, + { + "filename": "requests-2.3.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/ab/f9/4425c8410faf7c7d420dbd64e127f2cfb68cfef869a374b332610b6abc09/requests-2.3.0.tar.gz", + "hashes": { + "md5": "7449ffdc8ec9ac37bbcd286003c80f00", + "sha256": "1c1473875d846fe563d70868acf05b1953a4472f4695b7b3566d1d978957b8fc" + } + }, + { + "filename": "requests-2.4.0-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/78/14/23cf8ede304c7c8b69b929b17074292073827239c31659ab8c7beb22a059/requests-2.4.0-py2.py3-none-any.whl", + "hashes": { + "md5": "47948d2fb3f2aa04235e6f637814b226", + "sha256": "8b2cc9e334b3e66aa5df15f2e4967f2c95b5164a4e6df7e92dd70ca67400912a" + } + }, + { + "filename": "requests-2.4.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/ef/a0/9863b20b6a87e45cd4353c10277d9674f9ddfd7c28c58e61a339e273a119/requests-2.4.0.tar.gz", + "hashes": { + "md5": "99b830d1afe2e5920adbea0fe3120948", + "sha256": "7007e03cbc73e357b5055c6ea0ad6e447e2afa00f1a1f843cd792a1ebaa3763e" + } + }, + { + "filename": "requests-2.4.1-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/bf/81/22c8ed95e8088c0a7c022969534c8157930f0bed6ae77e12e86fdc2e855c/requests-2.4.1-py2.py3-none-any.whl", + "hashes": { + "md5": "19d5413dc71309e4fb1f8103b8eb99ce", + "sha256": "b9e3c10e5092b444bb4c1b0b337f57e6c3d7680ad7c5192f597e84dd931fb598" + } + }, + { + "filename": "requests-2.4.1.tar.gz", + "url": "https://files.pythonhosted.org/packages/0f/d0/e80371e64a7a7bafa303ea50465456e5292d9436504ce39b9619b6ba24be/requests-2.4.1.tar.gz", + "hashes": { + "md5": "931461f761c70708c46ea65b7889da58", + "sha256": "35d890b0aaa6e09ec40d49361d823b998ced86cc7673a9ce70bbc4f986e13ad8" + } + }, + { + "filename": "requests-2.4.2-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/a2/87/afb7990b87f76ec9d11fd15668c2362a8fbe8436e0a780c7fe5aedf1a299/requests-2.4.2-py2.py3-none-any.whl", + "hashes": { + "md5": "f49f34b1fcdef6b557964deea1a80cf3", + "sha256": "49df4571ecd49d00a4587237b7d8be9664bb326052e06d2c488255b34f13393d" + } + }, + { + "filename": "requests-2.4.2.tar.gz", + "url": "https://files.pythonhosted.org/packages/f8/25/1599a06d261fdd84256829d88f7a415c80a6e249988f9e17ba5016119b6f/requests-2.4.2.tar.gz", + "hashes": { + "md5": "a2476d2dd83a0520847f216ce0b5f9d1", + "sha256": "b98a76df30e95ef636af5e040ff7c5d0bc0b482899fd7a187b0ae525e41fe8f1" + } + }, + { + "filename": "requests-2.4.3-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/8a/98/bf72c7bd3ecfaf46dc2de3e59dcda6e61766526d3cf5897e9edd599795fc/requests-2.4.3-py2.py3-none-any.whl", + "hashes": { + "md5": "0a66a9c4c22272680430fbb9fb4ca34f", + "sha256": "124890f41723c85aa82dfe0807432aea46d24aeb0dafce340969d2089548c2c3" + } + }, + { + "filename": "requests-2.4.3.tar.gz", + "url": "https://files.pythonhosted.org/packages/f4/ff/34a5a2eb91e35280e65585c48304094b61b58f9966de74ab72673c2fde9d/requests-2.4.3.tar.gz", + "hashes": { + "md5": "02214b3a179e445545de4b7a98d3dd17", + "sha256": "53c68313c5c6149b1a899234c000296e60a8900682accf73d6f0c6d608afc6b1" + } + }, + { + "filename": "requests-2.5.0-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/32/0e/11cfb3a5e269605d0bbe3bbca9845da9b57aed90e75bd489e5e7e3509c13/requests-2.5.0-py2.py3-none-any.whl", + "hashes": { + "md5": "9d29a8a0210c236d9329bed49277b3fa", + "sha256": "66cbb850987e47177a3b4112392490bcb76eb75b37cc53da007e35f3ec894bc1" + } + }, + { + "filename": "requests-2.5.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/c8/fb/d14d1c5166a8449d36c9a3b2656706c506a2cf261d37a79d16c18c37b646/requests-2.5.0.tar.gz", + "hashes": { + "md5": "b8bf3ddca75e7ecf1b6776da1e6e3385", + "sha256": "d2daef4919fc87262b8b3cb5a9d214cac8ce1e50950f8423bbc1d31c2e63d38e" + } + }, + { + "filename": "requests-2.5.1-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/54/9a/ee6051b19c62728d5467dead279c532798c287e39c3bc8becb1cfa9f525a/requests-2.5.1-py2.py3-none-any.whl", + "hashes": { + "md5": "11dc91bc96c5c5e0b566ce8f9c9644ab", + "sha256": "1f046dcf5ec712ed3be8684b9f33c95b76e28cd1c825db0f5e1557bfd87b3745" + } + }, + { + "filename": "requests-2.5.1.tar.gz", + "url": "https://files.pythonhosted.org/packages/61/fe/2c0a4ca99c68ea24eec65d3094d6539d54635562678ee7a58420005c12b6/requests-2.5.1.tar.gz", + "hashes": { + "md5": "c270eb5551a02e8ab7a4cbb83e22af2e", + "sha256": "7b7735efd3b1e2323dc9fcef060b380d05f5f18bd0f247f5e9e74a628279de66" + } + }, + { + "filename": "requests-2.5.2-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/20/fc/53f45b9bdfa8bd5f11b7d60b50052a8e4729346fcc8d5854e0e1449d92b5/requests-2.5.2-py2.py3-none-any.whl", + "hashes": { + "md5": "7e72dfe8ed9d4ce5fd9dd9d799b3add1", + "sha256": "b4d1a981c443e19ee3f527b352022d698e16a298913d9b78ea1133f089eeb779" + } + }, + { + "filename": "requests-2.5.2.tar.gz", + "url": "https://files.pythonhosted.org/packages/d6/f7/1a4c1cae7618ad3d9fe5536ef74f47b2cb1028938e12d6dfe0a9806a8e1b/requests-2.5.2.tar.gz", + "hashes": { + "md5": "424e2469202c9bace4e8bf4642d4217a", + "sha256": "306ead91d47a48b6a25d495d2495de99694641bd7d2cac5bcc405a8837c7a612" + } + }, + { + "filename": "requests-2.5.3-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/95/54/44dc83b5f11c6da06bf9abd18c8a0905e0e297e0a9c3bfbc0c6ee4bdd33d/requests-2.5.3-py2.py3-none-any.whl", + "hashes": { + "md5": "233249f4627ac5481c948e494d2a090e", + "sha256": "3e66d7ba78e7a6a8eccd2e901079ab8d24e408b5375cf32eb51f291306302418" + } + }, + { + "filename": "requests-2.5.3.tar.gz", + "url": "https://files.pythonhosted.org/packages/a6/36/06a7d4261f91552f21f017fe162d69df95ca7925d1436c8acf73283ee3d0/requests-2.5.3.tar.gz", + "hashes": { + "md5": "23bf4fcc89ea8d353eb5353bb4a475b1", + "sha256": "55d7f5619daae94ec49ee81ed8c865e5a2a47f0bbf8e06cf94636bee103eaf65" + } + }, + { + "filename": "requests-2.6.0-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/73/63/b0729be549494a3e31316437053bc4e0a8bb71a07a6ee6059434b8f1cd5f/requests-2.6.0-py2.py3-none-any.whl", + "hashes": { + "md5": "3ab1972bbaf2802d94516fb86b9b0d0b", + "sha256": "fdb9af60d47ca57a80df0a213336019a34ff6192d8fff361c349f2c8398fe460" + } + }, + { + "filename": "requests-2.6.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/eb/70/237e11db04807a9409ed39997097118208e7814309d9bc3da7bb98d1fe3d/requests-2.6.0.tar.gz", + "hashes": { + "md5": "25287278fa3ea106207461112bb37050", + "sha256": "1cdbed1f0e236f35ef54e919982c7a338e4fea3786310933d3a7887a04b74d75" + } + }, + { + "filename": "requests-2.6.1-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/64/74/5bedd762987b5cb4ad5de4901d12942ad7635bffa5ae4f6b5e725d1b2068/requests-2.6.1-py2.py3-none-any.whl", + "hashes": { + "md5": "adb8e91b3367bc0417ef1e4a6dced9b1", + "sha256": "79515d60eae4f5d426b8813ffd60ed874169d78b8815844e8e85798ef27a599f" + } + }, + { + "filename": "requests-2.6.1.tar.gz", + "url": "https://files.pythonhosted.org/packages/08/d5/3dfb95813d697d1e5a3eccb9b88f9d91a233fc35b0ddbb5bc238142f9de0/requests-2.6.1.tar.gz", + "hashes": { + "md5": "da6e487f89e6a531699b7fd97ff182af", + "sha256": "490b111c824d64b84797a899a4c22618bbc45323ac24a0a0bb4b73a8758e943c" + } + }, + { + "filename": "requests-2.6.2-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/9f/3e/c09023432b822a09d965878640de63f8126d77c948f45c24dcad13d42721/requests-2.6.2-py2.py3-none-any.whl", + "hashes": { + "md5": "36746c275589b2154307bbcc6d28320a", + "sha256": "8f0f56813f82d0c27d9578221268ac9af48f076c71ee69693305ceca6ca355bd" + } + }, + { + "filename": "requests-2.6.2.tar.gz", + "url": "https://files.pythonhosted.org/packages/37/b3/d1a5d9768240a1104a620730a1226975ceb9dd3882a8cfd8935b314ee0ca/requests-2.6.2.tar.gz", + "hashes": { + "md5": "0d703e5be558566e0f8c37f960d95372", + "sha256": "0577249d4b6c4b11fd97c28037e98664bfaa0559022fee7bcef6b752a106e505" + } + }, + { + "filename": "requests-2.7.0-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/26/ff/c71b3943bebdd9f7ceb9e137296370587eb0b33fe2eb3732ae168bc45204/requests-2.7.0-py2.py3-none-any.whl", + "hashes": { + "md5": "564fb256f865a79f977e57b79d31659a", + "sha256": "20f976cdce02a42b69ce80e9e03897a51814b36d448b37288546086ebc473146" + } + }, + { + "filename": "requests-2.7.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/0a/00/8cc925deac3a87046a4148d7846b571cf433515872b5430de4cd9dea83cb/requests-2.7.0.tar.gz", + "hashes": { + "md5": "29b173fd5fa572ec0764d1fd7b527260", + "sha256": "398a3db6d61899d25fd4a06c6ca12051b0ce171d705decd7ed5511517b4bb93d" + } + }, + { + "filename": "requests-2.8.0-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/5d/a6/90f822c17b4fc905da67aed49b511f110207242ff164aeda926461101dc6/requests-2.8.0-py2.py3-none-any.whl", + "hashes": { + "md5": "52236eb6f886db4d2afba43775c97050", + "sha256": "3a34af0dd06fed021286d93da464bbb76dcc0c709d02e7d3cdca195b1341c380" + } + }, + { + "filename": "requests-2.8.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/1b/92/0632a7eb5e94bfedd300a3a5f4ebbf8505fd9768ba00ab259b5bf786de5f/requests-2.8.0.tar.gz", + "hashes": { + "md5": "3ec7198fc935d83c3eacff1ed4095ce4", + "sha256": "b2f003589b60924909c0acde472590c5ea83906986a7a25b6f7929eb20923b7b" + } + }, + { + "filename": "requests-2.8.1-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/c0/0f/a911a44c89ba01b23d8fe3defbdfca1e962de6f11a11da32658902cdc2a4/requests-2.8.1-py2.py3-none-any.whl", + "hashes": { + "md5": "46f1d621daa3ab38958a42f51478b1ee", + "sha256": "89f1b1f25dcd7b68f514e8d341a5b2eb466f960ae756822eaab480a3c1a81c28" + } + }, + { + "filename": "requests-2.8.1.tar.gz", + "url": "https://files.pythonhosted.org/packages/38/2d/290d33417c079a5248fcd06b0b8492acdd1851e54e4bdad54c3859dab600/requests-2.8.1.tar.gz", + "hashes": { + "md5": "a27ea3d72d7822906ddce5e252d6add9", + "sha256": "84fe8d5bf4dcdcc49002446c47a146d17ac10facf00d9086659064ac43b6c25b" + } + }, + { + "filename": "requests-2.9.0-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/bf/b7/c0b5a7fcf561577178ffd65af9af37c412cf6fbb1a2a198b9308b343d63f/requests-2.9.0-py2.py3-none-any.whl", + "hashes": { + "md5": "149560afb69fe9e5048d05322eeb8ada", + "sha256": "1f4726bc7636edcbd141ba9c868dd92ecb77dbc869f68a28c32e9e149b070854" + } + }, + { + "filename": "requests-2.9.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/e4/99/3e33bfe263894278a094c374f87031554406e57fd0b1ad22520357556627/requests-2.9.0.tar.gz", + "hashes": { + "md5": "2f46fdceaf4f63e5e3665a8cb50d284f", + "sha256": "4881966532b5a36c552244fd909de66d1b8c4a26086f56fd5837cfcde63f8eb8" + } + }, + { + "filename": "requests-2.9.1-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/b8/f7/3bb4d18c234a8ce7044d5ee2e1082b7d72bf6c550afb8d51ae266dea56f1/requests-2.9.1-py2.py3-none-any.whl", + "hashes": { + "md5": "58a444aaa02780ad01983f5f540e67b2", + "sha256": "113fbba5531a9e34945b7d36b33a084e8ba5d0664b703c81a7c572d91919a5b8" + } + }, + { + "filename": "requests-2.9.1.tar.gz", + "url": "https://files.pythonhosted.org/packages/f9/6d/07c44fb1ebe04d069459a189e7dab9e4abfe9432adcd4477367c25332748/requests-2.9.1.tar.gz", + "hashes": { + "md5": "0b7f480d19012ec52bab78292efd976d", + "sha256": "c577815dd00f1394203fc44eb979724b098f88264a9ef898ee45b8e5e9cf587f" + } + }, + { + "filename": "requests-2.9.2-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/8b/e7/229a428b8eb9a7f925ef16ff09ab25856efe789410d661f10157919f2ae2/requests-2.9.2-py2.py3-none-any.whl", + "hashes": { + "md5": "afecc76f13f3ae5e5dab18ae64c73c84", + "sha256": "22a8c72dfc7fc18db1aca6784e97a638e9d09abe2cd387be473f88bd6dcba22f" + } + }, + { + "filename": "requests-2.9.2.tar.gz", + "url": "https://files.pythonhosted.org/packages/64/20/2133a092a0e87d1c250fe48704974b73a1341b7e4f800edecf40462a825d/requests-2.9.2.tar.gz", + "hashes": { + "md5": "18d0e51cd5e84c7d8b6dcbdd51551984", + "sha256": "d8be941a08cf36e4f424ac76073eb911e5e646a33fcb3402e1642c426bf34682" + } } - ] + ], + "meta": { + "api-version": "1.0" + } } diff --git a/tests/repositories/fixtures/pypi.org/json/setuptools.json b/tests/repositories/fixtures/pypi.org/json/setuptools.json index d679e6d7d5c..6703a5efc9b 100644 --- a/tests/repositories/fixtures/pypi.org/json/setuptools.json +++ b/tests/repositories/fixtures/pypi.org/json/setuptools.json @@ -1,121 +1,25 @@ { - "info": { - "author": "Python Packaging Authority", - "author_email": "distutils-sig@python.org", - "bugtrack_url": "", - "classifiers": [ - "Development Status :: 5 - Production/Stable", - "Intended Audience :: Developers", - "License :: OSI Approved :: MIT License", - "Operating System :: OS Independent", - "Programming Language :: Python :: 2", - "Programming Language :: Python :: 2.7", - "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.3", - "Programming Language :: Python :: 3.4", - "Programming Language :: Python :: 3.5", - "Programming Language :: Python :: 3.6", - "Topic :: Software Development :: Libraries :: Python Modules", - "Topic :: System :: Archiving :: Packaging", - "Topic :: System :: Systems Administration", - "Topic :: Utilities" - ], - "description": "", - "description_content_type": "text/x-rst; charset=UTF-8", - "docs_url": null, - "download_url": "", - "downloads": { - "last_day": -1, - "last_month": -1, - "last_week": -1 - }, - "home_page": "https://github.com/pypa/setuptools", - "keywords": "CPAN PyPI distutils eggs package management", - "license": "", - "maintainer": "", - "maintainer_email": "", - "name": "setuptools", - "package_url": "https://pypi.org/project/setuptools/", - "platform": "", - "project_url": "https://pypi.org/project/setuptools/", - "release_url": "https://pypi.org/project/setuptools/39.2.0/", - "requires_dist": [ - "wincertstore (==0.2); (sys_platform=='win32') and extra == 'ssl'", - "certifi (==2016.9.26); extra == 'certs'" - ], - "requires_python": ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*", - "summary": "Easily download, build, install, upgrade, and uninstall Python packages", - "version": "39.2.0" - }, - "last_serial": 3879671, - "releases": { - "39.2.0": [ - { - "comment_text": "", - "digests": { - "md5": "8d066d2201311ed30be535b473e32fed", - "sha256": "8fca9275c89964f13da985c3656cb00ba029d7f3916b37990927ffdf264e7926" - }, - "downloads": -1, - "filename": "setuptools-39.2.0-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "8d066d2201311ed30be535b473e32fed", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 567556, - "upload_time": "2018-05-19T19:19:22", - "url": "https://files.pythonhosted.org/packages/7f/e1/820d941153923aac1d49d7fc37e17b6e73bfbd2904959fffbad77900cf92/setuptools-39.2.0-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "dd4e3fa83a21bf7bf9c51026dc8a4e59", - "sha256": "f7cddbb5f5c640311eb00eab6e849f7701fa70bf6a183fc8a2c33dd1d1672fb2" - }, - "downloads": -1, - "filename": "setuptools-39.2.0.zip", - "has_sig": false, - "md5_digest": "dd4e3fa83a21bf7bf9c51026dc8a4e59", - "packagetype": "sdist", - "python_version": "source", - "size": 851112, - "upload_time": "2018-05-19T19:19:24", - "url": "https://files.pythonhosted.org/packages/1a/04/d6f1159feaccdfc508517dba1929eb93a2854de729fa68da9d5c6b48fa00/setuptools-39.2.0.zip" - } - ] - }, - "urls": [ + "name": "setuptools", + "files": [ { - "comment_text": "", - "digests": { + "filename": "setuptools-39.2.0-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/7f/e1/820d941153923aac1d49d7fc37e17b6e73bfbd2904959fffbad77900cf92/setuptools-39.2.0-py2.py3-none-any.whl", + "hashes": { "md5": "8d066d2201311ed30be535b473e32fed", "sha256": "8fca9275c89964f13da985c3656cb00ba029d7f3916b37990927ffdf264e7926" - }, - "downloads": -1, - "filename": "setuptools-39.2.0-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "8d066d2201311ed30be535b473e32fed", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 567556, - "upload_time": "2018-05-19T19:19:22", - "url": "https://files.pythonhosted.org/packages/7f/e1/820d941153923aac1d49d7fc37e17b6e73bfbd2904959fffbad77900cf92/setuptools-39.2.0-py2.py3-none-any.whl" + } }, { - "comment_text": "", - "digests": { + "filename": "setuptools-39.2.0.zip", + "url": "https://files.pythonhosted.org/packages/1a/04/d6f1159feaccdfc508517dba1929eb93a2854de729fa68da9d5c6b48fa00/setuptools-39.2.0.zip", + "hashes": { "md5": "dd4e3fa83a21bf7bf9c51026dc8a4e59", "sha256": "f7cddbb5f5c640311eb00eab6e849f7701fa70bf6a183fc8a2c33dd1d1672fb2" - }, - "downloads": -1, - "filename": "setuptools-39.2.0.zip", - "has_sig": false, - "md5_digest": "dd4e3fa83a21bf7bf9c51026dc8a4e59", - "packagetype": "sdist", - "python_version": "source", - "size": 851112, - "upload_time": "2018-05-19T19:19:24", - "url": "https://files.pythonhosted.org/packages/1a/04/d6f1159feaccdfc508517dba1929eb93a2854de729fa68da9d5c6b48fa00/setuptools-39.2.0.zip" + } } - ] + ], + "meta": { + "api-version": "1.0", + "_last-serial": 3879671 + } } diff --git a/tests/repositories/fixtures/pypi.org/json/setuptools/39.2.0.json b/tests/repositories/fixtures/pypi.org/json/setuptools/39.2.0.json new file mode 100644 index 00000000000..d1a633083a0 --- /dev/null +++ b/tests/repositories/fixtures/pypi.org/json/setuptools/39.2.0.json @@ -0,0 +1,100 @@ +{ + "info": { + "author": "Python Packaging Authority", + "author_email": "distutils-sig@python.org", + "bugtrack_url": null, + "classifiers": [ + "Development Status :: 5 - Production/Stable", + "Intended Audience :: Developers", + "License :: OSI Approved :: MIT License", + "Operating System :: OS Independent", + "Programming Language :: Python :: 2", + "Programming Language :: Python :: 2.7", + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3.3", + "Programming Language :: Python :: 3.4", + "Programming Language :: Python :: 3.5", + "Programming Language :: Python :: 3.6", + "Topic :: Software Development :: Libraries :: Python Modules", + "Topic :: System :: Archiving :: Packaging", + "Topic :: System :: Systems Administration", + "Topic :: Utilities" + ], + "description": ".. image:: https://img.shields.io/pypi/v/setuptools.svg\n :target: https://pypi.org/project/setuptools\n\n.. image:: https://readthedocs.org/projects/setuptools/badge/?version=latest\n :target: https://setuptools.readthedocs.io\n\n.. image:: https://img.shields.io/travis/pypa/setuptools/master.svg?label=Linux%20build%20%40%20Travis%20CI\n :target: https://travis-ci.org/pypa/setuptools\n\n.. image:: https://img.shields.io/appveyor/ci/pypa/setuptools/master.svg?label=Windows%20build%20%40%20Appveyor\n :target: https://ci.appveyor.com/project/pypa/setuptools/branch/master\n\n.. image:: https://img.shields.io/codecov/c/github/pypa/setuptools/master.svg\n :target: https://codecov.io/gh/pypa/setuptools\n\n.. image:: https://img.shields.io/pypi/pyversions/setuptools.svg\n\nSee the `Installation Instructions\n`_ in the Python Packaging\nUser's Guide for instructions on installing, upgrading, and uninstalling\nSetuptools.\n\nThe project is `maintained at GitHub `_.\n\nQuestions and comments should be directed to the `distutils-sig\nmailing list `_.\nBug reports and especially tested patches may be\nsubmitted directly to the `bug tracker\n`_.\n\n\nCode of Conduct\n---------------\n\nEveryone interacting in the setuptools project's codebases, issue trackers,\nchat rooms, and mailing lists is expected to follow the\n`PyPA Code of Conduct `_.\n\n\n", + "description_content_type": "text/x-rst; charset=UTF-8", + "docs_url": null, + "download_url": "", + "downloads": { + "last_day": -1, + "last_month": -1, + "last_week": -1 + }, + "home_page": "https://github.com/pypa/setuptools", + "keywords": "CPAN PyPI distutils eggs package management", + "license": "", + "maintainer": "", + "maintainer_email": "", + "name": "setuptools", + "package_url": "https://pypi.org/project/setuptools/", + "platform": "", + "project_url": "https://pypi.org/project/setuptools/", + "project_urls": { + "Documentation": "https://setuptools.readthedocs.io/", + "Homepage": "https://github.com/pypa/setuptools" + }, + "release_url": "https://pypi.org/project/setuptools/39.2.0/", + "requires_dist": [ + "certifi (==2016.9.26); extra == 'certs'", + "wincertstore (==0.2); (sys_platform=='win32') and extra == 'ssl'" + ], + "requires_python": ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*", + "summary": "Easily download, build, install, upgrade, and uninstall Python packages", + "version": "39.2.0", + "yanked": false, + "yanked_reason": null + }, + "last_serial": 14429235, + "urls": [ + { + "comment_text": "", + "digests": { + "md5": "8d066d2201311ed30be535b473e32fed", + "sha256": "8fca9275c89964f13da985c3656cb00ba029d7f3916b37990927ffdf264e7926" + }, + "downloads": -1, + "filename": "setuptools-39.2.0-py2.py3-none-any.whl", + "has_sig": false, + "md5_digest": "8d066d2201311ed30be535b473e32fed", + "packagetype": "bdist_wheel", + "python_version": "py2.py3", + "requires_python": ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*", + "size": 567556, + "upload_time": "2018-05-19T19:19:22", + "upload_time_iso_8601": "2018-05-19T19:19:22.625819Z", + "url": "https://files.pythonhosted.org/packages/7f/e1/820d941153923aac1d49d7fc37e17b6e73bfbd2904959fffbad77900cf92/setuptools-39.2.0-py2.py3-none-any.whl", + "yanked": false, + "yanked_reason": null + }, + { + "comment_text": "", + "digests": { + "md5": "dd4e3fa83a21bf7bf9c51026dc8a4e59", + "sha256": "f7cddbb5f5c640311eb00eab6e849f7701fa70bf6a183fc8a2c33dd1d1672fb2" + }, + "downloads": -1, + "filename": "setuptools-39.2.0.zip", + "has_sig": false, + "md5_digest": "dd4e3fa83a21bf7bf9c51026dc8a4e59", + "packagetype": "sdist", + "python_version": "source", + "requires_python": ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*", + "size": 851112, + "upload_time": "2018-05-19T19:19:24", + "upload_time_iso_8601": "2018-05-19T19:19:24.480740Z", + "url": "https://files.pythonhosted.org/packages/1a/04/d6f1159feaccdfc508517dba1929eb93a2854de729fa68da9d5c6b48fa00/setuptools-39.2.0.zip", + "yanked": false, + "yanked_reason": null + } + ], + "vulnerabilities": [] +} diff --git a/tests/repositories/fixtures/pypi.org/json/six.json b/tests/repositories/fixtures/pypi.org/json/six.json index 92d79c54396..d9a68816144 100644 --- a/tests/repositories/fixtures/pypi.org/json/six.json +++ b/tests/repositories/fixtures/pypi.org/json/six.json @@ -1,108 +1,25 @@ { - "info": { - "author": "Benjamin Peterson", - "author_email": "benjamin@python.org", - "bugtrack_url": null, - "classifiers": [ - "Intended Audience :: Developers", - "License :: OSI Approved :: MIT License", - "Programming Language :: Python :: 2", - "Programming Language :: Python :: 3", - "Topic :: Software Development :: Libraries", - "Topic :: Utilities" - ], - "description": "", - "docs_url": "https://pythonhosted.org/six/", - "download_url": "", - "downloads": { - "last_day": -1, - "last_month": -1, - "last_week": -1 - }, - "home_page": "http://pypi.python.org/pypi/six/", - "keywords": "", - "license": "MIT", - "maintainer": "", - "maintainer_email": "", - "name": "six", - "package_url": "https://pypi.org/project/six/", - "platform": "", - "project_url": "https://pypi.org/project/six/", - "release_url": "https://pypi.org/project/six/1.11.0/", - "requires_dist": null, - "requires_python": "", - "summary": "Python 2 and 3 compatibility utilities", - "version": "1.11.0" - }, - "last_serial": 3180827, - "releases": { - "1.11.0": [ - { - "comment_text": "", - "digests": { - "md5": "866ab722be6bdfed6830f3179af65468", - "sha256": "832dc0e10feb1aa2c68dcc57dbb658f1c7e65b9b61af69048abc87a2db00a0eb" - }, - "downloads": -1, - "filename": "six-1.11.0-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "866ab722be6bdfed6830f3179af65468", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 10702, - "upload_time": "2017-09-17T18:46:53", - "url": "https://files.pythonhosted.org/packages/67/4b/141a581104b1f6397bfa78ac9d43d8ad29a7ca43ea90a2d863fe3056e86a/six-1.11.0-py2.py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "d12789f9baf7e9fb2524c0c64f1773f8", - "sha256": "70e8a77beed4562e7f14fe23a786b54f6296e34344c23bc42f07b15018ff98e9" - }, - "downloads": -1, - "filename": "six-1.11.0.tar.gz", - "has_sig": false, - "md5_digest": "d12789f9baf7e9fb2524c0c64f1773f8", - "packagetype": "sdist", - "python_version": "source", - "size": 29860, - "upload_time": "2017-09-17T18:46:54", - "url": "https://files.pythonhosted.org/packages/16/d8/bc6316cf98419719bd59c91742194c111b6f2e85abac88e496adefaf7afe/six-1.11.0.tar.gz" - } - ] - }, - "urls": [ + "name": "six", + "files": [ { - "comment_text": "", - "digests": { + "filename": "six-1.11.0-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/67/4b/141a581104b1f6397bfa78ac9d43d8ad29a7ca43ea90a2d863fe3056e86a/six-1.11.0-py2.py3-none-any.whl", + "hashes": { "md5": "866ab722be6bdfed6830f3179af65468", "sha256": "832dc0e10feb1aa2c68dcc57dbb658f1c7e65b9b61af69048abc87a2db00a0eb" - }, - "downloads": -1, - "filename": "six-1.11.0-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "866ab722be6bdfed6830f3179af65468", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "size": 10702, - "upload_time": "2017-09-17T18:46:53", - "url": "https://files.pythonhosted.org/packages/67/4b/141a581104b1f6397bfa78ac9d43d8ad29a7ca43ea90a2d863fe3056e86a/six-1.11.0-py2.py3-none-any.whl" + } }, { - "comment_text": "", - "digests": { + "filename": "six-1.11.0.tar.gz", + "url": "https://files.pythonhosted.org/packages/16/d8/bc6316cf98419719bd59c91742194c111b6f2e85abac88e496adefaf7afe/six-1.11.0.tar.gz", + "hashes": { "md5": "d12789f9baf7e9fb2524c0c64f1773f8", "sha256": "70e8a77beed4562e7f14fe23a786b54f6296e34344c23bc42f07b15018ff98e9" - }, - "downloads": -1, - "filename": "six-1.11.0.tar.gz", - "has_sig": false, - "md5_digest": "d12789f9baf7e9fb2524c0c64f1773f8", - "packagetype": "sdist", - "python_version": "source", - "size": 29860, - "upload_time": "2017-09-17T18:46:54", - "url": "https://files.pythonhosted.org/packages/16/d8/bc6316cf98419719bd59c91742194c111b6f2e85abac88e496adefaf7afe/six-1.11.0.tar.gz" + } } - ] + ], + "meta": { + "api-version": "1.0", + "_last-serial": 3180827 + } } diff --git a/tests/repositories/fixtures/pypi.org/json/sqlalchemy.json b/tests/repositories/fixtures/pypi.org/json/sqlalchemy.json index fb67823fd6e..0289daea947 100644 --- a/tests/repositories/fixtures/pypi.org/json/sqlalchemy.json +++ b/tests/repositories/fixtures/pypi.org/json/sqlalchemy.json @@ -1,85 +1,17 @@ { - "info": { - "author": "Mike Bayer", - "author_email": "mike_mp@zzzcomputing.com", - "bugtrack_url": null, - "classifiers": [ - "Development Status :: 5 - Production/Stable", - "Intended Audience :: Developers", - "License :: OSI Approved :: MIT License", - "Operating System :: OS Independent", - "Programming Language :: Python", - "Programming Language :: Python :: 3", - "Programming Language :: Python :: Implementation :: CPython", - "Programming Language :: Python :: Implementation :: PyPy", - "Topic :: Database :: Front-Ends" - ], - "description": "", - "description_content_type": "", - "docs_url": null, - "download_url": "", - "downloads": { - "last_day": -1, - "last_month": -1, - "last_week": -1 - }, - "home_page": "http://www.sqlalchemy.org", - "keywords": "", - "license": "MIT License", - "maintainer": "", - "maintainer_email": "", - "name": "SQLAlchemy", - "package_url": "https://pypi.org/project/SQLAlchemy/", - "platform": "", - "project_url": "https://pypi.org/project/SQLAlchemy/", - "project_urls": { - "Homepage": "http://www.sqlalchemy.org" - }, - "release_url": "https://pypi.org/project/SQLAlchemy/1.2.12/", - "requires_dist": null, - "requires_python": "", - "summary": "Database Abstraction Library", - "version": "1.2.12" - }, - "last_serial": 4289618, - "releases": { - "1.2.12": [ - { - "comment_text": "", - "digests": { - "md5": "3baca105a1e49798d6bc99eb2738cb3b", - "sha256": "c5951d9ef1d5404ed04bae5a16b60a0779087378928f997a294d1229c6ca4d3e" - }, - "downloads": -1, - "filename": "SQLAlchemy-1.2.12.tar.gz", - "has_sig": true, - "md5_digest": "3baca105a1e49798d6bc99eb2738cb3b", - "packagetype": "sdist", - "python_version": "source", - "requires_python": null, - "size": 5634807, - "upload_time": "2018-09-19T18:14:55", - "url": "https://files.pythonhosted.org/packages/25/c9/b0552098cee325425a61efdf380c51b5c721e459081c85bbb860f501c091/SQLAlchemy-1.2.12.tar.gz" - } - ] - }, - "urls": [ + "name": "SQLAlchemy", + "files": [ { - "comment_text": "", - "digests": { + "filename": "SQLAlchemy-1.2.12.tar.gz", + "url": "https://files.pythonhosted.org/packages/25/c9/b0552098cee325425a61efdf380c51b5c721e459081c85bbb860f501c091/SQLAlchemy-1.2.12.tar.gz", + "hashes": { "md5": "3baca105a1e49798d6bc99eb2738cb3b", "sha256": "c5951d9ef1d5404ed04bae5a16b60a0779087378928f997a294d1229c6ca4d3e" - }, - "downloads": -1, - "filename": "SQLAlchemy-1.2.12.tar.gz", - "has_sig": true, - "md5_digest": "3baca105a1e49798d6bc99eb2738cb3b", - "packagetype": "sdist", - "python_version": "source", - "requires_python": null, - "size": 5634807, - "upload_time": "2018-09-19T18:14:55", - "url": "https://files.pythonhosted.org/packages/25/c9/b0552098cee325425a61efdf380c51b5c721e459081c85bbb860f501c091/SQLAlchemy-1.2.12.tar.gz" + } } - ] + ], + "meta": { + "api-version": "1.0", + "_last-serial": 4289618 + } } diff --git a/tests/repositories/fixtures/pypi.org/json/sqlalchemy/1.2.12.json b/tests/repositories/fixtures/pypi.org/json/sqlalchemy/1.2.12.json new file mode 100644 index 00000000000..a927ce1deb7 --- /dev/null +++ b/tests/repositories/fixtures/pypi.org/json/sqlalchemy/1.2.12.json @@ -0,0 +1,123 @@ +{ + "info": { + "author": "Mike Bayer", + "author_email": "mike_mp@zzzcomputing.com", + "bugtrack_url": null, + "classifiers": [ + "Development Status :: 5 - Production/Stable", + "Intended Audience :: Developers", + "License :: OSI Approved :: MIT License", + "Operating System :: OS Independent", + "Programming Language :: Python", + "Programming Language :: Python :: 3", + "Programming Language :: Python :: Implementation :: CPython", + "Programming Language :: Python :: Implementation :: PyPy", + "Topic :: Database :: Front-Ends" + ], + "description": "SQLAlchemy\n==========\n\nThe Python SQL Toolkit and Object Relational Mapper\n\nIntroduction\n-------------\n\nSQLAlchemy is the Python SQL toolkit and Object Relational Mapper\nthat gives application developers the full power and\nflexibility of SQL. SQLAlchemy provides a full suite\nof well known enterprise-level persistence patterns,\ndesigned for efficient and high-performing database\naccess, adapted into a simple and Pythonic domain\nlanguage.\n\nMajor SQLAlchemy features include:\n\n* An industrial strength ORM, built \n from the core on the identity map, unit of work,\n and data mapper patterns. These patterns\n allow transparent persistence of objects \n using a declarative configuration system.\n Domain models\n can be constructed and manipulated naturally,\n and changes are synchronized with the\n current transaction automatically.\n* A relationally-oriented query system, exposing\n the full range of SQL's capabilities \n explicitly, including joins, subqueries, \n correlation, and most everything else, \n in terms of the object model.\n Writing queries with the ORM uses the same \n techniques of relational composition you use \n when writing SQL. While you can drop into\n literal SQL at any time, it's virtually never\n needed.\n* A comprehensive and flexible system \n of eager loading for related collections and objects.\n Collections are cached within a session,\n and can be loaded on individual access, all \n at once using joins, or by query per collection\n across the full result set.\n* A Core SQL construction system and DBAPI \n interaction layer. The SQLAlchemy Core is\n separate from the ORM and is a full database\n abstraction layer in its own right, and includes\n an extensible Python-based SQL expression \n language, schema metadata, connection pooling, \n type coercion, and custom types.\n* All primary and foreign key constraints are \n assumed to be composite and natural. Surrogate\n integer primary keys are of course still the \n norm, but SQLAlchemy never assumes or hardcodes\n to this model.\n* Database introspection and generation. Database\n schemas can be \"reflected\" in one step into\n Python structures representing database metadata;\n those same structures can then generate \n CREATE statements right back out - all within\n the Core, independent of the ORM.\n\nSQLAlchemy's philosophy:\n\n* SQL databases behave less and less like object\n collections the more size and performance start to\n matter; object collections behave less and less like\n tables and rows the more abstraction starts to matter.\n SQLAlchemy aims to accommodate both of these\n principles.\n* An ORM doesn't need to hide the \"R\". A relational\n database provides rich, set-based functionality\n that should be fully exposed. SQLAlchemy's\n ORM provides an open-ended set of patterns\n that allow a developer to construct a custom\n mediation layer between a domain model and \n a relational schema, turning the so-called\n \"object relational impedance\" issue into\n a distant memory.\n* The developer, in all cases, makes all decisions\n regarding the design, structure, and naming conventions\n of both the object model as well as the relational\n schema. SQLAlchemy only provides the means\n to automate the execution of these decisions.\n* With SQLAlchemy, there's no such thing as \n \"the ORM generated a bad query\" - you \n retain full control over the structure of \n queries, including how joins are organized,\n how subqueries and correlation is used, what \n columns are requested. Everything SQLAlchemy\n does is ultimately the result of a developer-\n initiated decision.\n* Don't use an ORM if the problem doesn't need one.\n SQLAlchemy consists of a Core and separate ORM\n component. The Core offers a full SQL expression\n language that allows Pythonic construction \n of SQL constructs that render directly to SQL\n strings for a target database, returning\n result sets that are essentially enhanced DBAPI\n cursors.\n* Transactions should be the norm. With SQLAlchemy's\n ORM, nothing goes to permanent storage until\n commit() is called. SQLAlchemy encourages applications\n to create a consistent means of delineating\n the start and end of a series of operations.\n* Never render a literal value in a SQL statement.\n Bound parameters are used to the greatest degree\n possible, allowing query optimizers to cache \n query plans effectively and making SQL injection\n attacks a non-issue.\n\nDocumentation\n-------------\n\nLatest documentation is at:\n\nhttp://www.sqlalchemy.org/docs/\n\nInstallation / Requirements\n---------------------------\n\nFull documentation for installation is at \n`Installation `_.\n\nGetting Help / Development / Bug reporting\n------------------------------------------\n\nPlease refer to the `SQLAlchemy Community Guide `_.\n\nLicense\n-------\n\nSQLAlchemy is distributed under the `MIT license\n`_.", + "description_content_type": "", + "docs_url": null, + "download_url": "", + "downloads": { + "last_day": -1, + "last_month": -1, + "last_week": -1 + }, + "home_page": "http://www.sqlalchemy.org", + "keywords": "", + "license": "MIT License", + "maintainer": "", + "maintainer_email": "", + "name": "SQLAlchemy", + "package_url": "https://pypi.org/project/SQLAlchemy/", + "platform": "", + "project_url": "https://pypi.org/project/SQLAlchemy/", + "project_urls": { + "Homepage": "http://www.sqlalchemy.org" + }, + "release_url": "https://pypi.org/project/SQLAlchemy/1.2.12/", + "requires_dist": null, + "requires_python": "", + "summary": "Database Abstraction Library", + "version": "1.2.12", + "yanked": false, + "yanked_reason": null + }, + "last_serial": 14239243, + "urls": [ + { + "comment_text": "", + "digests": { + "md5": "3baca105a1e49798d6bc99eb2738cb3b", + "sha256": "c5951d9ef1d5404ed04bae5a16b60a0779087378928f997a294d1229c6ca4d3e" + }, + "downloads": -1, + "filename": "SQLAlchemy-1.2.12.tar.gz", + "has_sig": true, + "md5_digest": "3baca105a1e49798d6bc99eb2738cb3b", + "packagetype": "sdist", + "python_version": "source", + "requires_python": null, + "size": 5634807, + "upload_time": "2018-09-19T18:14:55", + "upload_time_iso_8601": "2018-09-19T18:14:55.299706Z", + "url": "https://files.pythonhosted.org/packages/25/c9/b0552098cee325425a61efdf380c51b5c721e459081c85bbb860f501c091/SQLAlchemy-1.2.12.tar.gz", + "yanked": false, + "yanked_reason": null + } + ], + "vulnerabilities": [ + { + "aliases": [ + "CVE-2019-7548" + ], + "details": "SQLAlchemy 1.2.17 has SQL Injection when the group_by parameter can be controlled.", + "fixed_in": [ + "1.2.18" + ], + "id": "PYSEC-2019-124", + "link": "https://osv.dev/vulnerability/PYSEC-2019-124", + "source": "osv", + "summary": null + }, + { + "aliases": [ + "CVE-2019-7164" + ], + "details": "SQLAlchemy through 1.2.17 and 1.3.x through 1.3.0b2 allows SQL Injection via the order_by parameter.", + "fixed_in": [ + "1.2.18" + ], + "id": "PYSEC-2019-123", + "link": "https://osv.dev/vulnerability/PYSEC-2019-123", + "source": "osv", + "summary": null + }, + { + "aliases": [ + "CVE-2019-7548" + ], + "details": "SQLAlchemy 1.2.17 has SQL Injection when the group_by parameter can be controlled.", + "fixed_in": [ + "1.3.0" + ], + "id": "GHSA-38fc-9xqv-7f7q", + "link": "https://osv.dev/vulnerability/GHSA-38fc-9xqv-7f7q", + "source": "osv", + "summary": null + }, + { + "aliases": [ + "CVE-2019-7164" + ], + "details": "SQLAlchemy through 1.2.17 and 1.3.x through 1.3.0b2 allows SQL Injection via the order_by parameter.", + "fixed_in": [ + "1.3.0" + ], + "id": "GHSA-887w-45rq-vxgf", + "link": "https://osv.dev/vulnerability/GHSA-887w-45rq-vxgf", + "source": "osv", + "summary": null + } + ] +} diff --git a/tests/repositories/fixtures/pypi.org/json/toga.json b/tests/repositories/fixtures/pypi.org/json/toga.json index 50b7f05952b..abd68fb5d70 100644 --- a/tests/repositories/fixtures/pypi.org/json/toga.json +++ b/tests/repositories/fixtures/pypi.org/json/toga.json @@ -1,357 +1,137 @@ { - "info": { - "author": "Russell Keith-Magee", - "author_email": "russell@keith-magee.com", - "bugtrack_url": null, - "classifiers": [ - "Development Status :: 3 - Alpha", - "Intended Audience :: Developers", - "License :: OSI Approved :: BSD License", - "Operating System :: OS Independent", - "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.4", - "Programming Language :: Python :: 3.5", - "Programming Language :: Python :: 3.6", - "Programming Language :: Python :: 3 :: Only", - "Topic :: Software Development", - "Topic :: Software Development :: User Interfaces", - "Topic :: Software Development :: Widget Sets" - ], - "description": "", - "description_content_type": null, - "docs_url": null, - "download_url": "", - "downloads": { - "last_day": -1, - "last_month": -1, - "last_week": -1 + "name": "toga", + "files": [ + { + "filename": "toga-0.3.0.dev1-py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/eb/ef/ea806c706d3dc90d4bc8c412c0ad3515fd018074f5fdd4bd020bdd4c0c80/toga-0.3.0.dev1-py3-none-any.whl", + "hashes": { + "md5": "7b219b2249b825f28051aae0230f2818", + "sha256": "8553bf332d8fbf39b500745ed9c4044a846fbba68e31de70e6fe83fdffcb0a9e" + } }, - "home_page": "http://pybee.org/toga", - "keywords": "", - "license": "New BSD", - "maintainer": "", - "maintainer_email": "", - "name": "toga", - "package_url": "https://pypi.org/project/toga/", - "platform": "", - "project_url": "https://pypi.org/project/toga/", - "release_url": "https://pypi.org/project/toga/0.2.15/", - "requires_dist": [ - "toga-cocoa; sys_platform==\"darwin\"", - "toga-gtk; sys_platform==\"linux\"", - "toga-winforms; sys_platform==\"win32\"" - ], - "requires_python": "", - "summary": "A Python native, OS native GUI toolkit.", - "version": "0.2.15" - }, - "last_serial": 3682527, - "releases": { - "0.3.0.dev1": [ - { - "comment_text": "", - "digests": { - "md5": "7b219b2249b825f28051aae0230f2818", - "sha256": "8553bf332d8fbf39b500745ed9c4044a846fbba68e31de70e6fe83fdffcb0a9e" - }, - "downloads": -1, - "filename": "toga-0.3.0.dev1-py3-none-any.whl", - "has_sig": false, - "md5_digest": "7b219b2249b825f28051aae0230f2818", - "packagetype": "bdist_wheel", - "python_version": "py3", - "size": 4789, - "upload_time": "2018-01-14T04:10:57", - "url": "https://files.pythonhosted.org/packages/eb/ef/ea806c706d3dc90d4bc8c412c0ad3515fd018074f5fdd4bd020bdd4c0c80/toga-0.3.0.dev1-py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "21b8fff4d110ddfb8c3eb939d7b35a1e", - "sha256": "4e5c77056792168a4e84c84bb7214dfb614b79f289dcbe1525be614483496439" - }, - "downloads": -1, - "filename": "toga-0.3.0.dev1.tar.gz", - "has_sig": false, - "md5_digest": "21b8fff4d110ddfb8c3eb939d7b35a1e", - "packagetype": "sdist", - "python_version": "source", - "size": 40187, - "upload_time": "2018-01-14T04:11:03", - "url": "https://files.pythonhosted.org/packages/4f/71/c55c15950f7275e761fe53fb0dc83fe4f5fba6199d7b8fb05d741dd33566/toga-0.3.0.dev1.tar.gz" + { + "filename": "toga-0.3.0.dev1.tar.gz", + "url": "https://files.pythonhosted.org/packages/4f/71/c55c15950f7275e761fe53fb0dc83fe4f5fba6199d7b8fb05d741dd33566/toga-0.3.0.dev1.tar.gz", + "hashes": { + "md5": "21b8fff4d110ddfb8c3eb939d7b35a1e", + "sha256": "4e5c77056792168a4e84c84bb7214dfb614b79f289dcbe1525be614483496439" } - ], - "0.3.0.dev2": [ - { - "comment_text": "", - "digests": { - "md5": "1aa1d5f48b81475569ea80ea04db8852", - "sha256": "6e0a2f800a351bbe8639802954d8d283a52b8cdde378541610ff2bfb3b24ad2f" - }, - "downloads": -1, - "filename": "toga-0.3.0.dev2-py3-none-any.whl", - "has_sig": false, - "md5_digest": "1aa1d5f48b81475569ea80ea04db8852", - "packagetype": "bdist_wheel", - "python_version": "py3", - "size": 4788, - "upload_time": "2018-01-14T04:52:03", - "url": "https://files.pythonhosted.org/packages/3a/68/d1f6feb2ded26b9f6c36cd2a826e895e0fa6bba5fe489ec30b9f3bc1dbea/toga-0.3.0.dev2-py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "a6558d0c5ba3cd763084e564001e9d24", - "sha256": "630d2f932bf7aba3a143d3a332190a46a0a3895f509099a20f033caadf131b76" - }, - "downloads": -1, - "filename": "toga-0.3.0.dev2.tar.gz", - "has_sig": false, - "md5_digest": "a6558d0c5ba3cd763084e564001e9d24", - "packagetype": "sdist", - "python_version": "source", - "size": 40203, - "upload_time": "2018-01-14T04:52:09", - "url": "https://files.pythonhosted.org/packages/e3/6a/3264b3d48733cac7546fee02fbc516621574252f7d86546255532b095415/toga-0.3.0.dev2.tar.gz" + }, + { + "filename": "toga-0.3.0.dev2-py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/3a/68/d1f6feb2ded26b9f6c36cd2a826e895e0fa6bba5fe489ec30b9f3bc1dbea/toga-0.3.0.dev2-py3-none-any.whl", + "hashes": { + "md5": "1aa1d5f48b81475569ea80ea04db8852", + "sha256": "6e0a2f800a351bbe8639802954d8d283a52b8cdde378541610ff2bfb3b24ad2f" } - ], - "0.3.0.dev3": [ - { - "comment_text": "", - "digests": { - "md5": "3398b704f327a489126e8d6038e43e0f", - "sha256": "2c073e70e75388791aeb55cc1ad90ef23fb17096b1260792020ef86c49641bfe" - }, - "downloads": -1, - "filename": "toga-0.3.0.dev3-py3-none-any.whl", - "has_sig": false, - "md5_digest": "3398b704f327a489126e8d6038e43e0f", - "packagetype": "bdist_wheel", - "python_version": "py3", - "size": 4807, - "upload_time": "2018-01-14T11:13:36", - "url": "https://files.pythonhosted.org/packages/5d/5c/3e59e5bff0c87346b2891e699841f98c0182102c85ed9ca5aff21a721ffa/toga-0.3.0.dev3-py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "f3d8c1af53f503b0fcce534777e92d9d", - "sha256": "aba75095959aebcbb7b68a565510325974fa0e64cea97bfa6430552b99a748b4" - }, - "downloads": -1, - "filename": "toga-0.3.0.dev3.tar.gz", - "has_sig": false, - "md5_digest": "f3d8c1af53f503b0fcce534777e92d9d", - "packagetype": "sdist", - "python_version": "source", - "size": 40215, - "upload_time": "2018-01-14T11:13:40", - "url": "https://files.pythonhosted.org/packages/2c/c1/54e589c84b5581316d74c20d802f49c225998def4eb20f65e8cbf463a19a/toga-0.3.0.dev3.tar.gz" + }, + { + "filename": "toga-0.3.0.dev2.tar.gz", + "url": "https://files.pythonhosted.org/packages/e3/6a/3264b3d48733cac7546fee02fbc516621574252f7d86546255532b095415/toga-0.3.0.dev2.tar.gz", + "hashes": { + "md5": "a6558d0c5ba3cd763084e564001e9d24", + "sha256": "630d2f932bf7aba3a143d3a332190a46a0a3895f509099a20f033caadf131b76" } - ], - "0.3.0.dev4": [ - { - "comment_text": "", - "digests": { - "md5": "cd410c02ac67ee3d04ad77724a8080c5", - "sha256": "34df30df0e46df9f1932e4f3c93b69d6d2ee9fd7ad061c1d1a28a72e5ea2b242" - }, - "downloads": -1, - "filename": "toga-0.3.0.dev4-py3-none-any.whl", - "has_sig": false, - "md5_digest": "cd410c02ac67ee3d04ad77724a8080c5", - "packagetype": "bdist_wheel", - "python_version": "py3", - "size": 4963, - "upload_time": "2018-01-25T04:52:33", - "url": "https://files.pythonhosted.org/packages/ae/70/bf39a92e395d970cba0d161ac20bb0b41868b8d5859b1b3f18e9806a11e5/toga-0.3.0.dev4-py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "f5781368d0f85cf2bf2d8a445d21354b", - "sha256": "80f26ca9a34667044d58c0bafd54ba41432247dc9c900d607a8b81222052d888" - }, - "downloads": -1, - "filename": "toga-0.3.0.dev4.tar.gz", - "has_sig": false, - "md5_digest": "f5781368d0f85cf2bf2d8a445d21354b", - "packagetype": "sdist", - "python_version": "source", - "size": 40465, - "upload_time": "2018-01-25T04:52:36", - "url": "https://files.pythonhosted.org/packages/0d/d2/487e31505d277ff3f620eb78a99925f0d0c8fb710045b2171dd7e18fceb1/toga-0.3.0.dev4.tar.gz" + }, + { + "filename": "toga-0.3.0.dev3-py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/5d/5c/3e59e5bff0c87346b2891e699841f98c0182102c85ed9ca5aff21a721ffa/toga-0.3.0.dev3-py3-none-any.whl", + "hashes": { + "md5": "3398b704f327a489126e8d6038e43e0f", + "sha256": "2c073e70e75388791aeb55cc1ad90ef23fb17096b1260792020ef86c49641bfe" } - ], - "0.3.0.dev5": [ - { - "comment_text": "", - "digests": { - "md5": "13ed9819a5821a33724285965da320ec", - "sha256": "1526b3d4d5b5824826544ae6e7fbf94415965e6009e57b158485fcb02a2481ab" - }, - "downloads": -1, - "filename": "toga-0.3.0.dev5-py3-none-any.whl", - "has_sig": false, - "md5_digest": "13ed9819a5821a33724285965da320ec", - "packagetype": "bdist_wheel", - "python_version": "py3", - "size": 4963, - "upload_time": "2018-02-21T05:38:24", - "url": "https://files.pythonhosted.org/packages/3f/34/965629c9a096a0d4d6d0f994fc2f3253929564c1804af4e837ba34abbe57/toga-0.3.0.dev5-py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "6bec5afc03b95423e46f433136067e63", - "sha256": "5d6b7e6a0cf4810187c7cf817e2f305e4dc11b267b31cd9faa5da7a0c8add26c" - }, - "downloads": -1, - "filename": "toga-0.3.0.dev5.tar.gz", - "has_sig": false, - "md5_digest": "6bec5afc03b95423e46f433136067e63", - "packagetype": "sdist", - "python_version": "source", - "size": 41459, - "upload_time": "2018-02-21T05:38:28", - "url": "https://files.pythonhosted.org/packages/f7/5b/43b93413246cada9d8206430a133d44556956d94eade3d38de4dde5d0cb7/toga-0.3.0.dev5.tar.gz" + }, + { + "filename": "toga-0.3.0.dev3.tar.gz", + "url": "https://files.pythonhosted.org/packages/2c/c1/54e589c84b5581316d74c20d802f49c225998def4eb20f65e8cbf463a19a/toga-0.3.0.dev3.tar.gz", + "hashes": { + "md5": "f3d8c1af53f503b0fcce534777e92d9d", + "sha256": "aba75095959aebcbb7b68a565510325974fa0e64cea97bfa6430552b99a748b4" } - ], - "0.3.0.dev6": [ - { - "comment_text": "", - "digests": { - "md5": "9d2bec13272880f6878986ea94f3b429", - "sha256": "02c1a2271cec7776809c33a27d48224d75163394d9b0cd46a9c28fa45e584fad" - }, - "downloads": -1, - "filename": "toga-0.3.0.dev6-py3-none-any.whl", - "has_sig": false, - "md5_digest": "9d2bec13272880f6878986ea94f3b429", - "packagetype": "bdist_wheel", - "python_version": "py3", - "size": 4959, - "upload_time": "2018-02-22T05:14:31", - "url": "https://files.pythonhosted.org/packages/c2/7a/94f832cf82ce57055af2d815a2329b98ff5117de7fe73931d9dbf5cf542e/toga-0.3.0.dev6-py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "da8e6b01527f2c552cba966a559b4b8d", - "sha256": "daa78cb5812b594c9eb5a48a62e0ec138e8689309243fee858b81c306612bbe8" - }, - "downloads": -1, - "filename": "toga-0.3.0.dev6.tar.gz", - "has_sig": false, - "md5_digest": "da8e6b01527f2c552cba966a559b4b8d", - "packagetype": "sdist", - "python_version": "source", - "size": 41473, - "upload_time": "2018-02-22T05:14:36", - "url": "https://files.pythonhosted.org/packages/f9/42/20ab19addc75e5161a8ea6337ca575c5118371116951a3eed96d30d37f8f/toga-0.3.0.dev6.tar.gz" + }, + { + "filename": "toga-0.3.0.dev4-py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/ae/70/bf39a92e395d970cba0d161ac20bb0b41868b8d5859b1b3f18e9806a11e5/toga-0.3.0.dev4-py3-none-any.whl", + "hashes": { + "md5": "cd410c02ac67ee3d04ad77724a8080c5", + "sha256": "34df30df0e46df9f1932e4f3c93b69d6d2ee9fd7ad061c1d1a28a72e5ea2b242" } - ], - "0.3.0.dev7": [ - { - "comment_text": "", - "digests": { - "md5": "9b7594c4d0f00dc2ab820a2e02fa1170", - "sha256": "1aac015f89db9766daa6901998146cdce88c56d3b0823bc2ef2cbaec989adbdf" - }, - "downloads": -1, - "filename": "toga-0.3.0.dev7-py3-none-any.whl", - "has_sig": false, - "md5_digest": "9b7594c4d0f00dc2ab820a2e02fa1170", - "packagetype": "bdist_wheel", - "python_version": "py3", - "size": 4963, - "upload_time": "2018-02-23T03:54:21", - "url": "https://files.pythonhosted.org/packages/c7/49/2d30ddb0b9d319f7170f1e0d2cc9a87d247922cb184f8c839a8c3e76199b/toga-0.3.0.dev7-py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "77f2b28b8bff397ee076ffe9ecd92775", - "sha256": "26a6c321d5423fb9468de3d19646a02d13f8f6c55d5ad275c3a2798180bb3c69" - }, - "downloads": -1, - "filename": "toga-0.3.0.dev7.tar.gz", - "has_sig": false, - "md5_digest": "77f2b28b8bff397ee076ffe9ecd92775", - "packagetype": "sdist", - "python_version": "source", - "size": 41471, - "upload_time": "2018-02-23T03:54:26", - "url": "https://files.pythonhosted.org/packages/ca/74/3b8d756bb72584d46ebcf51f6bec368c262b9905168ab53285202571e790/toga-0.3.0.dev7.tar.gz" + }, + { + "filename": "toga-0.3.0.dev4.tar.gz", + "url": "https://files.pythonhosted.org/packages/0d/d2/487e31505d277ff3f620eb78a99925f0d0c8fb710045b2171dd7e18fceb1/toga-0.3.0.dev4.tar.gz", + "hashes": { + "md5": "f5781368d0f85cf2bf2d8a445d21354b", + "sha256": "80f26ca9a34667044d58c0bafd54ba41432247dc9c900d607a8b81222052d888" } - ], - "0.3.0.dev8": [ - { - "comment_text": "", - "digests": { - "md5": "69a110faae192b7fecdfe37f373b144a", - "sha256": "9fcde5e120556a233d8d53b0594eaa68c5b88f5cd569ce2771d7fafa132ab50b" - }, - "downloads": -1, - "filename": "toga-0.3.0.dev8-py3-none-any.whl", - "has_sig": false, - "md5_digest": "69a110faae192b7fecdfe37f373b144a", - "packagetype": "bdist_wheel", - "python_version": "py3", - "size": 5306, - "upload_time": "2018-03-19T03:55:38", - "url": "https://files.pythonhosted.org/packages/e5/58/0ba5c784dca91273ce8925d3e2b19b04c8d484be4160c68554d0d9cb8591/toga-0.3.0.dev8-py3-none-any.whl" - }, - { - "comment_text": "", - "digests": { - "md5": "22dc187d753570f134e6a12d13f4678d", - "sha256": "7dbdbb96c3912d366e52fc5c51c418a14d84bfd0b9b12cd7094f3a1a942a40d7" - }, - "downloads": -1, - "filename": "toga-0.3.0.dev8.tar.gz", - "has_sig": false, - "md5_digest": "22dc187d753570f134e6a12d13f4678d", - "packagetype": "sdist", - "python_version": "source", - "size": 44784, - "upload_time": "2018-03-19T03:55:43", - "url": "https://files.pythonhosted.org/packages/e9/34/1138b884d83ad3abc76c5b308a19d28e59e3cab8ef56ed0112a779a49202/toga-0.3.0.dev8.tar.gz" + }, + { + "filename": "toga-0.3.0.dev5-py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/3f/34/965629c9a096a0d4d6d0f994fc2f3253929564c1804af4e837ba34abbe57/toga-0.3.0.dev5-py3-none-any.whl", + "hashes": { + "md5": "13ed9819a5821a33724285965da320ec", + "sha256": "1526b3d4d5b5824826544ae6e7fbf94415965e6009e57b158485fcb02a2481ab" } - ] - }, - "urls": [ + }, { - "comment_text": "", - "digests": { - "md5": "8f18e5c3cd697b923f37c694fe0c868c", - "sha256": "8cd2b2a084998ea28b96a34315a86abdbe596958acfe721f8fe1520645060620" - }, - "downloads": -1, - "filename": "toga-0.2.15-py3-none-any.whl", - "has_sig": false, - "md5_digest": "8f18e5c3cd697b923f37c694fe0c868c", - "packagetype": "bdist_wheel", - "python_version": "py3", - "size": 4290, - "upload_time": "2017-08-14T18:29:09", - "url": "https://files.pythonhosted.org/packages/b6/d3/655e023785ccfdb62c7f13173112b2e5ae5b507bf595852d0333ca8cd9fd/toga-0.2.15-py3-none-any.whl" + "filename": "toga-0.3.0.dev5.tar.gz", + "url": "https://files.pythonhosted.org/packages/f7/5b/43b93413246cada9d8206430a133d44556956d94eade3d38de4dde5d0cb7/toga-0.3.0.dev5.tar.gz", + "hashes": { + "md5": "6bec5afc03b95423e46f433136067e63", + "sha256": "5d6b7e6a0cf4810187c7cf817e2f305e4dc11b267b31cd9faa5da7a0c8add26c" + } }, { - "comment_text": "", - "digests": { - "md5": "23aa170a3c52f9b97a6c381f988d0aad", - "sha256": "e96ca2ccb1322ee22fdc93ae3d1614f14b1148dcdd7fbca28a36f097ed1b3dfa" - }, - "downloads": -1, - "filename": "toga-0.2.15.tar.gz", - "has_sig": false, - "md5_digest": "23aa170a3c52f9b97a6c381f988d0aad", - "packagetype": "sdist", - "python_version": "source", - "size": 31735, - "upload_time": "2017-08-14T18:29:24", - "url": "https://files.pythonhosted.org/packages/b6/2f/1ed6dcf88bf0b6d211bfdc05690d86600bf18cfc05ec87ef09237bd3795a/toga-0.2.15.tar.gz" + "filename": "toga-0.3.0.dev6-py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/c2/7a/94f832cf82ce57055af2d815a2329b98ff5117de7fe73931d9dbf5cf542e/toga-0.3.0.dev6-py3-none-any.whl", + "hashes": { + "md5": "9d2bec13272880f6878986ea94f3b429", + "sha256": "02c1a2271cec7776809c33a27d48224d75163394d9b0cd46a9c28fa45e584fad" + } + }, + { + "filename": "toga-0.3.0.dev6.tar.gz", + "url": "https://files.pythonhosted.org/packages/f9/42/20ab19addc75e5161a8ea6337ca575c5118371116951a3eed96d30d37f8f/toga-0.3.0.dev6.tar.gz", + "hashes": { + "md5": "da8e6b01527f2c552cba966a559b4b8d", + "sha256": "daa78cb5812b594c9eb5a48a62e0ec138e8689309243fee858b81c306612bbe8" + } + }, + { + "filename": "toga-0.3.0.dev7-py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/c7/49/2d30ddb0b9d319f7170f1e0d2cc9a87d247922cb184f8c839a8c3e76199b/toga-0.3.0.dev7-py3-none-any.whl", + "hashes": { + "md5": "9b7594c4d0f00dc2ab820a2e02fa1170", + "sha256": "1aac015f89db9766daa6901998146cdce88c56d3b0823bc2ef2cbaec989adbdf" + } + }, + { + "filename": "toga-0.3.0.dev7.tar.gz", + "url": "https://files.pythonhosted.org/packages/ca/74/3b8d756bb72584d46ebcf51f6bec368c262b9905168ab53285202571e790/toga-0.3.0.dev7.tar.gz", + "hashes": { + "md5": "77f2b28b8bff397ee076ffe9ecd92775", + "sha256": "26a6c321d5423fb9468de3d19646a02d13f8f6c55d5ad275c3a2798180bb3c69" + } + }, + { + "filename": "toga-0.3.0.dev8-py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/e5/58/0ba5c784dca91273ce8925d3e2b19b04c8d484be4160c68554d0d9cb8591/toga-0.3.0.dev8-py3-none-any.whl", + "hashes": { + "md5": "69a110faae192b7fecdfe37f373b144a", + "sha256": "9fcde5e120556a233d8d53b0594eaa68c5b88f5cd569ce2771d7fafa132ab50b" + } + }, + { + "filename": "toga-0.3.0.dev8.tar.gz", + "url": "https://files.pythonhosted.org/packages/e9/34/1138b884d83ad3abc76c5b308a19d28e59e3cab8ef56ed0112a779a49202/toga-0.3.0.dev8.tar.gz", + "hashes": { + "md5": "22dc187d753570f134e6a12d13f4678d", + "sha256": "7dbdbb96c3912d366e52fc5c51c418a14d84bfd0b9b12cd7094f3a1a942a40d7" + } } - ] + ], + "meta": { + "api-version": "1.0", + "_last-serial": 3682527 + } } diff --git a/tests/repositories/fixtures/pypi.org/json/tomlkit.json b/tests/repositories/fixtures/pypi.org/json/tomlkit.json index 3df488a50df..80dd31f293c 100644 --- a/tests/repositories/fixtures/pypi.org/json/tomlkit.json +++ b/tests/repositories/fixtures/pypi.org/json/tomlkit.json @@ -1,159 +1,45 @@ { - "info": { - "author": "Sébastien Eustace", - "author_email": "sebastien@eustace.io", - "bugtrack_url": null, - "classifiers": [ - "License :: OSI Approved :: MIT License", - "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": "", - "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/sdispater/tomlkit", - "keywords": "", - "license": "MIT", - "maintainer": "Sébastien Eustace", - "maintainer_email": "sebastien@eustace.io", - "name": "tomlkit", - "package_url": "https://pypi.org/project/tomlkit/", - "platform": "", - "project_url": "https://pypi.org/project/tomlkit/", - "project_urls": { - "Homepage": "https://github.com/sdispater/tomlkit", - "Repository": "https://github.com/sdispater/tomlkit" - }, - "release_url": "https://pypi.org/project/tomlkit/0.5.3/", - "requires_dist": [ - "enum34 (>=1.1,<2.0); python_version >= \"2.7\" and python_version < \"2.8\"", - "functools32 (>=3.2.3,<4.0.0); python_version >= \"2.7\" and python_version < \"2.8\"", - "typing (>=3.6,<4.0); python_version >= \"2.7\" and python_version < \"2.8\" or python_version >= \"3.4\" and python_version < \"3.5\"" - ], - "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", - "summary": "Style preserving TOML library", - "version": "0.5.3" - }, - "last_serial": 4504211, - "releases": { - "0.5.2": [ - { - "comment_text": "", - "digests": { - "md5": "7a7ef7c16a0e9b374933c116a7bb2f9f", - "sha256": "82a8fbb8d8c6af72e96ba00b9db3e20ef61be6c79082552c9363f4559702258b" - }, - "downloads": -1, - "filename": "tomlkit-0.5.2-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "7a7ef7c16a0e9b374933c116a7bb2f9f", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", - "size": 116499, - "upload_time": "2018-11-09T17:09:28", - "url": "https://files.pythonhosted.org/packages/9b/ca/8b60a94c01ee655ffb81d11c11396cb6fff89459317aa1fe3e98ee80f055/tomlkit-0.5.2-py2.py3-none-any.whl" + "name": "tomlkit", + "files": [ + { + "filename": "tomlkit-0.5.2-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/9b/ca/8b60a94c01ee655ffb81d11c11396cb6fff89459317aa1fe3e98ee80f055/tomlkit-0.5.2-py2.py3-none-any.whl", + "hashes": { + "md5": "7a7ef7c16a0e9b374933c116a7bb2f9f", + "sha256": "82a8fbb8d8c6af72e96ba00b9db3e20ef61be6c79082552c9363f4559702258b" }, - { - "comment_text": "", - "digests": { - "md5": "7abb629acee08fd77bafe858f4706f47", - "sha256": "a43e0195edc9b3c198cd4b5f0f3d427a395d47c4a76ceba7cc875ed030756c39" - }, - "downloads": -1, - "filename": "tomlkit-0.5.2.tar.gz", - "has_sig": false, - "md5_digest": "7abb629acee08fd77bafe858f4706f47", - "packagetype": "sdist", - "python_version": "source", - "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", - "size": 29813, - "upload_time": "2018-11-09T17:09:29", - "url": "https://files.pythonhosted.org/packages/f6/8c/c27d292cf7c0f04f0e1b5c75ab95dc328542ccbe9a809a1eada66c897bd2/tomlkit-0.5.2.tar.gz" - } - ], - "0.5.3": [ - { - "comment_text": "", - "digests": { - "md5": "0a6cf417df5d0fc911f89447c9a662a9", - "sha256": "f077456d35303e7908cc233b340f71e0bec96f63429997f38ca9272b7d64029e" - }, - "downloads": -1, - "filename": "tomlkit-0.5.3-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "0a6cf417df5d0fc911f89447c9a662a9", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", - "size": 116796, - "upload_time": "2018-11-19T20:05:37", - "url": "https://files.pythonhosted.org/packages/71/c6/06c014b92cc48270765d6a9418d82239b158d8a9b69e031b0e2c6598740b/tomlkit-0.5.3-py2.py3-none-any.whl" + "requires-python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + }, + { + "filename": "tomlkit-0.5.2.tar.gz", + "url": "https://files.pythonhosted.org/packages/f6/8c/c27d292cf7c0f04f0e1b5c75ab95dc328542ccbe9a809a1eada66c897bd2/tomlkit-0.5.2.tar.gz", + "hashes": { + "md5": "7abb629acee08fd77bafe858f4706f47", + "sha256": "a43e0195edc9b3c198cd4b5f0f3d427a395d47c4a76ceba7cc875ed030756c39" }, - { - "comment_text": "", - "digests": { - "md5": "a708470b53d689013f2fc9f0a7902adf", - "sha256": "d6506342615d051bc961f70bfcfa3d29b6616cc08a3ddfd4bc24196f16fd4ec2" - }, - "downloads": -1, - "filename": "tomlkit-0.5.3.tar.gz", - "has_sig": false, - "md5_digest": "a708470b53d689013f2fc9f0a7902adf", - "packagetype": "sdist", - "python_version": "source", - "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", - "size": 29864, - "upload_time": "2018-11-19T20:05:39", - "url": "https://files.pythonhosted.org/packages/f7/f7/bbd9213bfe76cb7821c897f9ed74877fd74993b4ca2fe9513eb5a31030f9/tomlkit-0.5.3.tar.gz" - } - ] - }, - "urls": [ + "requires-python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" + }, { - "comment_text": "", - "digests": { + "filename": "tomlkit-0.5.3-py2.py3-none-any.whl", + "url": "https://files.pythonhosted.org/packages/71/c6/06c014b92cc48270765d6a9418d82239b158d8a9b69e031b0e2c6598740b/tomlkit-0.5.3-py2.py3-none-any.whl", + "hashes": { "md5": "0a6cf417df5d0fc911f89447c9a662a9", "sha256": "f077456d35303e7908cc233b340f71e0bec96f63429997f38ca9272b7d64029e" }, - "downloads": -1, - "filename": "tomlkit-0.5.3-py2.py3-none-any.whl", - "has_sig": false, - "md5_digest": "0a6cf417df5d0fc911f89447c9a662a9", - "packagetype": "bdist_wheel", - "python_version": "py2.py3", - "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", - "size": 116796, - "upload_time": "2018-11-19T20:05:37", - "url": "https://files.pythonhosted.org/packages/71/c6/06c014b92cc48270765d6a9418d82239b158d8a9b69e031b0e2c6598740b/tomlkit-0.5.3-py2.py3-none-any.whl" + "requires-python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" }, { - "comment_text": "", - "digests": { + "filename": "tomlkit-0.5.3.tar.gz", + "url": "https://files.pythonhosted.org/packages/f7/f7/bbd9213bfe76cb7821c897f9ed74877fd74993b4ca2fe9513eb5a31030f9/tomlkit-0.5.3.tar.gz", + "hashes": { "md5": "a708470b53d689013f2fc9f0a7902adf", "sha256": "d6506342615d051bc961f70bfcfa3d29b6616cc08a3ddfd4bc24196f16fd4ec2" }, - "downloads": -1, - "filename": "tomlkit-0.5.3.tar.gz", - "has_sig": false, - "md5_digest": "a708470b53d689013f2fc9f0a7902adf", - "packagetype": "sdist", - "python_version": "source", - "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", - "size": 29864, - "upload_time": "2018-11-19T20:05:39", - "url": "https://files.pythonhosted.org/packages/f7/f7/bbd9213bfe76cb7821c897f9ed74877fd74993b4ca2fe9513eb5a31030f9/tomlkit-0.5.3.tar.gz" + "requires-python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" } - ] + ], + "meta": { + "api-version": "1.0", + "_last-serial": 4504211 + } } diff --git a/tests/repositories/fixtures/pypi.org/json/tomlkit/0.5.3.json b/tests/repositories/fixtures/pypi.org/json/tomlkit/0.5.3.json new file mode 100644 index 00000000000..4c27df88765 --- /dev/null +++ b/tests/repositories/fixtures/pypi.org/json/tomlkit/0.5.3.json @@ -0,0 +1,94 @@ +{ + "info": { + "author": "Sébastien Eustace", + "author_email": "sebastien@eustace.io", + "bugtrack_url": null, + "classifiers": [ + "License :: OSI Approved :: MIT License", + "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": "[github_release]: https://img.shields.io/github/release/sdispater/tomlkit.svg?logo=github&logoColor=white\n[pypi_version]: https://img.shields.io/pypi/v/tomlkit.svg?logo=python&logoColor=white\n[python_versions]: https://img.shields.io/pypi/pyversions/tomlkit.svg?logo=python&logoColor=white\n[github_license]: https://img.shields.io/github/license/sdispater/tomlkit.svg?logo=github&logoColor=white\n[travisci]: https://img.shields.io/travis/com/sdispater/tomlkit/master.svg?logo=travis&logoColor=white&label=Travis%20CI\n[appveyor]: https://img.shields.io/appveyor/ci/sdispater/tomlkit/master.svg?logo=appveyor&logoColor=white&label=AppVeyor\n\n[codecov]: https://img.shields.io/codecov/c/github/sdispater/tomlkit/master.svg?logo=data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAiIGhlaWdodD0iNDgiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CgogPGc+CiAgPHRpdGxlPmJhY2tncm91bmQ8L3RpdGxlPgogIDxyZWN0IGZpbGw9Im5vbmUiIGlkPSJjYW52YXNfYmFja2dyb3VuZCIgaGVpZ2h0PSI0MDIiIHdpZHRoPSI1ODIiIHk9Ii0xIiB4PSItMSIvPgogPC9nPgogPGc+CiAgPHRpdGxlPkxheWVyIDE8L3RpdGxlPgogIDxwYXRoIGlkPSJzdmdfMSIgZmlsbC1ydWxlPSJldmVub2RkIiBmaWxsPSIjZmZmZmZmIiBkPSJtMjUuMDE0LDBjLTEzLjc4NCwwLjAxIC0yNS4wMDQsMTEuMTQ5IC0yNS4wMTQsMjQuODMybDAsMC4wNjJsNC4yNTQsMi40ODJsMC4wNTgsLTAuMDM5YTEyLjIzOCwxMi4yMzggMCAwIDEgOS4wNzgsLTEuOTI4YTExLjg0NCwxMS44NDQgMCAwIDEgNS45OCwyLjk3NWwwLjczLDAuNjhsMC40MTMsLTAuOTA0YzAuNCwtMC44NzQgMC44NjIsLTEuNjk2IDEuMzc0LC0yLjQ0M2MwLjIwNiwtMC4zIDAuNDMzLC0wLjYwNCAwLjY5MiwtMC45MjlsMC40MjcsLTAuNTM1bC0wLjUyNiwtMC40NGExNy40NSwxNy40NSAwIDAgMCAtOC4xLC0zLjc4MWExNy44NTMsMTcuODUzIDAgMCAwIC04LjM3NSwwLjQ5YzIuMDIzLC04Ljg2OCA5LjgyLC0xNS4wNSAxOS4wMjcsLTE1LjA1N2M1LjE5NSwwIDEwLjA3OCwyLjAwNyAxMy43NTIsNS42NTJjMi42MTksMi41OTggNC40MjIsNS44MzUgNS4yMjQsOS4zNzJhMTcuOTA4LDE3LjkwOCAwIDAgMCAtNS4yMDgsLTAuNzlsLTAuMzE4LC0wLjAwMWExOC4wOTYsMTguMDk2IDAgMCAwIC0yLjA2NywwLjE1M2wtMC4wODcsMC4wMTJjLTAuMzAzLDAuMDQgLTAuNTcsMC4wODEgLTAuODEzLDAuMTI2Yy0wLjExOSwwLjAyIC0wLjIzNywwLjA0NSAtMC4zNTUsMC4wNjhjLTAuMjgsMC4wNTcgLTAuNTU0LDAuMTE5IC0wLjgxNiwwLjE4NWwtMC4yODgsMC4wNzNjLTAuMzM2LDAuMDkgLTAuNjc1LDAuMTkxIC0xLjAwNiwwLjNsLTAuMDYxLDAuMDJjLTAuNzQsMC4yNTEgLTEuNDc4LDAuNTU4IC0yLjE5LDAuOTE0bC0wLjA1NywwLjAyOWMtMC4zMTYsMC4xNTggLTAuNjM2LDAuMzMzIC0wLjk3OCwwLjUzNGwtMC4wNzUsMC4wNDVhMTYuOTcsMTYuOTcgMCAwIDAgLTQuNDE0LDMuNzhsLTAuMTU3LDAuMTkxYy0wLjMxNywwLjM5NCAtMC41NjcsMC43MjcgLTAuNzg3LDEuMDQ4Yy0wLjE4NCwwLjI3IC0wLjM2OSwwLjU2IC0wLjYsMC45NDJsLTAuMTI2LDAuMjE3Yy0wLjE4NCwwLjMxOCAtMC4zNDgsMC42MjIgLTAuNDg3LDAuOWwtMC4wMzMsMC4wNjFjLTAuMzU0LDAuNzExIC0wLjY2MSwxLjQ1NSAtMC45MTcsMi4yMTRsLTAuMDM2LDAuMTExYTE3LjEzLDE3LjEzIDAgMCAwIC0wLjg1NSw1LjY0NGwwLjAwMywwLjIzNGEyMy41NjUsMjMuNTY1IDAgMCAwIDAuMDQzLDAuODIyYzAuMDEsMC4xMyAwLjAyMywwLjI1OSAwLjAzNiwwLjM4OGMwLjAxNSwwLjE1OCAwLjAzNCwwLjMxNiAwLjA1MywwLjQ3MWwwLjAxMSwwLjA4OGwwLjAyOCwwLjIxNGMwLjAzNywwLjI2NCAwLjA4LDAuNTI1IDAuMTMsMC43ODdjMC41MDMsMi42MzcgMS43Niw1LjI3NCAzLjYzNSw3LjYyNWwwLjA4NSwwLjEwNmwwLjA4NywtMC4xMDRjMC43NDgsLTAuODg0IDIuNjAzLC0zLjY4NyAyLjc2LC01LjM2OWwwLjAwMywtMC4wMzFsLTAuMDE1LC0wLjAyOGExMS43MzYsMTEuNzM2IDAgMCAxIC0xLjMzMywtNS40MDdjMCwtNi4yODQgNC45NCwtMTEuNTAyIDExLjI0MywtMTEuODhsMC40MTQsLTAuMDE1YzIuNTYxLC0wLjA1OCA1LjA2NCwwLjY3MyA3LjIzLDIuMTM2bDAuMDU4LDAuMDM5bDQuMTk3LC0yLjQ0bDAuMDU1LC0wLjAzM2wwLC0wLjA2MmMwLjAwNiwtNi42MzIgLTIuNTkyLC0xMi44NjUgLTcuMzE0LC0xNy41NTFjLTQuNzE2LC00LjY3OSAtMTAuOTkxLC03LjI1NSAtMTcuNjcyLC03LjI1NSIvPgogPC9nPgo8L3N2Zz4=&label=Codecov\n\n[![GitHub Release][github_release]](https://github.com/sdispater/tomlkit/releases/)\n[![PyPI Version][pypi_version]](https://pypi.python.org/pypi/tomlkit/)\n[![Python Versions][python_versions]](https://pypi.python.org/pypi/tomlkit/)\n[![License][github_license]](https://github.com/sdispater/tomlkit/blob/master/LICENSE)\n
\n[![Travis CI][travisci]](https://travis-ci.com/sdispater/tomlkit)\n[![AppVeyor][appveyor]](https://ci.appveyor.com/project/sdispater/tomlkit)\n[![Codecov][codecov]](https://codecov.io/gh/sdispater/tomlkit)\n\n# TOML Kit - Style-preserving TOML library for Python\n\nTOML Kit is a **0.5.0-compliant** [TOML](https://github.com/toml-lang/toml) library.\n\nIt includes a parser that preserves all comments, indentations, whitespace and internal element ordering,\nand makes them accessible and editable via an intuitive API.\n\nYou can also create new TOML documents from scratch using the provided helpers.\n\nPart of the implementation as been adapted, improved and fixed from [Molten](https://github.com/LeopoldArkham/Molten).\n\n## Usage\n\n### Parsing\n\nTOML Kit comes with a fast and style-preserving parser to help you access\nthe content of TOML files and strings.\n\n```python\n>>> from tomlkit import dumps\n>>> from tomlkit import parse # you can also use loads\n\n>>> content = \"\"\"[table]\n... foo = \"bar\" # String\n... \"\"\"\n>>> doc = parse(content)\n\n# doc is a TOMLDocument instance that holds all the information\n# about the TOML string.\n# It behaves like a standard dictionary.\n\n>>> assert doc[\"table\"][\"foo\"] == \"bar\"\n\n# The string generated from the document is exactly the same\n# as the original string\n>>> assert dumps(doc) == content\n```\n\n### Modifying\n\nTOML Kit provides an intuitive API to modify TOML documents.\n\n```python\n>>> from tomlkit import dumps\n>>> from tomlkit import parse\n>>> from tomlkit import table\n\n>>> doc = parse(\"\"\"[table]\n... foo = \"bar\" # String\n... \"\"\")\n\n>>> doc[\"table\"][\"baz\"] = 13\n\n>>> dumps(doc)\n\"\"\"[table]\nfoo = \"bar\" # String\nbaz = 13\n\"\"\"\n\n# Add a new table\n>>> tab = table()\n>>> tab.add(\"array\", [1, 2, 3])\n\n>>> doc[\"table2\"] = tab\n\n>>> dumps(doc)\n\"\"\"[table]\nfoo = \"bar\" # String\nbaz = 13\n\n[table2]\narray = [1, 2, 3]\n\"\"\"\n\n# Remove the newly added table\n>>> doc.remove(\"table2\")\n# del doc[\"table2] is also possible\n```\n\n### Writing\n\nYou can also write a new TOML document from scratch.\n\nLet's say we want to create this following document:\n\n```toml\n# This is a TOML document.\n\ntitle = \"TOML Example\"\n\n[owner]\nname = \"Tom Preston-Werner\"\norganization = \"GitHub\"\nbio = \"GitHub Cofounder & CEO\\nLikes tater tots and beer.\"\ndob = 1979-05-27T07:32:00Z # First class dates? Why not?\n\n[database]\nserver = \"192.168.1.1\"\nports = [ 8001, 8001, 8002 ]\nconnection_max = 5000\nenabled = true\n```\n\nIt can be created with the following code:\n\n```python\n>>> from tomlkit import comment\n>>> from tomlkit import document\n>>> from tomlkit import nl\n>>> from tomlkit import table\n\n>>> doc = document()\n>>> doc.add(comment(\"This is a TOML document.\"))\n>>> doc.add(nl())\n>>> doc.add(\"title\", \"TOML Example\")\n# Using doc[\"title\"] = \"TOML Example\" is also possible\n\n>>> owner = table()\n>>> owner.add(\"name\", \"Tom Preston-Werner\")\n>>> owner.add(\"organization\", \"GitHub\")\n>>> owner.add(\"bio\", \"GitHub Cofounder & CEO\\nLikes tater tots and beer.\")\n>>> owner.add(\"dob\", datetime(1979, 5, 27, 7, 32, tzinfo=utc))\n>>> owner[\"dob\"].comment(\"First class dates? Why not?\")\n\n# Adding the table to the document\n>>> doc.add(\"owner\", owner)\n\n>>> database = table()\n>>> database[\"server\"] = \"192.168.1.1\"\n>>> database[\"ports\"] = [8001, 8001, 8002]\n>>> database[\"connection_max\"] = 5000\n>>> database[\"enabled\"] = True\n\n>>> doc[\"database\"] = database\n```\n\n\n## Installation\n\nIf you are using [Poetry](https://poetry.eustace.io),\nadd `tomlkit` to your `pyproject.toml` file by using:\n\n```bash\npoetry add tomlkit\n```\n\nIf not, you can use `pip`:\n\n```bash\npip install tomlkit\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/sdispater/tomlkit", + "keywords": "", + "license": "MIT", + "maintainer": "Sébastien Eustace", + "maintainer_email": "sebastien@eustace.io", + "name": "tomlkit", + "package_url": "https://pypi.org/project/tomlkit/", + "platform": "", + "project_url": "https://pypi.org/project/tomlkit/", + "project_urls": { + "Homepage": "https://github.com/sdispater/tomlkit", + "Repository": "https://github.com/sdispater/tomlkit" + }, + "release_url": "https://pypi.org/project/tomlkit/0.5.3/", + "requires_dist": [ + "typing (>=3.6,<4.0); python_version >= \"2.7\" and python_version < \"2.8\" or python_version >= \"3.4\" and python_version < \"3.5\"", + "functools32 (>=3.2.3,<4.0.0); python_version >= \"2.7\" and python_version < \"2.8\"", + "enum34 (>=1.1,<2.0); python_version >= \"2.7\" and python_version < \"2.8\"" + ], + "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", + "summary": "Style preserving TOML library", + "version": "0.5.3", + "yanked": false, + "yanked_reason": null + }, + "last_serial": 14359948, + "urls": [ + { + "comment_text": "", + "digests": { + "md5": "0a6cf417df5d0fc911f89447c9a662a9", + "sha256": "f077456d35303e7908cc233b340f71e0bec96f63429997f38ca9272b7d64029e" + }, + "downloads": -1, + "filename": "tomlkit-0.5.3-py2.py3-none-any.whl", + "has_sig": false, + "md5_digest": "0a6cf417df5d0fc911f89447c9a662a9", + "packagetype": "bdist_wheel", + "python_version": "py2.py3", + "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", + "size": 116796, + "upload_time": "2018-11-19T20:05:37", + "upload_time_iso_8601": "2018-11-19T20:05:37.276181Z", + "url": "https://files.pythonhosted.org/packages/71/c6/06c014b92cc48270765d6a9418d82239b158d8a9b69e031b0e2c6598740b/tomlkit-0.5.3-py2.py3-none-any.whl", + "yanked": false, + "yanked_reason": null + }, + { + "comment_text": "", + "digests": { + "md5": "a708470b53d689013f2fc9f0a7902adf", + "sha256": "d6506342615d051bc961f70bfcfa3d29b6616cc08a3ddfd4bc24196f16fd4ec2" + }, + "downloads": -1, + "filename": "tomlkit-0.5.3.tar.gz", + "has_sig": false, + "md5_digest": "a708470b53d689013f2fc9f0a7902adf", + "packagetype": "sdist", + "python_version": "source", + "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", + "size": 29864, + "upload_time": "2018-11-19T20:05:39", + "upload_time_iso_8601": "2018-11-19T20:05:39.200001Z", + "url": "https://files.pythonhosted.org/packages/f7/f7/bbd9213bfe76cb7821c897f9ed74877fd74993b4ca2fe9513eb5a31030f9/tomlkit-0.5.3.tar.gz", + "yanked": false, + "yanked_reason": null + } + ], + "vulnerabilities": [] +} diff --git a/tests/repositories/fixtures/pypi.org/json/trackpy.json b/tests/repositories/fixtures/pypi.org/json/trackpy.json index 8470c599e31..b961a2ac596 100644 --- a/tests/repositories/fixtures/pypi.org/json/trackpy.json +++ b/tests/repositories/fixtures/pypi.org/json/trackpy.json @@ -1,94 +1,25 @@ { - "info": { - "author": "Trackpy Contributors", - "author_email": "daniel.b.allan@gmail.com", - "bugtrack_url": null, - "classifiers": [], - "description": "", - "description_content_type": "", - "docs_url": null, - "download_url": "", - "downloads": { - "last_day": -1, - "last_month": -1, - "last_week": -1 - }, - "home_page": "https://github.com/soft-matter/trackpy", - "keywords": "", - "license": "", - "maintainer": "", - "maintainer_email": "", - "name": "trackpy", - "package_url": "https://pypi.org/project/trackpy/", - "platform": "", - "project_url": "https://pypi.org/project/trackpy/", - "project_urls": { - "Homepage": "https://github.com/soft-matter/trackpy" - }, - "release_url": "https://pypi.org/project/trackpy/0.4.1/", - "requires_dist": null, - "requires_python": "", - "summary": "particle-tracking toolkit", - "version": "0.4.1" - }, - "last_serial": 3786947, - "releases": { - "0.4.1": [ - { - "comment_text": "", - "digests": { - "md5": "4c92e8b74840f57c6047f56a4a4412c4", - "sha256": "f682f75e99f6c29c65e8531899b957c67d9d5a027b28b44258fa2c4a18e851cd" - }, - "downloads": -1, - "filename": "trackpy-0.4.1.tar.gz", - "has_sig": false, - "md5_digest": "4c92e8b74840f57c6047f56a4a4412c4", - "packagetype": "sdist", - "python_version": "source", - "requires_python": null, - "size": 121998, - "upload_time": "2018-04-21T09:59:50", - "url": "https://files.pythonhosted.org/packages/62/31/797febf2ea8ea316c345c1d0f10503c3901f3fca5c3ffdc6e92717efdcad/trackpy-0.4.1.tar.gz" - } - ], - "unknown": [ - { - "comment_text": "", - "digests": { - "md5": "6a879fe7871bd5c62d41b5a2ed84a5cd", - "sha256": "88fedb53b03451a56422d4ecb393ea6bb043e821b3ee1e6518485b303e3bddf5" - }, - "downloads": -1, - "filename": "trackpy-unknown.tar.gz", - "has_sig": false, - "md5_digest": "6a879fe7871bd5c62d41b5a2ed84a5cd", - "packagetype": "sdist", - "python_version": "source", - "requires_python": null, - "size": 63292, - "upload_time": "2014-10-13T17:33:16", - "url": "https://files.pythonhosted.org/packages/35/23/3b6422d3c006251e2ad857f5fe520b193d473154f88d1f27de50798f2c6c/trackpy-unknown.tar.gz" - } - ] - }, - "urls": [ + "name": "trackpy", + "files": [ { - "comment_text": "", - "digests": { + "filename": "trackpy-0.4.1.tar.gz", + "url": "https://files.pythonhosted.org/packages/62/31/797febf2ea8ea316c345c1d0f10503c3901f3fca5c3ffdc6e92717efdcad/trackpy-0.4.1.tar.gz", + "hashes": { "md5": "4c92e8b74840f57c6047f56a4a4412c4", "sha256": "f682f75e99f6c29c65e8531899b957c67d9d5a027b28b44258fa2c4a18e851cd" - }, - "downloads": -1, - "filename": "trackpy-0.4.1.tar.gz", - "has_sig": false, - "md5_digest": "4c92e8b74840f57c6047f56a4a4412c4", - "packagetype": "sdist", - "python_version": "source", - "requires_python": null, - "size": 121998, - "upload_time": "2018-04-21T09:59:50", - "url": "https://files.pythonhosted.org/packages/62/31/797febf2ea8ea316c345c1d0f10503c3901f3fca5c3ffdc6e92717efdcad/trackpy-0.4.1.tar.gz" + } + }, + { + "filename": "trackpy-unknown.tar.gz", + "url": "https://files.pythonhosted.org/packages/35/23/3b6422d3c006251e2ad857f5fe520b193d473154f88d1f27de50798f2c6c/trackpy-unknown.tar.gz", + "hashes": { + "md5": "6a879fe7871bd5c62d41b5a2ed84a5cd", + "sha256": "88fedb53b03451a56422d4ecb393ea6bb043e821b3ee1e6518485b303e3bddf5" + } } - ] + ], + "meta": { + "api-version": "1.0", + "_last-serial": 3786947 + } } diff --git a/tests/repositories/fixtures/pypi.org/json/trackpy/0.4.1.json b/tests/repositories/fixtures/pypi.org/json/trackpy/0.4.1.json new file mode 100644 index 00000000000..28035cee218 --- /dev/null +++ b/tests/repositories/fixtures/pypi.org/json/trackpy/0.4.1.json @@ -0,0 +1,60 @@ +{ + "info": { + "author": "Trackpy Contributors", + "author_email": "daniel.b.allan@gmail.com", + "bugtrack_url": null, + "classifiers": [], + "description": "trackpy\n=======\n\n|build status| |Build status| |DOI|\n\nWhat is it?\n-----------\n\n**trackpy** is a Python package for particle tracking in 2D, 3D, and\nhigher dimensions. `**Read the\nwalkthrough** `__\nto skim or study an example project from start to finish.\n\nDocumentation\n-------------\n\n`**Read the documentation** `__\nfor\n\n- an introduction\n- tutorials on the basics, 3D tracking, and much, much more\n- easy `installation\n instructions `__\n- the reference guide\n\nIf you use trackpy for published research, please `cite the\nrelease `__\nboth to credit the contributors, and to direct your readers to the exact\nversion of trackpy they could use to reproduce your results.\n\n.. |build status| image:: https://travis-ci.org/soft-matter/trackpy.png?branch=master\n :target: https://travis-ci.org/soft-matter/trackpy\n.. |Build status| image:: https://ci.appveyor.com/api/projects/status/bc5umcboh3elm8oh?svg=true\n :target: https://ci.appveyor.com/project/caspervdw/trackpy\n.. |DOI| image:: https://zenodo.org/badge/doi/10.5281/zenodo.1213240.svg\n :target: http://dx.doi.org/10.5281/zenodo.1213240", + "description_content_type": "", + "docs_url": null, + "download_url": "", + "downloads": { + "last_day": -1, + "last_month": -1, + "last_week": -1 + }, + "home_page": "https://github.com/soft-matter/trackpy", + "keywords": "", + "license": "", + "maintainer": "", + "maintainer_email": "", + "name": "trackpy", + "package_url": "https://pypi.org/project/trackpy/", + "platform": "", + "project_url": "https://pypi.org/project/trackpy/", + "project_urls": { + "Homepage": "https://github.com/soft-matter/trackpy" + }, + "release_url": "https://pypi.org/project/trackpy/0.4.1/", + "requires_dist": null, + "requires_python": "", + "summary": "particle-tracking toolkit", + "version": "0.4.1", + "yanked": false, + "yanked_reason": null + }, + "last_serial": 10042261, + "urls": [ + { + "comment_text": "", + "digests": { + "md5": "4c92e8b74840f57c6047f56a4a4412c4", + "sha256": "f682f75e99f6c29c65e8531899b957c67d9d5a027b28b44258fa2c4a18e851cd" + }, + "downloads": -1, + "filename": "trackpy-0.4.1.tar.gz", + "has_sig": false, + "md5_digest": "4c92e8b74840f57c6047f56a4a4412c4", + "packagetype": "sdist", + "python_version": "source", + "requires_python": null, + "size": 121998, + "upload_time": "2018-04-21T09:59:50", + "upload_time_iso_8601": "2018-04-21T09:59:50.546774Z", + "url": "https://files.pythonhosted.org/packages/62/31/797febf2ea8ea316c345c1d0f10503c3901f3fca5c3ffdc6e92717efdcad/trackpy-0.4.1.tar.gz", + "yanked": false, + "yanked_reason": null + } + ], + "vulnerabilities": [] +} diff --git a/tests/repositories/fixtures/pypi.org/json/twisted.json b/tests/repositories/fixtures/pypi.org/json/twisted.json index 191ac50a98a..18068a6e280 100644 --- a/tests/repositories/fixtures/pypi.org/json/twisted.json +++ b/tests/repositories/fixtures/pypi.org/json/twisted.json @@ -1,82 +1,17 @@ { - "info": { - "author": "Twisted Matrix Laboratories", - "author_email": "twisted-python@twistedmatrix.com", - "bugtrack_url": null, - "classifiers": [ - "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": "description", - "description_content_type": "", - "docs_url": null, - "download_url": "", - "downloads": { - "last_day": -1, - "last_month": -1, - "last_week": -1 - }, - "home_page": "http://twistedmatrix.com/", - "keywords": "", - "license": "MIT", - "maintainer": "Glyph Lefkowitz", - "maintainer_email": "glyph@twistedmatrix.com", - "name": "Twisted", - "package_url": "https://pypi.org/project/Twisted/", - "platform": "", - "project_url": "https://pypi.org/project/Twisted/", - "project_urls": { - "Homepage": "http://twistedmatrix.com/" - }, - "release_url": "https://pypi.org/project/Twisted/18.9.0/", - "requires_dist": null, - "requires_python": "", - "summary": "An asynchronous networking framework written in Python", - "version": "18.9.0" - }, - "last_serial": 4376865, - "releases": { - "18.9.0": [ - { - "comment_text": "", - "digests": { - "md5": "20fe2ec156e6e45b0b0d2ff06d9e828f", - "sha256": "294be2c6bf84ae776df2fc98e7af7d6537e1c5e60a46d33c3ce2a197677da395" - }, - "downloads": -1, - "filename": "Twisted-18.9.0.tar.bz2", - "has_sig": false, - "md5_digest": "20fe2ec156e6e45b0b0d2ff06d9e828f", - "packagetype": "sdist", - "python_version": "source", - "requires_python": null, - "size": 3088398, - "upload_time": "2018-10-15T09:11:22", - "url": "https://files.pythonhosted.org/packages/5d/0e/a72d85a55761c2c3ff1cb968143a2fd5f360220779ed90e0fadf4106d4f2/Twisted-18.9.0.tar.bz2" - } - ] - }, - "urls": [ + "name": "Twisted", + "files": [ { - "comment_text": "", - "digests": { + "filename": "Twisted-18.9.0.tar.bz2", + "url": "https://files.pythonhosted.org/packages/5d/0e/a72d85a55761c2c3ff1cb968143a2fd5f360220779ed90e0fadf4106d4f2/Twisted-18.9.0.tar.bz2", + "hashes": { "md5": "20fe2ec156e6e45b0b0d2ff06d9e828f", "sha256": "294be2c6bf84ae776df2fc98e7af7d6537e1c5e60a46d33c3ce2a197677da395" - }, - "downloads": -1, - "filename": "Twisted-18.9.0.tar.bz2", - "has_sig": false, - "md5_digest": "20fe2ec156e6e45b0b0d2ff06d9e828f", - "packagetype": "sdist", - "python_version": "source", - "requires_python": null, - "size": 3088398, - "upload_time": "2018-10-15T09:11:22", - "url": "https://files.pythonhosted.org/packages/5d/0e/a72d85a55761c2c3ff1cb968143a2fd5f360220779ed90e0fadf4106d4f2/Twisted-18.9.0.tar.bz2" + } } - ] + ], + "meta": { + "api-version": "1.0", + "_last-serial": 4376865 + } } diff --git a/tests/repositories/fixtures/pypi.org/json/twisted/18.9.0.json b/tests/repositories/fixtures/pypi.org/json/twisted/18.9.0.json new file mode 100644 index 00000000000..301a4468a09 --- /dev/null +++ b/tests/repositories/fixtures/pypi.org/json/twisted/18.9.0.json @@ -0,0 +1,237 @@ +{ + "info": { + "author": "Twisted Matrix Laboratories", + "author_email": "twisted-python@twistedmatrix.com", + "bugtrack_url": null, + "classifiers": [ + "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": "An extensible framework for Python programming, with special focus\non event-based network programming and multiprotocol integration.", + "description_content_type": "", + "docs_url": null, + "download_url": "", + "downloads": { + "last_day": -1, + "last_month": -1, + "last_week": -1 + }, + "home_page": "http://twistedmatrix.com/", + "keywords": "", + "license": "MIT", + "maintainer": "Glyph Lefkowitz", + "maintainer_email": "glyph@twistedmatrix.com", + "name": "Twisted", + "package_url": "https://pypi.org/project/Twisted/", + "platform": "", + "project_url": "https://pypi.org/project/Twisted/", + "project_urls": { + "Homepage": "http://twistedmatrix.com/" + }, + "release_url": "https://pypi.org/project/Twisted/18.9.0/", + "requires_dist": null, + "requires_python": "", + "summary": "An asynchronous networking framework written in Python", + "version": "18.9.0", + "yanked": false, + "yanked_reason": null + }, + "last_serial": 13478846, + "urls": [ + { + "comment_text": "", + "digests": { + "md5": "20fe2ec156e6e45b0b0d2ff06d9e828f", + "sha256": "294be2c6bf84ae776df2fc98e7af7d6537e1c5e60a46d33c3ce2a197677da395" + }, + "downloads": -1, + "filename": "Twisted-18.9.0.tar.bz2", + "has_sig": false, + "md5_digest": "20fe2ec156e6e45b0b0d2ff06d9e828f", + "packagetype": "sdist", + "python_version": "source", + "requires_python": null, + "size": 3088398, + "upload_time": "2018-10-15T09:11:22", + "upload_time_iso_8601": "2018-10-15T09:11:22.298247Z", + "url": "https://files.pythonhosted.org/packages/5d/0e/a72d85a55761c2c3ff1cb968143a2fd5f360220779ed90e0fadf4106d4f2/Twisted-18.9.0.tar.bz2", + "yanked": false, + "yanked_reason": null + } + ], + "vulnerabilities": [ + { + "aliases": [ + "CVE-2019-12387" + ], + "details": "In Twisted before 19.2.1, twisted.web did not validate or sanitize URIs or HTTP methods, allowing an attacker to inject invalid characters such as CRLF.", + "fixed_in": [ + "19.2.1" + ], + "id": "PYSEC-2019-128", + "link": "https://osv.dev/vulnerability/PYSEC-2019-128", + "source": "osv", + "summary": null + }, + { + "aliases": [ + "CVE-2020-10109" + ], + "details": "In Twisted Web through 19.10.0, there was an HTTP request splitting vulnerability. When presented with a content-length and a chunked encoding header, the content-length took precedence and the remainder of the request body was interpreted as a pipelined request.", + "fixed_in": [ + "20.3.0rc1" + ], + "id": "PYSEC-2020-260", + "link": "https://osv.dev/vulnerability/PYSEC-2020-260", + "source": "osv", + "summary": null + }, + { + "aliases": [ + "CVE-2019-12855" + ], + "details": "In words.protocols.jabber.xmlstream in Twisted through 19.2.1, XMPP support did not verify certificates when used with TLS, allowing an attacker to MITM connections.", + "fixed_in": [ + "19.7.0rc1" + ], + "id": "PYSEC-2019-129", + "link": "https://osv.dev/vulnerability/PYSEC-2019-129", + "source": "osv", + "summary": null + }, + { + "aliases": [ + "CVE-2020-10108" + ], + "details": "In Twisted Web through 19.10.0, there was an HTTP request splitting vulnerability. When presented with two content-length headers, it ignored the first header. When the second content-length value was set to zero, the request body was interpreted as a pipelined request.", + "fixed_in": [ + "20.3.0rc1" + ], + "id": "PYSEC-2020-259", + "link": "https://osv.dev/vulnerability/PYSEC-2020-259", + "source": "osv", + "summary": null + }, + { + "aliases": [ + "CVE-2022-21712", + "GHSA-92x2-jw7w-xvvx" + ], + "details": "twisted is an event-driven networking engine written in Python. In affected versions twisted exposes cookies and authorization headers when following cross-origin redirects. This issue is present in the `twited.web.RedirectAgent` and `twisted.web. BrowserLikeRedirectAgent` functions. Users are advised to upgrade. There are no known workarounds.", + "fixed_in": [ + "22.1.0" + ], + "id": "PYSEC-2022-27", + "link": "https://osv.dev/vulnerability/PYSEC-2022-27", + "source": "osv", + "summary": null + }, + { + "aliases": [ + "CVE-2022-24801", + "GHSA-c2jg-hw38-jrqq" + ], + "details": "Twisted is an event-based framework for internet applications, supporting Python 3.6+. Prior to version 22.4.0rc1, the Twisted Web HTTP 1.1 server, located in the `twisted.web.http` module, parsed several HTTP request constructs more leniently than permitted by RFC 7230. This non-conformant parsing can lead to desync if requests pass through multiple HTTP parsers, potentially resulting in HTTP request smuggling. Users who may be affected use Twisted Web's HTTP 1.1 server and/or proxy and also pass requests through a different HTTP server and/or proxy. The Twisted Web client is not affected. The HTTP 2.0 server uses a different parser, so it is not affected. The issue has been addressed in Twisted 22.4.0rc1. Two workarounds are available: Ensure any vulnerabilities in upstream proxies have been addressed, such as by upgrading them; or filter malformed requests by other means, such as configuration of an upstream proxy.", + "fixed_in": [ + "22.4.0" + ], + "id": "PYSEC-2022-195", + "link": "https://osv.dev/vulnerability/PYSEC-2022-195", + "source": "osv", + "summary": null + }, + { + "aliases": [ + "CVE-2022-24801" + ], + "details": "The Twisted Web HTTP 1.1 server, located in the `twisted.web.http` module, parsed several HTTP request constructs more leniently than permitted by RFC 7230:\n\n1. The Content-Length header value could have a `+` or `-` prefix.\n2. Illegal characters were permitted in chunked extensions, such as the LF (`\\n`) character.\n3. Chunk lengths, which are expressed in hexadecimal format, could have a prefix of `0x`.\n4. HTTP headers were stripped of all leading and trailing ASCII whitespace, rather than only space and HTAB (`\\t`).\n\nThis non-conformant parsing can lead to desync if requests pass through multiple HTTP parsers, potentially resulting in HTTP request smuggling.\n\n### Impact\n\nYou may be affected if:\n\n1. You use Twisted Web's HTTP 1.1 server and/or proxy\n2. You also pass requests through a different HTTP server and/or proxy\n\nThe specifics of the other HTTP parser matter. The original report notes that some versions of Apache Traffic Server and HAProxy have been vulnerable in the past. HTTP request smuggling may be a serious concern if you use a proxy to perform request validation or access control.\n\nThe Twisted Web client is not affected. The HTTP 2.0 server uses a different parser, so it is not affected.\n\n### Patches\n\nThe issue has been addressed in Twisted 22.4.0rc1 and later.\n\n### Workarounds\n\nOther than upgrading Twisted, you could:\n\n* Ensure any vulnerabilities in upstream proxies have been addressed, such as by upgrading them\n* Filter malformed requests by other means, such as configuration of an upstream proxy\n\n### Credits\n\nThis issue was initially reported by [Zhang Zeyu](https://github.com/zeyu2001).", + "fixed_in": [ + "22.4.0rc1" + ], + "id": "GHSA-c2jg-hw38-jrqq", + "link": "https://osv.dev/vulnerability/GHSA-c2jg-hw38-jrqq", + "source": "osv", + "summary": null + }, + { + "aliases": [ + "CVE-2020-10109" + ], + "details": "In Twisted Web through 20.3.0, there was an HTTP request splitting vulnerability. When presented with a content-length and a chunked encoding header, the content-length took precedence and the remainder of the request body was interpreted as a pipelined request.", + "fixed_in": [ + "20.3.0" + ], + "id": "GHSA-p5xh-vx83-mxcj", + "link": "https://osv.dev/vulnerability/GHSA-p5xh-vx83-mxcj", + "source": "osv", + "summary": null + }, + { + "aliases": [], + "details": "### Impact\nTwisted web servers that utilize the optional HTTP/2 support suffer from the following flow-control related vulnerabilities:\n\nPing flood: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-9512\nReset flood: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-9514\nSettings flood: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-9515\n\nA Twisted web server supports HTTP/2 requests if you've installed the [`http2` optional dependency set](https://twistedmatrix.com/documents/19.2.0/installation/howto/optional.html).\n\n### Workarounds\nThere are no workarounds.\n\n### References\nhttps://github.com/Netflix/security-bulletins/blob/master/advisories/third-party/2019-002.md\n\n### For more information\nIf you have any questions or comments about this advisory:\n* Open an issue in [Twisted's Trac](https://twistedmatrix.com/trac/)\n", + "fixed_in": [ + "19.10.0" + ], + "id": "GHSA-32gv-6cf3-wcmq", + "link": "https://osv.dev/vulnerability/GHSA-32gv-6cf3-wcmq", + "source": "osv", + "summary": null + }, + { + "aliases": [ + "CVE-2019-12855" + ], + "details": "In words.protocols.jabber.xmlstream in Twisted through 19.2.1, XMPP support did not verify certificates when used with TLS, allowing an attacker to MITM connections.", + "fixed_in": [ + "19.7.0" + ], + "id": "GHSA-65rm-h285-5cc5", + "link": "https://osv.dev/vulnerability/GHSA-65rm-h285-5cc5", + "source": "osv", + "summary": null + }, + { + "aliases": [ + "CVE-2020-10108" + ], + "details": "In Twisted Web through 20.3.0, there was an HTTP request splitting vulnerability. When presented with two content-length headers, it ignored the first header. When the second content-length value was set to zero, the request body was interpreted as a pipelined request.", + "fixed_in": [ + "20.3.0" + ], + "id": "GHSA-h96w-mmrf-2h6v", + "link": "https://osv.dev/vulnerability/GHSA-h96w-mmrf-2h6v", + "source": "osv", + "summary": null + }, + { + "aliases": [ + "CVE-2019-12387" + ], + "details": "In Twisted before 19.2.1, twisted.web did not validate or sanitize URIs or HTTP methods, allowing an attacker to inject invalid characters such as CRLF.", + "fixed_in": [ + "19.2.1" + ], + "id": "GHSA-6cc5-2vg4-cc7m", + "link": "https://osv.dev/vulnerability/GHSA-6cc5-2vg4-cc7m", + "source": "osv", + "summary": null + }, + { + "aliases": [ + "CVE-2022-21712" + ], + "details": "### Impact\n\nCookie and Authorization headers are leaked when following cross-origin redirects in `twited.web.client.RedirectAgent` and `twisted.web.client.BrowserLikeRedirectAgent`.", + "fixed_in": [ + "22.1" + ], + "id": "GHSA-92x2-jw7w-xvvx", + "link": "https://osv.dev/vulnerability/GHSA-92x2-jw7w-xvvx", + "source": "osv", + "summary": null + } + ] +} diff --git a/tests/repositories/test_pypi_repository.py b/tests/repositories/test_pypi_repository.py index cd4e03402d9..62a9f540275 100644 --- a/tests/repositories/test_pypi_repository.py +++ b/tests/repositories/test_pypi_repository.py @@ -6,6 +6,7 @@ from io import BytesIO from pathlib import Path from typing import TYPE_CHECKING +from typing import Any import pytest @@ -34,7 +35,9 @@ class MockRepository(PyPiRepository): def __init__(self, fallback: bool = False) -> None: super().__init__(url="http://foo.bar", disable_cache=True, fallback=fallback) - def _get(self, url: str) -> dict | None: + def _get( + self, url: str, headers: dict[str, str] | None = None + ) -> dict[str, Any] | None: parts = url.split("/")[1:] name = parts[0] if len(parts) == 3: @@ -46,8 +49,6 @@ def _get(self, url: str) -> dict | None: fixture = self.JSON_FIXTURES / (name + ".json") else: fixture = self.JSON_FIXTURES / name / (version + ".json") - if not fixture.exists(): - fixture = self.JSON_FIXTURES / (name + ".json") if not fixture.exists(): return