From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Maxime Devos Newsgroups: gmane.lisp.guile.devel Subject: Re: (ice-9 base64)? Date: Tue, 16 Aug 2022 18:58:59 +0200 Message-ID: <33556713-c85b-ab0f-554e-94a40f9d418e@telenet.be> References: Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------kbLbSVeWxQG2kVt0KAEaxzY2" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="12161"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.12.0 To: =?UTF-8?Q?Aleix_Conchillo_Flaqu=c3=a9?= , guile-devel Original-X-From: guile-devel-bounces+guile-devel=m.gmane-mx.org@gnu.org Tue Aug 16 18:59:47 2022 Return-path: Envelope-to: guile-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1oNzut-0002ty-9i for guile-devel@m.gmane-mx.org; Tue, 16 Aug 2022 18:59:47 +0200 Original-Received: from localhost ([::1]:44418 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oNzur-0007AU-OZ for guile-devel@m.gmane-mx.org; Tue, 16 Aug 2022 12:59:45 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:57418) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oNzuD-00077Y-Tg for guile-devel@gnu.org; Tue, 16 Aug 2022 12:59:06 -0400 Original-Received: from laurent.telenet-ops.be ([2a02:1800:110:4::f00:19]:46592) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1oNzuB-0005Qh-Li for guile-devel@gnu.org; Tue, 16 Aug 2022 12:59:05 -0400 Original-Received: from [192.168.0.177] ([178.119.10.153]) by laurent.telenet-ops.be with bizsmtp id 8Gyz2800T3J72EA01GyzF7; Tue, 16 Aug 2022 18:59:00 +0200 Content-Language: en-US In-Reply-To: DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=telenet.be; s=r22; t=1660669140; bh=LAJdVIaBXVvLU4fEx64zO+7NMk91XcY0eG+To1gqtnU=; h=Date:To:References:From:Subject:In-Reply-To; b=FJovHw1M6sHIsT4iE3+8HBEGiGRGadIhsyIsQWc/BC9c8/bXKIuo10T70g3DlvweV Wr/fXfAY9/J7CcYKAmTdfQ+E8AUilgv8mT812WSh7hj5i4cHn7SWwjF+5qGUfEKF56 vld95ydCYS77evAfdFgSvO/0UMF6CBT4Thjjc1bou+rGG4tKwyrEwHbH/diZfpwj59 uKVncFsioH42oWbL4N5CU5oN8Hd5lQrrsR5fl69jV8e/y6Ior+4kNxEIw8zrzpJIvz j3Otr/W7zg+2qkEf7uLak+W8G49N0pE8kvNmaJH/hTtR4fPNwZ/cYQYOxwKaNqBGnU hYcFhbie6O+Aw== Received-SPF: pass client-ip=2a02:1800:110:4::f00:19; envelope-from=maximedevos@telenet.be; helo=laurent.telenet-ops.be X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, NICE_REPLY_A=-0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Developers list for Guile, the GNU extensibility library" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-devel-bounces+guile-devel=m.gmane-mx.org@gnu.org Original-Sender: "guile-devel" Xref: news.gmane.io gmane.lisp.guile.devel:21301 Archived-At: This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------kbLbSVeWxQG2kVt0KAEaxzY2 Content-Type: multipart/mixed; boundary="------------83HZc04eWWsK9e7fFi5aU26y"; protected-headers="v1" From: Maxime Devos To: =?UTF-8?Q?Aleix_Conchillo_Flaqu=c3=a9?= , guile-devel Message-ID: <33556713-c85b-ab0f-554e-94a40f9d418e@telenet.be> Subject: Re: (ice-9 base64)? References: In-Reply-To: --------------83HZc04eWWsK9e7fFi5aU26y Content-Type: multipart/mixed; boundary="------------MC9vxiZtMw9Fd7iNYp5vCKOZ" --------------MC9vxiZtMw9Fd7iNYp5vCKOZ Content-Type: multipart/alternative; boundary="------------Sz5g7bE0qZv1f7OunQvMRybG" --------------Sz5g7bE0qZv1f7OunQvMRybG Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 DQpPbiAxNi0wOC0yMDIyIDE4OjEwLCBBbGVpeCBDb25jaGlsbG8gRmxhcXXDqSB3cm90ZToN Cj4gSGksDQo+DQo+IEluIG1hbnkgcHJvamVjdHMgSSd2ZSBiZWVuIGNvcHlpbmcgR8O2cmFu IFdlaW5ob2x0J3MgYmFzZTY0IA0KPiBpbXBsZW1lbnRhdGlvbiBhbmQgSSd2ZSBhbHNvIHNl ZW4gaXQgaW4gb3RoZXIgcHJvamVjdHMsIHdvdWxkIGl0IG1ha2UgDQo+IHNlbnNlIHRvIGlu Y2x1ZGUgaXQgaW4gR3VpbGUncyBzdGFuZGFyZCBsaWJyYXJ5PyBbLi4uXQ0KDQpJZiB3ZSBk byB0aGlzLCB3ZSBzaG91bGQgY29udGFjdCB0aGUgdmFyaW91cyBvdGhlciBwcm9qZWN0cyB0 byBtYWtlIHRoZW0gDQp1c2UgKGljZS05IGJhc2U2NCkuDQoNCkkgdGhpbmsgaXQgd291bGQg YmUgc2ltcGxlciB0aG91Z2ggdG8gY29uc2lkZXIgdGhlIGJhc2U2NCBpbiANCmd1aWxlLWdj cnlwdCB0byBiZSAnY2Fub25pY2FsJywgaXQgd291bGQgYXZvaWQgcHJvYmxlbXMgd2l0aCBv bGQgDQp2ZXJzaW9ucyBvZiBHdWlsZSBub3QgaGF2aW5nIHRoZSBiYXNlNjQgbW9kdWxlIGFu ZCBuZXdlciB2ZXJzaW9uIGhhdmluZyANCml0LCB3aGljaCB3b3VsZCBwcmV2ZW50IHVzaW5n IHRoZSBwcm9wb3NlZCAoaWNlLTkgYmFzZTY0KSBpbiBHdWlsZSANCmJlY2F1c2UgaXQgd291 bGQgYnJlYWsgYnVpbGQtYXV4L2J1aWxkLXNlbGYuc2NtIHdoZW4gcHVsbGluZyBvciANCnRp bWUtbWFjaGluaW5nIGZyb20gb2xkIEd1aXggdGhhdCBoYXZlIGFuIG9sZCBHdWlsZS4NCg0K V2hldGhlciB3ZSBzaW1wbHkgcmVwbGFjZSAoZ3VpeCBiYXNlNjQpIGJ5IChnY3J5cHQgYmFz ZTY0KSBkZXBlbmRzIG9uIA0KaG93IG9sZCAoZ2NyeXB0IGJhc2U2NCkgaXMgY29tcGFyZWQg dG8gdGhlIGVhcmxpZXN0ICdzdXBwb3J0ZWQnIEd1aXggZm9yIA0KcHVsbC90aW1lLXRyYXZl bCwgYnV0IGV2ZW4gaWYgaXQgaXMgbm90IHByZXNlbnQgaW4gdGhlIG9sZCBnY3J5cHQsIHdl IA0KY2FuIHdvcmstYXJvdW5kIHRoYXQgKHdlIGhhdmUgYSAnZmFrZS1nY3J5cHQtaGFzaCcg aW4gDQpidWlsZC1hdXgvYnVpbGQtc2VsZi5zY20sIHNvIHdlIGNhbiBlYXNpbHkgaGF2ZSBh IChkZWZpbmUgZ2NyeXB0LWJhc2U2NCANCltzb21lIGNvcHldKSkuwqAgT3Igc2ltcGx5IHVw ZGF0ZSB0aGUgbG9jYWwgZ3VpbGUtZ2NyeXB0IGluIA0KYnVpZC1hdXgvYnVpbGQtc2VsZi5z Y20uDQoNCk9UT0ggYSBzaW1pbGFyIHJlcGxhY2VtZW50IGNhbiBiZSBkb25lIGZvciAoaWNl LTkgYmFzZTY0KSwgYnV0IA0KdHJhbnNpdGlvbmluZyB0byAoaWNlLTkgYmFzZTY0KSB3b3Vs ZCB0YWtlIG11Y2ggbG9uZ2VyLCBhdCBsZWFzdCB1bnRpbCANCnRoZSB2YXJpb3VzIGRpc3Ry aWJ1dGlvbnMgYXJlIHVwZGF0ZWQgdG8gYSBHdWlsZSB0aGF0IGhhcyAoaWNlLTkgDQpiYXNl NjQpLCB3aGVyZWFzIChnY3J5cHQgYmFzZTY0KSBjb3VsZCBiZSBzd2l0Y2hlZCB0byBpbW1l ZGlhdGVseS4NCg0KR3JlZXRpbmdzLA0KTWF4aW1lLg0KDQo= --------------Sz5g7bE0qZv1f7OunQvMRybG Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable


On 16-08-2022 18:10, Aleix Conchillo Flaqu=C3=A9 wrote:
Hi,

In many projects= I've been copying G=C3=B6ran Weinholt's base64 implementation and= I've also seen it in other projects, would it make sense to include it in Guile's standard library? [...]

If we do this, we should contact the various other projects to make them use (ice-9 base64).

I think it would be simpler though to consider the base64 in guile-gcrypt to be 'canonical', it would avoid problems with old versions of Guile not having the base64 module and newer version having it, which would prevent using the proposed (ice-9 base64) in Guile because it would break build-aux/build-self.scm when pulling or time-machining from old Guix that have an old Guile.

=

Whether we simply replace (guix base64) by (gcrypt base64) depends on how old (gcrypt base64) is compared to the earliest 'supported' Guix for pull/time-travel, but even if it is not present in the old gcrypt, we can work-around that (we have a 'fake-gcrypt-hash' in build-aux/build-self.scm, so we can easily have a (define gcrypt-base64 [some copy])).=C2=A0 Or simply update = the local guile-gcrypt in buid-aux/build-self.scm.

OTOH a similar replacement can be done for (ice-9 base64), but transitioning to (ice-9 base64) would take much longer, at least until the various distributions are updated to a Guile that has (ice-9 base64), whereas (gcrypt base64) could be switched to immediately.

Greetings,
Maxime.

--------------Sz5g7bE0qZv1f7OunQvMRybG-- --------------MC9vxiZtMw9Fd7iNYp5vCKOZ Content-Type: application/pgp-keys; name="OpenPGP_0x49E3EE22191725EE.asc" Content-Disposition: attachment; filename="OpenPGP_0x49E3EE22191725EE.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xjMEX4ch6BYJKwYBBAHaRw8BAQdANPb/d6MrGnGi5HyvODCkBUJPRjiFQcRU5V+m xvMaAa/NL01heGltZSBEZXZvcyA8bWF4aW1lLmRldm9zQHN0dWRlbnQua3VsZXV2 ZW4uYmU+wpAEExYIADgWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCX4ch6AIbAwUL CQgHAwUVCgkICwUWAgMBAAIeAQIXgAAKCRBJ4+4iGRcl7japAQC3opZ2KGWzWmRc /gIWSu0AAcfMwyinFEEPa/QhUt2CogD/e2RdF4CYAgaRHJJmZ9WU7piKbLZ7llB4 LzgezVDHggzNJU1heGltZSBEZXZvcyA8bWF4aW1lZGV2b3NAdGVsZW5ldC5iZT7C kAQTFggAOBYhBMHzPuIMUo/bfdcBH0nj7iIZFyXuBQJf56ycAhsDBQsJCAcDBRUK CQgLBRYCAwEAAh4BAheAAAoJEEnj7iIZFyXujpQBAKV1SwDDl4f24rXciDlB9L8W ycZt30CgbewMSRQk4mvbAP9dFMbVVixYBd6C8cfhR+NsOBGiOJnQABlUmgNuqGFJ Dc44BF+HIegSCisGAQQBl1UBBQEBB0BOlzIWiJzgobMF6/cqwLaLk7jIcFSZ++c0 k9cCNT6YXwMBCAfCeAQYFggAIBYhBMHzPuIMUo/bfdcBH0nj7iIZFyXuBQJfhyHo AhsMAAoJEEnj7iIZFyXuMr0BAJc8cl5PGvVmVuSQVKjleNl4DK1/XAaPAYPe34AE fZJPAP9IqLCQhH/FeJanHqBP8gNdGNI2qn8RnnLVfRJgUjZ1BA=3D=3D =3DOVqp -----END PGP PUBLIC KEY BLOCK----- --------------MC9vxiZtMw9Fd7iNYp5vCKOZ-- --------------83HZc04eWWsK9e7fFi5aU26y-- --------------kbLbSVeWxQG2kVt0KAEaxzY2 Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wnsEABYIACMWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYvvM0wUDAAAAAAAKCRBJ4+4iGRcl7iFS AP9UQ7iH1qL+IDpsoZVILYQShm2n1iBXjF2wV/bV1Op0yQEA+3XFh5AbhZHKhre6aFQddl9gzetd UxBIC9q9rRi26wo= =9RYe -----END PGP SIGNATURE----- --------------kbLbSVeWxQG2kVt0KAEaxzY2--