unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: swedebugia <swedebugia@riseup.net>
To: guix-devel@gnu.org
Subject: Re: Fwd: Migration of (dhcp-client-service)
Date: Sun, 4 Nov 2018 23:17:54 +0100	[thread overview]
Message-ID: <0c7507d8-6f14-1442-a2f5-7aa43e4fe8b7@riseup.net> (raw)
In-Reply-To: <871s80pka2.fsf@gnu.org>

[-- Attachment #1: Type: text/plain, Size: 3706 bytes --]

-------- Forwarded Message --------
Subject: 	Re: Migration of (dhcp-client-service)
Date: 	Sun, 04 Nov 2018 23:09:25 +0100
From: 	Ludovic Courtès <ludo@gnu.org>
To: 	swedebugia <swedebugia@riseup.net>



Hello!

swedebugia <swedebugia@riseup.net> skribis:

> I have 2 questions:
>
> 1. What is the rationale behind this? (unification? are all services
>     that end in -service going to be migrated to -service-type?)

The rationale is unification towards the ‘service-type’ style. It’s
been on-going for a couple of years now.

> 2. Is this going to affect users?
>      1. E.g. what happens if a user in 0.16 uses this in their config.scm?
>      2. Are they warned that this is deprecated since 0.16?

Currently there’s no deprecation warning (but note that
‘dhcp-client-service’ is still around.)

I’ve been meaning to add a mechanism to emit deprecation warnings in
such cases…

> In this commit you updated the documentation with this:
>
> diff --git a/doc/guix.texi b/doc/guix.texi index fde7892..f4f1994
> 100644 --- a/doc/guix.texi
> <http://git.savannah.gnu.org/cgit/guix.git/tree/doc/guix.texi?id=03fd37b4eb9ec7600c9292361177ca5a47814cf7>
> +++ b/doc/guix.texi
> <http://git.savannah.gnu.org/cgit/guix.git/tree/doc/guix.texi?id=39d7fdce453b0ca23ecbed72048647debbaa58a6>
> @@ -11546,10 +11546,11 @@ The @code{(gnu services networking)} module
> provides services to configure
> the network interface.
> @cindex DHCP, networking service
> -@deffn {Scheme Procedure} dhcp-client-service [#:dhcp @var{isc-dhcp}]
> -Return a service that runs @var{dhcp}, a Dynamic Host Configuration
> -Protocol (DHCP) client, on all the non-loopback network interfaces.
> -@end deffn
> +@defvr {Scheme Variable} dhcp-client-service-type
> +This is the type of services that run @var{dhcp}, a Dynamic Host
> Configuration
> +Protocol (DHCP) client, on all the non-loopback network
> interfaces. Its value
> +is the DHCP client package to use, @code{isc-dhcp} by default.
> +@end defvr
> @deffn {Scheme Procedure} dhcpd-service-type
> This type defines a service that runs a DHCP daemon. To create a
> @@ -17168,7 +17169,7 @@ A helper function to quickly add php to an
> @code{nginx-server-configuration}.
> A simple services setup for nginx with php can look like this:
> @example
> -(services (cons* (dhcp-client-service)
> +(services (cons* (service dhcp-client-service-type)
> (service php-fpm-service-type)
> (service nginx-service-type
> (nginx-server-configuration
>
> Maybe we should have a list of deprecated features with version
> numbers to help users find the information about the change if they
> experience a hiccup.

Maybe, at least post 1.0.

So far we’ve usually just updated the doc to reflect the latest API,
even when we kept deprecated APIs around. Not sure if that’s enough;
your suggestion makes a lot of sense.

> PS: I send this in private because it could perhaps be viewed as
> criticism, tho I have no such intention.

I think constructive criticism of this sort is very much welcome! It’s
what allows us together to improve the code and documentation.

Also it’s possible that others had similar questions, so it’s probably
worth discussing.

(In that spirit, feel free so send your questions to the list and/or
resend my reply.)

> PPS: I noticed this change when I downloaded bare-bones.tmpl on a guix
> 0.15 VM image and tried reconfiguring and got an error about
> dhcp-client-service-type being unbound...

Oh I see. Doc/API mismatches can be problematic indeed, and an argument
in favor of keeping documentation of deprecated interfaces.

Thanks,
Ludo’.

[-- Attachment #2: Type: text/html, Size: 6004 bytes --]

       reply	other threads:[~2018-11-04 22:20 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <871s80pka2.fsf@gnu.org>
2018-11-04 22:17 ` swedebugia [this message]
     [not found] <d573dca8-5d4b-c513-8e61-64927130fc60@riseup.net>
2018-11-04 22:16 ` Fwd: Migration of (dhcp-client-service) swedebugia

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

  List information: https://guix.gnu.org/

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

  git send-email \
    --in-reply-to=0c7507d8-6f14-1442-a2f5-7aa43e4fe8b7@riseup.net \
    --to=swedebugia@riseup.net \
    --cc=guix-devel@gnu.org \
    /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 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).