GNU bug report logs - #27152
deprecation warnings with Guile 2.2.2

Previous Next

Package: guix;

Reported by: Ricardo Wurmus <rekado <at> elephly.net>

Date: Tue, 30 May 2017 20:32:02 UTC

Severity: normal

Tags: wontfix

Done: ludo <at> gnu.org (Ludovic Courtès)

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 27152 in the body.
You can then email your comments to 27152 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guix <at> gnu.org:
bug#27152; Package guix. (Tue, 30 May 2017 20:32:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Ricardo Wurmus <rekado <at> elephly.net>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Tue, 30 May 2017 20:32:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Ricardo Wurmus <rekado <at> elephly.net>
To: bug-guix <at> gnu.org
Subject: deprecation warnings with Guile 2.2.2
Date: Tue, 30 May 2017 22:31:15 +0200
I get a couple of deprecation warnings with Guile 2.2.2, for example

    Import (ice-9 threads) to have access to `current-processor-count'.
    `_IOFBF' is deprecated.  Use the symbol 'block instead.

I only see them after “export GUILE_WARN_DEPRECATED=detailed”.  Without
that variable I get a block of text that informs me that deprecated
features have been used.

This happens especially when running “make” or when not all files have
been compiled.

-- 
Ricardo

GPG: BCA6 89B6 3655 3801 C3C6  2150 197A 5888 235F ACAC
https://elephly.net





Information forwarded to bug-guix <at> gnu.org:
bug#27152; Package guix. (Wed, 31 May 2017 21:01:02 GMT) Full text and rfc822 format available.

Message #8 received at 27152 <at> debbugs.gnu.org (full text, mbox):

From: ludo <at> gnu.org (Ludovic Courtès)
To: Ricardo Wurmus <rekado <at> elephly.net>
Cc: 27152 <at> debbugs.gnu.org
Subject: Re: bug#27152: deprecation warnings with Guile 2.2.2
Date: Wed, 31 May 2017 23:00:19 +0200
Hi,

Ricardo Wurmus <rekado <at> elephly.net> skribis:

> I get a couple of deprecation warnings with Guile 2.2.2, for example
>
>     Import (ice-9 threads) to have access to `current-processor-count'.
>     `_IOFBF' is deprecated.  Use the symbol 'block instead.

We can fix the first one with #:use-module (ice-9 threads).

The second one is just a pain: in 2.2 one is supposed to write

  (setvbuf port 'block)

instead of

  (setvbuf port _IOFBF)

So we could do:

  (cond-expand (guile-2.2 (define _IOFBF 'block))
               (else #t))

in some central place (that doesn’t exist), but really, that’s annoying.

So I’m tempted to do nothing.

Note that normally users do not see these deprecation warnings at all.

Thoughts?

Ludo’.




Information forwarded to bug-guix <at> gnu.org:
bug#27152; Package guix. (Sat, 03 Jun 2017 00:41:02 GMT) Full text and rfc822 format available.

Message #11 received at 27152 <at> debbugs.gnu.org (full text, mbox):

From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: Ricardo Wurmus <rekado <at> elephly.net>, 27152 <at> debbugs.gnu.org
Subject: Re: bug#27152: deprecation warnings with Guile 2.2.2
Date: Fri, 2 Jun 2017 17:39:59 -0700
[Message part 1 (text/plain, inline)]
On Wed, May 31, 2017 at 2:00 PM, Ludovic Courtès <ludo <at> gnu.org> wrote:

> Hi,
>
> Ricardo Wurmus <rekado <at> elephly.net> skribis:
>
> > I get a couple of deprecation warnings with Guile 2.2.2, for example
> >
> >     Import (ice-9 threads) to have access to `current-processor-count'.
> >     `_IOFBF' is deprecated.  Use the symbol 'block instead.
>
> We can fix the first one with #:use-module (ice-9 threads).
>
> The second one is just a pain: in 2.2 one is supposed to write
>
>   (setvbuf port 'block)
>
> instead of
>
>   (setvbuf port _IOFBF)
>
> So we could do:
>
>   (cond-expand (guile-2.2 (define _IOFBF 'block))
>                (else #t))
>

in some central place (that doesn’t exist), but really, that’s annoying.
>
> So I’m tempted to do nothing.
>
> Note that normally users do not see these deprecation warnings at all.
>
> Thoughts?
>

Why not let good old sed have a run at it? Seems like a simple find and
replace operation, and 'block looks nicer than _IOFBF to my eyes.

Maxim
[Message part 2 (text/html, inline)]

Information forwarded to bug-guix <at> gnu.org:
bug#27152; Package guix. (Sat, 03 Jun 2017 01:21:02 GMT) Full text and rfc822 format available.

Message #14 received at 27152 <at> debbugs.gnu.org (full text, mbox):

From: Mark H Weaver <mhw <at> netris.org>
To: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
Cc: Ludovic Courtès <ludo <at> gnu.org>, 27152 <at> debbugs.gnu.org
Subject: Re: bug#27152: deprecation warnings with Guile 2.2.2
Date: Fri, 02 Jun 2017 21:20:03 -0400
Maxim Cournoyer <maxim.cournoyer <at> gmail.com> writes:

> On Wed, May 31, 2017 at 2:00 PM, Ludovic Courtès <ludo <at> gnu.org> wrote:
>
>  Ricardo Wurmus <rekado <at> elephly.net> skribis:
>
>  > I get a couple of deprecation warnings with Guile 2.2.2, for example
>  >
>  > Import (ice-9 threads) to have access to `current-processor-count'.
>  > `_IOFBF' is deprecated. Use the symbol 'block instead.
>
>  We can fix the first one with #:use-module (ice-9 threads).
>
>  The second one is just a pain: in 2.2 one is supposed to write
>
>  (setvbuf port 'block)
>
>  instead of
>
>  (setvbuf port _IOFBF)
>
>  So we could do:
>
>  (cond-expand (guile-2.2 (define _IOFBF 'block))
>  (else #t))
>
>  in some central place (that doesn’t exist), but really, that’s annoying.
>
>  So I’m tempted to do nothing.
>
>  Note that normally users do not see these deprecation warnings at all.
>
>  Thoughts?
>
> Why not let good old sed have a run at it? Seems like a simple find and replace operation, and 'block looks nicer than _IOFBF to my eyes.

If we did that, then Guix would stop working with guile-2.0.  Given that
guile-2.2 is not yet available from many popular distros, I think it
would be unwise to drop guile-2.0 at this time.

       Mark




Information forwarded to bug-guix <at> gnu.org:
bug#27152; Package guix. (Sat, 03 Jun 2017 04:44:01 GMT) Full text and rfc822 format available.

Message #17 received at 27152 <at> debbugs.gnu.org (full text, mbox):

From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
To: Mark H Weaver <mhw <at> netris.org>
Cc: Ludovic Courtès <ludo <at> gnu.org>, 27152 <at> debbugs.gnu.org
Subject: Re: bug#27152: deprecation warnings with Guile 2.2.2
Date: Fri, 02 Jun 2017 21:43:05 -0700
Hi Mark,

Mark H Weaver <mhw <at> netris.org> writes:

> Maxim Cournoyer <maxim.cournoyer <at> gmail.com> writes:
>
>> On Wed, May 31, 2017 at 2:00 PM, Ludovic Courtès <ludo <at> gnu.org> wrote:
>>
>>  Ricardo Wurmus <rekado <at> elephly.net> skribis:
>>
>>  > I get a couple of deprecation warnings with Guile 2.2.2, for example
>>  >
>>  > Import (ice-9 threads) to have access to `current-processor-count'.
>>  > `_IOFBF' is deprecated. Use the symbol 'block instead.
>>
>>  We can fix the first one with #:use-module (ice-9 threads).
>>
>>  The second one is just a pain: in 2.2 one is supposed to write
>>
>>  (setvbuf port 'block)
>>
>>  instead of
>>
>>  (setvbuf port _IOFBF)
>>
>>  So we could do:
>>
>>  (cond-expand (guile-2.2 (define _IOFBF 'block))
>>  (else #t))
>>
>>  in some central place (that doesn’t exist), but really, that’s annoying.
>>
>>  So I’m tempted to do nothing.
>>
>>  Note that normally users do not see these deprecation warnings at all.
>>
>>  Thoughts?
>>
>> Why not let good old sed have a run at it? Seems like a simple find and replace operation, and 'block looks nicer than _IOFBF to my eyes.
>
> If we did that, then Guix would stop working with guile-2.0.  Given that
> guile-2.2 is not yet available from many popular distros, I think it
> would be unwise to drop guile-2.0 at this time.

Isn't Guile included in the Guix binary releases? I would have thought
so. Otherwise, I just tried "guix pack guile <at> 2.2" and the resulting
archive is 40 MiB.

I'm not saying it's worth it, but it's an option.

Maxim




Information forwarded to bug-guix <at> gnu.org:
bug#27152; Package guix. (Sun, 04 Jun 2017 05:19:01 GMT) Full text and rfc822 format available.

Message #20 received at 27152 <at> debbugs.gnu.org (full text, mbox):

From: Mark H Weaver <mhw <at> netris.org>
To: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
Cc: Ludovic Courtès <ludo <at> gnu.org>, 27152 <at> debbugs.gnu.org
Subject: Re: bug#27152: deprecation warnings with Guile 2.2.2
Date: Sun, 04 Jun 2017 01:18:11 -0400
Maxim Cournoyer <maxim.cournoyer <at> gmail.com> writes:

> Mark H Weaver <mhw <at> netris.org> writes:
>
>> Maxim Cournoyer <maxim.cournoyer <at> gmail.com> writes:
>>
>>> Why not let good old sed have a run at it? Seems like a simple find
>>> and replace operation, and 'block looks nicer than _IOFBF to my
>>> eyes.
>>
>> If we did that, then Guix would stop working with guile-2.0.  Given that
>> guile-2.2 is not yet available from many popular distros, I think it
>> would be unwise to drop guile-2.0 at this time.
>
> Isn't Guile included in the Guix binary releases?

Yes, but that's not the only supported method to install Guix.  While I
acknowledge that most new users are happy to use our binary tarball,
many users prefer to compile our source tarball, or to try out a Guix
package provided by their existing distribution.

Security conscious users tend to be nervous about entrusting their
computer's security to a source of precompiled binaries that is new to
them.

While it's true that they will need our bootstrap binaries, and that
they are highly likely to end up using our binary substitutes before
long, it nonetheless seems to me that it is best not to ask newcomers to
trust a large binary from us as their first step into our community,
without providing other easy methods that are more comfortable to them.
Users are comfortable installing a package from a distro that they've
already put their trust in.

So, I would prefer to continue supporting guile-2.0 until guile-2.2 is
more widely deployed in popular distros, or at least until it becomes a
hassle to continue supporting guile-2.0.

I'll also mention that there's apparently an unresolved bug somewhere
(guile2.2-ssh?) that prevents us from using guix-based-on-guile-2.2 on
hydra.gnu.org:

  https://bugs.gnu.org/26976

       Mark




Information forwarded to bug-guix <at> gnu.org:
bug#27152; Package guix. (Sun, 04 Jun 2017 05:52:02 GMT) Full text and rfc822 format available.

Message #23 received at 27152 <at> debbugs.gnu.org (full text, mbox):

From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
To: Mark H Weaver <mhw <at> netris.org>
Cc: Ludovic Courtès <ludo <at> gnu.org>, 27152 <at> debbugs.gnu.org
Subject: Re: bug#27152: deprecation warnings with Guile 2.2.2
Date: Sat, 03 Jun 2017 22:51:24 -0700
Hello Mark,

Mark H Weaver <mhw <at> netris.org> writes:

> Maxim Cournoyer <maxim.cournoyer <at> gmail.com> writes:
>
>> Mark H Weaver <mhw <at> netris.org> writes:
>>
>>> Maxim Cournoyer <maxim.cournoyer <at> gmail.com> writes:
>>>
>>>> Why not let good old sed have a run at it? Seems like a simple find
>>>> and replace operation, and 'block looks nicer than _IOFBF to my
>>>> eyes.
>>>
>>> If we did that, then Guix would stop working with guile-2.0.  Given that
>>> guile-2.2 is not yet available from many popular distros, I think it
>>> would be unwise to drop guile-2.0 at this time.
>>
>> Isn't Guile included in the Guix binary releases?
>
> Yes, but that's not the only supported method to install Guix.  While I
> acknowledge that most new users are happy to use our binary tarball,
> many users prefer to compile our source tarball, or to try out a Guix
> package provided by their existing distribution.
>
> Security conscious users tend to be nervous about entrusting their
> computer's security to a source of precompiled binaries that is new to
> them.
>
> While it's true that they will need our bootstrap binaries, and that
> they are highly likely to end up using our binary substitutes before
> long, it nonetheless seems to me that it is best not to ask newcomers to
> trust a large binary from us as their first step into our community,
> without providing other easy methods that are more comfortable to them.
> Users are comfortable installing a package from a distro that they've
> already put their trust in.
>
> So, I would prefer to continue supporting guile-2.0 until guile-2.2 is
> more widely deployed in popular distros, or at least until it becomes a
> hassle to continue supporting guile-2.0.
>
> I'll also mention that there's apparently an unresolved bug somewhere
> (guile2.2-ssh?) that prevents us from using guix-based-on-guile-2.2 on
> hydra.gnu.org:
>
>   https://bugs.gnu.org/26976
>
>        Mark

OK, I understand better your point of view now, thanks for taking the
time to explain it in details! I'd be somewhat concerned though about
Guix sooner than later not running smoothly on Guile 2.0 due to the vast
majority of users using and testing with Guile 2.2 rather than Guile
2.0. There was some breaking changes in 2.2, and it seems like wanting to
support both might lead to code complexity or restraint that would
otherwise allow simplifications and clean-ups of the code base.

Also, nothing is stopping security minded individuals from building
Guile 2.2 from sources, so the argument about security seems a bit moot
to me.

But I will leave it to the Guix maintainers to decide what works best
for minimizing their load :)

Thanks again for sharing your thoughts,

Maxim




Information forwarded to bug-guix <at> gnu.org:
bug#27152; Package guix. (Sun, 04 Jun 2017 22:05:02 GMT) Full text and rfc822 format available.

Message #26 received at 27152 <at> debbugs.gnu.org (full text, mbox):

From: Mark H Weaver <mhw <at> netris.org>
To: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
Cc: Ludovic Courtès <ludo <at> gnu.org>, 27152 <at> debbugs.gnu.org
Subject: Re: bug#27152: deprecation warnings with Guile 2.2.2
Date: Sun, 04 Jun 2017 18:04:30 -0400
Maxim Cournoyer <maxim.cournoyer <at> gmail.com> writes:

> Mark H Weaver <mhw <at> netris.org> writes:
>
>> Maxim Cournoyer <maxim.cournoyer <at> gmail.com> writes:
>>
>>> Mark H Weaver <mhw <at> netris.org> writes:
>>>
>>>> Maxim Cournoyer <maxim.cournoyer <at> gmail.com> writes:
>>>>
>>>>> Why not let good old sed have a run at it? Seems like a simple find
>>>>> and replace operation, and 'block looks nicer than _IOFBF to my
>>>>> eyes.
>>>>
>>>> If we did that, then Guix would stop working with guile-2.0.  Given that
>>>> guile-2.2 is not yet available from many popular distros, I think it
>>>> would be unwise to drop guile-2.0 at this time.
>>>
>>> Isn't Guile included in the Guix binary releases?
>>
>> Yes, but that's not the only supported method to install Guix.  While I
>> acknowledge that most new users are happy to use our binary tarball,
>> many users prefer to compile our source tarball, or to try out a Guix
>> package provided by their existing distribution.
>>
>> Security conscious users tend to be nervous about entrusting their
>> computer's security to a source of precompiled binaries that is new to
>> them.
>>
>> While it's true that they will need our bootstrap binaries, and that
>> they are highly likely to end up using our binary substitutes before
>> long, it nonetheless seems to me that it is best not to ask newcomers to
>> trust a large binary from us as their first step into our community,
>> without providing other easy methods that are more comfortable to them.
>> Users are comfortable installing a package from a distro that they've
>> already put their trust in.
>>
>> So, I would prefer to continue supporting guile-2.0 until guile-2.2 is
>> more widely deployed in popular distros, or at least until it becomes a
>> hassle to continue supporting guile-2.0.
>>
>> I'll also mention that there's apparently an unresolved bug somewhere
>> (guile2.2-ssh?) that prevents us from using guix-based-on-guile-2.2 on
>> hydra.gnu.org:
>>
>>   https://bugs.gnu.org/26976
>>
>>        Mark
>
> OK, I understand better your point of view now, thanks for taking the
> time to explain it in details! I'd be somewhat concerned though about
> Guix sooner than later not running smoothly on Guile 2.0 due to the vast
> majority of users using and testing with Guile 2.2 rather than Guile
> 2.0. There was some breaking changes in 2.2, and it seems like wanting to
> support both might lead to code complexity or restraint that would
> otherwise allow simplifications and clean-ups of the code base.
>
> Also, nothing is stopping security minded individuals from building
> Guile 2.2 from sources, so the argument about security seems a bit moot
> to me.

It's true that security conscious users would still have the option of
building Guix, Guile, GnuTLS, and maybe some other prerequisites from
source code, but that's a lot of work to try Guix for the first time.

The other option currently available to them is to install a 'guix'
package from their distro, but I guess that most of those distro
packages would have to be dropped (or not upgraded anytime soon) if we
stop supporting guile-2.0.

Having said all of this, I acknowledge that it's not a strong argument,
and if it starts becoming difficult to support guile-2.0, then we should
drop that support.  I don't feel strongly about it.

> Thanks again for sharing your thoughts,

Likewise, thanks for the discussion!

       Mark




Added tag(s) wontfix. Request was from ludo <at> gnu.org (Ludovic Courtès) to control <at> debbugs.gnu.org. (Sat, 26 Aug 2017 10:10:01 GMT) Full text and rfc822 format available.

bug closed, send any further explanations to 27152 <at> debbugs.gnu.org and Ricardo Wurmus <rekado <at> elephly.net> Request was from ludo <at> gnu.org (Ludovic Courtès) to control <at> debbugs.gnu.org. (Sat, 26 Aug 2017 10:10:01 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sat, 23 Sep 2017 11:24:06 GMT) Full text and rfc822 format available.

This bug report was last modified 6 years and 215 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.