danger-missing_codeowners 1.1.0 → 1.2.1

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: 9e93a3e15840e49e1966b6bfae9e59a8bfff84539b3cc1314e6224fab84464d9
4
- data.tar.gz: 9288cb2e4e84f5c5dd09e4d0363f28276e3241d56c509f03075088401124fb4c
3
+ metadata.gz: 970c2a9802600b8d3b23d23f23810f11d2c5b3490e32c21b1de0dc662f7a094a
4
+ data.tar.gz: a1ad21324215c762e3a69515f2b9b66281ef3a8955f238a9f9ff0867d3534f0a
5
5
  SHA512:
6
- metadata.gz: 173a41e2f5fe25c8a953e2bd1dfc78900ee4012604f70692785f8475ffae110e8a7ddb21fc20c0f70dd50093c1102804d46566ad89e401f3fd6198d70c0f50df
7
- data.tar.gz: 4e5a963fb0242853a0a0ad88637f05c2e3ae0c8ff69d8b124e403b79cbccecec866b9f23ea37512b0cdd5594e5a1f0ef6e14b79a9dd6c00e2cbc67f6de2ab06f
6
+ metadata.gz: e9e820fc8a00114fe751122bcbd230fbeab691541b7e83ab5e2541cf558345461ebcf7b88b0b732fc8eed47ce401a66189acbb6620d441123e334bc81261e864
7
+ data.tar.gz: 3ac47d981dbc81ab5f733de36da6ff872720bd56a1911e02f0b6219554bf6abaee1e33c075d7012b9e26c648779ffbd2cfc6e5ab0f35881acacec536c27347b1
data/Gemfile.lock CHANGED
@@ -1,16 +1,17 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- danger-missing_codeowners (1.1.0)
4
+ danger-missing_codeowners (1.2.1)
5
5
  danger-plugin-api (~> 1.0)
6
6
  pathspec (~> 1.0.0)
7
7
 
8
8
  GEM
9
9
  remote: https://rubygems.org/
10
10
  specs:
11
- addressable (2.8.4)
11
+ addressable (2.8.6)
12
12
  public_suffix (>= 2.0.2, < 6.0)
13
13
  ast (2.4.2)
14
+ base64 (0.2.0)
14
15
  claide (1.1.0)
15
16
  claide-plugins (0.9.2)
16
17
  cork
@@ -20,31 +21,31 @@ GEM
20
21
  colored2 (3.1.2)
21
22
  cork (0.3.0)
22
23
  colored2 (~> 3.1)
23
- danger (9.3.0)
24
+ danger (9.4.3)
24
25
  claide (~> 1.0)
25
26
  claide-plugins (>= 0.9.2)
26
27
  colored2 (~> 3.1)
27
28
  cork (~> 0.1)
28
29
  faraday (>= 0.9.0, < 3.0)
29
30
  faraday-http-cache (~> 2.0)
30
- git (~> 1.13.0)
31
+ git (~> 1.13)
31
32
  kramdown (~> 2.3)
32
33
  kramdown-parser-gfm (~> 1.0)
33
34
  no_proxy_fix
34
- octokit (~> 5.0)
35
+ octokit (>= 4.0)
35
36
  terminal-table (>= 1, < 4)
36
37
  danger-plugin-api (1.0.0)
37
38
  danger (> 2.0)
38
39
  diff-lcs (1.4.4)
39
- faraday (2.7.5)
40
- faraday-net_http (>= 2.0, < 3.1)
41
- ruby2_keywords (>= 0.0.4)
42
- faraday-http-cache (2.5.0)
40
+ faraday (2.9.0)
41
+ faraday-net_http (>= 2.0, < 3.2)
42
+ faraday-http-cache (2.5.1)
43
43
  faraday (>= 0.8)
44
- faraday-net_http (3.0.2)
44
+ faraday-net_http (3.1.0)
45
+ net-http
45
46
  ffi (1.15.3)
46
47
  formatador (0.3.0)
47
- git (1.13.2)
48
+ git (1.19.1)
48
49
  addressable (~> 2.8)
49
50
  rchardet (~> 1.8)
50
51
  guard (2.18.0)
@@ -72,11 +73,14 @@ GEM
72
73
  method_source (1.0.0)
73
74
  nap (1.1.0)
74
75
  nenv (0.3.0)
76
+ net-http (0.4.1)
77
+ uri
75
78
  no_proxy_fix (0.1.2)
76
79
  notiffany (0.1.3)
77
80
  nenv (~> 0.1)
78
81
  shellany (~> 0.0)
79
- octokit (5.6.1)
82
+ octokit (8.1.0)
83
+ base64
80
84
  faraday (>= 1, < 3)
81
85
  sawyer (~> 0.9)
82
86
  open4 (1.3.4)
@@ -87,7 +91,7 @@ GEM
87
91
  pry (0.14.1)
88
92
  coderay (~> 1.1)
89
93
  method_source (~> 1.0)
90
- public_suffix (5.0.1)
94
+ public_suffix (5.0.4)
91
95
  rainbow (3.0.0)
92
96
  rake (10.5.0)
93
97
  rb-fsevent (0.11.0)
@@ -121,7 +125,6 @@ GEM
121
125
  rubocop-ast (1.8.0)
122
126
  parser (>= 3.0.1.1)
123
127
  ruby-progressbar (1.11.0)
124
- ruby2_keywords (0.0.5)
125
128
  sawyer (0.9.2)
126
129
  addressable (>= 2.3.5)
127
130
  faraday (>= 0.17.3, < 3)
@@ -130,10 +133,12 @@ GEM
130
133
  unicode-display_width (>= 1.1.1, < 3)
131
134
  thor (1.1.0)
132
135
  unicode-display_width (2.0.0)
136
+ uri (0.13.0)
133
137
  yard (0.9.26)
134
138
 
135
139
  PLATFORMS
136
140
  arm64-darwin-21
141
+ ruby
137
142
  x86_64-darwin-20
138
143
 
139
144
  DEPENDENCIES
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module MissingCodeowners
4
- VERSION = "1.1.0"
4
+ VERSION = "1.2.1"
5
5
  end
@@ -59,7 +59,7 @@ module Danger
59
59
  #
60
60
  # @return [void]
61
61
  #
62
- def verify(*opts)
62
+ def verify(*opts, &block)
63
63
  @verify_all_files ||= false
64
64
  @max_number_of_files_to_report ||= 100
65
65
  @severity ||= "error"
@@ -86,8 +86,12 @@ module Danger
86
86
  markdown format_missing_owners_message(@files_missing_codeowners, @max_number_of_files_to_report)
87
87
  danger_message = "Add CODEOWNERS rules to match all files."
88
88
  @severity == "error" ? (fail danger_message) : (warn danger_message)
89
+
90
+ yield @files_missing_codeowners if block
89
91
  else
90
92
  log "No files missing CODEOWNERS."
93
+
94
+ yield [] if block
91
95
  end
92
96
 
93
97
  log "-----"
@@ -112,7 +116,9 @@ module Danger
112
116
  end
113
117
 
114
118
  def find_codeowners_file
115
- directories = ["", ".gitlab", ".github", "docs"]
119
+ return "CODEOWNERS" if File.exist?("CODEOWNERS")
120
+
121
+ directories = [".gitlab", ".github", "docs"]
116
122
  paths = directories.map { |dir| File.join(dir, "CODEOWNERS") }
117
123
  Dir.glob(paths).first || paths.first
118
124
  end
@@ -75,6 +75,26 @@ module Danger
75
75
  expect(@my_plugin.files_missing_codeowners.length).to eq(0)
76
76
  end
77
77
 
78
+ it "calls the block with an empty array if there are no missing files" do
79
+ allow(@my_plugin).to receive(:git_modified_files).and_return(["any_file.yml", "any_file.go"])
80
+
81
+ @my_plugin.verify do |x|
82
+ expect(x).to eq []
83
+ end
84
+
85
+ expect(@my_plugin.files_missing_codeowners.length).to eq(0)
86
+ end
87
+
88
+ it "calls the block with the list of missing files if there are missing files" do
89
+ allow(@my_plugin).to receive(:git_modified_files).and_return(["myfile"])
90
+
91
+ @my_plugin.verify do |x|
92
+ expect(x).to eq ["myfile"]
93
+ end
94
+
95
+ expect(@my_plugin.files_missing_codeowners.length).to eq(1)
96
+ end
97
+
78
98
  it "fails when there are files without CODEOWNERS rules and severity is error" do
79
99
  @my_plugin.verify_all_files = true
80
100
  allow(@my_plugin).to receive(:git_all_files).and_return(["app/source.swift", ".swiftlint.yml"])
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: danger-missing_codeowners
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - andre-alves
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-05-25 00:00:00.000000000 Z
11
+ date: 2024-02-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: danger-plugin-api