Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WPS461 breaks when more than one code is configured #2590

Open
bolmstedt opened this issue Mar 15, 2023 · 1 comment
Open

WPS461 breaks when more than one code is configured #2590

bolmstedt opened this issue Mar 15, 2023 · 1 comment
Labels
bug Something isn't working

Comments

@bolmstedt
Copy link
Contributor

What's wrong

The forbidden-inline-ignore option is parsed from a comma-separated string into a tuple, but the code itself joins all codes using an empty string, then tries to split them on comma. The tests pass, because they pass strings with comma separated values instead of a tuple with values.

How it should be

Just like other multiple value configurations , like nested-classes-whitelist, this rule needs to iterate over the items in the tuple, not try to do some additional handling, because the config values are already parsed.

Flake8 version and plugins

{
"platform": {
"python_implementation": "CPython",
"python_version": "3.11.2",
"system": "Linux"
},
"plugins": [
{
"plugin": "darglint",
"version": "1.8.1"
},
{
"plugin": "flake8-bandit",
"version": "4.1.1"
},
{
"plugin": "flake8-broken-line",
"version": "0.6.0"
},
{
"plugin": "flake8-bugbear",
"version": "22.10.27"
},
{
"plugin": "flake8-commas",
"version": "2.1.0"
},
{
"plugin": "flake8-comprehensions",
"version": "3.10.1"
},
{
"plugin": "flake8-debugger",
"version": "4.1.2"
},
{
"plugin": "flake8-docstrings",
"version": "1.6.0"
},
{
"plugin": "flake8-eradicate",
"version": "1.4.0"
},
{
"plugin": "flake8-isort",
"version": "5.0.0"
},
{
"plugin": "flake8-pytest-style",
"version": "1.6.0"
},
{
"plugin": "flake8-quotes",
"version": "3.3.1"
},
{
"plugin": "flake8-rst-docstrings",
"version": "0.3.0"
},
{
"plugin": "flake8-string-format",
"version": "0.3.0"
},
{
"plugin": "mccabe",
"version": "0.7.0"
},
{
"plugin": "nitpick",
"version": "0.29.0"
},
{
"plugin": "pep8-naming",
"version": "0.13.2"
},
{
"plugin": "pycodestyle",
"version": "2.9.1"
},
{
"plugin": "pyflakes",
"version": "2.5.0"
},
{
"plugin": "wemake-python-styleguide",
"version": "0.17.0"
}
],
"version": "5.0.4"
}

pip information

pip 23.0.1 from /root/.cache/pypoetry/virtualenvs/wemake-python-styleguide-MATOk_fk-py3.11/lib/python3.11/site-packages/pip (python 3.11)
astor==0.8.1
astpath==0.9.0
attrs==22.1.0
autopep8==1.7.0
autorepr==0.3.0
backcall==0.2.0
bandit==1.7.4
cachy==0.3.0
certifi==2022.9.24
charset-normalizer==2.1.1
click==8.1.3
ConfigUpdater==3.1.1
coverage==6.5.0
coverage-conditional-plugin==0.5.0
darglint==1.8.1
decorator==5.1.1
dictdiffer==0.9.0
doc8==0.11.2
docutils==0.19
dparse==0.6.2
eradicate==2.1.0
fastdiff==0.3.0
flake8==5.0.4
flake8-bandit==4.1.1
flake8-broken-line==0.6.0
flake8-bugbear==22.10.27
flake8-commas==2.1.0
flake8-comprehensions==3.10.1
flake8-debugger==4.1.2
flake8-docstrings==1.6.0
flake8-eradicate==1.4.0
flake8-isort==5.0.0
flake8-plugin-utils==1.3.2
flake8-pytest-style==1.6.0
flake8-quotes==3.3.1
flake8-rst-docstrings==0.3.0
flake8-string-format==0.3.0
gitdb==4.0.9
GitPython==3.1.28
grimp==2.0
hypothesis==6.56.1
hypothesmith==0.2.0
identify==2.5.6
idna==3.4
import-linter==1.4.0
iniconfig==1.1.1
ipython==7.34.0
isort==5.10.1
jedi==0.18.1
jmespath==1.0.1
lark-parser==0.12.0
libcst==0.4.7
loguru==0.6.0
lxml==4.9.1
marshmallow==3.18.0
marshmallow-polyfield==5.10
matplotlib-inline==0.1.6
mccabe==0.7.0
more-itertools==8.14.0
mypy==0.982
mypy-extensions==0.4.3
nbqa==1.5.2
nitpick==0.29.0
packaging==21.3
parso==0.8.3
pbr==5.10.0
pep8-naming==0.13.2
pexpect==4.8.0
pickleshare==0.7.5
pluggy==1.0.0
prompt-toolkit==3.0.31
ptyprocess==0.7.0
py==1.11.0
pycodestyle==2.9.1
pydantic==1.10.2
pydocstyle==6.1.1
pyflakes==2.5.0
Pygments==2.14.0
pyparsing==3.0.9
pytest==7.1.3
pytest-cov==3.0.0
pytest-randomly==3.12.0
python-slugify==6.1.2
PyYAML==6.0
requests==2.28.1
restructuredtext-lint==1.4.0
ruamel.yaml==0.17.21
safety==2.3.1
six==1.16.0
smmap==5.0.0
snapshottest==0.6.0
snowballstemmer==2.2.0
sortedcontainers==2.4.0
stevedore==3.5.0
termcolor==2.0.1
text-unidecode==1.3
tokenize-rt==5.0.0
toml==0.10.2
tomli==2.0.1
tomlkit==0.11.5
traitlets==5.4.0
typing-inspect==0.8.0
typing_extensions==4.4.0
urllib3==1.26.12
wasmer==1.1.0
wasmer-compiler-cranelift==1.1.0
wcwidth==0.2.5
-e git+ssh://git@github.com/bolmstedt/wemake-python-styleguide.git@936715d5306508aed51938afc27a1f0c2e2281da#egg=wemake_python_styleguide

OS information

Debian GNU/Linux 11 (bullseye)
5.10.124-linuxkit

@bolmstedt bolmstedt added the bug Something isn't working label Mar 15, 2023
@bolmstedt
Copy link
Contributor Author

Fixed by #2591.

sobolevn pushed a commit that referenced this issue Jun 28, 2023
* Fix WPS461 rule

* Update changelog
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant