dependabot-cargo 0.82.1 → 0.82.2

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: 70383e6f0f039c05ffd136c6f4f09f89241b15cfb6428eee093faf75b642c3ec
4
- data.tar.gz: 929e65012f03c4c95e0c7b64d9a7786ae5bf93ad5c4509bca0c080d2120a92a2
3
+ metadata.gz: 5a28aa65af3425860af8ab7292ab32c26d4510eba3d7f3ee842ea5a21d4eeb1e
4
+ data.tar.gz: db336bb7961fdf086371efc40cb29d4a26159722dd8746c567cc08bc90214092
5
5
  SHA512:
6
- metadata.gz: ac492a9d951bbec40aefdf775229834e784b29099b48d3b290d3d32fbe21460103a221eb6358cda623893668fb6db2407cfabb2151febab008aac69154f6bb36
7
- data.tar.gz: 297afa0d8ab14c32eaf7df1ac38e14dc9951d3dc61315aaddb41bcd3f1b6a24380afc90e37218fb3aa2f6916c5e4a9dab7e11f3328073a027f9e26abf0729262
6
+ metadata.gz: b9e8ea8308a68cb6214dbe46ecca2ca3e885723329f41096dd5044a2cc302411430cd29a8d614396ab7ede9dc67956673072ae3a2596d69ee311cd86bd8bdf40
7
+ data.tar.gz: aedbad0d25ac02ddedfb105257369669005fc38f935049fa882441bb797877fc2350cccc962f5baeb02e852a014afd9c642e7d7fab0aeab98a6deb5ea7f8e7b3
@@ -27,41 +27,53 @@ module Dependabot
27
27
  fetched_files << cargo_toml
28
28
  fetched_files << cargo_lock if cargo_lock
29
29
  fetched_files << rust_toolchain if rust_toolchain
30
- fetched_files += workspace_files
31
- fetched_files += path_dependency_files
32
- fetched_files
30
+ fetched_files += fetch_path_dependency_and_workspace_files
31
+ fetched_files.uniq
33
32
  end
34
33
 
35
- def workspace_files
36
- @workspace_files ||=
34
+ def fetch_path_dependency_and_workspace_files(files = nil)
35
+ fetched_files = files || [cargo_toml]
36
+
37
+ fetched_files += path_dependency_files(fetched_files)
38
+ fetched_files += fetched_files.flat_map { |f| workspace_files(f) }
39
+ fetched_files.uniq!
40
+
41
+ return fetched_files if fetched_files == files
42
+
43
+ fetch_path_dependency_and_workspace_files(fetched_files)
44
+ end
45
+
46
+ def workspace_files(cargo_toml)
47
+ @workspace_files ||= {}
48
+ @workspace_files[cargo_toml.name] ||=
37
49
  fetch_workspace_files(
38
50
  file: cargo_toml,
39
51
  previously_fetched_files: []
40
52
  )
41
53
  end
42
54
 
43
- def path_dependency_files
44
- @path_dependency_files ||=
45
- begin
46
- fetched_path_dependency_files = []
47
- [cargo_toml, *workspace_files].each do |file|
48
- fetched_path_dependency_files +=
49
- fetch_path_dependency_files(
50
- file: file,
51
- previously_fetched_files: [cargo_toml, *workspace_files] +
52
- fetched_path_dependency_files
53
- )
54
- end
55
+ def path_dependency_files(fetched_files)
56
+ @path_dependency_files ||= {}
57
+ fetched_path_dependency_files = []
58
+ fetched_files.each do |file|
59
+ @path_dependency_files[file.name] ||=
60
+ fetch_path_dependency_files(
61
+ file: file,
62
+ previously_fetched_files: fetched_files +
63
+ fetched_path_dependency_files
64
+ )
55
65
 
56
- fetched_path_dependency_files
57
- end
66
+ fetched_path_dependency_files += @path_dependency_files[file.name]
67
+ end
68
+
69
+ fetched_path_dependency_files
58
70
  end
59
71
 
60
72
  def fetch_workspace_files(file:, previously_fetched_files:)
61
73
  current_dir = file.name.split("/")[0..-2].join("/")
62
74
  current_dir = nil if current_dir == ""
63
75
 
64
- workspace_dependency_paths_from_file(file).flat_map do |path|
76
+ files = workspace_dependency_paths_from_file(file).flat_map do |path|
65
77
  path = File.join(current_dir, path) unless current_dir.nil?
66
78
  path = Pathname.new(path).cleanpath.to_path
67
79
 
@@ -77,6 +89,9 @@ module Dependabot
77
89
  )
78
90
  [fetched_file, *grandchild_requirement_files]
79
91
  end.compact
92
+
93
+ files.each { |f| f.support_file = file != cargo_toml }
94
+ files
80
95
  end
81
96
 
82
97
  def fetch_path_dependency_files(
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dependabot-cargo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.82.1
4
+ version: 0.82.2
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.82.1
19
+ version: 0.82.2
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.82.1
26
+ version: 0.82.2
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: byebug
29
29
  requirement: !ruby/object:Gem::Requirement