pre-commit

新世代的 Python Linter - Ruff

自從 Rust Programming Language 開始展露頭角之後,很多工具都開始見到 Rust 的影子,或是底層由 Rust 重寫,或是關鍵部分由 Rust 實作,這些由 Rust 所改寫的工具幾乎都有個共通點 —— 快!

Ruff 就是 1 套底層由 Rust 實作的 Python Linter, 號稱速度快上其他常見的 Linter 約 10 ~ 100 倍之間,同時支援快取(cache)、自動修正(autofix)、Python 3.11, 甚至還提供 pre-commit 以及 VS Code 擴充(extension)等功能,除了用心還有貼心!

另外其功能近乎 Flake8 的完整功能(詳見 FAQ - Ruff ),因此許多人也放心選擇使用 Ruff 作為其開發時的 Linter 使用,包含 FastAPI, pandas, Apache Airflow 等開發團隊都已經使用 Ruff 作為其 Linter!

一起來認識 Ruff 這個新世代的 Python Linter 吧!

Posted on  Mar 23, 2023  in  Python 程式設計 - 中階  by  Amo Chen  ‐ 4 min read

用 pre-commit 輕鬆提升程式碼品質

pre-commit 是一套相當方便的 Git pre-commit hooks 工具,除了內建不少好用的程式碼檢查工具之外,也同時支援 Python, Ruby, Swift, Go, Nodejs 等熱門程式語言,更能夠利用其框架(framework)針對自己的需求開發 pre-commit hooks 。

這麼好用的工具怎能不裝來使用呢!

一起利用 pre-commit 改善我們的程式碼品質吧!

Last updated on  Feb 15, 2023  in  開發工具  by  Amo Chen  ‐ 2 min read