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
Conformance checkingThe markup needs to written valid code. This is important to keep the promise of the standards that do not break webpages through each user agent. Markuplint can conformance checking given the specs that are HTML Standard, WAI-ARIA, and more. On Your House RulesYou may have the house rules on your project or your organization. You can check based on your policy or your manageme
ESLint は関連するパッケージが多く、また、活発に開発されていることもあり、設定するのに一苦労ということも多いツールです。そういった方向けに ESLint の設定を作るための基礎的な説明を書いてみました。 設定ファイルの拡張子 設定用のファイルとしてプロジェクトのルートディレクトリーに .eslintrc.yml もしくは .eslintrc.json を作成しましょう。一般的な開発用途であれば YAML か JSON で事足りるからです。 YAML と JSON のどちらを選ぶかはお好みでどうぞ。ちなみに ESLint は .eslintrc.* もしくは package.json 内の eslintConfig 設定を読んでくれます。 また、 package.json 内に設定を書くのは避けましょう。様々な理由で package.json は変更されるため、 Git 管理下において
We are thrilled to announce that oxlint is now generally available! This milestone signifies our team's ability to promptly address and triage issues. Oxlint is a JavaScript linter designed to catch erroneous or useless code without requiring any configurations by default. How to Use At this stage, oxlint is not intended to fully replace ESLint; it serves as an enhancement when ESLint's slowness
Debugging asynchronous code in JavaScript can feel like navigating a minefield at times. You don't know when and where the console.logs will print out, and you have no idea how your code is executed. It's hard to correctly structure async code so it executes in the right order as you intend it to. Wouldn't it be nice if you had some guidance while writing asynchronous code, and to get a helpful me
As of ESLint v9,0.0, the new configuration system has reached general availability, bringing with it many benefits. Configuration files are now easier to manage and more transparent to compose. However, it can still be non-trivial to understand which rules are enabled and disabled for specific files, especially when your configuration is complex or composed from multiple sources. That’s why we are
The release of ESLint v9.0.0 brought with it the rollout of the new configuration system, but also a series of changes to the rules API. These changes are necessary in order to prepare ESLint for implementing language plugins, which will give ESLint the ability to natively lint languages other than JavaScript. As a result, plugin authors needed to update their rules to work with v9.0.0, and unfort
大阪オフィスの玉井です。 プログラミング言語の書式をいい感じに修正してくれるツールは色々ありますが、SQL用って意外とありませんよね。下記のカンファレンスでSQLFluffというツールの存在を知ったので、使ってみました。 検証環境 macOS Catalina 10.15.7 Python 3.8.2 pip 19.2.3 インストール SQLFluffは、Python3系がPCにインストールされている必要があります。 インストールには、pipを使います。 $ pip install sqlfluff 正しくインストールされているか確認するために、SQLFluffのバージョンを確認します。 $ sqlfluff version 0.3.6 とりあえず試してみる(lint) まず、基本となるlintコマンドを試してみたいと思います。これは、SQL文の書き方としておかしい部分をチェックしてくれ
こんにちは。cybozu.com Cloud Platformチームの pddg です。Cloud Platformチームでは現在、精力的に cybozu.com のインフラ基盤の移行に取り組んでいます*1。その取り組みの一環として、gRPCを用いたスキーマファーストな開発を推進しています。 今回はスキーマを記述したprotoファイルのレビューにおいて一部のレビュー項目をCIで自動的に確認されるようにし、レビュワーの負荷を軽減できたのでその方法についてご紹介します。 ※ これは Cybozu Advent Calendar 2022 15日目の記事です。 背景 cybozu.com のバックエンドでは、これまではサービスのAPIのスキーマをドキュメント等によりカバーしてきました。これはその実装チームが整備し、適宜更新していくものを指します。しかし、こういったドキュメントはしばしばメンテされ
A set of conventions and guidelines for writing SQL at GitLab SQL Style Guide This guide establishes our standards for SQL and are enforced by the SQLFluff linter and by code review. The target code changes that this stile guide apply to are those made using dbt. If you are not on the Data Team or you are developing SQL outside of dbt, keep in mind that the linting tools may be more difficult to a
golangci-lint is a fast linters runner for Go. It runs linters in parallel, uses caching, supports YAML configuration, integrates with all major IDEs, and includes over a hundred linters. Join our slack channel by joining Gophers workspace and then joining channel #golangci-lint. Follow the news and releases: Features⚡ Very fast: runs linters in parallel, reuses Go build cache and caches analysis
この記事は何? Python 開発における リンターの利点 数ある Python リンターの違い・特徴 導入方法 おすすめの設定 リンターを(部分的に)無効化する方法 を紹介しています。 昨今の状況を踏まえた上で、多くのプロジェクトで適用できる構成になっていると思います。 リンターって何? コードをチェック・解析するツールのことです。静的解析ツールとも呼ばれます。参考)lint (Wikipedia) 導入することで、以下の効果が得られます。 バグの発生が減る 保守性の高いコードを書けるようになる チーム内でのコーディング規約(コードの書き方のルール)を自動的に守れるようになる リンターが簡易自動テストのように働く場面もある 本稿では「チェックするだけでなく、自動であるべき形に整形までしてくれる」フォーマッターについても、リンターとして扱い紹介します。 リンターが導入されない理由 リンター
protolint is the pluggable linting/fixing utility for Protocol Buffer files (proto2+proto3): Runs fast because this works without compiler. Easy to follow the official style guide. The rules and the style guide correspond to each other exactly. Fixer automatically fixes all the possible official style guide violations. Allows to disable rules with a comment in a Protocol Buffer file. It is useful
textlintのルールに文章中のリンク先URLがアクセスできなくなってないかをチェックするtextlint-rule-no-dead-linkというルールがあります。 textlint-rule-no-dead-linkは実際にURLにリクエストを送ることでアクセスできるかをチェックするため、URLの数が多くなるとものすごく時間がかかります。 また、GitHubのように同一IPからのアクセスが連続すると429 too many requestsなどのエラーを返すサイトもあります。 textlint-rule-no-dead-linkはRetry-Afterヘッダを見てリトライにも対応していますが、このリトライの間隔が長いサイトもあるため、リンク切れのチェックはコミット時にやるのには向いてない作業と言えます。 GitHubでは、GitHub Actionsを使ってschedule実行に対応
あまり見ない気がするので書きました。特徴は、 lint, testなどの各ジョブが並列に動く(ジョブ実行数を多くしてないとdocker containerの立ち上げ分むしろ全体時間はロスになることもあるが…)。 Travis CI のマトリクスビルド に近いことを、 parameters: を使ってやっている。 rust-toolchain ファイル に書かれたバージョンと、 .circleci/config.yml に書かれた MSRV (Minimum Supported Rust Version) の2つでビルドしている。 cargo-readme を使ってrustdocとREADMEを比較し、どちらかがメンテされていない場合にエラーにする(お好みで)。 キャッシュ使う。 あたりです。見慣れなさそうなところはインラインコメント付けましたので参考にしてください 💁♀️ 更新履歴 2
This article was discussed on Hacker News. This is a continuation of my last post on how to write a tree-sitter grammar in an afternoon. Building on the grammar we wrote, now we’re going to write a linter for Imp, and it’s even easier! The final result clocks in less than 60 SLOC and can be found here. Recall that tree-sitter is an incremental parser generator. That is, you give it a description o
ESLint の設定、見直せてますか? スタディスト 開発部 技術支援ユニットの笹木 (@s_sasaki_0529) です。 今回は ESLint の設定を ESLint でテストする という一見奇妙な表題で、 ESLint 設定周りの課題を解決したお話をします。 https://eslint.org/課題感ESLint には標準で多数のルールが組み込まれており、それぞれに詳細なオプションが用意されています。それに加えて、豊富なサードパーティ製のルールや、設定を継承する仕組み(extends) まで揃っているため、設定パターンは無限にあると言っても良いでしょう。 コードベースが小さいうちは、 eslint:recommended のような推奨設定を継承するだけで、すぐにベストプラクティスを実践することができます。 しかし、Vue や TypeScript といった技術構成や、Pretti
Rust製TypeScript LinterであるBiome, Oxc, deno_lintなどは、TypeScriptの型情報を利用するLintルール(型情報Lintルール)[1]を持っていません。本記事では、その背景から、Rust製TypeScript Linterが型情報Lintルールを実現するための手段についてまとめます。 筆者のTSKaigi 2024で利用した下記登壇資料に情報を追加し、文章化したものです。 要約すると、以下になります。 Rust製TypeScript Linterは、安全性をさらに高めてくれるtypescript-eslintの型情報Lintルールが欲しいが、パフォーマンスを犠牲にしたくない。TypeScript Compilerに頼らずに実現するには、Alternative TypeScript Compilerや型推論が必要。型情報Lintルールの実装を型
OSS の Python ライブラリ開発をする機会があり、コードを綺麗に保つ環境を整えた方が良いだろうということで、 pysen を導入してみました。 この記事では、 pysen をしばらく使ってみた感想を書きました。 Pythonのlinterとformatter Python Enhancement Proposal(PEP) という Python に関するドキュメント集があり、そのうち、8 番目の PEP 8 が Style Guide for Python Code について書かれています。コーディング規約はこの PEP 8 を基準に考えられているそうです。 https://www.python.org/dev/peps/ linter このコーディング規約を支援するツールあり、linter はコーディング規約を守っているかチェックするツールです。 代表的なものとしては次のようなも
業務でeslintとprettierの設定をいじることがあって、そういえばこの2つってどう設定するのがベストなんだっけってなって調べた時のメモ 公式推奨の形もいつのまにやら変わっていて自分が知っている方法ではなかった あと副業でhuskyを設定する機会もあったが、バージョンアップで仕様が変わっていたのでまとめる これらについてはすでにいくつか記事が見られるが、備忘録も兼ねてここでアウトプットしておく 結論、今はeslint-config-prettierのみ設定するのが公式推奨の形 eslint-plugin-prettierとeslint-config-prettier 2020年6月まではeslintとprettierを両方使う場合はeslint-plugin-prettierとeslint-config-prettierの両方を使うのが推奨されていたらしい ただ、今はeslint-p
Early Access Program IntelliJ IDEA Java News Tools Early Access Program for Qodana, a New Product That Brings the “Smarts” of JetBrains IDEs Into Your CI Pipeline JetBrains IDEs are well known for their ability to understand code. They can track declarations, check references and types, and collect possible execution paths. Thanks to all this static analysis, you are able to rename and move things
DMM Advent Calendar 2019本記事は DMM Advent Calendar 2019 の 9日目 の記事です。 私は現在、DMM.com の CDS というチームに所属し、 主にユーザレビュー基盤 のバックエンドを開発しています。 今回は、Go用Linterである GolangCI-Lint を軽く紹介した後に、 GolangCI-Lint のハマリポイントとその解決策である設定周りの話をします。 Linter 導入していますか?突然ですが、みなさんの開発環境には Linter が導入されているでしょうか? 私の所属するチームでは、 コーディング規約違反 および コンパイラでは見つけられないエラー を検知するために、 ローカルと CI において Linter を回すようにしています。 GoにおけるLinterGoの場合、Linterがデフォルトで用意されているうえに、
はじめに ある日、クリーンアーキテクチャで定義した各レイヤーの依存関係が正しいかどうかを ESLint がチェックしてくれると楽だよねという話が出た(今のプロジェクトではこのような構成を取り入れております) ESLint に追加したいルールの要件を整理してみるとわざわざ plugin として公開するほど汎用的なものでもないと思い、プロジェクト内で完結する ESLint の独自ルールを作ってみたというお話 ゴール 下記に示すディレクトリ構成で以下の条件をチェックしたい domains配下のファイルはinfrastructures、adapters, usecases, view-modelsを import しない usecase配下のファイルはinfrastructures、adaptersを import しない view-models配下のファイルはinfrastructures、ad
Over 90× faster than ESLint, quick-lint-js gives you instant feedback as you code. Find bugs in your JavaScript before your finger leaves the keyboard. Lint any JavaScript file with no configuration. const occupation = language + " coder"; const language = "JavaScript"; occupation = "Senior " + occupation; E0057 - use of undeclared variable: ocupationconsole.log(`Welcome, ${ocupationoccupation}!`)
とはいえ, まるっと設定を実施するのでいずれ上記は別の箇所に移動していきます。 ESLint の初期設定 公式の Getting Started を参考に実施していきます。 簡単に eslint --init を使って, 構成ファイル生成とライブラリのインストールをやります。(eslint をグローバルインストールしたくないので, 公式通りに便利な npx で実施していきます) ちなみに, 公式の Getting Started の先頭の npm install eslint --save-dev を飛ばしているのは, eslint --init の最後で npm install に誘導してくれるからです。 ? What type of modules does your project use? … ❯ JavaScript modules (import/export) CommonJ
Time in milliseconds to lint and format popular repositories. Lower is better. A hand-written parser also opens the door to future optimizations and improvements, especially in error recovery. Read on for discussion of the major changes, or take a look at the changelog. A hand-written parser # Parsers form the foundational layer of any static analysis tool, transforming raw source code into Abstra
この記事は、 「ESLintとか使ってたけど、もしかしてCSS向けにもあるのでは...? あるやんけ!あとはこれをESLintみたいな感じでVSCodeでいい感じに保存時にフォーマットかけられれば死角なしや!」 っていう人向けです。 環境 VSCode 1.12.2 Node.js 14.13.0 (あまり関係ないです) 導入 Nodeのセットアップ まずは、必要なパッケージをインストールしていきます。 yarn add -D stylelint prettier stylelint-prettier stylelint-config-prettier OR npm install --save-dev stylelint prettier stylelint-prettier stylelint-config-prettier これでリンターのインストールが終わりました。 次に、.sty
はじめに golangci-lintはgolangci-lint run を実行するだけで、様々なlinterを実行することができます。 これには以下のメリットがあります。 各linterの導入方法や設定方法を覚える必要なく、共通の設定で管理できる 自分でlinterを探さなくても、良いlinterが日々追加されていく 誤検出がある場合に、linterによらず共通の設定方法でその結果を無視することができる この記事では、golangci-lintに自作linterを追加する方法を公式ドキュメントと実際にsonatardがPRを出したファイルを参考にして紹介します。 golangci/golangci-lint - Add Noctx #1179 他にも日本の方では timakinさん作のbodyclose、nakabonneさん作のnestif がgolangci-lintに採用されていま
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く