dependabot-python 0.93.14 → 0.93.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 504ca5ca518d9a06907b4a63aeff627a72118fc5e5bad19471ca3e2dc1710eb9
4
- data.tar.gz: 53474839560444ac445437109ce07c978bed158ee465dc91649bf37d4a776e0d
3
+ metadata.gz: ca48499d2e85ad14651c7087d886a76062cddcec7cd3ab93dc3327d417775201
4
+ data.tar.gz: 520d16c6c5a45b5744441c14e364f8f97c740db3483c69675d9b66d78f941ba6
5
5
  SHA512:
6
- metadata.gz: e5a7243bd275ddcc91e32b7d6be38a7a984291d3777dd77e3afd0e8dced488ae8dc90adeb1b376eff40e6dab98391877550e48c75b051e68a371a31e8443440c
7
- data.tar.gz: 8dc29ba52605a0f9fa04d6c069990bc58455c8d6e6ea7268b8a6e262e93fb6fe8e2e61c9dacae9644a5cef7c54a86cf4977ccf9a2dc339522554aa9a2c792074
6
+ metadata.gz: c6b9bd9fc237aac705dd0fc549f46cccde1bdf09881a61a3d31dcd9041c768041ca7bc2e1395e9bb27671bc857144bc6e5a9efc02837e8b67b0117326ea599fd
7
+ data.tar.gz: 182893921326f80adb6c1fef214d0aca83f8b7c05fddd0c4bf0ced235a99039e199fcab6266c5fb55aad216225152bd226f872801e8449390fd80e39ef01e6b9
@@ -91,7 +91,7 @@ module Dependabot
91
91
  if error.message.include?("Could not find a version")
92
92
  check_original_requirements_resolvable
93
93
  # If the original requirements are resolvable but we get an
94
- # incompatibility update after unlocking then it's likely to be
94
+ # incompatibility error after unlocking then it's likely to be
95
95
  # due to problems with pip-compile's cascading resolution
96
96
  return nil
97
97
  end
@@ -72,6 +72,8 @@ module Dependabot
72
72
  updated_lockfile = TomlRB.parse(updated_lockfile)
73
73
 
74
74
  fetch_version_from_parsed_lockfile(updated_lockfile)
75
+ rescue SharedHelpers::HelperSubprocessFailed => error
76
+ handle_poetry_errors(error)
75
77
  end
76
78
  return unless @latest_resolvable_version_string
77
79
 
@@ -89,6 +91,36 @@ module Dependabot
89
91
  raise "No version in lockfile!"
90
92
  end
91
93
 
94
+ def handle_poetry_errors(error)
95
+ if error.message.include?("SolverProblemError")
96
+ check_original_requirements_resolvable
97
+ end
98
+
99
+ raise
100
+ end
101
+
102
+ def check_original_requirements_resolvable
103
+ SharedHelpers.in_a_temporary_directory do
104
+ write_temporary_dependency_files(update_pyproject: false)
105
+
106
+ run_poetry_command(
107
+ "pyenv exec poetry update #{dependency.name} --lock"
108
+ )
109
+
110
+ true
111
+ rescue SharedHelpers::HelperSubprocessFailed => error
112
+ raise unless error.message.include?("SolverProblemError")
113
+
114
+ msg = clean_error_message(error.message)
115
+ raise DependencyFileNotResolvable, msg
116
+ end
117
+ end
118
+
119
+ def clean_error_message(message)
120
+ # Redact any URLs, as they may include credentials
121
+ message.gsub(/http.*?(?=\s)/, "<redacted>")
122
+ end
123
+
92
124
  def write_temporary_dependency_files(update_pyproject: true)
93
125
  dependency_files.each do |file|
94
126
  path = file.name
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dependabot-python
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.93.14
4
+ version: 0.93.15
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dependabot
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 0.93.14
19
+ version: 0.93.15
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - '='
25
25
  - !ruby/object:Gem::Version
26
- version: 0.93.14
26
+ version: 0.93.15
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: byebug
29
29
  requirement: !ruby/object:Gem::Requirement