🌟 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 theic()function.IC101: Disables checks for theic.disabled()method.IC102: Disables checks for theic.enabled()method.
Examples
-
Disable a Single Check:
flake8 --disable-ic-checks=IC100
This will disable only the
IC100check. -
Disable Multiple Checks:
flake8 --disable-ic-checks=IC100,IC101
This will disable both the
IC100andIC101checks. -
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
-
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! 💖
📧 Contact
(c) 2025, Created with ❤️ by Marco Espinosa
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)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| flake8_ic-0.7.0.tar.gz | 28.4 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| 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.