From 60e0aae89cbf29f88f110376f911777aac70e8a7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 9 Aug 2022 15:59:09 +0200 Subject: [PATCH] channels: Consider news files as UTF-8-encoded by default. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Partly fixes . Reported by Pierre-Henry Fröhring . Previously, news file would be read using the current locale encoding. This could lead to a test failure in 'tests/channels.scm' (in a test that expects some Unicode-capable encoding) in case tests were run in a non-Unicode locale. * guix/channels.scm (channel-news-for-commit): Make port for NEWS-FILE UTF-8 by default. --- guix/channels.scm | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/guix/channels.scm b/guix/channels.scm index a5e9d7774d..ad6d3fb8ac 100644 --- a/guix/channels.scm +++ b/guix/channels.scm @@ -1153,7 +1153,11 @@ NEW. When OLD is omitted or is #f, return all the news entries of CHANNEL." (if (and news-file (file-exists? news-file)) (with-repository checkout repository (let* ((news (call-with-input-file news-file - read-channel-news)) + (lambda (port) + (set-port-encoding! port + (or (file-encoding port) + "UTF-8")) + (read-channel-news port)))) (entries (map (lambda (entry) (resolve-channel-news-entry-tag repository entry))