]> git.openstreetmap.org Git - rails.git/blobdiff - Dangerfile
Merge remote-tracking branch 'upstream/pull/5318'
[rails.git] / Dangerfile
index 3445f5705115a38ba83e214aab1fe33505613d4d..6e2aeced8d487c36136181f82a4fd7fb2dccfa5d 100644 (file)
@@ -4,9 +4,9 @@ pr_number = github.pr_json["number"]
 # Report if number of changed lines is > 500
 if git.lines_of_code > 500
   warn("Number of updated lines of code is too large to be in one PR. Perhaps it should be separated into two or more?")
-  auto_label.set(pr_number, "Big PR", "FBCA04")
+  auto_label.set(pr_number, "big-pr", "FBCA04")
 else
-  auto_label.remove("Big PR")
+  auto_label.remove("big-pr")
 end
 
 # Get list of translation files (except en.yml) which are modified
@@ -16,17 +16,27 @@ end
 
 # Report if some translation file (except en.yml) is modified
 if modified_yml_files.empty?
-  auto_label.remove("Inappropriate Translations")
+  auto_label.remove("inappropriate-translations")
 else
   modified_files_str = modified_yml_files.map { |file| "`#{file}`" }.join(", ")
   warn("The following YAML files other than `en.yml` have been modified: #{modified_files_str}. Only `en.yml` is allowed to be changed. Translations are updated via Translatewiki, see CONTRIBUTING.md.")
-  auto_label.set(pr_number, "Inappropriate Translations", "B60205")
+  auto_label.set(pr_number, "inappropriate-translations", "B60205")
 end
 
 # Report if there are merge-commits in PR
 if git.commits.any? { |c| c.parents.count > 1 }
   warn("Merge commits are found in PR. Please rebase to get rid of the merge commits in this PR, see CONTRIBUTING.md.")
-  auto_label.set(pr_number, "Merge Commits", "D93F0B")
+  auto_label.set(pr_number, "merge-commits", "D93F0B")
 else
-  auto_label.remove("Merge Commits")
+  auto_label.remove("merge-commits")
+end
+
+# Check if Gemfile is modified but Gemfile.lock is not
+gemfile_modified = git.modified_files.include?("Gemfile")
+gemfile_lock_modified = git.modified_files.include?("Gemfile.lock")
+if gemfile_modified && !gemfile_lock_modified
+  warn("Gemfile was updated, but Gemfile.lock wasn't updated. Usually, when Gemfile is updated, you should run `bundle install` to update Gemfile.lock.")
+  auto_label.set(pr_number, "gemfile-lock-outdated", "F9D0C4")
+else
+  auto_label.remove("gemfile-lock-outdated")
 end