question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

pipenv 2018.7.1 raises InvalidMarker for `platform_python_implementation` during lock operation.

See original GitHub issue
Issue description

pipenv 2018.7.1 is unable to update the Pipfile.lock file when a package contains the platform_python_implementation maker (e.g. cryptography)

pipenv 2018.6.25 didn’t have this problem.

Expected result

pipenv lock successfully updates the Pipfile.lock file.

Actual result
$ pipenv lock --verbose
Locking [dev-packages] dependencies...
Locking [packages] dependencies...
using sources: [{'url': 'https://pypi.python.org/simple', 'verify_ssl': True, 'name': 'pypi'}]
Using pip: -i https://pypi.python.org/simple

                          ROUND 1
Current constraints:
  certifi==2018.4.16 (from -r /tmp/pipenv-3zgcv41l-requirements/pipenv-bnmtopkf-constraints.txt (line 2))
  cffi==1.11.5 (from -r /tmp/pipenv-3zgcv41l-requirements/pipenv-bnmtopkf-constraints.txt (line 3))
  coreapi (from -r /tmp/pipenv-3zgcv41l-requirements/pipenv-bnmtopkf-constraints.txt (line 4))
  cryptography==2.2.2 (from -r /tmp/pipenv-3zgcv41l-requirements/pipenv-bnmtopkf-constraints.txt (line 5))
  decorator==4.3.0 (from -r /tmp/pipenv-3zgcv41l-requirements/pipenv-bnmtopkf-constraints.txt (line 6))
  dj-inmemorystorage (from -r /tmp/pipenv-3zgcv41l-requirements/pipenv-bnmtopkf-constraints.txt (line 7))
  Django==2.0.7 (from -r /tmp/pipenv-3zgcv41l-requirements/pipenv-bnmtopkf-constraints.txt (line 8))
  django-cors-headers==2.3.0 (from -r /tmp/pipenv-3zgcv41l-requirements/pipenv-bnmtopkf-constraints.txt (line 9))
  django-filter (from -r /tmp/pipenv-3zgcv41l-requirements/pipenv-bnmtopkf-constraints.txt (line 10))
  django-model-utils (from -r /tmp/pipenv-3zgcv41l-requirements/pipenv-bnmtopkf-constraints.txt (line 11))
  django_polymorphic (from -r /tmp/pipenv-3zgcv41l-requirements/pipenv-bnmtopkf-constraints.txt (line 12))
  django-rest-polymorphic==0.1.7 (from -r /tmp/pipenv-3zgcv41l-requirements/pipenv-bnmtopkf-constraints.txt (line 13))
  django-s3-storage (from -r /tmp/pipenv-3zgcv41l-requirements/pipenv-bnmtopkf-constraints.txt (line 34))
  django-ses (from -r /tmp/pipenv-3zgcv41l-requirements/pipenv-bnmtopkf-constraints.txt (line 30))
  djangorestframework (from -r /tmp/pipenv-3zgcv41l-requirements/pipenv-bnmtopkf-constraints.txt (line 29))
  factory_boy (from -r /tmp/pipenv-3zgcv41l-requirements/pipenv-bnmtopkf-constraints.txt (line 14))
  Faker==0.8.16 (from -r /tmp/pipenv-3zgcv41l-requirements/pipenv-bnmtopkf-constraints.txt (line 15))
  ipython==6.4.0 (from -r /tmp/pipenv-3zgcv41l-requirements/pipenv-bnmtopkf-constraints.txt (line 16))
  jedi==0.12.1 (from -r /tmp/pipenv-3zgcv41l-requirements/pipenv-bnmtopkf-constraints.txt (line 31))
  parso==0.3.0 (from -r /tmp/pipenv-3zgcv41l-requirements/pipenv-bnmtopkf-constraints.txt (line 32))
  pbr==4.0.4 (from -r /tmp/pipenv-3zgcv41l-requirements/pipenv-bnmtopkf-constraints.txt (line 17))
  pexpect==4.6.0 (from -r /tmp/pipenv-3zgcv41l-requirements/pipenv-bnmtopkf-constraints.txt (line 18))
  Pillow==5.2.0 (from -r /tmp/pipenv-3zgcv41l-requirements/pipenv-bnmtopkf-constraints.txt (line 19))
  psycopg2-binary (from -r /tmp/pipenv-3zgcv41l-requirements/pipenv-bnmtopkf-constraints.txt (line 21))
  ptyprocess==0.6.0 (from -r /tmp/pipenv-3zgcv41l-requirements/pipenv-bnmtopkf-constraints.txt (line 33))
  python-dateutil==2.7.3 (from -r /tmp/pipenv-3zgcv41l-requirements/pipenv-bnmtopkf-constraints.txt (line 22))
  pytz==2018.5 (from -r /tmp/pipenv-3zgcv41l-requirements/pipenv-bnmtopkf-constraints.txt (line 23))
  text-unidecode==1.2 (from -r /tmp/pipenv-3zgcv41l-requirements/pipenv-bnmtopkf-constraints.txt (line 25))
  uWSGI==2.0.17 (from -r /tmp/pipenv-3zgcv41l-requirements/pipenv-bnmtopkf-constraints.txt (line 26))
  wheel==0.31.1 (from -r /tmp/pipenv-3zgcv41l-requirements/pipenv-bnmtopkf-constraints.txt (line 27))
  XlsxWriter (from -r /tmp/pipenv-3zgcv41l-requirements/pipenv-bnmtopkf-constraints.txt (line 28))

Finding the best candidates:
  found candidate certifi==2018.4.16 (constraint was ==2018.4.16)
  found candidate cffi==1.11.5 (constraint was ==1.11.5)
  found candidate coreapi==2.3.3 (constraint was <any>)
  found candidate cryptography==2.2.2 (constraint was ==2.2.2)
  found candidate decorator==4.3.0 (constraint was ==4.3.0)
  found candidate dj-inmemorystorage==1.4.1 (constraint was <any>)
  found candidate django==2.0.7 (constraint was ==2.0.7)
  found candidate django-cors-headers==2.3.0 (constraint was ==2.3.0)
  found candidate django-filter==1.1.0 (constraint was <any>)
  found candidate django-model-utils==3.1.2 (constraint was <any>)
  found candidate django-polymorphic==2.0.2 (constraint was <any>)
  found candidate django-rest-polymorphic==0.1.7 (constraint was ==0.1.7)
  found candidate django-s3-storage==0.12.4 (constraint was <any>)
  found candidate django-ses==0.8.5 (constraint was <any>)
  found candidate djangorestframework==3.8.2 (constraint was <any>)
  found candidate factory-boy==2.11.1 (constraint was <any>)
  found candidate faker==0.8.16 (constraint was ==0.8.16)
  found candidate ipython==6.4.0 (constraint was ==6.4.0)
  found candidate jedi==0.12.1 (constraint was ==0.12.1)
  found candidate parso==0.3.0 (constraint was ==0.3.0)
  found candidate pbr==4.0.4 (constraint was ==4.0.4)
  found candidate pexpect==4.6.0 (constraint was ==4.6.0)
  found candidate pillow==5.2.0 (constraint was ==5.2.0)
  found candidate psycopg2-binary==2.7.5 (constraint was <any>)
  found candidate ptyprocess==0.6.0 (constraint was ==0.6.0)
  found candidate python-dateutil==2.7.3 (constraint was ==2.7.3)
  found candidate pytz==2018.5 (constraint was ==2018.5)
  found candidate text-unidecode==1.2 (constraint was ==1.2)
  found candidate uwsgi==2.0.17 (constraint was ==2.0.17)
  found candidate wheel==0.31.1 (constraint was ==0.31.1)
  found candidate xlsxwriter==1.0.5 (constraint was <any>)

Finding secondary dependencies:
  wheel==0.31.1             requires -
  django-s3-storage==0.12.4 requires boto3<2,>=1.4.4, botocore<1.11.0,>=1.10.50, django-s3-storage==0.12.4, django>=1.7, docutils>=0.10, jmespath<1.0.0,>=0.7.1, python-dateutil<3.0.0,>=2.1; python_version >= "2.7", pytz, s3transfer<0.2.0,>=0.1.10, six>=1.5
  uwsgi==2.0.17             requires -
  certifi==2018.4.16        requires -
  cryptography==2.2.2       requires asn1crypto>=0.21.0, cffi>=1.7; platform_python_implementation != "PyPy"; platform_python_implementation != "PyPy", idna>=2.1, six>=1.4.1

Traceback (most recent call last):
  File "/home/kal/.pyenv/versions/3.6.6/lib/python3.6/site-packages/pipenv/patched/notpip/_vendor/packaging/markers.py", line 276, in __init__
    self._markers = _coerce_parse_result(MARKER.parseString(marker))
  File "/home/kal/.pyenv/versions/3.6.6/lib/python3.6/site-packages/pipenv/patched/notpip/_vendor/pyparsing.py", line 1632, in parseString
    raise exc
  File "/home/kal/.pyenv/versions/3.6.6/lib/python3.6/site-packages/pipenv/patched/notpip/_vendor/pyparsing.py", line 1622, in parseString
    loc, tokens = self._parse( instring, 0 )
  File "/home/kal/.pyenv/versions/3.6.6/lib/python3.6/site-packages/pipenv/patched/notpip/_vendor/pyparsing.py", line 1379, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/home/kal/.pyenv/versions/3.6.6/lib/python3.6/site-packages/pipenv/patched/notpip/_vendor/pyparsing.py", line 3395, in parseImpl
    loc, exprtokens = e._parse( instring, loc, doActions )
  File "/home/kal/.pyenv/versions/3.6.6/lib/python3.6/site-packages/pipenv/patched/notpip/_vendor/pyparsing.py", line 1383, in _parseNoCache
    loc,tokens = self.parseImpl( instring, preloc, doActions )
  File "/home/kal/.pyenv/versions/3.6.6/lib/python3.6/site-packages/pipenv/patched/notpip/_vendor/pyparsing.py", line 3183, in parseImpl
    raise ParseException(instring, loc, self.errmsg, self)
pipenv.patched.notpip._vendor.pyparsing.ParseException: Expected stringEnd (at char 40), (line:1, col:41)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/kal/.pyenv/versions/3.6.6/lib/python3.6/site-packages/pipenv/resolver.py", line 87, in <module>
    main()
  File "/home/kal/.pyenv/versions/3.6.6/lib/python3.6/site-packages/pipenv/resolver.py", line 76, in main
    system=system,
  File "/home/kal/.pyenv/versions/3.6.6/lib/python3.6/site-packages/pipenv/resolver.py", line 63, in resolve
    allow_global=system,
  File "/home/kal/.pyenv/versions/3.6.6/lib/python3.6/site-packages/pipenv/utils.py", line 402, in resolve_deps
    req_dir=req_dir
  File "/home/kal/.pyenv/versions/3.6.6/lib/python3.6/site-packages/pipenv/utils.py", line 293, in actually_resolve_deps
    results = resolver.resolve(max_rounds=PIPENV_MAX_ROUNDS)
  File "/home/kal/.pyenv/versions/3.6.6/lib/python3.6/site-packages/pipenv/patched/piptools/resolver.py", line 104, in resolve
    has_changed, best_matches = self._resolve_one_round()
  File "/home/kal/.pyenv/versions/3.6.6/lib/python3.6/site-packages/pipenv/patched/piptools/resolver.py", line 209, in _resolve_one_round
    for dep in self._iter_dependencies(best_match):
  File "/home/kal/.pyenv/versions/3.6.6/lib/python3.6/site-packages/pipenv/patched/piptools/resolver.py", line 311, in _iter_dependencies
    yield InstallRequirement.from_line(dependency_string, constraint=ireq.constraint)
  File "/home/kal/.pyenv/versions/3.6.6/lib/python3.6/site-packages/pipenv/patched/notpip/_internal/req/req_install.py", line 193, in from_line
    markers = Marker(markers)
  File "/home/kal/.pyenv/versions/3.6.6/lib/python3.6/site-packages/pipenv/patched/notpip/_vendor/packaging/markers.py", line 280, in __init__
    raise InvalidMarker(err_str)
pipenv.patched.notpip._vendor.packaging.markers.InvalidMarker: Invalid marker: 'platform_python_implementation != "PyPy"; platform_python_implementation != "PyPy"', parse error at '; platfo'
Steps to replicate
  1. Install pipenv 2018.7.1
  2. Install this Pipfile:
[[source]]
url = "https://pypi.python.org/simple"
verify_ssl = true
name = "pypi"

[requires]
python_version = "3.6"

[packages]
certifi = "==2018.4.16"
cffi = "==1.11.5"
coreapi = "*"
cryptography = "==2.2.2"
decorator = "==4.3.0"
dj-inmemorystorage = "*"
Django = "==2.0.7"
django-cors-headers = "==2.3.0"
django-filter = "*"
django-model-utils = "*"
django_polymorphic = "*"
django-rest-polymorphic = "==0.1.7"
factory_boy = "*"
Faker = "==0.8.16"
ipython = "==6.4.0"
pbr = "==4.0.4"
pexpect = "==4.6.0"
Pillow = "==5.2.0"
pip = "==10.0.1"
"psycopg2-binary" = "*"
python-dateutil = "==2.7.3"
pytz = "==2018.5"
setuptools = "==39.2.0"
text-unidecode = "==1.2"
uWSGI = "==2.0.17"
wheel = "==0.31.1"
XlsxWriter = "*"
djangorestframework = "*"
django-ses = "*"
jedi = "==0.12.1"
parso = "==0.3.0"
ptyprocess = "==0.6.0"
"django-s3-storage" = "*"

[dev-packages]

$ pipenv --support

Pipenv version: '2018.7.1'

Pipenv location: '/home/kal/.pyenv/versions/3.6.6/lib/python3.6/site-packages/pipenv'

Python location: '/home/kal/.pyenv/versions/3.6.6/bin/python3.6'

Other Python installations in PATH:

  • 2.7: /home/kal/.pyenv/shims/python2.7

  • 2.7: /home/kal/.pyenv/shims/python2.7

  • 2.7: /usr/bin/python2.7

  • 3.5: /usr/bin/python3.5m

  • 3.5: /usr/bin/python3.5

  • 3.6: /home/kal/.virtualenvs/censored/bin/python3.6m

  • 3.6: /home/kal/.virtualenvs/censored/bin/python3.6

  • 3.6: /home/kal/.pyenv/versions/3.6.6/bin/python3.6

  • 3.6: /home/kal/.pyenv/shims/python3.6

  • 3.7: /home/kal/.pyenv/shims/python3.7

  • 3.6.6: /home/kal/.virtualenvs/censored/bin/python

  • 3.6.6: /home/kal/.pyenv/versions/3.6.6/bin/python

  • 3.6.6: /home/kal/.pyenv/shims/python

  • 2.7.13: /usr/bin/python

  • 2.7.13: /home/kal/.pyenv/shims/python2

  • 2.7.13: /usr/bin/python2

  • 3.6.6: /home/kal/.virtualenvs/censored/bin/python3

  • 3.6.6: /home/kal/.pyenv/versions/3.6.6/bin/python3

  • 3.6.6: /home/kal/.pyenv/shims/python3

  • 3.5.3: /usr/bin/python3

PEP 508 Information:

{'implementation_name': 'cpython',
 'implementation_version': '3.6.6',
 'os_name': 'posix',
 'platform_machine': 'x86_64',
 'platform_python_implementation': 'CPython',
 'platform_release': '4.9.0-6-amd64',
 'platform_system': 'Linux',
 'platform_version': '#1 SMP Debian 4.9.88-1 (2018-04-29)',
 'python_full_version': '3.6.6',
 'python_version': '3.6',
 'sys_platform': 'linux'}

System environment variables:

  • NVM_DIR
  • LS_COLORS
  • LD_LIBRARY_PATH
  • SSH_CONNECTION
  • DJANGO_SETTINGS_MODULE
  • LANG
  • TZ
  • HISTCONTROL
  • _VIRTUALENVWRAPPER_API
  • COMP_WORDBREAKS
  • PYENV_ROOT
  • OLDPWD
  • WORKON_HOME
  • EDITOR
  • NODE_PATH
  • ENVIRONMENT
  • NVM_CD_FLAGS
  • PERL_MB_OPT
  • PYENV_VIRTUALENV_INIT
  • PYENV_HOOK_PATH
  • SSH_AUTH_SOCK
  • VIRTUAL_ENV
  • XDG_SESSION_ID
  • USER
  • PYENV_DIR
  • PIP_PYTHON_PATH
  • PWD
  • HOME
  • SSH_AGENT_PID
  • SSH_CLIENT
  • PYENV_VERSION
  • TMUX
  • PIPENV_ACTIVE
  • PERL_MM_OPT
  • PERL_LOCAL_LIB_ROOT
  • SSH_TTY
  • MAIL
  • VIRTUALENVWRAPPER_SCRIPT
  • TERM
  • SHELL
  • NVM_BIN
  • PERL5LIB
  • TMUX_PANE
  • PYTHONDONTWRITEBYTECODE
  • SHLVL
  • PYENV_SHELL
  • PYTHONPATH
  • LOGNAME
  • XDG_RUNTIME_DIR
  • PATH
  • PS1
  • _

Pipenv–specific environment variables:

  • PIPENV_ACTIVE: 1

Debug–specific environment variables:

  • PATH: /home/kal/.virtualenvs/censored/bin:/home/kal/perl5/bin:/home/kal/.nvm/versions/node/v9.8.0/bin:/home/kal/.pyenv/versions/3.6.6/bin:/home/kal/.pyenv/libexec:/home/kal/.pyenv/plugins/python-build/bin:/home/kal/.pyenv/plugins/pyen v-virtualenv/bin:/home/kal/.pyenv/plugins/pyenv-update/bin:/home/kal/.pyenv/plugins/pyenv-installer/bin:/home/kal/.pyenv/plugins/pyenv-doctor/bin:/home/kal/.pyenv/plugins/pyenv-virtualenv/shims:/home/kal/.pyenv/shims:/home/kal/.pyenv/bin:/home/kal/perl5/bin:/home/kal/sbi n:/home/kal/bin:/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/usr/local/cuda/bin
  • SHELL: /bin/bash
  • EDITOR: /usr/bin/vim
  • LANG: en_HK.UTF-8
  • PWD: /home/kal/git/censored
  • VIRTUAL_ENV: /home/kal/.virtualenvs/censored

Contents of Pipfile (‘/home/kal/git/censored/Pipfile’):

[[source]]
url = "https://pypi.python.org/simple"
verify_ssl = true
name = "pypi"

[requires]
python_version = "3.6"

[packages]
certifi = "==2018.4.16"
cffi = "==1.11.5"
coreapi = "*"
cryptography = "==2.2.2"
decorator = "==4.3.0"
dj-inmemorystorage = "*"
Django = "==2.0.7"
django-cors-headers = "==2.3.0"
django-filter = "*"
django-model-utils = "*"
django_polymorphic = "*"
django-rest-polymorphic = "==0.1.7"
factory_boy = "*"
Faker = "==0.8.16"
ipython = "==6.4.0"
pbr = "==4.0.4"
pexpect = "==4.6.0"
Pillow = "==5.2.0"
pip = "==10.0.1"
"psycopg2-binary" = "*"
python-dateutil = "==2.7.3"
pytz = "==2018.5"
setuptools = "==39.2.0"
text-unidecode = "==1.2"
uWSGI = "==2.0.17"
wheel = "==0.31.1"
XlsxWriter = "*"
djangorestframework = "*"
django-ses = "*"
jedi = "==0.12.1"
parso = "==0.3.0"
ptyprocess = "==0.6.0"
"django-s3-storage" = "*"

[dev-packages]

Contents of Pipfile.lock (‘/home/kal/git/censored/Pipfile.lock’):

{
    "_meta": {
        "hash": {
            "sha256": "8755b1edb88c80ce3849c589d6d7a55a0637668901e727cf6103a9d43d695b25"
        },
        "pipfile-spec": 6,
        "requires": {
            "python_version": "3.6"
        },
        "sources": [
            {
                "name": "pypi",
                "url": "https://pypi.python.org/simple",
                "verify_ssl": true
            }
        ]
    },
    "default": {
        "asn1crypto": {
            "hashes": [
                "sha256:2f1adbb7546ed199e3c90ef23ec95c5cf3585bac7d11fb7eb562a3fe89c64e87",
                "sha256:9d5c20441baf0cb60a4ac34cc447c6c189024b6b4c6cd7877034f4965c464e49"
            ],
            "version": "==0.24.0"
        },
        "backcall": {
            "hashes": [
                "sha256:38ecd85be2c1e78f77fd91700c76e14667dc21e2713b63876c0eb901196e01e4",
                "sha256:bbbf4b1e5cd2bdb08f915895b51081c041bac22394fdfcfdfbe9f14b77c08bf2"
            ],
            "version": "==0.1.0"
        },
        "boto": {
            "hashes": [
                "sha256:13be844158d1bd80a94c972c806ec8381b9ea72035aa06123c5db6bc6a6f3ead",
                "sha256:deb8925b734b109679e3de65856018996338758f4b916ff4fe7bb62b6d7000d1"
            ],
            "version": "==2.48.0"
        },
        "boto3": {
            "hashes": [
                "sha256:60c760da488deed3fdec7dca2fb0a37ece72d8b9e80f3f3fc47bd6a396ea11b6",
                "sha256:e7f52af8a5cb98d976f296d4a4ac1ac43c7b414c3765ca82c92b033cd06710c2"
            ],
            "version": "==1.7.50"
        },
        "botocore": {
            "hashes": [
                "sha256:07b572ae6ae3df5ff6d5e8dc5cf9812b9842d5ea96502b54b51867700861ee07",
                "sha256:585a5df85d2cfef41fbe7ad32bfcf00d9a54eafa75a6e126a07619b692f548ea"
            ],
            "version": "==1.10.50"
        },
        "certifi": {
            "hashes": [
                "sha256:13e698f54293db9f89122b0581843a782ad0934a4fe0172d2a980ba77fc61bb7",
                "sha256:9fa520c1bacfb634fa7af20a76bcbd3d5fb390481724c597da32c719a7dca4b0"
            ],
            "index": "pypi",
            "version": "==2018.4.16"
        },
        "cffi": {
            "hashes": [
                "sha256:151b7eefd035c56b2b2e1eb9963c90c6302dc15fbd8c1c0a83a163ff2c7d7743",
                "sha256:1553d1e99f035ace1c0544050622b7bc963374a00c467edafac50ad7bd276aef",
                "sha256:1b0493c091a1898f1136e3f4f991a784437fac3673780ff9de3bcf46c80b6b50",
                "sha256:2ba8a45822b7aee805ab49abfe7eec16b90587f7f26df20c71dd89e45a97076f",
                "sha256:3bb6bd7266598f318063e584378b8e27c67de998a43362e8fce664c54ee52d30",
                "sha256:3c85641778460581c42924384f5e68076d724ceac0f267d66c757f7535069c93",
                "sha256:3eb6434197633b7748cea30bf0ba9f66727cdce45117a712b29a443943733257",
                "sha256:495c5c2d43bf6cebe0178eb3e88f9c4aa48d8934aa6e3cddb865c058da76756b",
                "sha256:4c91af6e967c2015729d3e69c2e51d92f9898c330d6a851bf8f121236f3defd3",
                "sha256:57b2533356cb2d8fac1555815929f7f5f14d68ac77b085d2326b571310f34f6e",
                "sha256:770f3782b31f50b68627e22f91cb182c48c47c02eb405fd689472aa7b7aa16dc",
                "sha256:79f9b6f7c46ae1f8ded75f68cf8ad50e5729ed4d590c74840471fc2823457d04",
                "sha256:7a33145e04d44ce95bcd71e522b478d282ad0eafaf34fe1ec5bbd73e662f22b6",
                "sha256:857959354ae3a6fa3da6651b966d13b0a8bed6bbc87a0de7b38a549db1d2a359",
                "sha256:87f37fe5130574ff76c17cab61e7d2538a16f843bb7bca8ebbc4b12de3078596",
                "sha256:95d5251e4b5ca00061f9d9f3d6fe537247e145a8524ae9fd30a2f8fbce993b5b",
                "sha256:9d1d3e63a4afdc29bd76ce6aa9d58c771cd1599fbba8cf5057e7860b203710dd",
                "sha256:a36c5c154f9d42ec176e6e620cb0dd275744aa1d804786a71ac37dc3661a5e95",
                "sha256:a6a5cb8809091ec9ac03edde9304b3ad82ad4466333432b16d78ef40e0cce0d5",
                "sha256:ae5e35a2c189d397b91034642cb0eab0e346f776ec2eb44a49a459e6615d6e2e",
                "sha256:b0f7d4a3df8f06cf49f9f121bead236e328074de6449866515cea4907bbc63d6",
                "sha256:b75110fb114fa366b29a027d0c9be3709579602ae111ff61674d28c93606acca",
                "sha256:ba5e697569f84b13640c9e193170e89c13c6244c24400fc57e88724ef610cd31",
                "sha256:be2a9b390f77fd7676d80bc3cdc4f8edb940d8c198ed2d8c0be1319018c778e1",
                "sha256:ca1bd81f40adc59011f58159e4aa6445fc585a32bb8ac9badf7a2c1aa23822f2",
                "sha256:d5d8555d9bfc3f02385c1c37e9f998e2011f0db4f90e250e5bc0c0a85a813085",
                "sha256:e55e22ac0a30023426564b1059b035973ec82186ddddbac867078435801c7801",
                "sha256:e90f17980e6ab0f3c2f3730e56d1fe9bcba1891eeea58966e89d352492cc74f4",
                "sha256:ecbb7b01409e9b782df5ded849c178a0aa7c906cf8c5a67368047daab282b184",
                "sha256:ed01918d545a38998bfa5902c7c00e0fee90e957ce036a4000a88e3fe2264917",
                "sha256:edabd457cd23a02965166026fd9bfd196f4324fe6032e866d0f3bd0301cd486f",
                "sha256:fdf1c1dc5bafc32bc5d08b054f94d659422b05aba244d6be4ddc1c72d9aa70fb"
            ],
            "index": "pypi",
            "version": "==1.11.5"
        },
        "chardet": {
            "hashes": [
                "sha256:84ab92ed1c4d4f16916e05906b6b75a6c0fb5db821cc65e70cbd64a3e2a5eaae",
                "sha256:fc323ffcaeaed0e0a02bf4d117757b98aed530d9ed4531e3e15460124c106691"
            ],
            "version": "==3.0.4"
        },
        "coreapi": {
            "hashes": [
                "sha256:46145fcc1f7017c076a2ef684969b641d18a2991051fddec9458ad3f78ffc1cb",
                "sha256:bf39d118d6d3e171f10df9ede5666f63ad80bba9a29a8ec17726a66cf52ee6f3"
            ],
            "index": "pypi",
            "version": "==2.3.3"
        },
        "coreschema": {
            "hashes": [
                "sha256:5e6ef7bf38c1525d5e55a895934ab4273548629f16aed5c0a6caa74ebf45551f",
                "sha256:9503506007d482ab0867ba14724b93c18a33b22b6d19fb419ef2d239dd4a1607"
            ],
            "version": "==0.0.4"
        },
        "cryptography": {
            "hashes": [
                "sha256:3f3b65d5a16e6b52fba63dc860b62ca9832f51f1a2ae5083c78b6840275f12dd",
                "sha256:5251e7de0de66810833606439ca65c9b9e45da62196b0c88bfadf27740aac09f",
                "sha256:551a3abfe0c8c6833df4192a63371aa2ff43afd8f570ed345d31f251d78e7e04",
                "sha256:5cb990056b7cadcca26813311187ad751ea644712022a3976443691168781b6f",
                "sha256:60bda7f12ecb828358be53095fc9c6edda7de8f1ef571f96c00b2363643fa3cd",
                "sha256:64b5c67acc9a7c83fbb4b69166f3105a0ab722d27934fac2cb26456718eec2ba",
                "sha256:6fef51ec447fe9f8351894024e94736862900d3a9aa2961528e602eb65c92bdb",
                "sha256:77d0ad229d47a6e0272d00f6bf8ac06ce14715a9fd02c9a97f5a2869aab3ccb2",
                "sha256:808fe471b1a6b777f026f7dc7bd9a4959da4bfab64972f2bbe91e22527c1c037",
                "sha256:9b62fb4d18529c84b961efd9187fecbb48e89aa1a0f9f4161c61b7fc42a101bd",
                "sha256:9e5bed45ec6b4f828866ac6a6bedf08388ffcfa68abe9e94b34bb40977aba531",
                "sha256:9fc295bf69130a342e7a19a39d7bbeb15c0bcaabc7382ec33ef3b2b7d18d2f63",
                "sha256:abd070b5849ed64e6d349199bef955ee0ad99aefbad792f0c587f8effa681a5e",
                "sha256:ba6a774749b6e510cffc2fb98535f717e0e5fd91c7c99a61d223293df79ab351",
                "sha256:c332118647f084c983c6a3e1dba0f3bcb051f69d12baccac68db8d62d177eb8a",
                "sha256:d6f46e862ee36df81e6342c2177ba84e70f722d9dc9c6c394f9f1f434c4a5563",
                "sha256:db6013746f73bf8edd9c3d1d3f94db635b9422f503db3fc5ef105233d4c011ab",
                "sha256:f57008eaff597c69cf692c3518f6d4800f0309253bb138b526a37fe9ef0c7471",
                "sha256:f6c821ac253c19f2ad4c8691633ae1d1a17f120d5b01ea1d256d7b602bc59887"
            ],
            "index": "pypi",
            "version": "==2.2.2"
        },
        "decorator": {
            "hashes": [
                "sha256:2c51dff8ef3c447388fe5e4453d24a2bf128d3a4c32af3fabef1f01c6851ab82",
                "sha256:c39efa13fbdeb4506c476c9b3babf6a718da943dab7811c206005a4a956c080c"
            ],
            "index": "pypi",
            "version": "==4.3.0"
        },
        "dj-inmemorystorage": {
            "hashes": [
                "sha256:2b587f9320ea26f9ed1c62fefaf05c817735eda989d6439072b73d1b59b1c591",
                "sha256:fa921269b83ffc762411e36d446fa07b602a4ad74632ae1819844d32e6fb12bd"
            ],
            "index": "pypi",
            "version": "==1.4.1"
        },
        "django": {
            "hashes": [
                "sha256:97886b8a13bbc33bfeba2ff133035d3eca014e2309dff2b6da0bdfc0b8656613",
                "sha256:e900b73beee8977c7b887d90c6c57d68af10066b9dac898e1eaf0f82313de334"
            ],
            "index": "pypi",
            "version": "==2.0.7"
        },
        "django-cors-headers": {
            "hashes": [
                "sha256:1460b67c51706307e3f66515e86b10181badd66448a2fc44278f47bf402c6fd3",
                "sha256:3c618a964e3034ae4dad8bbb902e625daa6c894444ddeaf7b24125299add54f0"
            ],
            "index": "pypi",
            "version": "==2.3.0"
        },
        "django-filter": {
            "hashes": [
                "sha256:ea204242ea83790e1512c9d0d8255002a652a6f4986e93cee664f28955ba0c22",
                "sha256:ec0ef1ba23ef95b1620f5d481334413700fb33f45cd76d56a63f4b0b1d76976a"
            ],
            "index": "pypi",
            "version": "==1.1.0"
        },
        "django-model-utils": {
            "hashes": [
                "sha256:2c057f3bf0859aba27f04389f0cedd2d48f8c9b3848acb86fd9970794e58f477",
                "sha256:8cd377744aa45f9f131d652ec460c57d1aaa88d3e9b586c8e27eb709341b9084"
            ],
            "index": "pypi",
            "version": "==3.1.2"
        },
        "django-polymorphic": {
            "hashes": [
                "sha256:317bde04d5b218fa1ad07734dfbbbd3947c9495650ba7e015c5d4f6def00c879",
                "sha256:e1821d7b5874509a158a0f22bebf544330e0944c481c5a3e6da6cac8887e4e88"
            ],
            "version": "==2.0.2"
        },
        "django-rest-polymorphic": {
            "hashes": [
                "sha256:6123352ebee7ec3bdba3a18c05054be8e6c4e26cfad96b4fc536bc43215a2ca2",
                "sha256:a6da9082888a4518a536a73a016552f13effce190065ad5ad88839d554ec7ca1"
            ],
            "index": "pypi",
            "version": "==0.1.7"
        },
        "django-s3-storage": {
            "hashes": [
                "sha256:57a6b6ca3efde28b7612d4d9f6f8622c4fdd11aa933e1d9f07a5da722a54eff3"
            ],
            "index": "pypi",
            "version": "==0.12.4"
        },
        "django-ses": {
            "hashes": [
                "sha256:31e730fe7e6f0250dcebf73fbe68c2033d67dfa3e814a52267f22b6e14d95bc6",
                "sha256:8dcbb41c5118c3d95f203b127bf71c6e98c877356b6063f98ce5c98171d88003"
            ],
            "index": "pypi",
            "version": "==0.8.5"
        },
        "djangorestframework": {
            "hashes": [
                "sha256:b6714c3e4b0f8d524f193c91ecf5f5450092c2145439ac2769711f7eba89a9d9",
                "sha256:c375e4f95a3a64fccac412e36fb42ba36881e52313ec021ef410b40f67cddca4"
            ],
            "index": "pypi",
            "version": "==3.8.2"
        },
        "docutils": {
            "hashes": [
                "sha256:02aec4bd92ab067f6ff27a38a38a41173bf01bed8f89157768c1573f53e474a6",
                "sha256:51e64ef2ebfb29cae1faa133b3710143496eca21c530f3f71424d77687764274",
                "sha256:7a4bd47eaf6596e1295ecb11361139febe29b084a87bf005bf899f9a42edc3c6"
            ],
            "version": "==0.14"
        },
        "factory-boy": {
            "hashes": [
                "sha256:6f25cc4761ac109efd503f096e2ad99421b1159f01a29dbb917359dcd68e08ca",
                "sha256:d552cb872b310ae78bd7429bf318e42e1e903b1a109e899a523293dfa762ea4f"
            ],
            "version": "==2.11.1"
        },
        "faker": {
            "hashes": [
                "sha256:04645d946256b835c675c1cef7c03817a164b0c4e452018fd50b212ddff08c22",
                "sha256:fe48f35aa3443bc5655b0782d3a2f594bf4882d0e2a947b80207a60494d32907"
            ],
            "index": "pypi",
            "version": "==0.8.16"
        },
        "future": {
            "hashes": [
                "sha256:e39ced1ab767b5936646cedba8bcce582398233d6a627067d4c6a454c90cfedb"
            ],
            "version": "==0.16.0"
        },
        "idna": {
            "hashes": [
                "sha256:156a6814fb5ac1fc6850fb002e0852d56c0c8d2531923a51032d1b70760e186e",
                "sha256:684a38a6f903c1d71d6d5fac066b58d7768af4de2b832e426ec79c30daa94a16"
            ],
            "version": "==2.7"
        },
        "ipython": {
            "hashes": [
                "sha256:a0c96853549b246991046f32d19db7140f5b1a644cc31f0dc1edc86713b7676f",
                "sha256:eca537aa61592aca2fef4adea12af8e42f5c335004dfa80c78caf80e8b525e5c"
            ],
            "index": "pypi",
            "version": "==6.4.0"
        },
        "ipython-genutils": {
            "hashes": [
                "sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8",
                "sha256:eb2e116e75ecef9d4d228fdc66af54269afa26ab4463042e33785b887c628ba8"
            ],
            "version": "==0.2.0"
        },
        "itypes": {
            "hashes": [
                "sha256:c6e77bb9fd68a4bfeb9d958fea421802282451a25bac4913ec94db82a899c073"
            ],
            "version": "==1.1.0"
        },
        "jedi": {
            "hashes": [
                "sha256:b409ed0f6913a701ed474a614a3bb46e6953639033e31f769ca7581da5bd1ec1",
                "sha256:c254b135fb39ad76e78d4d8f92765ebc9bf92cbc76f49e97ade1d5f5121e1f6f"
            ],
            "index": "pypi",
            "version": "==0.12.1"
        },
        "jinja2": {
            "hashes": [
                "sha256:74c935a1b8bb9a3947c50a54766a969d4846290e1e788ea44c1392163723c3bd",
                "sha256:f84be1bb0040caca4cea721fcbbbbd61f9be9464ca236387158b0feea01914a4"
            ],
            "version": "==2.10"
        },
        "jmespath": {
            "hashes": [
                "sha256:6a81d4c9aa62caf061cb517b4d9ad1dd300374cd4706997aff9cd6aedd61fc64",
                "sha256:f11b4461f425740a1d908e9a3f7365c3d2e569f6ca68a2ff8bc5bcd9676edd63"
            ],
            "version": "==0.9.3"
        },
        "markupsafe": {
            "hashes": [
                "sha256:a6be69091dac236ea9c6bc7d012beab42010fa914c459791d627dad4910eb665"
            ],
            "version": "==1.0"
        },
        "parso": {
            "hashes": [
                "sha256:8105449d86d858e53ce3e0044ede9dd3a395b1c9716c696af8aa3787158ab806",
                "sha256:d250235e52e8f9fc5a80cc2a5f804c9fefd886b2e67a2b1099cf085f403f8e33"
            ],
            "index": "pypi",
            "version": "==0.3.0"
        },
        "pbr": {
            "hashes": [
                "sha256:3747c6f017f2dc099986c325239661948f9f5176f6880d9fdef164cb664cd665",
                "sha256:a9c27eb8f0e24e786e544b2dbaedb729c9d8546342b5a6818d8eda098ad4340d"
            ],
            "index": "pypi",
            "version": "==4.0.4"
        },
        "pexpect": {
            "hashes": [
                "sha256:2a8e88259839571d1251d278476f3eec5db26deb73a70be5ed5dc5435e418aba",
                "sha256:3fbd41d4caf27fa4a377bfd16fef87271099463e6fa73e92a52f92dfee5d425b"
            ],
            "index": "pypi",
            "version": "==4.6.0"
        },
        "pickleshare": {
            "hashes": [
                "sha256:84a9257227dfdd6fe1b4be1319096c20eb85ff1e82c7932f36efccfe1b09737b",
                "sha256:c9a2541f25aeabc070f12f452e1f2a8eae2abd51e1cd19e8430402bdf4c1d8b5"
            ],
            "version": "==0.7.4"
        },
        "pillow": {
            "hashes": [
                "sha256:00def5b638994f888d1058e4d17c86dec8e1113c3741a0a8a659039aec59a83a",
                "sha256:026449b64e559226cdb8e6d8c931b5965d8fc90ec18ebbb0baa04c5b36503c72",
                "sha256:03dbb224ee196ef30ed2156d41b579143e1efeb422974719a5392fc035e4f574",
                "sha256:03eb0e04f929c102ae24bc436bf1c0c60a4e63b07ebd388e84d8b219df3e6acd",
                "sha256:1be66b9a89e367e7d20d6cae419794997921fe105090fafd86ef39e20a3baab2",
                "sha256:1e977a3ed998a599bda5021fb2c2889060617627d3ae228297a529a082a3cd5c",
                "sha256:22cf3406d135cfcc13ec6228ade774c8461e125c940e80455f500638429be273",
                "sha256:24adccf1e834f82718c7fc8e3ec1093738da95144b8b1e44c99d5fc7d3e9c554",
                "sha256:2a3e362c97a5e6a259ee9cd66553292a1f8928a5bdfa3622fdb1501570834612",
                "sha256:3832e26ecbc9d8a500821e3a1d3765bda99d04ae29ffbb2efba49f5f788dc934",
                "sha256:4fd1f0c2dc02aaec729d91c92cd85a2df0289d88e9f68d1e8faba750bb9c4786",
                "sha256:4fda62030f2c515b6e2e673c57caa55cb04026a81968f3128aae10fc28e5cc27",
                "sha256:5044d75a68b49ce36a813c82d8201384207112d5d81643937fc758c05302f05b",
                "sha256:522184556921512ec484cb93bd84e0bab915d0ac5a372d49571c241a7f73db62",
                "sha256:5914cff11f3e920626da48e564be6818831713a3087586302444b9c70e8552d9",
                "sha256:6661a7908d68c4a133e03dac8178287aa20a99f841ea90beeb98a233ae3fd710",
                "sha256:79258a8df3e309a54c7ef2ef4a59bb8e28f7e4a8992a3ad17c24b1889ced44f3",
                "sha256:7d74c20b8f1c3e99d3f781d3b8ff5abfefdd7363d61e23bdeba9992ff32cc4b4",
                "sha256:81918afeafc16ba5d9d0d4e9445905f21aac969a4ebb6f2bff4b9886da100f4b",
                "sha256:8194d913ca1f459377c8a4ed8f9b7ad750068b8e0e3f3f9c6963fcc87a84515f",
                "sha256:84d5d31200b11b3c76fab853b89ac898bf2d05c8b3da07c1fcc23feb06359d6e",
                "sha256:989981db57abffb52026b114c9a1f114c7142860a6d30a352d28f8cbf186500b",
                "sha256:a3d7511d3fad1618a82299aab71a5fceee5c015653a77ffea75ced9ef917e71a",
                "sha256:b3ef168d4d6fd4fa6685aef7c91400f59f7ab1c0da734541f7031699741fb23f",
                "sha256:c1c5792b6e74bbf2af0f8e892272c2a6c48efa895903211f11b8342e03129fea",
                "sha256:c5dcb5a56aebb8a8f2585042b2f5c496d7624f0bcfe248f0cc33ceb2fd8d39e7",
                "sha256:e2bed4a04e2ca1050bb5f00865cf2f83c0b92fd62454d9244f690fcd842e27a4",
                "sha256:e87a527c06319428007e8c30511e1f0ce035cb7f14bb4793b003ed532c3b9333",
                "sha256:f63e420180cbe22ff6e32558b612e75f50616fc111c5e095a4631946c782e109",
                "sha256:f8b3d413c5a8f84b12cd4c5df1d8e211777c9852c6be3ee9c094b626644d3eab"
            ],
            "index": "pypi",
            "markers": "python_version != '3.3.*' and python_version != '3.2.*' and python_version >= '2.7' and python_version != '3.0.*' and python_version != '3.1.*'",
            "version": "==5.2.0"
        },
        "prompt-toolkit": {
            "hashes": [
                "sha256:1df952620eccb399c53ebb359cc7d9a8d3a9538cb34c5a1344bdbeb29fbcc381",
                "sha256:3f473ae040ddaa52b52f97f6b4a493cfa9f5920c255a12dc56a7d34397a398a4",
                "sha256:858588f1983ca497f1cf4ffde01d978a3ea02b01c8a26a8bbc5cd2e66d816917"
            ],
            "version": "==1.0.15"
        },
        "psycopg2-binary": {
            "hashes": [
                "sha256:04afb59bbbd2eab3148e6816beddc74348078b8c02a1113ea7f7822f5be4afe3",
                "sha256:098b18f4d8857a8f9b206d1dc54db56c2255d5d26458917e7bcad61ebfe4338f",
                "sha256:0bf855d4a7083e20ead961fda4923887094eaeace0ab2d76eb4aa300f4bbf5bd",
                "sha256:197dda3ffd02057820be83fe4d84529ea70bf39a9a4daee1d20ffc74eb3d042e",
                "sha256:278ef63afb4b3d842b4609f2c05ffbfb76795cf6a184deeb8707cd5ed3c981a5",
                "sha256:3cbf8c4fc8f22f0817220891cf405831559f4d4c12c4f73913730a2ea6c47a47",
                "sha256:4305aed922c4d9d6163ab3a41d80b5a1cfab54917467da8168552c42cad84d32",
                "sha256:47ee296f704fb8b2a616dec691cdcfd5fa0f11943955e88faa98cbd1dc3b3e3d",
                "sha256:4a0e38cb30457e70580903367161173d4a7d1381eb2f2cfe4e69b7806623f484",
                "sha256:4d6c294c6638a71cafb82a37f182f24321f1163b08b5d5ca076e11fe838a3086",
                "sha256:4f3233c366500730f839f92833194fd8f9a5c4529c8cd8040aa162c3740de8e5",
                "sha256:5221f5a3f4ca2ddf0d58e8b8a32ca50948be9a43351fda797eb4e72d7a7aa34d",
                "sha256:5c6ca0b507540a11eaf9e77dee4f07c131c2ec80ca0cffa146671bf690bc1c02",
                "sha256:789bd89d71d704db2b3d5e67d6d518b158985d791d3b2dec5ab85457cfc9677b",
                "sha256:89bc65ef3301c74cf32db25334421ea6adbe8f65601ea45dcaaf095abed910bb",
                "sha256:97521704ac7127d7d8ba22877da3c7bf4a40366587d238ec679ff38e33177498",
                "sha256:a6d32c37f714c3f34158f3fa659f3a8f2658d5f53c4297d45579b9677cc4d852",
                "sha256:a89ee5c26f72f2d0d74b991ce49e42ddeb4ac0dc2d8c06a0f2770a1ab48f4fe0",
                "sha256:b4c8b0ef3608e59317bfc501df84a61e48b5445d45f24d0391a24802de5f2d84",
                "sha256:b5fcf07140219a1f71e18486b8dc28e2e1b76a441c19374805c617aa6d9a9d55",
                "sha256:b86f527f00956ecebad6ab3bb30e3a75fedf1160a8716978dd8ce7adddedd86f",
                "sha256:be4c4aa22ba22f70de36c98b06480e2f1697972d49eb20d525f400d204a6d272",
                "sha256:c2ac7aa1a144d4e0e613ac7286dae85671e99fe7a1353954d4905629c36b811c",
                "sha256:de26ef4787b5e778e8223913a3e50368b44e7480f83c76df1f51d23bd21cea16",
                "sha256:e70ebcfc5372dc7b699c0110454fc4263967f30c55454397e5769eb72c0eb0ce",
                "sha256:eadbd32b6bc48b67b0457fccc94c86f7ccc8178ab839f684eb285bb592dc143e",
                "sha256:ecbc6dfff6db06b8b72ae8a2f25ff20fbdcb83cb543811a08f7cb555042aa729"
            ],
            "index": "pypi",
            "version": "==2.7.5"
        },
        "ptyprocess": {
            "hashes": [
                "sha256:923f299cc5ad920c68f2bc0bc98b75b9f838b93b599941a6b63ddbc2476394c0",
                "sha256:d7cc528d76e76342423ca640335bd3633420dc1366f258cb31d05e865ef5ca1f"
            ],
            "index": "pypi",
            "version": "==0.6.0"
        },
        "pycparser": {
            "hashes": [
                "sha256:99a8ca03e29851d96616ad0404b4aad7d9ee16f25c9f9708a11faf2810f7b226"
            ],
            "version": "==2.18"
        },
        "pygments": {
            "hashes": [
                "sha256:78f3f434bcc5d6ee09020f92ba487f95ba50f1e3ef83ae96b9d5ffa1bab25c5d",
                "sha256:dbae1046def0efb574852fab9e90209b23f556367b5a320c0bcb871c77c3e8cc"
            ],
            "version": "==2.2.0"
        },
        "python-dateutil": {
            "hashes": [
                "sha256:1adb80e7a782c12e52ef9a8182bebeb73f1d7e24e374397af06fb4956c8dc5c0",
                "sha256:e27001de32f627c22380a688bcc43ce83504a7bc5da472209b4c70f02829f0b8"
            ],
            "index": "pypi",
            "version": "==2.7.3"
        },
        "pytz": {
            "hashes": [
                "sha256:a061aa0a9e06881eb8b3b2b43f05b9439d6583c206d0a6c340ff72a7b6669053",
                "sha256:ffb9ef1de172603304d9d2819af6f5ece76f2e85ec10692a524dd876e72bf277"
            ],
            "index": "pypi",
            "version": "==2018.5"
        },
        "requests": {
            "hashes": [
                "sha256:63b52e3c866428a224f97cab011de738c36aec0185aa91cfacd418b5d58911d1",
                "sha256:ec22d826a36ed72a7358ff3fe56cbd4ba69dd7a6718ffd450ff0e9df7a47ce6a"
            ],
            "version": "==2.19.1"
        },
        "s3transfer": {
            "hashes": [
                "sha256:90dc18e028989c609146e241ea153250be451e05ecc0c2832565231dacdf59c1",
                "sha256:c7a9ec356982d5e9ab2d4b46391a7d6a950e2b04c472419f5fdec70cc0ada72f"
            ],
            "version": "==0.1.13"
        },
        "simplegeneric": {
            "hashes": [
                "sha256:dc972e06094b9af5b855b3df4a646395e43d1c9d0d39ed345b7393560d0b9173"
            ],
            "version": "==0.8.1"
        },
        "six": {
            "hashes": [
                "sha256:70e8a77beed4562e7f14fe23a786b54f6296e34344c23bc42f07b15018ff98e9",
                "sha256:832dc0e10feb1aa2c68dcc57dbb658f1c7e65b9b61af69048abc87a2db00a0eb"
            ],
            "version": "==1.11.0"
        },
        "text-unidecode": {
            "hashes": [
                "sha256:5a1375bb2ba7968740508ae38d92e1f889a0832913cb1c447d5e2046061a396d",
                "sha256:801e38bd550b943563660a91de8d4b6fa5df60a542be9093f7abf819f86050cc"
            ],
            "index": "pypi",
            "version": "==1.2"
        },
        "traitlets": {
            "hashes": [
                "sha256:9c4bd2d267b7153df9152698efb1050a5d84982d3384a37b2c1f7723ba3e7835",
                "sha256:c6cb5e6f57c5a9bdaa40fa71ce7b4af30298fbab9ece9815b5d995ab6217c7d9"
            ],
            "version": "==4.3.2"
        },
        "uritemplate": {
            "hashes": [
                "sha256:01c69f4fe8ed503b2951bef85d996a9d22434d2431584b5b107b2981ff416fbd",
                "sha256:1b9c467a940ce9fb9f50df819e8ddd14696f89b9a8cc87ac77952ba416e0a8fd",
                "sha256:c02643cebe23fc8adb5e6becffe201185bf06c40bda5c0b4028a93f1527d011d"
            ],
            "version": "==3.0.0"
        },
        "urllib3": {
            "hashes": [
                "sha256:a68ac5e15e76e7e5dd2b8f94007233e01effe3e50e8daddf69acfd81cb686baf",
                "sha256:b5725a0bd4ba422ab0e66e89e030c806576753ea3ee08554382c14e685d117b5"
            ],
            "version": "==1.23"
        },
        "uwsgi": {
            "hashes": [
                "sha256:3dc2e9b48db92b67bfec1badec0d3fdcc0771316486c5efa3217569da3528bf2"
            ],
            "index": "pypi",
            "version": "==2.0.17"
        },
        "wcwidth": {
            "hashes": [
                "sha256:3df37372226d6e63e1b1e1eda15c594bca98a22d33a23832a90998faa96bc65e",
                "sha256:f4ebe71925af7b40a864553f761ed559b43544f8f71746c2d756c7fe788ade7c"
            ],
            "version": "==0.1.7"
        },
        "wheel": {
            "hashes": [
                "sha256:0a2e54558a0628f2145d2fc822137e322412115173e8a2ddbe1c9024338ae83c",
                "sha256:80044e51ec5bbf6c894ba0bc48d26a8c20a9ba629f4ca19ea26ecfcf87685f5f"
            ],
            "index": "pypi",
            "version": "==0.31.1"
        },
        "xlsxwriter": {
            "hashes": [
                "sha256:05005a069da3fcadeb20ff9384d92e548096faf9ede9d6a538403fa8e0aae1f0",
                "sha256:bd4661c04a68621cb2ebc07c38b8b2e98e30bf213a16e1cf3675b61e26ca9bf2"
            ],
            "index": "pypi",
            "version": "==1.0.5"
        }
    },
    "develop": {}
}

Issue Analytics

  • State:closed
  • Created 5 years ago
  • Comments:9 (3 by maintainers)

github_iconTop GitHub Comments

2reactions
uranusjrcommented, Jul 4, 2018

Would pipenv lock --clear help on 2018.7.1?

0reactions
jakulcommented, Jul 27, 2018

I was having the same issue (with a slightly different error message):

Invalid requirement: 'futures==3.2.0 -i https://pypi.python.org/simple --extra-index-url https://myprivatepypi.com/path-prefix/'

The cause was that there were no hashes set for futures in my Pipenv.lock,

        "futures": {
            "hashes": [],
            "markers": "python_version >= '2.6' and python_version < '3'",
            "version": "==3.2.0"
        },

… which meant pipenv lock -r looked like this

-i https://pypi.python.org/simple
--extra-index-url https://myprivatepypi.com/path-prefix/
futures==3.2.0 -i https://pypi.python.org/simple --extra-index-url https://myprivatepypi.com/path-prefix/

pipenv lock --clear fixed it for me.

Read more comments on GitHub >

github_iconTop Results From Across the Web

How to fix locking failed in pipenv? - Stack Overflow
Here are my debugging notes. Still not sure which package is causing the problem, but this does seem to fix it. The error...
Read more >
pipenv Documentation - Read the Docs
Generates and checks file hashes for locked dependencies when installing from Pipfile.lock. • Automatically install required Python version when pyenv is ...
Read more >
Common Pipenv Errors and How to Solve Them: Why Won't it ...
Here, you'll learn how to troubleshoot Pipenv installation and locking issues. ... Pipfile won't lock when it tries to install packages that don't...
Read more >
pipenv Documentation
Improved verbose logging output during pipenv lock will now stream ... Raise PipenvUsageError when [[source]] does not contain url field.
Read more >
Release and Version History — pipenv 2022.12.20.dev0 ...
Solve issue where null markers were getting added to lock file when extras ... Fix: update --outdated raises NonExistentKey with outdated dev packages...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found