Skip to main content

Ultimate Python Code Maintenance Toolkit

Project description

PyBoost - Ultimate Python Code Maintenance Toolkit

PyPI version Python versions License

PyBoost is a comprehensive toolkit for cleaning, optimizing, and improving Python code. It integrates multiple tools into a single, easy-to-use package.

Features

PyBoost combines the following tools:

  1. pybackup - Create backups of Python files with timestamps
  2. rmcm - Remove comments and docstrings (optional)
  3. autoflake - Remove unused imports and variables
  4. pyupgrade - Upgrade to modern Python syntax
  5. isort - Sort imports
  6. black - Format code
  7. ruff - Lint and check for errors
  8. mypy - Static type checking (optional)
  9. bandit - Security checks (optional)
  10. vulture - Find dead code (optional)

Installation

The package is available on PyPI as pyboost-toolkit.

Note: While the package name is pyboost-toolkit, the command-line tools are still named pyboost, pybackup, etc.

Basic Installation

pip install pyboost-toolkit

Full Installation (with all optional tools)

pip install pyboost-toolkit[all]

Development Installation

pip install pyboost-toolkit[dev]

Usage

Basic Usage

pyboost /path/to/your/python/project

Options

usage: pyboost [-h] [--no-bak] [--backup-dir BACKUP_DIR] [--skip SKIP]
               [--aggressive] [--backup-only] [--list-tools] [--verbose]
               directory

Ultimate Python Code Maintenance Toolkit

positional arguments:
  directory             Directory containing Python files to process

options:
  -h, --help            show this help message and exit
  --no-bak              Skip creating backup files (backups are stored in the
                        codebase by default)
  --backup-dir BACKUP_DIR
                        Directory to store backups (default: <codebase>/backup)
  --skip SKIP           Comma-separated list of tools to skip (e.g.,
                        'rmcm,mypy,bandit')
  --aggressive          Enable aggressive mode (includes comment removal and
                        other potentially destructive operations)
  --backup-only         Only create backups, don't process files
  --list-tools          List all available tools and exit
  --verbose, -v         Enable verbose output

Examples

Basic Usage

pyboost ~/projects/my_python_project

Skip Optional Tools

pyboost ~/projects/my_python_project --skip=mypy,bandit,vulture

Aggressive Mode (includes comment removal)

pyboost ~/projects/my_python_project --aggressive

Backup Only

pyboost ~/projects/my_python_project --backup-only

Custom Backup Directory

pyboost ~/projects/my_python_project --backup-dir ~/backups/python_projects

Individual Tools

PyBoost also provides access to individual tools:

PyBackup

Create backups of Python files with timestamps.

pybackup /path/to/your/python/project

PyRMCM (Remove Comments)

Remove comments and docstrings from Python files.

pyrmcm input_file.py output_file.py

PyFormat

Format Python files by removing comments and applying Black.

pyformat /path/to/your/python/project

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository from GitHub
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

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

pyboost_toolkit-1.0.0.tar.gz (19.4 kB view details)

Uploaded Source

Built Distribution

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

pyboost_toolkit-1.0.0-py3-none-any.whl (20.9 kB view details)

Uploaded Python 3

File details

Details for the file pyboost_toolkit-1.0.0.tar.gz.

File metadata

  • Download URL: pyboost_toolkit-1.0.0.tar.gz
  • Upload date:
  • Size: 19.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for pyboost_toolkit-1.0.0.tar.gz
Algorithm Hash digest
SHA256 c211185423130c6bb7a4a584fd6af023b7e5dba7298abad21d6594ea1b33ac35
MD5 babf4686c6a72a20840c20f36dd06f0f
BLAKE2b-256 b418b7edf779238b1c7990c47084470085316158b8e64e64440aa948842cc0cd

See more details on using hashes here.

File details

Details for the file pyboost_toolkit-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for pyboost_toolkit-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9c0116d3b9e9ea20321853f7f688486a396542895431b8e57e046155581f39bb
MD5 25f4d3ffabf241367f91a5ff7c21dda3
BLAKE2b-256 003ceb8ca76635474dc4ae5e7e7eb9554d4c6beb1645603702cc4e95940e1e17

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