python-lizard
Subpackage Descriptions
single |
|Web Site| Lizard
=================
|
Lizard is an extensible Cyclomatic Complexity Analyzer for many programming
languages
including C/C++ (doesn't require all the header files or Java imports). It
also does
copy-paste detection (code clone detection/code duplicate detection) and
many other forms of static
code analysis.
A list of supported languages:
- C/C++ (works with C++14)
- Java
- C# (C Sharp)
- JavaScript (With ES6 and JSX)
- TypeScript
- Objective-C
- Swift
- Python
- Ruby
- TTCN-3
- PHP
- Scala
- GDScript
- Golang
- Lua
- Rust
- Fortran
- Kotlin
- Solidity
- Erlang
By default lizard will search for any source code that it knows and mix
all the results together. This might not be what you want. You can use
the "-l" option to select language(s).
It counts
- the nloc (lines of code without comments),
- CCN (cyclomatic complexity number),
- token count of functions.
- parameter count of functions.
You can set limitation for CCN (-C), the number of parameters (-a).
Functions that exceed these limitations will generate warnings. The exit
code of lizard will be none-Zero if there are warnings.
This tool actually calculates how complex the code 'looks' rather than
how complex the code really 'is'. People will need this tool because it's
often very hard to get all the included folders and files right when
they are complicated. But we don't really need that kind of accuracy for
cyclomatic complexity.
It requires python3.8 or above (early versions are not verified).
Installation
------------
lizard.py can be used as a stand alone Python script, most
functionalities are there. You can always use it without any
installation. To acquire all the functionalities of lizard, you will
need a proper install.
::
python lizard.py
If you want a proper install:
::
[sudo] pip install lizard
Or if you've got the source:
::
[sudo] python setup.py install --prefix=/path/to/installation/directory/
Usage
-----
::
lizard [options] [PATH or FILE] [PATH] ...
Run for the code under current folder (recursively):
::
lizard
Exclude anything in the tests folder:
::
|
Configuration Switches (platform-specific settings discarded)
PY312 ON Build using Python 3.12
PY313 OFF Build using Python 3.13
Package Dependencies by Type
Download groups
main |
mirror://PYPIWHL/b8/37/8eff5380bd28768529a64391c9ca1f475e7f7308a0b4226f94dda3971fbc |
Distribution File Information
06e933e05a5eb0c6eebcc4c10127539c12613d0a4d11ba24ba1bf534b285556f 68415 python-src/lizard-1.17.13-py2.py3-none-any.whl
Ports that require python-lizard:v12