RE: [Automated-testing] kci command line poll: Click or Typer?

"Bird, Tim" <[email protected]>
Newsgroups dev.linux.lists.kernelci
Message-ID <BYAPR13MB2503C20593F85F7F641E42D1FDF8A@BYAPR13MB2503.namprd13.prod.outlook.com>
> -----Original Message-----
> From: Mark Brown <[email protected]>
> On Thu, Sep 21, 2023 at 09:17:02PM +0100, Richard Purdie wrote:
> > On Thu, 2023-09-21 at 19:41 +0000, Tim Bird wrote:
> 
> > > If the python community cared about backwards (and forwards)
> > > compatibility, they would not need
> > > the whole mess that is virtual environments.
> 
> > years (Bitbake in case it isn't obvious). Admittedly we've tried to
> > keep it's dependencies minimal (much to the frustration of some) so
> > I've not had much exposure to the wider module ecosystem and I've point
> > blank refused to 'need' virtual environments for our use.
> 
> FWIW assuming the issues Tim has run into are similar those I'm aware of
> then modulo the general stuff with the 2->3 transition (which was it's
> own special thing) the issues are all in the module ecosystem rather
> than the core language and standard library.

Actually, I need to state that I actually like Python a lot, and it's my preferred
choice for scripting languages.  The main command line tool (and most of
the other utility tools) in Fuego are in Python, and I've worked with it for
many years.  As Mark correctly says, it's the module ecosystem
that drives me nuts, not the language itself, or the core libraries.  But it
does give me heartburn when the community decides to remove a core
library.  And the module ecosystem can't keep itself from using newer
versions of the Python language, so if you have a lot of module dependencies
you will find yourself forced to upgrade your modules (and your own code)
along with the interpreter.

I just don't think that the lead developers have cared enough about backwards
compatibility, and I've made the mistake of using modules which the authors
have, over time, made backwards-incompatible changes to.  This is on the
authors of the individual modules, of course.  But I don't sense very good leadership
to avoid breaking backwards compatibility from the core language developers.

I absolute abhor the virtual environment stuff.  I'd seriously rather
monkey-patch an old library (which I've had to do a few times in Fuego), than force my
users to deal with virtual environments.  Maybe I'm doing something wrong,
but about 50% of the time when I try to use virtual environments on some random
python code I want to play with, I end up having problems (sometimes, quite deep-seated).
To be fair, this may be because I have locked down the versions of the distributions used
in my containers in Fuego (for various reasons too long to go into here), and they are starting
to show their age.  But it really has been a nightmare.

 -- Tim
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.