pypa / pipenv

Python Development Workflow for Humans.
https://pipenv.pypa.io
MIT License
24.85k stars 1.87k forks source link

extra-index-url that works with pip does not work with pipenv install #3704

Closed kureta closed 5 years ago

kureta commented 5 years ago

Issue description

Pytorch nightly can be installed using this pip command:

pip install torch_nightly -f https://download.pytorch.org/whl/nightly/cu100/torch_nightly.html

I am unable to install the same package using pipenv install.

I added this source entry in my Pipfile

[[source]]
name = "pytorch-nightly"
url = "https://download.pytorch.org/whl/nightly/cu100/torch_nightly.html"
verify_ssl = true

and added torch-nightly under packages like this:

[packages]
torch-nightly = {version="*", index="pytorch-nightly"}

Expected result

Installation of torch-nightly from pytorch's index

Actual result

ERROR: ERROR: Could not find a version that matches torch-nightly

Steps to replicate

Add the above [[source]] and [packages] entries in your Pipfile and run pipenv install


$ pipenv --support Pipenv version: `'2018.11.15.dev0'` Pipenv location: `'/usr/lib/python3.7/site-packages/pipenv'` Python location: `'/usr/bin/python'` Python installations found: - `3.7.3`: `/usr/bin/python3` - `3.7.3`: `/usr/bin/python3.7m` - `3.7.2`: `/home/kureta/.pyenv/versions/dimensions-venv/bin/python` - `3.7.2`: `/home/kureta/.pyenv/versions/exif-move-venv/bin/python` - `3.7.2`: `/home/kureta/.pyenv/versions/DRIT-venv/bin/python` - `3.7.2`: `/home/kureta/.pyenv/versions/tf-venv/bin/python` - `3.7.2`: `/home/kureta/.pyenv/versions/wgan-gp-venv/bin/python` - `3.7.2`: `/home/kureta/.pyenv/versions/zachary-venv/bin/python` - `3.7.2`: `/home/kureta/.pyenv/versions/stylegan-venv/bin/python` - `3.7.2`: `/home/kureta/.pyenv/versions/3.7.2/bin/python` - `3.7.2`: `/home/kureta/.pyenv/versions/3.7.2/bin/python3.7m` - `2.7.16`: `/usr/bin/python2` PEP 508 Information: ``` {'implementation_name': 'cpython', 'implementation_version': '3.7.3', 'os_name': 'posix', 'platform_machine': 'x86_64', 'platform_python_implementation': 'CPython', 'platform_release': '4.19.31-rt18-4-rt-bfq', 'platform_system': 'Linux', 'platform_version': '#1 SMP PREEMPT RT Sat Apr 13 17:52:33 +03 2019', 'python_full_version': '3.7.3', 'python_version': '3.7', 'sys_platform': 'linux'} ``` System environment variables: - `SHELL` - `DESKTOP_SESSION` - `GTK_MODULES` - `XDG_SEAT` - `PWD` - `LOGNAME` - `QT_QPA_PLATFORMTHEME` - `XDG_SESSION_TYPE` - `DSSI_PATH` - `XAUTHORITY` - `HOME` - `LANG` - `VST_PATH` - `XDG_CURRENT_DESKTOP` - `INVOCATION_ID` - `XDG_SESSION_CLASS` - `USER` - `DISPLAY` - `SHLVL` - `XDG_VTNR` - `XDG_SESSION_ID` - `XDG_RUNTIME_DIR` - `MAVEN_OPTS` - `JOURNAL_STREAM` - `PATH` - `DBUS_SESSION_BUS_ADDRESS` - `LV2_PATH` - `MAIL` - `LADSPA_PATH` - `CADENCE_AUTO_STARTED` - `_` - `KITTY_WINDOW_ID` - `WINDOWID` - `TERM` - `COLORTERM` - `TERMINFO` - `OLDPWD` - `ZSH` - `GEM_HOME` - `EDITOR` - `ALTERNATE_EDITOR` - `PAGER` - `LESS` - `LSCOLORS` - `LS_COLORS` - `PYENV_SHELL` - `LC_CTYPE` - `PIP_DISABLE_PIP_VERSION_CHECK` - `PYTHONDONTWRITEBYTECODE` - `PIP_SHIMS_BASE_MODULE` - `PIP_PYTHON_PATH` - `PYTHONFINDER_IGNORE_UNSUPPORTED` Pipenv–specific environment variables: Debug–specific environment variables: - `PATH`: `/home/kureta/.pyenv/shims:/home/kureta/.gem/ruby/2.6.0/bin:/home/kureta/.local/bin:/home/kureta/.gem/ruby/2.6.0/bin:/home/kureta/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/opt/cuda/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:/home/kureta/.pyenv/bin` - `SHELL`: `/usr/bin/zsh` - `EDITOR`: `vim` - `LANG`: `en_US.UTF-8` - `PWD`: `/home/kureta/Documents/repos/berlin` --------------------------- Contents of `Pipfile` ('/home/kureta/Documents/repos/berlin/Pipfile'): ```toml [[source]] name = "pypi" url = "https://pypi.org/simple" verify_ssl = true [[source]] name = "pytorch" url = "https://download.pytorch.org/whl/nightly/cu100/torch_nightly.html" verify_ssl = true [dev-packages] [packages] numpy = "*" opencv-python = "*" essentia = "*" jack-client = "*" torch-nightly = {version="*", index="pytorch"} torchvision-nightly = "*" [requires] python_version = "3.7" [pipenv] allow_prereleases = true ``` Contents of `Pipfile.lock` ('/home/kureta/Documents/repos/berlin/Pipfile.lock'): ```json { "_meta": { "hash": { "sha256": "463d71343037600bdf8b22cda39a97f0e9cc6cd9cd9bf65dc299658435997b81" }, "pipfile-spec": 6, "requires": { "python_version": "3.7" }, "sources": [ { "name": "pypi", "url": "https://pypi.org/simple", "verify_ssl": true }, { "name": "pytorch", "url": "https://download.pytorch.org/whl/nightly/cu100/torch_nightly.html", "verify_ssl": true } ] }, "default": {}, "develop": {} } ```
kureta commented 5 years ago

I guess the page isn't a valid index, so the right option to use is --find-links which is apparently only possible via an environment variable. It works with PIP_FIND_LINKS but shouldn't there also be a way to specify this inside the Pipfile? Should I close this issue and open another one for a feature request, or will this be the only official way to do this?

kureta commented 5 years ago

To clarify: I have set the environment variable PIP_FIND_LINKS="https://download.pytorch.org/whl/nightly/cu100/torch_nightly.html" and now all the pipenv commands work without a problem. It is able to find and install the latest torch-nightly. However this environment variable cannot be seen in Pipfile or Pipfile.lock and there is no way for anyone else who clones my repository to know that they have to set this environment variable, other than adding it explicitly to setup instructions, which is less than ideal. And my latest configuration is as follows:

$ pipenv --support Pipenv version: `'2018.11.15.dev0'` Pipenv location: `'/usr/lib/python3.7/site-packages/pipenv'` Python location: `'/usr/bin/python'` Python installations found: - `3.7.3`: `/usr/bin/python3` - `3.7.3`: `/usr/bin/python3.7m` - `3.7.2`: `/home/kureta/.pyenv/versions/dimensions-venv/bin/python` - `3.7.2`: `/home/kureta/.pyenv/versions/exif-move-venv/bin/python` - `3.7.2`: `/home/kureta/.pyenv/versions/DRIT-venv/bin/python` - `3.7.2`: `/home/kureta/.pyenv/versions/tf-venv/bin/python` - `3.7.2`: `/home/kureta/.pyenv/versions/wgan-gp-venv/bin/python` - `3.7.2`: `/home/kureta/.pyenv/versions/zachary-venv/bin/python` - `3.7.2`: `/home/kureta/.pyenv/versions/stylegan-venv/bin/python` - `3.7.2`: `/home/kureta/.pyenv/versions/3.7.2/bin/python` - `3.7.2`: `/home/kureta/.pyenv/versions/3.7.2/bin/python3.7m` - `2.7.16`: `/usr/bin/python2` PEP 508 Information: ``` {'implementation_name': 'cpython', 'implementation_version': '3.7.3', 'os_name': 'posix', 'platform_machine': 'x86_64', 'platform_python_implementation': 'CPython', 'platform_release': '4.19.31-rt18-4-rt-bfq', 'platform_system': 'Linux', 'platform_version': '#1 SMP PREEMPT RT Sat Apr 13 17:52:33 +03 2019', 'python_full_version': '3.7.3', 'python_version': '3.7', 'sys_platform': 'linux'} ``` System environment variables: - `SHELL` - `DESKTOP_SESSION` - `GTK_MODULES` - `XDG_SEAT` - `PWD` - `LOGNAME` - `QT_QPA_PLATFORMTHEME` - `XDG_SESSION_TYPE` - `DSSI_PATH` - `XAUTHORITY` - `HOME` - `LANG` - `VST_PATH` - `XDG_CURRENT_DESKTOP` - `INVOCATION_ID` - `XDG_SESSION_CLASS` - `USER` - `DISPLAY` - `SHLVL` - `XDG_VTNR` - `XDG_SESSION_ID` - `XDG_RUNTIME_DIR` - `MAVEN_OPTS` - `JOURNAL_STREAM` - `PATH` - `DBUS_SESSION_BUS_ADDRESS` - `LV2_PATH` - `MAIL` - `LADSPA_PATH` - `CADENCE_AUTO_STARTED` - `_` - `KITTY_WINDOW_ID` - `WINDOWID` - `TERM` - `COLORTERM` - `TERMINFO` - `OLDPWD` - `ZSH` - `PIP_FIND_LINKS` - `GEM_HOME` - `EDITOR` - `ALTERNATE_EDITOR` - `PAGER` - `LESS` - `LSCOLORS` - `LS_COLORS` - `PYENV_SHELL` - `LC_CTYPE` - `PIP_DISABLE_PIP_VERSION_CHECK` - `PYTHONDONTWRITEBYTECODE` - `PIP_SHIMS_BASE_MODULE` - `PIP_PYTHON_PATH` - `PYTHONFINDER_IGNORE_UNSUPPORTED` Pipenv–specific environment variables: Debug–specific environment variables: - `PATH`: `/home/kureta/.pyenv/shims:/home/kureta/.gem/ruby/2.6.0/bin:/home/kureta/.local/bin:/home/kureta/.gem/ruby/2.6.0/bin:/home/kureta/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/opt/cuda/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:/home/kureta/.pyenv/bin` - `SHELL`: `/usr/bin/zsh` - `EDITOR`: `vim` - `LANG`: `en_US.UTF-8` - `PWD`: `/home/kureta/Documents/repos/berlin` --------------------------- Contents of `Pipfile` ('/home/kureta/Documents/repos/berlin/Pipfile'): ```toml [[source]] name = "pypi" url = "https://pypi.org/simple" verify_ssl = true [dev-packages] [packages] numpy = "*" opencv-python = "*" essentia = "*" jack-client = "*" torch-nightly = "*" torchvision-nightly = "*" [requires] python_version = "3.7" [pipenv] allow_prereleases = true ``` Contents of `Pipfile.lock` ('/home/kureta/Documents/repos/berlin/Pipfile.lock'): ```json { "_meta": { "hash": { "sha256": "7572b39c031d62d045c0bdb51b92e74d5c54e90b1c830fb3569390fdf032fe41" }, "pipfile-spec": 6, "requires": { "python_version": "3.7" }, "sources": [ { "name": "pypi", "url": "https://pypi.org/simple", "verify_ssl": true } ] }, "default": { "cffi": { "hashes": [ "sha256:00b97afa72c233495560a0793cdc86c2571721b4271c0667addc83c417f3d90f", "sha256:0ba1b0c90f2124459f6966a10c03794082a2f3985cd699d7d63c4a8dae113e11", "sha256:0bffb69da295a4fc3349f2ec7cbe16b8ba057b0a593a92cbe8396e535244ee9d", "sha256:21469a2b1082088d11ccd79dd84157ba42d940064abbfa59cf5f024c19cf4891", "sha256:2e4812f7fa984bf1ab253a40f1f4391b604f7fc424a3e21f7de542a7f8f7aedf", "sha256:2eac2cdd07b9049dd4e68449b90d3ef1adc7c759463af5beb53a84f1db62e36c", "sha256:2f9089979d7456c74d21303c7851f158833d48fb265876923edcb2d0194104ed", "sha256:3dd13feff00bddb0bd2d650cdb7338f815c1789a91a6f68fdc00e5c5ed40329b", "sha256:4065c32b52f4b142f417af6f33a5024edc1336aa845b9d5a8d86071f6fcaac5a", "sha256:51a4ba1256e9003a3acf508e3b4f4661bebd015b8180cc31849da222426ef585", "sha256:59888faac06403767c0cf8cfb3f4a777b2939b1fbd9f729299b5384f097f05ea", "sha256:59c87886640574d8b14910840327f5cd15954e26ed0bbd4e7cef95fa5aef218f", "sha256:610fc7d6db6c56a244c2701575f6851461753c60f73f2de89c79bbf1cc807f33", "sha256:70aeadeecb281ea901bf4230c6222af0248c41044d6f57401a614ea59d96d145", "sha256:71e1296d5e66c59cd2c0f2d72dc476d42afe02aeddc833d8e05630a0551dad7a", "sha256:8fc7a49b440ea752cfdf1d51a586fd08d395ff7a5d555dc69e84b1939f7ddee3", "sha256:9b5c2afd2d6e3771d516045a6cfa11a8da9a60e3d128746a7fe9ab36dfe7221f", "sha256:9c759051ebcb244d9d55ee791259ddd158188d15adee3c152502d3b69005e6bd", "sha256:b4d1011fec5ec12aa7cc10c05a2f2f12dfa0adfe958e56ae38dc140614035804", "sha256:b4f1d6332339ecc61275bebd1f7b674098a66fea11a00c84d1c58851e618dc0d", "sha256:c030cda3dc8e62b814831faa4eb93dd9a46498af8cd1d5c178c2de856972fd92", "sha256:c2e1f2012e56d61390c0e668c20c4fb0ae667c44d6f6a2eeea5d7148dcd3df9f", "sha256:c37c77d6562074452120fc6c02ad86ec928f5710fbc435a181d69334b4de1d84", "sha256:c8149780c60f8fd02752d0429246088c6c04e234b895c4a42e1ea9b4de8d27fb", "sha256:cbeeef1dc3c4299bd746b774f019de9e4672f7cc666c777cd5b409f0b746dac7", "sha256:e113878a446c6228669144ae8a56e268c91b7f1fafae927adc4879d9849e0ea7", "sha256:e21162bf941b85c0cda08224dade5def9360f53b09f9f259adb85fc7dd0e7b35", "sha256:fb6934ef4744becbda3143d30c6604718871495a5e36c408431bf33d9c146889" ], "version": "==1.12.2" }, "essentia": { "hashes": [ "sha256:10ec3afbaeffe4fbf78390498f47604c714d2ee3a435575cb3e1620112a313eb", "sha256:1449bde227a9e3239315906183b468323b2170addf0a1a3ae33703b77eb591de", "sha256:58a26a92bf81f2078e56e42b549b38cf483a93440535d42e0d878ecbfe4f0faf", "sha256:734af48bd407a9a769354d683df1c4f24254a3c2b4b2d80143bf4f1182983995", "sha256:8de4eb3c491019c31f870cfee828c7cb3e9106b2861fc68eb21737c368a07937", "sha256:a3194d89b7e3aa702e56a9bbf3bdba85fde40aadf582a56d53907796a661d9dc", "sha256:ad4146ab4333451f20e6b594fcf5e7fc8ee034b3fa63eecba7b66249dce5735c", "sha256:bfacc561fa4c0ff34ce83c2df8d1fbd0969936576d0b3a62efe4c78cea558b9a", "sha256:c0a6a3444f4e95b92f5979a02cb650cf73093103e8bf9d6923f634af7dff3ebb", "sha256:c23637c27b600ffe3b7e26282c60575eef97247292b1c035f10ef509bbc4fe15", "sha256:cda1cefe45edec933ba7394ca4030714415effbf16e207d91917e60820ece0b7", "sha256:f1a4cef626213fa3fb82be17c83191f2f24c4d9bf25a16e725ef026a50af4f41" ], "index": "pypi", "version": "==2.1b5.dev532" }, "jack-client": { "hashes": [ "sha256:10078565681fa1fb807fb171b3666c17e7c827d572f0cfb28ed2c425918e5499", "sha256:36cfa279ec4eb37aa6ecf0feed3e2419c38d9963e61c570d71cac43208402968" ], "index": "pypi", "version": "==0.4.6" }, "numpy": { "hashes": [ "sha256:1980f8d84548d74921685f68096911585fee393975f53797614b34d4f409b6da", "sha256:22752cd809272671b273bb86df0f505f505a12368a3a5fc0aa811c7ece4dfd5c", "sha256:23cc40313036cffd5d1873ef3ce2e949bdee0646c5d6f375bf7ee4f368db2511", "sha256:2b0b118ff547fecabc247a2668f48f48b3b1f7d63676ebc5be7352a5fd9e85a5", "sha256:3a0bd1edf64f6a911427b608a894111f9fcdb25284f724016f34a84c9a3a6ea9", "sha256:3f25f6c7b0d000017e5ac55977a3999b0b1a74491eacb3c1aa716f0e01f6dcd1", "sha256:4061c79ac2230594a7419151028e808239450e676c39e58302ad296232e3c2e8", "sha256:560ceaa24f971ab37dede7ba030fc5d8fa173305d94365f814d9523ffd5d5916", "sha256:62be044cd58da2a947b7e7b2252a10b42920df9520fc3d39f5c4c70d5460b8ba", "sha256:6c692e3879dde0b67a9dc78f9bfb6f61c666b4562fd8619632d7043fb5b691b0", "sha256:6f65e37b5a331df950ef6ff03bd4136b3c0bbcf44d4b8e99135d68a537711b5a", "sha256:7a78cc4ddb253a55971115f8320a7ce28fd23a065fc33166d601f51760eecfa9", "sha256:80a41edf64a3626e729a62df7dd278474fc1726836552b67a8c6396fd7e86760", "sha256:893f4d75255f25a7b8516feb5766c6b63c54780323b9bd4bc51cdd7efc943c73", "sha256:972ea92f9c1b54cc1c1a3d8508e326c0114aaf0f34996772a30f3f52b73b942f", "sha256:9f1d4865436f794accdabadc57a8395bd3faa755449b4f65b88b7df65ae05f89", "sha256:9f4cd7832b35e736b739be03b55875706c8c3e5fe334a06210f1a61e5c2c8ca5", "sha256:adab43bf657488300d3aeeb8030d7f024fcc86e3a9b8848741ea2ea903e56610", "sha256:bd2834d496ba9b1bdda3a6cf3de4dc0d4a0e7be306335940402ec95132ad063d", "sha256:d20c0360940f30003a23c0adae2fe50a0a04f3e48dc05c298493b51fd6280197", "sha256:d3b3ed87061d2314ff3659bb73896e622252da52558f2380f12c421fbdee3d89", "sha256:dc235bf29a406dfda5790d01b998a1c01d7d37f449128c0b1b7d1c89a84fae8b", "sha256:fb3c83554f39f48f3fa3123b9c24aecf681b1c289f9334f8215c1d3c8e2f6e5b" ], "index": "pypi", "version": "==1.16.2" }, "opencv-python": { "hashes": [ "sha256:1703a296a96d3d46615e5053f224867977accb4240bcaa0fcabcb0768bf5ac13", "sha256:1777ce7535ee7a1995cae168a107a1320e9df13648b930e72a1a2c2eccd64cda", "sha256:1e5520482fb18fbd64d079e7f17ac0018f195fd75f6360a53bb82d7903106b50", "sha256:25522dcf2529614750a71112a6659759080b4bdc2323f19d47f4d895960fd796", "sha256:2af5f2842ad44c65ae2647377e0ff198719e1a1cfc9c6a19bc0c525c035d4bd8", "sha256:31ec48d7eca13fc25c287dea7cecab453976e372cad8f50d55c054a247efda21", "sha256:47cf48ff5dbd554e9f58cc9e98cf0b5de3f6a971172612bffa06bc5fb79ce872", "sha256:494f98366bb5d6c2ac7e50e6617139f353704fd97a6d12ec9d392e72817d5cb0", "sha256:4a9845870739e640e3350a8d98d511c92c087fe3d66090e83be7bf94e0ac64f7", "sha256:4ac29cc0847d948a6636899014e84e165c30cc8779d6218394d44363462a01ce", "sha256:5857ace03b7854221abf8072462d306c2c2ce4e366190b21d90ee8ee8aaf5bb4", "sha256:5b4a23d99d5a2874767034466f5a8fd37b9f93ac14955a01b1a208983c76b9ad", "sha256:734d87a5021c037064beb62133e135e66c7128e401a63b8b842b809ae2093749", "sha256:78005c1c5d15ef4e32e0f485557bd15b5b6d87f49c19db7fe3e9246a61ebe7e4", "sha256:81ae2283225c5c52fc3d72debd4241c30ccff2bb922578bf7867f9851cce3acb", "sha256:88dbf900f297fdae0f62b899d6a784d8868ec2135854c5f8a9abbad00a6f0c5b", "sha256:8c98ea7b8d327a31cd6028782a06147d0e0329ae8e829e881fb5d02f7ed8aec9", "sha256:937d4686fef6967921145290f5b50c01c00c5b5d3542a6519e8a85cd88448723", "sha256:a057958c0e362b3c4f03b9af1cbdb6d5af035fd22ecd7fd794eba8fdeb049eb8", "sha256:c41eab31fa2c641226c6187caa391a688d064c99f078d604574f1912296b771f", "sha256:cf4f7e62d1f80d1fa85a1693a3500def5cde54b2b75212b3609e552e4c25acfb", "sha256:d90d60143e18334330c149f293071c9f2f3c79c896f33dc4ec65099e58baaaa7", "sha256:db3106b7ca86999a7bd1f2fcc93e49314e5e6e451356774e421a69428df5020b", "sha256:dbaf264db56f4771dfac6624f438bc4dc670aa94f61a6138848fcab7e9e77380", "sha256:e65206c4cf651dc9cf0829962fae8bec986767c9f123d6a1ad17f9356bf7257e", "sha256:eac94ddc78c58e891cff7180274317dad2938a4ddfc6ced1c04846c7f50e77e9", "sha256:f2e828711f044a965509c862b3a59b3181e9c56c145a950cb53d43fec54e66d2" ], "index": "pypi", "version": "==4.1.0.25" }, "pillow": { "hashes": [ "sha256:15c056bfa284c30a7f265a41ac4cbbc93bdbfc0dfe0613b9cb8a8581b51a9e55", "sha256:1a4e06ba4f74494ea0c58c24de2bb752818e9d504474ec95b0aa94f6b0a7e479", "sha256:1c3c707c76be43c9e99cb7e3d5f1bee1c8e5be8b8a2a5eeee665efbf8ddde91a", "sha256:1fd0b290203e3b0882d9605d807b03c0f47e3440f97824586c173eca0aadd99d", "sha256:24114e4a6e1870c5a24b1da8f60d0ba77a0b4027907860188ea82bd3508c80eb", "sha256:258d886a49b6b058cd7abb0ab4b2b85ce78669a857398e83e8b8e28b317b5abb", "sha256:33c79b6dd6bc7f65079ab9ca5bebffb5f5d1141c689c9c6a7855776d1b09b7e8", "sha256:367385fc797b2c31564c427430c7a8630db1a00bd040555dfc1d5c52e39fcd72", "sha256:3c1884ff078fb8bf5f63d7d86921838b82ed4a7d0c027add773c2f38b3168754", "sha256:44e5240e8f4f8861d748f2a58b3f04daadab5e22bfec896bf5434745f788f33f", "sha256:46aa988e15f3ea72dddd81afe3839437b755fffddb5e173886f11460be909dce", "sha256:74d90d499c9c736d52dd6d9b7221af5665b9c04f1767e35f5dd8694324bd4601", "sha256:809c0a2ce9032cbcd7b5313f71af4bdc5c8c771cb86eb7559afd954cab82ebb5", "sha256:85d1ef2cdafd5507c4221d201aaf62fc9276f8b0f71bd3933363e62a33abc734", "sha256:8c3889c7681af77ecfa4431cd42a2885d093ecb811e81fbe5e203abc07e0995b", "sha256:9218d81b9fca98d2c47d35d688a0cea0c42fd473159dfd5612dcb0483c63e40b", "sha256:9aa4f3827992288edd37c9df345783a69ef58bd20cc02e64b36e44bcd157bbf1", "sha256:9d80f44137a70b6f84c750d11019a3419f409c944526a95219bea0ac31f4dd91", "sha256:b7ebd36128a2fe93991293f997e44be9286503c7530ace6a55b938b20be288d8", "sha256:c4c78e2c71c257c136cdd43869fd3d5e34fc2162dc22e4a5406b0ebe86958239", "sha256:c6a842537f887be1fe115d8abb5daa9bc8cc124e455ff995830cc785624a97af", "sha256:cf0a2e040fdf5a6d95f4c286c6ef1df6b36c218b528c8a9158ec2452a804b9b8", "sha256:cfd28aad6fc61f7a5d4ee556a997dc6e5555d9381d1390c00ecaf984d57e4232", "sha256:dca5660e25932771460d4688ccbb515677caaf8595f3f3240ec16c117deff89a", "sha256:de7aedc85918c2f887886442e50f52c1b93545606317956d65f342bd81cb4fc3", "sha256:e6c0bbf8e277b74196e3140c35f9a1ae3eafd818f7f2d3a15819c49135d6c062" ], "version": "==6.0.0" }, "pycparser": { "hashes": [ "sha256:a988718abfad80b6b157acce7bf130a30876d27603738ac39f140993246b25b3" ], "version": "==2.19" }, "pyyaml": { "hashes": [ "sha256:1adecc22f88d38052fb787d959f003811ca858b799590a5eaa70e63dca50308c", "sha256:436bc774ecf7c103814098159fbb84c2715d25980175292c648f2da143909f95", "sha256:460a5a4248763f6f37ea225d19d5c205677d8d525f6a83357ca622ed541830c2", "sha256:5a22a9c84653debfbf198d02fe592c176ea548cccce47553f35f466e15cf2fd4", "sha256:7a5d3f26b89d688db27822343dfa25c599627bc92093e788956372285c6298ad", "sha256:9372b04a02080752d9e6f990179a4ab840227c6e2ce15b95e1278456664cf2ba", "sha256:a5dcbebee834eaddf3fa7366316b880ff4062e4bcc9787b78c7fbb4a26ff2dd1", "sha256:aee5bab92a176e7cd034e57f46e9df9a9862a71f8f37cad167c6fc74c65f5b4e", "sha256:c51f642898c0bacd335fc119da60baae0824f2cde95b0330b56c0553439f0673", "sha256:c68ea4d3ba1705da1e0d85da6684ac657912679a649e8868bd850d2c299cce13", "sha256:e23d0cc5299223dcc37885dae624f382297717e459ea24053709675a976a3e19" ], "version": "==5.1" }, "six": { "hashes": [ "sha256:3350809f0555b11f552448330d0b52d5f24c91a322ea4a15ef22629740f3761c", "sha256:d16a0141ec1a18405cd4ce8b4613101da75da0e9a7aec5bdd4fa804d0e0eba73" ], "version": "==1.12.0" }, "torch-nightly": { "hashes": [ "sha256:0f438f57945ff78562cfddba7d6ad5fec401a881784d45db051495c106077c37", "sha256:364073b7c2e508102a8489a45e0dac8b0c67db371650341a09dce22c1c8deb22", "sha256:95f20c01e7cd166f49376d8194c56f416284c49f90e8920d412ede174ae536ff", "sha256:c2bdbd39ba734431728a866067349173601482c4015df4631dd15e5d6b9deed6", "sha256:e09be313d40614d5388c04c0415c8b6cc2637ff54a3e69ace2fb8cc958ccf123" ], "index": "pypi", "version": "==1.1.0.dev20190417" }, "torchvision-nightly": { "hashes": [ "sha256:9c29c56ee7df76894b474228a35cdc9ab78af977e0cedc403d70c72e03bdc81f", "sha256:b90298f5be91e0f508b3b571342042925957df821bf67954bbe67c42e8d4ba15" ], "index": "pypi", "version": "==0.2.3" }, "tqdm": { "hashes": [ "sha256:d385c95361699e5cf7622485d9b9eae2d4864b21cd5a2374a9c381ffed701021", "sha256:e22977e3ebe961f72362f6ddfb9197cc531c9737aaf5f607ef09740c849ecd05" ], "version": "==4.31.1" } }, "develop": {} } ```
frostming commented 5 years ago

@kureta If environment variables can work why would we add a section to Pipfile? In fact, the core developers are against making Pipfile a config file for Pipenv tool. It should just contain what is needed for reproducing an environment.

[source] section works like --index-url and --extra-index-url

I will close it for now. Thanks.

kureta commented 5 years ago

@frostming I tired using [source] section and it couldn't find the module. This is not about configuration, it is exactly about reproducing an environment. It should work under the [source] section but it doesn't. Please read my first comment again.

kureta commented 5 years ago

It is impossible to reproduce this environment without knowing that torch-nightly can only be obtained from "https://download.pytorch.org/whl/nightly/cu100/torch_nightly.html", and adding

[[source]]
name = "pytorch-nightly"
url = "https://download.pytorch.org/whl/nightly/cu100/torch_nightly.html"
verify_ssl = true

to Pipfile should work but doesn't. I am not trying to be a pain but I really fail to see how this is a configuration issue.

frostming commented 5 years ago

@kureta I emphasized in my last comment that [source] section works like --index-url not --find-links, so it is normal that adding a non-index link to source won't work.

To make the Pipfile itself reproducible, you can specify the dependency with file url like this:

[packages]
torch-nightly = {file = "https://download.pytorch.org/whee/download/link.whl"}

Is this possible?

kureta commented 5 years ago

@frostming thank you very much. Your solution works perfectly!

ajrcampbell commented 5 years ago

@kureta how did you manage to install the nightly build of PyTorch with pipenv?

kureta commented 5 years ago

@ajrcampbell just go to https://download.pytorch.org/whl/nightly/cu100/torch_nightly.html and view source code. Download the latest .whl from the list and add it to your Pipfile like this

[packages]
torch-nightly = {file = "https://download.pytorch.org/whee/download/link.whl"}

Or add this environment variable:

PIP_FIND_LINKS="https://download.pytorch.org/whl/nightly/cu100/torch_nightly.html"

and add torch-nightly to your Pipfile

[packages]
torch-nightly = "*"

However, torch is a very large package and, for me, it took a lot of time to lock and/or install anything while I had torch-nightly in my Pipfile, so I downloaded the latest wheel and added it as a local file to like so:

 [packages]
torch-nightly = {file = "~/Downloads/torch.whl"}

It still took a long time to lock and I finally moved on to venv and pip.