A tool to analyze Python functions' docstrings and provide critiques and suggestions for improvement
Project description
Docstring Auditor
Introducing Docstring Auditor, a cutting-edge solution to ensure that your Python code documentation remains accurate and up-to-date. Tired of encountering misleading or outdated docstrings that no longer align with your code's functionality? You're not alone! That's why we've developed Docstring Auditor, a powerful tool that leverages the prowess of large language models to analyze and critique your docstrings, ensuring they accurately reflect your code's true purpose. Say goodbye to technical discrepancies and confusing descriptions. With Docstring Auditor, you can effortlessly bridge the gap between your code and its documentation, making it more accessible and understandable to both experts and novices alike. Step into the future of code documentation with Docstring Auditor – the ultimate companion for maintaining crystal-clear, precise, and informative docstrings.
Recognizing the need for a reliable tool to address the challenge of keeping code documentation in sync with evolving codebases, we developed Docstring Auditor to tackle this issue head-on. Our motivation was to create an accessible, user-friendly solution that empowers developers to maintain clear and up-to-date documentation with ease, enhancing their workflow and reducing misunderstandings.
Docstring Auditor leverages the advanced capabilities of GPT-4, a powerful language model designed to deeply understand both code and natural language. By incorporating GPT-4 into our tool, Docstring Auditor examines the docstrings in your Python code, identifying discrepancies between the documentation and the actual code implementation. The analysis covers errors, warnings, and potential improvements, providing valuable critiques and suggestions to help you keep your documentation accurate and coherent. Docstring Auditor not only ensures that technical details, such as variables and types, are consistent, but it also verifies that the docstrings' meanings are in harmony with the code's functionality.
With Docstring Auditor, you can trust that your documentation stays relevant, informative, and accessible to all members of your team, making collaboration smoother and more efficient than ever before.
Features
- Analyzes Python functions' docstrings in a given file
- Identifies errors, warnings, and possible improvements
- Provides detailed critiques and suggestions for better docstrings
- Powered by OpenAI's GPT for accurate and insightful analysis
- Easy to use command-line interface
Installation
To install Docstring Auditor, first, ensure you have Python 3.6 or higher installed. Then, install with:
pip install docstring-auditor
Usage
Using Docstring Auditor is as easy as running the following command:
docstring-auditor path/to/your/python_file.py
The tool will then analyze the functions' docstrings in the specified file and display the critiques and suggestions for improvement.
Example Let's say you have a Python file called example.py with the following content:
def compute(a, b):
"""
Add two numbers.
Parameters
----------
a : int or float
The first number to be added or from which 'b' will be subtracted.
b : int or float
The second number to be added or subtracted.
Returns
-------
int or float
The result of the addition operation.
"""
if a > 0:
return a + b
else:
return a - b
To analyze the docstring of the add function, run:
docstring-auditor example.py
Docstring Auditor will then provide you with a detailed analysis of the docstring, including any errors, warnings, and suggestions for improvement. The output may look like...
Processing function 1 of 1...
--------------------------------------------------------------------------------
An error was found in the function: compute
The docstring states that the function adds two numbers, but the code also performs subtraction if 'a' is less than or equal to 0. The docstring should accurately describe both addition and subtraction operations.
A warning was found in the function: compute
The docstring does not follow the numpydoc style completely. The summary line should be a one-line summary, and the extended description should be provided in a separate paragraph.
A proposed solution to these concerns is:
"""
Add or subtract two numbers based on the value of 'a'.
This function performs addition if 'a' is greater than 0, and subtraction if 'a' is less than or equal to 0.
Parameters
----------
a : int or float
The first number to be added or from which 'b' will be subtracted.
b : int or float
The second number to be added or subtracted.
Returns
-------
int or float
The result of the addition or subtraction operation.
"""
Contributing
We welcome contributions to Docstring Auditor! If you'd like to contribute, please fork the repository and submit a pull request with your changes. We also appreciate bug reports and feature requests submitted through the GitHub issues page.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file docstring_auditor-0.1.1.tar.gz
.
File metadata
- Download URL: docstring_auditor-0.1.1.tar.gz
- Upload date:
- Size: 12.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.16
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e0324ac0947380f2aec0c52dbb23ed03b58fc0705a931ebc886afd9afa38c7bd |
|
MD5 | 712591eaf59bd5be8f3cf2b2c25315be |
|
BLAKE2b-256 | 7c8318a25db73d5b8c8c73bab7089d6d180d8a29d7bd9a46226be5533ed7a8a1 |
File details
Details for the file docstring_auditor-0.1.1-py2.py3-none-any.whl
.
File metadata
- Download URL: docstring_auditor-0.1.1-py2.py3-none-any.whl
- Upload date:
- Size: 10.0 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.16
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b4f69453404d24b3a402a381d807c2205b36b507bd927abb10186e6f7fed9531 |
|
MD5 | 7e9db453d4f8a08b1534e1933c1b9c78 |
|
BLAKE2b-256 | 508695bd3231e82acb1fa01439abcee0ca12e8d89dd78ab6a384e4e9d9b24dd2 |