dependabot-hex 0.155.1 → 0.156.0

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: 860d8ecc42039e11415876da7ac934f8fbd4070732f1c17e293a3e7f8096f608
4
- data.tar.gz: ba59af143206faa5d124b9bd1a2f54e666a34ff6e82864533846aa74aafd061f
3
+ metadata.gz: e784bfdd8a8c5d9496968954f291a7d9f39b225d63f80d25cbe68eea5011718b
4
+ data.tar.gz: c906a4710e454c2963d2e7fc614d9e11204e23d92a9c702b634769a7b8559278
5
5
  SHA512:
6
- metadata.gz: 5de57ef895b4ff4d1b328e603a76b29b5bb415ffcb0e8340b07492695dde61db043ba05303e21c9921002897171e72a196e6b073d97189407fb822faeefb0518
7
- data.tar.gz: 5c6dbb224fea9d727500f136e0ab922942c951bde2f06c99d3dd82a7cc6e112a271183847c857b8aaf43c064701768e9ff65ad26b22bac576bed53723d8718e1
6
+ metadata.gz: dbb1f74020bae1c65138152b797ce14800d28ca5d72c6250cae6a998702f9eb1d7c3a466446ea8469b5e8d8c1301d8fb3ede7dd8fb5f7a91d5a800dd93cfebdb
7
+ data.tar.gz: 9f7e843c6c09a3bb6e898ff57ccdaa5876c282d2c45ea06f1eb3770675901dd10a10551557d250b2d14a223e9d4daf97624da04816c3533095eb79cc31f92e7b
@@ -11,6 +11,7 @@ module Dependabot
11
11
  SUPPORTED_METHODS = %w(eval_file require_file).join("|").freeze
12
12
  SUPPORT_FILE = /Code\.(?:#{SUPPORTED_METHODS})\(#{STRING_ARG}(?:\s*,\s*#{STRING_ARG})?\)/.
13
13
  freeze
14
+ PATH_DEPS_REGEX = /{.*path: ?#{STRING_ARG}.*}/.freeze
14
15
 
15
16
  def self.required_files_in?(filenames)
16
17
  filenames.include?("mix.exs")
@@ -44,16 +45,26 @@ module Dependabot
44
45
  nil
45
46
  end
46
47
 
47
- def subapp_mixfiles
48
+ def umbrella_app_directories
48
49
  apps_path = mixfile.content.match(APPS_PATH_REGEX)&.
49
50
  named_captures&.fetch("path")
50
51
  return [] unless apps_path
51
52
 
52
- app_directories = repo_contents(dir: apps_path).
53
- select { |f| f.type == "dir" }.
54
- map { |f| File.join(apps_path, f.name) }
53
+ repo_contents(dir: apps_path).
54
+ select { |f| f.type == "dir" }.
55
+ map { |f| File.join(apps_path, f.name) }
56
+ end
57
+
58
+ def sub_project_directories
59
+ mixfile.content.scan(PATH_DEPS_REGEX).flatten
60
+ end
61
+
62
+ def subapp_mixfiles
63
+ subapp_directories = []
64
+ subapp_directories += umbrella_app_directories
65
+ subapp_directories += sub_project_directories
55
66
 
56
- app_directories.map do |dir|
67
+ subapp_directories.map do |dir|
57
68
  fetch_file_from_host("#{dir}/mix.exs")
58
69
  rescue Dependabot::DependencyFileNotFound
59
70
  # If the folder doesn't have a mix.exs it *might* be because it's
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dependabot-hex
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.155.1
4
+ version: 0.156.0
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.155.1
19
+ version: 0.156.0
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.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: byebug
29
29
  requirement: !ruby/object:Gem::Requirement