RuboCop es un analizador estatico de codigo Ruby.
Para añadirlo solo tenemos que:
1.- Abrir nuestro fichero Gemfile y añadir la siguiente linea.
1 |
gem 'rubocop', require: false |
Y en realidad yo solo lo añadiria para test y desarrollo o solo desarrollo. Asi que mejor esta segunda opcion. Luego ya podeis decirle a git que no suba nada sino te comprueba rubocop.
1 2 3 |
group :development do gem 'rubocop', require: false end |
2.- Ahora hacemos un bundle install ( para instalar la gema) o si lo preferis lo primero que podemos hacer es añadir la gema y luego añadirlo al Gemfile.
1 |
bundle install |
Ahora con esto ya tenemos rubocop y podriamos probarlo lanzando el comando ‘rubocop’ en el terminal el problema es que se va a volver loco , va a hacerlo sobre todos los vendors y bla bla.
3.- Asi que antes de nada vamos a crearnos un fichero .rubocop.yml
1 2 3 4 5 6 7 8 9 |
AllCops: Includes: - Rakefile - config.ru Excludes: - db/** - config/** - script/** - vendor/**/* # Circle adds the rubies here |
Podemos añadir mas cosas pero de momento vamos con esto.
4.- Ahora podemos lanzar el comando rubocop asi que en el terminal poneis rubocop. Vereis que salen muchos muchos mensajes.
Lo mejor es dejar todo como esta y crear un rubocop_todo.yml automaticamente que va a hacer que todo lo que ya teniamos mal lo deje como esta y nos pinte esos fallos. Esto no quiere decir que lo dejemos ahi sino que los vayamos arreglando poco a poco y nos acostumbremos a sintaxis.
1 |
rubocop --auto-gen-config |
Y nos creara un fichero que se llamara .rubocop_todo.yml y añadira en el fichero .rubocop.yml en la primera linea lo siguiente:
1 2 3 4 5 6 7 8 9 10 |
inherit_from: .rubocop_todo.yml AllCops: Include: - Rakefile - config.ru - lib/**/*.rake Exclude: - db/schema.rb - spec/teaspoon_env.rb - vendor/**/* # Circle adds the rubies here |