並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 108件

新着順 人気順

rubocopの検索結果1 - 40 件 / 108件

  • RuboCop作者がRubyコードフォーマッタを比較してみた: 前編(翻訳)|TechRacho by BPS株式会社

    概要 原著者の許諾を得て翻訳・公開いたします。 英語記事: The Missing Ruby Code Formatter | Meta Redux 原文公開日: 2019/03/30 著者: Bozhidar -- RuboCopの作者です サイト: Meta Redux 日本語タイトルは内容に即したものにしました。記事が長いので3分割いたしました。参考までに、元記事の後にtestdouble社のstandard(standardrb)というgemも登場しています↓。 2019/05/24: 初版公開 2023/03/22: 更新 ある特定の言語のコードのフォーマットを1種類の正式な方法に絞り込むというアイデアがGo言語で登場して以来(Goの場合はgofmtがバンドルされている)、あらゆるコミュニティのプログラマーがその方法論を取り込もうとしてきました(成功の度合いは言語によってまちまち

      RuboCop作者がRubyコードフォーマッタを比較してみた: 前編(翻訳)|TechRacho by BPS株式会社
    • せせり(大岡まひろ)@個人開発 on Twitter: "僕はRailsプロダクトの技術的負債を返済する手伝いを良くするのですが、その際にどんな流れで解決していくかを簡単に書いておきます 1. まずはlintとrubocopを導入する 2. pre commitでrubocopやlin… https://t.co/7qxY4YXFTc"

      僕はRailsプロダクトの技術的負債を返済する手伝いを良くするのですが、その際にどんな流れで解決していくかを簡単に書いておきます 1. まずはlintとrubocopを導入する 2. pre commitでrubocopやlin… https://t.co/7qxY4YXFTc

        せせり(大岡まひろ)@個人開発 on Twitter: "僕はRailsプロダクトの技術的負債を返済する手伝いを良くするのですが、その際にどんな流れで解決していくかを簡単に書いておきます 1. まずはlintとrubocopを導入する 2. pre commitでrubocopやlin… https://t.co/7qxY4YXFTc"
      • Is it time to change the name? · Issue #8091 · rubocop/rubocop

        You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

          Is it time to change the name? · Issue #8091 · rubocop/rubocop
        • RuboCop リネーム騒動の所感 - @kyanny's blog

          Is it time to change the name? · Issue #8091 · rubocop-hq/rubocop · GitHub Rubyists, we must do better | timriley-info The RuboCop Name Drama Redux | Meta Redux 件の騒動を知る前に「Black Lives Matter の流れに乗って名前変えたらいいんじゃねーの」とは思った 難癖をつけられて揉める前に済ませておくほうが楽そう、とか FactoryBot のことを当然思い出しながら 個人的に RuboCop は好きではなく愛着もないので、というのもある リネームしたら?という提案自体は、まぁ妥当な範囲内だと思う master ブランチやめます話もあることだし https://twitter.com/mislav/status/1270

            RuboCop リネーム騒動の所感 - @kyanny's blog
          • RuboCopコミッターが語る、"Write Code Every Day"を5年間実践するための工夫と得られたもの | Offers Magazine

            ▲RubyKaigiでの登壇(提供:RubyKaigi 2018) OSSにパッチを送るにあたり「このクオリティのコードでパッチを出して良いかわからない」と耳にすることがあります。 私自身、とりあえず期待どおりに動くパッチは手元で書けているけれど、それが正しい直し方か分からないため、OSSリポジトリにパッチを出せないでいたことがありました。ここではそんなパッチに対する考え方の変化について話します。 最初は自信がないパッチだろうと出すことが大切 仕事で踏んだOSSのバグの修正について「正しい直し方かどうか分からないのでOSSに出せない」ことがあったのですが、RubyKaigi 2016で、OSSメンテナーのyahondaさんから「自分だってどう直したら正しいかは知らない(けど直しているんだ)よ」と言われ、目から鱗が落ちる体験をしました。 以来、大きく気持ちが変わり、たとえベターでも問題解決さ

              RuboCopコミッターが語る、"Write Code Every Day"を5年間実践するための工夫と得られたもの | Offers Magazine
            • RuboCopにLSPを標準搭載した - koicの日記

              タイトルのとおり。RuboCop 1.53 で LSP (言語サーバー) を標準搭載しました。 最初に3行まとめを書いておきます。 RuboCop を使っているけれど LSP を使っていない場合は、高速なリアルタイム性で開発体験が変わると思います。速い! VS Code ユーザーを使っている方は、後述する vscode-rubocop という VS Code 拡張をインストールすれば OK です。 Emacs や Vi などのユーザーは、LSP クライアントの設定で rubocop --lsp を起動するように LSP 設定してください (VS Code では不要) 。 公式の使い方としては以下のドキュメントを更新していくことになるものの、実装者が自分なのでこちらに軽く書き記します。 docs.rubocop.org rubocop --lsp コマンドは直接ユーザーが手動実行するものでは

                RuboCopにLSPを標準搭載した - koicの日記
              • RuboCop RSpecからRuboCop CapybaraとRuboCop factory_botが切り出されたけど結局どうすればいいの? - ANDPAD Tech Blog

                こんにちは、 ydah です。最近はというと、料理への情熱が再燃してきました。一時期は作った料理を全て写真に残していたりとしていたのですが、いつの間にか記録を何も残さなくなっていました。何かしら記録を残すことで、前回よりも味も見た目も良くしようと思えるので、記録を残していくようにしたいと思います。やっていくぞ〜!! トマトとタコのパスタの近影 はじめに 5/11-13 に長野県松本市 まつもと市民芸術館 で開催された RubyKaigi 2023 の Lightning Talks で、 RuboCop RSpec チーム*1と RuboCop RSpec から、 RuboCop Capybara と RuboCop factory_bot を gem に切り出した話をしました。 rubykaigi.org 当日の発表スライドは以下です。 この記事では RuboCop RSpec を現在使

                  RuboCop RSpecからRuboCop CapybaraとRuboCop factory_botが切り出されたけど結局どうすればいいの? - ANDPAD Tech Blog
                • Rubyの“破壊的変更”を恐れるな! 毎日OSSに関わるRuboCopコミッターが教える傾向と対策

                  Rubyはバージョンアップによって、やむなく旧バージョンとの互換性がなくなってしまうことがあります。それが破壊的変更です。静的コードアナライザーモジュールであるRuboCopのコミッターのkoic氏が、どんなときに破壊的変更が起きるのか、起きてしまったときは、どのように対応すればよいのか、その背景と対策を語ります。 Rubyの静的コードアナライザーモジュール「RoboCop」 koic氏:こんばんは。今回は「Breaking Change」というタイトルで発表します。Twitterは「@koic」というハンドルネームでやっています。永和システムマネジメントという会社から来ました。 (Rubyの静的コードアナライザーモジュールの)RuboCopは、今日も含めて何度か話に出ていると思うのですが、私はそこのコミッターをしていたり、RailsのActive RecordのOracleを使っている部

                    Rubyの“破壊的変更”を恐れるな! 毎日OSSに関わるRuboCopコミッターが教える傾向と対策
                  • RuboCop 1.0 がリリースされた - koicの日記

                    RuboCop 1.0 がリリースされた。 github.com 自分が最初にリリースを行った 0.93.1 が RuboCop 1.0 より前の最後のリリースになったというのも感慨深いものがあるけれど、さておきついに 1.0 になった。 よい節目なので RuboCop 1.0 と周辺に関するエントリを書いておこうと思う。 0.93.1 までアップグレードしている人への主な変更 ここまでアップグレードしている人は、1.0 に向けたマイルストーンを達成したひととおりの機能を手に入れています。0.93.1 から 1.0 での主な変更点は以下です。 デフォルトで pending だったコアの Cop がすべてデフォルトで有効になった。DidabledByDefault: true などしているのでなければ、これが一番ユーザーインパクトのある変更だと思う。なお、今後 1 系で追加される Cop は

                      RuboCop 1.0 がリリースされた - koicの日記
                    • たまってしまった .rubocop_todo.yml をGitHub Actionsで継続的かつ自動的に倒す方法 - STORES Product Blog

                      こんにちは。heyのCTOをやっている藤村です。 実はCTOになる前はSTORESのRailsのコードを改善する仕事をしていました。その頃に、たまってしまっている.rubocop_todo.ymlをなんとか手間をかけずに消化していきたいな〜と思い、少しづつ自動的に消化する仕組みを作りました。この記事ではその仕組みをご紹介します。 rubocop_todo.yml とは 既存のコードベースに対してRuboCopを適用すると大量の違反箇所が出てしまい使い物にならないという問題があります。それの解決策として、既存のコードで違反しているファイルを無視する設定を .rubocop_todo.yml というファイルに保存して .rubocop.yml で読み込み、既にある違反はいったん無視する、という方法が用意されています。 Configuration - RuboCop: The Ruby Lint

                        たまってしまった .rubocop_todo.yml をGitHub Actionsで継続的かつ自動的に倒す方法 - STORES Product Blog
                      • Rubocop Performanceを測ってみた。前編 - アクトインディ開発者ブログ

                        morishitaです。 以前、弊社のWebエンジニアキエンが次のエントリで紹介した prontoによる自動レビューですが、今ではほかのRailsアプリケーションにも導入して使っています。 tech.actindi.net うっかりしたコードを書くと容赦のない指摘コメントが付きます。 その多くはコードフォーマットに関するものなのですが、時々rubocop-performanceにより「遅いかもしれないので書き直しましょう」という指摘をされます。 へーそうなのかーと素直に修正してきたのですが、ツールを活用するのはいいのだけど、盲従するのは良くないぁと心に引っかかるものを感じていました。 JuanitoFatas/fast-rubyにも測定結果があるのですが、ざっと見て古すぎるRubyバージョン(2.2など)での結果が更新されていないものが結構あるなぁと思いました。 また、Rubyのバージョン

                          Rubocop Performanceを測ってみた。前編 - アクトインディ開発者ブログ
                        • プロジェクト独自のコーディングルールを簡単に正規表現で定義できる `rubocop-grep` の活用 - ROUTE06 Tech Blog

                          はじめに: 弊社のとあるEDI(電子商取引)関連のプロダクトでは、Ruby on Railsを利用してGraphQL APIを提供しています。 その開発活動の中で最近、コードの品質と整合性を維持するためのツールとして rubocop-grep を利用し始めました。 この記事ではその具体的な活用事例についてお話しします。 目次 rubocop-grepとは 最初のユースケースと、基本的な使い方の説明 複数のルールをディレクトリごとに設定するための工夫 ほかにどのようなユースケースがありそうか まとめ rubocop-grepとは rubocop-grep は、rubocop の拡張ツールです。 プロジェクト独自のコーディングルールを、正規表現を用いて簡単に定義することができます。 この手の問題は、今までもカスタムCopを書くことで解決することはできましたが、カスタムCopはASTの知識やRu

                            プロジェクト独自のコーディングルールを簡単に正規表現で定義できる `rubocop-grep` の活用 - ROUTE06 Tech Blog
                          • RuboCop Under a Microscope

                            Lint Night #1 https://lintnight.connpass.com/event/263931/

                              RuboCop Under a Microscope
                            • Mastering config/default.yml for RuboCop

                              銀座Rails#9

                                Mastering config/default.yml for RuboCop
                              • .rubocop_todo.ymlを解消するPull RequestをGitHub Actionsで自動生成する (前編)

                                .rubocop_todo.ymlを解消するPull RequestをGitHub Actionsで自動生成する (前編) 前編ではr7kamura/rubocop-challengeというCustom Actionの話をし、後編では再実装したr7kamura/rubocop-todo-correctorというCustom Actionの話をする。 ただ開発しているだけで、.rubocop_todo.ymlはそこ此処に積もる。たまに慈善活動的に解消してPull Requestを出したりもする。しかし人力でやっているとキリがない。この作業を自動化したい。こういうときに便利な、rubocop_challengerというGemがある。 便利なGemだが、設定しようとすると幾つかハマりどころがあり、導入が大変。そこで、簡単に導入できるようにr7kamura/rubocop-challengeという

                                • cache を最適化して RuboCop の CI 実行時間を劇的に改善した話 - JMDC TECH BLOG

                                  こんにちは、プロダクト開発部の八杉です。JMDC では主に web フロントエンドの実装や設計を中心に行っているほか、最近は Rails の GraphQL モジュールの設計や CI の最適化にも取り組んでいます。 本記事は JMDC Advent Calendar 2023 11日目の記事です。 qiita.com この記事では、 RuboCop を CI で実行した際に遭遇した cache にまつわる 3 つの問題とその対処について紹介します。 背景 今回お伝えするのは、私が開発に携わる Pep Up (ペップアップ) という web サービスの話です。 Pep Up は Ruby on Rails 製のアプリケーションで、コードフォーマッターに RuboCop を使用しています。8 年前の開発初期から使用していますが、違反のチェックを厳格に行っていなかったこともあり、ここ数年はフォー

                                    cache を最適化して RuboCop の CI 実行時間を劇的に改善した話 - JMDC TECH BLOG
                                  • RuboCopで型情報を利用した解析を試している - pockestrap

                                    3行 RuboCopで「この変数はString」とかの情報を含めて解析させられないか試している まだPoCだけど、なんとなくは動いている https://github.com/pocke/rubocop-typed を見て 何をしているの rubocop-typed というプロジェクトで、RuboCopで今までできていなかった解析ができないか試しています。 github.com RuboCopの実行前にSteepを実行し、Steepの解析結果をCop内で使用することで型情報を利用した解析を実現しています。 何ができるの 現在は「nilになりえない式をレシーバーにした&.でのメソッド呼び出し」に警告を出すCopのみを実装しています。 arr = [1, 2, 3] value = arr.find { |x| x == 1 } arr&.first # arrはnilになりえないので、警告が

                                      RuboCopで型情報を利用した解析を試している - pockestrap
                                    • reviewdog x Custom FormatterでRuboCopの自動修正を提案させるようにしました - inSmartBank

                                      reviewdog/action-rubocopというOSSプロジェクトをご存知でしょうか。Rubyの静的解析ツールであるRuboCopをGitHub Actionsで実行し、指摘箇所にコメントを付けてくれる便利なCustom Actionです。 本記事では筆者がこのOSSを改良して実装したSuggestion featureという便利機能とその実装についてご紹介します。RuboCopをお使いの方、より良いRuboCop生活をお求めの方、静的解析が好きな方向けの記事となります。 なお、この記事は2023-06-21に行われたGotanda.rb#53@ギフティで"RuboCop Custom Formatter for Reviewdog Diagnostic Format"と題して筆者が行った発表をもとにしています。 前提となる知識 初めにreviewdog/action-rubocop

                                        reviewdog x Custom FormatterでRuboCopの自動修正を提案させるようにしました - inSmartBank
                                      • Ruby: RubocopとRufoを最小限に共存させてみた|TechRacho by BPS株式会社

                                        しばらく使っていなかったrufoフォーマッタを久しぶりに設定してみました。 リポジトリ: ruby-formatter/rufo: The Ruby Formatter しかしrufoはデフォルトで引用符をダブルクォート"に揃える方針で、RuboCopはデフォルトではシングルクォート'に揃える方針になっている部分が真っ向からぶつかっています。 以下のCHANGELOGを見ると、Rufo 0.3.0からダブルクォートがデフォルトになっています。 rufo/CHANGELOG.md at master · ruby-formatter/rufo 最小限の共存 プロジェクトの現状に応じて、以下のいずれかの設定にすることで、引用符に関してはぶつからなくなります(他の設定の共存についてはここでは考えません)。なお自分はRufoに寄せました。 1. RuboCopに寄せる場合 # .rufo quot

                                          Ruby: RubocopとRufoを最小限に共存させてみた|TechRacho by BPS株式会社
                                        • Road to RuboCop 1.0

                                          RubyKaigi Takeout 2020 Day1 Video: https://www.youtube.com/watch?v=jkY7J9k6mHs&feature=emb_logo

                                            Road to RuboCop 1.0
                                          • RuboCop 本体から Rails Cops が外される - koicの日記

                                            次の RuboCop マイナーバージョンアップとなる 0.72 から Rails Cops が外されます。今後 Rails Cops を使う場合は Gemify された rubocop-rails gem を使うことになるため、昨日リリースされた RuboCop 0.71 から警告が出るようにしています。 github.com また rubocop -R/--rails オプションも同じタイミングで削除します。 github.com RuboCop 0.71 は移行期間としているため RuboCop の Rails Cops を使う場合は、以下のような設定を加えてください。 Gemfile に rubocop-rails gem を追加して bundle install する。 gem 'rubocop-rails' .rubocop.yml に require: rubocop-rail

                                              RuboCop 本体から Rails Cops が外される - koicの日記
                                            • RuboCop Philosophy

                                              プログラミング言語Ruby 30周年イベント ライトニングトーク https://30.ruby.or.jp/

                                                RuboCop Philosophy
                                              • 正規表現でかんたんにCopを書けるRuboCop拡張 rubocop-grep をリリースしました - pockestrap

                                                こんにちは。正規表現でかんたんにCopを書けるRuboCop拡張を作ってみたので紹介します。 github.com 使い方 まず、ほかのRuboCop拡張と同様にgemをインストールし、.rubocop.ymlのrequireにこのgemを指定してください。 この拡張は設定をしないと何も動きません。次のように.rubocop.ymlに設定をします。 Grep/Grep: Rules: # シンプルな例。正規表現にマッチした場合に、このCopが警告をします。 - Pattern: '\bENV\b' Message: Do not refer ENV directly. # パターンはArrayにして複数の正規表現を含めることができます。 - Pattern: - 'binding\.irb' - 'binding\.pry' Message: 'Debug code remains' #

                                                  正規表現でかんたんにCopを書けるRuboCop拡張 rubocop-grep をリリースしました - pockestrap
                                                • RailsエンジンをRuboCopで徹底的に分離する:前編(翻訳)|TechRacho by BPS株式会社

                                                  概要 原著者の許諾を得て翻訳・公開いたします。 英語記事: Isolating Rails Engines with RuboCop - Flexport Engineering 原文公開日: 2019/11/10 著者: Max Heinritz サイト: Flexport Engineering -- 流通系のシステムを手掛けている開発会社です 日本語タイトルは内容に即したものにしました。画像はすべて元記事からの引用です。 FlexportのメインとなるバックエンドサービスはRuby on Railsモノリスです。弊社を立ち上げた頃はRailsのおかげでビジネスを素早く進めることができました。しかし、成長著しいスタートアップによくあることではありますが、チームが育つに連れて複雑さを管理するのが困難になってきました。 当初はRailsの利便性のおかげで生産性が向上しましたが、今やそのせい

                                                    RailsエンジンをRuboCopで徹底的に分離する:前編(翻訳)|TechRacho by BPS株式会社
                                                  • 週刊Railsウォッチ(20190527-1/2前編)RuboCopが3分割へ、Railsリクエストのライフサイクル、Opal 1.0、Railsベンチマーク、Rubyパターンマッチングの現状ほか|TechRacho by BPS株式会社

                                                    2019.05.27 週刊Railsウォッチ(20190527-1/2前編)RuboCopが3分割へ、Railsリクエストのライフサイクル、Opal 1.0、Railsベンチマーク、Rubyパターンマッチングの現状ほか こんにちは、hachi8833です。Macbook Pro 2019をポチりそうになったのを危うく踏みとどまりました。 Macbook Pro の TouchBar要らないと言っているウェブ系エンジニアの皆様、WSL2とWindows terminal来たら開発環境という点でWindowsの評価急上昇の可能性あるので急がないなら待つのも手かと。 — masa寿司 (@masa_iwasaki) May 22, 2019 各記事冒頭には⚓でパーマリンクを置いてあります: 社内やTwitterでの議論などにどうぞ 「つっつきボイス」はRailsウォッチ公開前ドラフトを(鍋のよう

                                                      週刊Railsウォッチ(20190527-1/2前編)RuboCopが3分割へ、Railsリクエストのライフサイクル、Opal 1.0、Railsベンチマーク、Rubyパターンマッチングの現状ほか|TechRacho by BPS株式会社
                                                    • .rubocop.ymlシンプルに、ゆるめにやりたいんじゃ ·

                                                      はじめに CIで怒ってくるrubocop、たまにしかruby書かない人にとっては「煩わしい!!」 みたいな感想を持たれる印象があるので、最近は極力シンプルなルールにするようにしていっています。 最近rubocopが1.0になったし、このエントリではそれを晒してみます。 ちなみにrubocopのバージョンは1.3.1(最新)で、プロジェクトはrailsアプリの想定です。 .rubocop.yml はい: # .rubocop.yml inherit_from: .rubocop_todo.yml inherit_mode: merge: - Exclude require: - rubocop-performance - rubocop-rubycw AllCops: DisabledByDefault: true Exclude: - 'gems/**/*' NewCops: enable

                                                        .rubocop.ymlシンプルに、ゆるめにやりたいんじゃ ·
                                                      • Make rubocop 20x faster in 5 min

                                                        Yann PETITJEAN for Doctolib Engineering Posted on Aug 13, 2020 • Updated on Aug 15, 2020 If you want to have your code formatted by rubocop without waiting for seconds, you are reading the right article. At Doctolib, we have a lot of rubocop rules to keep our Ruby code readable by everyone. But not everyone is familiar with all these rules, and fixing them by launching the rubocop script in the te

                                                          Make rubocop 20x faster in 5 min
                                                        • スレッドセーフでない Dir.chdir の使用を RuboCop で禁止する / マスタカの ChangeLog メモ

                                                          週刊Railsウォッチ(20200225前編)RubyのShellwordsライブラリは知っておくべき、VCRはやはり有能、copを自作、Hix on Rails記事ほか|TechRacho(テックラッチョ)〜エンジニアの「?」を「!」に〜|BPS株式会社 RuboCopでコードレビュー支援: Net::HTTPを使わせないcop(Hacklines より) そういえば以前業務で似たことをやったので、メモがてら置いておきます。 Dir.chdir はスレッドセーフではない# Sidekiq で Dir.chdir を使ったら、他のジョブと干渉してハマりました。 Feature #9785: Feature Proposal: Dir.chdir Thread Safety - Ruby master - Ruby Issue Tracking System ↑ こちらの Issue を見つ

                                                          • The RuboCop Name Drama Redux

                                                            By now, if you’re part of the Ruby programming community, you’ve probably heard of the proposal to rename RuboCop and the unpleasant events that followed it. I really struggled with coming up with a name for this article, as there are many topics I wanted to touch upon (e.g. the burden of OSS stewardship, being respectful and adhering to the norms that once defined the Ruby community, creating a s

                                                            • RuboCopの実装に見る、Rubyの“破壊的変更”との正しい付き合いかた

                                                              Rubyはバージョンアップによって、やむなく旧バージョンとの互換性がなくなってしまうことがあります。それが破壊的変更です。後編では、静的コードアナライザーモジュールであるRuboCopのコミッターの@koic氏が、破壊的変更にタイルする実際の実装について紹介します。 Pull Requestは興味をもってもらうように書こう koic氏:コンテクストとして、なぜ必要かというところをまず書きます。CHANGELOGを辿るまで、まず何をすればいいかわからないと、もうけっこう致命的なんですけど。 実装ポイントとしても次のような話をします。どんなキーワード引数を使えばよいかというところ、それからメリットとして、ユーザーのアップグレードでの痛みは減らせますよといったような話。 そして実例ですよね。「Beforeがいきなりエラーになる。AfterはもうこのAPIは非推奨なので、新しいキーワード、これに置

                                                                RuboCopの実装に見る、Rubyの“破壊的変更”との正しい付き合いかた
                                                              • The Better RuboCop World to enjoy Ruby

                                                                The slide of my talk in RubyKaigi 2022. https://rubykaigi.org/2022/presentations/nay3.html#day3

                                                                  The Better RuboCop World to enjoy Ruby
                                                                • rubocop-daemon 裏話: OSS の苦悩

                                                                  「Omotesando.rb #95」で発表した LT スライドです。 https://omotesandorb.connpass.com/event/311351/

                                                                    rubocop-daemon 裏話: OSS の苦悩
                                                                  • rubocop -a と rubocop -A オプション - koicの日記

                                                                    RuboCop 0.87 がリリースされた。 github.com 今回の目玉は rubocop -a コマンドラインオプションへの非互換変更となる。 これまでは rubocop -a オプション (rubocop --auto-correct も同義) を使った場合に、自動修正を備えたすべての Cop が適用されたていた。そのため Safe でないと見なされる Cop の自動修正も適用されるというのがデフォルトの振る舞いだった。 今回のリリースからは rubocop -a は Safe とマークされている Cop のみが自動修正の対象となり、従来どおり自動修正を備えた Unsafe を含むすべての Cop を適用する場合は rubocop -A (rubocop --auto-correct-all) を実行することになる。つまり RuboCop 0.59 で導入された rubocop

                                                                      rubocop -a と rubocop -A オプション - koicの日記
                                                                    • キャッシュを利用してCircleCIのRuboCopを高速化する (35秒 -> 4秒)

                                                                      はじめに ローカル環境などでRuboCopを実行する際にはよしなにキャッシュが利用され、高速化が図られています。 一方で、CircleCI上ではそうはいきません。RuboCopのキャッシュディレクトリを設定し、設定したディレクトリをCircleCIの依存関係のキャッシュ[1]を用いて次回以降のジョブに使い回す必要があります。 そこで、以下をまとめました。 キャッシュの利用によってどの程度の改善が見込めるのか キャッシュの設定方法 キャッシュの有無による実行時間の比較 先にまとめを貼ります。 キャッシュの有無 RuboCop (秒) キャッシュのリストア (秒) 合計 (秒)

                                                                        キャッシュを利用してCircleCIのRuboCopを高速化する (35秒 -> 4秒)
                                                                      • 週刊Railsウォッチ(20200714後編)ruby-warning gemでワーニングを手軽に抑制、rubocop -aの振る舞いが変わる、書籍『MySQL徹底入門 第4版』ほか|TechRacho by BPS株式会社

                                                                        2020.07.14 週刊Railsウォッチ(20200714後編)ruby-warning gemでワーニングを手軽に抑制、rubocop -aの振る舞いが変わる、書籍『MySQL徹底入門 第4版』ほか こんにちは、hachi8833です。昨日のGitHubダウン皆さまお疲れさまでした。 解決したのでもう消えているが、問題発生中はSMSで経過を通知してもらうボタンが出てた。GitHub止まったときは使えそう。https://t.co/ZYHUjgtwrf — Daisuke Sawada (@daisuke7) July 13, 2020 ⚓Ruby ⚓ruby-warning: ワーニングにフックをかけるgem リポジトリ: jeremyevans/ruby-warning: Add custom processing for warnings 元記事: Rubyのwarningから不

                                                                          週刊Railsウォッチ(20200714後編)ruby-warning gemでワーニングを手軽に抑制、rubocop -aの振る舞いが変わる、書籍『MySQL徹底入門 第4版』ほか|TechRacho by BPS株式会社
                                                                        • Automate RuboCop ToDo fix

                                                                          Let me introduce rubocop-todo-corrector in this article. ToDo list based linting These days, many projects are using Lint tools to self-diagnose their code. e.g. ESLint for JavaScript rustfmt for Rust RuboCop for Ruby etc. RuboCop has the ability to detect existing offenses and automatically generate a file named .rubocop_todo.yml. This file acts as a to-do list, so we can gradually fix the offens

                                                                            Automate RuboCop ToDo fix
                                                                          • Rails 6.1で生成コードをRuboCop適用済みにする - koicの日記

                                                                            Rails 6.1 がリリースされたので、y-yagi さんによる待望のパッチが使えるようになった。 PR にあるように使い方はシンプルで、Rails 6.1 での config/environments/development.rb に以下の設定を足す。 config.generators.after_generate do |files| parsable_files = files.filter { |file| file.end_with?('.rb') } unless parsable_files.empty? system("bundle exec rubocop -A --fail-level=E #{parsable_files.shelljoin}", exception: true) end end RuboCop で Style/FrozenStringLitera

                                                                              Rails 6.1で生成コードをRuboCop適用済みにする - koicの日記
                                                                            • RubocopでRubyコードのスタイルを強制せず、バグだけ検出 - スタディサプリ Product Team Blog

                                                                              今回はRubyのRubocopの使い方のお話です。 Summary RubocopのLayout, Lint, Metrics, Styleらのcopのほとんどすべてをdisable 潜在的バグ発見に役立つ系のSecurity, Lintのcopの一部をenable rubocop:disable や .rubocop_todo.yml だけゆるく禁止 というルールで運用で一定の成功を上げているという報告です。 このルールは、Quipper (Tokyo) 社内のRubyアプリケーションのうち、複数のチームにまたがってメンテナンスされている、いわゆる境界的な位置に属するものだけを対象にしています。新しく書かれるコードの多くは個別チームがownershipをもってメンテナンスをするため、そちらではチームの合意で自由にRubocopの設定を導入したりしなかったりしますが、特定チームに寵愛を受け

                                                                                RubocopでRubyコードのスタイルを強制せず、バグだけ検出 - スタディサプリ Product Team Blog
                                                                              • 週刊Railsウォッチ(20200601前編)Active Recordに新機能「delegated typing」追加、RuboCopのデフォルト設定アンケートほか|TechRacho by BPS株式会社

                                                                                2020.06.01 週刊Railsウォッチ(20200601前編)Active Recordに新機能「delegated typing」追加、RuboCopのデフォルト設定アンケートほか こんにちは、hachi8833です。この記事↓にどよめきました👍🎉😂。 ⚓オープニングつっつき: 経産省のnpmモジュールが素晴らしい 元記事: 経産省発の npm モジュール!住所や電話番号の正規化、ジオコーディングなどができる IMI コンポーネントツールを試した! - Geolonia developer's blog サイト: IMI 情報共有基盤 コンポーネントツール 経産省が住所変換や法人種別名、電話番号の正規化に使えるIMIコンポーネントツールを公開しました。 ソースコードも公開。README にも使い方が丁寧に書かれていました。https://t.co/fPbV00EgZP 素晴ら

                                                                                  週刊Railsウォッチ(20200601前編)Active Recordに新機能「delegated typing」追加、RuboCopのデフォルト設定アンケートほか|TechRacho by BPS株式会社
                                                                                • RuboCop 1.24.0 と Ruby 3.1 対応 - koicの日記

                                                                                  RuboCop 1.24.0 がリリースされました。 github.com このリリースでは Ruby 3.1 のリリースに先行して、いくつかの Ruby 3.1 対応が入っています。 RuboCop の Ruby 3.1 対応の主だったものについて、ユーザー影響のありそうなものをピックアップして記しておきます。なお、現状で Ruby 3.1 サポートは experimental という位置づけです。 既存の Style/HashSyntax による hash value omission サポート 既存の Style/HashSyntax で、Ruby 3.1 の hash value omission をサポートするようにしています。 github.com bad / good は以下。 # EnforcedShorthandSyntax: always (default) # bad

                                                                                    RuboCop 1.24.0 と Ruby 3.1 対応 - koicの日記