pipenv check --style
parece executar a verificação de sintaxe dependendo de sua própria versão de python, em vez de respeitar a versão de python especificada no Pipfile do projeto.
$ python3 -V
: Python 3.5.3
$ pipenv --version
: pipenv, version 9.0.1
Sem erros.
/home/user/myenv/testfile.py:2:18: E999 SyntaxError: invalid syntax
pipenv check --style testfile.py
testfile.py
bar = 'baz'
print(f'foo {bar}')
Pipfile
[[source]]
verify_ssl = true
url = "https://pypi.python.org/simple"
name = "pypi"
[requires]
python_version = "3.6"
[dev-packages]
[packages]
sim, está longe de ser perfeito.
AFAIK PyFlakes depende do próprio Python estar instalado para analisar o código (com ast
) e, portanto, só é capaz de lintar a versão exata do Python. Não há realmente nenhuma maneira de contornar isso a não ser instalar uma cópia separada do Flake8 dentro do virtualenv do projeto e usá-la ( pipenv run flake8 .
) em seu lugar.
Talvez este comando possa ser ajustado para detectar se Flake8 está disponível no virtualenv do projeto e usá-lo se possível?
Eu estaria mais apto a remover o flake8 me verificando.
Isso seria ainda melhor.
Seria ótimo remover a integração do Flake8. Além da integração não estar funcionando muito bem, também acho bastante estranho ver o Flake8 acabar nos meus ambientes de produção via Pipenv.
Então, qual seria o resultado desejado para consertar esse tíquete?
--style
ser removido completamente ou existe um verificador de sintaxe alternativo melhor para usar?
Uma vez que não funciona corretamente e isso não parece ser um problema facilmente resolvido, eu também prefiro a remoção, se em algum momento houver uma solução melhor que possa ser implementada se as pessoas concordarem, no entanto, imo não deve ser deixado em um estado quebrado.
Isso está sendo trabalhado em # 1394.
Comentários muito úteis
Eu estaria mais apto a remover o flake8 me verificando.