Skip to main content




🌟 flake8-ic

A Flake8 plugin that helps detect the usage of the ic() function from the icecream package in your codebase.

If you think this plugin is useful, please consider giving it a star by clicking on the badge! ⭐


📜 Description

The flake8-ic plugin ensures clean and production-ready code by identifying any instances of the ic() function, commonly used for debugging. This tool integrates seamlessly with flake8 to provide automated checks.


🚨 Detected Errors

The flake8-ic plugin checks for the usage of the ic() function and related methods from the icecream package in your codebase. Below is a list of errors it detects:

Error Code Description
IC100 Avoid using ic() from the icecream package in production code.
IC101 Avoid using ic.disabled() from the icecream package in production code.
IC102 Avoid using ic.enabled() from the icecream package in production code.

🚫 Disabling Checks

You can disable specific checks for flake8-ic using the --disable-ic-checks option. This is useful if you only want to enforce certain rules. The following options are available:

  • IC100: Disables checks for the ic() function.
  • IC101: Disables checks for the ic.disabled() method.
  • IC102: Disables checks for the ic.enabled() method.

Examples

  1. Disable a Single Check:

    flake8 --disable-ic-checks=IC100
    

    This will disable only the IC100 check.

  2. Disable Multiple Checks:

     flake8 --disable-ic-checks=IC100,IC101
    

    This will disable both the IC100 and IC101 checks.

  3. Configuration in setup.cfg or tox.ini: You can set this option in your configuration file to apply it automatically:

    [flake8]
    disable-ic-checks = IC100,IC102
    
  4. Configuration in pyproject.toml: Add the configuration under the [tool.flake8] section:

    [tool.flake8]
    disable-ic-checks = "IC100,IC102"
    

By disabling checks, you can tailor the plugin to match your project’s requirements while maintaining a clean and focused codebase.


📦 Installation

Install the plugin via pip:

pip install flake8-ic

✅ Verifying Installation

To confirm the plugin is installed, run:

flake8 --version

You should see flake8-ic listed among the installed plugins, along with the Flake8 version.


🤝 Contributors

A big thank you to everyone who contributed to this project! 💖

Contributors

📧 Contact

(c) 2025, Created with ❤️ by Marco Espinosa

ko-fi

Metadata

Release files for flake8-ic 0.7.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for flake8-ic 0.7.0
File Size Uploaded Provenance
flake8_ic-0.7.0.tar.gz 28.4 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for flake8-ic 0.7.0
File Interpreter ABI Platform
flake8_ic-0.7.0-py3-none-any.whl Python 3 none any Details

Total release size: 34.0 kB

Release files / flake8_ic-0.7.0.tar.gz

Download URL flake8_ic-0.7.0.tar.gz
Size 28.4 kB
Tags Source
SHA-256 checksum
How to use checksums
9d8a97680f9ff6d97b99d38e250e167a31ab55a4aeaf43143cbb88e2b23095c7
BLAKE2b-256 checksum
How to use checksums
087fb4623533d17cd41d668ee1f842c44ecf2488b625f46fedaf8897eea95cc2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.9 {"installer":{"name":"uv","version":"0.12.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / flake8_ic-0.7.0-py3-none-any.whl

Download URL flake8_ic-0.7.0-py3-none-any.whl
Size 5.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
232ad599553f234eee03f28292ab30bc6f43863ce2f03f6269af58065dcd966e
BLAKE2b-256 checksum
How to use checksums
0e82b508a3d51bad046f7e477f534e8462ddff112d877948534012ee89c5a4e3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.9 {"installer":{"name":"uv","version":"0.12.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for flake8-ic 0.7.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page