Pipx: "No apps associated with package" with pyproject.toml

Created on 27 Dec 2019  Â·  4Comments  Â·  Source: pipxproject/pipx

Describe the bug
Installation a project built with poetry (only pyproject.toml, no setup.py) fails, complaining that the package has "no app".

How to reproduce


pipx install --verbose cleantoots

pipx > (run_pipx_command:134): Virtual Environment location is /Users/gaugendre/.local/pipx/venvs/cleantoots
pipx > (run:97): running /Users/gaugendre/.pyenv/versions/3.8.0/bin/python -m venv --without-pip /Users/gaugendre/.local/pipx/venvs/cleantoots
pipx > (run:97): running /Users/gaugendre/.local/pipx/venvs/cleantoots/bin/python -m pip install cleantoots
Requirement already satisfied: cleantoots in /Users/gaugendre/Projects/python/cleantoots (0.1.0)
Collecting Mastodon.py<2.0.0,>=1.5.0
  Using cached https://files.pythonhosted.org/packages/b5/8e/c721690b56d1f0d6c96f5bdc76d88cdcdf7b446c2fe6001ca6d6d07bca17/Mastodon.py-1.5.0-py2.py3-none-any.whl
Collecting click<8.0,>=7.0
  Using cached https://files.pythonhosted.org/packages/fa/37/45185cb5abbc30d7257104c434fe0b07e5a195a6847506c074527aa599ec/Click-7.0-py2.py3-none-any.whl
Processing /Users/gaugendre/Library/Caches/pip/wheels/f2/f2/8e/9ceeb2d4dceb9fb0b80baf6445d5ce3dac4bf1868c93a31e83/pendulum-2.0.5-cp38-cp38-macosx_10_15_x86_64.whl
Collecting python-magic
  Using cached https://files.pythonhosted.org/packages/42/a1/76d30c79992e3750dac6790ce16f056f870d368ba142f83f75f694d93001/python_magic-0.4.15-py2.py3-none-any.whl
Collecting pytz
  Using cached https://files.pythonhosted.org/packages/e7/f9/f0b53f88060247251bf481fa6ea62cd0d25bf1b11a87888e53ce5b7c8ad2/pytz-2019.3-py2.py3-none-any.whl
Collecting requests>=2.4.2
  Using cached https://files.pythonhosted.org/packages/51/bd/23c926cd341ea6b7dd0b2a00aba99ae0f828be89d72b2190f27c11d4b7fb/requests-2.22.0-py2.py3-none-any.whl
Collecting six
  Using cached https://files.pythonhosted.org/packages/65/26/32b8464df2a97e6dd1b656ed26b2c194606c16fe163c695a992b36c11cdf/six-1.13.0-py2.py3-none-any.whl
Collecting python-dateutil
  Using cached https://files.pythonhosted.org/packages/d4/70/d60450c3dd48ef87586924207ae8907090de0b306af2bce5d134d78615cb/python_dateutil-2.8.1-py2.py3-none-any.whl
Collecting blurhash>=1.1.4
  Using cached https://files.pythonhosted.org/packages/80/08/163cb166a2464223a5eb8890a92cc1cf7e8c7c79a2c75e497e3d8f3a4711/blurhash-1.1.4-py2.py3-none-any.whl
Collecting decorator>=4.0.0
  Using cached https://files.pythonhosted.org/packages/8f/b7/f329cfdc75f3d28d12c65980e4469e2fa373f1953f5df6e370e84ea2e875/decorator-4.4.1-py2.py3-none-any.whl
Collecting pytzdata>=2018.3
  Using cached https://files.pythonhosted.org/packages/7f/f9/cdd39831b0465285c02ed90cfbf0db25bb951cb2a35ded0e69222375bea3/pytzdata-2019.3-py2.py3-none-any.whl
Collecting chardet<3.1.0,>=3.0.2
  Using cached https://files.pythonhosted.org/packages/bc/a9/01ffebfb562e4274b6487b4bb1ddec7ca55ec7510b22e4c51f14098443b8/chardet-3.0.4-py2.py3-none-any.whl
Collecting idna<2.9,>=2.5
  Using cached https://files.pythonhosted.org/packages/14/2c/cd551d81dbe15200be1cf41cd03869a46fe7226e7450af7a6545bfc474c9/idna-2.8-py2.py3-none-any.whl
Collecting urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1
  Using cached https://files.pythonhosted.org/packages/b4/40/a9837291310ee1ccc242ceb6ebfd9eb21539649f193a7c8c86ba15b98539/urllib3-1.25.7-py2.py3-none-any.whl
Collecting certifi>=2017.4.17
  Using cached https://files.pythonhosted.org/packages/b9/63/df50cac98ea0d5b006c55a399c3bf1db9da7b5a24de7890bc9cfd5dd9e99/certifi-2019.11.28-py2.py3-none-any.whl
Installing collected packages: python-magic, pytz, chardet, idna, urllib3, certifi, requests, six, python-dateutil, blurhash, decorator, Mastodon.py, click, pytzdata, pendulum
Successfully installed Mastodon.py-1.5.0 blurhash-1.1.4 certifi-2019.11.28 chardet-3.0.4 click-7.0 decorator-4.4.1 idna-2.8 pendulum-2.0.5 python-dateutil-2.8.1 python-magic-0.4.15 pytz-2019.3 pytzdata-2019.3 requests-2.22.0 six-1.13.0 urllib3-1.25.7
Note: Dependent package 'chardet<3.1.0,>=3.0.2' contains 1 apps
  - chardetect
pipx > (rmdir:16): removing directory /Users/gaugendre/.local/pipx/venvs/cleantoots

pipx > (rmdir:16): removing directory /Users/gaugendre/.local/pipx/venvs/cleantoots
No apps associated with package cleantoots. Try again with '--include-deps' to include apps of dependent packages, which are listed above. If you are attempting to install a library, pipx should not be used. Consider using pip or a similar tool instead.

Expected behavior
The package should install fine and provide the cleantoots command.
pip install cleantoots works as expected.

Most helpful comment

You're right, I didn't catch that! Re-running it now downloads the latest version and works fine. Thanks for your help 😃

All 4 comments

The code for cleantoots is available on GitHub: Crocmagnon/cleantoots.

I can get this to work with my pre-release version of pipx.

Using the pypi package:

carvel:test pipx install cleantoots --python /Users/mclapp/.pyenv/versions/3.8.0/bin/python3.8
  installed package cleantoots 0.1.6, Python 3.8.0
  These apps are now globally available
    - cleantoots
done! ✨ 🌟 ✨
carvel:test 

using the git+URL:

carvel:test pipx install git+https://github.com/Crocmagnon/cleantoots.git --python /Users/mclapp/.pyenv/versions/3.8.0/bin/python3.8
  installed package cleantoots 0.1.6, Python 3.8.0
  These apps are now globally available
    - cleantoots
done! ✨ 🌟 ✨
carvel:test 

I had to specify the python version because somehow pipx was picking up the wrong python version, not my local pyenv one (a separate issue I think.)

It looks like @Crocmagnon is actually getting python3.8 judging from his verbose logs.

Can somebody test this with the released version of pipx? I'm having trouble getting my setup back to release version.

Ah @Crocmagnon , I just noticed, you are picking up cleantoots v0.1.0

Requirement already satisfied: cleantoots in /Users/gaugendre/Projects/python/cleantoots (0.1.0)

whereas I am getting cleantoots v 0.1.6

Are you accidentally sourcing from a local directory possibly? Or somehow pip is picking up an old cached version somehow?

You're right, I didn't catch that! Re-running it now downloads the latest version and works fine. Thanks for your help 😃

Was this page helpful?
0 / 5 - 0 ratings