並び順

ブックマーク数

期間指定

  • から
  • まで

41 - 80 件 / 85件

新着順 人気順

rubocopの検索結果41 - 80 件 / 85件

  • 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の日記
    • Slimcop

      SlimテンプレートにRuboCopを適用するツール、Slimcopをつくった。 https://github.com/r7kamura/slimcop 使い方 基本的には、RuboCopと同じような機能をSlimテンプレート向けに提供するツールとなっている。SlimcopはGemとしてインストールでき、CLI向けに slimcop というコマンドを提供する。実行すると、Slimテンプレート中に埋め込まれたRubyのコードを検出し、それらに対してRuboCopで検査を実行する。また特徴的な機能として、auto-correctにも対応している。 $ slimcop --help Usage: slimcop [options] [file1, file2, ...] -a, --auto-correct Auto-correct offenses. -c, --config= Specify

        Slimcop
      • 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
            • 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の日記
              • 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/06/05: 初版公開 2023/04/12: 更新 パーサー選択の影響 ここからは、うんとテクニカルな方面に舵を切りますので、ご自由に読み飛ばしていただいて構いません。ツールを支えるパーサーライブラリをどう選択するかについて議論したいと思います。パーサーにはさまざまな選択肢がありますが、実用上はRuby組み込み

                  RuboCop作者がRubyコードフォーマッタを比較してみた: 後編(翻訳)|TechRacho by BPS株式会社
                • Rubocop Performanceを測ってみた。中編 - アクトインディ開発者ブログ

                  morishitaです。 前回のエントリーの続き、rubocop-performanceの指摘事項について盲従せずに確認してみるシリーズの2回目です。 前編はこちら。 tech.actindi.net 計測について 計測には BenchmarkDriver を利用しました。 Rubocopのドキュメントに bad と good の例が掲載されていますが、基本的にはそれをBenchmarkDriverで計測してみて比較しました。 例をなるべく変更せずに計測する方針で行いましたが、文字列、配列、ハッシュなどは定数にして使い回すようにしています。 各 Cop が論点にしているポイントだけをなるべく計測するため、これらの生成コストを計測に含めないようにするためです。 計測に利用したコードはこのエントリにも掲載しますが、次のリポジトリにも置いておきます。 rubocop-performance-me

                    Rubocop Performanceを測ってみた。中編 - アクトインディ開発者ブログ
                  • Ruby: rubocopもすすめる速い書き方: Array#sampleとEnumerable#min_by|TechRacho by BPS株式会社

                    2019.10.10 Ruby: rubocopもすすめる速い書き方: Array#sampleとEnumerable#min_by 最近ちょくちょくfast-rubyを眺めています。 リポジトリ: JuanitoFatas/fast-ruby: Writing Fast Ruby -- Collect Common Ruby idioms. Rubyが速くなる書き方はいろいろありますが、常日頃kazzさんから「ビジネスロジックはしょっぱなから最適化するもんじゃないよ⚠️」「最初は素直に、可読性とプロジェクトの方針重視で書こう」「最適化は速度が問題になってからにすべき」とよく言われます。 まだ調べている途中ですが、fast-rubyで速いとされている書き方の多くは、rubocop様のお告げと必ずしも一致しなかったり、速い方と遅い方のどちらも何も言われなかったりします。 速い書き方に飛びつい

                      Ruby: rubocopもすすめる速い書き方: Array#sampleとEnumerable#min_by|TechRacho by BPS株式会社
                    • RuboCop Serves (Much) Faster

                      RuboCop’s motto has always been “The Ruby Linter that Serves and Protects”.1 Now, with the addition of a server mode in RuboCop 1.31 that motto is truer than ever! But first - a bit of background. Most people value speed and we’ve been on a decade-long journey in RuboCop to improve the performance: we’ve started with the Commissioner that triggered all cops during a single parser run for each file

                      • Railsプロジェクトを引き継いでから安定させるまでに行ったこと - UUUMエンジニアブログ

                        nazoです。現在は厳密には攻殻機動隊(システムユニット)ではないのですが、開発に関する大きな動きがありましたのでまとめてみたいと思います。 何の話? LMND というシステムがあるのですが、これの開発を急ピッチで進めたいという事で急遽移動することになり、快適な開発環境になるまでに行ったことについての話になります。 LMNDのサービスの詳細についてはここでは割愛させて頂きますが、システム的にはRails4系にMySQLという、少し古いものの一般的な構成で作られたものになっております。2018年9月に吸収合併を行ったのですが、その際に開発体制が完全内製に切り替わってしまったため、引き継ぎがほとんどない状態から体制が切り替わってしまったという状態になります。社内の開発者が先に割り当てられていたのですが、困っているので助けてくれということで私が途中から入ることになりました。 作り直すかどうか 事

                          Railsプロジェクトを引き継いでから安定させるまでに行ったこと - UUUMエンジニアブログ
                        • RubyKaigi Takeout 2020 に登壇した - koicの日記

                          RubyKaigi Takeout 2020 に登壇した。 本編登壇は RubyKaigi 2018 以来 2 回目。去年 RubyKaigi 2019 では LT 登壇で TracePoint を使うことによって仕込んでしまったバグの話をしていた。 今回のスライドは以下です。 RuboCop 1.0 に向けた話 本編から RuboCop 1.0 に向けた話をいくつかピックアップしておきます。後述の収録への問題があったため、特に終盤テンポが上がっていることからテキストとして少し補足しておきます。 拡張 API の変更 拡張 Cop の開発者向けの API は以下のように変更になります。 これまでの API: class CustomCop < Cop def on_send(node) end def autocorrect(node) end end これからの API: class C

                            RubyKaigi Takeout 2020 に登壇した - koicの日記
                          • 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/29: 初版公開 2023/03/30: 更新 エディタとの統合 人間は、最終的にフォーマッタと直接やりとりすることはほとんどありません。フォーマッタとのやりとりは、自分好みのエディタ1やIDEで行うのが普通でしょう。エディタと統合しやすいようにコードフォーマッタを設計することは重要です。 外部のコードフォ

                              RuboCop作者がRubyコードフォーマッタを比較してみた: 中編(翻訳)|TechRacho by BPS株式会社
                            • Railsでcontent_tagメソッドの代わりにtagメソッドに使う - koicの日記

                              Rails で content_tag メソッドの代わりに tag メソッドに使うように促す cop を次の RuboCop Rails 2.6.0 で導入する予定です。 github.com 以下、bad ケースと good ケースをサンプルから抜粋します。 # bad content_tag(:p, 'Hello world!') content_tag(:br) # good tag.p('Hello world!') tag.br 2020年5月14日追記 第一引数に変数をとるケースについては、public_send を使うくらいなら content_tag を使う方が良さそうです。 呼ばれてないけど、public_sendとか見苦しすぎるので、「content_tag の第一引数が変数の場合は無視する」じゃないすかね。— Akira Matsuda (@a_matsuda) 20

                                Railsでcontent_tagメソッドの代わりにtagメソッドに使う - koicの日記
                              • Rubocop でカスタムルールを作る - Money Forward Developers Blog

                                こんにちは。 マネーフォワードでサーバーエンジニアをやっている江口です。 先日、開発中のプロダクトに Rubocop のカスタムルールを追加するチャレンジをしてみました。 その中で、手を動かしながら調べた内容をご紹介したいと思います。 Rubocop を全く知らない方でも読み物になるように、大まかな概要をおさらいしたうえで、本題に入ります。 Rubocop とは プログラマは誰しも、わかりやすさのため、あるいは効率化のために、自分なりのルールを守ってプログラムを書いています。わざわざ明示的に定めていないかもしれませんが、下記のようなルールはどのようなプログラムであっても満たすべきでしょう。 インデントを揃える 未使用変数を使わない if 文で2回以上同じ分岐をしない Rubocop は、Ruby プログラムがこのようなルールを満たしているかチェックするツールです。変更を加えるときに Rub

                                  Rubocop でカスタムルールを作る - Money Forward Developers Blog
                                • 古くなってしまったrubocopを最新まで一気に上げたい人へ贈るバージョンアップの向き合い方 - Qiita

                                  rubocopは定期的に新バージョンがリリースされていますが、最新もしくはそれに近いバージョンにきっちり保てているプロジェクトは案外少ないのではないでしょうか。 2023年の3月末でRuby2.7のサポートが終了するのですが、3.0移行のrubyでrubocopを動かすにはrubocopのバージョンを1.0.0以上にあげる必要があります。 上記の都合から慌ててrubocopのバージョンを上げる必要になった方もいると思います。 しかし、一気に全部やろうとすると、チーム開発であれば他のメンバーの開発とコンフリクトしますし、長時間対応している間に新しいバージョンが出て規則が追加されるので全部対応しきるのは難しいです。 この記事では、そんなrubocopで疲弊する未来が見えた読者の方へ愚直に向き合いすぎないrubocopのバージョンアップ方法を授けます。 とりあえずバージョンを上げる まず兎にも角

                                    古くなってしまったrubocopを最新まで一気に上げたい人へ贈るバージョンアップの向き合い方 - Qiita
                                  • Minitest Style Guide

                                    This Minitest style guide outlines the recommended best practices for real-world programmers to write code that can be maintained by other real-world programmers. RuboCop, a static code analyzer (linter) and formatter, has a rubocop-minitest extension, provides a way to enforce the rules outlined in this guide.

                                    • RuboCop in 2021: Stable and Beyond

                                      RubyKaigi Takeout 2021 https://rubykaigi.org/2021-takeout

                                        RuboCop in 2021: Stable and Beyond
                                      • Rails: 最近のRuboCop更新をrubocop.ymlで有効にした|TechRacho by BPS株式会社

                                        自分のRails環境でしばらくぶりにrubocop -aをかけてみたところ、以下のメッセージがどどどっと表示されました。 The following cops were added to RuboCop, but are not configured. Please set Enabled to either `true` or `false` in your `.rubocop.yml` file: - Layout/EmptyLinesAroundAttributeAccessor (0.83) - Layout/SpaceAroundMethodCallOperator (0.82) - Lint/DeprecatedOpenSSLConstant (0.84) - Lint/DuplicateElsifCondition (0.88) - Lint/MixedRegexpCaptu

                                          Rails: 最近のRuboCop更新をrubocop.ymlで有効にした|TechRacho by BPS株式会社
                                        • It's official: the Standard Ruby VS Code extension

                                            It's official: the Standard Ruby VS Code extension
                                          • RuboCop is 何? - Qiita

                                            $ rubocop # 解析して結果をターミナルに吐き出す。 $ rubocop --help # ヘルプを参照できます。 $ rubocop --lint( または rubocop --rails ) # チェック規則は以下の4つに分類されますが --lint がLintのみチェック、 --rails がRailsのみチェック # ------------------------------------------------------------------------- # 1 Style (スタイルについて) # 2 Lint (誤りである可能性が高い部分やbad practiceを指摘する) # 3 Metrics (クラスの行数や1行の文字数などに関して) # 4 Rails (Rails特有のcop) $ rubocop --auto-gen-config # .ruboc

                                              RuboCop is 何? - Qiita
                                            • RuboCopの解析バージョンサポートを見直した - koicの日記

                                              RuboCop は Ruby の EOL バージョンについて、EOL の 1年後までサポートしています。 RuboCop の Ruby バージョンサポートといった時に「ランタイムバージョン」と「解析バージョン」の 2 つがあり、このエントリを書いている時点の最新 RuboCop 1.30 リリースまで、このふたつのバージョンが混同された状態でライフサイクルを共にしていました。 ここでそれぞれのバージョンをおさらい。 ランタイムバージョン ... RuboCop を実行する Ruby のバージョン。rubocop コマンドを実行する ruby 処理系のバージョンです。 解析バージョン ... RuboCop が解析する Ruby コードのバージョン。.rubocop.yml の TargetRubyVersion などで指定しているバージョンです。詳しくはこちらの過去記事をどうぞ。 例えば

                                                RuboCopの解析バージョンサポートを見直した - koicの日記
                                              • RuboCop で違反してるコードを自動的に修正する PR 作ってくれたら嬉しいやろ。できるでそれ。 - 逃げる8回で会心の一撃

                                                久々の更新は Rubocop Challenger の話です。 このブログでは触れたこと無かったですが、 そういう gem も作ってます。 自動的に .rubocop_todo.yml から Cop supports --auto-correct. になってる Cop を拾ってきて PR 作ってくれるやつです。 ちょうど hey 社の CTO の藤村さんが同じ事をやっていてちょっとバズってたんですが、自分の gem 使ってほしかったなーと地味に思ってたりします。自分が世の中に対してアピールが足りてなさすぎましたね 😇 tech.hey.jp 何年か前に会社のブログで書いたりはしてたのでリンク貼っておく ✍ developer.feedforce.jp Rubocop Challenger v2.3.0 をリリースしました 🚀 github.com とはいえ新機能は一つだけで、 auto

                                                  RuboCop で違反してるコードを自動的に修正する PR 作ってくれたら嬉しいやろ。できるでそれ。 - 逃げる8回で会心の一撃
                                                • RuboCop Rails (rubocop-rails) のリリース内容で Rails の情報をキャッチアップする - Qiita

                                                  この記事は? Ruby の静的コード解析の定番 Gem の RuboCop。そのひとつひとつのルールのことを Cop と呼びます。そして、RuboCop Rails は Rails 向けのルールを RuboCop に追加するための Gem です。 ふと、RuboCop Rails で追加された Cop (ルール) を確認することで、Rails の知らない機能を知るいい機会になるのではと思いました。そこで、試しに 2022/09/09 (金) にリリースされたバージョン 2.16.0 の内容を見てみました そうすると、案の定知らないことばかりで非常に勉強になりました!そこで、実際にどんな学びがあったかこの記事で共有したいと思います 🙌 例: RuboCop Rails 2.16.0 追加された Cop #714: Add new Rails/FreezeTime cop. travel_t

                                                    RuboCop Rails (rubocop-rails) のリリース内容で Rails の情報をキャッチアップする - Qiita
                                                  • RuboCop 1.5で導入された`SuggestExtensions`パラメータ - koicの日記

                                                    RuboCop 1.5で導入されたSuggestExtensionsパラメータについて記しておきます。 導入されたパッチは以下です。 github.com たとえば Bundler を使って RSpec を依存指定している一方で、RuboCop RSpec を使っていない場合は、以下のように RSpec に対応した拡張 RuboCop が存在することを rubocop コマンド実行のメッセージでサジェスチョンします。不必要な場合はメッセージ中に含まれている方法でオプトアウトできます。 % bundle exec rubocop --parallel (snip) Tip: Based on detected gems, the following RuboCop extension libraries might be helpful: * rubocop-rspec (http://gi

                                                      RuboCop 1.5で導入された`SuggestExtensions`パラメータ - koicの日記
                                                    • rubocop-migration

                                                      rubocop-migrationというGemをつくった。 ActiveRecordのmigrationでハマりがちな罠を回避したり、記法に一貫性を持たせるための、RuboCop向けのCopをまとめたライブラリである。例えば、テーブルへの読み書きをブロックしてしまうようなMigrationの書き方を検知し、それがもし別の方法で回避可能なものであれば違反とする、といったCopが含まれている。 背景としては、先週にstrong_migrationsの話を見かけ、RuboCopから使える形で提供されていると便利そうだと思い用意した。実際、ほとんどのCopはこのライブラリの内容を参考に実装している。 異なる点として、strong_migrationsだと検知させるためにアプリケーションのコードに変更が必要で、またデータベースへの接続も要求される。一方で、rubocop-migrationはこの辺を

                                                      • RailsエンジンをRuboCopで徹底的に分離する:後編(翻訳)|TechRacho by BPS株式会社

                                                        概要 原著者の許諾を得て翻訳・公開いたします。 英語記事: Isolating Rails Engines with RuboCop – Flexport Engineering 原文公開日: 2019/11/10 著者: Max Heinritz サイト: Flexport Engineering — 流通系のシステムを手掛けている開発会社です 日本語タイトルは内容に即したものにしました。画像はすべて元記事からの引用です。 RailsエンジンをRuboCopで徹底的に分離する:前編(翻訳) (前編の続き) 実際に使ってみる 弊社では2019年初頭からエンジン分離copを使い続けて成功を収めています。今やコードベースには40個のエンジンができあがり、Rubyコードの35%を締めています(cloc appとcloc engines/**/appの比較)。このcopは、既存コードのリファクタリ

                                                          RailsエンジンをRuboCopで徹底的に分離する:後編(翻訳)|TechRacho by BPS株式会社
                                                        • RuboCopのServer Modeで高速lint/formatする with Docker

                                                          以前、rubocop-daemonをDocker環境で動かしてvscodeで高速にformat on saveする記事を書きました。 この記事ではサードパーティのライブラリのfork + 自前のクライアントスクリプトで実現していましたが、2022年6月末にリリースされたRuboCop 1.31より、同じことを実現するServer Modeが公式に実装されたようです。 というわけで、こちらでも同様にDocker環境 + vscodeで動かしてみました。 挙動や仕様を探ってみる まずはServer Modeを軽く動かしてみて挙動や仕様を確認してみます。 最低限rubocopが動くRuby on Dockerな開発環境を作り、そこで動作確認をしたあとにvscodeに組み込んでいく流れを想定しています。なお完成品のリポジトリがこちらです。sinatraのサンプルコードにrubocopを入れただけの

                                                            RuboCopのServer Modeで高速lint/formatする with Docker
                                                          • RuboCop 1.0

                                                            If at first you don’t succeed, call it version 1.0. RuboCop’s development started exactly 8 and half years ago. I made the first commit on April 21, 2012. That’s a lot of time in general, but even more in the fast moving world of IT. During this long period we’ve racked up some impressive numbers: 9905 commits 152 releases around 3500 closed issues almost 5000 merged pull requests over 120 million

                                                            • Rubocop Performanceを測ってみた。後編 - アクトインディ開発者ブログ

                                                              morishitaです。 前々回、前回から続くrubocop-performanceの指摘事項について盲従せずに確認してみるシリーズの最終回です。 前編、中編はこちらです。 tech.actindi.net tech.actindi.net 計測について 計測には BenchmarkDriver を利用しました。 Rubocopのドキュメントに bad と good の例が掲載されていますが、基本的にはそれをBenchmarkDriverで計測してみて比較しました。 例をなるべく変更せずに計測する方針で行いましたが、文字列、配列、ハッシュなどは定数にして使い回すようにしています。 各 Cop が論点にしているポイントだけをなるべく計測するため、これらの生成コストを計測に含めないようにするためです。 計測に利用したコードはこのエントリにも掲載しますが、次のリポジトリにも置いておきます。 ru

                                                                Rubocop Performanceを測ってみた。後編 - アクトインディ開発者ブログ
                                                              • RuboCopのLSPを使ったらとても便利だった - 出る杭は打たれない

                                                                フィヨルドブートキャンプのDiscordにRuboCopでLSPが標準搭載されたお知らせがありました。 koic.hatenablog.com そもそもLSPが何かも分かってなく・・・気になったため早速インストールして使ってみました。 LSPとは qiita.com language serverとは、IDEが必要とするプログラムのプロジェクト ソースを解析して情報を提供する機能を、サービスとして実現するものです。language serverがサポートされたIDEでは、型やメンバーの自動補完、変数やメンバーの定義参照、変数やメンバーの利用箇所の検索、コードの自動フォーマット、コードのエラー分析や修正案の提示といった、さまざまな機能を実現できます。 docs.rubocop.org Offense detection and autocorrection are performed in

                                                                  RuboCopのLSPを使ったらとても便利だった - 出る杭は打たれない
                                                                • Configuration :: RuboCop Docs

                                                                  The behavior of RuboCop can be controlled via the .rubocop.yml configuration file. It makes it possible to enable/disable certain cops (checks) and to alter their behavior if they accept any parameters. The file can be placed in your home directory, XDG config directory, or in some project directory.

                                                                  • graphql-ruby 関連の CustomCop を作ってみる - やなぎにっき

                                                                    この記事は 🎅GMOペパボエンジニア Advent Calendar 2023 - Adventar 11日目の記事です🎅🎄 adventar.org 私が所属しているminneのプロダクトではGraphQLを採用しています。 Ruby on Rails で開発するにあたり、以下のGemを使用しています。 graphql-ruby GraphQL - Welcome rubocop-graphql ( graphql-ruby用の拡張cop ) GitHub - DmitryTsepelev/rubocop-graphql: Rubocop extension for enforcing graphql-ruby best practices 普段開発している中で rubocop-graphql にあるcopだけでなく、「こういうcopがあればいいな」と思うことがしばしばあるので作っ

                                                                      graphql-ruby 関連の CustomCop を作ってみる - やなぎにっき
                                                                    • GitHub - DmitryTsepelev/rubocop-graphql: Rubocop extension for enforcing graphql-ruby best practices

                                                                      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

                                                                        GitHub - DmitryTsepelev/rubocop-graphql: Rubocop extension for enforcing graphql-ruby best practices
                                                                      • Redis のパフォーマンス問題を RuboCop で検知 - ESM アジャイル事業部 開発者ブログ

                                                                        ソフトウェアエンジニアの 9sako6 です。 Ruby でソフトウェアを開発する際、パフォーマンス低下を引き起こすような良くない Redis のクエリが入り込まないよう RuboCop に見張ってもらうようにした話をします。 パフォーマンス低下の実例 私が開発に参加している Web サービスでは、Redis の不適切な使い方がボトルネックとなっていくつかのページのレイテンシーが高まっていました。 主に悪さをしていたのは KEYS クエリです。 KEYS クエリの平均処理時間は約 430 ms でした。これが Web ページのレイテンシーに含まれるのはかなり痛いです。 公式ドキュメント (https://redis.io/commands/keys/ )には、はっきりと本番環境での使用に注意するよう書いてあります。 Warning: consider KEYS as a command t

                                                                          Redis のパフォーマンス問題を RuboCop で検知 - ESM アジャイル事業部 開発者ブログ
                                                                        • rubocopでの自動フォーマットを高速化する - $shibayu36->blog;

                                                                          VSCodeでrubocopを使って自動フォーマットをしているのだが、フォーマットが本当に遅くてめちゃ困っていたのが完全に解決して感動したので記事だけ共有。 dev.to formatに3秒くらいかかっててマジつらい...って感じだったのが1秒未満とかになったので本当に最高。 Before After

                                                                            rubocopでの自動フォーマットを高速化する - $shibayu36->blog;
                                                                          • vscodeでrubocopのAutoCorrectを使う方法 - rochefort's blog

                                                                            ググると、rufoやprettierというフォーマッター使う事例がありましたが、rubocop単体できた方が望ましいので 調べてやって見ました。 プラグイン misogi/vscode-ruby-rubocop: Rubocop extension for Visual Studio Code こんな感じで動作してくれます。 素晴らしい。 問題点 2つ挙げられています。 1つ目は、rvm or chruby だとうまくいかないらしいですが、とりあえずrbenvだと動作したので気にしないことにします。 This extension may have a problem when using a rvm or chruby environment. We recommend vscode-ruby. It can also lint ruby code. When autoCorrect, H

                                                                              vscodeでrubocopのAutoCorrectを使う方法 - rochefort's blog
                                                                            • RubocopでデフォルトOFFにされているものたち - Qiita

                                                                              概要 Rubocop には現在400弱の Cop が存在するが、config/default.yml にて Enabled: false とされているものについては、明示的に有効化しないとチェックしてくれない。 そこで、デフォルトでオフになっている Cop にはどんなものがあるのかを調べた。 2019/11/12 時点での master ブランチ。バージョンは 0.76。 Bundler/GemComment Layout/ClassStructure Layout/FirstArrayElementLineBreak Layout/FirstHashElementLineBreak Layout/FirstMethodArgumentLineBreak Layout/FirstMethodParameterLineBreak Layout/HeredocArgumentClosingPa

                                                                                RubocopでデフォルトOFFにされているものたち - Qiita
                                                                              • Rails 8 adds Rubocop by default to new applications

                                                                                RuboCop is a static code analyzer also linter and code formatter for the Ruby programming language. It will enforce the guidelines outlined in the community Ruby Style Guide. It helps developers in ensuring adherence to coding style standards, identifying potential code flaws, and enhancing the overall quality of the codebase. In addition to identifying code problems, RuboCop also automatically co

                                                                                  Rails 8 adds Rubocop by default to new applications
                                                                                • Rails の Service クラスの運用を CustomCop で厳格にする - Timee Product Team Blog

                                                                                  タイミーでバックエンドエンジニアをしている新谷 id:euglena1215 です。 今回は社内で決めたコーディングルールに強制力を持たせるために CustomCop を作った話を紹介します。 背景 タイミーの Rails アプリケーションには /app/services ディレクトリがあり、 Service クラスが存在しています。 これまで社内で Service クラスは、なるべく使わない方が好ましいものの、どんな時に使っていいかは特段明言されていない状況でした。 その結果かは分かりませんが、一部の機能では Service クラスを多用し Service クラスが Service クラスを呼んでいるなど複雑になっており、コードリーディングの負荷が高まっていました。 この現状に課題感を持った @rhiroe が以下のような問題提起を行いました。 この問題提起を受け、チーム横断の技術領域ご

                                                                                    Rails の Service クラスの運用を CustomCop で厳格にする - Timee Product Team Blog