all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Bengt Richter <bokr@bokr.com>
To: zimoun <zimon.toutoune@gmail.com>
Cc: Guix Devel <guix-devel@gnu.org>
Subject: Re: Python 2 end-of-life?
Date: Thu, 28 Nov 2019 22:07:32 -0800	[thread overview]
Message-ID: <20191129060732.GA1094@PhantoNv4ArchGx.localdomain> (raw)
In-Reply-To: <CAJ3okZ3Hn9FSMHS5zYwcu9DgzwWNHzuUey1FOgG6xqtG4jzBLg@mail.gmail.com>

Hi zimoun,

On +2019-11-27 18:35:42 +0100, zimoun wrote:
> Hi Konrad,
> 
> On Wed, 27 Nov 2019 at 08:56, Konrad Hinsen <konrad.hinsen@fastmail.net> wrote:
> 
> > > IOW, a bunch just differ by version -- I wonder how many of the
> > > packages that drew in old versions could run fine with respective
> > > latest versions of what they are dependent on?
> >
> > That's a very good question!
> 
> Is it not cheap to replace the python2 dependency by the python3 one
> and try to locally build?
>

The first step is probably cheap, but if you just s/python2/python3/g
and it "works," what do you know? Can you even begin to trust, unless
automated tests were _really_^n well designed ??

Also -- are we talking about build-time dependency or run-time?
Is the latter a pure static image or dynamically linked?

And lots more questions ;-)

> 
> The snippet of code you sent helps to figure out which packages are
> still using Python2.
>

I think it represents more than that. It represents an instance of
a kind of system viewer/browser.

Konrad made a new version which is even nicer, as you have probably
already seen.

I think it will be worthwhile to have various viewing/browsing tools
that can help us do reasonable triage on where to put effort.
Something that will reveal the low-hanging fruit ;-)

Also, this is not just about python2 vs python3. There can be minor
dependencies on perl or tcl or lua or whatever, or the language can
be 95% of the source for the package.

How do we know the proportions or their significance without a tool?

Yeah, we can get the sources for the package manually and
look at them various ways, but how long before you make
yourself a viewer of some sort?

But everybody can't easily whip up a useful tool.

So  I think it would be good for guix if the top talent would
favor allocating time to making wizard tools that will empower
lesser mortals to see and operate on what they can't see
without the tools.


Of course, (IMO :) tools should never clobber anything valuable without
understandable warning, and explicit confirmation (and confirmation
of having safely bailed out, for comfort :-). Having /dev/sda1 clobbered
is a nuisance even if you have a backup image. Been there. Twice shy ;-)

> As you said, some packages will not be updated to Python 3. Let
> document it in description for example and let provide a rationale
> explaining why that we put in the manual.
> 
> 
> > That's yet another question: could we patch the upstream code to replace
> > Python by something else that's more convenient for Guix. That may
> > actually be a worthwhile approach to reduce software bloat in Guix,
> > but it also shifts some of the maintenance burden from upstream to Guix.
> 
> It does not appear to me a reasonable approach.

If it could be an automated patch substitution of a pure guix function that
will pass the same well-designed test suite as the python function it replaces,
then I think it is entirely reasonable. We are not asking upstream to do anything,
other than providing a well-designed test suite that will serve themselves well.

Then the need for updates on our side would be detected as testing errors.

> 
> 
> > Guix might well contribute to a long-term improvement of everyone's
> > habits in this respect, by providing the bird's-eyes view of software
> > systems that developers and maintainers of individual packages cannot
> > have. What you describe is just the application of well-known ideas from
> > software engineering (cleaning up code before it becomes unmaintainable)
> > to the systems level. Which is possible because Guix turns the systems
> > level into just another software layer.
> 
> Agree! :-)
>

Yes, +1 for more bird's-eyes viewers ;-)

> 
> All the best,
> simon

-- 
Regards,
Bengt Richter

  reply	other threads:[~2019-11-29  6:08 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-31 15:39 Python 2 end-of-life? zimoun
2019-11-21 11:46 ` zimoun
2019-11-21 12:01   ` Konrad Hinsen
2019-11-26 16:51     ` Konrad Hinsen
2019-11-26 17:50       ` Hartmut Goebel
2019-11-26 18:55         ` ng0
2019-11-27  8:28         ` Konrad Hinsen
2019-11-27 17:41           ` zimoun
2019-11-26 21:51       ` Bengt Richter
2019-11-27  7:56         ` Konrad Hinsen
2019-11-27 17:35           ` zimoun
2019-11-29  6:07             ` Bengt Richter [this message]
2019-11-29  7:38               ` Konrad Hinsen
2019-11-29 12:12                 ` zimoun
2019-11-29 11:41               ` zimoun
2019-11-29 13:42                 ` Bengt Richter
2019-11-29 14:12                   ` zimoun
2019-11-29 22:16                     ` Bengt Richter
2019-11-27 17:28         ` zimoun
2019-11-27 17:43           ` Ricardo Wurmus
2019-11-29  6:54           ` Bengt Richter
2019-11-29 11:55             ` zimoun
2019-11-28 14:40       ` Konrad Hinsen
2019-11-28 15:50         ` Hartmut Goebel
2019-11-28 18:22           ` zimoun
2019-11-21 17:28   ` Alex Griffin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20191129060732.GA1094@PhantoNv4ArchGx.localdomain \
    --to=bokr@bokr.com \
    --cc=guix-devel@gnu.org \
    --cc=zimon.toutoune@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.