Path: csiph.com!eternal-september.org!reader02.eternal-september.org!aioe.org!bofh.it!news.nic.it!robomod From: Thomas Goirand Newsgroups: linux.debian.maint.python Subject: Re: upstream python concerns, python3-full package for bullseye Date: Sat, 13 Feb 2021 23:10:01 +0100 Message-ID: References: X-Original-To: debian-python@lists.debian.org X-Mailbox-Line: From debian-python-request@lists.debian.org Sat Feb 13 22:04:07 2021 Old-Return-Path: X-Amavis-Spam-Status: No, score=-5.445 tagged_above=-10000 required=5.3 tests=[BAYES_00=-2, LDO_WHITELIST=-5, NICE_REPLY_A=-0.105, SARE_MLH_Stock10=1.66] autolearn=no autolearn_force=no X-Policyd-Weight: using cached result; rate: -3.5 Organization: Debian User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.7.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: quoted-printable X-Mailing-List: archive/latest/19000 List-ID: List-URL: List-Archive: https://lists.debian.org/msgid-search/a511cc7c-a4ba-c758-0261-de09e9e74715@debian.org Approved: robomod@news.nic.it Lines: 81 Sender: robomod@news.nic.it X-Original-Date: Sat, 13 Feb 2021 23:03:49 +0100 X-Original-Message-ID: X-Original-References: <20210211181234.GA4829@silverpine> <5c9a9365-20b9-c600-638c-6c74a024779a@debian.org> <20210212004259.dnrbzkfkszwqctpw@satie.tumbleweed.org.za> Xref: csiph.com linux.debian.maint.python:13217 Hi, FYI, my concerned are addressed by what Stefano wrote about the full desc, though I still feel like I need to reply to you. On 2/12/21 2:08 PM, Julien Palard wrote: > Hi, >=20 > As far as I understand, the divergence between "Python upstream" and=20 > Debian is: >=20 > - It looks like Debian target users consuming software, users just=20 > install a package and it works, no venv needed obviously, it always jus= t=20 > work, it's fantastic. Users may not even care if the program is written= =20 > in Python or not at this point. >=20 > - Upstream Python is obviously composed by people writing in Python and= =20 > know many people who write some Python too: all in need of venv to work= . >=20 >> Also, it's a disservice to push our users into the direction of using >> venv which is very ugly way to use Python in a Debian system > I do agree, we could even replace Python with software in this sentence= . >=20 > And I don't think we're pushing our users to always install things in=20 > venvs. Providing venv is not a big signal for Debian users to ask them=20 > to use it to install packages (if a signal at all). >=20 > With my "I do write things in Python that may run on non-Debian systems= "=20 > hat, and "I teach Python" (most of them not using Debian) hat, a venv i= s=20 > helping me in many many ways, it's literally part of my daily routine: >=20 > - It allows me to pin a set of dependencies and sub-dependencies to an=20 > exact version (I do use pip-compile, from pip-tools), per project, that= =20 > I can use in automatic tests (ensuring if tests passes today, they'll=20 > pass tomorrow), I can share this set with coworkers and future me ("if=20 > it works for me, it works for you"), note my coworkers may not use=20 > Debian at all. >=20 > - It allows me to easily replace a dependency with a modified one to=20 > test it, or make anyone else test it (for example [1]). >=20 > - It allows me to work on my Debian testing laptop on code aimed to wor= k=20 > on Debian stable, or a completly different OS. >=20 > - It allows me to work on various projects with a different set of=20 > incompatible dependencies. Wouldn't it be nicer if all of the dependencies you're talking about were all playing well together? You're happy with venv and pip because they address the huge problem that your dependencies are constantly breaking the world. This needs to stop. Promoting venv and pip isn't helping toward this goal, and that's what I was trying to say to begin wi= th. > I still think venv is a very usefull tool It is. Because it addresses (badly) the brokenness of your dependencies, as I wrote above. > P.S.: If you still feel I'm completly wrong to use venv and pip in my > workflow, I'll be very happy to learn better ways. You are not. Though in an ideal world, you'd be only describing the list of dependency you need, and the tooling would either fetch the Debian package (if available) or through PyPi, and it would always work, without ever needing to care about versions (here, from your side, with pinning and version bounds), and without ever needing to isolate things in a venv/chroot. Cheers, Thomas Goirand (zigo)