Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

NonExistentKey: 'Key "hashes" does not exist #1596

Closed
cjolowicz opened this issue Dec 23, 2019 · 2 comments
Closed

NonExistentKey: 'Key "hashes" does not exist #1596

cjolowicz opened this issue Dec 23, 2019 · 2 comments

Comments

@cjolowicz
Copy link

cjolowicz commented Dec 23, 2019

I'm getting a NonExistentKey error with the message 'Key "hashes" does not exist.' every time dependabot runs on my repository and attempts to upgrade Sphinx. The error message is produced by Poetry when invoked by dependabot.

This is a Poetry-managed project. Sphinx is part of the docs extra. This requirements are also exported to a requirements file, located in docs/requirements.txt.

Repository: https://github.com/cjolowicz/hypermodern-python

Log: https://app.dependabot.com/accounts/cjolowicz/update-logs/18467835

Log
  proxy | time="2019-12-23T05:04:03Z" level=info msg="proxy starting" commit=c112a5a5cd86983046156e55becbc0d14ef9cb3e
  proxy | 2019/12/23 05:04:04 Listening (:1080)
fetcher | yarn config v1.21.1
fetcher | success Set "cafile" to "/etc/ssl/certs/ca-certificates.crt".
fetcher | Done in 0.03s.
fetcher | NOTE: Inheriting Faraday::Error::ClientError is deprecated; use Faraday::ClientError instead. It will be removed in or after version 1.0
fetcher | Faraday::Error::ClientError.inherited called from /home/dependabot/dependabot-updater/vendor/ruby/2.6.0/gems/octokit-4.14.0/lib/octokit/middleware/follow_redirects.rb:14.
fetcher | INFO <job_18467835> Starting job processing
  proxy | 2019/12/23 05:04:08 GET https://api.github.com:443/repos/cjolowicz/hypermodern-python
  proxy | 2019/12/23 05:04:08 * authenticating github api request
  proxy | 2019/12/23 05:04:08 200 https://api.github.com:443/repos/cjolowicz/hypermodern-python
  proxy | 2019/12/23 05:04:08 GET https://api.github.com:443/repos/cjolowicz/hypermodern-python/git/refs/heads/master
  proxy | 2019/12/23 05:04:08 * authenticating github api request
  proxy | 2019/12/23 05:04:08 200 https://api.github.com:443/repos/cjolowicz/hypermodern-python/git/refs/heads/master
  proxy | 2019/12/23 05:04:08 GET https://api.github.com:443/repos/cjolowicz/hypermodern-python/contents/?ref=8eeeb8c6a5e725699660db088b900181e09dd3ad
  proxy | 2019/12/23 05:04:08 * authenticating github api request
  proxy | 2019/12/23 05:04:08 200 https://api.github.com:443/repos/cjolowicz/hypermodern-python/contents/?ref=8eeeb8c6a5e725699660db088b900181e09dd3ad
  proxy | 2019/12/23 05:04:08 GET https://api.github.com:443/repos/cjolowicz/hypermodern-python/contents/pyproject.toml?ref=8eeeb8c6a5e725699660db088b900181e09dd3ad
  proxy | 2019/12/23 05:04:08 * authenticating github api request
  proxy | 2019/12/23 05:04:08 200 https://api.github.com:443/repos/cjolowicz/hypermodern-python/contents/pyproject.toml?ref=8eeeb8c6a5e725699660db088b900181e09dd3ad
  proxy | 2019/12/23 05:04:08 GET https://api.github.com:443/repos/cjolowicz/hypermodern-python/contents/poetry.lock?ref=8eeeb8c6a5e725699660db088b900181e09dd3ad
  proxy | 2019/12/23 05:04:08 * authenticating github api request
  proxy | 2019/12/23 05:04:08 200 https://api.github.com:443/repos/cjolowicz/hypermodern-python/contents/poetry.lock?ref=8eeeb8c6a5e725699660db088b900181e09dd3ad
  proxy | 2019/12/23 05:04:08 GET https://api.github.com:443/repos/cjolowicz/hypermodern-python/contents/.github?ref=8eeeb8c6a5e725699660db088b900181e09dd3ad
  proxy | 2019/12/23 05:04:08 * authenticating github api request
  proxy | 2019/12/23 05:04:08 200 https://api.github.com:443/repos/cjolowicz/hypermodern-python/contents/.github?ref=8eeeb8c6a5e725699660db088b900181e09dd3ad
  proxy | 2019/12/23 05:04:08 GET https://api.github.com:443/repos/cjolowicz/hypermodern-python/contents/docs?ref=8eeeb8c6a5e725699660db088b900181e09dd3ad
  proxy | 2019/12/23 05:04:08 * authenticating github api request
  proxy | 2019/12/23 05:04:08 200 https://api.github.com:443/repos/cjolowicz/hypermodern-python/contents/docs?ref=8eeeb8c6a5e725699660db088b900181e09dd3ad
  proxy | 2019/12/23 05:04:08 GET https://api.github.com:443/repos/cjolowicz/hypermodern-python/contents/docs/requirements.txt?ref=8eeeb8c6a5e725699660db088b900181e09dd3ad
  proxy | 2019/12/23 05:04:08 * authenticating github api request
  proxy | 2019/12/23 05:04:08 200 https://api.github.com:443/repos/cjolowicz/hypermodern-python/contents/docs/requirements.txt?ref=8eeeb8c6a5e725699660db088b900181e09dd3ad
  proxy | 2019/12/23 05:04:08 GET https://api.github.com:443/repos/cjolowicz/hypermodern-python/contents/src?ref=8eeeb8c6a5e725699660db088b900181e09dd3ad
  proxy | 2019/12/23 05:04:08 * authenticating github api request
  proxy | 2019/12/23 05:04:09 200 https://api.github.com:443/repos/cjolowicz/hypermodern-python/contents/src?ref=8eeeb8c6a5e725699660db088b900181e09dd3ad
  proxy | 2019/12/23 05:04:09 GET https://api.github.com:443/repos/cjolowicz/hypermodern-python/contents/tests?ref=8eeeb8c6a5e725699660db088b900181e09dd3ad
  proxy | 2019/12/23 05:04:09 * authenticating github api request
  proxy | 2019/12/23 05:04:09 200 https://api.github.com:443/repos/cjolowicz/hypermodern-python/contents/tests?ref=8eeeb8c6a5e725699660db088b900181e09dd3ad
fetcher | INFO <job_18467835> Finished job processing
  proxy | time="2019-12-23T05:04:11Z" level=info msg="proxy starting" commit=c112a5a5cd86983046156e55becbc0d14ef9cb3e
  proxy | 2019/12/23 05:04:11 Listening (:1080)
updater | yarn config v1.21.1
updater | success Set "cafile" to "/etc/ssl/certs/ca-certificates.crt".
updater | Done in 0.03s.
updater | NOTE: Inheriting Faraday::Error::ClientError is deprecated; use Faraday::ClientError instead. It will be removed in or after version 1.0
updater | Faraday::Error::ClientError.inherited called from /home/dependabot/dependabot-updater/vendor/ruby/2.6.0/gems/octokit-4.14.0/lib/octokit/middleware/follow_redirects.rb:14.
updater | INFO <job_18467835> Starting job processing
updater | INFO <job_18467835> Starting update job for cjolowicz/hypermodern-python
updater | INFO <job_18467835> Checking if sphinx-autodoc-typehints 1.10.3 needs updating
  proxy | 2019/12/23 05:04:37 GET https://pypi.python.org:443/simple/sphinx-autodoc-typehints/
  proxy | 2019/12/23 05:04:37 301 https://pypi.python.org:443/simple/sphinx-autodoc-typehints/
  proxy | 2019/12/23 05:04:37 GET https://pypi.org:443/simple/sphinx-autodoc-typehints/
  proxy | 2019/12/23 05:04:37 200 https://pypi.org:443/simple/sphinx-autodoc-typehints/
updater | INFO <job_18467835> Latest version is 1.10.3
updater | INFO <job_18467835> No update needed for sphinx-autodoc-typehints 1.10.3
updater | INFO <job_18467835> Checking if pytest-cov 2.8.1 needs updating
  proxy | 2019/12/23 05:04:37 GET https://pypi.python.org:443/simple/pytest-cov/
  proxy | 2019/12/23 05:04:37 301 https://pypi.python.org:443/simple/pytest-cov/
  proxy | 2019/12/23 05:04:37 GET https://pypi.org:443/simple/pytest-cov/
  proxy | 2019/12/23 05:04:37 200 https://pypi.org:443/simple/pytest-cov/
updater | INFO <job_18467835> Latest version is 2.8.1
updater | INFO <job_18467835> No update needed for pytest-cov 2.8.1
updater | INFO <job_18467835> Checking if click 7.0 needs updating
  proxy | 2019/12/23 05:04:37 GET https://pypi.python.org:443/simple/click/
  proxy | 2019/12/23 05:04:37 301 https://pypi.python.org:443/simple/click/
  proxy | 2019/12/23 05:04:37 GET https://pypi.org:443/simple/click/
  proxy | 2019/12/23 05:04:37 200 https://pypi.org:443/simple/click/
updater | INFO <job_18467835> Latest version is 7.0
updater | INFO <job_18467835> No update needed for click 7.0
updater | INFO <job_18467835> Checking if sphinx-rtd-theme 0.4.3 needs updating
  proxy | 2019/12/23 05:04:38 GET https://pypi.python.org:443/simple/sphinx-rtd-theme/
  proxy | 2019/12/23 05:04:38 301 https://pypi.python.org:443/simple/sphinx-rtd-theme/
  proxy | 2019/12/23 05:04:38 GET https://pypi.org:443/simple/sphinx-rtd-theme/
  proxy | 2019/12/23 05:04:38 200 https://pypi.org:443/simple/sphinx-rtd-theme/
updater | INFO <job_18467835> Latest version is 0.4.3
updater | INFO <job_18467835> No update needed for sphinx-rtd-theme 0.4.3
updater | INFO <job_18467835> Checking if pytest-mock 1.13.0 needs updating
  proxy | 2019/12/23 05:04:38 GET https://pypi.python.org:443/simple/pytest-mock/
  proxy | 2019/12/23 05:04:38 301 https://pypi.python.org:443/simple/pytest-mock/
  proxy | 2019/12/23 05:04:38 GET https://pypi.org:443/simple/pytest-mock/
  proxy | 2019/12/23 05:04:38 200 https://pypi.org:443/simple/pytest-mock/
updater | INFO <job_18467835> Latest version is 1.13.0
updater | INFO <job_18467835> No update needed for pytest-mock 1.13.0
updater | INFO <job_18467835> Checking if xdoctest 0.11.0 needs updating
  proxy | 2019/12/23 05:04:38 GET https://pypi.python.org:443/simple/xdoctest/
  proxy | 2019/12/23 05:04:38 301 https://pypi.python.org:443/simple/xdoctest/
  proxy | 2019/12/23 05:04:38 GET https://pypi.org:443/simple/xdoctest/
  proxy | 2019/12/23 05:04:38 200 https://pypi.org:443/simple/xdoctest/
updater | INFO <job_18467835> Latest version is 0.11.0
updater | INFO <job_18467835> No update needed for xdoctest 0.11.0
updater | INFO <job_18467835> Checking if pytest 5.3.2 needs updating
  proxy | 2019/12/23 05:04:38 GET https://pypi.python.org:443/simple/pytest/
  proxy | 2019/12/23 05:04:38 301 https://pypi.python.org:443/simple/pytest/
  proxy | 2019/12/23 05:04:38 GET https://pypi.org:443/simple/pytest/
  proxy | 2019/12/23 05:04:38 200 https://pypi.org:443/simple/pytest/
updater | INFO <job_18467835> Latest version is 5.3.2
updater | INFO <job_18467835> No update needed for pytest 5.3.2
updater | INFO <job_18467835> Checking if sphinx 2.3.0 needs updating
  proxy | 2019/12/23 05:04:38 GET https://pypi.python.org:443/simple/sphinx/
  proxy | 2019/12/23 05:04:38 301 https://pypi.python.org:443/simple/sphinx/
  proxy | 2019/12/23 05:04:38 GET https://pypi.org:443/simple/sphinx/
  proxy | 2019/12/23 05:04:38 200 https://pypi.org:443/simple/sphinx/
updater | INFO <job_18467835> Latest version is 2.3.1
updater | I, [2019-12-23T05:04:43.450993 #75]  INFO -- sentry: ** [Raven] Sending event 156bae71ce6e40b8b87a9645d42d62bc to Sentry
  proxy | 2019/12/23 05:05:03 POST https://sentry.io:443/api/1425239/store/
  proxy | 2019/12/23 05:05:03 200 https://sentry.io:443/api/1425239/store/
updater | ERROR <job_18467835> Error processing sphinx (Dependabot::SharedHelpers::HelperSubprocessFailed)
updater | ERROR <job_18467835> Creating virtualenv hypermodern-python-py3.8 in /home/dependabot/.cache/pypoetry/virtualenvs
updater | <job_18467835>                                   
updater | <job_18467835> [NonExistentKey]   
updater | <job_18467835> 'Key "hashes" does not exist.'  
updater | <job_18467835>                                   
updater | <job_18467835> update [--no-dev] [--dry-run] [--lock] [--] [<packages>]...
updater | <job_18467835> 
updater | ERROR <job_18467835> /home/dependabot/dependabot-updater/vendor/ruby/2.6.0/gems/dependabot-python-0.115.1/lib/dependabot/python/update_checker/poetry_version_resolver.rb:319:in `run_poetry_command'
updater | ERROR <job_18467835> /home/dependabot/dependabot-updater/vendor/ruby/2.6.0/gems/dependabot-python-0.115.1/lib/dependabot/python/update_checker/poetry_version_resolver.rb:85:in `block (2 levels) in fetch_latest_resolvable_version_string'
updater | ERROR <job_18467835> /home/dependabot/dependabot-updater/vendor/ruby/2.6.0/gems/dependabot-common-0.115.1/lib/dependabot/shared_helpers.rb:143:in `with_git_configured'
updater | ERROR <job_18467835> /home/dependabot/dependabot-updater/vendor/ruby/2.6.0/gems/dependabot-python-0.115.1/lib/dependabot/python/update_checker/poetry_version_resolver.rb:73:in `block in fetch_latest_resolvable_version_string'
updater | ERROR <job_18467835> /home/dependabot/dependabot-updater/vendor/ruby/2.6.0/gems/dependabot-common-0.115.1/lib/dependabot/shared_helpers.rb:37:in `block (2 levels) in in_a_temporary_directory'
updater | ERROR <job_18467835> /home/dependabot/dependabot-updater/vendor/ruby/2.6.0/gems/dependabot-common-0.115.1/lib/dependabot/shared_helpers.rb:37:in `chdir'
updater | ERROR <job_18467835> /home/dependabot/dependabot-updater/vendor/ruby/2.6.0/gems/dependabot-common-0.115.1/lib/dependabot/shared_helpers.rb:37:in `block in in_a_temporary_directory'
updater | ERROR <job_18467835> /usr/lib/ruby/2.6.0/tmpdir.rb:93:in `mktmpdir'
updater | ERROR <job_18467835> /home/dependabot/dependabot-updater/vendor/ruby/2.6.0/gems/dependabot-common-0.115.1/lib/dependabot/shared_helpers.rb:34:in `in_a_temporary_directory'
updater | ERROR <job_18467835> /home/dependabot/dependabot-updater/vendor/ruby/2.6.0/gems/dependabot-python-0.115.1/lib/dependabot/python/update_checker/poetry_version_resolver.rb:72:in `fetch_latest_resolvable_version_string'
updater | ERROR <job_18467835> /home/dependabot/dependabot-updater/vendor/ruby/2.6.0/gems/dependabot-python-0.115.1/lib/dependabot/python/update_checker/poetry_version_resolver.rb:42:in `latest_resolvable_version'
updater | ERROR <job_18467835> /home/dependabot/dependabot-updater/vendor/ruby/2.6.0/gems/dependabot-python-0.115.1/lib/dependabot/python/update_checker.rb:43:in `latest_resolvable_version'
updater | ERROR <job_18467835> /home/dependabot/dependabot-updater/vendor/ruby/2.6.0/gems/dependabot-common-0.115.1/lib/dependabot/update_checkers/base.rb:70:in `preferred_resolvable_version'
updater | ERROR <job_18467835> /home/dependabot/dependabot-updater/vendor/ruby/2.6.0/gems/dependabot-common-0.115.1/lib/dependabot/update_checkers/base.rb:233:in `preferred_version_resolvable_with_unlock?'
updater | ERROR <job_18467835> /home/dependabot/dependabot-updater/vendor/ruby/2.6.0/gems/dependabot-common-0.115.1/lib/dependabot/update_checkers/base.rb:225:in `numeric_version_can_update?'
updater | ERROR <job_18467835> /home/dependabot/dependabot-updater/vendor/ruby/2.6.0/gems/dependabot-common-0.115.1/lib/dependabot/update_checkers/base.rb:175:in `version_can_update?'
updater | ERROR <job_18467835> /home/dependabot/dependabot-updater/vendor/ruby/2.6.0/gems/dependabot-common-0.115.1/lib/dependabot/update_checkers/base.rb:38:in `can_update?'
updater | ERROR <job_18467835> /home/dependabot/dependabot-updater/lib/dependabot/updater.rb:208:in `requirements_to_unlock'
updater | ERROR <job_18467835> /home/dependabot/dependabot-updater/lib/dependabot/updater.rb:159:in `check_and_create_pull_request'
updater | ERROR <job_18467835> /home/dependabot/dependabot-updater/lib/dependabot/updater.rb:62:in `check_and_create_pr_with_error_handling'
updater | ERROR <job_18467835> /home/dependabot/dependabot-updater/lib/dependabot/updater.rb:48:in `block in run'
updater | ERROR <job_18467835> /home/dependabot/dependabot-updater/lib/dependabot/updater.rb:48:in `each'
updater | ERROR <job_18467835> /home/dependabot/dependabot-updater/lib/dependabot/updater.rb:48:in `run'
updater | ERROR <job_18467835> /home/dependabot/dependabot-updater/lib/dependabot/update_files_job.rb:16:in `perform_job'
updater | ERROR <job_18467835> /home/dependabot/dependabot-updater/lib/dependabot/base_job.rb:29:in `run'
updater | ERROR <job_18467835> bin/update_files.rb:21:in `<main>'
updater | INFO <job_18467835> Finished job processing
@cjolowicz
Copy link
Author

This issue appears to be caused by dependabot using an outdated version of Poetry. Poetry 1.0.0 removed the [metadata.hashes] entry in poetry.lock.

Duplicate of #1556

@Chaos2356
Copy link

NonExistentKey

'Key "metadata" does not exist.'

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants