Установите приложение Python с помощью pipenv vs setuptools - PullRequest
0 голосов
/ 30 ноября 2018

Я уже некоторое время использую python с setuptools, но недавно я пытался улучшить способ структурирования проекта python.Это привело меня к «pipenv», и я нашел это действительно интересным, поскольку мне не очень понравился «venv».

Я сделал почти все, что я бродил с «pipenv», но есть один важныйфункция, которую я не могу сопоставить, когда использовал инструменты установки, и я начал думать, что, возможно, меня немного смущает вопрос «что есть что» и цель каждого решения.

Поэтому мне в основном нужно установитьинструменты, которые я делаю, чтобы другие коллеги могли использовать, и я сохранил это, используя setuptools с правильным make-файлом:

install:
    pip3 install --upgrade pip
    pip3 install -r requirements.txt
    python3 setup.py install --record install.txt

test:
    python3 setup.py test

clean:
    rm -rf .eggs/ 
    rm -rf SCRT.egg-info/ 
    rm -rf build/
    rm -rf dist/
    rm -rf htmlcov/ 
    rm -rf .coverage
    rm -rf lib/__pycache__
    rm -rf operations/__pycache__

remove:
    cat install.txt | xargs rm -rf
    rm -rf install.txt


.PHONY: install
    (...)
    entry_points={
        'console_scripts': [
            'tool = src.main:main'
        ]
    }
    (...)

, и с этим решением и надлежащим setup.py у меня мог бы быть скриптв моей папке bin и запустите его, как если бы это была программа.

Однако я не могу найти ничего подобного с pipenv, который нацелен на виртуальную среду, которую создает pipenv, без использования "pipenv run 'target'",Идея состоит в том, чтобы сделать его простым для других пользователей и просто сделать быструю установку и использование.

Есть предложения о том, как подойти к этому решению?

...