diff options
Diffstat (limited to 'danger/frozen_string')
-rw-r--r-- | danger/frozen_string/Dangerfile | 47 |
1 files changed, 0 insertions, 47 deletions
diff --git a/danger/frozen_string/Dangerfile b/danger/frozen_string/Dangerfile deleted file mode 100644 index bc598b16463..00000000000 --- a/danger/frozen_string/Dangerfile +++ /dev/null @@ -1,47 +0,0 @@ -# frozen_string_literal: true - -FILE_EXTENSION = ".rb" -FROZEN_STRING_MAGIC_COMMENT = "# frozen_string_literal: true" -SHEBANG_COMMENT = "#!" - -def get_files_with_no_magic_comment(files) - files.select do |path| - path.end_with?(FILE_EXTENSION) && - !file_has_frozen_string_magic_comment?(path) - end -end - -def file_has_frozen_string_magic_comment?(path) - File.open(path) do |file| - first_line = file.gets - - line_has_frozen_string_magic_comment?(first_line) || - (line_has_shebang?(first_line) && - line_has_frozen_string_magic_comment?(file.gets)) - end -end - -def line_has_frozen_string_magic_comment?(line) - line&.start_with?(FROZEN_STRING_MAGIC_COMMENT) -end - -def line_has_shebang?(line) - line&.start_with?(SHEBANG_COMMENT) -end - -files_to_fix = get_files_with_no_magic_comment(git.added_files) - -if files_to_fix.any? - warn 'This merge request adds files that do not enforce frozen string literal. ' \ - 'See https://gitlab.com/gitlab-org/gitlab-foss/issues/47424 for more information.' - - if GitlabDanger.new(helper.gitlab_helper).ci? - markdown(<<~MARKDOWN) - ## Enable Frozen String Literal - - The following files should have `#{FROZEN_STRING_MAGIC_COMMENT}` on the first line: - - * #{files_to_fix.map { |path| "`#{path}`" }.join("\n* ")} - MARKDOWN - end -end |