The project is in a healthy, maintained state
A collection of RuboCop cops to check for downstream compatability issues in the Ruby code.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
 Project Readme

RuboCop::Packaging

RuboCop::Packaging is an extension of RuboCop, which is a Ruby static code analyzer (a.k.a. linter) and code formatter.

It helps enforcing some of the guidelines that are expected of upstream maintainers so that the downstream can build their packages in a clean environment without any problems.

Documentation

A detailed documentation, explaining what this extension is doing and the reasoning behind it, can be found here: https://docs.rubocop.org/rubocop-packaging/

We also have a packaging-style-guide, listing some good and bad examples and the rationale behind these cops.

In case anything is not clear, please feel free to raise an issue, asking for more explanation!

Installation

Add this line to your application's Gemfile:

gem 'rubocop-packaging'

And then execute:

$ bundle install

Or install it yourself as:

$ gem install rubocop-packaging

Usage

You need to tell RuboCop to load the Packaging extension. There are three ways to do this:

RuboCop configuration file

Put this into your .rubocop.yml file:

require: rubocop-packaging

Alternatively, use the following array notation when specifying multiple extensions:

require:
  - rubocop-other-extension
  - rubocop-packaging

Now you can run rubocop and it will automatically load the RuboCop Packaging cops together with the standard cops.

Command line

rubocop --require rubocop-packaging

Rake task

RuboCop::RakeTask.new do |task|
  task.requires << 'rubocop-packaging'
end

Development

After checking out the repo, run bin/setup to install dependencies. Then, run rake spec to run the tests. You can also run bin/console for an interactive prompt that will allow you to experiment.

To install this gem onto your local machine, run bundle exec rake install.

Contributing

As always, bug reports and pull requests are heartily welcomed! 💖
This project is intended to be a safe and welcoming space for collaboration.

License

rubocop-packaging is available as open-source under the MIT License.