Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rubocop-hq/rubocop-performance
An extension of RuboCop focused on code performance checks.
https://github.com/rubocop-hq/rubocop-performance
code-formatter hacktoberfest linter rubocop ruby static-code-analysis
Last synced: 22 days ago
JSON representation
An extension of RuboCop focused on code performance checks.
- Host: GitHub
- URL: https://github.com/rubocop-hq/rubocop-performance
- Owner: rubocop
- License: mit
- Created: 2018-06-10T12:08:51.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2024-10-14T08:10:53.000Z (2 months ago)
- Last Synced: 2024-10-29T12:57:58.395Z (about 2 months ago)
- Topics: code-formatter, hacktoberfest, linter, rubocop, ruby, static-code-analysis
- Language: Ruby
- Homepage: https://docs.rubocop.org/rubocop-performance
- Size: 24.6 MB
- Stars: 682
- Watchers: 13
- Forks: 80
- Open Issues: 55
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE.txt
Awesome Lists containing this project
README
# RuboCop Performance
[![Gem Version](https://badge.fury.io/rb/rubocop-performance.svg)](https://badge.fury.io/rb/rubocop-performance)
[![CI](https://github.com/rubocop/rubocop-performance/actions/workflows/test.yml/badge.svg)](https://github.com/rubocop/rubocop-performance/actions/workflows/test.yml)
[![Discord](https://img.shields.io/badge/chat-on%20discord-7289da.svg?sanitize=true)](https://discord.gg/wJjWvGRDmm)Performance optimization analysis for your projects, as an extension to [RuboCop](https://github.com/rubocop/rubocop).
## Installation
Just install the `rubocop-performance` gem
```sh
$ gem install rubocop-performance
```or if you use bundler put this in your `Gemfile`
```ruby
gem 'rubocop-performance', require: false
```## Usage
You need to tell RuboCop to load the Performance extension. There are three
ways to do this:### RuboCop configuration file
Put this into your `.rubocop.yml`.
```yaml
require: rubocop-performance
```Alternatively, use the following array notation when specifying multiple extensions.
```yaml
require:
- rubocop-other-extension
- rubocop-performance
```Now you can run `rubocop` and it will automatically load the RuboCop Performance
cops together with the standard cops.### Command line
```sh
$ rubocop --require rubocop-performance
```### Rake task
```ruby
require 'rubocop/rake_task'RuboCop::RakeTask.new do |task|
task.requires << 'rubocop-performance'
end
```## The Cops
All cops are located under
[`lib/rubocop/cop/performance`](lib/rubocop/cop/performance), and contain
examples/documentation.In your `.rubocop.yml`, you may treat the Performance cops just like any other
cop. For example:```yaml
Performance/Size:
Exclude:
- lib/example.rb
```## Documentation
You can read a lot more about RuboCop Performance in its [official docs](https://docs.rubocop.org/rubocop-performance/).
## Compatibility
RuboCop Performance complies with the RuboCop core compatibility.
See the [compatibility documentation](https://docs.rubocop.org/rubocop/compatibility.html) for further details.
**Note:** Performance cops are all MRI focused and are highly dependent of the version of MRI you're using.
## Contributing
Checkout the [contribution guidelines](CONTRIBUTING.md).
## License
`rubocop-performance` is MIT licensed. [See the accompanying file](LICENSE.txt) for
the full text.