pipenv: pipenv install -e . not working as advertised

tom@ ~/projects/navigator-8/navigator8adt (feature/inject)*$ pipenv install -e .
Installing -e .…
⠧
Error:  An error occurred while installing -e .!
Directory '.' is not installable. File 'setup.py' not found.

tom@ ~/projects/navigator-8/navigator8adt (feature/inject)*$ ls -al setup.py
-rw-r--r--  1 tom  staff  1575 Apr 16 06:55 setup.py
tom@ ~/projects/navigator-8/navigator8adt (feature/inject)*$ pipenv --version
pipenv, version 11.10.0
tom@ ~/projects/navigator-8/navigator8adt (feature/inject)*$ pip --version
pip 10.0.0 from /usr/local/lib/python3.6/site-packages/pip (python 3.6)
tom@ ~/projects/navigator-8/navigator8adt (feature/inject)*$ 

this however does work

tom@ ~/projects/navigator-8/navigator8adt (feature/inject)*$ cd ../
tom@ ~/projects/navigator-8 $ pipenv install -e navigator8adt
Installing -e navigator8adt…
Obtaining file:///Users/tom/projects/navigator-8/navigator8adt
Requirement already satisfied: navigator8 in ./navigator8 (from navigator8adt==0.1.0)
Requirement already satisfied: pyramid in ./.venv/lib/python3.6/site-packages (from navigator8adt==0.1.0)
Requirement already satisfied: marshmallow==2.15.0 in ./.venv/lib/python3.6/site-packages (from navigator8adt==0.1.0)
Requirement already satisfied: inject in ./.venv/lib/python3.6/site-packages (from navigator8adt==0.1.0)
Requirement already satisfied: sqlalchemy in ./.venv/lib/python3.6/site-packages (from navigator8->navigator8adt==0.1.0)
Requirement already satisfied: stringcase in ./.venv/lib/python3.6/site-packages (from navigator8->navigator8adt==0.1.0)
Requirement already satisfied: marshmallow_jsonapi in ./.venv/lib/python3.6/site-packages (from navigator8->navigator8adt==0.1.0)
Requirement already satisfied: inflect in ./.venv/lib/python3.6/site-packages (from navigator8->navigator8adt==0.1.0)
Requirement already satisfied: psycopg2 in ./.venv/lib/python3.6/site-packages (from navigator8->navigator8adt==0.1.0)
Requirement already satisfied: zope.sqlalchemy in ./.venv/lib/python3.6/site-packages (from navigator8->navigator8adt==0.1.0)
Requirement already satisfied: pyramid_tm in ./.venv/lib/python3.6/site-packages (from navigator8->navigator8adt==0.1.0)
Requirement already satisfied: translationstring>=0.4 in ./.venv/lib/python3.6/site-packages (from pyramid->navigator8adt==0.1.0)
Requirement already satisfied: plaster-pastedeploy in ./.venv/lib/python3.6/site-packages (from pyramid->navigator8adt==0.1.0)
Requirement already satisfied: plaster in ./.venv/lib/python3.6/site-packages (from pyramid->navigator8adt==0.1.0)
Requirement already satisfied: setuptools in ./.venv/lib/python3.6/site-packages (from pyramid->navigator8adt==0.1.0)
Requirement already satisfied: repoze.lru>=0.4 in ./.venv/lib/python3.6/site-packages (from pyramid->navigator8adt==0.1.0)
Requirement already satisfied: WebOb>=1.7.0rc2 in ./.venv/lib/python3.6/site-packages (from pyramid->navigator8adt==0.1.0)
Requirement already satisfied: zope.interface>=3.8.0 in ./.venv/lib/python3.6/site-packages (from pyramid->navigator8adt==0.1.0)
Requirement already satisfied: zope.deprecation>=3.5.0 in ./.venv/lib/python3.6/site-packages (from pyramid->navigator8adt==0.1.0)
Requirement already satisfied: hupper in ./.venv/lib/python3.6/site-packages (from pyramid->navigator8adt==0.1.0)
Requirement already satisfied: venusian>=1.0a3 in ./.venv/lib/python3.6/site-packages (from pyramid->navigator8adt==0.1.0)
Requirement already satisfied: PasteDeploy>=1.5.0 in ./.venv/lib/python3.6/site-packages (from pyramid->navigator8adt==0.1.0)
Requirement already satisfied: transaction>=1.6.0 in ./.venv/lib/python3.6/site-packages (from zope.sqlalchemy->navigator8->navigator8adt==0.1.0)
Installing collected packages: navigator8adt
  Found existing installation: navigator8adt 0.1.0
    Uninstalling navigator8adt-0.1.0:
      Successfully uninstalled navigator8adt-0.1.0
  Running setup.py develop for navigator8adt
Successfully installed navigator8adt

Adding -e navigator8adt to Pipfile's [packages]…
Installing dependencies from Pipfile.lock (7b77c2)…
  🐍   ▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉ 75/75 — 00:00:16
To activate this project's virtualenv, run the following:
 $ pipenv shell
tom@ ~/projects/navigator-8 $ 
$ python -m pipenv.help output

Pipenv version: '11.10.0'

Pipenv location: '/Users/tom/projects/navigator-8/.venv/lib/python3.6/site-packages/pipenv'

Python location: '/Users/tom/projects/navigator-8/.venv/bin/python'

Other Python installations in PATH:

  • 2.6: /usr/bin/python2.6

  • 2.6: /usr/bin/python2.6

  • 2.7: /usr/local/bin/python2.7

  • 2.7: /usr/local/bin/python2.7

  • 2.7: /usr/local/bin/python2.7

  • 2.7: /usr/bin/python2.7

  • 3.6: /usr/local/bin/python3.6m

  • 3.6: /Users/tom/projects/navigator-8/.venv/bin/python3.6

  • 3.6: /usr/local/bin/python3.6

  • 3.6: /usr/local/bin/python3.6

  • 3.6.5: /Users/tom/projects/navigator-8/.venv/bin/python

  • 2.7.14: /usr/local/bin/python

  • 2.7.14: /usr/local/bin/python

  • 2.7.10: /usr/bin/python

  • 2.7.14: /usr/local/bin/python2

  • 2.7.14: /usr/local/bin/python2

  • 3.6.5: /Users/tom/projects/navigator-8/.venv/bin/python3

  • 3.6.5: /usr/local/bin/python3

  • 3.6.5: /usr/local/bin/python3

PEP 508 Information:

{'implementation_name': 'cpython',
 'implementation_version': '3.6.5',
 'os_name': 'posix',
 'platform_machine': 'x86_64',
 'platform_python_implementation': 'CPython',
 'platform_release': '16.7.0',
 'platform_system': 'Darwin',
 'platform_version': 'Darwin Kernel Version 16.7.0: Tue Jan 30 11:27:06 PST '
                     '2018; root:xnu-3789.73.11~1/RELEASE_X86_64',
 'python_full_version': '3.6.5',
 'python_version': '3.6',
 'sys_platform': 'darwin'}

System environment variables:

  • PATH
  • MANPATH
  • SSH_AGENT_PID
  • TERM_PROGRAM
  • TERM
  • SHELL
  • NEWRELIC_AGENT_ENABLED
  • HISTSIZE
  • TMPDIR
  • Apple_PubSub_Socket_Render
  • NVM_PATH
  • TERM_PROGRAM_VERSION
  • TERM_SESSION_ID
  • USER
  • HISTFILESIZE
  • NVM_DIR
  • SSH_AUTH_SOCK
  • __CF_USER_TEXT_ENCODING
  • _
  • NVM_NODEJS_ORG_MIRROR
  • PWD
  • LANG
  • XPC_FLAGS
  • RBENV_SHELL
  • XPC_SERVICE_NAME
  • HISTCONTROL
  • GITAWAREPROMPT
  • HOME
  • SHLVL
  • LOGNAME
  • NVM_BIN
  • NVM_IOJS_ORG_MIRROR
  • DISPLAY
  • SECURITYSESSIONID
  • GIT_SUBREPO_ROOT
  • PYTHONDONTWRITEBYTECODE
  • PIP_PYTHON_PATH
  • PYTHONUNBUFFERED

Pipenv–specific environment variables:

Debug–specific environment variables:

  • PATH: /Users/tom/projects/navigator-8/.venv/bin:/usr/local/Cellar/pipenv/11.10.0/libexec/tools:/Users/tom/projects/git-subrepo/lib:/Users/tom/.nvm/versions/node/v6.9.4/bin:/Users/tom/.rbenv/shims:/Applications/Racket v6.9/bin:/Users/tom/.rbenv/bin:/Users/tom/bin:/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/Library/TeX/texbin:/Users/tom/local/bin:/Users/tom/.nimble/bin:/usr/local/opt/fzf/bin
  • SHELL: /bin/bash
  • LANG: en_US.UTF-8
  • PWD: /Users/tom/projects/navigator-8/navigator8adt

Contents of Pipfile (‘/Users/tom/projects/navigator-8/Pipfile’):

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

[packages]
ipython = "*"
cookiecutter = "*"
"deba76a" = {path = "./navigator8", editable = true}
"6d2cadc" = {path = "./navigator8auth", editable = true}
"4800837" = {path = "./navigator8adt", editable = true}
"08facac" = {path = "./navigator8factories", editable = true}
pytest = "*"
inject = "*"
"48fadc6" = {path = "./tstinject", editable = true}
pipenv = "*"

[dev-packages]

[requires]
python_version = "3.6"

Contents of Pipfile.lock (‘/Users/tom/projects/navigator-8/Pipfile.lock’):

{
    "_meta": {
        "hash": {
            "sha256": "e3301b022bbd9cfa76049d30cba17c29a7d340e8d77bbe3c438888dc617b77c2"
        },
        "pipfile-spec": 6,
        "requires": {
            "python_version": "3.6"
        },
        "sources": [
            {
                "name": "pypi",
                "url": "https://pypi.python.org/simple",
                "verify_ssl": true
            }
        ]
    },
    "default": {
        "08facac": {
            "editable": true,
            "path": "./navigator8factories"
        },
        "4800837": {
            "editable": true,
            "path": "./navigator8adt"
        },
        "48fadc6": {
            "editable": true,
            "path": "./tstinject"
        },
        "6d2cadc": {
            "editable": true,
            "path": "./navigator8auth"
        },
        "appnope": {
            "hashes": [
                "sha256:5b26757dc6f79a3b7dc9fab95359328d5747fcb2409d331ea66d0272b90ab2a0",
                "sha256:8b995ffe925347a2138d7ac0fe77155e4311a0ea6d6da4f5128fe4b3cbe5ed71"
            ],
            "markers": "sys_platform == 'darwin'",
            "version": "==0.1.0"
        },
        "arrow": {
            "hashes": [
                "sha256:a558d3b7b6ce7ffc74206a86c147052de23d3d4ef0e17c210dd478c53575c4cd"
            ],
            "version": "==0.12.1"
        },
        "attrs": {
            "hashes": [
                "sha256:1c7960ccfd6a005cd9f7ba884e6316b5e430a3f1a6c37c5f87d8b43f83b54ec9",
                "sha256:a17a9573a6f475c99b551c0e0a812707ddda1ec9653bed04c13841404ed6f450"
            ],
            "version": "==17.4.0"
        },
        "backcall": {
            "hashes": [
                "sha256:38ecd85be2c1e78f77fd91700c76e14667dc21e2713b63876c0eb901196e01e4",
                "sha256:bbbf4b1e5cd2bdb08f915895b51081c041bac22394fdfcfdfbe9f14b77c08bf2"
            ],
            "version": "==0.1.0"
        },
        "bcrypt": {
            "hashes": [
                "sha256:01477981abf74e306e8ee31629a940a5e9138de000c6b0898f7f850461c4a0a5",
                "sha256:054d6e0acaea429e6da3613fcd12d05ee29a531794d96f6ab959f29a39f33391",
                "sha256:0872eeecdf9a429c1420158500eedb323a132bc5bf3339475151c52414729e70",
                "sha256:09a3b8c258b815eadb611bad04ca15ec77d86aa9ce56070e1af0d5932f17642a",
                "sha256:0f317e4ffbdd15c3c0f8ab5fbd86aa9aabc7bea18b5cc5951b456fe39e9f738c",
                "sha256:2788c32673a2ad0062bea850ab73cffc0dba874db10d7a3682b6f2f280553f20",
                "sha256:321d4d48be25b8d77594d8324c0585c80ae91ac214f62db9098734e5e7fb280f",
                "sha256:346d6f84ff0b493dbc90c6b77136df83e81f903f0b95525ee80e5e6d5e4eef84",
                "sha256:34dd60b90b0f6de94a89e71fcd19913a30e83091c8468d0923a93a0cccbfbbff",
                "sha256:3b4c23300c4eded8895442c003ae9b14328ae69309ac5867e7530de8bdd7875d",
                "sha256:43d1960e7db14042319c46925892d5fa99b08ff21d57482e6f5328a1aca03588",
                "sha256:49e96267cd9be55a349fd74f9852eb9ae2c427cd7f6455d0f1765d7332292832",
                "sha256:67ed1a374c9155ec0840214ce804616de49c3df9c5bc66740687c1c9b1cd9e8d",
                "sha256:6efd9ca20aefbaf2e7e6817a2c6ed4a50ff6900fafdea1bcb1d0e9471743b144",
                "sha256:8569844a5d8e1fdde4d7712a05ab2e6061343ac34af6e7e3d7935b2bd1907bfd",
                "sha256:8629ea6a8a59f865add1d6a87464c3c676e60101b8d16ef404d0a031424a8491",
                "sha256:988cac675e25133d01a78f2286189c1f01974470817a33eaf4cfee573cfb72a5",
                "sha256:9a6fedda73aba1568962f7543a1f586051c54febbc74e87769bad6a4b8587c39",
                "sha256:9eced8962ce3b7124fe20fd358cf8c7470706437fa064b9874f849ad4c5866fc",
                "sha256:a005ed6163490988711ff732386b08effcbf8df62ae93dd1e5bda0714fad8afb",
                "sha256:ae35dbcb6b011af6c840893b32399252d81ff57d52c13e12422e16b5fea1d0fb",
                "sha256:b1e8491c6740f21b37cca77bc64677696a3fb9f32360794d57fa8477b7329eda",
                "sha256:c906bdb482162e9ef48eea9f8c0d967acceb5c84f2d25574c7d2a58d04861df1",
                "sha256:cb18ffdc861dbb244f14be32c47ab69604d0aca415bee53485fcea4f8e93d5ef",
                "sha256:d86da365dda59010ba0d1ac45aa78390f56bf7f992e65f70b3b081d5e5257b09",
                "sha256:e22f0997622e1ceec834fd25947dc2ee2962c2133ea693d61805bc867abaf7ea",
                "sha256:f2fe545d27a619a552396533cddf70d83cecd880a611cdfdbb87ca6aec52f66b",
                "sha256:f7fd3ed3745fe6e81e28dc3b3d76cce31525a91f32a387e1febd6b982caf8cdb",
                "sha256:f9210820ee4818d84658ed7df16a7f30c9fba7d8b139959950acef91745cc0f7"
            ],
            "version": "==3.1.4"
        },
        "binaryornot": {
            "hashes": [
                "sha256:359501dfc9d40632edc9fac890e19542db1a287bbcfa58175b66658392018061",
                "sha256:b8b71173c917bddcd2c16070412e369c3ed7f0528926f70cac18a6c97fd563e4"
            ],
            "version": "==0.4.4"
        },
        "certifi": {
            "hashes": [
                "sha256:14131608ad2fd56836d33a71ee60fa1c82bc9d2c8d98b7bdbc631fe1b3cd1296",
                "sha256:edbc3f203427eef571f79a7692bb160a2b0f7ccaa31953e99bd17e307cf63f7d"
            ],
            "version": "==2018.1.18"
        },
        "cffi": {
            "hashes": [
                "sha256:151b7eefd035c56b2b2e1eb9963c90c6302dc15fbd8c1c0a83a163ff2c7d7743",
                "sha256:1553d1e99f035ace1c0544050622b7bc963374a00c467edafac50ad7bd276aef",
                "sha256:1b0493c091a1898f1136e3f4f991a784437fac3673780ff9de3bcf46c80b6b50",
                "sha256:2ba8a45822b7aee805ab49abfe7eec16b90587f7f26df20c71dd89e45a97076f",
                "sha256:3c85641778460581c42924384f5e68076d724ceac0f267d66c757f7535069c93",
                "sha256:3eb6434197633b7748cea30bf0ba9f66727cdce45117a712b29a443943733257",
                "sha256:4c91af6e967c2015729d3e69c2e51d92f9898c330d6a851bf8f121236f3defd3",
                "sha256:770f3782b31f50b68627e22f91cb182c48c47c02eb405fd689472aa7b7aa16dc",
                "sha256:79f9b6f7c46ae1f8ded75f68cf8ad50e5729ed4d590c74840471fc2823457d04",
                "sha256:7a33145e04d44ce95bcd71e522b478d282ad0eafaf34fe1ec5bbd73e662f22b6",
                "sha256:857959354ae3a6fa3da6651b966d13b0a8bed6bbc87a0de7b38a549db1d2a359",
                "sha256:87f37fe5130574ff76c17cab61e7d2538a16f843bb7bca8ebbc4b12de3078596",
                "sha256:95d5251e4b5ca00061f9d9f3d6fe537247e145a8524ae9fd30a2f8fbce993b5b",
                "sha256:9d1d3e63a4afdc29bd76ce6aa9d58c771cd1599fbba8cf5057e7860b203710dd",
                "sha256:a36c5c154f9d42ec176e6e620cb0dd275744aa1d804786a71ac37dc3661a5e95",
                "sha256:ae5e35a2c189d397b91034642cb0eab0e346f776ec2eb44a49a459e6615d6e2e",
                "sha256:b0f7d4a3df8f06cf49f9f121bead236e328074de6449866515cea4907bbc63d6",
                "sha256:b75110fb114fa366b29a027d0c9be3709579602ae111ff61674d28c93606acca",
                "sha256:ba5e697569f84b13640c9e193170e89c13c6244c24400fc57e88724ef610cd31",
                "sha256:be2a9b390f77fd7676d80bc3cdc4f8edb940d8c198ed2d8c0be1319018c778e1",
                "sha256:d5d8555d9bfc3f02385c1c37e9f998e2011f0db4f90e250e5bc0c0a85a813085",
                "sha256:e55e22ac0a30023426564b1059b035973ec82186ddddbac867078435801c7801",
                "sha256:e90f17980e6ab0f3c2f3730e56d1fe9bcba1891eeea58966e89d352492cc74f4",
                "sha256:ecbb7b01409e9b782df5ded849c178a0aa7c906cf8c5a67368047daab282b184",
                "sha256:ed01918d545a38998bfa5902c7c00e0fee90e957ce036a4000a88e3fe2264917",
                "sha256:edabd457cd23a02965166026fd9bfd196f4324fe6032e866d0f3bd0301cd486f",
                "sha256:fdf1c1dc5bafc32bc5d08b054f94d659422b05aba244d6be4ddc1c72d9aa70fb"
            ],
            "version": "==1.11.5"
        },
        "chardet": {
            "hashes": [
                "sha256:84ab92ed1c4d4f16916e05906b6b75a6c0fb5db821cc65e70cbd64a3e2a5eaae",
                "sha256:fc323ffcaeaed0e0a02bf4d117757b98aed530d9ed4531e3e15460124c106691"
            ],
            "version": "==3.0.4"
        },
        "click": {
            "hashes": [
                "sha256:29f99fc6125fbc931b758dc053b3114e55c77a6e4c6c3a2674a2dc986016381d",
                "sha256:f15516df478d5a56180fbf80e68f206010e6d160fc39fa508b65e035fd75130b"
            ],
            "version": "==6.7"
        },
        "cookiecutter": {
            "hashes": [
                "sha256:1316a52e1c1f08db0c9efbf7d876dbc01463a74b155a0d83e722be88beda9a3e",
                "sha256:ed8f54a8fc79b6864020d773ce11539b5f08e4617f353de1f22d23226f6a0d36"
            ],
            "index": "pypi",
            "version": "==1.6.0"
        },
        "deba76a": {
            "editable": true,
            "path": "./navigator8"
        },
        "decorator": {
            "hashes": [
                "sha256:2c51dff8ef3c447388fe5e4453d24a2bf128d3a4c32af3fabef1f01c6851ab82",
                "sha256:c39efa13fbdeb4506c476c9b3babf6a718da943dab7811c206005a4a956c080c"
            ],
            "version": "==4.3.0"
        },
        "factory-boy": {
            "hashes": [
                "sha256:bd5a096d0f102d79b6c78cef1c8c0b650f2e1a3ecba351c735c6d2df8dabd29c",
                "sha256:be2abc8092294e4097935a29b4e37f5b9ed3e4205e2e32df215c0315b625995e"
            ],
            "version": "==2.10.0"
        },
        "faker": {
            "hashes": [
                "sha256:226d8fa67a8cf8b4007aab721f67639f130e9cfdc53a7095a2290ebb07a65c71",
                "sha256:48fed4b4a191e2b42ad20c14115f1c6d36d338b80192075d7573f0f42d7fb321"
            ],
            "version": "==0.8.13"
        },
        "future": {
            "hashes": [
                "sha256:e39ced1ab767b5936646cedba8bcce582398233d6a627067d4c6a454c90cfedb"
            ],
            "version": "==0.16.0"
        },
        "hupper": {
            "hashes": [
                "sha256:3c054723ee7461d34260e2e9d99f9ae3fb106c3de3602c05f5e2eb554054ecb9",
                "sha256:e18037fa43fb4af7c00bd262ca6f5d7bcd22debd5d71e43b0fb1437f56e78035"
            ],
            "version": "==1.1"
        },
        "idna": {
            "hashes": [
                "sha256:2c6a5de3089009e3da7c5dde64a141dbc8551d5b7f6cf4ed7c2568d0cc520a8f",
                "sha256:8c7309c718f94b3a625cb648ace320157ad16ff131ae0af362c9f21b80ef6ec4"
            ],
            "version": "==2.6"
        },
        "inflect": {
            "hashes": [
                "sha256:0e2358f4f46a54cca3d77b983fa3708b02dc83acd8d28466a67e88b72e5c1b34",
                "sha256:2014c8dcb2114ebae2941ba3f0fbd98a02c846792a7b72f2da31eb9aa431a818"
            ],
            "version": "==0.2.5"
        },
        "inject": {
            "hashes": [
                "sha256:1977d07ad617cee5c99e447f8a78cd90722c0cab7e129a9fa6b1d263fe81773f"
            ],
            "index": "pypi",
            "version": "==3.3.2"
        },
        "ipython": {
            "hashes": [
                "sha256:85882f97d75122ff8cdfe129215a408085a26039527110c8d4a2b8a5e45b7639",
                "sha256:a6ac981381b3f5f604b37a293369963485200e3639fb0404fa76092383c10c41"
            ],
            "index": "pypi",
            "version": "==6.3.1"
        },
        "ipython-genutils": {
            "hashes": [
                "sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8",
                "sha256:eb2e116e75ecef9d4d228fdc66af54269afa26ab4463042e33785b887c628ba8"
            ],
            "version": "==0.2.0"
        },
        "jedi": {
            "hashes": [
                "sha256:1972f694c6bc66a2fac8718299e2ab73011d653a6d8059790c3476d2353b99ad",
                "sha256:5861f6dc0c16e024cbb0044999f9cf8013b292c05f287df06d3d991a87a4eb89"
            ],
            "version": "==0.12.0"
        },
        "jinja2": {
            "hashes": [
                "sha256:74c935a1b8bb9a3947c50a54766a969d4846290e1e788ea44c1392163723c3bd",
                "sha256:f84be1bb0040caca4cea721fcbbbbd61f9be9464ca236387158b0feea01914a4"
            ],
            "version": "==2.10"
        },
        "jinja2-time": {
            "hashes": [
                "sha256:d14eaa4d315e7688daa4969f616f226614350c48730bfa1692d2caebd8c90d40",
                "sha256:d3eab6605e3ec8b7a0863df09cc1d23714908fa61aa6986a845c20ba488b4efa"
            ],
            "version": "==0.2.0"
        },
        "markupsafe": {
            "hashes": [
                "sha256:a6be69091dac236ea9c6bc7d012beab42010fa914c459791d627dad4910eb665"
            ],
            "version": "==1.0"
        },
        "marshmallow": {
            "hashes": [
                "sha256:8740ada95f47fa19f905772aa4932dc5512226a90c30da5672d6d6bf3dd791a7",
                "sha256:d3f31fe7be2106b1d783cbd0765ef4e1c6615505514695f33082805f929dd584"
            ],
            "version": "==2.15.0"
        },
        "marshmallow-jsonapi": {
            "hashes": [
                "sha256:a0691dbd772bd14cb011ccb557ce0e4714ed602dae4f900c64ac579052641f79"
            ],
            "version": "==0.16.0"
        },
        "memoized-property": {
            "hashes": [
                "sha256:4be4d0209944b9b9b678dae9d7e312249fe2e6fb8bdc9bdaa1da4de324f0fcf5"
            ],
            "version": "==1.0.3"
        },
        "more-itertools": {
            "hashes": [
                "sha256:0dd8f72eeab0d2c3bd489025bb2f6a1b8342f9b198f6fc37b52d15cfa4531fea",
                "sha256:11a625025954c20145b37ff6309cd54e39ca94f72f6bb9576d1195db6fa2442e",
                "sha256:c9ce7eccdcb901a2c75d326ea134e0886abfbea5f93e91cc95de9507c0816c44"
            ],
            "version": "==4.1.0"
        },
        "parso": {
            "hashes": [
                "sha256:62bd6bf7f04ab5c817704ff513ef175328676471bdef3629d4bdd46626f75551",
                "sha256:a75a304d7090d2c67bd298091c14ef9d3d560e3c53de1c239617889f61d1d307"
            ],
            "version": "==0.2.0"
        },
        "pastedeploy": {
            "hashes": [
                "sha256:39973e73f391335fac8bc8a8a95f7d34a9f42e2775600ce2dc518d93b37ef943",
                "sha256:d5858f89a255e6294e63ed46b73613c56e3b9a2d82a42f1df4d06c8421a9e3cb"
            ],
            "version": "==1.5.2"
        },
        "pexpect": {
            "hashes": [
                "sha256:9783f4644a3ef8528a6f20374eeb434431a650c797ca6d8df0d81e30fffdfa24",
                "sha256:9f8eb3277716a01faafaba553d629d3d60a1a624c7cf45daa600d2148c30020c"
            ],
            "markers": "sys_platform != 'win32'",
            "version": "==4.5.0"
        },
        "pickleshare": {
            "hashes": [
                "sha256:84a9257227dfdd6fe1b4be1319096c20eb85ff1e82c7932f36efccfe1b09737b",
                "sha256:c9a2541f25aeabc070f12f452e1f2a8eae2abd51e1cd19e8430402bdf4c1d8b5"
            ],
            "version": "==0.7.4"
        },
        "pipenv": {
            "hashes": [
                "sha256:325b26672172f11cf46ee5fa31cc4c751df24f920617ca21eeb68fce70a394e2",
                "sha256:dab6b2e5347757cda7973e6c6065c30c020c5ff8b0687306b83e962aea4adc6c"
            ],
            "index": "pypi",
            "version": "==11.10.0"
        },
        "plaster": {
            "hashes": [
                "sha256:215c921a438b5349931fd7df9a5a11a3572947f20f4bc6dd622ac08f1c3ba249",
                "sha256:8351c7c7efdf33084c1de88dd0f422cbe7342534537b553c49b857b12d98c8c3"
            ],
            "version": "==1.0"
        },
        "plaster-pastedeploy": {
            "hashes": [
                "sha256:25cc239d767c5fab0afa44b1ed3c1a33a3d7ec6302ff2e599aec674b77ff6667",
                "sha256:70a3185b2a3336996a26e9987968cf35e84cf13390b7e8a0a9a91eb8f6f85ba9"
            ],
            "version": "==0.5"
        },
        "pluggy": {
            "hashes": [
                "sha256:7f8ae7f5bdf75671a718d2daf0a64b7885f74510bcd98b1a0bb420eb9a9d0cff",
                "sha256:d345c8fe681115900d6da8d048ba67c25df42973bda370783cd58826442dcd7c",
                "sha256:e160a7fcf25762bb60efc7e171d4497ff1d8d2d75a3d0df7a21b76821ecbf5c5"
            ],
            "version": "==0.6.0"
        },
        "poyo": {
            "hashes": [
                "sha256:103b4ee3e1c7765098fe1cabe43f828db2e2a6079646561a2117e1a809f352d6",
                "sha256:230ec11c2f35a23410c1f0e474f09fa4e203686f40ab3adca7b039c845d8c325"
            ],
            "version": "==0.4.1"
        },
        "prompt-toolkit": {
            "hashes": [
                "sha256:1df952620eccb399c53ebb359cc7d9a8d3a9538cb34c5a1344bdbeb29fbcc381",
                "sha256:3f473ae040ddaa52b52f97f6b4a493cfa9f5920c255a12dc56a7d34397a398a4",
                "sha256:858588f1983ca497f1cf4ffde01d978a3ea02b01c8a26a8bbc5cd2e66d816917"
            ],
            "version": "==1.0.15"
        },
        "psycopg2": {
            "hashes": [
                "sha256:027ae518d0e3b8fff41990e598bc7774c3d08a3a20e9ecc0b59fb2aaaf152f7f",
                "sha256:092a80da1b052a181b6e6c765849c9b32d46c5dac3b81bf8c9b83e697f3cdbe8",
                "sha256:0b9851e798bae024ed1a2a6377a8dab4b8a128a56ed406f572f9f06194e4b275",
                "sha256:179c52eb870110a8c1b460c86d4f696d58510ea025602cd3f81453746fccb94f",
                "sha256:19983b77ec1fc2a210092aa0333ee48811fd9fb5f194c6cd5b927ed409aea5f8",
                "sha256:1d90379d01d0dc50ae9b40c863933d87ff82d51dd7d52cea5d1cb7019afd72cd",
                "sha256:27467fd5af1dcc0a82d72927113b8f92da8f44b2efbdb8906bd76face95b596d",
                "sha256:32702e3bd8bfe12b36226ba9846ed9e22336fc4bd710039d594b36bd432ae255",
                "sha256:33f9e1032095e1436fa9ec424abcbd4c170da934fb70e391c5d78275d0307c75",
                "sha256:36030ca7f4b4519ee4f52a74edc4ec73c75abfb6ea1d80ac7480953d1c0aa3c3",
                "sha256:363fbbf4189722fc46779be1fad2597e2c40b3f577dc618f353a46391cf5d235",
                "sha256:6f302c486132f8dd11f143e919e236ea4467d53bf18c451cac577e6988ecbd05",
                "sha256:733166464598c239323142c071fa4c9b91c14359176e5ae7e202db6bcc1d2eb5",
                "sha256:7cbc3b21ce2f681ca9ad2d8c0901090b23a30c955e980ebf1006d41f37068a95",
                "sha256:888bba7841116e529f407f15c6d28fe3ef0760df8c45257442ec2f14f161c871",
                "sha256:8966829cb0d21a08a3c5ac971a2eb67c3927ae27c247300a8476554cc0ce2ae8",
                "sha256:8bf51191d60f6987482ef0cfe8511bbf4877a5aa7f313d7b488b53189cf26209",
                "sha256:8eb94c0625c529215b53c08fb4e461546e2f3fc96a49c13d5474b5ad7aeab6cf",
                "sha256:8ebba5314c609a05c6955e5773c7e0e57b8dd817e4f751f30de729be58fa5e78",
                "sha256:932a4c101af007cb3132b1f8a9ffef23386acc53dad46536dc5ba43a3235ae02",
                "sha256:ad75fe10bea19ad2188c5cb5fc4cdf53ee808d9b44578c94a3cd1e9fc2beb656",
                "sha256:aeaba399254ca79c299d9fe6aa811d3c3eac61458dee10270de7f4e71c624998",
                "sha256:b178e0923c93393e16646155794521e063ec17b7cc9f943f15b7d4b39776ea2c",
                "sha256:b68e89bb086a9476fa85298caab43f92d0a6af135a5f433d1f6b6d82cafa7b55",
                "sha256:d74cf9234ba76426add5e123449be08993a9b13ff434c6efa3a07caa305a619f",
                "sha256:f3d3a88128f0c219bdc5b2d9ccd496517199660cea021c560a3252116df91cbd",
                "sha256:fe6a7f87356116f5ea840c65b032af17deef0e1a5c34013a2962dd6f99b860dd"
            ],
            "version": "==2.7.4"
        },
        "ptyprocess": {
            "hashes": [
                "sha256:e64193f0047ad603b71f202332ab5527c5e52aa7c8b609704fc28c0dc20c4365",
                "sha256:e8c43b5eee76b2083a9badde89fd1bbce6c8942d1045146e100b7b5e014f4f1a"
            ],
            "version": "==0.5.2"
        },
        "py": {
            "hashes": [
                "sha256:29c9fab495d7528e80ba1e343b958684f4ace687327e6f789a94bf3d1915f881",
                "sha256:983f77f3331356039fdd792e9220b7b8ee1aa6bd2b25f567a963ff1de5a64f6a"
            ],
            "version": "==1.5.3"
        },
        "pycparser": {
            "hashes": [
                "sha256:99a8ca03e29851d96616ad0404b4aad7d9ee16f25c9f9708a11faf2810f7b226"
            ],
            "version": "==2.18"
        },
        "pygments": {
            "hashes": [
                "sha256:78f3f434bcc5d6ee09020f92ba487f95ba50f1e3ef83ae96b9d5ffa1bab25c5d",
                "sha256:dbae1046def0efb574852fab9e90209b23f556367b5a320c0bcb871c77c3e8cc"
            ],
            "version": "==2.2.0"
        },
        "pyjwt": {
            "hashes": [
                "sha256:bca523ef95586d3a8a5be2da766fe6f82754acba27689c984e28e77a12174593",
                "sha256:dacba5786fe3bf1a0ae8673874e29f9ac497860955c501289c63b15d3daae63a"
            ],
            "version": "==1.6.1"
        },
        "pyramid": {
            "hashes": [
                "sha256:7da99f42fbc31cb36ae5297091734cab4e27d222da806dd370f3466ea8c6c422",
                "sha256:840f4bbd5994609340de35079da0d1dd94f79942e27818d5d8566f8009fb0b36"
            ],
            "version": "==1.9.1"
        },
        "pyramid-tm": {
            "hashes": [
                "sha256:07d03bab7bdd265c3920db4e68dbaa8cbaff27da828700f404b1424244ad617f",
                "sha256:11b0f31482339d655358081bc1366d39679d02588782b5c8019bfb41ae02ba3d"
            ],
            "version": "==2.2"
        },
        "pytest": {
            "hashes": [
                "sha256:6266f87ab64692112e5477eba395cfedda53b1933ccd29478e671e73b420c19c",
                "sha256:fae491d1874f199537fd5872b5e1f0e74a009b979df9d53d1553fd03da1703e1"
            ],
            "index": "pypi",
            "version": "==3.5.0"
        },
        "python-dateutil": {
            "hashes": [
                "sha256:3220490fb9741e2342e1cf29a503394fdac874bc39568288717ee67047ff29df",
                "sha256:9d8074be4c993fbe4947878ce593052f71dac82932a677d49194d8ce9778002e"
            ],
            "version": "==2.7.2"
        },
        "pytz": {
            "hashes": [
                "sha256:65ae0c8101309c45772196b21b74c46b2e5d11b6275c45d251b150d5da334555",
                "sha256:c06425302f2cf668f1bba7a0a03f3c1d34d4ebeef2c72003da308b3947c7f749"
            ],
            "version": "==2018.4"
        },
        "repoze.lru": {
            "hashes": [
                "sha256:0429a75e19380e4ed50c0694e26ac8819b4ea7851ee1fc7583c8572db80aff77",
                "sha256:f77bf0e1096ea445beadd35f3479c5cff2aa1efe604a133e67150bc8630a62ea"
            ],
            "version": "==0.7"
        },
        "requests": {
            "hashes": [
                "sha256:6a1b267aa90cac58ac3a765d067950e7dbbf75b1da07e895d1f594193a40a38b",
                "sha256:9c443e7324ba5b85070c4a818ade28bfabedf16ea10206da1132edaa6dda237e"
            ],
            "version": "==2.18.4"
        },
        "simplegeneric": {
            "hashes": [
                "sha256:dc972e06094b9af5b855b3df4a646395e43d1c9d0d39ed345b7393560d0b9173"
            ],
            "version": "==0.8.1"
        },
        "six": {
            "hashes": [
                "sha256:70e8a77beed4562e7f14fe23a786b54f6296e34344c23bc42f07b15018ff98e9",
                "sha256:832dc0e10feb1aa2c68dcc57dbb658f1c7e65b9b61af69048abc87a2db00a0eb"
            ],
            "version": "==1.11.0"
        },
        "sqlalchemy": {
            "hashes": [
                "sha256:7cb00cc9b9f92ef8b4391c8a2051f81eeafefe32d63c6b395fd51401e9a39edb"
            ],
            "version": "==1.2.6"
        },
        "stringcase": {
            "hashes": [
                "sha256:48a06980661908efe8d9d34eab2b6c13aefa2163b3ced26972902e3bdfd87008"
            ],
            "version": "==1.2.0"
        },
        "text-unidecode": {
            "hashes": [
                "sha256:5a1375bb2ba7968740508ae38d92e1f889a0832913cb1c447d5e2046061a396d",
                "sha256:801e38bd550b943563660a91de8d4b6fa5df60a542be9093f7abf819f86050cc"
            ],
            "version": "==1.2"
        },
        "traitlets": {
            "hashes": [
                "sha256:9c4bd2d267b7153df9152698efb1050a5d84982d3384a37b2c1f7723ba3e7835",
                "sha256:c6cb5e6f57c5a9bdaa40fa71ce7b4af30298fbab9ece9815b5d995ab6217c7d9"
            ],
            "version": "==4.3.2"
        },
        "transaction": {
            "hashes": [
                "sha256:269601a3493cd3eddeb869419ceadfc5e6d2bc931e9970d11fc4649dab189c3c",
                "sha256:9de0f93f833713270fbceaf6092194313c1de0afb660e66dea8e089855eb281c",
                "sha256:f2242070e437e5d555ea3df809cb517860513254c828f33847df1c5e4b776c7a"
            ],
            "version": "==2.2.1"
        },
        "translationstring": {
            "hashes": [
                "sha256:4ee44cfa58c52ade8910ea0ebc3d2d84bdcad9fa0422405b1801ec9b9a65b72d",
                "sha256:e26c7bf383413234ed442e0980a2ebe192b95e3745288a8fd2805156d27515b4"
            ],
            "version": "==1.3"
        },
        "urllib3": {
            "hashes": [
                "sha256:06330f386d6e4b195fbfc736b297f58c5a892e4440e54d294d7004e3a9bbea1b",
                "sha256:cc44da8e1145637334317feebd728bd869a35285b93cbb4cca2577da7e62db4f"
            ],
            "version": "==1.22"
        },
        "venusian": {
            "hashes": [
                "sha256:757162c5f907e18571b6ab41b7673e5bf18cc8715abf8164292eaef4f1610668",
                "sha256:9902e492c71a89a241a18b2f9950bea7e41d025cc8f3af1ea8d8201346f8577d"
            ],
            "version": "==1.1.0"
        },
        "virtualenv": {
            "hashes": [
                "sha256:1d7e241b431e7afce47e77f8843a276f652699d1fa4f93b9d8ce0076fd7b0b54",
                "sha256:e8e05d4714a1c51a2f5921e62f547fcb0f713ebbe959e0a7f585cc8bef71d11f"
            ],
            "version": "==15.2.0"
        },
        "virtualenv-clone": {
            "hashes": [
                "sha256:4507071d81013fd03ea9930ec26bc8648b997927a11fa80e8ee81198b57e0ac7",
                "sha256:b5cfe535d14dc68dfc1d1bb4ac1209ea28235b91156e2bba8e250d291c3fb4f8"
            ],
            "version": "==0.3.0"
        },
        "wcwidth": {
            "hashes": [
                "sha256:3df37372226d6e63e1b1e1eda15c594bca98a22d33a23832a90998faa96bc65e",
                "sha256:f4ebe71925af7b40a864553f761ed559b43544f8f71746c2d756c7fe788ade7c"
            ],
            "version": "==0.1.7"
        },
        "webob": {
            "hashes": [
                "sha256:1771899117c8851153f6f91e8b8a86236972aa8a1b6bd69ad0a36a9879ea2cd7",
                "sha256:54f35073d2fdcddd7a98c2a1dedeede49739150737164a787220f30283139ba6"
            ],
            "version": "==1.8.1"
        },
        "whichcraft": {
            "hashes": [
                "sha256:9e0d51c9387cb7e9f28b7edb549e6a03da758f7784f991eb4397d7f7808c57fd",
                "sha256:cd0e10b58960ab877d9f273cd28788730936c3cdaceec2dafad97c7cf3067d46"
            ],
            "version": "==0.4.1"
        },
        "zope.deprecation": {
            "hashes": [
                "sha256:7d52e134bbaaa0d72e1e2bc90f0587f1adc116c4bdf15912afaf2f1e8856b224",
                "sha256:c83cfef3085d10dcb07de5a59a2d95713865befa46e0e88784c5648610fba789"
            ],
            "version": "==4.3.0"
        },
        "zope.interface": {
            "hashes": [
                "sha256:11b068fc9916556f3820f38c2376c28d8e55e4a2c51c34915aaac38b75706d2e",
                "sha256:16fe824b3d93ee0629aa1f04848a1b515d6b5dc9e98cc7a04feaa35fdb0de5f1",
                "sha256:1d954d557b63124a65f2247ac6ed66fa36df18d1e8538d08c9b432e808a634de",
                "sha256:3d033abd27cd54157cf42a3bfd4d8c28d7fc5c6f775df3332307d2632a79925b",
                "sha256:4be05f79e952793f31a0c2d6a0672c81a3300315da587ce6a590357595217005",
                "sha256:4cb1c56b0356da9a33249ef77a688c47107f54191c12a0055d284b6bee7f447e",
                "sha256:5a8cc535f4212b134e66a3e1c6b93b19d453dbad0e2f89d0df2c01deefc8cad9",
                "sha256:5d8813e438ab67a793b09e1223742b757dd95a4a64d466855a53cb113cc9c9c4",
                "sha256:78321a6c0c8cc6ac928e44ef04d50384bc864a7f5e3c25b84110da2ede83739f",
                "sha256:88e3d54e88a601f45d03e2a062d5d16852d20e0863a92c19260ae72e2586378a",
                "sha256:8dfdc1588db31895f81bcba6c36dc981b4cf4a526c62eae3745bbfbe102477ef",
                "sha256:9902d5fc11309e17cdce6574243dc114b9c30de5c60ab53c90f6e3e962688565",
                "sha256:a16a3e07511fb6806bb48c8c661d38cdb91cd4bc6c2b6b0b173e72362ec1ceb4",
                "sha256:a21d69de2ee89fc59de93e7a43c0379ecedb5149739ff94e910c2bf0ca18e181",
                "sha256:a6375035a4b45d199a8b990e3a2f6b71906c318c56dfc14b2d58350b6ca59392",
                "sha256:aef398a5b92e70b8152d2c4850bad0fe185adb50d948f32d0bba5694d82b67c7",
                "sha256:b8f3491c9df4f0ffed32b275033e74041f420e5dcdefa4b1500d753c64ef42cf",
                "sha256:bd626cd76b7e5cbecac9d3e0dd8f98e3eada15ead95713238a523f877327633d",
                "sha256:d6d26d5dfbfd60c65152938fcb82f949e8dada37c041f72916fef6621ba5c5ce",
                "sha256:dec19181cf6af58ccb8ba3fa3ca9d4ec555b2f3cb31f589f6e86d15df0926c31",
                "sha256:f47d4138405eb67e5f059b9ab74e0a1147adc3277f5fe37d5bae5209b67e89e7",
                "sha256:f6868378fffbb8651f1f8a767d17e42aed39926c8f6bb9c56f184022fe6c2090",
                "sha256:ff20038fbc0e7ea050a7e28fcb8ae6ed8378a8d08ac70b848ea39960dda86bbf"
            ],
            "version": "==4.4.3"
        },
        "zope.sqlalchemy": {
            "hashes": [
                "sha256:9316a1a8bb9e4f9f59332acf1ad2cc8b664f19a4bde5f68be7f61f3e11f80514"
            ],
            "version": "==1.0"
        }
    },
    "develop": {}
}


About this issue

  • Original URL
  • State: closed
  • Created 6 years ago
  • Comments: 18 (10 by maintainers)

Most upvoted comments

right. I see the problem here. Your workflow isn’t quite in line with how pipenv is designed, sorry for the confusion if this was unintuitive. There are a few things going on:

  1. We don’t really intend for people to create an environment as a separate step, with no packages, and then activate the shell, step into it, and start cloning packages to install. This is part of what we would consider an old workflow that requires you to be constantly thinking about whether you have activated a virtualenv before you can install packages, and it’s something we want to discourage. Pipenv first and foremost is a dependency manager. Running it by itself without any dependencies to install is possible, but doesn’t make a lot of sense.

  2. Specifically paths in a pipenv project are relative to the project itself. So when you pipenv install -e . you are installing the project root, not the directory you cd into. There are a lot of pragmatic and technical reasons for this, but mostly because if your project is not itself a package, it expects you to give it paths to packages or else the resulting Pipfile will be unusable. Imagine that every time you install a thing, it goes into your pipfile to be reproduced later – if we just put -e . in your pipfile every time you try this it wouldn’t make sense given that a project is the basis of all pipenv operations and as such all paths are translated relative to the project root.

The workflow you’d want for something like the example you gave could be one of two things depending on your needs:

$ git clone https://github.com/Pylons/pyramid.git
$ pipenv install -e ./pyramid/

Which would create a pipfile that looks like this:

...
[packages]
"hash" = {path = "./pyramid/", editable = true}
...

or you could just do the following:

$ pipenv install -e git+https://github.com/Pylons/pyramid.git#egg=pyramid

and that would create a pipfile like this:

...
[packages]
"pyramid" = {git = "https://github.com/Pylons/pyramid.git", editable = true}
...

And in the second case it wouldn’t be in a local directory but would still install from VCS

Maybe we can at least provide more meaningful messages by resolving the relative path before passing it to pip?

As of now (version 2018.11.26), I think that the error message is still quite unhelpful. For me, it gives:

pipenv.vendor.requirementslib.exceptions.RequirementError: Error parsing requirement . – are you sure it is installable?

Which, given that the setup.py is right there in front of me, is confusing. pip install -e . does install the package as does cd .. && pipenv install -e dirname/.

@uranusjr exactly, telling me my setup.py does not exist when i’m looking right at the thing was misleading and the very reason I reported it as a bug. I’m assuming other humans would be just as surprised.

Maybe we can at least provide more meaningful messages by resolving the relative path before passing it to pip? Setuptools can then emit something like

Directory '/home/twillis/tstenv' is not installable. File 'setup.py' not found.

The path in Pipfile would still be relative.