pypa / pipenv

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

`pipenv clean` unexpectedly updates Pipfile.lock #4695

Open nkakouros opened 3 years ago

nkakouros commented 3 years ago

Issue description

pipenv clean -h says:

  Uninstalls all packages not specified in Pipfile.lock.

I understand from the help text that my Pipfile.lock as is will be used but this is not the case. Pipfile.lock gets updated.

Expected result

Since my project already has a Pipfile.lock, I would expect the command to consult that file and then uninstall any orphan packages.

Actual result

pipenv clean performs locking again.

Steps to replicate

  1. pipenv install
  2. pipenv clean

If the user wants to remove an old dependency or just make sure that their virtualenv looks exactly as it should be, they will also be updating the lock file.

Could there be a pipenv clean command option that just used the existing lock file?


$ pipenv --support Pipenv version: `'2020.11.15'` Pipenv location: `'/usr/lib/python3.9/site-packages/pipenv'` Python location: `'/usr/bin/python'` Python installations found: - `3.9.5`: `/home/nikos/Projects/ethical-hacking/EN2720/data/python/bin/python3.9` - `3.9.5`: `/home/nikos/Projects/ethical-hacking/EN2720/data/python/bin/python3` - `3.9.5`: `/usr/bin/python3.9` - `3.9.5`: `/usr/bin/python3` - `3.6.12`: `/usr/bin/python3.6` - `3.6.12`: `/usr/bin/python3.6m` - `2.7.18`: `/usr/bin/python2` - `2.7.18`: `/usr/bin/python2.7` PEP 508 Information: ``` {'implementation_name': 'cpython', 'implementation_version': '3.9.5', 'os_name': 'posix', 'platform_machine': 'x86_64', 'platform_python_implementation': 'CPython', 'platform_release': '5.11.7-arch1-1', 'platform_system': 'Linux', 'platform_version': '#1 SMP PREEMPT Wed, 17 Mar 2021 16:59:58 +0000', 'python_full_version': '3.9.5', 'python_version': '3.9', 'sys_platform': 'linux'} ``` System environment variables: - `SHELL` - `WINDOWID` - `COLORTERM` - `HISTCONTROL` - `PREVPWD` - `TERM_PROGRAM_VERSION` - `TMUX` - `NVIM_DISABLED_PLUGIN_TAGS` - `HISTSIZE` - `LANGUAGE` - `AUTOHOOK_HOOKS_DIR` - `I3SOCK` - `TMUX_PWD_6` - `TMUX_PWD_7` - `TMUX_PWD_4` - `TMUX_PWD_5` - `TMUX_PWD_2` - `TMUX_PWD_3` - `TMUX_PWD_0` - `TMUX_PWD_1` - `TMUX_PWD_8` - `TMUX_PWD_9` - `XDG_DATA_HOME` - `GRADLE_HOME` - `HISTTIMEFORMAT` - `BASH_AUTOPAIR_BACKSPACE` - `SHELL_SESSION_ID` - `XDG_CONFIG_HOME` - `TMUX_PWD_15` - `TMUX_PWD_14` - `TMUX_PWD_17` - `TMUX_PWD_16` - `TMUX_PWD_11` - `TMUX_PWD_10` - `TMUX_PWD_13` - `TMUX_PWD_12` - `TMUX_PWD_19` - `TMUX_PWD_18` - `GNUPGHOME` - `PIPENV_PIPFILE` - `XCURSOR_SIZE` - `CLOUDSDK_PYTHON_ARGS` - `EDITOR` - `is_vim` - `XDG_SEAT` - `PWD` - `LOGNAME` - `AUTOHOOK_DEBUG` - `XDG_SESSION_TYPE` - `MAILCHECK` - `TMUX_COLUMNS_20` - `TMUX_COLUMNS_21` - `TMUX_COLUMNS_22` - `TMUX_COLUMNS_23` - `TMUX_COLUMNS_24` - `TMUX_COLUMNS_25` - `TMUX_COLUMNS_26` - `TMUX_COLUMNS_27` - `MOTD_SHOWN` - `HOME` - `LANG` - `VIT_DIR` - `HISTFILE` - `KONSOLE_DBUS_SERVICE` - `VIRTUAL_ENV` - `CLOUDSDK_ROOT_DIR` - `SWAYSOCK` - `TASKDATA` - `WAYLAND_DISPLAY` - `KONSOLE_DBUS_SESSION` - `PROFILEHOME` - `TMUX_COLUMNS_11` - `TMUX_COLUMNS_10` - `TMUX_COLUMNS_13` - `TMUX_COLUMNS_12` - `TMUX_COLUMNS_15` - `TMUX_COLUMNS_14` - `TMUX_COLUMNS_17` - `TMUX_COLUMNS_16` - `TMUX_COLUMNS_19` - `TMUX_COLUMNS_18` - `PERL5LIB` - `NVIM_ENABLED_PLUGINS` - `MAIL_DIR` - `INVOCATION_ID` - `KONSOLE_VERSION` - `CLOUDSDK_PYTHON` - `HSTR_CONFIG` - `NVIM_ENABLED_PLUGIN_TAGS` - `XDG_SESSION_CLASS` - `TERM` - `PERL_MB_OPT` - `PYTHONPYCACHEPREFIX` - `GOOGLE_CLOUD_SDK_HOME` - `USER` - `TMUX_PANE` - `COLORFGBG` - `LATEX_MK_DIR` - `PERL_MM_OPT` - `DISPLAY` - `SHLVL` - `MOZ_ENABLE_WAYLAND` - `INPUTRC` - `TASKRC` - `MOZ_USE_XINPUT2` - `XDG_VTNR` - `XDG_SESSION_ID` - `XDG_RUNTIME_DIR` - `TMUX_COLUMNS_8` - `TMUX_COLUMNS_9` - `TMUX_COLUMNS_2` - `TMUX_COLUMNS_3` - `TMUX_COLUMNS_0` - `TMUX_COLUMNS_1` - `TMUX_COLUMNS_6` - `TMUX_COLUMNS_7` - `TMUX_COLUMNS_4` - `TMUX_COLUMNS_5` - `JOURNAL_STREAM` - `NVIM_DISABLED_PLUGINS` - `PERL_LOCAL_LIB_ROOT` - `PATH` - `HISTIGNORE` - `KONSOLE_PROFILE_NAME` - `NVIM_TUI_ENABLE_TRUE_COLOR` - `HISTFILESIZE` - `DBUS_SESSION_BUS_ADDRESS` - `BASHRC` - `MAIL` - `LESSKEY` - `OLDPWD` - `TMUX_PWD_24` - `TMUX_PWD_25` - `TERM_PROGRAM` - `TMUX_PWD_26` - `TMUX_PWD_27` - `KONSOLE_DBUS_WINDOW` - `TMUX_PWD_20` - `TMUX_PWD_21` - `TMUX_PWD_22` - `TMUX_PWD_23` - `BASH_FUNC_ctk%%` - `_` - `PIP_DISABLE_PIP_VERSION_CHECK` - `PYTHONDONTWRITEBYTECODE` - `PIP_SHIMS_BASE_MODULE` - `PIP_PYTHON_PATH` - `PYTHONFINDER_IGNORE_UNSUPPORTED` Pipenv–specific environment variables: - `PIPENV_PIPFILE`: `/home/nikos/Projects/ethical-hacking/EN2720/vendor/Pipfile` Debug–specific environment variables: - `PATH`: `/home/nikos/perl5/bin:/home/nikos/.local/npm-global/bin:/opt/google-cloud-sdk/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl` - `SHELL`: `/bin/bash` - `EDITOR`: `nvim` - `LANG`: `en_US.UTF-8` - `PWD`: `/home/nikos/Projects/ethical-hacking/EN2720` - `VIRTUAL_ENV`: `/home/nikos/Projects/ethical-hacking/EN2720/data/python` --------------------------- Contents of `Pipfile` ('/home/nikos/Projects/ethical-hacking/EN2720/vendor/Pipfile'): ```toml [[source]] url = 'https://pypi.python.org/simple' verify_ssl = true name = 'pypi' [packages] ansible = '==3.0.0' ansible-lint = '*' dataclasses = '*' # seems to be required by ansible-lint bandit = '*' black = '==20.8b1' configargparse = '*' docopt = '*' firebase-admin = '*' google-api-python-client = '*' google-cloud-pubsub = '*' google-cloud-storage = '*' google_auth_httplib2 = '*' isort = '*' jinja2 = '==2.10' jsonpath_rw = '*' maya = '*' netaddr = '*' pep8 = '*' pycrypto = '*' pydocstyle = '*' pyflakes = '*' pyopenssl = '*' pypsexec = '*' pywinrm = '*' sh = '*' tabulate = '*' vulture = '*' yamllint = '*' elasticsearch_dsl = '*' texttable='*' [dev-packages] [requires] python_version = '3.7' ``` Contents of `Pipfile.lock` ('/home/nikos/Projects/ethical-hacking/EN2720/vendor/Pipfile.lock'): ```json { "_meta": { "hash": { "sha256": "6550b7eae4134f15a518ef2ba34fa854caf887411a39873fac07a20eee42d4ad" }, "pipfile-spec": 6, "requires": { "python_version": "3.7" }, "sources": [ { "name": "pypi", "url": "https://pypi.python.org/simple", "verify_ssl": true } ] }, "default": { "ansible": { "hashes": [ "sha256:843aa807813318b0c8a6684a2895c74a4ccfb3c01d2bb41a53856b2434ebaaec" ], "index": "pypi", "version": "==3.0.0" }, "ansible-base": { "hashes": [ "sha256:04635d3e08fc29358c76b8e7f1e9db0ce443fb09ce30b2acc6cacaad165f2151" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'", "version": "==2.10.9" }, "ansible-lint": { "hashes": [ "sha256:34807c973613ab14d9bd64f0df2b24169bb0347574aeb365294cd4d5a17ea2f6", "sha256:b67b9628407ae9bc15bb0bb71f79871bdf593fefe6b0684c0cc44be5fc90803f" ], "index": "pypi", "version": "==5.0.8" }, "appdirs": { "hashes": [ "sha256:7d5d0167b2b1ba821647616af46a749d1c653740dd0d2415100fe26e27afdf41", "sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128" ], "version": "==1.4.4" }, "bandit": { "hashes": [ "sha256:216be4d044209fa06cf2a3e51b319769a51be8318140659719aa7a115c35ed07", "sha256:8a4c7415254d75df8ff3c3b15cfe9042ecee628a1e40b44c15a98890fbfc2608" ], "index": "pypi", "version": "==1.7.0" }, "black": { "hashes": [ "sha256:1c02557aa099101b9d21496f8a914e9ed2222ef70336404eeeac8edba836fbea" ], "index": "pypi", "version": "==20.8b1" }, "bracex": { "hashes": [ "sha256:01f715cd0ed7a622ec8b32322e715813f7574de531f09b70f6f3b2c10f682425", "sha256:64e2a6d14de9c8e022cf40539ac8468ba7c4b99550a2b05fc87fd20e392e568f" ], "markers": "python_version >= '3.6'", "version": "==2.1.1" }, "cachecontrol": { "hashes": [ "sha256:10d056fa27f8563a271b345207402a6dcce8efab7e5b377e270329c62471b10d", "sha256:be9aa45477a134aee56c8fac518627e1154df063e85f67d4f83ce0ccc23688e8" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==0.12.6" }, "cachetools": { "hashes": [ "sha256:2cc0b89715337ab6dbba85b5b50effe2b0c74e035d83ee8ed637cf52f12ae001", "sha256:61b5ed1e22a0924aed1d23b478f37e8d52549ff8a961de2909c69bf950020cff" ], "markers": "python_version ~= '3.5'", "version": "==4.2.2" }, "certifi": { "hashes": [ "sha256:1a4995114262bffbc2413b159f2a1a480c969de6e6eb13ee966d470af86af59c", "sha256:719a74fb9e33b9bd44cc7f3a8d94bc35e4049deebe19ba7d8e108280cfd59830" ], "version": "==2020.12.5" }, "cffi": { "hashes": [ "sha256:005a36f41773e148deac64b08f233873a4d0c18b053d37da83f6af4d9087b813", "sha256:0857f0ae312d855239a55c81ef453ee8fd24136eaba8e87a2eceba644c0d4c06", "sha256:1071534bbbf8cbb31b498d5d9db0f274f2f7a865adca4ae429e147ba40f73dea", "sha256:158d0d15119b4b7ff6b926536763dc0714313aa59e320ddf787502c70c4d4bee", "sha256:1f436816fc868b098b0d63b8920de7d208c90a67212546d02f84fe78a9c26396", "sha256:2894f2df484ff56d717bead0a5c2abb6b9d2bf26d6960c4604d5c48bbc30ee73", "sha256:29314480e958fd8aab22e4a58b355b629c59bf5f2ac2492b61e3dc06d8c7a315", "sha256:34eff4b97f3d982fb93e2831e6750127d1355a923ebaeeb565407b3d2f8d41a1", "sha256:35f27e6eb43380fa080dccf676dece30bef72e4a67617ffda586641cd4508d49", "sha256:3d3dd4c9e559eb172ecf00a2a7517e97d1e96de2a5e610bd9b68cea3925b4892", "sha256:43e0b9d9e2c9e5d152946b9c5fe062c151614b262fda2e7b201204de0b99e482", "sha256:48e1c69bbacfc3d932221851b39d49e81567a4d4aac3b21258d9c24578280058", "sha256:51182f8927c5af975fece87b1b369f722c570fe169f9880764b1ee3bca8347b5", "sha256:58e3f59d583d413809d60779492342801d6e82fefb89c86a38e040c16883be53", "sha256:5de7970188bb46b7bf9858eb6890aad302577a5f6f75091fd7cdd3ef13ef3045", "sha256:65fa59693c62cf06e45ddbb822165394a288edce9e276647f0046e1ec26920f3", "sha256:69e395c24fc60aad6bb4fa7e583698ea6cc684648e1ffb7fe85e3c1ca131a7d5", "sha256:6c97d7350133666fbb5cf4abdc1178c812cb205dc6f41d174a7b0f18fb93337e", "sha256:6e4714cc64f474e4d6e37cfff31a814b509a35cb17de4fb1999907575684479c", "sha256:72d8d3ef52c208ee1c7b2e341f7d71c6fd3157138abf1a95166e6165dd5d4369", "sha256:8ae6299f6c68de06f136f1f9e69458eae58f1dacf10af5c17353eae03aa0d827", "sha256:8b198cec6c72df5289c05b05b8b0969819783f9418e0409865dac47288d2a053", "sha256:99cd03ae7988a93dd00bcd9d0b75e1f6c426063d6f03d2f90b89e29b25b82dfa", "sha256:9cf8022fb8d07a97c178b02327b284521c7708d7c71a9c9c355c178ac4bbd3d4", "sha256:9de2e279153a443c656f2defd67769e6d1e4163952b3c622dcea5b08a6405322", "sha256:9e93e79c2551ff263400e1e4be085a1210e12073a31c2011dbbda14bda0c6132", "sha256:9ff227395193126d82e60319a673a037d5de84633f11279e336f9c0f189ecc62", "sha256:a465da611f6fa124963b91bf432d960a555563efe4ed1cc403ba5077b15370aa", "sha256:ad17025d226ee5beec591b52800c11680fca3df50b8b29fe51d882576e039ee0", "sha256:afb29c1ba2e5a3736f1c301d9d0abe3ec8b86957d04ddfa9d7a6a42b9367e396", "sha256:b85eb46a81787c50650f2392b9b4ef23e1f126313b9e0e9013b35c15e4288e2e", "sha256:bb89f306e5da99f4d922728ddcd6f7fcebb3241fc40edebcb7284d7514741991", "sha256:cbde590d4faaa07c72bf979734738f328d239913ba3e043b1e98fe9a39f8b2b6", "sha256:cd2868886d547469123fadc46eac7ea5253ea7fcb139f12e1dfc2bbd406427d1", "sha256:d42b11d692e11b6634f7613ad8df5d6d5f8875f5d48939520d351007b3c13406", "sha256:f2d45f97ab6bb54753eab54fffe75aaf3de4ff2341c9daee1987ee1837636f1d", "sha256:fd78e5fee591709f32ef6edb9a015b4aa1a5022598e36227500c8f4e02328d9c" ], "version": "==1.14.5" }, "chardet": { "hashes": [ "sha256:0d6f53a15db4120f2b08c94f11e7d93d2c911ee118b6b30a04ec3ee8310179fa", "sha256:f864054d66fd9118f2e67044ac8981a54775ec5b67aed0441892edb553d21da5" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'", "version": "==4.0.0" }, "click": { "hashes": [ "sha256:7d8c289ee437bcb0316820ccee14aefcb056e58d31830ecab8e47eda6540e136", "sha256:e90e62ced43dc8105fb9a26d62f0d9340b5c8db053a814e25d95c19873ae87db" ], "markers": "python_version >= '3.6'", "version": "==8.0.0" }, "colorama": { "hashes": [ "sha256:5941b2b48a20143d2267e95b1c2a7603ce057ee39fd88e7329b0c292aa16869b", "sha256:9f47eda37229f68eee03b24b9748937c7dc3868f906e8ba69fbcbdd3bc5dc3e2" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'", "version": "==0.4.4" }, "commonmark": { "hashes": [ "sha256:452f9dc859be7f06631ddcb328b6919c67984aca654e5fefb3914d54691aed60", "sha256:da2f38c92590f83de410ba1a3cbceafbc74fee9def35f9251ba9a971d6d66fd9" ], "version": "==0.9.1" }, "configargparse": { "hashes": [ "sha256:6df537158f28c5ef2e8a8146781833abbc6cb7fca81b1b55d18808ce3439235e", "sha256:eaff53ff3627c3e412392bd4a703d4c39e3425a953557f4ef69a20f03358c26f" ], "index": "pypi", "version": "==1.4.1" }, "cryptography": { "hashes": [ "sha256:0f1212a66329c80d68aeeb39b8a16d54ef57071bf22ff4e521657b27372e327d", "sha256:1e056c28420c072c5e3cb36e2b23ee55e260cb04eee08f702e0edfec3fb51959", "sha256:240f5c21aef0b73f40bb9f78d2caff73186700bf1bc6b94285699aff98cc16c6", "sha256:26965837447f9c82f1855e0bc8bc4fb910240b6e0d16a664bb722df3b5b06873", "sha256:37340614f8a5d2fb9aeea67fd159bfe4f5f4ed535b1090ce8ec428b2f15a11f2", "sha256:3d10de8116d25649631977cb37da6cbdd2d6fa0e0281d014a5b7d337255ca713", "sha256:3d8427734c781ea5f1b41d6589c293089704d4759e34597dce91014ac125aad1", "sha256:7ec5d3b029f5fa2b179325908b9cd93db28ab7b85bb6c1db56b10e0b54235177", "sha256:8e56e16617872b0957d1c9742a3f94b43533447fd78321514abbe7db216aa250", "sha256:de4e5f7f68220d92b7637fc99847475b59154b7a1b3868fb7385337af54ac9ca", "sha256:eb8cc2afe8b05acbd84a43905832ec78e7b3873fb124ca190f574dca7389a87d", "sha256:ee77aa129f481be46f8d92a1a7db57269a2f23052d5f2433b4621bb457081cc9" ], "markers": "python_version >= '3.6'", "version": "==3.4.7" }, "dataclasses": { "hashes": [ "sha256:454a69d788c7fda44efd71e259be79577822f5e3f53f029a22d08004e951dc9f", "sha256:6988bd2b895eef432d562370bb707d540f32f7360ab13da45340101bc2307d84" ], "index": "pypi", "version": "==0.6" }, "dateparser": { "hashes": [ "sha256:159cc4e01a593706a15cd4e269a0b3345edf3aef8bf9278a57dac8adf5bf1e4a", "sha256:17202df32c7a36e773136ff353aa3767e987f8b3e27374c39fd21a30a803d6f8" ], "markers": "python_version >= '3.5'", "version": "==1.0.0" }, "decorator": { "hashes": [ "sha256:6f201a6c4dac3d187352661f508b9364ec8091217442c9478f1f83c003a0f060", "sha256:945d84890bb20cc4a2f4a31fc4311c0c473af65ea318617f13a7257c9a58bc98" ], "markers": "python_version >= '3.5'", "version": "==5.0.7" }, "docopt": { "hashes": [ "sha256:49b3a825280bd66b3aa83585ef59c4a8c82f2c8a522dbe754a8bc8d08c85c491" ], "index": "pypi", "version": "==0.6.2" }, "elasticsearch": { "hashes": [ "sha256:1840fea8c305224b8c28acabc8697f739cdfb03618f2d2427b42838971a787f6", "sha256:df35d8c638f946f098a74681b18611bdf27ba469fa2063e3dfc8bdc290b11419" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' and python_version < '4'", "version": "==7.12.1" }, "elasticsearch-dsl": { "hashes": [ "sha256:0ed75f6ff037e36b2397a8e92cae0ddde79b83adc70a154b8946064cb62f7301", "sha256:9390d8e5cf82ebad3505e7f656e407259cf703f5a4035f211cef454127672572" ], "index": "pypi", "version": "==7.3.0" }, "enrich": { "hashes": [ "sha256:0e99ff57d87f7b5def0ca79917e88fb9351aa0d52e228ee38bff7cd858315fe4", "sha256:ed0b3ac33495cc95f1ccafaf6c7ec0a0fcabb20f7f7a90121f37eb83a85bf82b" ], "markers": "python_version >= '3.6'", "version": "==1.2.6" }, "firebase-admin": { "hashes": [ "sha256:1004695da81393a6c782537bb98eb7eb3bf186914412e9e879be967b7356690c", "sha256:9627cf4f8945ac5cad80cdd681e436cc721c4fc41865800af74f00700df5b427" ], "index": "pypi", "version": "==5.0.0" }, "gitdb": { "hashes": [ "sha256:6c4cc71933456991da20917998acbe6cf4fb41eeaab7d6d67fbc05ecd4c865b0", "sha256:96bf5c08b157a666fec41129e6d327235284cca4c81e92109260f353ba138005" ], "markers": "python_version >= '3.4'", "version": "==4.0.7" }, "gitpython": { "hashes": [ "sha256:3283ae2fba31c913d857e12e5ba5f9a7772bbc064ae2bb09efafa71b0dd4939b", "sha256:be27633e7509e58391f10207cd32b2a6cf5b908f92d9cd30da2e514e1137af61" ], "markers": "python_version >= '3.4'", "version": "==3.1.14" }, "google-api-core": { "extras": [ "grpc" ], "hashes": [ "sha256:099762d4b4018cd536bcf85136bf337957da438807572db52f21dc61251be089", "sha256:b914345c7ea23861162693a27703bab804a55504f7e6e9abcaff174d80df32ac" ], "markers": "platform_python_implementation != 'PyPy'", "version": "==1.26.3" }, "google-api-python-client": { "hashes": [ "sha256:72f69e67238e38b0da41b5a2e352dc39b4b5891d88f3db082aae7775da8fe58b", "sha256:aa67190e56e02940a611388ee268f45da79451c8fdff2861fae104538dbeca1f" ], "index": "pypi", "version": "==2.4.0" }, "google-auth": { "hashes": [ "sha256:588bdb03a41ecb4978472b847881e5518b5d9ec6153d3d679aa127a55e13b39f", "sha256:9ad25fba07f46a628ad4d0ca09f38dcb262830df2ac95b217f9b0129c9e42206" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5'", "version": "==1.30.0" }, "google-auth-httplib2": { "hashes": [ "sha256:31e49c36c6b5643b57e82617cb3e021e3e1d2df9da63af67252c02fa9c1f4a10", "sha256:a07c39fd632becacd3f07718dfd6021bf396978f03ad3ce4321d060015cc30ac" ], "index": "pypi", "version": "==0.1.0" }, "google-cloud-core": { "hashes": [ "sha256:40d9c2da2d03549b5ac3dcccf289d4f15e6d1210044c6381ce45c92913e62904", "sha256:c6abb18527545379fc82efc4de75ce9a3772ccad2fc645adace593ba097cbb02" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5'", "version": "==1.6.0" }, "google-cloud-firestore": { "hashes": [ "sha256:80e704c5f33472f0259f436d5a3ddb0a55e64317c6139fc1e72f1c0b2e1a1ccc", "sha256:ef7b0a94a1d7ed386c7592724f6db08aa6de99aee8dda3886964bc598aeb8bec" ], "markers": "platform_python_implementation != 'PyPy'", "version": "==2.1.1" }, "google-cloud-pubsub": { "hashes": [ "sha256:53a0ca597c2b29def8d8d8247e46963e3c8d6968a1a480f6906c3ba618310ad8", "sha256:bd21c2c8f8118213ee5db6cdd2208031a20e5cb8d46c3608fa29eb286bac35df" ], "index": "pypi", "version": "==2.4.2" }, "google-cloud-storage": { "hashes": [ "sha256:162011d66f64b8dc5d7936609a5daf0066cc521231546aea02c126a5559446c4", "sha256:69499560ec8234339ce831704419a2288c409a422f6e9ed1facc9345412ee637" ], "index": "pypi", "version": "==1.38.0" }, "google-crc32c": { "hashes": [ "sha256:0ae3cf54e0d4d83c8af1afe96fc0970fbf32f1b29275f3bfd44ce25c4b622a2b", "sha256:0dd9b61d0c63043b013349c9ec8a83ec2b05c96410c5bc257da5d0de743fc171", "sha256:110157fb19ab5db15603debfaf5fcfbac9627576787d9caf8618ff96821a7a1f", "sha256:1dc6904c0d958f43102c85d70792cca210d3d051ddbeecd0eff10abcd981fdfa", "sha256:298a9a922d35b123a73be80233d0f19c6ea01f008743561a8937f9dd83fb586b", "sha256:34a97937f164147aefa53c3277364fd3bfa7fd244cbebbd5a976fa8325fb496b", "sha256:364eb36e8d9d34542c17b0c410035b0557edd4300a92ed736b237afaa0fd6dae", "sha256:49838ede42592154f9fcd21d07c7a43a67b00a36e252f82ae72542fde09dc51f", "sha256:51f4aa06125bf0641f65fb83268853545dbeb36b98ccfec69ef57dcb6b73b176", "sha256:6789db0b12aab12a0f04de22ed8412dfa5f6abd5a342ea19f15355064e1cc387", "sha256:78cf5b1bd30f3a6033b41aa4ce8c796870bc4645a15d3ef47a4b05d31b0a6dc1", "sha256:7c5138ed2e815189ba524756e027ac5833365e86115b1c2e6d9e833974a58d82", "sha256:80abca603187093ea089cd1215c3779040dda55d3cdabc0cd5ea0e10df7bff99", "sha256:8ed8f6dc4f55850cba2eb22b78902ad37f397ee02692d3b8e00842e9af757321", "sha256:91ad96ee2958311d0bb75ffe5c25c87fb521ef547c09e04a8bb6143e75fb1367", "sha256:92ed6062792b989e84621e07a5f3d37da9cc3153b77d23a582921f14863af31d", "sha256:9372211acbcc207f63ffaffea1d05f3244a21311e4710721ffff3e8b7a0d24d0", "sha256:a64e0e8ed6076a8d867fc4622ad821c55eba8dff1b48b18f56b7c2392e22ab9d", "sha256:a6c8a712ffae56c805ca732b735af02860b246bed2c1acb38ea954a8b2dc4581", "sha256:ab2b31395fbeeae6d15c98bd7f8b9fb76a18f18f87adc11b1f6dbe8f90d8382f", "sha256:ae7b9e7e2ca1b06c3a68b6ef223947a52c30ffae329b1a2be3402756073f2732", "sha256:b5ea1055fe470334ced844270e7c808b04fe31e3e6394675daa77f6789ca9eff", "sha256:d0630670d27785d7e610e72752dc8087436d00d2c7115e149c0a754babb56d3e", "sha256:d4a0d4fb938c2c3c0076445c9bd1215a3bd3df557b88d8b05ec2889ca0c92f8d", "sha256:dff5bd1236737f66950999d25de7a78144548ebac7788d30ada8c1b6ead60b27", "sha256:e5af77656e8d367701f40f80a91c985ca43319f322f0a36ba9f93909d0bc4cb2", "sha256:e6458c41236d37cb982120b070ebcc115687c852bee24cdd18792da2640cf44d", "sha256:ea170341a4a9078a067b431044cd56c73553425833a7c2bb81734777a230ad4b", "sha256:ef2ed6d0ac4de4ac602903e203eccd25ec8e37f1446fe1a3d2953a658035e0a5" ], "markers": "python_version >= '3.5'", "version": "==1.1.2" }, "google-resumable-media": { "hashes": [ "sha256:dbe670cd7f02f3586705fd5a108c8ab8552fa36a1cad8afbc5a54e982cf34f0c", "sha256:ee98b1921e5bda94867a08c864e55b4763d63887664f49ee1c231988f56b9d43" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5'", "version": "==1.2.0" }, "googleapis-common-protos": { "extras": [ "grpc" ], "hashes": [ "sha256:a88ee8903aa0a81f6c3cec2d5cf62d3c8aa67c06439b0496b49048fb1854ebf4", "sha256:f6d561ab8fb16b30020b940e2dd01cd80082f4762fa9f3ee670f4419b4b8dbd0" ], "markers": "python_version >= '3.6'", "version": "==1.53.0" }, "grpc-google-iam-v1": { "hashes": [ "sha256:0bfb5b56f648f457021a91c0df0db4934b6e0c300bd0f2de2333383fe958aa72" ], "version": "==0.12.3" }, "grpcio": { "hashes": [ "sha256:025fa7dffb0cf724070cfcbe2ff600a18b0cf84642ede5c92f2717162e2a8c95", "sha256:0b8817acef140cb9a3543208c13282d3bf4bb0103e930ddbb779677604085ada", "sha256:0d64b5995e17eb9f086e82e6a4edadd1295827b593be71b516e7a442067784b5", "sha256:1aab01ee3e4b88ed6419f0b25ff21c83deb6c823c6fb77e655def0796526e3a3", "sha256:1de472a3c2a3d89d4d400d8179f2777ec99f7da0e87c0c1f196226141816d621", "sha256:22b0cc3531d3c405fae9a8519004a0e62ecbd1f005b55b3622098a4881d36b96", "sha256:23666be3ed366f647f09c9caf89c48ca0daa12be8fe4786e5a368a6cd69de1f6", "sha256:264f6d9a922f5124f79f50b1880349fd16c657a9b4fdf0f29fca939d40584f7f", "sha256:30807f3979ebb3872588fa166876a2a24febe17e0db5950d5bedd67320d11b8c", "sha256:30ba9712547c9497a438bfeb2c7f393fa983df1609e1c81243d4b0d1b1bfefbf", "sha256:34d6f626062e7ef47ab30ff8976825c58fa8846ccd8c645b57291ccc74b9d413", "sha256:37e265b72e69ef8e33efca8d1123bdc349ae3eabb92563e76adfce209c9df51a", "sha256:3ee1bef5f5e4208998cdef44933db3c30c52a7ebde424cfc4186404ffded1d35", "sha256:4493365334baaa3d775f5e4a91d9a844ac676560232223405a0964dfddb31924", "sha256:4850c96d3a22d941b0d6af4dccbc739caec7f367b783aad049c843b28b458ff0", "sha256:494cce1709f7cd63c2610c25b41f886048f1d993511ddb23f766b77ac142ba78", "sha256:4c0503b5ef6fcabc52c296d750a095ef29fd707d0f85322e95e5c261b3a684f9", "sha256:5dabaac759a98bcfd979d22874dcd7ccf8779678a2fe841d355dd93fee143974", "sha256:609297d3d5d32f47e04bf7dc61c7756df50bc37dec4dfd63e996388eba42fb3b", "sha256:640f49187105fb6c2b1b7acea06df3b0ccf5fe33a075c73b8a741013bc5cc802", "sha256:67b482c810d05d9317e29b82900864ab888b9f842701906ba54c3eb176cd8eab", "sha256:6ad11c1ea337720a42fc31959bd44a38b8837e3ae25bdab681e2e1a28096b02a", "sha256:6f44b8244bafcbea63daff222ae1b27d048b9d8fd47eb3d11e61ee092078e766", "sha256:728292f5ccb849f30774c0805ef5c39452b3a5f4d193ac499ae5b78d268ff64b", "sha256:74aad86c7c1b9163d01c3d9e75861e9b09c65e0947592ca315c30353a0f6c4d1", "sha256:7533d2c9698dd3038fcf3dd0df243b76a9e0db8008f8575c305e20a3593189eb", "sha256:7b2a2cf3621f94b123a9d7a68e4a8d948b29520136f096927f7c9653f24c8fca", "sha256:80c3c9d24ecd236571d3c86657243431a8bafef022dcce83f9f2aeb6eecb96b9", "sha256:8d3cdca5cfd6761a8824bc8acc8ac7bc37ad5ef75899308ca0458cf7952ce12d", "sha256:8f5a16f8b650efddd5ff3f750cca5b45c045923be13e79cdd1b886332307f46a", "sha256:9364f35949c3cff5470b583a03ccfd927b71cbe1ab7583a6529d5d67ed76e91e", "sha256:9674fffd1f599aec7389a61d48c1a8c8aaba69591609895911c6d8386d86dd45", "sha256:99a627471275f93d400399b55e4c1d798602ff79d693e7def0a0b276912bff7e", "sha256:a1cd40eac72d3c914eea73f8f7730ddbd86061098a8ce712d1ce108e9d87d449", "sha256:ac4174b1cf4daea0653fcfee7676bb04a8a43644e9ddf1913834d1542a9c697b", "sha256:ad03ff6b15f3481f3c999d5d22b5c56295dffc49b8e2cbdbc04c7bf358d3034e", "sha256:b7cc965538da06c9e9cf0e01bae91f274c75baf224ca6a734717c0f003ddf1f2", "sha256:b948a00764fee55cf111e0bf3d987167557152abf879f2c13bd2f278a6247ded", "sha256:c87599137f6022ed5079b0df47da83134b9810d4b00999b87edfc901347f26a9", "sha256:d232802ba15b465000263bc17171f9863173b7669bdd72dbdffdfcc0f6e637dc", "sha256:d7ae05ded17c4697ef80784dc89cad3025db0d90c5a8a0ada47a8d0749617d58", "sha256:df8305806311d3fe913d4f7eb3ef28e2072159ea12f95baab5d447f1380a71e3", "sha256:e236d0580f7e69a35c420ce60f960b294e9dc973b8c31499fa476eb4d4ba4088", "sha256:e3e0fb7d32f163699cef5132b060e3f613dc914408164eb3e3ac69095861ea04", "sha256:e72d8df53624098d8b1fe01c961888d61f90d7c0aa8116d76db80a535da9b445", "sha256:e7da0319003d150611b30cd864e0474a283324b3db9107107aa3ef9a71c53130", "sha256:ee0537fe2423307b885ba44e6789249e6d7624247cb38a20b9f38f4b40f5ab03", "sha256:f1287ae8a3bef97fd702dac95967aaf52031a6dceb2bd30da165f16e3b617293", "sha256:f6a73167fce4a41e5c0b34ceaad1048a14e9eeb4fc324da49da0537c199efab7", "sha256:f933dd10948a5e5ed4258a1581e45aec1bb84069e62368084eb2dcf4cce51e78", "sha256:fa279b99878bae9b804c09e023f2b47de79d0b5e813ab85ddf28673784d610f0" ], "version": "==1.37.1" }, "httplib2": { "hashes": [ "sha256:0b12617eeca7433d4c396a100eaecfa4b08ee99aa881e6df6e257a7aad5d533d", "sha256:2ad195faf9faf079723f6714926e9a9061f694d07724b846658ce08d40f522b4" ], "version": "==0.19.1" }, "humanize": { "hashes": [ "sha256:a0474226e1494923f9106758e11f0c3bb4dbe5e7d84388fa78f90eb7713b5d65", "sha256:f584919f691ecfb67036a8639f2ac3d578f5f9073fb4cfd370a4cdf9f66aed78" ], "markers": "python_version >= '3.6'", "version": "==3.5.0" }, "idna": { "hashes": [ "sha256:b307872f855b18632ce0c21c5e45be78c0ea7ae4c15c828c20788b26921eb3f6", "sha256:b97d804b1e9b523befed77c48dacec60e6dcb0b5391d57af6a65a312a90648c0" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==2.10" }, "isort": { "hashes": [ "sha256:0a943902919f65c5684ac4e0154b1ad4fac6dcaa5d9f3426b732f1c8b5419be6", "sha256:2bb1680aad211e3c9944dbce1d4ba09a989f04e238296c87fe2139faa26d655d" ], "index": "pypi", "version": "==5.8.0" }, "jinja2": { "hashes": [ "sha256:74c935a1b8bb9a3947c50a54766a969d4846290e1e788ea44c1392163723c3bd", "sha256:f84be1bb0040caca4cea721fcbbbbd61f9be9464ca236387158b0feea01914a4" ], "index": "pypi", "version": "==2.10" }, "jsonpath-rw": { "hashes": [ "sha256:05c471281c45ae113f6103d1268ec7a4831a2e96aa80de45edc89b11fac4fbec" ], "index": "pypi", "version": "==1.4.0" }, "libcst": { "hashes": [ "sha256:30154cd0aaede8f3adfc4bdead23fe022a57e88898b9993cc3fea3bfbaf780d2", "sha256:da89cc1a37702caa6fe7207b1257fad58f0d4643597279733106ca902b4fdbad" ], "markers": "python_version >= '3.6'", "version": "==0.3.18" }, "markupsafe": { "hashes": [ "sha256:007dc055dbce5b1104876acee177dbfd18757e19d562cd440182e1f492e96b95", "sha256:031bf79a27d1c42f69c276d6221172417b47cb4b31cdc73d362a9bf5a1889b9f", "sha256:161d575fa49395860b75da5135162481768b11208490d5a2143ae6785123e77d", "sha256:24bbc3507fb6dfff663af7900a631f2aca90d5a445f272db5fc84999fa5718bc", "sha256:2efaeb1baff547063bad2b2893a8f5e9c459c4624e1a96644bbba08910ae34e0", "sha256:32200f562daaab472921a11cbb63780f1654552ae49518196fc361ed8e12e901", "sha256:3261fae28155e5c8634dd7710635fe540a05b58f160cef7713c7700cb9980e66", "sha256:3b54a9c68995ef4164567e2cd1a5e16db5dac30b2a50c39c82db8d4afaf14f63", "sha256:3c352ff634e289061711608f5e474ec38dbaa21e3e168820d53d5f4015e5b91b", "sha256:3fb47f97f1d338b943126e90b79cad50d4fcfa0b80637b5a9f468941dbbd9ce5", "sha256:441ce2a8c17683d97e06447fcbccbdb057cbf587c78eb75ae43ea7858042fe2c", "sha256:45535241baa0fc0ba2a43961a1ac7562ca3257f46c4c3e9c0de38b722be41bd1", "sha256:4aca81a687975b35e3e80bcf9aa93fe10cd57fac37bf18b2314c186095f57e05", "sha256:4cc563836f13c57f1473bc02d1e01fc37bab70ad4ee6be297d58c1d66bc819bf", "sha256:4fae0677f712ee090721d8b17f412f1cbceefbf0dc180fe91bab3232f38b4527", "sha256:58bc9fce3e1557d463ef5cee05391a05745fd95ed660f23c1742c711712c0abb", "sha256:664832fb88b8162268928df233f4b12a144a0c78b01d38b81bdcf0fc96668ecb", "sha256:70820a1c96311e02449591cbdf5cd1c6a34d5194d5b55094ab725364375c9eb2", "sha256:79b2ae94fa991be023832e6bcc00f41dbc8e5fe9d997a02db965831402551730", "sha256:83cf0228b2f694dcdba1374d5312f2277269d798e65f40344964f642935feac1", "sha256:87de598edfa2230ff274c4de7fcf24c73ffd96208c8e1912d5d0fee459767d75", "sha256:8f806bfd0f218477d7c46a11d3e52dc7f5fdfaa981b18202b7dc84bbc287463b", "sha256:90053234a6479738fd40d155268af631c7fca33365f964f2208867da1349294b", "sha256:a00dce2d96587651ef4fa192c17e039e8cfab63087c67e7d263a5533c7dad715", "sha256:a08cd07d3c3c17cd33d9e66ea9dee8f8fc1c48e2d11bd88fd2dc515a602c709b", "sha256:a19d39b02a24d3082856a5b06490b714a9d4179321225bbf22809ff1e1887cc8", "sha256:d00a669e4a5bec3ee6dbeeeedd82a405ced19f8aeefb109a012ea88a45afff96", "sha256:dab0c685f21f4a6c95bfc2afd1e7eae0033b403dd3d8c1b6d13a652ada75b348", "sha256:df561f65049ed3556e5b52541669310e88713fdae2934845ec3606f283337958", "sha256:e4570d16f88c7f3032ed909dc9e905a17da14a1c4cfd92608e3fda4cb1208bbd", "sha256:e77e4b983e2441aff0c0d07ee711110c106b625f440292dfe02a2f60c8218bd6", "sha256:e79212d09fc0e224d20b43ad44bb0a0a3416d1e04cf6b45fed265114a5d43d20", "sha256:f58b5ba13a5689ca8317b98439fccfbcc673acaaf8241c1869ceea40f5d585bf", "sha256:fef86115fdad7ae774720d7103aa776144cf9b66673b4afa9bcaa7af990ed07b" ], "markers": "python_version >= '3.6'", "version": "==2.0.0" }, "maya": { "hashes": [ "sha256:7f53e06d5a123613dce7c270cbc647643a6942590dba7a19ec36194d0338c3f4", "sha256:fa90d8c6c9a730a7f740dec6e1c7d3da8ca10159e40bb843e4e72772f5e3a9a3" ], "index": "pypi", "version": "==0.6.1" }, "msgpack": { "hashes": [ "sha256:0cb94ee48675a45d3b86e61d13c1e6f1696f0183f0715544976356ff86f741d9", "sha256:1026dcc10537d27dd2d26c327e552f05ce148977e9d7b9f1718748281b38c841", "sha256:26a1759f1a88df5f1d0b393eb582ec022326994e311ba9c5818adc5374736439", "sha256:2a5866bdc88d77f6e1370f82f2371c9bc6fc92fe898fa2dec0c5d4f5435a2694", "sha256:31c17bbf2ae5e29e48d794c693b7ca7a0c73bd4280976d408c53df421e838d2a", "sha256:497d2c12426adcd27ab83144057a705efb6acc7e85957a51d43cdcf7f258900f", "sha256:5a9ee2540c78659a1dd0b110f73773533ee3108d4e1219b5a15a8d635b7aca0e", "sha256:8521e5be9e3b93d4d5e07cb80b7e32353264d143c1f072309e1863174c6aadb1", "sha256:87869ba567fe371c4555d2e11e4948778ab6b59d6cc9d8460d543e4cfbbddd1c", "sha256:8ffb24a3b7518e843cd83538cf859e026d24ec41ac5721c18ed0c55101f9775b", "sha256:92be4b12de4806d3c36810b0fe2aeedd8d493db39e2eb90742b9c09299eb5759", "sha256:9ea52fff0473f9f3000987f313310208c879493491ef3ccf66268eff8d5a0326", "sha256:a4355d2193106c7aa77c98fc955252a737d8550320ecdb2e9ac701e15e2943bc", "sha256:a99b144475230982aee16b3d249170f1cccebf27fb0a08e9f603b69637a62192", "sha256:ac25f3e0513f6673e8b405c3a80500eb7be1cf8f57584be524c4fa78fe8e0c83", "sha256:b28c0876cce1466d7c2195d7658cf50e4730667196e2f1355c4209444717ee06", "sha256:b55f7db883530b74c857e50e149126b91bb75d35c08b28db12dcb0346f15e46e", "sha256:b6d9e2dae081aa35c44af9c4298de4ee72991305503442a5c74656d82b581fe9", "sha256:c747c0cc08bd6d72a586310bda6ea72eeb28e7505990f342552315b229a19b33", "sha256:d6c64601af8f3893d17ec233237030e3110f11b8a962cb66720bf70c0141aa54", "sha256:d8167b84af26654c1124857d71650404336f4eb5cc06900667a493fc619ddd9f", "sha256:de6bd7990a2c2dabe926b7e62a92886ccbf809425c347ae7de277067f97c2887", "sha256:e36a812ef4705a291cdb4a2fd352f013134f26c6ff63477f20235138d1d21009", "sha256:e89ec55871ed5473a041c0495b7b4e6099f6263438e0bd04ccd8418f92d5d7f2", "sha256:f3e6aaf217ac1c7ce1563cf52a2f4f5d5b1f64e8729d794165db71da57257f0c", "sha256:f484cd2dca68502de3704f056fa9b318c94b1539ed17a4c784266df5d6978c87", "sha256:fae04496f5bc150eefad4e9571d1a76c55d021325dcd484ce45065ebbdd00984", "sha256:fe07bc6735d08e492a327f496b7850e98cb4d112c56df69b0c844dbebcbb47f6" ], "version": "==1.0.2" }, "mypy-extensions": { "hashes": [ "sha256:090fedd75945a69ae91ce1303b5824f428daf5a028d2f6ab8a299250a846f15d", "sha256:2d82818f5bb3e369420cb3c4060a7970edba416647068eb4c5343488a6c604a8" ], "version": "==0.4.3" }, "netaddr": { "hashes": [ "sha256:9666d0232c32d2656e5e5f8d735f58fd6c7457ce52fc21c98d45f2af78f990ac", "sha256:d6cc57c7a07b1d9d2e917aa8b36ae8ce61c35ba3fcd1b83ca31c5a0ee2b5a243" ], "index": "pypi", "version": "==0.8.0" }, "ntlm-auth": { "hashes": [ "sha256:c9667d361dc09f6b3750283d503c689070ff7d89f2f6ff0d38088d5436ff8543", "sha256:f1527c581dbf149349134fc2d789d50af2a400e193206956fa0ab456ccc5a8ba" ], "markers": "python_version >= '2.6' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==1.5.0" }, "packaging": { "hashes": [ "sha256:5b327ac1320dc863dca72f4514ecc086f31186744b84a230374cc1fd776feae5", "sha256:67714da7f7bc052e064859c05c595155bd1ee9f69f76557e21f051443c20947a" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==20.9" }, "pathspec": { "hashes": [ "sha256:86379d6b86d75816baba717e64b1a3a3469deb93bb76d613c9ce79edc5cb68fd", "sha256:aa0cb481c4041bf52ffa7b0d8fa6cd3e88a2ca4879c533c9153882ee2556790d" ], "version": "==0.8.1" }, "pbr": { "hashes": [ "sha256:42df03e7797b796625b1029c0400279c7c34fd7df24a7d7818a1abb5b38710dd", "sha256:c68c661ac5cc81058ac94247278eeda6d2e6aecb3e227b0387c30d277e7ef8d4" ], "markers": "python_version >= '2.6'", "version": "==5.6.0" }, "pendulum": { "hashes": [ "sha256:0731f0c661a3cb779d398803655494893c9f581f6488048b3fb629c2342b5394", "sha256:1245cd0075a3c6d889f581f6325dd8404aca5884dea7223a5566c38aab94642b", "sha256:29c40a6f2942376185728c9a0347d7c0f07905638c83007e1d262781f1e6953a", "sha256:2d1619a721df661e506eff8db8614016f0720ac171fe80dda1333ee44e684087", "sha256:318f72f62e8e23cd6660dbafe1e346950281a9aed144b5c596b2ddabc1d19739", "sha256:33fb61601083f3eb1d15edeb45274f73c63b3c44a8524703dc143f4212bf3269", "sha256:3481fad1dc3f6f6738bd575a951d3c15d4b4ce7c82dce37cf8ac1483fde6e8b0", "sha256:4c9c689747f39d0d02a9f94fcee737b34a5773803a64a5fdb046ee9cac7442c5", "sha256:7c5ec650cb4bec4c63a89a0242cc8c3cebcec92fcfe937c417ba18277d8560be", "sha256:94b1fc947bfe38579b28e1cccb36f7e28a15e841f30384b5ad6c5e31055c85d7", "sha256:9702069c694306297ed362ce7e3c1ef8404ac8ede39f9b28b7c1a7ad8c3959e3", "sha256:b06a0ca1bfe41c990bbf0c029f0b6501a7f2ec4e38bfec730712015e8860f207", "sha256:b6c352f4bd32dff1ea7066bd31ad0f71f8d8100b9ff709fb343f3b86cee43efe", "sha256:c501749fdd3d6f9e726086bf0cd4437281ed47e7bca132ddb522f86a1645d360", "sha256:c807a578a532eeb226150d5006f156632df2cc8c5693d778324b43ff8c515dd0", "sha256:db0a40d8bcd27b4fb46676e8eb3c732c67a5a5e6bfab8927028224fbced0b40b", "sha256:de42ea3e2943171a9e95141f2eecf972480636e8e484ccffaf1e833929e9e052", "sha256:e95d329384717c7bf627bf27e204bc3b15c8238fa8d9d9781d93712776c14002", "sha256:f5e236e7730cab1644e1b87aca3d2ff3e375a608542e90fe25685dae46310116", "sha256:f888f2d2909a414680a29ae74d0592758f2b9fcdee3549887779cd4055e975db", "sha256:fb53ffa0085002ddd43b6ca61a7b34f2d4d7c3ed66f931fe599e1a531b42af9b" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'", "version": "==2.1.2" }, "pep8": { "hashes": [ "sha256:b22cfae5db09833bb9bd7c8463b53e1a9c9b39f12e304a8d0bba729c501827ee", "sha256:fe249b52e20498e59e0b5c5256aa52ee99fc295b26ec9eaa85776ffdb9fe6374" ], "index": "pypi", "version": "==1.7.1" }, "ply": { "hashes": [ "sha256:00c7c1aaa88358b9c765b6d3000c6eec0ba42abca5351b095321aef446081da3", "sha256:096f9b8350b65ebd2fd1346b12452efe5b9607f7482813ffca50c22722a807ce" ], "version": "==3.11" }, "proto-plus": { "hashes": [ "sha256:600e2793ec1a0bf2b9e5ba18cd9eccbc1bc690a03c73b571bbe59789fbaaeecc", "sha256:cfc45474c7eda0fe3c4b9eca2542124f2a0ff5543242bec61e8d08bce0f5bd48" ], "markers": "python_version >= '3.6'", "version": "==1.18.1" }, "protobuf": { "hashes": [ "sha256:11301f1993f67dc81fc5c4756623652c899f7b5574b1e095d63bfc78347b11f3", "sha256:228eecbedd46d75010f1e0f8ce34dbcd11ae5a40c165a9fc9d330a58aa302818", "sha256:2cec059f4821c8f58890920a5c8a828ea027d46d5b18cb5e9dd4c727c65a2aa0", "sha256:49dd3550bb42050d1676378c3fef91ff058d7023b77ac6f3179eb2a1c6c562d7", "sha256:4bb7064727953d9187f6806230968b98e1ce4ec03bd737600e8380a9e5a6ac15", "sha256:648178381d9dbbc736849443151533ab958e7b8bcbd658a62ad10906552fddcc", "sha256:675d8e7463e03cf8343792935d62b80d90839d56a228c941dfdddda946eea066", "sha256:80b233553ff500378becc372721541902c567e51b2654b68513d7b89c43dbc4b", "sha256:8c0d3a5aa3412a440a9384349f6095991e8a5012e619cf5f57f042829f65cdb3", "sha256:8ec649186f5443cab12692438190988bb9058dbfa5851d10d59a1c7214159a5f", "sha256:9191e97d92b62424423ce5a5604047fd76c80a4f463fbd10c9d8b82928f152cf", "sha256:b85ad5fe54163350067a53c0c170211c9f752dd4b4d8f339eb5aea8e987614a9", "sha256:bc1ba824ff750c2ead1e7b8dd049bb5ddf8658d056cf4b989f04c68b049a47a7", "sha256:be831508b9207156309a88b9d115dbae0caa4a987b05f1aa4fed4c5ac53ec51b", "sha256:bf9a5caa0e0093552c2cc6051facef15b9c9ad4b1bde70430964edf99eaf2dad", "sha256:c0f760adc1dd3dfe6d13af529b2ab42bb3fff1a2a00a6873b583b4ce0048ddff", "sha256:c356d038a4e4cf52ccd7aff8022fc6a76daa0be5ecf2517ed75b87d32be0405d", "sha256:c94ee9832fded92a11920b10d75c5aa7f4ef910b0bd463c039e102c8d7eb2c46", "sha256:d3b9988f1a3591d900a090887ae4c41592e252bef5b249ad7e1fc46c21617534", "sha256:ef9c2d0b3c0935725b547175745ceacb86f4d410b1e984d47e320c9efb1936c5" ], "version": "==3.16.0" }, "pyasn1": { "hashes": [ "sha256:014c0e9976956a08139dc0712ae195324a75e142284d5f87f1a87ee1b068a359", "sha256:03840c999ba71680a131cfaee6fab142e1ed9bbd9c693e285cc6aca0d555e576", "sha256:0458773cfe65b153891ac249bcf1b5f8f320b7c2ce462151f8fa74de8934becf", "sha256:08c3c53b75eaa48d71cf8c710312316392ed40899cb34710d092e96745a358b7", "sha256:39c7e2ec30515947ff4e87fb6f456dfc6e84857d34be479c9d4a4ba4bf46aa5d", "sha256:5c9414dcfede6e441f7e8f81b43b34e834731003427e5b09e4e00e3172a10f00", "sha256:6e7545f1a61025a4e58bb336952c5061697da694db1cae97b116e9c46abcf7c8", "sha256:78fa6da68ed2727915c4767bb386ab32cdba863caa7dbe473eaae45f9959da86", "sha256:7ab8a544af125fb704feadb008c99a88805126fb525280b2270bb25cc1d78a12", "sha256:99fcc3c8d804d1bc6d9a099921e39d827026409a58f2a720dcdb89374ea0c776", "sha256:aef77c9fb94a3ac588e87841208bdec464471d9871bd5050a287cc9a475cd0ba", "sha256:e89bf84b5437b532b0803ba5c9a5e054d21fec423a89952a74f87fa2c9b7bce2", "sha256:fec3e9d8e36808a28efb59b489e4528c10ad0f480e57dcc32b4de5c9d8c9fdf3" ], "version": "==0.4.8" }, "pyasn1-modules": { "hashes": [ "sha256:0845a5582f6a02bb3e1bde9ecfc4bfcae6ec3210dd270522fee602365430c3f8", "sha256:0fe1b68d1e486a1ed5473f1302bd991c1611d319bba158e98b106ff86e1d7199", "sha256:15b7c67fabc7fc240d87fb9aabf999cf82311a6d6fb2c70d00d3d0604878c811", "sha256:426edb7a5e8879f1ec54a1864f16b882c2837bfd06eee62f2c982315ee2473ed", "sha256:65cebbaffc913f4fe9e4808735c95ea22d7a7775646ab690518c056784bc21b4", "sha256:905f84c712230b2c592c19470d3ca8d552de726050d1d1716282a1f6146be65e", "sha256:a50b808ffeb97cb3601dd25981f6b016cbb3d31fbf57a8b8a87428e6158d0c74", "sha256:a99324196732f53093a84c4369c996713eb8c89d360a496b599fb1a9c47fc3eb", "sha256:b80486a6c77252ea3a3e9b1e360bc9cf28eaac41263d173c032581ad2f20fe45", "sha256:c29a5e5cc7a3f05926aff34e097e84f8589cd790ce0ed41b67aed6857b26aafd", "sha256:cbac4bc38d117f2a49aeedec4407d23e8866ea4ac27ff2cf7fb3e5b570df19e0", "sha256:f39edd8c4ecaa4556e989147ebf219227e2cd2e8a43c7e7fcb1f1c18c5fd6a3d", "sha256:fe0644d9ab041506b62782e92b06b8c68cca799e1a9636ec398675459e031405" ], "version": "==0.2.8" }, "pycparser": { "hashes": [ "sha256:2d475327684562c3a96cc71adf7dc8c4f0565175cf86b6d7a404ff4c771f15f0", "sha256:7582ad22678f0fcd81102833f60ef8d0e57288b6b5fb00323d101be910e35705" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==2.20" }, "pycrypto": { "hashes": [ "sha256:f2ce1e989b272cfcb677616763e0a2e7ec659effa67a88aa92b3a65528f60a3c" ], "index": "pypi", "version": "==2.6.1" }, "pydocstyle": { "hashes": [ "sha256:164befb520d851dbcf0e029681b91f4f599c62c5cd8933fd54b1bfbd50e89e1f", "sha256:d4449cf16d7e6709f63192146706933c7a334af7c0f083904799ccb851c50f6d" ], "index": "pypi", "version": "==6.0.0" }, "pyflakes": { "hashes": [ "sha256:7893783d01b8a89811dd72d7dfd4d84ff098e5eed95cfa8905b22bbffe52efc3", "sha256:f5bc8ecabc05bb9d291eb5203d6810b49040f6ff446a756326104746cc00c1db" ], "index": "pypi", "version": "==2.3.1" }, "pygments": { "hashes": [ "sha256:a18f47b506a429f6f4b9df81bb02beab9ca21d0a5fee38ed15aef65f0545519f", "sha256:d66e804411278594d764fc69ec36ec13d9ae9147193a1740cd34d272ca383b8e" ], "markers": "python_version >= '3.5'", "version": "==2.9.0" }, "pyopenssl": { "hashes": [ "sha256:4c231c759543ba02560fcd2480c48dcec4dae34c9da7d3747c508227e0624b51", "sha256:818ae18e06922c066f777a33f1fca45786d85edfe71cd043de6379337a7f274b" ], "index": "pypi", "version": "==20.0.1" }, "pyparsing": { "hashes": [ "sha256:c203ec8783bf771a155b207279b9bccb8dea02d8f0c9e5f8ead507bc3246ecc1", "sha256:ef9d7589ef3c200abe66653d3f1ab1033c3c419ae9b9bdb1240a85b024efc88b" ], "markers": "python_version >= '2.6' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==2.4.7" }, "pypsexec": { "hashes": [ "sha256:aaad08ae0a98eccf87f29dab6088141ded51611f63b48d804d90bebb41fa5f53", "sha256:f04635d698ee8bc274a545a3bd29adc3ee4126f527b436d0a770af5780dfb0bf" ], "index": "pypi", "version": "==0.2.0" }, "pyspnego": { "hashes": [ "sha256:0356bccedc033b7266d89503eca50717f81fc9d3b98cb1dd5227bb7c1a9275ae", "sha256:0940e0bdec72c6266ef9604db929ddda86f1dafe2c804ac3d6e30161a53e414d", "sha256:44469f7cf2a9435d7115c557db4df6bd6a74ce0056511b88b672b58ff2d477f7", "sha256:507809d2e1fc8733a4f0801ee59d01db646b41d3ab8b90a6f3a16a17eef3fc37", "sha256:5701dd50597c0a11b4bd1d3921fd1c32ba3b7ec15c3e273c486870efe673dd52", "sha256:5be3fa80bc81a11b9254e3800aa350db06b2eb1b9d830f7770a1baadae415185", "sha256:777c9524e91298b2ec3d728dbb85e44d047ddd857db6c2658d977401fedfcc9c", "sha256:83d52b9e8b55243fa3711d89e77d94935a60b8638e8659b572dee898d359bbe6", "sha256:c05aa1efcb9b0cf3c6341c48a6b349c3b669b0d7d99ab65a789c0c1071701136", "sha256:cc57132ebe7b6b5d14e940bf4069a1206ad0fe23f51281dee4e7979b34a369d3", "sha256:d3e7d55447cc353765cef6d77b3c57fd02f77ddc83a4fb3b4b696df92f908ae1", "sha256:e021472424fcb477d9a211437f6a14c2d9cb59e20eeee9ae7992bd7deee50064", "sha256:ed4fece1a834cc29377f43f4ff459ae7eb7c7d937cfd3e4b46676fe9984c8c74", "sha256:f90a41f7d31e049f3a2e566f02ce06d86f13bbd2e3796b3af3bdb2be75c6e836" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'", "version": "==0.1.6" }, "python-dateutil": { "hashes": [ "sha256:73ebfe9dbf22e832286dafa60473e4cd239f8592f699aa5adaf10050e6e1823c", "sha256:75bb3f31ea686f1197762692a9ee6a7550b59fc6ca3a1f4b5d7e32fb98e2da2a" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==2.8.1" }, "pytz": { "hashes": [ "sha256:83a4a90894bf38e243cf052c8b58f381bfe9a7a483f6a9cab140bc7f702ac4da", "sha256:eb10ce3e7736052ed3623d49975ce333bcd712c7bb19a58b9e2089d4057d0798" ], "version": "==2021.1" }, "pytzdata": { "hashes": [ "sha256:3efa13b335a00a8de1d345ae41ec78dd11c9f8807f522d39850f2dd828681540", "sha256:e1e14750bcf95016381e4d472bad004eef710f2d6417240904070b3d6654485f" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==2020.1" }, "pywinrm": { "hashes": [ "sha256:188c064c70b3c73a1548f3c67ac2aec07815fa50e0cb0bda07e447a354226f5c", "sha256:e7865ec5e46e7fedb859c656cfaba4fcf669de7c042b5a7d8a759544636bcfb7" ], "index": "pypi", "version": "==0.4.2" }, "pyyaml": { "hashes": [ "sha256:08682f6b72c722394747bddaf0aa62277e02557c0fd1c42cb853016a38f8dedf", "sha256:0f5f5786c0e09baddcd8b4b45f20a7b5d61a7e7e99846e3c799b05c7c53fa696", "sha256:129def1b7c1bf22faffd67b8f3724645203b79d8f4cc81f674654d9902cb4393", "sha256:294db365efa064d00b8d1ef65d8ea2c3426ac366c0c4368d930bf1c5fb497f77", "sha256:3b2b1824fe7112845700f815ff6a489360226a5609b96ec2190a45e62a9fc922", "sha256:3bd0e463264cf257d1ffd2e40223b197271046d09dadf73a0fe82b9c1fc385a5", "sha256:4465124ef1b18d9ace298060f4eccc64b0850899ac4ac53294547536533800c8", "sha256:49d4cdd9065b9b6e206d0595fee27a96b5dd22618e7520c33204a4a3239d5b10", "sha256:4e0583d24c881e14342eaf4ec5fbc97f934b999a6828693a99157fde912540cc", "sha256:5accb17103e43963b80e6f837831f38d314a0495500067cb25afab2e8d7a4018", "sha256:607774cbba28732bfa802b54baa7484215f530991055bb562efbed5b2f20a45e", "sha256:6c78645d400265a062508ae399b60b8c167bf003db364ecb26dcab2bda048253", "sha256:72a01f726a9c7851ca9bfad6fd09ca4e090a023c00945ea05ba1638c09dc3347", "sha256:74c1485f7707cf707a7aef42ef6322b8f97921bd89be2ab6317fd782c2d53183", "sha256:895f61ef02e8fed38159bb70f7e100e00f471eae2bc838cd0f4ebb21e28f8541", "sha256:8c1be557ee92a20f184922c7b6424e8ab6691788e6d86137c5d93c1a6ec1b8fb", "sha256:bb4191dfc9306777bc594117aee052446b3fa88737cd13b7188d0e7aa8162185", "sha256:bfb51918d4ff3d77c1c856a9699f8492c612cde32fd3bcd344af9be34999bfdc", "sha256:c20cfa2d49991c8b4147af39859b167664f2ad4561704ee74c1de03318e898db", "sha256:cb333c16912324fd5f769fff6bc5de372e9e7a202247b48870bc251ed40239aa", "sha256:d2d9808ea7b4af864f35ea216be506ecec180628aced0704e34aca0b040ffe46", "sha256:d483ad4e639292c90170eb6f7783ad19490e7a8defb3e46f97dfe4bacae89122", "sha256:dd5de0646207f053eb0d6c74ae45ba98c3395a571a2891858e87df7c9b9bd51b", "sha256:e1d4970ea66be07ae37a3c2e48b5ec63f7ba6804bdddfdbd3cfd954d25a82e63", "sha256:e4fac90784481d221a8e4b1162afa7c47ed953be40d31ab4629ae917510051df", "sha256:fa5ae20527d8e831e8230cbffd9f8fe952815b2b7dae6ffec25318803a7528fc", "sha256:fd7f6999a8070df521b6384004ef42833b9bd62cfee11a09bda1079b4b704247", "sha256:fdc842473cd33f45ff6bce46aea678a54e3d21f1b61a7750ce3c498eedfe25d6", "sha256:fe69978f3f768926cfa37b867e3843918e012cf83f680806599ddce33c2c68b0" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5'", "version": "==5.4.1" }, "regex": { "hashes": [ "sha256:01afaf2ec48e196ba91b37451aa353cb7eda77efe518e481707e0515025f0cd5", "sha256:11d773d75fa650cd36f68d7ca936e3c7afaae41b863b8c387a22aaa78d3c5c79", "sha256:18c071c3eb09c30a264879f0d310d37fe5d3a3111662438889ae2eb6fc570c31", "sha256:1e1c20e29358165242928c2de1482fb2cf4ea54a6a6dea2bd7a0e0d8ee321500", "sha256:281d2fd05555079448537fe108d79eb031b403dac622621c78944c235f3fcf11", "sha256:314d66636c494ed9c148a42731b3834496cc9a2c4251b1661e40936814542b14", "sha256:32e65442138b7b76dd8173ffa2cf67356b7bc1768851dded39a7a13bf9223da3", "sha256:339456e7d8c06dd36a22e451d58ef72cef293112b559010db3d054d5560ef439", "sha256:3916d08be28a1149fb97f7728fca1f7c15d309a9f9682d89d79db75d5e52091c", "sha256:3a9cd17e6e5c7eb328517969e0cb0c3d31fd329298dd0c04af99ebf42e904f82", "sha256:47bf5bf60cf04d72bf6055ae5927a0bd9016096bf3d742fa50d9bf9f45aa0711", "sha256:4c46e22a0933dd783467cf32b3516299fb98cfebd895817d685130cc50cd1093", "sha256:4c557a7b470908b1712fe27fb1ef20772b78079808c87d20a90d051660b1d69a", "sha256:52ba3d3f9b942c49d7e4bc105bb28551c44065f139a65062ab7912bef10c9afb", "sha256:563085e55b0d4fb8f746f6a335893bda5c2cef43b2f0258fe1020ab1dd874df8", "sha256:598585c9f0af8374c28edd609eb291b5726d7cbce16be6a8b95aa074d252ee17", "sha256:619d71c59a78b84d7f18891fe914446d07edd48dc8328c8e149cbe0929b4e000", "sha256:67bdb9702427ceddc6ef3dc382455e90f785af4c13d495f9626861763ee13f9d", "sha256:6d1b01031dedf2503631d0903cb563743f397ccaf6607a5e3b19a3d76fc10480", "sha256:741a9647fcf2e45f3a1cf0e24f5e17febf3efe8d4ba1281dcc3aa0459ef424dc", "sha256:7c2a1af393fcc09e898beba5dd59196edaa3116191cc7257f9224beaed3e1aa0", "sha256:7d9884d86dd4dd489e981d94a65cd30d6f07203d90e98f6f657f05170f6324c9", "sha256:90f11ff637fe8798933fb29f5ae1148c978cccb0452005bf4c69e13db951e765", "sha256:919859aa909429fb5aa9cf8807f6045592c85ef56fdd30a9a3747e513db2536e", "sha256:96fcd1888ab4d03adfc9303a7b3c0bd78c5412b2bfbe76db5b56d9eae004907a", "sha256:97f29f57d5b84e73fbaf99ab3e26134e6687348e95ef6b48cfd2c06807005a07", "sha256:980d7be47c84979d9136328d882f67ec5e50008681d94ecc8afa8a65ed1f4a6f", "sha256:a91aa8619b23b79bcbeb37abe286f2f408d2f2d6f29a17237afda55bb54e7aac", "sha256:ade17eb5d643b7fead300a1641e9f45401c98eee23763e9ed66a43f92f20b4a7", "sha256:b9c3db21af35e3b3c05764461b262d6f05bbca08a71a7849fd79d47ba7bc33ed", "sha256:bd28bc2e3a772acbb07787c6308e00d9626ff89e3bfcdebe87fa5afbfdedf968", "sha256:bf5824bfac591ddb2c1f0a5f4ab72da28994548c708d2191e3b87dd207eb3ad7", "sha256:c0502c0fadef0d23b128605d69b58edb2c681c25d44574fc673b0e52dce71ee2", "sha256:c38c71df845e2aabb7fb0b920d11a1b5ac8526005e533a8920aea97efb8ec6a4", "sha256:ce15b6d103daff8e9fee13cf7f0add05245a05d866e73926c358e871221eae87", "sha256:d3029c340cfbb3ac0a71798100ccc13b97dddf373a4ae56b6a72cf70dfd53bc8", "sha256:e512d8ef5ad7b898cdb2d8ee1cb09a8339e4f8be706d27eaa180c2f177248a10", "sha256:e8e5b509d5c2ff12f8418006d5a90e9436766133b564db0abaec92fd27fcee29", "sha256:ee54ff27bf0afaf4c3b3a62bcd016c12c3fdb4ec4f413391a90bd38bc3624605", "sha256:fa4537fb4a98fe8fde99626e4681cc644bdcf2a795038533f9f711513a862ae6", "sha256:fd45ff9293d9274c5008a2054ecef86a9bfe819a67c7be1afb65e69b405b3042" ], "version": "==2021.4.4" }, "requests": { "hashes": [ "sha256:27973dd4a904a4f13b263a19c866c13b92a39ed1c964655f025f3f8d3d75b804", "sha256:c210084e36a42ae6b9219e00e48287def368a26d03a048ddad7bfee44f75871e" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'", "version": "==2.25.1" }, "requests-ntlm": { "hashes": [ "sha256:1eb43d1026b64d431a8e0f1e8a8c8119ac698e72e9b95102018214411a8463ea", "sha256:9189c92e8c61ae91402a64b972c4802b2457ce6a799d658256ebf084d5c7eb71" ], "version": "==1.1.0" }, "rich": { "hashes": [ "sha256:60cd6d6ea697a1704f2057e791e3062b506b5c74a6e2ad2ced71eccb37557259", "sha256:8f05431091601888c50341697cfc421dc398ce37b12bca0237388ef9c7e2c9e9" ], "markers": "python_version >= '3.6' and python_version < '4'", "version": "==10.1.0" }, "rsa": { "hashes": [ "sha256:78f9a9bf4e7be0c5ded4583326e7461e3a3c5aae24073648b4bdfa797d78c9d2", "sha256:9d689e6ca1b3038bc82bf8d23e944b6b6037bc02301a574935b2dd946e0353b9" ], "markers": "python_version >= '3.6'", "version": "==4.7.2" }, "ruamel.yaml": { "hashes": [ "sha256:44bc6b54fddd45e4bc0619059196679f9e8b79c027f4131bb072e6a22f4d5e28", "sha256:ac79fb25f5476e8e9ed1c53b8a2286d2c3f5dde49eb37dbcee5c7eb6a8415a22" ], "markers": "python_version >= '3.7'", "version": "==0.17.4" }, "ruamel.yaml.clib": { "hashes": [ "sha256:058a1cc3df2a8aecc12f983a48bda99315cebf55a3b3a5463e37bb599b05727b", "sha256:1236df55e0f73cd138c0eca074ee086136c3f16a97c2ac719032c050f7e0622f", "sha256:1f8c0a4577c0e6c99d208de5c4d3fd8aceed9574bb154d7a2b21c16bb924154c", "sha256:2602e91bd5c1b874d6f93d3086f9830f3e907c543c7672cf293a97c3fabdcd91", "sha256:28116f204103cb3a108dfd37668f20abe6e3cafd0d3fd40dba126c732457b3cc", "sha256:2d24bd98af676f4990c4d715bcdc2a60b19c56a3fb3a763164d2d8ca0e806ba7", "sha256:2fd336a5c6415c82e2deb40d08c222087febe0aebe520f4d21910629018ab0f3", "sha256:30dca9bbcbb1cc858717438218d11eafb78666759e5094dd767468c0d577a7e7", "sha256:44c7b0498c39f27795224438f1a6be6c5352f82cb887bc33d962c3a3acc00df6", "sha256:464e66a04e740d754170be5e740657a3b3b6d2bcc567f0c3437879a6e6087ff6", "sha256:46d6d20815064e8bb023ea8628cfb7402c0f0e83de2c2227a88097e239a7dffd", "sha256:4df5019e7783d14b79217ad9c56edf1ba7485d614ad5a385d1b3c768635c81c0", "sha256:4e52c96ca66de04be42ea2278012a2342d89f5e82b4512fb6fb7134e377e2e62", "sha256:5254af7d8bdf4d5484c089f929cb7f5bafa59b4f01d4f48adda4be41e6d29f99", "sha256:52ae5739e4b5d6317b52f5b040b1b6639e8af68a5b8fd606a8b08658fbd0cab5", "sha256:53b9dd1abd70e257a6e32f934ebc482dac5edb8c93e23deb663eac724c30b026", "sha256:6c0a5dc52fc74eb87c67374a4e554d4761fd42a4d01390b7e868b30d21f4b8bb", "sha256:73b3d43e04cc4b228fa6fa5d796409ece6fcb53a6c270eb2048109cbcbc3b9c2", "sha256:74161d827407f4db9072011adcfb825b5258a5ccb3d2cd518dd6c9edea9e30f1", "sha256:75f0ee6839532e52a3a53f80ce64925ed4aed697dd3fa890c4c918f3304bd4f4", "sha256:839dd72545ef7ba78fd2aa1a5dd07b33696adf3e68fae7f31327161c1093001b", "sha256:8be05be57dc5c7b4a0b24edcaa2f7275866d9c907725226cdde46da09367d923", "sha256:8e8fd0a22c9d92af3a34f91e8a2594eeb35cba90ab643c5e0e643567dc8be43e", "sha256:a873e4d4954f865dcb60bdc4914af7eaae48fb56b60ed6daa1d6251c72f5337c", "sha256:ab845f1f51f7eb750a78937be9f79baea4a42c7960f5a94dde34e69f3cce1988", "sha256:b1e981fe1aff1fd11627f531524826a4dcc1f26c726235a52fcb62ded27d150f", "sha256:b4b0d31f2052b3f9f9b5327024dc629a253a83d8649d4734ca7f35b60ec3e9e5", "sha256:c6ac7e45367b1317e56f1461719c853fd6825226f45b835df7436bb04031fd8a", "sha256:daf21aa33ee9b351f66deed30a3d450ab55c14242cfdfcd377798e2c0d25c9f1", "sha256:e9f7d1d8c26a6a12c23421061f9022bb62704e38211fe375c645485f38df34a2", "sha256:f6061a31880c1ed6b6ce341215336e2f3d0c1deccd84957b6fa8ca474b41e89f" ], "markers": "python_version < '3.10' and platform_python_implementation == 'CPython'", "version": "==0.2.2" }, "sh": { "hashes": [ "sha256:39aa9af22f6558a0c5d132881cf43e34828ca03e4ae11114852ca6a55c7c1d8e", "sha256:75e86a836f47de095d4531718fe8489e6f7446c75ddfa5596f632727b919ffae" ], "index": "pypi", "version": "==1.14.1" }, "six": { "hashes": [ "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926", "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==1.16.0" }, "smbprotocol": { "hashes": [ "sha256:a10c20bc5fe036dc8f2d2e9ea279125535a503fde794cdbbfd90ec45de20a489", "sha256:ace42a82d458f6bea1208e5a92e769e1032dad41567b7b870f5f2a4c07da39da" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'", "version": "==1.5.1" }, "smmap": { "hashes": [ "sha256:7e65386bd122d45405ddf795637b7f7d2b532e7e401d46bbe3fb49b9986d5182", "sha256:a9a7479e4c572e2e775c404dcd3080c8dc49f39918c2cf74913d30c4c478e3c2" ], "markers": "python_version >= '3.5'", "version": "==4.0.0" }, "snaptime": { "hashes": [ "sha256:e3f1eb89043d58d30721ab98cb65023f1a4c2740e3b197704298b163c92d508b" ], "version": "==0.2.4" }, "snowballstemmer": { "hashes": [ "sha256:b51b447bea85f9968c13b650126a888aabd4cb4463fca868ec596826325dedc2", "sha256:e997baa4f2e9139951b6f4c631bad912dfd3c792467e2f03d7239464af90e914" ], "version": "==2.1.0" }, "stevedore": { "hashes": [ "sha256:3a5bbd0652bf552748871eaa73a4a8dc2899786bc497a2aa1fcb4dcdb0debeee", "sha256:50d7b78fbaf0d04cd62411188fa7eedcb03eb7f4c4b37005615ceebe582aa82a" ], "markers": "python_version >= '3.6'", "version": "==3.3.0" }, "tabulate": { "hashes": [ "sha256:d7c013fe7abbc5e491394e10fa845f8f32fe54f8dc60c6622c6cf482d25d47e4", "sha256:eb1d13f25760052e8931f2ef80aaf6045a6cceb47514db8beab24cded16f13a7" ], "index": "pypi", "version": "==0.8.9" }, "tenacity": { "hashes": [ "sha256:5bd16ef5d3b985647fe28dfa6f695d343aa26479a04e8792b9d3c8f49e361ae1", "sha256:a0ce48587271515db7d3a5e700df9ae69cce98c4b57c23a4886da15243603dd8" ], "version": "==7.0.0" }, "texttable": { "hashes": [ "sha256:ce0faf21aa77d806bbff22b107cc22cce68dc9438f97a2df32c93e9afa4ce436", "sha256:f802f2ef8459058736264210f716c757cbf85007a30886d8541aa8c3404f1dda" ], "index": "pypi", "version": "==1.6.3" }, "toml": { "hashes": [ "sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b", "sha256:b3bda1d108d5dd99f4a20d24d9c348e91c4db7ab1b749200bded2f839ccbe68f" ], "markers": "python_version >= '2.6' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==0.10.2" }, "typed-ast": { "hashes": [ "sha256:01ae5f73431d21eead5015997ab41afa53aa1fbe252f9da060be5dad2c730ace", "sha256:067a74454df670dcaa4e59349a2e5c81e567d8d65458d480a5b3dfecec08c5ff", "sha256:0fb71b8c643187d7492c1f8352f2c15b4c4af3f6338f21681d3681b3dc31a266", "sha256:1b3ead4a96c9101bef08f9f7d1217c096f31667617b58de957f690c92378b528", "sha256:2068531575a125b87a41802130fa7e29f26c09a2833fea68d9a40cf33902eba6", "sha256:209596a4ec71d990d71d5e0d312ac935d86930e6eecff6ccc7007fe54d703808", "sha256:2c726c276d09fc5c414693a2de063f521052d9ea7c240ce553316f70656c84d4", "sha256:398e44cd480f4d2b7ee8d98385ca104e35c81525dd98c519acff1b79bdaac363", "sha256:52b1eb8c83f178ab787f3a4283f68258525f8d70f778a2f6dd54d3b5e5fb4341", "sha256:5feca99c17af94057417d744607b82dd0a664fd5e4ca98061480fd8b14b18d04", "sha256:7538e495704e2ccda9b234b82423a4038f324f3a10c43bc088a1636180f11a41", "sha256:760ad187b1041a154f0e4d0f6aae3e40fdb51d6de16e5c99aedadd9246450e9e", "sha256:777a26c84bea6cd934422ac2e3b78863a37017618b6e5c08f92ef69853e765d3", "sha256:95431a26309a21874005845c21118c83991c63ea800dd44843e42a916aec5899", "sha256:9ad2c92ec681e02baf81fdfa056fe0d818645efa9af1f1cd5fd6f1bd2bdfd805", "sha256:9c6d1a54552b5330bc657b7ef0eae25d00ba7ffe85d9ea8ae6540d2197a3788c", "sha256:aee0c1256be6c07bd3e1263ff920c325b59849dc95392a05f258bb9b259cf39c", "sha256:af3d4a73793725138d6b334d9d247ce7e5f084d96284ed23f22ee626a7b88e39", "sha256:b36b4f3920103a25e1d5d024d155c504080959582b928e91cb608a65c3a49e1a", "sha256:b9574c6f03f685070d859e75c7f9eeca02d6933273b5e69572e5ff9d5e3931c3", "sha256:bff6ad71c81b3bba8fa35f0f1921fb24ff4476235a6e94a26ada2e54370e6da7", "sha256:c190f0899e9f9f8b6b7863debfb739abcb21a5c054f911ca3596d12b8a4c4c7f", "sha256:c907f561b1e83e93fad565bac5ba9c22d96a54e7ea0267c708bffe863cbe4075", "sha256:cae53c389825d3b46fb37538441f75d6aecc4174f615d048321b716df2757fb0", "sha256:dd4a21253f42b8d2b48410cb31fe501d32f8b9fbeb1f55063ad102fe9c425e40", "sha256:dde816ca9dac1d9c01dd504ea5967821606f02e510438120091b84e852367428", "sha256:f2362f3cb0f3172c42938946dbc5b7843c2a28aec307c49100c8b38764eb6927", "sha256:f328adcfebed9f11301eaedfa48e15bdece9b519fb27e6a8c01aa52a17ec31b3", "sha256:f8afcf15cc511ada719a88e013cec87c11aff7b91f019295eb4530f96fe5ef2f", "sha256:fb1bbeac803adea29cedd70781399c99138358c26d05fcbd23c13016b7f5ec65" ], "version": "==1.4.3" }, "typing-extensions": { "hashes": [ "sha256:0ac0f89795dd19de6b97debb0c6af1c70987fd80a2d62d1958f7e56fcc31b497", "sha256:50b6f157849174217d0656f99dc82fe932884fb250826c18350e159ec6cdf342", "sha256:779383f6086d90c99ae41cf0ff39aac8a7937a9283ce0a414e5dd782f4c94a84" ], "version": "==3.10.0.0" }, "typing-inspect": { "hashes": [ "sha256:3b98390df4d999a28cf5b35d8b333425af5da2ece8a4ea9e98f71e7591347b4f", "sha256:8f1b1dd25908dbfd81d3bebc218011531e7ab614ba6e5bf7826d887c834afab7", "sha256:de08f50a22955ddec353876df7b2545994d6df08a2f45d54ac8c05e530372ca0" ], "version": "==0.6.0" }, "tzlocal": { "hashes": [ "sha256:643c97c5294aedc737780a49d9df30889321cbe1204eac2c2ec6134035a92e44", "sha256:e2cb6c6b5b604af38597403e9852872d7f534962ae2954c7f35efcb1ccacf4a4" ], "version": "==2.1" }, "uritemplate": { "hashes": [ "sha256:07620c3f3f8eed1f12600845892b0e036a2420acf513c53f7de0abd911a5894f", "sha256:5af8ad10cec94f215e3f48112de2022e1d5a37ed427fbd88652fa908f2ab7cae" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==3.0.1" }, "urllib3": { "hashes": [ "sha256:2f4da4594db7e1e110a944bb1b551fdf4e6c136ad42e4234131391e21eb5b0df", "sha256:e7b021f7241115872f92f43c6508082facffbd1c048e3c6e2bb9c2a157e28937" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' and python_version < '4'", "version": "==1.26.4" }, "vulture": { "hashes": [ "sha256:03d5a62bcbe9ceb9a9b0575f42d71a2d414070229f2e6f95fa6e7c71aaaed967", "sha256:f39de5e6f1df1f70c3b50da54f1c8d494159e9ca3d01a9b89eac929600591703" ], "index": "pypi", "version": "==2.3" }, "wcmatch": { "hashes": [ "sha256:7e112f62e2482d8417bbfa8f7bb715e98841fd15132a46c0a657ceb59302d24d", "sha256:efda751de15201b395b6d6e64e6ae3b6b03dc502a64c3c908aa5cad14c27eee5" ], "markers": "python_version >= '3.6'", "version": "==8.1.2" }, "xmltodict": { "hashes": [ "sha256:50d8c638ed7ecb88d90561beedbf720c9b4e851a9fa6c47ebd64e99d166d8a21", "sha256:8bbcb45cc982f48b2ca8fe7e7827c5d792f217ecf1792626f808bf41c3b86051" ], "version": "==0.12.0" }, "yamllint": { "hashes": [ "sha256:87d9462b3ed7e9dfa19caa177f7a77cd9888b3dc4044447d6ae0ab233bcd1324" ], "index": "pypi", "version": "==1.26.1" } }, "develop": {} } ```
tucked commented 2 years ago

I can repro on 2021.5.29 as well as 2021.11.5.post0.

franzhaas commented 2 years ago

I have observed the same issue. right now i use

pipenv --rm && pipenv sync

as a workaround.

franzhaas commented 2 years ago

I just checked on pipenv, version 2022.1.8.

aparently id does claim to newly lock, but in the end it did what it was suposed to, remove all the surplus packages.

Aparently the output spooked me, but the functionality is correct.

tucked commented 2 years ago

I can repro on 2022.1.8.

matteius commented 2 years ago

@nkakouros @tucked I could not reproduce this on my branch that uses 22.0.4 pip but I also don't know if I have to do anything special from the original example lock files? Seems fine though ...

matteius@matteius-VirtualBox:~/shared-projects/pipenv-triage/pipenv-4695$ ls
Pipfile  Pipfile.lock  Pipfile.lock.ticket  Pipfile.ticket
matteius@matteius-VirtualBox:~/shared-projects/pipenv-triage/pipenv-4695$ pipenv install
Installing dependencies from Pipfile.lock (42d4ad)...
  🐍   β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰ 105/105 β€” 00:02:40
To activate this project's virtualenv, run pipenv shell.
Alternatively, run a command inside the virtualenv with pipenv run.
matteius@matteius-VirtualBox:~/shared-projects/pipenv-triage/pipenv-4695$ diff Pipfile.lock Pipfile.lock.ticket 
matteius@matteius-VirtualBox:~/shared-projects/pipenv-triage/pipenv-4695$ pipenv clean
matteius@matteius-VirtualBox:~/shared-projects/pipenv-triage/pipenv-4695$ diff Pipfile.lock Pipfile.lock.ticket 
tucked commented 2 years ago

Here's a repro:

$ pipenv install 'requests<21'
Creating a virtualenv for this project...
Pipfile: /tmp/tmp.lM8xmB09Uq/Pipfile
Using /ifs/home/dtucker/.pyenv/versions/3.10.0/bin/python (3.10.0) to create virtualenv...
⠏ Creating virtual environment...created virtual environment CPython3.10.0.final.0-64 in 5272ms
  creator CPython3Posix(dest=/ifs/home/dtucker/.local/share/virtualenvs/tmp.lM8xmB09Uq-BUDmjrnh, clear=False, no_vcs_ignore=False, global=False)
  seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/ifs/home/dtucker/.local/share/virtualenv)
    added seed packages: pip==22.0.3, setuptools==60.8.2, wheel==0.37.1
  activators BashActivator,CShellActivator,FishActivator,PowerShellActivator,PythonActivator,XonshActivator

βœ” Successfully created virtual environment!
Virtualenv location: /ifs/home/dtucker/.local/share/virtualenvs/tmp.lM8xmB09Uq-BUDmjrnh
Creating a Pipfile for this project...
Installing requests<21...
Adding requests to Pipfile's [packages]...
βœ” Installation Succeeded
Pipfile.lock not found, creating...
Locking [dev-packages] dependencies...
Locking [packages] dependencies...
Building requirements...
Resolving dependencies...
βœ” Success!
Updated Pipfile.lock (efdd80)!
Installing dependencies from Pipfile.lock (efdd80)...
  🐍   β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰β–‰ 0/0 β€” 00:00:00
To activate this project's virtualenv, run pipenv shell.
Alternatively, run a command inside the virtualenv with pipenv run.
$ pipenv clean
Warning: Your Pipfile requires python_version 3.4, but you are using 3.10.0 (/ifs/home/d/.local/share/v/t/bin/python).
  $ pipenv --rm and rebuilding the virtual environment may resolve the issue.
  $ pipenv check will surely fail.
matteius commented 1 year ago

Thanks @tucked -- a lot has changed since March, and I believe this has been fixed:

matte@LAPTOP-N5VSGIBD MINGW64 ~/Projects/pipenv-triage/pipenv-4695
$ pipenv install 'requests<21'
C:\Users\matte\AppData\Roaming\Python\Python310\Scripts\pipenv.exe\__main__.py:4: DeprecationWarning: Please do not use ANSI_COLORS_DISABLED, as it will be removed in future versions.
Use NO_COLOR instead.
C:\Users\matte\AppData\Roaming\Python\Python310\Scripts\pipenv.exe\__main__.py:4: DeprecationWarning: Please do not use VISTIR_DISABLE_COLORS, as it will be removed in future versions.
Use NO_COLOR instead.
C:\Users\matte\AppData\Roaming\Python\Python310\Scripts\pipenv.exe\__main__.py:4: DeprecationWarning: Please do not use CI, as it will be removed in future versions.
Use NO_COLOR instead.
Creating a virtualenv for this project...
Pipfile: C:\Users\matte\Projects\pipenv-triage\pipenv-4695\Pipfile
Using default python from C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.10_3.10.2544.0_x64__qbz5n2kfra8p0\python.exe (3.10.9) to create virtualenv...
[=   ] Creating virtual environment...created virtual environment CPython3.10.9.final.0-64 in 1912ms
  creator Venv(dest=C:\c\users\matte\.virtualenvs\pipenv-4695-J4eLfTUx, clear=False, no_vcs_ignore=False, global=False, describe=CPython3Windows)
  seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=C:\Users\matte\AppData\Local\pypa\virtualenv)
    added seed packages: pip==22.3.1, setuptools==65.5.1, wheel==0.38.4
  activators BashActivator,BatchActivator,FishActivator,NushellActivator,PowerShellActivator,PythonActivator

Successfully created virtual environment!
Virtualenv location: \c\Users\matte\.virtualenvs\pipenv-4695-J4eLfTUx
Creating a Pipfile for this project...
Installing requests<21...
Pipfile.lock not found, creating...
Locking [packages] dependencies...
[==  ] Resolving dependencies...Warning: C:\Users\matte\Projects\pipenv\pipenv\resolver.py:16: DeprecationWarning: Please do not use ANSI_COLORS_DISABLED, as it will be removed in future versions.
Use NO_COLOR instead.
  spec.loader.exec_module(pipenv)
C:\Users\matte\Projects\pipenv\pipenv\resolver.py:16: DeprecationWarning: Please do not use VISTIR_DISABLE_COLORS, as it will be removed in future versions.
Use NO_COLOR instead.
  spec.loader.exec_module(pipenv)
C:\Users\matte\Projects\pipenv\pipenv\resolver.py:16: DeprecationWarning: Please do not use CI, as it will be removed in future versions.
Use NO_COLOR instead.
  spec.loader.exec_module(pipenv)
Locking [dev-packages] dependencies...
Updated Pipfile.lock (eaff145ccd49c6820c7ff95cdea2981332da182857ae36a30cc14c045c54c801)!
Installing dependencies from Pipfile.lock (54c801)...
To activate this project's virtualenv, run pipenv shell.
Alternatively, run a command inside the virtualenv with pipenv run.

matte@LAPTOP-N5VSGIBD MINGW64 ~/Projects/pipenv-triage/pipenv-4695
$ cat Pipfile
[[source]]
url = "https://pypi.org/simple"
verify_ssl = true
name = "pypi"

[packages]
requests = "<21"

[dev-packages]

[requires]
python_version = "3.10"

matte@LAPTOP-N5VSGIBD MINGW64 ~/Projects/pipenv-triage/pipenv-4695
$ pipenv clean
C:\Users\matte\AppData\Roaming\Python\Python310\Scripts\pipenv.exe\__main__.py:4: DeprecationWarning: Please do not use ANSI_COLORS_DISABLED, as it will be removed in future versions.
Use NO_COLOR instead.
C:\Users\matte\AppData\Roaming\Python\Python310\Scripts\pipenv.exe\__main__.py:4: DeprecationWarning: Please do not use VISTIR_DISABLE_COLORS, as it will be removed in future versions.
Use NO_COLOR instead.
C:\Users\matte\AppData\Roaming\Python\Python310\Scripts\pipenv.exe\__main__.py:4: DeprecationWarning: Please do not use CI, as it will be removed in future versions.
Use NO_COLOR instead.

matte@LAPTOP-N5VSGIBD MINGW64 ~/Projects/pipenv-triage/pipenv-4695
$ cat Pipfile
[[source]]
url = "https://pypi.org/simple"
verify_ssl = true
name = "pypi"

[packages]
requests = "<21"

[dev-packages]

[requires]
python_version = "3.10"

EDIT: you can ignore the deprecation warnings, this is the main branch and we are working on cleaning those up before the next release.

tucked commented 1 year ago

Yes, looks like it:

$ pipenv --version
pipenv, version 2022.11.30
$ pipenv install 'requests<21'
Creating a virtualenv for this project...
Pipfile: /tmp/tmp.OUeKiHgqA7/Pipfile
Using /ifs/home/dtucker/.pyenv/versions/3.11.0/bin/python (3.11.0) to create virtualenv...
β ‹ Creating virtual environment...created virtual environment CPython3.11.0.final.0-64 in 3810ms
  creator Venv(dest=/ifs/home/dtucker/.local/share/virtualenvs/tmp.OUeKiHgqA7-fiUyiMw1, clear=False, no_vcs_ignore=False, global=False, describe=CPython3Posix)
  seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/ifs/home/dtucker/.local/share/virtualenv)
    added seed packages: pip==22.3.1, setuptools==65.5.1, wheel==0.38.4
  activators BashActivator,CShellActivator,FishActivator,NushellActivator,PowerShellActivator,PythonActivator

βœ” Successfully created virtual environment!
Virtualenv location: /ifs/home/dtucker/.local/share/virtualenvs/tmp.OUeKiHgqA7-fiUyiMw1
Creating a Pipfile for this project...
Installing requests<21...
Pipfile.lock not found, creating...
Locking [packages] dependencies...
Locking [dev-packages] dependencies...
Updated Pipfile.lock (82be8e3a98c926c40af100c4df5eadd8438cccb1d55a0f08315938953e03af00)!
Installing dependencies from Pipfile.lock (03af00)...
To activate this project's virtualenv, run pipenv shell.
Alternatively, run a command inside the virtualenv with pipenv run.
$ cp Pipfile.lock{,.orig}
$ pipenv clean
$ diff -s Pipfile.lock{,.orig}
Files Pipfile.lock and Pipfile.lock.orig are identical

Thanks for following up!

svenpanne commented 10 months ago

I think this issue should be reopened, the bug is still present in a relatively recent pipenv:

$ pipenv --version
pipenv, version 2023.9.1
$ pipenv install requests
Creating a virtualenv for this project...
Pipfile: /home/sp/repro/Pipfile
Using default python from /home/sp/.local/opt/Python-3.11.5/bin/python3.11 (3.11.5) to create virtualenv...
β ™ Creating virtual environment...created virtual environment CPython3.11.5.final.0-64 in 92ms
  creator CPython3Posix(dest=/home/sp/.local/share/virtualenvs/repro-i9U9-Fao, clear=False, no_vcs_ignore=False, global=False)
  seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/home/sp/.local/share/virtualenv)
    added seed packages: pip==23.2.1, setuptools==68.2.2, wheel==0.41.2
  activators BashActivator,CShellActivator,FishActivator,NushellActivator,PowerShellActivator,PythonActivator

βœ” Successfully created virtual environment!
Virtualenv location: /home/sp/.local/share/virtualenvs/repro-i9U9-Fao
Creating a Pipfile for this project...
Installing requests...
Resolving requests...
Added requests to Pipfile's [packages] ...
βœ” Installation Succeeded
Pipfile.lock not found, creating...
Locking [packages] dependencies...
Building requirements...
Resolving dependencies...
βœ” Success!
Locking [dev-packages] dependencies...
Updated Pipfile.lock (9838c8bf3aa442453b393e09e534ba7e1666aab4da1b9b408ecdf3ae58ab273c)!
Installing dependencies from Pipfile.lock (ab273c)...
To activate this project's virtualenv, run pipenv shell.
Alternatively, run a command inside the virtualenv with pipenv run.

OK, now we have virtual environment with requests in it, and everything is up-to-date.

$ pipenv clean

Cleaning doesn't do anything here, OK.

$ sed -i s/requests/urllib3/ Pipfile

Updating the Pipfile, replacing requests with urllib3. Now Pipfile.lock would need re-locking, but cleaning shouldn't care about it:

$ pipenv clean
Pipfile.lock (ab273c) out of date, updating to (b8efa9)...
Locking [packages] dependencies...
Building requirements...
Resolving dependencies...
βœ” Success!
Locking [dev-packages] dependencies...
Updated Pipfile.lock (76bbc9cda0ef0576bfaac66930845fc9f994ca85ed19a19bc8c6f4f3a0b8efa9)!
Uninstalling certifi...
Uninstalling idna...
Uninstalling charset-normalizer...
Uninstalling requests...

But obviously it does, and incorrectly locks before cleaning.

svenpanne commented 10 months ago

Just a quick follow-up: The latest pipenv version (2023.10.24) has the bug, too, same repro as above.