Skip to main content

A minimalist static analysis tool to detect dead code and unused definitions in Python.

Project description

novoid

PyPI GitHub License: MIT

A minimalist static analysis tool to detect dead code and unused definitions in Python source files.

Installation

pip install novoid

Usage

Analyze a single file:

novoid main.py

Analyze an entire directory:

novoid ./src

What It Detects

  • Unused functions - functions that are defined but never called anywhere in the file.
  • Unused variables - variables that are assigned but never read or referenced.

Example Output

novoid report for: main.py
──────────────────────────────────────
  [LINE  4]  FUNCTION   greet_user
  [LINE  9]  VARIABLE   temp_buffer
──────────────────────────────────────
2 issue(s) found.

When no issues are found:

✔  main.py - no dead code detected.

Development

git clone https://github.com/Madhav703/novoid.git
cd novoid
pip install -e "."
pytest tests/

Contributing

Pull requests are welcome at https://github.com/Madhav703/novoid.

License

See LICENSE

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

novoid-0.1.0.tar.gz (5.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

novoid-0.1.0-py3-none-any.whl (5.7 kB view details)

Uploaded Python 3

File details

Details for the file novoid-0.1.0.tar.gz.

File metadata

  • Download URL: novoid-0.1.0.tar.gz
  • Upload date:
  • Size: 5.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for novoid-0.1.0.tar.gz
Algorithm Hash digest
SHA256 f363695e7077cab0111a60d298c48f176d7dabdfffad8a9b480dd30282a648ed
MD5 7d84ddcf543b03d3186cc23979d25b10
BLAKE2b-256 c35c92f357f6ab838f32c060e80f5e7dcc7fcd727c7658d20b7c941b3e020bcd

See more details on using hashes here.

File details

Details for the file novoid-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: novoid-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 5.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for novoid-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 452338f4ca222d614463ace651c41d4761b8f8a765d86dd7b330da99b9e4e182
MD5 421efc3f56821196f5477363cf81138a
BLAKE2b-256 a3e4decaf2fbac79743bb8934b7c164e5e8798942234687bb1e76827b170a8fa

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page