PEP668 / pipx and "--editable" installs

Mats Wichmann mats at wichmann.us
Mon Sep 18 15:09:38 EDT 2023


On 9/18/23 12:56, c.buhtz--- via Python-list wrote:
> On 2023-09-18 10:16 "Peter J. Holzer via Python-list"
> <python-list at python.org> wrote:
>> On 2023-09-15 14:15:23 +0000, c.buhtz--- via Python-list wrote:
>>> I tried to install it via "pipx install -e .[develop]". It's
>>> pyproject.toml has a bug: A missing dependency "dateutil". But
>>> "dateutil" is not available from PyPi for Python 3.11 (the default
>>> in Debian 12). But thanks to great Debian they have a
>>> "python3-dateutil" package. I installed it.
>>
>> This can be installed via pip:
> 
> I'm aware of this. But this is not the question.
> 
> I would like to know and understand why my via "pipx" installed package
> "hyperorg" is not able to see the systems packages installed via "apt
> install python3-dateutils"?
> 
> Is this the usual behavior? Is this correct?

Yes.  By default, the virtualenv contains just what you've installed. 
It's designed to give you tight control over what's installed, so you 
can track dependencies, avoid accidental inclusions, etc.  As usual, you 
don't have to accept the default. For example, for the venv module:

usage: venv [-h] [--system-site-packages] [--symlinks | --copies] [--clear]
             [--upgrade] [--without-pip] [--prompt PROMPT] [--upgrade-deps]
             ENV_DIR [ENV_DIR ...]

Creates virtual Python environments in one or more target directories.

positional arguments:
   ENV_DIR               A directory to create the environment in.

options:
   -h, --help            show this help message and exit
   --system-site-packages
                         Give the virtual environment access to the system
                         site-packages dir.
...




More information about the Python-list mailing list