guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Guile 3 migration plan


From: Efraim Flashner
Subject: Re: Guile 3 migration plan
Date: Thu, 16 Jan 2020 16:57:31 +0200

On Thu, Jan 16, 2020 at 11:08:15AM +0100, Ludovic Courtès wrote:
> Hello Guix!
> 
> Today is Guile 3 day, a day to celebrate, woohoo!  \o/
> 
> How will Guix migrate to Guile 3?  That’s a threefold process:
> 
>   1. We must first migrate packages.  I propose to rename “guile-next”
>      to “guile” today, such that “guix install guile” will now install
>      Guile 3 (no mass rebuild involved: the “default” Guile remains
>      2.2.)
> 
>      The downside is that if you run “guix install guile guile-json”,
>      you’ll get Guile 3 with Guile-JSON for 2.2; instead, you have to
>      explicitly select “guile3.0-json”.

I feel like these should move together. Imagine if we had python
libraries that only worked with python2 but called them python-foo
anyway. Having consistent naming between the packages is important.

> 
>      I propose renaming all the “guile3.0-” packages to “guile-”, and
>      all the “guile-” packages to “guile2.2-” as a second step, which
>      will address this issue.  This could be done within a few days or
>      weeks.

It seems to me we could switch the guile packages to guile3.0 and leave
guix at guile2.2. In any case, we should create a guix-with-guile3
package to encourage people to try to fix bugs and try it out.

> 
>   2. We must be able to run Guix itself on Guile 3.  This is already
>      possible if you add “3.0” to the ‘GUILE_PKG’ invocation in
>      ‘configure.ac’, but there are still a few test failures that I’ve
>      been working on.  Almost all of them relate to the use of ‘@@’ and
>      ‘mock’, which do not work with Guile 3 “declarative modules”.
> 
>      In many cases, it’s an opportunity to clean up our tests; see for
>      example 4aea90b1876179aab8d603a42533a6bdf97ccd3c and the preceding
>      commit.  It should be possible to be done real soon!

I'm going to miss '@@'

> 
>      Once we’re done, we can change (guix self) so that ‘guix pull’
>      pulls Guix on Guile 3.
> 
>   3. Change ‘default-guile’ to point to Guile 3 in ‘core-updates’, and
>      switch all the packages that consume .go files coming from
>      ‘with-imported-modules’ to Guile 3, in particular ‘shepherd’ and
>      ‘mcron’.
> 
> Thoughts?
> 
> You can celebrate Guile 3 day by helping out any of these!  Let’s
> synchronize here and on IRC!  :-)
> 
> Ludo.’
> 

-- 
Efraim Flashner   <address@hidden>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]