2015-10-23 4 views
0

Прямо сейчас rubocop дает мне 3 разных выхода относительно моего проекта рельсов, в зависимости от того, как я его вызываю.Различные выходы rubocop

> rubocop # version: 0.34.2 
88 files inspected, 5 offenses detected 

>bundle exec rubocop # version: 0.30.1 
87 files inspected, no offenses detected 

>rake # with :rubocop in my task list 
87 files inspected, 35 offenses detected 

>bundle exec rake # with :rubocop in my task list 
87 files inspected, 35 offenses detected 

2 варианта имеют смысл, поскольку моя версия системы rubocop отличается от моей в Gemfile. Но ? wuuuut?

Я предполагаю, что третий выход идет от третьей версии rubocop где-то? Где это будет? Что тут происходит?

Update:

Список задач: ['ci:setup', :spec, :rubocop, :jshint, 'brakeman:run', 'bundler:audit', 'bundler:outdated']

Update 2:

На совету коллегу я уронил чтобы попытаться получить идущую версию rubocop во время грабли:

task :rubocop do 
    require 'rubocop/rake_task' 
    require 'rubocop/version' 
    puts RuboCop::Version.version 
    RuboCop::RakeTask.new do |task| 
    task.patterns = ['--rails'] 
    end 
end 

Что печатает 0.30.1, версия, которую я ожидаю. Все еще никаких объяснений ошибок.

+1

Каковы ваши другие задачи рейка? Что-то сгенерированное RuboCop может занять? – Drenmi

+0

@Drenmi Я добавил список задач, которые запускаются. Если во время грабли создаются/изменяются файлы, я предполагаю, что последующие прогоны 'rubocop' /' bundle exec rubocop' поймают их? (Это не происходит.) – lostphilosopher

ответ

0

Ну, это печально и неловко.

Если бы я более внимательно посмотрел на грабли задачи для rubocop я бы заметил:

task.patterns = ['--rails'] 

который добавляет несколько дополнительных полицейских. Добавив этот флаг в bundle exec rubocop --rails, вы увидите результаты с прогона rake.

Я надеюсь, что это поможет кому-то еще заметить это быстрее, чем я.

Смежные вопросы