dependabot-python 0.155.1 → 0.156.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 20aff0ba688b8fdd6fa1e5f4471cb92043d74100dfe0ea9f29fb54d74d2e9641
4
- data.tar.gz: e27b369cab9d5a010cc81701f7e98c4504a48515b1667ff295bf697c8aa02774
3
+ metadata.gz: 73bca5e20679f68f499ab9b0e09dcabc346f54b5b4f160305ca64696b2284ee4
4
+ data.tar.gz: e81462961162e739b0d27cadbb0fc14a396139e23e92938f6cf0c77bc6027e8d
5
5
  SHA512:
6
- metadata.gz: 59cc5b238bd74995e4737de9bc0132db048dbe05ef34dee890be1f019f7d1d269a2cc8fa6013aa3e9cb3cb44c79e115496d91ddc4a7c292593e2193c3778c59b
7
- data.tar.gz: '08d0b1995e7586c82db8a6ec97def18ecbbd6b57fff3e089045c57dfdb648fc95390237bb1f7f4aff72e5a2ea24a75f0ffb6a40cf4b8539045e28855fe4d0f5e'
6
+ metadata.gz: 68c0b3f2a65daf6a428fca84a7bfc657e5121fd7184129f4c6958e58488618984c263eef82034f0d4d3f7626658eed6521567809406958f1d96e553b823a0873
7
+ data.tar.gz: 6db3e59d18d9c053a2905d3508aec9d29ebc7f5ce5ffe8bcdcfd63e3394ed813b267bf6691594fcf2b49593d053e01221345385ae5fa1d90650ca30217e9bbfc
@@ -1,10 +1,10 @@
1
- pip==21.1.2
2
- pip-tools==6.1.0
1
+ pip==21.1.3
2
+ pip-tools==6.2.0
3
3
  flake8==3.9.2
4
4
  hashin==0.15.0
5
5
  pipenv==2021.5.29
6
6
  pipfile==0.0.2
7
- poetry==1.1.6
7
+ poetry==1.1.7
8
8
  wheel==0.36.2
9
9
 
10
10
  # Some dependencies will only install if Cython is present
@@ -5,6 +5,7 @@ require "toml-rb"
5
5
  require "dependabot/file_fetchers"
6
6
  require "dependabot/file_fetchers/base"
7
7
  require "dependabot/python/requirement_parser"
8
+ require "dependabot/python/file_parser/poetry_files_parser"
8
9
  require "dependabot/errors"
9
10
 
10
11
  module Dependabot
@@ -385,7 +386,7 @@ module Dependabot
385
386
  return [] unless pyproject
386
387
 
387
388
  paths = []
388
- %w(dependencies dev-dependencies).each do |dep_type|
389
+ Dependabot::Python::FileParser::PoetryFilesParser::POETRY_DEPENDENCY_TYPES.each do |dep_type|
389
390
  next unless parsed_pyproject.dig("tool", "poetry", dep_type)
390
391
 
391
392
  parsed_pyproject.dig("tool", "poetry", dep_type).each do |_, req|
@@ -15,6 +15,9 @@ module Dependabot
15
15
  class PoetryFilesParser
16
16
  POETRY_DEPENDENCY_TYPES = %w(dependencies dev-dependencies).freeze
17
17
 
18
+ # https://python-poetry.org/docs/dependency-specification/
19
+ UNSUPPORTED_DEPENDENCY_TYPES = %w(git path url).freeze
20
+
18
21
  def initialize(dependency_files:)
19
22
  @dependency_files = dependency_files
20
23
  end
@@ -40,7 +43,7 @@ module Dependabot
40
43
 
41
44
  deps_hash.each do |name, req|
42
45
  next if normalise(name) == "python"
43
- next if req.is_a?(Hash) && req.key?("git")
46
+ next if req.is_a?(Hash) && UNSUPPORTED_DEPENDENCY_TYPES.any? { |t| req.key?(t) }
44
47
 
45
48
  check_requirements(req)
46
49
 
@@ -69,7 +72,7 @@ module Dependabot
69
72
  dependencies = Dependabot::FileParsers::Base::DependencySet.new
70
73
 
71
74
  parsed_lockfile.fetch("package", []).each do |details|
72
- next if details.dig("source", "type") == "git"
75
+ next if %w(directory git url).include?(details.dig("source", "type"))
73
76
 
74
77
  dependencies <<
75
78
  Dependency.new(
@@ -132,7 +132,7 @@ module Dependabot
132
132
  end
133
133
 
134
134
  def lock_declaration_to_new_version!(poetry_object, dep)
135
- %w(dependencies dev-dependencies).each do |type|
135
+ Dependabot::Python::FileParser::PoetryFilesParser::POETRY_DEPENDENCY_TYPES.each do |type|
136
136
  names = poetry_object[type]&.keys || []
137
137
  pkg_name = names.find { |nm| normalise(nm) == dep.name }
138
138
  next unless pkg_name
@@ -44,7 +44,7 @@ module Dependabot
44
44
  poetry_object = pyproject_object["tool"]["poetry"]
45
45
  excluded_names = dependencies.map(&:name) + ["python"]
46
46
 
47
- %w(dependencies dev-dependencies).each do |key|
47
+ Dependabot::Python::FileParser::PoetryFilesParser::POETRY_DEPENDENCY_TYPES.each do |key|
48
48
  next unless poetry_object[key]
49
49
 
50
50
  poetry_object.fetch(key).each do |dep_name, _|
@@ -263,7 +263,7 @@ module Dependabot
263
263
  pyproject_object = TomlRB.parse(pyproject_content)
264
264
  poetry_object = pyproject_object.dig("tool", "poetry")
265
265
 
266
- %w(dependencies dev-dependencies).each do |type|
266
+ Dependabot::Python::FileParser::PoetryFilesParser::POETRY_DEPENDENCY_TYPES.each do |type|
267
267
  names = poetry_object[type]&.keys || []
268
268
  pkg_name = names.find { |nm| normalise(nm) == dependency.name }
269
269
  next unless pkg_name
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dependabot-python
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.155.1
4
+ version: 0.156.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dependabot
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-06-23 00:00:00.000000000 Z
11
+ date: 2021-06-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: dependabot-common
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 0.155.1
19
+ version: 0.156.4
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.155.1
26
+ version: 0.156.4
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: byebug
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -100,14 +100,14 @@ dependencies:
100
100
  requirements:
101
101
  - - "~>"
102
102
  - !ruby/object:Gem::Version
103
- version: 1.16.0
103
+ version: 1.18.0
104
104
  type: :development
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
108
  - - "~>"
109
109
  - !ruby/object:Gem::Version
110
- version: 1.16.0
110
+ version: 1.18.0
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: simplecov
113
113
  requirement: !ruby/object:Gem::Requirement