Metadata-Version: 2.4
Name: echo-python
Version: 0.1.0
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python
Classifier: Programming Language :: Rust
Classifier: Topic :: Software Development :: Quality Assurance
License-File: LICENSE
Summary: A fast Python linter with custom rules
Keywords: cli,linter,python,rust
License-Expression: MIT
Requires-Python: >=3.8
Description-Content-Type: text/plain; charset=UTF-8
Project-URL: Homepage, https://github.com/anyaagarenko/echo-python
Project-URL: Repository, https://github.com/anyaagarenko/echo-python

fast style helper for python projects (ruff compatible)


install in a project:

  pip install echo-python


cli:

  echo-python check .
  echo-python check path/to/file.py
  echo-python check --extend-select ECHO001 .
  echo-python check --ignore ECHO001 .
  echo-python check --select ECHO001 .


rules:

  ECHO001 - calls with multiple args must use keywords (self/cls exempt)
  ECHO002 - mixed lists: numbers by value, then words alphabetically
  ECHO003 - numeric lists sorted by value
  ECHO004 - word/name lists sorted alphabetically
  ECHO005 - params one per line when more than one (self/cls not counted)


configure in pyproject.toml:

  [tool.echo-python.lint]
  extend-select, ignore, select


ignore a finding:

  use noqa


development:

  install mise https://github.com/jdx/mise#1-install-mise
  see Makefile


publishing:

  bump version in Cargo.toml on main
  github → actions → pypi → run workflow (branch: main)

