Skip to main content

PyPI version PyPI - Python Version Downloads build Codecov

flake8-no-implicit-concat

Flake8 plugin that forbids implicit str/bytes literal concatenations.

# Not Allowed
print('foo' 'bar', 'baz')
a = ["aaa",
     "bbb"
     "ccc"]
b = b'abc' b'def'

# OK
print('foobar', 'baz')
a = ["aaa",
     "bbb"
     + "ccc"]
b = b'abcdef'

Installation

Install via pip:

pip install flake8-no-implicit-concat

Violation Codes

The plugin uses the prefix NIC, short for No Implicit Concatenation.

Code Description
NIC001 Implicitly concatenated str literals on one line
NIC002 Implicitly concatenated str literals over multiple lines
NIC101 Implicitly concatenated bytes literals on one line
NIC102 Implicitly concatenated bytes literals over multiple lines

Other Plugins & Linters

  • flake8-implicit-str-concat Flake8 plugin to encourage correct string literal concatenation. This plugin is different from flake8-no-implicit-concat because this plugin prefers implicit concatenations over explicit + operators when concatenating literals over multiple lines.
  • wemake-python-styleguide Set of strict flake8 rules with several plugins as dependencies. It implements WPS326 Found implicit string concatenation, which also checks implicit string concatenations, as one of the many rules it defines.
  • pylint This linter has implicit-str-concat rule. By default it only looks for occurrences of implicit concatenations on the same line, but it has --check-str-concat-over-line-jumps=y option to enable checking of concatenations over multiple lines.

Development

Use tools like Pipenv:

pipenv run python -m pip install -e .[dev]
pipenv run make check

License

This software is released under MIT license. See LICENSE for details.

The code was derived from flake8-implicit-str-concat, which is developed by Dylan Turner and also released under MIT license.

Metadata

Release files for flake8-no-implicit-concat 0.3.7

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-no-implicit-concat 0.3.7
File Size Uploaded Provenance Actions
flake8_no_implicit_concat-0.3.7.tar.gz 10.3 kB Without provenance Details for flake8_no_implicit_concat-0.3.7.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for flake8-no-implicit-concat 0.3.7
File Interpreter ABI Platform Actions
flake8_no_implicit_concat-0.3.7-py3-none-any.whl Python 3 none any Details for flake8_no_implicit_concat-0.3.7-py3-none-any.whl

Total release size: 15.8 kB

Release files / flake8_no_implicit_concat-0.3.7.tar.gz

Download URL flake8_no_implicit_concat-0.3.7.tar.gz
Size 10.3 kB
Tags Source
SHA-256 checksum
How to use checksums
8472f2a6ddb11980e9bc35aa289d051e36d1e69c66ecd0fe5f5406ff8ab91e3a
BLAKE2b-256 checksum
How to use checksums
25275057b10b1729f686af41edd45fc434d96faf25d925aec43bb9b3f27a559a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.13.0

Release files / flake8_no_implicit_concat-0.3.7-py3-none-any.whl

Download URL flake8_no_implicit_concat-0.3.7-py3-none-any.whl
Size 5.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a173b4720fed1611b9b127e194aa7e46aa86fed3425df8d37267b78cbbae2e07
BLAKE2b-256 checksum
How to use checksums
11434eb677c2e8d165dc89d05421b36850b1f06d69e6996622d6599ab85b309b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.13.0

Security for flake8-no-implicit-concat 0.3.7

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