dependabot-common 0.112.27 → 0.112.32

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: e7169382c5c4708d5abab7bf7a552c845f6904739ba912800e00a122e8091554
4
- data.tar.gz: 2ce4492c9afbbd88d285831c61bd45537a4dbc1e7d454588f58ff0023b77438f
3
+ metadata.gz: a78e51c3d204cf2337c5c444c03b88811db1145d21d7869147512446261e661d
4
+ data.tar.gz: 9b68fbf315cfbc71672b77e5415e51771b449607de0001daf24f6e4f547d3d45
5
5
  SHA512:
6
- metadata.gz: 3861bdd1501319b56ad341c008da4afc71160fb9f952176908a1abe69012a74d498204b9d41e0261bfc331a9698b960723502f5fc8cea77bdbbe0b9b81bca0e1
7
- data.tar.gz: c7c4afcf95a2ea0bfa6e574f9eaacf7897baa5e4c663d60316063b93d015cce8591b26aa3c9592ffb548ffa6d6f31400a7478da293dac5ffff6aa815438fecc4
6
+ metadata.gz: 967b7b6db6731b6966edff912d69be0ddcbe88d4aff4d45cde6f1d662ca45ce2428aaa74e8857b3bda09f7855b7c9385e92a21d5029a31f8b56e859bd3175069
7
+ data.tar.gz: 9e012a0ad238a17901d427af8696ecba7c280899cfc0aec2f7cb0e1a11a9f1f451c936b95d6f6ebc417736443c2af20e69a79c541f963d6bb19df5dbf4f6e5d9
@@ -258,7 +258,10 @@ module Dependabot
258
258
  team_reviewers: reviewers_hash[:team_reviewers] || []
259
259
  )
260
260
  rescue Octokit::UnprocessableEntity => e
261
- return if invalid_reviewer?(e.message)
261
+ if invalid_reviewer?(e.message)
262
+ comment_with_invalid_reviewer(pull_request, e.message)
263
+ return
264
+ end
262
265
 
263
266
  raise
264
267
  end
@@ -271,6 +274,36 @@ module Dependabot
271
274
  false
272
275
  end
273
276
 
277
+ def comment_with_invalid_reviewer(pull_request, message)
278
+ reviewers_hash =
279
+ Hash[reviewers.keys.map { |k| [k.to_sym, reviewers[k]] }]
280
+ reviewers = []
281
+ reviewers += reviewers_hash[:reviewers] || []
282
+ reviewers += (reviewers_hash[:team_reviewers] || []).
283
+ map { |rv| "#{source.repo.split('/').first}/#{rv}" }
284
+
285
+ reviewers_string =
286
+ if reviewers.count == 1
287
+ "`@#{reviewers.first}`"
288
+ else
289
+ names = reviewers.map { |rv| "`@#{rv}`" }
290
+ "#{names[0..-2].join(', ')} and #{names[-1]}"
291
+ end
292
+
293
+ msg = "Dependabot tried to add #{reviewers_string} as "
294
+ msg += reviewers.count > 1 ? "reviewers" : "a reviewer"
295
+ msg += " to this PR, but received the following error from GitHub:\n\n"\
296
+ "```\n" \
297
+ "#{message}\n"\
298
+ "```"
299
+
300
+ github_client_for_source.add_comment(
301
+ source.repo,
302
+ pull_request.number,
303
+ msg
304
+ )
305
+ end
306
+
274
307
  def add_assignees_to_pull_request(pull_request)
275
308
  github_client_for_source.add_assignees(
276
309
  source.repo,
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Dependabot
4
- VERSION = "0.112.27"
4
+ VERSION = "0.112.32"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dependabot-common
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.112.27
4
+ version: 0.112.32
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dependabot