Deutsch English Français Italiano |
<mailman.19.1744926071.3008.python-list@python.org> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!news.nobody.at!news.swapon.de!fu-berlin.de!uni-berlin.de!not-for-mail From: Mats Wichmann <mats@wichmann.us> Newsgroups: comp.lang.python Subject: Re: Pip installs to unexpected place Date: Thu, 17 Apr 2025 15:41:06 -0600 Lines: 40 Message-ID: <mailman.19.1744926071.3008.python-list@python.org> References: <CAApdmf2J69WgkR159sBSkxN0=mYoNmHZYboBmpPi+LdA-YBNpg@mail.gmail.com> <CAN06=CxPNLHtr_sdgphR2jrN1V+WbB8wZDJdbvfEDb-MYtmPHA@mail.gmail.com> <bbe32f47-13d2-459c-af22-4e0e37834091@tompassin.net> <4ZcdYR5WnWznV1q@mail.python.org> <cc1c6cf5-f8b9-4528-b6b0-110499b88162@wichmann.us> <4Zd3YM00SYznVKQ@mail.python.org> <CAJQBtgmfgC5aQy_7RXwHDbsxaf1UWYY0=FNsgPPR2UzzuKfTTA@mail.gmail.com> <4ZdrJv0v0LznV1q@mail.python.org> <6d1ac10c-80c0-484b-a7e7-e1966cea1b5d@wichmann.us> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Trace: news.uni-berlin.de B3vQncD2nA4jUtb1jjidKwXzAHs7qaqdZbLpBeDpu8bA== Cancel-Lock: sha1:j8VbyRKPhcpGk1BPxgGpC2QarcE= sha256:H93ZvFpTyduUFhN0l/xvx8ZS3NLe9w0w/NXOkN7idm8= Return-Path: <mats@wichmann.us> X-Original-To: python-list@python.org Delivered-To: python-list@mail.python.org Authentication-Results: mail.python.org; dkim=pass reason="2048-bit key; unprotected key" header.d=messagingengine.com header.i=@messagingengine.com header.b=JsQNQ1A6; dkim-adsp=none (unprotected policy); dkim-atps=neutral X-Spam-Status: OK 0.024 X-Spam-Evidence: '*H*': 0.95; '*S*': 0.00; 'pip': 0.04; 'chances': 0.05; 'is.': 0.05; '(?)': 0.09; 'dependencies': 0.09; 'something,': 0.09; 'trivial': 0.09; 'that.': 0.15; '15:15,': 0.16; 'be,': 0.16; 'directories.': 0.16; 'for.': 0.16; 'great.': 0.16; 'many,': 0.16; 'packages.': 0.16; 'pip,': 0.16; 'received:10.202': 0.16; 'received:10.202.2': 0.16; 'received:internal': 0.16; 'received:messagingengine.com': 0.16; 'refuse': 0.16; 'wrote:': 0.16; 'grant': 0.17; "can't": 0.17; 'installing': 0.19; 'to:addr:python-list': 0.20; 'instructions': 0.22; 'maybe': 0.22; 'version': 0.23; 'install': 0.23; 'installed': 0.23; 'run': 0.23; 'anything': 0.25; 'stuff': 0.25; 'brings': 0.26; 'asked': 0.28; 'done': 0.28; '>>>': 0.28; 'expect': 0.28; 'header:User-Agent:1': 0.30; 'python-list': 0.32; 'but': 0.32; 'there': 0.33; 'header:In-Reply-To:1': 0.34; 'package': 0.34; 'complex': 0.35; 'this.': 0.35; 'really': 0.36; 'source': 0.36; 'necessarily': 0.37; 'using': 0.37; "it's": 0.37; 'could': 0.37; 'read': 0.38; 'two': 0.39; "that's": 0.39; 'least': 0.39; 'break': 0.39; 'still': 0.40; 'best': 0.61; "there's": 0.61; 'great': 0.62; 'point.': 0.62; 'reasonable': 0.62; 'your': 0.64; 'let': 0.65; 'look': 0.65; 'well': 0.65; 'generally': 0.67; 'accept': 0.67; 'right': 0.68; 'website,': 0.68; 'further': 0.69; 'obvious': 0.69; 'practices.': 0.69; 'choice': 0.76; 'conflict': 0.76; 'see,': 0.76; 'left': 0.83; 'reasons': 0.84; 'disagree': 0.84; 'dozen': 0.84; 'forgot': 0.84; 'system).': 0.84; 'received:103': 0.91 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=wichmann.us; h= cc:content-transfer-encoding:content-type:content-type:date:date :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to; s=2018-07.pbsmtp; t= 1744926068; x=1745012468; bh=5hd4kfZf4GM9v/eN8GeEsUZrJEZ+rLCfr46 1HcUv7LA=; b=Em2BsIryUoItDLG1ZZqh+rGSOSyMPiebDpDHUYaa8oCVW625SsR DU2XH8lx8rPfC4Scwl3k1Mt7CGK4YDM9NnZ0J9vNr5IFYZcYQlNHSCK1pHHMRnia qhLKKPxboxu4MVnxBjgMgDeU2+lHnQU5bFnyfE9CuH1TzfDhaZGzMwp8= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:subject:subject:to:to:x-me-proxy:x-me-sender :x-me-sender:x-sasl-enc; s=fm2; t=1744926068; x=1745012468; bh=5 hd4kfZf4GM9v/eN8GeEsUZrJEZ+rLCfr461HcUv7LA=; b=JsQNQ1A6DzzJVtkzc 4LvF+hK2fGOozOfr+ri6YKT4wGHevFrgG8Rcj9KR8V40BRp9eVcN2nP/ThKlu/T0 xvJHCNG4xAxbJn8AiFya4dpCdjeVq7nt4AcnPYKxN5LZiJOsEbUaSRxhgU3BsfB4 JX6TTMOn6VjV7ftMYZ/HYNbljqE6DRZaNpPlIYj4EitCSer/P4V/4nkskK4DvUHe JnBi97fcw5WSn7OlSzBRJGIp+qaef0R9981OiJCpWZ2hCADrW9H0pmcCCruxPiaU yW6t/kh2rm41bO+xl01cHJW+H4Y+4C2R8UbfQR+IC3SvTB45Ckl8HNXk1nlFaYRN Z5ZQA== X-ME-Sender: <xms:dHUBaMaYflaxfeCwGdUDoG6zS_LRdpyPGmGynmHfQE9cnXLvqgBmEw> <xme:dHUBaHYMp2MmOKbxIYN6HDVUUNenEPWT5MGAKV3UUCk18b8SsUJc0S-WBuXsqJOXP dLsBUTHUPmpfZKJWF0> X-ME-Received: <xmr:dHUBaG-qeksrE828XvC83rYTk1oS0BKMJQ6NS7IOpOhZlRxK8k8o6rksshrXJnpiXdxIHlHsoSAsJUSl7-hfbV-PRbmrtQrhnA> X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeefvddrtddtgddvfedtfeeiucetufdoteggodetrf dotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdggtfgfnhhsuhgsshgtrhhisggv pdfurfetoffkrfgpnffqhgenuceurghilhhouhhtmecufedttdenucenucfjughrpefkff ggfgfuvfhfhfgjtgfgsehtjeertddtvdejnecuhfhrohhmpeforghtshcuhghitghhmhgr nhhnuceomhgrthhsseifihgthhhmrghnnhdruhhsqeenucggtffrrghtthgvrhhnpedtje duveeiteegteejgeehiedufeekgfdvjefgvedtteduffeuieelieevtdegffenucevlhhu shhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehmrghtshesfihitg hhmhgrnhhnrdhushdpnhgspghrtghpthhtohepuddpmhhouggvpehsmhhtphhouhhtpdhr tghpthhtohepphihthhhohhnqdhlihhsthesphihthhhohhnrdhorhhg X-ME-Proxy: <xmx:dHUBaGq3kf1yRMLOYWI6SYn1kfGXXGuPHRhQC5Q31GNOCNL8ToICfw> <xmx:dHUBaHoY0B9JJqHwtcltzyHRfTuWlydXSn2QlW6deKJLEyEUo4VTcQ> <xmx:dHUBaESk9l4cAhBiylExl4lfwyrJDu70JWywepoO-m5hxpbR3l8aLA> <xmx:dHUBaHqa5t9TJ5P9qebA00qoDv7qPCp1enuLWe71yZOJJzbOaAyE5A> <xmx:dHUBaIe7exgQ5SEA3r-qVZH7fcljGCQy7qoPaq47Jo5nYEFdvG5zBu72> Feedback-ID: i387144f0:Fastmail User-Agent: Mozilla Thunderbird Content-Language: en-US Autocrypt: addr=mats@wichmann.us; keydata= xsDiBD9xp6oRBAC1vd3YI8Gcr1CxpV1gldNQu0uQsNaICDk+Ai3+R163s/P83JOYG+SBEA3P v7iZx70qpQ3RzP7KrjF1Nm6j0em9ccUX2fPQUCAxXw5Hiq7CSMiwQQZRI6shcnyMh9XTKViT WK5MrKDyvjDEn7epjKzKwPS5SG039l6XaOKU0A4uGwCgsNqUQqC0gMMcbKlJV8ql58iKmbMD /ii8FPQrXmyS/FnsPs7UddV5qMHKm7NUH5oiKuMVyakInRyq9iIxuu3D4Ec6mWRKcGsjmIkW HXCSz0aefs6dsqNqpU54cYioJ3wP5LzHK7oclgJPryVt5Qezbdutf8SQf8gVkaNIlkxwGUzi bKTZ6CHzwlz9nNgeel0XPUcZzFxGA/4paeCg2rMSVuAhUQbsLYHu4XzTs9P16zaXkrtxc4m5 b+BF5xsLgTpyO5l859XudS2Gp+7/Y37dAU4QlyGGOboWmF1y9U5DnzBwG8ghsnym+ga58MJh LdRdQQ6xQolCpEXOuzm40f2r5uMxF3KOJ7WpIPuGAkeCPru9BmlATH+zOs0gTWF0cyBXaWNo bWFubiA8bWF0c0B3aWNobWFubi51cz7CYQQTEQIAIQIbAwYLCQgHAwIDFQIDAxYCAQIeAQIX gAUCT0VyZwIZAQAKCRDAMaCQc9hUxiZBAJ9cWziGp7hVfsu5T+cQptc3rLNndQCgrZh8u5LW BfJ5e/Y+3PwZ8UEm+ELOwE0EP5is8BAEAMtwzcA8TYf5UTjDMgwcSNoErTc9ag+IX05QFgL8 aF8sfJRv5atcitqQy0gSIsOzI+L/AFdPN/+QQI3dL1tCq14t32KPDtigDhzm6jVPXX5z+V9u xnD8XTp+ZvNcWoHXjViM8aXeLLEiCpiVCho307h3XShvqoKINWRQWeAsKKDDAAMFA/48zaey wiiEyvI0meJ1KkNHxdLP0yLODr1WV6j9xkPkLWOaIDw7dlwEOlF1N1YtZ2wa0p1wsttdIbIx ffgwXmcH4zrdxUIMz3U0BqYzk5H+5cYFXECXTFVOmweS+JECYMj80PjRoKCO1eVO1N30zksB 36NnhZWPRWIhjK3ZarIYH8JGBBgRAgAGBQI/mKzwAAoJEMAxoJBz2FTG6VEAoKDYHfDp5Q3q PuPvPahCE9HsXMgAAJ9INTqcLSJrOfyJ8q95nBO1T26H2Q== In-Reply-To: <4ZdrJv0v0LznV1q@mail.python.org> X-BeenThere: python-list@python.org X-Mailman-Version: 2.1.39 Precedence: list List-Id: General discussion list for the Python programming language <python-list.python.org> List-Unsubscribe: <https://mail.python.org/mailman/options/python-list>, <mailto:python-list-request@python.org?subject=unsubscribe> List-Archive: <https://mail.python.org/pipermail/python-list/> List-Post: <mailto:python-list@python.org> List-Help: <mailto:python-list-request@python.org?subject=help> List-Subscribe: <https://mail.python.org/mailman/listinfo/python-list>, <mailto:python-list-request@python.org?subject=subscribe> X-Mailman-Original-Message-ID: <6d1ac10c-80c0-484b-a7e7-e1966cea1b5d@wichmann.us> X-Mailman-Original-References: <CAApdmf2J69WgkR159sBSkxN0=mYoNmHZYboBmpPi+LdA-YBNpg@mail.gmail.com> <CAN06=CxPNLHtr_sdgphR2jrN1V+WbB8wZDJdbvfEDb-MYtmPHA@mail.gmail.com> <bbe32f47-13d2-459c-af22-4e0e37834091@tompassin.net> <4ZcdYR5WnWznV1q@mail.python.org> <cc1c6cf5-f8b9-4528-b6b0-110499b88162@wichmann.us> <4Zd3YM00SYznVKQ@mail.python.org> <CAJQBtgmfgC5aQy_7RXwHDbsxaf1UWYY0=FNsgPPR2UzzuKfTTA@mail.gmail.com> <4ZdrJv0v0LznV1q@mail.python.org> Bytes: 10422 On 4/17/25 15:15, Grant Edwards via Python-list wrote: > On 2025-04-17, Left Right via Python-list <python-list@python.org> wrote: >>> Also... when installing stuff with pip --user, it is always a package >>> that is not installed for the system (usually not even available for >>> the system). How can that "break system packages"? >> >> pip installs dependencies. Dependencies may disagree on the version >> with the system packages. > > Good point. I don't generally allow pip to install dependencies, so I > forgot about that source of conflict. But as far as I can see, it > still can only break stuff for the user, not for the system. The > system is never going to look in my ~/.local/lib/python* directories. Sure, and it's "your fault" (sic) if you break yourself. You and I can maybe accept that. But it's usually not obvious that you're done anything to break stuff - you just asked to install something, according to the instructions you read on the project's website, which it's reasonable (?) to expect reflects best practices. Usually a simple "pip install". Say you've been using "MLwiz" installed via a system package. It has two dozen dependencies, some of which have further deps. And it works great. Then you install "Chatbridge" via pip, and it brings with it its own dependencies. It's not really useful to refuse to let it bring its own deps with it since there may be version-specific requirements on its deps, which that project has reasons for. So now you've got a few pkgs in the system with different versions in your .local, and you can't run MLwiz any longer, because a .local pkg (picked up first) conflicts with the requirements of MLwiz. There's just not a really great answer to this. "Use a virtualenv". Fine, but that's still daunting to many, and not necessarily as well described as it could be, and the choice of the word "virtual" in the name makes it sound more complex than it actually is. Projects can certainly do better at describing installation scenarios - at least if they have more than a trivial number of deps, where the conflict chances go up rapidly.