Comments (5)
cc @github/linting for reach
from rubocop-github.
Woahh we have a @github/linting team, cool!
For some background, the Ruby working group is trying to improve the development and deployment experience for new and existing Ruby apps at GitHub. This includes a lot of interesting, important work on things like Ruby version management, dockerization, automatic CI support etc, but I don't have experience there so I'm not very helpful with it 🙈
So, I'm trying to move our development tools forward a bit. It seems like this library would be a good place to start, bringing good conventions to new and existing Ruby apps.
Do any of y'all have more thoughts about this goal? Does working on this library seem like a good place to start? Do you have any specific guidance about the cop-by-cop assessments described above? Also, if there's more to read about linting at GitHub, I'd appreciate a link to it!
from rubocop-github.
I used rubocop-github semi-recently on a new project, and we found that some of the included rules were fairly specific to github/github. Or, maybe I don't understand what their motivation was and they were contrary to common practices outside that repo?
Here's what we excluded:
GitHub/RailsControllerRenderLiteral:
Exclude:
- app/**/*
GitHub/RailsViewRenderLiteral:
Exclude:
- app/**/*
- spec/controllers/*
It has a been awhile so I don't recall specifically the kind of code those guard against, but it should be possible to clone down the repo and run with those lines commented out to see what happens.
Also worth noting are these lines, which I'd expect apply to many projects:
Style/FileName:
Exclude:
- Gemfile
- Rakefile
- Brewfile
That one seems a good candidate to move upstream to rubocop-github, if not rubocop proper.
from rubocop-github.
Thanks for sharing your experience! I'll dig in there soon.
from rubocop-github.
I don't actually have capacity to do this 😢
from rubocop-github.
Related Issues (18)
- Improve the purpose/usability of rubocop-github
- Template could not be found when using JBuilder Views
- New Cop: Avoid usage of `Class.descendents`
- Documentation for RailsControllerRender cops
- Add deep links into the styleguide for each cop in `config/default.yml`
- Removed cop causing error HOT 1
- ApplicationRecord subclass cop runs on ApplicationRecord model HOT 2
- Is "avoid using String#+" still valid in the era of frozen_string_literal HOT 2
- Unify controller render cops?
- namespace changed HOT 2
- Rails cops being removed in RuboCop 0.72 HOT 2
- Update rubocop-performance to 1.5.0 HOT 1
- Metrics/Lin eLength has the wrong namespace - should be Layout HOT 6
- Explain why `def self.foo` is preferred over `class << self` HOT 6
- I don't _agree_ with the preference expressed in the guide, but I think I understand the issue. Consider this Ruby code: HOT 1
- Update To Allow Version 1.3.1 Of Rubocop.
- Misleading linting when passing a variable to render `locals:` HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rubocop-github.