sauce-archives / sauce_ruby

This is the Ruby client adapter for testing with Sauce Labs, a Selenium-based browser testing service (saucelabs.com).
Apache License 2.0
98 stars 115 forks source link

2438 rubocop offenses detected #336

Open bootstraponline opened 9 years ago

bootstraponline commented 9 years ago

rubocop should be setup to run automatically on Travis and the code should be updated to follow the style guidelines.

$ rubocop
126 files inspected, 2438 offenses detected
waynerobinson commented 9 years ago

Whilst it's good to develop within a standard, Rubocop's rules are suggestions rather than hard-and-fast and you'll find the vast majority of projects/developers disagree with the application of very large swaths of the default Rubocop default ruleset.

I suggest that a well-tested codebase is much more important than following some arbitrary rules that one developer feels makes up a good Ruby project.

I vote to close this issue.

bootstraponline commented 9 years ago

the vast majority of projects/developers disagree with the application of very large swaths of the default Rubocop default ruleset.

Citation needed. I think that's a false statement.

The Ruby style guide is widely used and rubocop is the result of 153 contributors, not one individual. Within the Sauce Ruby community, which is what's relevant here, rubocop is already being used for both appium's Ruby bindings and the applitools Ruby SDK. The solution to disagreeing with specific rules is to configure the linter, not abandon style checking entirely.

The code base for sauce_ruby is not well tested and is inconsistent in terms of style. Following along with other Sauce Labs initiatives, such as the majority of the appium project (via jscs), and adopting standard code quality tools makes sense. Arguing against linting is not productive.

bootstraponline commented 9 years ago

I suggest that a well-tested codebase is much more important than following some arbitrary rules that one developer feels makes up a good Ruby project.

I agree that testing the codebase is more important than linting, although that shouldn't exclude linting. There's a different issue to address code coverage. https://github.com/saucelabs/sauce_ruby/issues/335