Skip to content

fahmisdk6/danger-rubocop

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

99 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CircleCI

Danger Rubocop

A Danger plugin for Rubocop.

Installation

Add this line to your Gemfile:

gem 'danger-rubocop'

Usage

Run Ruby files through Rubocop. Results are passed out as a table in markdown.

Specifying custom config file.

rubocop.lint

Lint specific files in a folder, when they change

public_files = (git.modified_files + git.added_files).select { |path| path.include?("/public/") }
rubocop.lint public_files

Submit comments only for changed lines

github.dismiss_out_of_range_messages
rubocop.lint inline_comment: true

Methods

lint(config: Hash)

Runs Ruby files through Rubocop. Generates a markdown list of warnings.

This method accepts a configuration hash. The following keys are supported:

  • files: array of file names or glob patterns to determine files to lint
  • force_exclusion: pass true to pass --force-exclusion argument to Rubocop. (this option will instruct rubocop to ignore the files that your rubocop config ignores, despite the plugin providing the list of files explicitely)
  • inline_comment: pass true to comment inline of the diffs.
  • fail_on_inline_comment: pass true to use fail instead of warn on inline comment.
  • report_danger: pass true to report errors to Danger, and break CI.
  • config: path to the .rubocop.yml file.
  • only_report_new_offenses: pass true to only report offenses that are in current user's scope. Note that this won't mark offenses for Metrics/XXXLength if you add lines to an already existing scope.
  • include_cop_names: Prepends cop names to the output messages. Example: "Layout/EmptyLinesAroundBlockBody: Extra empty line detected at block body end."

Passing files as only argument is also supported for backward compatibility.

License

MIT

About

Danger plugin for Rubocop

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Ruby 100.0%