Добавление pyproject.toml в проект приводит к сбою установки pip - PullRequest
0 голосов
/ 04 февраля 2020

Я использую pyproject.toml для настройки black. Однако при добавлении этого файла pip3 install -e . --user завершается с ошибкой:

    ERROR: Complete output from command /usr/bin/python3 -c 'import setuptools, tokenize;__file__='"'"'/home/sean/git/auto-md/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' develop --no-deps --user --prefix=:
    ERROR: usage: -c [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
       or: -c --help [cmd1 cmd2 ...]
       or: -c --help-commands
       or: -c cmd --help

    error: option --user not recognized
    ----------------------------------------
ERROR: Command "/usr/bin/python3 -c 'import setuptools, tokenize;__file__='"'"'/home/sean/git/auto-md/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' develop --no-deps --user --prefix=" failed with error code 1 in /home/sean/git/auto-md/

Почему возникает эта ошибка и как ее устранить?

1 Ответ

1 голос
/ 04 февраля 2020

Согласно обсуждению в этой проблеме GitHub , для решения этой проблемы вам нужно запустить pip3 install -e . --user --no-use-pep517.

Причины этого сложны, но по существу:

  1. Используя pyproject.toml, вы указываете pip, что вам следует использовать новый процесс установки pep517.

  2. pep517 не поддерживает -e или --user, поэтому происходит сбой.

  3. Нет другого способа автоматической настройки black, поэтому вы застряли с pyproject.toml и --no-use-pep517.

...