dependabot-hex 0.155.1 → 0.156.0

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: 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