unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Releasing 0.9.1
@ 2016-02-05 13:46 Ludovic Courtès
  2016-02-05 13:51 ` Andreas Enge
                   ` (3 more replies)
  0 siblings, 4 replies; 16+ messages in thread
From: Ludovic Courtès @ 2016-02-05 13:46 UTC (permalink / raw)
  To: Guix-devel

Hello!

I suggest that we release 0.9.1 as soon as we get less than 2 kernel
panic reports per day!

(Just kidding.)

Seriously, I think we should be aiming for a release by the end of the
month.  Here a few rather low-hanging fruits that I think we should
address:

  • Have a GNOME meta-package, or a ‘%gnome-packages’ variable, or
    something like that.  We should provide an example of how to get a
    GNOME setup.  I think several of you have that already.  宋文武?

  • Proper ‘package-with-python2’ (see <http://bugs.gnu.org/22437>.)
    It just needs more testing and adjusting existing packages (fewer
    lines of code, yay!).

  • There are several bugs reports open regarding container-related test
    failures.  I think we should make sure they are addressed and close
    them.  David?

  • The nscd issue in the installer image: <http://bugs.gnu.org/22209>.
    I’ll try to reproduce it in a VM and debug from there.

  • Incorporate root-encryption fixes (<http://bugs.gnu.org/21843>) and
    documentation by Petter.  Petter and Albin, among others, are
    already using an encrypted-root setup AIUI, so it’s “just a matter”
    of consolidating it.  See also
    <http://lists.gnu.org/archive/html/help-guix/2016-01/msg00118.html>.

  • The ‘guile@1.8’ syntax patch.  Mathieu?

  • Possibly the GitHub updater, which seemed pretty much ready.  Ben?

Anything else?

I think we should all focus on these tasks and other bugs at
<http://bugs.gnu.org/guix> (help on bug triage is welcome!).

It may be that I won’t be able to handle this release myself because
I’ll soon be busy for family reasons.  :-)  I think it’s a great
opportunity to try and delegate to someone else (I have a few potential
victims in mind that I need to contact ;-)).  The whole process is
documented in ‘doc/release.org’ in guix-maintenance.git and hopefully
intelligible.

Ludo’.

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Releasing 0.9.1
  2016-02-05 13:46 Releasing 0.9.1 Ludovic Courtès
@ 2016-02-05 13:51 ` Andreas Enge
  2016-02-07 12:13 ` Ben Woodcroft
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 16+ messages in thread
From: Andreas Enge @ 2016-02-05 13:51 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: Guix-devel

On Fri, Feb 05, 2016 at 02:46:24PM +0100, Ludovic Courtès wrote:
> I suggest that we release 0.9.1 as soon as we get less than 2 kernel
> panic reports per day!

Or a week without security update and rebuilding the world.

Andreas

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Releasing 0.9.1
  2016-02-05 13:46 Releasing 0.9.1 Ludovic Courtès
  2016-02-05 13:51 ` Andreas Enge
@ 2016-02-07 12:13 ` Ben Woodcroft
  2016-02-07 12:48   ` Ricardo Wurmus
  2016-02-08 21:21 ` Mathieu Lirzin
  2016-02-25 17:51 ` Ludovic Courtès
  3 siblings, 1 reply; 16+ messages in thread
From: Ben Woodcroft @ 2016-02-07 12:13 UTC (permalink / raw)
  To: Ludovic Courtès, Guix-devel

Hi,

On 05/02/16 23:46, Ludovic Courtès wrote:
[..]
>    • Possibly the GitHub updater, which seemed pretty much ready.  Ben?
Revisiting your comments on that patch Ludo the only thing that stands 
out is:

 >[Ricardo] proposed recently to pass a package object instead of a 
package name to ‘latest-release’. We should do that ideally before this 
patch goes in, or otherwise soon.

Is there any update for this Ricardo? Do we just go ahead and use the 
old style for the time being?
>
> Anything else?
ruby-updater? Does someone mind reviewing the patch please? The thread 
went a bit off-track, I think the original patch is still relevant.
https://lists.gnu.org/archive/html/guix-devel/2016-01/msg00004.html

Thanks,
ben

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Releasing 0.9.1
  2016-02-07 12:13 ` Ben Woodcroft
@ 2016-02-07 12:48   ` Ricardo Wurmus
  2016-02-07 20:44     ` Ludovic Courtès
  0 siblings, 1 reply; 16+ messages in thread
From: Ricardo Wurmus @ 2016-02-07 12:48 UTC (permalink / raw)
  To: Ben Woodcroft; +Cc: Guix-devel


Ben Woodcroft <b.woodcroft@uq.edu.au> writes:

> On 05/02/16 23:46, Ludovic Courtès wrote:
> [..]
>>    • Possibly the GitHub updater, which seemed pretty much ready.  Ben?
> Revisiting your comments on that patch Ludo the only thing that stands 
> out is:
>
>  >[Ricardo] proposed recently to pass a package object instead of a 
> package name to ‘latest-release’. We should do that ideally before this 
> patch goes in, or otherwise soon.
>
> Is there any update for this Ricardo? Do we just go ahead and use the 
> old style for the time being?

Oh, I dropped the ball there.  It’s very simple to do this, but I don’t
think I can do it today, I’m afraid.  I can try to do it tomorrow, but I
don’t think it should block the GitHub updater.

I could easily patch the GitHub updater along with all the other
updaters that would need to be adapted, so my vote is for using the old
style for now and switching to package objects soon thereafter.

~~ Ricardo

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Releasing 0.9.1
  2016-02-07 12:48   ` Ricardo Wurmus
@ 2016-02-07 20:44     ` Ludovic Courtès
  2016-02-07 20:54       ` Ben Woodcroft
  0 siblings, 1 reply; 16+ messages in thread
From: Ludovic Courtès @ 2016-02-07 20:44 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: Guix-devel

Ricardo Wurmus <rekado@elephly.net> skribis:

> Ben Woodcroft <b.woodcroft@uq.edu.au> writes:

[...]

>>  >[Ricardo] proposed recently to pass a package object instead of a 
>> package name to ‘latest-release’. We should do that ideally before this 
>> patch goes in, or otherwise soon.
>>
>> Is there any update for this Ricardo? Do we just go ahead and use the 
>> old style for the time being?
>
> Oh, I dropped the ball there.  It’s very simple to do this, but I don’t
> think I can do it today, I’m afraid.  I can try to do it tomorrow, but I
> don’t think it should block the GitHub updater.
>
> I could easily patch the GitHub updater along with all the other
> updaters that would need to be adapted, so my vote is for using the old
> style for now and switching to package objects soon thereafter.

Fine with me!

Ben: can you post the latest version of the patch?  Or was it already
OK?

Ludo’.

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Releasing 0.9.1
  2016-02-07 20:44     ` Ludovic Courtès
@ 2016-02-07 20:54       ` Ben Woodcroft
  0 siblings, 0 replies; 16+ messages in thread
From: Ben Woodcroft @ 2016-02-07 20:54 UTC (permalink / raw)
  To: Ludovic Courtès, Ricardo Wurmus; +Cc: Guix-devel



On 08/02/16 06:44, Ludovic Courtès wrote:
> Ricardo Wurmus <rekado@elephly.net> skribis:
>
>> Ben Woodcroft <b.woodcroft@uq.edu.au> writes:
> [...]
>
>>>   >[Ricardo] proposed recently to pass a package object instead of a
>>> package name to ‘latest-release’. We should do that ideally before this
>>> patch goes in, or otherwise soon.
>>>
>>> Is there any update for this Ricardo? Do we just go ahead and use the
>>> old style for the time being?
>> Oh, I dropped the ball there.  It’s very simple to do this, but I don’t
>> think I can do it today, I’m afraid.  I can try to do it tomorrow, but I
>> don’t think it should block the GitHub updater.
>>
>> I could easily patch the GitHub updater along with all the other
>> updaters that would need to be adapted, so my vote is for using the old
>> style for now and switching to package objects soon thereafter.
> Fine with me!
>
> Ben: can you post the latest version of the patch?  Or was it already
> OK?
Not OK just yet, I'll resend, I hope today.

Happy (Chinese) GNU year peoples.

ben

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Releasing 0.9.1
  2016-02-05 13:46 Releasing 0.9.1 Ludovic Courtès
  2016-02-05 13:51 ` Andreas Enge
  2016-02-07 12:13 ` Ben Woodcroft
@ 2016-02-08 21:21 ` Mathieu Lirzin
  2016-02-25 17:51 ` Ludovic Courtès
  3 siblings, 0 replies; 16+ messages in thread
From: Mathieu Lirzin @ 2016-02-08 21:21 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: Guix-devel

ludo@gnu.org (Ludovic Courtès) writes:

> Seriously, I think we should be aiming for a release by the end of the
> month.  Here a few rather low-hanging fruits that I think we should
> address:
>
[...]
>   • The ‘guile@1.8’ syntax patch.  Mathieu?

I didn't relook into it yet.  I will try to find some time to work on it
this weekend.

--
Mathieu Lirzin

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Releasing 0.9.1
  2016-02-05 13:46 Releasing 0.9.1 Ludovic Courtès
                   ` (2 preceding siblings ...)
  2016-02-08 21:21 ` Mathieu Lirzin
@ 2016-02-25 17:51 ` Ludovic Courtès
  2016-02-25 18:04   ` Ricardo Wurmus
                     ` (3 more replies)
  3 siblings, 4 replies; 16+ messages in thread
From: Ludovic Courtès @ 2016-02-25 17:51 UTC (permalink / raw)
  To: Guix-devel

So, what’s up with this release?

ludo@gnu.org (Ludovic Courtès) skribis:

>   • Have a GNOME meta-package, or a ‘%gnome-packages’ variable, or
>     something like that.  We should provide an example of how to get a
>     GNOME setup.  I think several of you have that already.  宋文武?

This is mostly done.  Should be provide an additional config for GNOME
in gnu/system/examples?

Besides, there’s the GNOME-Shell bug at <http://bugs.gnu.org/22666> that
would be nice to address.

Also, NetworkManager apparently doesn’t work.  Could someone
investigate?

>   • Proper ‘package-with-python2’ (see <http://bugs.gnu.org/22437>.)
>     It just needs more testing and adjusting existing packages (fewer
>     lines of code, yay!).

Done.

>   • There are several bugs reports open regarding container-related test
>     failures.  I think we should make sure they are addressed and close
>     them.  David?

Hello!  :-)

>   • The nscd issue in the installer image: <http://bugs.gnu.org/22209>.
>     I’ll try to reproduce it in a VM and debug from there.

Presumably fixed.

>   • Incorporate root-encryption fixes (<http://bugs.gnu.org/21843>) and
>     documentation by Petter.  Petter and Albin, among others, are
>     already using an encrypted-root setup AIUI, so it’s “just a matter”
>     of consolidating it.  See also
>     <http://lists.gnu.org/archive/html/help-guix/2016-01/msg00118.html>.

Oops, I dropped the ball.  Maybe that’ll have to wait again.

>   • The ‘guile@1.8’ syntax patch.  Mathieu?

Almost done.

>   • Possibly the GitHub updater, which seemed pretty much ready.  Ben?

Done or almost.

I realized that before the release, it would be nice to have
infrastructure in place that would allow us to have a mirror of
hydra.gnu.org (if there’s a download peak after the release, I’m afraid
hydra.gnu.org wouldn’t be able to keep up.)  One idea is to hack ‘guix
publish’ to make it easy to set up a mirror.  We’ll see.

Ludo’.

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Releasing 0.9.1
  2016-02-25 17:51 ` Ludovic Courtès
@ 2016-02-25 18:04   ` Ricardo Wurmus
  2016-02-25 19:27   ` Leo Famulari
                     ` (2 subsequent siblings)
  3 siblings, 0 replies; 16+ messages in thread
From: Ricardo Wurmus @ 2016-02-25 18:04 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: Guix-devel


Ludovic Courtès <ludo@gnu.org> writes:

>>   • The nscd issue in the installer image: <http://bugs.gnu.org/22209>.
>>     I’ll try to reproduce it in a VM and debug from there.
>
> Presumably fixed.

I could no longer reproduce this on any of my GuixSD machines.  All
recent reports are from users who install with the 0.9.0 release.

>>   • Incorporate root-encryption fixes (<http://bugs.gnu.org/21843>) and
>>     documentation by Petter.  Petter and Albin, among others, are
>>     already using an encrypted-root setup AIUI, so it’s “just a matter”
>>     of consolidating it.  See also
>>     <http://lists.gnu.org/archive/html/help-guix/2016-01/msg00118.html>.
>
> Oops, I dropped the ball.  Maybe that’ll have to wait again.
>
>>   • The ‘guile@1.8’ syntax patch.  Mathieu?
>
> Almost done.
>
>>   • Possibly the GitHub updater, which seemed pretty much ready.  Ben?
>
> Done or almost.
>
> I realized that before the release, it would be nice to have
> infrastructure in place that would allow us to have a mirror of
> hydra.gnu.org (if there’s a download peak after the release, I’m afraid
> hydra.gnu.org wouldn’t be able to keep up.)  One idea is to hack ‘guix
> publish’ to make it easy to set up a mirror.  We’ll see.

This is very good idea!  I’ve been running into more problems with hydra
at our site and it would be great if we could distribute the load a
little.

~~ Ricardo

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Releasing 0.9.1
  2016-02-25 17:51 ` Ludovic Courtès
  2016-02-25 18:04   ` Ricardo Wurmus
@ 2016-02-25 19:27   ` Leo Famulari
  2016-02-26 23:15     ` Ludovic Courtès
  2016-02-25 20:11   ` Andreas Enge
  2016-03-09 13:14   ` Ludovic Courtès
  3 siblings, 1 reply; 16+ messages in thread
From: Leo Famulari @ 2016-02-25 19:27 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: Guix-devel

On Thu, Feb 25, 2016 at 06:51:44PM +0100, Ludovic Courtès wrote:
> So, what’s up with this release?
> 
> ludo@gnu.org (Ludovic Courtès) skribis:
> 
> >   • Have a GNOME meta-package, or a ‘%gnome-packages’ variable, or
> >     something like that.  We should provide an example of how to get a
> >     GNOME setup.  I think several of you have that already.  宋文武?
> 
> This is mostly done.  Should be provide an additional config for GNOME
> in gnu/system/examples?
> 
> Besides, there’s the GNOME-Shell bug at <http://bugs.gnu.org/22666> that
> would be nice to address.
> 
> Also, NetworkManager apparently doesn’t work.  Could someone
> investigate?
> 
> >   • Proper ‘package-with-python2’ (see <http://bugs.gnu.org/22437>.)
> >     It just needs more testing and adjusting existing packages (fewer
> >     lines of code, yay!).
> 
> Done.
> 
> >   • There are several bugs reports open regarding container-related test
> >     failures.  I think we should make sure they are addressed and close
> >     them.  David?
> 
> Hello!  :-)
> 
> >   • The nscd issue in the installer image: <http://bugs.gnu.org/22209>.
> >     I’ll try to reproduce it in a VM and debug from there.
> 
> Presumably fixed.
> 
> >   • Incorporate root-encryption fixes (<http://bugs.gnu.org/21843>) and
> >     documentation by Petter.  Petter and Albin, among others, are
> >     already using an encrypted-root setup AIUI, so it’s “just a matter”
> >     of consolidating it.  See also
> >     <http://lists.gnu.org/archive/html/help-guix/2016-01/msg00118.html>.
> 
> Oops, I dropped the ball.  Maybe that’ll have to wait again.
> 
> >   • The ‘guile@1.8’ syntax patch.  Mathieu?
> 
> Almost done.
> 
> >   • Possibly the GitHub updater, which seemed pretty much ready.  Ben?
> 
> Done or almost.
> 
> I realized that before the release, it would be nice to have
> infrastructure in place that would allow us to have a mirror of
> hydra.gnu.org (if there’s a download peak after the release, I’m afraid
> hydra.gnu.org wouldn’t be able to keep up.)  One idea is to hack ‘guix
> publish’ to make it easy to set up a mirror.  We’ll see.

When Florian was publishing substitutes from fps.io, there was a problem
with `guix publish` in practice.

I set my daemon to use '--substitute-urls=http://fps.io,
http://hydra.gnu.org', or something like that (I don't remember the
syntax). If a desired substitute was not available on fps.io,
hydra.gnu.org would not be queried.

Since Florian was not building continuously with Hydra, his server
became less useful as his set of binaries diverged from those available
on hydra.gnu.org.

Was this ever fixed?

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Releasing 0.9.1
  2016-02-25 17:51 ` Ludovic Courtès
  2016-02-25 18:04   ` Ricardo Wurmus
  2016-02-25 19:27   ` Leo Famulari
@ 2016-02-25 20:11   ` Andreas Enge
  2016-02-26 23:16     ` Ludovic Courtès
  2016-03-09 13:14   ` Ludovic Courtès
  3 siblings, 1 reply; 16+ messages in thread
From: Andreas Enge @ 2016-02-25 20:11 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: Guix-devel

I would like to see an updated vigra. Presumably, in maybe a week there
should be a release that builds and that would allow us to build libreoffice.
I tried the most recent git snapshot and it compiles (well, I had problems
in the beginning, and I am not totally sure we do not need to disable
parallel checks, but this could be dealt with).

Andreas

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Releasing 0.9.1
  2016-02-25 19:27   ` Leo Famulari
@ 2016-02-26 23:15     ` Ludovic Courtès
  0 siblings, 0 replies; 16+ messages in thread
From: Ludovic Courtès @ 2016-02-26 23:15 UTC (permalink / raw)
  To: Leo Famulari; +Cc: Guix-devel

Leo Famulari <leo@famulari.name> skribis:

> When Florian was publishing substitutes from fps.io, there was a problem
> with `guix publish` in practice.
>
> I set my daemon to use '--substitute-urls=http://fps.io,
> http://hydra.gnu.org', or something like that (I don't remember the
> syntax). If a desired substitute was not available on fps.io,
> hydra.gnu.org would not be queried.
>
> Since Florian was not building continuously with Hydra, his server
> became less useful as his set of binaries diverged from those available
> on hydra.gnu.org.
>
> Was this ever fixed?

There’s an open bug report, but I think it’s really for a corner case:
<http://bugs.gnu.org/22215>.

I use another substitute server after hydra.gnu.org and it works fine
AFAICT.

Ludo’.

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Releasing 0.9.1
  2016-02-25 20:11   ` Andreas Enge
@ 2016-02-26 23:16     ` Ludovic Courtès
  0 siblings, 0 replies; 16+ messages in thread
From: Ludovic Courtès @ 2016-02-26 23:16 UTC (permalink / raw)
  To: Andreas Enge; +Cc: Guix-devel

Andreas Enge <andreas@enge.fr> skribis:

> I would like to see an updated vigra. Presumably, in maybe a week there
> should be a release that builds and that would allow us to build libreoffice.
> I tried the most recent git snapshot and it compiles (well, I had problems
> in the beginning, and I am not totally sure we do not need to disable
> parallel checks, but this could be dealt with).

Right, that’d be nice.  I haven’t looked, but maybe the current build
failure is not too difficult to address?

Ludo’.

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Releasing 0.9.1
  2016-02-25 17:51 ` Ludovic Courtès
                     ` (2 preceding siblings ...)
  2016-02-25 20:11   ` Andreas Enge
@ 2016-03-09 13:14   ` Ludovic Courtès
  2016-03-09 14:41     ` Ludovic Courtès
  3 siblings, 1 reply; 16+ messages in thread
From: Ludovic Courtès @ 2016-03-09 13:14 UTC (permalink / raw)
  To: Guix-devel

So!  It seems that this time releasing is really hard.  :-)

I’d like to do a rebuild without any package replacements, in the hope
that the release itself has no or few grafts in place, mostly because:

  • performance is currently degraded in the presence of grafts, in
    particular the repeated “updating the list of substitutes” (I have a
    rough idea on how to fix, but we’d rather not hold our breath);

  • they increase disk usage, so the USB images would be bigger.

So, on this branch, I’d incorporate:

  dbus and dbus/activation
  eudev and eudev-with-blkid
  graphite2 and its replacement
  perl and its replacement
  openssl and its replacement

I don’t want to base it on ‘core-updates’ because there are potentially
disrupting changes in there.

Thoughts?

Ludo’.

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Releasing 0.9.1
  2016-03-09 13:14   ` Ludovic Courtès
@ 2016-03-09 14:41     ` Ludovic Courtès
  2016-03-10 16:23       ` Ludovic Courtès
  0 siblings, 1 reply; 16+ messages in thread
From: Ludovic Courtès @ 2016-03-09 14:41 UTC (permalink / raw)
  To: Guix-devel

ludo@gnu.org (Ludovic Courtès) skribis:

> So, on this branch, I’d incorporate:
>
>   dbus and dbus/activation
>   eudev and eudev-with-blkid
>   graphite2 and its replacement
>   perl and its replacement
>   openssl and its replacement

Done in ‘security-updates’.

I’ll get it built by Hydra if there are no objections!

Ludo’.

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: Releasing 0.9.1
  2016-03-09 14:41     ` Ludovic Courtès
@ 2016-03-10 16:23       ` Ludovic Courtès
  0 siblings, 0 replies; 16+ messages in thread
From: Ludovic Courtès @ 2016-03-10 16:23 UTC (permalink / raw)
  To: Guix-devel

ludo@gnu.org (Ludovic Courtès) skribis:

> ludo@gnu.org (Ludovic Courtès) skribis:
>
>> So, on this branch, I’d incorporate:
>>
>>   dbus and dbus/activation
>>   eudev and eudev-with-blkid
>>   graphite2 and its replacement
>>   perl and its replacement
>>   openssl and its replacement
>
> Done in ‘security-updates’.
>
> I’ll get it built by Hydra if there are no objections!

It’s at ~10% right now:

  http://hydra.gnu.org/jobset/gnu/security-updates

Ludo’.

^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2016-03-10 16:23 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-02-05 13:46 Releasing 0.9.1 Ludovic Courtès
2016-02-05 13:51 ` Andreas Enge
2016-02-07 12:13 ` Ben Woodcroft
2016-02-07 12:48   ` Ricardo Wurmus
2016-02-07 20:44     ` Ludovic Courtès
2016-02-07 20:54       ` Ben Woodcroft
2016-02-08 21:21 ` Mathieu Lirzin
2016-02-25 17:51 ` Ludovic Courtès
2016-02-25 18:04   ` Ricardo Wurmus
2016-02-25 19:27   ` Leo Famulari
2016-02-26 23:15     ` Ludovic Courtès
2016-02-25 20:11   ` Andreas Enge
2016-02-26 23:16     ` Ludovic Courtès
2016-03-09 13:14   ` Ludovic Courtès
2016-03-09 14:41     ` Ludovic Courtès
2016-03-10 16:23       ` Ludovic Courtès

Code repositories for project(s) associated with this public inbox

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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).