1 Востаннє редагувалося Jarko (03.01.2022 17:39:05)

Тема: [вирішено] запустити "py.test --pep8 vsearch.py" на Win10

Привіт! Приклад з Python Head First (2ed., p. 191):

  1. у папці є файл vsearch.py з двома функціями всередині

  2. встановлено pytest i pytest-pep8

  3. Command Promt відкритий у папці з vsearch.py з правами адміна

Потрібно запустити перевірку vsearch.py на відповідність PEP8. Пробую як у книжці:

C:\Users\Myuser\Desktop\Py Head First\mymodules>py.test --pep8 vsearch.py

Але результат - помилка з таким описом:

C:\Users\Myuser\AppData\Local\Programs\Python\Python39\lib\site-packages\pep8.py:110: FutureWarning: Possible nested set at position 1
  EXTRANEOUS_WHITESPACE_REGEX = re.compile(r'[[({] | []}),;:]')
=test session starts =
platform win32 -- Python 3.9.0, pytest-6.2.5, py-1.11.0, pluggy-1.0.0
rootdir: C:\Users\Myuser\Desktop\Py Head First\mymodules
plugins: pep8-1.0.6
collected 0 items / 1 error
= ERRORS =
_ERROR collecting test session _
Direct construction of Pep8Item has been deprecated, please use Pep8Item.from_parent.
See https://docs.pytest.org/en/stable/deprecations.html#node-construction-changed-to-node-from-parent for more details.

Я читав опис за згаданим посиланням https://docs.pytest.org/en/stable/depre … rom-parent і гуглив подібні помилки/рішення, але не зміг виправити помилку запуску самостійно... Будь ласка підкажіть рішення, або де можна його знайти.

2

Re: [вирішено] запустити "py.test --pep8 vsearch.py" на Win10

https://pypi.org/project/pytest-pep8/ Released: Apr 27, 2014
Логічно, що він трохи застарів.
Версія 6.0.0 вийшла півтора року тому, і досі pytest-pep8 не оновили. Це трохи говорить про його популярність. Я так розумію, для контролю дотримання pep8 зараз використовується pycodestyle. Але якщо вам дуже кортить скористатися саме pytest саме на Python 3.9 саме з pytest-pep8, то спробуйте видалити pytest 6.2.5 і встановити якусь старшу. Хоча не факт, що вона піде на 3.9.

Подякували: Jarko, leofun012

3

Re: [вирішено] запустити "py.test --pep8 vsearch.py" на Win10

Дуже дякую! Так, pycodestyle працює ок, думаю цього достатньо.