From unknown Tue Aug 19 09:34:44 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#21829 <21829@debbugs.gnu.org> To: bug#21829 <21829@debbugs.gnu.org> Subject: Status: guix import hackage failures Reply-To: bug#21829 <21829@debbugs.gnu.org> Date: Tue, 19 Aug 2025 16:34:44 +0000 retitle 21829 guix import hackage failures reassign 21829 guix submitter 21829 Paul van der Walt severity 21829 normal thanks From debbugs-submit-bounces@debbugs.gnu.org Wed Nov 04 11:25:38 2015 Received: (at submit) by debbugs.gnu.org; 4 Nov 2015 16:25:38 +0000 Received: from localhost ([127.0.0.1]:53535 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Zu0sR-0004wI-RC for submit@debbugs.gnu.org; Wed, 04 Nov 2015 11:25:37 -0500 Received: from eggs.gnu.org ([208.118.235.92]:36935) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZtzYI-0002qf-OG for submit@debbugs.gnu.org; Wed, 04 Nov 2015 10:01:01 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZtzYC-00066C-9h for submit@debbugs.gnu.org; Wed, 04 Nov 2015 10:00:42 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50 autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:53168) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZtzYC-000668-7c for submit@debbugs.gnu.org; Wed, 04 Nov 2015 10:00:36 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:46934) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZtzYB-0002cB-0P for bug-guix@gnu.org; Wed, 04 Nov 2015 10:00:36 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZtzY7-00065s-Pu for bug-guix@gnu.org; Wed, 04 Nov 2015 10:00:34 -0500 Received: from mx01.mykolab.com ([95.128.36.1]:2860 helo=mx-out01.mykolab.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZtzY7-00065n-Jd for bug-guix@gnu.org; Wed, 04 Nov 2015 10:00:31 -0500 X-Virus-Scanned: amavisd-new at kolabnow.com Received: from mx03.mykolab.com (mx03.mykolab.com [10.20.7.101]) by mx-out01.mykolab.com (Postfix) with ESMTPS id 06B276168F for ; Wed, 4 Nov 2015 16:00:28 +0100 (CET) From: Paul van der Walt To: bug-guix@gnu.org Subject: guix import hackage failures Date: Wed, 04 Nov 2015 16:00:26 +0100 Message-ID: <87twp16c8l.fsf@denknerd.org> Content-Type: text/plain X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -4.1 (----) X-Debbugs-Envelope-To: submit X-Mailman-Approved-At: Wed, 04 Nov 2015 11:25:34 -0500 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -4.1 (----) Hello bug-guix, I have found that the command `guix import hackage foo` sometimes fails. I will try to provide a few examples. -------------8<---------------------------------------------------------- $ guix import hackage xmonad-contrib Starting download of /tmp/guix-file.Bt94ZV >From http://hackage.haskell.org/package/xmonad-contrib/xmonad-contrib.cabal... xmonad-contrib.cabal 355KiB/s 00:00 | 13KiB transferred Syntax error: unexpected token : true (at line 75, column 7) Syntax error: unexpected end of input guix import: error: failed to download cabal file for package ' FORMAT: error with call: (format # "~:[~*~;guix ~a: ~]~afailed to download cabal file for package '~a<==='~%" import import error: ===>) missing argument(s) Backtrace: In ice-9/boot-9.scm: 157: 15 [catch #t # ...] In unknown file: ?: 14 [apply-smob/1 #] In ice-9/boot-9.scm: 63: 13 [call-with-prompt prompt0 ...] In ice-9/eval.scm: 432: 12 [eval # #] In ice-9/boot-9.scm: 2401: 11 [save-module-excursion #] 4050: 10 [#] 1724: 9 [%start-stack load-stack #] 1729: 8 [#] In unknown file: ?: 7 [primitive-load "/gnu/store/1pvqvwcck48izizrl17hygbb9r7bzi44-guix-0.8.3.abbe2c6/bin/.guix-real"] In guix/ui.scm: 1173: 6 [run-guix-command import "hackage" "xmonad-contrib"] In guix/scripts/import.scm: 110: 5 [guix-import "hackage" "xmonad-contrib"] In guix/scripts/import/hackage.scm: 137: 4 [guix-import-hackage "xmonad-contrib"] In ice-9/format.scm: 1593: 3 [format # ...] 766: 2 [format:format-work "~:[~*~;guix ~a: ~]~afailed to download cabal file for package '~a'~%" ...] 200: 1 [tilde-dispatch] In unknown file: ?: 0 [scm-error misc-error #f "~A" ("error in format") #f] ERROR: In procedure scm-error: ERROR: error in format -------------8<---------------------------------------------------------- Of course, the errors will all be relatively similar since they seem to be parsing errors. Packages which fail include: * base-compat * base-orphans * clock * fast-logger * fgl * generic-deriving * happy * hscolour * nats * ObjectName * old-locale * QuickCheck * SDL * setenv * split * StateVar * streaming-commons * syb * tagged * transformers-base * wai * xmonad * xmonad-contrib * xmonad-extras * zip-archive * zlib Cheers, p. From debbugs-submit-bounces@debbugs.gnu.org Wed Nov 04 18:11:16 2015 Received: (at 21829) by debbugs.gnu.org; 4 Nov 2015 23:11:16 +0000 Received: from localhost ([127.0.0.1]:53825 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Zu7D2-0003B1-02 for submit@debbugs.gnu.org; Wed, 04 Nov 2015 18:11:16 -0500 Received: from eggs.gnu.org ([208.118.235.92]:42673) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Zu7D0-0003Au-MO for 21829@debbugs.gnu.org; Wed, 04 Nov 2015 18:11:14 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Zu7Cw-0003sM-Hn for 21829@debbugs.gnu.org; Wed, 04 Nov 2015 18:11:14 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,T_RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:33725) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Zu7Cw-0003sD-F1; Wed, 04 Nov 2015 18:11:10 -0500 Received: from reverse-83.fdn.fr ([80.67.176.83]:33810 helo=pluto) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1Zu7Cv-0000oT-Lo; Wed, 04 Nov 2015 18:11:10 -0500 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: Paul van der Walt Subject: Re: bug#21829: guix import hackage failures References: <87twp16c8l.fsf@denknerd.org> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 15 Brumaire an 224 de la =?utf-8?Q?R=C3=A9volution?= X-PGP-Key-ID: 0x3D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-unknown-linux-gnu Date: Thu, 05 Nov 2015 00:11:07 +0100 In-Reply-To: <87twp16c8l.fsf@denknerd.org> (Paul van der Walt's message of "Wed, 04 Nov 2015 16:00:26 +0100") Message-ID: <874mh18ino.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: 21829 Cc: 21829@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -5.0 (-----) Paul van der Walt skribis: > 137: 4 [guix-import-hackage "xmonad-contrib"] > In ice-9/format.scm: > 1593: 3 [format # ...] > 766: 2 [format:format-work "~:[~*~;guix ~a: ~]~afailed to download cabal= file for package '~a'~%" ...] > 200: 1 [tilde-dispatch] > In unknown file: > ?: 0 [scm-error misc-error #f "~A" ("error in format") #f] Commit 5453de3 fixes the easy part. :-) Strangely, =E2=80=98define-diagnostic=E2=80=99 in (guix ui) was defined so = that we can get =E2=80=98format=E2=80=99 warnings, but the trick doesn=E2=80=99t work o= utside of (guix ui) itself. Thanks, Ludo=E2=80=99. From debbugs-submit-bounces@debbugs.gnu.org Tue Nov 10 11:40:43 2015 Received: (at 21829) by debbugs.gnu.org; 10 Nov 2015 16:40:43 +0000 Received: from localhost ([127.0.0.1]:60475 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZwByN-0001HE-5F for submit@debbugs.gnu.org; Tue, 10 Nov 2015 11:40:43 -0500 Received: from mail-vk0-f50.google.com ([209.85.213.50]:32853) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZwByK-0001H6-Ry for 21829@debbugs.gnu.org; Tue, 10 Nov 2015 11:40:41 -0500 Received: by vkbk63 with SMTP id k63so1487432vkb.0 for <21829@debbugs.gnu.org>; Tue, 10 Nov 2015 08:40:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:date:message-id:subject:from:to:content-type; bh=7mwA4kVxO8YNUKSObR0A12sebDFwCF/RCk9U1bs4i8w=; b=jAVbMAEHjscDyDpE/0XkRQruCZJWsv8am6LM8i1RSbBcPqCJzwLSZBHuzFy0wBgyxj EmCDmtGFbo0fTJ1yTtXCcpWaoqt8YlXBLKT8O4c2OlFW1NUJRW8G/qPNPDLOHVxvwjRR v4cI29ds3/z9wYU/GX2qM3rLvSPe2da2PvBSRUe+pg0oJGAujSxoKTPJjdp7khcQpVrL 71H3rqLJbPSuVbeDcs+/F+JJuPvqgq+5QLVtnwQOo2tugvQiO/0I4KRLinxsiXgjIYtp F/0xaZdn7GOkgsCduh++nH5hiZixFVdJbXNMhVcU5d5XkiAiG7Yhc1QCeUh67vqsUDan HczA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ieee_org.20150623.gappssmtp.com; s=20150623; h=mime-version:sender:date:message-id:subject:from:to:content-type; bh=7mwA4kVxO8YNUKSObR0A12sebDFwCF/RCk9U1bs4i8w=; b=idbupCL4RgnZV9pQkYIB+DjX5cD+ipa0ZuwfT3C7dUB9QolJ/tQ7KvuuxsKMMlItY6 M3iFZvGKWQMukiVWsuoFAkPGIv8VUn9y1gYYjzGnu1HBlncokGjmuooUHfCRMSf2jo7V f0Up/i840/XFVRNkAo24gGCQjWqfjw5KQw8otU3wzBCTdH85k37jMuGrZlitjuALPL6a GAxGmFPIr7C0v4xWaUuiy1OzS4DJwIuY/d38olU7Gcu1CQbJ4QhcmWbr9oE617epXkIs 8ij5Fy0aS3P3WbKMhnEgMM90OL7gOJ/+UBruUwzEdgB9HSNrBGG7tG3UcNLq52aILEME /J5w== MIME-Version: 1.0 X-Received: by 10.31.153.211 with SMTP id b202mr3208856vke.37.1447173640327; Tue, 10 Nov 2015 08:40:40 -0800 (PST) Received: by 10.103.106.199 with HTTP; Tue, 10 Nov 2015 08:40:40 -0800 (PST) Date: Tue, 10 Nov 2015 17:40:40 +0100 X-Google-Sender-Auth: Yvs0qbKBxqGOXUWrNdX5nb9coQo Message-ID: Subject: guix import hackage failures From: Federico Beffa To: 21829@debbugs.gnu.org, =?UTF-8?Q?Ludovic_Court=C3=A8s?= , Paul van der Walt Content-Type: text/plain; charset=UTF-8 X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 21829 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) Hi, I have checked the errors and have found the following: * I do not get backtraces, but the following error: ------------------------------ $ ./pre-inst-env guix import hackage xmonad-contrib Starting download of /tmp/guix-file.yf7Cor >From http://hackage.haskell.org/package/xmonad-contrib/xmonad-contrib.cabal... xmonad-contrib.cabal 761KiB/s 00:00 | 13KiB transferred Syntax error: unexpected token : true (at line 75, column 7) Syntax error: unexpected end of input guix import: error: failed to download cabal file for package 'xmonad-contrib' ------------------------------ not sure what's different. * The following packages fail because the file has DOS line endings: happy, base-compat, base-orphans, fast-logger, generic-deriving, ObjectName, SDL, setenv, split, StateVar, syb, transformers-base, wai, xmonad (+ 1 more problem), zlib (+ 1 more problem). Changing the encoding to UNIX line endings fixes the problem. This is the number 1 problem. Is there a Guile way to easily fix this? * nats gets imported correctly here?! * The rest are genuine parsing errors. A brief summary of them and how to fix them follows: - xmonad-contrib, xmonad, xmonad-extras:: + "if true" not handled. + "impl (ghc == 6.10.1) && arch (x86_64)" --> "impl(ghc == 6.10.1) && arch(x86_64)" OK - clock, hscolour, QuickCheck:: + "default : Ture" --> "default: True" OK + "impl (ghc < 7.6)" --> "impl(ghc < 7.6)" - fgl:: "description: { An .... }" -> No braces OK. Braces not handled outside of groups. - old-locale:: "Cabal-Version:>=1.10" --> "Cabal-Version: >=1.10" OK - streaming-common:: same group indentation level changes from 4 to 2 spaces! This file is buggy! - tagged:: "if impl(ghc>=7.2 && <7.5)". Probably not handled correctly by parser - zlib:: no final "\n" on last line I will look into fixing them, but not immediately because of other priorities. If somebody else is interested in diving into this, please let me know, so that we don't duplicate efforts. Regards, Fede From debbugs-submit-bounces@debbugs.gnu.org Wed Nov 11 06:19:20 2015 Received: (at 21829) by debbugs.gnu.org; 11 Nov 2015 11:19:20 +0000 Received: from localhost ([127.0.0.1]:32834 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZwTQt-00065K-OE for submit@debbugs.gnu.org; Wed, 11 Nov 2015 06:19:20 -0500 Received: from eggs.gnu.org ([208.118.235.92]:51925) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZwTQZ-00064T-FY for 21829@debbugs.gnu.org; Wed, 11 Nov 2015 06:19:18 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZwTQY-0007dL-JC for 21829@debbugs.gnu.org; Wed, 11 Nov 2015 06:18:59 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.5 required=5.0 tests=BAYES_50,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:52088) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZwTQT-0007cO-AA; Wed, 11 Nov 2015 06:18:53 -0500 Received: from reverse-83.fdn.fr ([80.67.176.83]:32946 helo=pluto) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1ZwTQR-000844-Nj; Wed, 11 Nov 2015 06:18:52 -0500 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: Federico Beffa Subject: Re: guix import hackage failures References: X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 21 Brumaire an 224 de la =?utf-8?Q?R=C3=A9volution?= X-PGP-Key-ID: 0x3D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-unknown-linux-gnu Date: Wed, 11 Nov 2015 12:18:47 +0100 In-Reply-To: (Federico Beffa's message of "Tue, 10 Nov 2015 17:40:40 +0100") Message-ID: <87d1vghjhk.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.3 (-----) X-Debbugs-Envelope-To: 21829 Cc: 21829@debbugs.gnu.org, Paul van der Walt X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -5.3 (-----) Federico Beffa skribis: > * I do not get backtraces, but the following error: The backtrace thing was fixed in 5453de3d. > * The following packages fail because the file has DOS line endings: > > happy, base-compat, base-orphans, fast-logger, generic-deriving, Object= Name, > SDL, setenv, split, StateVar, syb, transformers-base, wai, xmonad (+ 1 = more > problem), zlib (+ 1 more problem). > > Changing the encoding to UNIX line endings fixes the problem. This is > the number 1 problem. Is there a Guile way to easily fix this? Could you explain how if fails exactly? Not really =E2=80=9Ceasily=E2=80=9D unfortunately. It depends on the APIs = you use. There=E2=80=99s the R6RS API from (rnrs io ports), which is supposed to magically do line ending conversion but doesn=E2=80=99t seem to work: --8<---------------cut here---------------start------------->8--- scheme@(guile-user)> (make-transcoder (utf-8-codec) (eol-style crlf)) $13 =3D # scheme@(guile-user)> (transcoded-port (open-string-input-port "foo\n\rbar\n= \r") $13) $14 =3D # scheme@(guile-user)> (get-line $14) $15 =3D "foo" scheme@(guile-user)> (get-line $14) $16 =3D "\rbar" scheme@(guile-user)> (get-line $14) $17 =3D "\r" --8<---------------cut here---------------end--------------->8--- But then there are things like =E2=80=98string-tokenize=E2=80=99 that do th= e right thing: --8<---------------cut here---------------start------------->8--- scheme@(guile-user)> (string-tokenize "foo\n\rbar\n\rbaz") $18 =3D ("foo" "bar" "baz") --8<---------------cut here---------------end--------------->8--- Thanks, Ludo=E2=80=99. From debbugs-submit-bounces@debbugs.gnu.org Wed Nov 11 16:29:43 2015 Received: (at 21829) by debbugs.gnu.org; 11 Nov 2015 21:29:43 +0000 Received: from localhost ([127.0.0.1]:33641 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Zwcxa-0002ry-QN for submit@debbugs.gnu.org; Wed, 11 Nov 2015 16:29:43 -0500 Received: from mail-yk0-f178.google.com ([209.85.160.178]:35154) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZwcxG-0002ra-NP for 21829@debbugs.gnu.org; Wed, 11 Nov 2015 16:29:41 -0500 Received: by ykba77 with SMTP id a77so71754268ykb.2 for <21829@debbugs.gnu.org>; Wed, 11 Nov 2015 13:29:22 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type:content-transfer-encoding; bh=Y9a3xplI+NWrDa4QuXckmT1/ccy7vOlmb566h3ENpxs=; b=okMwV5rzl4Grk3lzNcq2p/pfcbZLTr9PqJxvAqsVC/ugJrJFSS/MZJhfLVWkW4x0uy /oNQ6r+AlAuSLbfBhnh3v8EbvHt7l/oyeAcuaVlS7edv8SW7m0h+VIGYsbutRWqNNn2f NvRANe2q/IvYz8S3Vaul4FpCs8BnZ3OE6AXEWBhttnwnLIUMb4sGXO3W3LMbCDnhkPTm yvRpDL6xr9GgTdlSp8SduS6DwlCSTAOXO/d+BK6wdEmBSOA46jDdIcsDStGSBLRL6ydT Vwp9qufFF6v3I80+Y3dWwVzbpg0IHq+AF0jrowo2F++3hIwzegN7Rv7XLx4Gff7W4AOv kymA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ieee_org.20150623.gappssmtp.com; s=20150623; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type:content-transfer-encoding; bh=Y9a3xplI+NWrDa4QuXckmT1/ccy7vOlmb566h3ENpxs=; b=ZGbTuNUl4MmBvyA1gxq2d5M+qtCn+DOdzCboR3jfXr3l9b7BGztzG0XHWkGZHgdlWM CFWyCYjwmp+BDJMhOATZgM0fMgSOt8gQ8QUO79+0HqGEeTOkn/NsTPOFKazb3SMxf01q Ie2hwcH/tqqs8Bj67BuPvHjxgE7GBLdhCSuoDfQnjSv+VzNqaEfStn3MUWu0Ev0981mw LcRikJRgOVxFU0Zo9uOFs8bzTFfNlUDcfZQeotMlRFYexXeUhW0kOW5oEVQUh/OxY+oh bYj74OvxGfK69f++V+mdOYizGxAf4fw5gqwPHj7/WzmqqpNkFAcpTUfsEzI65kAYz3vH 0FAw== MIME-Version: 1.0 X-Received: by 10.13.247.68 with SMTP id h65mr12610758ywf.83.1447277360783; Wed, 11 Nov 2015 13:29:20 -0800 (PST) Received: by 10.103.106.199 with HTTP; Wed, 11 Nov 2015 13:29:20 -0800 (PST) In-Reply-To: <87d1vghjhk.fsf@gnu.org> References: <87d1vghjhk.fsf@gnu.org> Date: Wed, 11 Nov 2015 22:29:20 +0100 X-Google-Sender-Auth: B_Y7cmRmpIVPLjEiBcNVwVI4q98 Message-ID: Subject: Re: guix import hackage failures From: Federico Beffa To: =?UTF-8?Q?Ludovic_Court=C3=A8s?= Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 21829 Cc: 21829@debbugs.gnu.org, Paul van der Walt X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) On Wed, Nov 11, 2015 at 12:18 PM, Ludovic Court=C3=A8s wrote= : > Federico Beffa skribis: > >> * I do not get backtraces, but the following error: > > The backtrace thing was fixed in 5453de3d. > >> * The following packages fail because the file has DOS line endings: >> >> happy, base-compat, base-orphans, fast-logger, generic-deriving, Objec= tName, >> SDL, setenv, split, StateVar, syb, transformers-base, wai, xmonad (+ 1= more >> problem), zlib (+ 1 more problem). >> >> Changing the encoding to UNIX line endings fixes the problem. This is >> the number 1 problem. Is there a Guile way to easily fix this? > > Could you explain how if fails exactly? The extra character '\r' screws up the parsing because it was not accounted for in the logic to recognize multi-line values and indentation based block separation. What do you think of a kind of piped filter as follows: (define (call-with-input-file-eol-crlf->lf proc port) (let* ((port-pair (pipe)) (input-port (match port-pair ((in . out) in))) (output-port (match port-pair ((in . out) out)))) (letpar ((transcoder (let loop ((line (get-line port))) (unless (eof-object? line) (write-line (string-trim-right line #\return) output-port= ) (loop (get-line port))) (flush-output-port output-port))) (result (proc input-port))) (close-output-port output-port) (close-input-port input-port) result))) Then instead of calling (read-cabal port) I would call (call-with-input-file-eol-crlf->lf read-cabal port). Regards, Fede From debbugs-submit-bounces@debbugs.gnu.org Thu Nov 12 04:08:13 2015 Received: (at 21829) by debbugs.gnu.org; 12 Nov 2015 09:08:13 +0000 Received: from localhost ([127.0.0.1]:34022 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZwnrZ-0000aD-3a for submit@debbugs.gnu.org; Thu, 12 Nov 2015 04:08:13 -0500 Received: from eggs.gnu.org ([208.118.235.92]:40860) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZwnrX-0000a6-Gf for 21829@debbugs.gnu.org; Thu, 12 Nov 2015 04:08:11 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZwnrW-0002ZZ-JE for 21829@debbugs.gnu.org; Thu, 12 Nov 2015 04:08:11 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-0.4 required=5.0 tests=BAYES_20,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:47415) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZwnrP-0002Yp-QG; Thu, 12 Nov 2015 04:08:03 -0500 Received: from pluto.bordeaux.inria.fr ([193.50.110.57]:38070 helo=pluto) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1ZwnrO-0004I4-R5; Thu, 12 Nov 2015 04:08:03 -0500 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: Federico Beffa Subject: Re: guix import hackage failures References: <87d1vghjhk.fsf@gnu.org> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 22 Brumaire an 224 de la =?utf-8?Q?R=C3=A9volution?= X-PGP-Key-ID: 0x3D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-unknown-linux-gnu Date: Thu, 12 Nov 2015 10:07:59 +0100 In-Reply-To: (Federico Beffa's message of "Wed, 11 Nov 2015 22:29:20 +0100") Message-ID: <87vb971t74.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.3 (-----) X-Debbugs-Envelope-To: 21829 Cc: 21829@debbugs.gnu.org, Paul van der Walt X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -5.3 (-----) --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Federico Beffa skribis: > On Wed, Nov 11, 2015 at 12:18 PM, Ludovic Court=C3=A8s wro= te: >> Federico Beffa skribis: >> >>> * I do not get backtraces, but the following error: >> >> The backtrace thing was fixed in 5453de3d. >> >>> * The following packages fail because the file has DOS line endings: >>> >>> happy, base-compat, base-orphans, fast-logger, generic-deriving, Obje= ctName, >>> SDL, setenv, split, StateVar, syb, transformers-base, wai, xmonad (+ = 1 more >>> problem), zlib (+ 1 more problem). >>> >>> Changing the encoding to UNIX line endings fixes the problem. This is >>> the number 1 problem. Is there a Guile way to easily fix this? >> >> Could you explain how if fails exactly? > > The extra character '\r' screws up the parsing because it was not > accounted for in the logic to recognize multi-line values and > indentation based block separation. > > What do you think of a kind of piped filter as follows: > > (define (call-with-input-file-eol-crlf->lf proc port) > (let* ((port-pair (pipe)) > (input-port (match port-pair ((in . out) in))) > (output-port (match port-pair ((in . out) out)))) > (letpar ((transcoder > (let loop ((line (get-line port))) > (unless (eof-object? line) > (write-line (string-trim-right line #\return) output-po= rt) > (loop (get-line port))) > (flush-output-port output-port))) > (result (proc input-port))) > (close-output-port output-port) > (close-input-port input-port) > result))) > > Then instead of calling (read-cabal port) I would call > (call-with-input-file-eol-crlf->lf read-cabal port). I wonder if it wouldn=E2=80=99t be easier to change the lexer to recognize = line feeds are white space or newlines, maybe along these lines: --=-=-= Content-Type: text/x-patch Content-Disposition: inline diff --git a/guix/import/cabal.scm b/guix/import/cabal.scm index 45d644a..0dd329c 100644 --- a/guix/import/cabal.scm +++ b/guix/import/cabal.scm @@ -259,10 +259,11 @@ otherwise return BOL (beginning-of-line)." (bol bol)) (cond ((and (not (eof-object? c)) - (or (char=? c #\space) (char=? c #\tab))) + (or (char-set-contains? char-set:whitespace c))) (read-char port) (loop (peek-char port) bol)) - ((and (not (eof-object? c)) (char=? c #\newline)) + ((and (not (eof-object? c)) + (or (char=? c #\newline) (char=? c #\return))) (read-char port) (loop (peek-char port) #t)) ((comment-line port c) --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 DQpXRFlUPw0KDQpMdWRv4oCZLg0K --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Thu Nov 12 11:54:52 2015 Received: (at 21829) by debbugs.gnu.org; 12 Nov 2015 16:54:52 +0000 Received: from localhost ([127.0.0.1]:34933 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Zwv99-00085T-JY for submit@debbugs.gnu.org; Thu, 12 Nov 2015 11:54:52 -0500 Received: from mail-vk0-f53.google.com ([209.85.213.53]:35727) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Zwv97-00085J-0m for 21829@debbugs.gnu.org; Thu, 12 Nov 2015 11:54:49 -0500 Received: by vkas68 with SMTP id s68so14468320vka.2 for <21829@debbugs.gnu.org>; Thu, 12 Nov 2015 08:54:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type:content-transfer-encoding; bh=0X4pgt7swp8fGI3VfcustfOyfpDGc3IuWQ1iuq+GBMY=; b=w51fvdCQ2K/S7ojSOzRQbUPLBC9NfTYulGXW7Q4xzL2LiG+0YywecK6XHmrX4AohiG uAcj008la2MZNRFwAuTbwBgv94uwPaGxre3cf1BOQaS7sncc2BQwBlCPaxrzXbTxPzTe 2+NQDP88nIEHrgj59JL0xv6bDPVr4Tou9ydwoJzUex8qfswJ3U+v/MHB0wxpQz7fR2gG 13MXarYW6W3F8hgAw015QqN2aGtcmO0AlBS68FtCchx/5RBZFoaLaJy1OwRorjelaK4S tUXYMOAdlqqy/QmWYPGubntabypt4VWf5MZ4AHi+HA1esxDjKi3cGqIKMRbQOGj74AZm dk8g== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ieee_org.20150623.gappssmtp.com; s=20150623; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type:content-transfer-encoding; bh=0X4pgt7swp8fGI3VfcustfOyfpDGc3IuWQ1iuq+GBMY=; b=K5EnItjTsKVr60vX1bw493kpjMXgj4bp10vTgkuneKwV36RyhuSMc3cxgAKts+l8Q9 u3Namtnq95CHhfAn58DYcZIbJ9cyNjg0XssAlg/FTqBshFQFZ3UAz+wkN+lS8uefUYvG VdJ9BkUyIHA2DmC0rAGQ/jjU4Q5V3eNgYN6Do7q9GaZH8pinRYJRlU87SXMoEkQbFxzE GRew30yxQVzYRoQmrQrXgOuBGIWENoi/ot92dKTtlH3La8OenODCkI90tOWcyvL8FQpW pGbRUF1OqXgDrB0q0T+bDIiTQw1CU+FlAqPsiDqYtGoGIDV/4gxAyNNM6HH2to+JIURT ZX0g== MIME-Version: 1.0 X-Received: by 10.31.54.7 with SMTP id d7mr4527145vka.117.1447347288262; Thu, 12 Nov 2015 08:54:48 -0800 (PST) Received: by 10.103.106.199 with HTTP; Thu, 12 Nov 2015 08:54:48 -0800 (PST) In-Reply-To: <87vb971t74.fsf@gnu.org> References: <87d1vghjhk.fsf@gnu.org> <87vb971t74.fsf@gnu.org> Date: Thu, 12 Nov 2015 17:54:48 +0100 X-Google-Sender-Auth: Srdw4n-yqtAk_fht67UtxA3oQ9U Message-ID: Subject: Re: guix import hackage failures From: Federico Beffa To: =?UTF-8?Q?Ludovic_Court=C3=A8s?= Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 21829 Cc: 21829@debbugs.gnu.org, Paul van der Walt X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) On Thu, Nov 12, 2015 at 10:07 AM, Ludovic Court=C3=A8s wrote= : > Federico Beffa skribis: > I wonder if it wouldn=E2=80=99t be easier to change the lexer to recogniz= e line > feeds are white space or newlines, maybe along these lines: What you suggest is not enough. You have to tweak a couple of other places as well. I don't like having to mess around in token recognition code to account for different eol styles. With my proposal I was trying to abstract this away and make the eol style problem orthogonal to parsing: first we convert to a "normal form" and then we operate on it. Should we find some files in 'mac' eol-style (in Emacs parlance) then it would be trivial to adapt. Could you be more explicit about what you do not like about this? Regards, Fede From debbugs-submit-bounces@debbugs.gnu.org Thu Nov 12 15:21:46 2015 Received: (at 21829) by debbugs.gnu.org; 12 Nov 2015 20:21:46 +0000 Received: from localhost ([127.0.0.1]:35125 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZwyNN-0007wL-C3 for submit@debbugs.gnu.org; Thu, 12 Nov 2015 15:21:45 -0500 Received: from eggs.gnu.org ([208.118.235.92]:42312) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZwyNL-0007wC-Lf for 21829@debbugs.gnu.org; Thu, 12 Nov 2015 15:21:44 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZwyNK-0001Md-JJ for 21829@debbugs.gnu.org; Thu, 12 Nov 2015 15:21:43 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.4 required=5.0 tests=BAYES_50,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:58253) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZwyND-0001Lw-NS; Thu, 12 Nov 2015 15:21:35 -0500 Received: from reverse-83.fdn.fr ([80.67.176.83]:57042 helo=pluto) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1ZwyNC-00018b-Tw; Thu, 12 Nov 2015 15:21:35 -0500 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: Federico Beffa Subject: Re: guix import hackage failures References: <87d1vghjhk.fsf@gnu.org> <87vb971t74.fsf@gnu.org> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 22 Brumaire an 224 de la =?utf-8?Q?R=C3=A9volution?= X-PGP-Key-ID: 0x3D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-unknown-linux-gnu Date: Thu, 12 Nov 2015 21:21:32 +0100 In-Reply-To: (Federico Beffa's message of "Thu, 12 Nov 2015 17:54:48 +0100") Message-ID: <87lha3ufxv.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.4 (-----) X-Debbugs-Envelope-To: 21829 Cc: 21829@debbugs.gnu.org, Paul van der Walt X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -5.4 (-----) Federico Beffa skribis: > On Thu, Nov 12, 2015 at 10:07 AM, Ludovic Court=C3=A8s wro= te: >> Federico Beffa skribis: >> I wonder if it wouldn=E2=80=99t be easier to change the lexer to recogni= ze line >> feeds are white space or newlines, maybe along these lines: > > What you suggest is not enough. You have to tweak a couple of other > places as well. > > I don't like having to mess around in token recognition code to > account for different eol styles. With my proposal I was trying to > abstract this away and make the eol style problem orthogonal to > parsing: first we convert to a "normal form" and then we operate on > it. Should we find some files in 'mac' eol-style (in Emacs parlance) > then it would be trivial to adapt. > > Could you be more explicit about what you do not like about this? I think the approach you suggest is fine, but I noticed that the places I changed were too specific anyway (looking for #\space and #\tab instead of the general char-set:whitespace class, for instance.) So I thought that it generalizing this would also fix the problem, that would be nice, because the change is more general than just fixing the CRLF issue. But maybe I=E2=80=99m missing other places, which would make the change too intrusive. That=E2=80=99s why I was asking for your feedback. Does that make sense? If we go for the CRLF conversion port, we should avoid the pipe and extra thread. Instead, I would suggest something like: (define (canonical-newline-port port) "Return an input port that wraps PORT such that all newlines consist of a single carriage return." (make-custom-binary-input-port =E2=80=A6)) WDYT? Thanks, Ludo=E2=80=99. From debbugs-submit-bounces@debbugs.gnu.org Fri Nov 13 12:08:37 2015 Received: (at 21829) by debbugs.gnu.org; 13 Nov 2015 17:08:37 +0000 Received: from localhost ([127.0.0.1]:37387 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZxHq0-0001CJ-O0 for submit@debbugs.gnu.org; Fri, 13 Nov 2015 12:08:37 -0500 Received: from mail-yk0-f175.google.com ([209.85.160.175]:34442) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZxHpy-0001C8-AC for 21829@debbugs.gnu.org; Fri, 13 Nov 2015 12:08:34 -0500 Received: by ykfs79 with SMTP id s79so157497882ykf.1 for <21829@debbugs.gnu.org>; Fri, 13 Nov 2015 09:08:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type:content-transfer-encoding; bh=9v4R7YKjtTZPZXUlplfsIPPy9ziCDFmcBp5BLc4bcdQ=; b=qD+sSsBNfNxzVKVOj0zKw4uuFkb2rgddEtsUkRbbnmI0jTmlaBExFRbFkt89FPl3Wy kWHh4zOuheW30Tr0J10mwD8iGPMUWVTkNdexJzEoUfNe/m/lKjMsaJkf/D4LQ79pFmFz CkuAq0lZLnPirDACyGV7Q1lKf+VKksUOA5Crx0xk3b7jwsuqSQwA+P3RbmTm5bIYS7FH XYRjOURdQxYnNU0LNyfbl3bIlIuzHlL0Bgq7VCiTIe8+yXrcnbMcDtQGQgy2jDcO65xA p4uKKUQoosrpQSMhhmoZB54OLE4eKIq56JaC0RNK3tDtkcUfpKtqAMmQsmQUjdfVa1nt BAEQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ieee_org.20150623.gappssmtp.com; s=20150623; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type:content-transfer-encoding; bh=9v4R7YKjtTZPZXUlplfsIPPy9ziCDFmcBp5BLc4bcdQ=; b=ryhoTJfXuV7xVfA3YltA5/QbeqaMcoIJNKR8cmPsTpb+43Ca9p7Y7Lm/wHHTdc0s0W K9uo3NDELdChARh7ELrtWhMGddHIERcuw5YFJxZMFK58iVmel9dIp1i9yTFgVpk3OvGE 2EWLpzMENsZy+vNqYeSaVVkgaydEM0yuzVShxOwV3FtTPG58E/hTCwZDMTaC4tRBEdAQ pCpQK4I1DvvOocYM0VFS0Y3qrVtyatPv56WChUZxLqpw/MrDnw7HrJz+G+83ZHoazv0o VEAd/jZQrY4Wz1e9TlA2qofRHbdhW8onhi16i2PP3uB2YbuoRIxe22wDB0FuAL6LOnOT awkw== MIME-Version: 1.0 X-Received: by 10.129.27.12 with SMTP id b12mr22620734ywb.140.1447434513625; Fri, 13 Nov 2015 09:08:33 -0800 (PST) Received: by 10.103.106.199 with HTTP; Fri, 13 Nov 2015 09:08:33 -0800 (PST) In-Reply-To: <87lha3ufxv.fsf@gnu.org> References: <87d1vghjhk.fsf@gnu.org> <87vb971t74.fsf@gnu.org> <87lha3ufxv.fsf@gnu.org> Date: Fri, 13 Nov 2015 18:08:33 +0100 X-Google-Sender-Auth: acutFpTn0SV55lY2HoK05tGV9CU Message-ID: Subject: Re: guix import hackage failures From: Federico Beffa To: =?UTF-8?Q?Ludovic_Court=C3=A8s?= Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 21829 Cc: 21829@debbugs.gnu.org, Paul van der Walt X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) On Thu, Nov 12, 2015 at 9:21 PM, Ludovic Court=C3=A8s wrote: > If we go for the CRLF conversion port, we should avoid the pipe and > extra thread. Instead, I would suggest something like: > > (define (canonical-newline-port port) > "Return an input port that wraps PORT such that all newlines consist > of a single carriage return." > (make-custom-binary-input-port =E2=80=A6)) I like this suggestion :-) I never used custom ports. Is something like this OK? (Seems to work in the REPL.) --------------------------------------------------------------- (define (canonical-newline-port port) "Return an input port that wraps PORT such that all newlines consist of a single carriage return." (define (get-position) (if (port-has-port-position? port) (port-position port) #f)) (define (set-position! position) (if (port-has-set-port-position!? port) (set-port-position! position port) #f)) (define (close) (close-port port)) (define (read! bv start n) (let loop ((count 0) (byte (get-u8 port))) (cond ((or (eof-object? byte) (=3D count n)) count) ((eqv? byte (char->integer #\return)) (loop count (get-u8 port)= )) (else (bytevector-u8-set! bv (+ start count) byte) (loop (+ count 1) (get-u8 port)))))) (make-custom-binary-input-port "canonical-newline-port" read! get-position set-position! close)) --------------------------------------------------------------- IMO this is general enough that it could go into "guix/utils.scm". Are you OK with this? Regards, Fede From debbugs-submit-bounces@debbugs.gnu.org Fri Nov 13 16:20:28 2015 Received: (at 21829) by debbugs.gnu.org; 13 Nov 2015 21:20:28 +0000 Received: from localhost ([127.0.0.1]:37500 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZxLlj-0007Fn-Rk for submit@debbugs.gnu.org; Fri, 13 Nov 2015 16:20:28 -0500 Received: from eggs.gnu.org ([208.118.235.92]:42977) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZxLlP-0007FL-8w for 21829@debbugs.gnu.org; Fri, 13 Nov 2015 16:20:26 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZxLlO-0004JL-AX for 21829@debbugs.gnu.org; Fri, 13 Nov 2015 16:20:07 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-0.8 required=5.0 tests=BAYES_05,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:34056) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZxLlI-0004Gr-6U; Fri, 13 Nov 2015 16:20:00 -0500 Received: from reverse-83.fdn.fr ([80.67.176.83]:58066 helo=pluto) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1ZxLlH-0004Gd-CC; Fri, 13 Nov 2015 16:19:59 -0500 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: Federico Beffa Subject: Re: guix import hackage failures References: <87d1vghjhk.fsf@gnu.org> <87vb971t74.fsf@gnu.org> <87lha3ufxv.fsf@gnu.org> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 23 Brumaire an 224 de la =?utf-8?Q?R=C3=A9volution?= X-PGP-Key-ID: 0x3D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-unknown-linux-gnu Date: Fri, 13 Nov 2015 22:19:57 +0100 In-Reply-To: (Federico Beffa's message of "Fri, 13 Nov 2015 18:08:33 +0100") Message-ID: <87h9kp1ts2.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.3 (-----) X-Debbugs-Envelope-To: 21829 Cc: 21829@debbugs.gnu.org, Paul van der Walt X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -5.3 (-----) Federico Beffa skribis: > --------------------------------------------------------------- > (define (canonical-newline-port port) > "Return an input port that wraps PORT such that all newlines consist > of a single carriage return." > (define (get-position) > (if (port-has-port-position? port) (port-position port) #f)) > (define (set-position! position) > (if (port-has-set-port-position!? port) > (set-port-position! position port) > #f)) > (define (close) (close-port port)) > (define (read! bv start n) > (let loop ((count 0) > (byte (get-u8 port))) > (cond ((or (eof-object? byte) (=3D count n)) count) BYTE is lost here in the case it is not EOF. It may be best to move the (=3D count n) case right before the recursive call below. > ((eqv? byte (char->integer #\return)) (loop count (get-u8 por= t))) In practice this discards LF even if it=E2=80=99s not following CR; that=E2= =80=99s probably a good enough approximation, but an XXX comment would be welcome. > (else > (bytevector-u8-set! bv (+ start count) byte) > (loop (+ count 1) (get-u8 port)))))) > (make-custom-binary-input-port "canonical-newline-port" > read! > get-position > set-position! > close)) > --------------------------------------------------------------- > > IMO this is general enough that it could go into "guix/utils.scm". Are > you OK with this? Looks good! Could you make a patch that does that, along with adding a test or two in tests/utils.scm? Thank you! Ludo=E2=80=99. From debbugs-submit-bounces@debbugs.gnu.org Sat Nov 14 09:37:44 2015 Received: (at 21829) by debbugs.gnu.org; 14 Nov 2015 14:37:44 +0000 Received: from localhost ([127.0.0.1]:37742 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZxbxW-0001TO-NK for submit@debbugs.gnu.org; Sat, 14 Nov 2015 09:37:44 -0500 Received: from mail-vk0-f51.google.com ([209.85.213.51]:36196) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZxbxR-0001T8-Vn for 21829@debbugs.gnu.org; Sat, 14 Nov 2015 09:37:39 -0500 Received: by vkbq142 with SMTP id q142so7011935vkb.3 for <21829@debbugs.gnu.org>; Sat, 14 Nov 2015 06:37:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type; bh=I21eCw8FxiJTznoKJtxYbaL+zb7BVPXK5Dua0rvxGd4=; b=BPNfL8qREJGrj7+MTZx4aQDh/TS73HIm4wrDNUbbvKDJhhga4s/AErILnuAj8Cy7+u fC8+p5fGL4GOvoNl8yizCMcL+K1fwcvjmlCsAWVDnVtZSTexBS7AmpsOaw2SWjEPz9ac e8B2JBuhJ5GgEPB2fCMK7xLfwIeIv5Eb4f1pEb9EUxLPW7YMn7DVVA7i3xJ13xVVob77 66DY1CMszOph8kduRmBe2zlMJ93EIu0QcN9i2Khd7OjSbSB/Nol43pgJ5EYKk17Az6Bf xj9A6ixRBy1m8kzdRGJaRo7pzhPaR+wmRIHNXmQJ3izuCYskifAesxy3lzoihW3C7LP/ 866A== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ieee_org.20150623.gappssmtp.com; s=20150623; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type; bh=I21eCw8FxiJTznoKJtxYbaL+zb7BVPXK5Dua0rvxGd4=; b=EXtXsLlHvWYKu41Hc1n4wc4zDpAD73TqdlPn5IEmL+UWMF415gwTU12L6TTrcR+a0v TCL5f/MzY101xPtzzXVFeQ/GWp1nIvkG1jYMnvmj0ha5NCZrwMFkBMcD+VFw+LAe+B+0 jgJM7ZlJQOMPOd/F4Ay7OqgEPe70lGkdxoPTcIwpYKI1X6Vo/NzY5q2KSs8XLmPEEpoB LG4smhx0BDiPWmH44QmcCN1ukRey/XYKiIBfqSxsLcw82vP8Jrj3XuE5yZo8zDcdSDHC /1hJBfmGytDc7bQTr3zvwjvhXSL6tubrK27/3sOFITH1Ed4HLjmLeMxgfz3rLl/Oo6L5 jsiA== MIME-Version: 1.0 X-Received: by 10.31.150.68 with SMTP id y65mr3088019vkd.35.1447511856433; Sat, 14 Nov 2015 06:37:36 -0800 (PST) Received: by 10.103.106.199 with HTTP; Sat, 14 Nov 2015 06:37:35 -0800 (PST) In-Reply-To: <87h9kp1ts2.fsf@gnu.org> References: <87d1vghjhk.fsf@gnu.org> <87vb971t74.fsf@gnu.org> <87lha3ufxv.fsf@gnu.org> <87h9kp1ts2.fsf@gnu.org> Date: Sat, 14 Nov 2015 15:37:35 +0100 X-Google-Sender-Auth: N9-zlPDdJzzbmyKeBscx-4G7etY Message-ID: Subject: Re: guix import hackage failures From: Federico Beffa To: =?UTF-8?Q?Ludovic_Court=C3=A8s?= Content-Type: multipart/mixed; boundary=001a11425b86033def0524811e68 X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 21829 Cc: 21829@debbugs.gnu.org, Paul van der Walt X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) --001a11425b86033def0524811e68 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On Fri, Nov 13, 2015 at 10:19 PM, Ludovic Court=C3=A8s wrote= : > Federico Beffa skribis: > >> --------------------------------------------------------------- >> (define (canonical-newline-port port) >> "Return an input port that wraps PORT such that all newlines consist >> of a single carriage return." >> (define (get-position) >> (if (port-has-port-position? port) (port-position port) #f)) >> (define (set-position! position) >> (if (port-has-set-port-position!? port) >> (set-port-position! position port) >> #f)) >> (define (close) (close-port port)) >> (define (read! bv start n) >> (let loop ((count 0) >> (byte (get-u8 port))) >> (cond ((or (eof-object? byte) (=3D count n)) count) > > BYTE is lost here in the case it is not EOF. Ooops. Thanks for catching it! > It may be best to move the (=3D count n) case right before the recursive > call below. > >> ((eqv? byte (char->integer #\return)) (loop count (get-u8 po= rt))) > > In practice this discards LF even if it=E2=80=99s not following CR; that= =E2=80=99s > probably a good enough approximation, but an XXX comment would be > welcome. This is intentional because, in my ignorance, I only know of uses of '\r' before or after '\n'. Do you know of any other use in text files? I've added an "XXX" comment, but I'm not sure what's its use. > >> (else >> (bytevector-u8-set! bv (+ start count) byte) >> (loop (+ count 1) (get-u8 port)))))) >> (make-custom-binary-input-port "canonical-newline-port" >> read! >> get-position >> set-position! >> close)) >> --------------------------------------------------------------- >> >> IMO this is general enough that it could go into "guix/utils.scm". Are >> you OK with this? > > Looks good! Could you make a patch that does that, along with adding a > test or two in tests/utils.scm? The attached patches fix the parsing of all but two of the failures reported by Paul. Two cabal files are still not imported correctly because they are buggy: * streaming-commons: indentation changes from 4 to 2. But this is explicitly forbidden. From [1]: "Field names may be indented, but all field values in the same section must use the same indentation." * fgl: uses braces to delimit the value of a field. As far as I understand this is not allowed by [1]: "To continue a field value, indent the next line relative to the field name." and "Flags, conditionals, library and executable sections use layout to indicate structure. ... As an alternative to using layout you can also use explicit braces {}. ". Thus I understand that braces may be used to delimit sections, not field values. Obviously the official 'cabal' program is more permissive than the description in the documentation. Regards, Fede [1] https://www.haskell.org/cabal/users-guide/developing-packages.html --001a11425b86033def0524811e68 Content-Type: text/x-diff; charset=US-ASCII; name="0001-import-hackage-Add-recognition-of-true-and-false-sym.patch" Content-Disposition: attachment; filename="0001-import-hackage-Add-recognition-of-true-and-false-sym.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_igz726r60 RnJvbSBkMTNmMDYzODNkMDdlMGFkNDA5NmZmN2ViNzE1MjY0NDYzNzM4YjBjIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBGZWRlcmljbyBCZWZmYSA8YmVmZmFAZmJlbmdpbmVlcmluZy5j aD4KRGF0ZTogV2VkLCAxMSBOb3YgMjAxNSAxMDozOTozOCArMDEwMApTdWJqZWN0OiBbUEFUQ0gg MS82XSBpbXBvcnQ6IGhhY2thZ2U6IEFkZCByZWNvZ25pdGlvbiBvZiAndHJ1ZScgYW5kICdmYWxz ZScKIHN5bWJvbHMuCgoqIGd1aXgvaW1wb3J0L2NhYmFsLnNjbSAoaXMtdHJ1ZSwgaXMtZmFsc2Us IGxleC10cnVlLCBsZXgtZmFsc2UpOiBOZXcgcHJvY2VkdXJlcy4KICAobGV4LXdvcmQpOiBVc2Ug dGhlbS4KICAobWFrZS1jYWJhbC1wYXJzZXIpOiBBZGQgVFJVRSBhbmQgRkFMU0UgdG9rZW5zLgog IChldmFsKTogQWRkIGVudHJpZXMgZm9yICd0cnVlIGFuZCAnZmFsc2Ugc3ltYm9scy4KLS0tCiBn dWl4L2ltcG9ydC9jYWJhbC5zY20gfCAxNiArKysrKysrKysrKysrKystCiAxIGZpbGUgY2hhbmdl ZCwgMTUgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL2d1aXgvaW1w b3J0L2NhYmFsLnNjbSBiL2d1aXgvaW1wb3J0L2NhYmFsLnNjbQppbmRleCA0NWQ2NDRhLi44ZDg0 ZTA5IDEwMDY0NAotLS0gYS9ndWl4L2ltcG9ydC9jYWJhbC5zY20KKysrIGIvZ3VpeC9pbXBvcnQv Y2FiYWwuc2NtCkBAIC0xMzgsNyArMTM4LDcgQEAgdG8gdGhlIHN0YWNrLiIKICAgIkdlbmVyYXRl IGEgcGFyc2VyIGZvciBDYWJhbCBmaWxlcy4iCiAgIChsYWxyLXBhcnNlcgogICAgOzsgLS0tIHRv a2VuIGRlZmluaXRpb25zCi0gICAoQ0NVUkxZIFZDQ1VSTFkgT1BBUkVOIENQQVJFTiBURVNUIElE IFZFUlNJT04gUkVMQVRJT04KKyAgIChDQ1VSTFkgVkNDVVJMWSBPUEFSRU4gQ1BBUkVOIFRFU1Qg SUQgVkVSU0lPTiBSRUxBVElPTiBUUlVFIEZBTFNFCiAgICAgICAgICAgIChyaWdodDogSUYgRkxB RyBFWEVDIFRFU1QtU1VJVEUgU09VUkNFLVJFUE8gQkVOQ0hNQVJLIExJQiBPQ1VSTFkpCiAgICAg ICAgICAgIChsZWZ0OiBPUikKICAgICAgICAgICAgKGxlZnQ6IFBST1BFUlRZIEFORCkKQEAgLTIw Niw2ICsyMDYsOCBAQCB0byB0aGUgc3RhY2suIgogICAgKGlmLXRoZW4gICAgIChJRiB0ZXN0cyBP Q1VSTFkgZXhwcnMgQ0NVUkxZKSA6IGAoaWYgLCQyICwkNCAoKSkKICAgICAgICAgICAgICAgICAo SUYgdGVzdHMgb3BlbiBleHBycyBjbG9zZSkgICAgOiBgKGlmICwkMiAsJDQgKCkpKQogICAgKHRl c3RzICAgICAgIChURVNUIE9QQVJFTiBJRCBDUEFSRU4pICAgICAgICA6IGAoLCQxICwkMykKKyAg ICAgICAgICAgICAgICAoVFJVRSkgICAgICAgICAgICAgICAgICAgICAgICAgOiAndHJ1ZQorICAg ICAgICAgICAgICAgIChGQUxTRSkgICAgICAgICAgICAgICAgICAgICAgICA6ICdmYWxzZQogICAg ICAgICAgICAgICAgIChURVNUIE9QQVJFTiBJRCBSRUxBVElPTiBWRVJTSU9OIENQQVJFTikKICAg ICAgICAgICAgICAgICA6IGAoLCQxICwoc3RyaW5nLWFwcGVuZCAkMyAiICIgJDQgIiAiICQ1KSkK ICAgICAgICAgICAgICAgICAoVEVTVCBPUEFSRU4gSUQgUkVMQVRJT04gVkVSU0lPTiBBTkQgUkVM QVRJT04gVkVSU0lPTiBDUEFSRU4pCkBAIC0zNTAsNiArMzUyLDEwIEBAIG1hdGNoaW5nIGEgc3Ry aW5nIGFnYWluc3QgdGhlIGNyZWF0ZWQgcmVnZXhwLiIKIAogKGRlZmluZSAoaXMtaWYgcykgKHN0 cmluZy1jaT0/IHMgImlmIikpCiAKKyhkZWZpbmUgKGlzLXRydWUgcykgKHN0cmluZy1jaT0/IHMg InRydWUiKSkKKworKGRlZmluZSAoaXMtZmFsc2UgcykgKHN0cmluZy1jaT0/IHMgImZhbHNlIikp CisKIChkZWZpbmUgKGlzLWFuZCBzKSAoc3RyaW5nPT8gcyAiJiYiKSkKIAogKGRlZmluZSAoaXMt b3IgcykgKHN0cmluZz0/IHMgInx8IikpCkBAIC00MjQsNiArNDMwLDEwIEBAIHN0cmluZyB3aXRo IHRoZSByZWFkIGNoYXJhY3RlcnMuIgogCiAoZGVmaW5lIChsZXgtaWYgbG9jKSAobWFrZS1sZXhp Y2FsLXRva2VuICdJRiBsb2MgI2YpKQogCisoZGVmaW5lIChsZXgtdHJ1ZSBsb2MpIChtYWtlLWxl eGljYWwtdG9rZW4gJ1RSVUUgbG9jICN0KSkKKworKGRlZmluZSAobGV4LWZhbHNlIGxvYykgKG1h a2UtbGV4aWNhbC10b2tlbiAnRkFMU0UgbG9jICNmKSkKKwogKGRlZmluZSAobGV4LWFuZCBsb2Mp IChtYWtlLWxleGljYWwtdG9rZW4gJ0FORCBsb2MgI2YpKQogCiAoZGVmaW5lIChsZXgtb3IgbG9j KSAobWFrZS1sZXhpY2FsLXRva2VuICdPUiBsb2MgI2YpKQpAQCAtNDg5LDYgKzQ5OSw4IEBAIExP QyBpcyB0aGUgY3VycmVudCBwb3J0IGxvY2F0aW9uLiIKICAgKGxldCogKCh3IChyZWFkLWRlbGlt aXRlZCAiICgpXHRcbiIgcG9ydCAncGVlaykpKQogICAgIChjb25kICgoaXMtaWYgdykgKGxleC1p ZiBsb2MpKQogICAgICAgICAgICgoaXMtdGVzdCB3IHBvcnQpIChsZXgtdGVzdCB3IGxvYykpCisg ICAgICAgICAgKChpcy10cnVlIHcpIChsZXgtdHJ1ZSBsb2MpKQorICAgICAgICAgICgoaXMtZmFs c2UgdykgKGxleC1mYWxzZSBsb2MpKQogICAgICAgICAgICgoaXMtYW5kIHcpIChsZXgtYW5kIGxv YykpCiAgICAgICAgICAgKChpcy1vciB3KSAobGV4LW9yIGxvYykpCiAgICAgICAgICAgKChpcy1p ZCB3KSAobGV4LWlkIHcgbG9jKSkKQEAgLTcxNCw2ICs3MjYsOCBAQCB0aGUgb3JkZXJpbmcgb3Bl cmF0aW9uIGFuZCB0aGUgdmVyc2lvbi4iCiAgICAgICAoKCdvcyBuYW1lKSAob3MgbmFtZSkpCiAg ICAgICAoKCdhcmNoIG5hbWUpIChhcmNoIG5hbWUpKQogICAgICAgKCgnaW1wbCBuYW1lKSAoaW1w bCBuYW1lKSkKKyAgICAgICgndHJ1ZSAjdCkKKyAgICAgICgnZmFsc2UgI2YpCiAgICAgICAoKCdu b3QgbmFtZSkgKG5vdCAoZXZhbCBuYW1lKSkpCiAgICAgICA7OyAnYW5kJyBhbmQgJ29yJyBhcmVu J3QgZnVuY3Rpb25zLCB0aHVzIHdlIGNhbid0IHVzZSBhcHBseQogICAgICAgKCgnYW5kIGFyZ3Mg Li4uKSAoZm9sZCAobGFtYmRhIChlIHMpIChhbmQgZSBzKSkgI3QgKGV2YWwgYXJncykpKQotLSAK Mi40LjMKCg== --001a11425b86033def0524811e68 Content-Type: text/x-diff; charset=US-ASCII; name="0002-import-hackage-Imporve-parsing-of-tests.patch" Content-Disposition: attachment; filename="0002-import-hackage-Imporve-parsing-of-tests.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_igz726ry1 RnJvbSA0NDVmMWI2MTk3YzBlMjY2MDI3YWMwMzNjNTI2MjlkOTkwMTM3MTcxIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBGZWRlcmljbyBCZWZmYSA8YmVmZmFAZmJlbmdpbmVlcmluZy5j aD4KRGF0ZTogV2VkLCAxMSBOb3YgMjAxNSAxMToyMjo0MiArMDEwMApTdWJqZWN0OiBbUEFUQ0gg Mi82XSBpbXBvcnQ6IGhhY2thZ2U6IEltcG9ydmUgcGFyc2luZyBvZiB0ZXN0cy4KCiogZ3VpeC9p bXBvcnQvY2FiYWwuc2NtIChsZXgtd29yZCk6IEFkZCBzdXBwb3J0IGZvciB0ZXN0cyB3aXRoIG5v IHNwYWNlcy4KICAoaW1wbCk6IEZpeCBoYW5kbGluZyBvZiBvcGVyYXRvciAiPT0iLgotLS0KIGd1 aXgvaW1wb3J0L2NhYmFsLnNjbSB8IDEwICsrKysrKystLS0KIDEgZmlsZSBjaGFuZ2VkLCA3IGlu c2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZ3VpeC9pbXBvcnQvY2Fi YWwuc2NtIGIvZ3VpeC9pbXBvcnQvY2FiYWwuc2NtCmluZGV4IDhkODRlMDkuLjYxNWVjYTIgMTAw NjQ0Ci0tLSBhL2d1aXgvaW1wb3J0L2NhYmFsLnNjbQorKysgYi9ndWl4L2ltcG9ydC9jYWJhbC5z Y20KQEAgLTQ5Niw3ICs0OTYsNyBAQCBsb2NhdGlvbi4iCiAoZGVmaW5lIChsZXgtd29yZCBwb3J0 IGxvYykKICAgIlByb2Nlc3MgdG9rZW5zIHdoaWNoIGNhbiBiZSByZWNvZ25pemVkIGJ5IHJlYWRp bmcgdGhlIG5leHQgd29yZCBmb3JtIFBPUlQuCiBMT0MgaXMgdGhlIGN1cnJlbnQgcG9ydCBsb2Nh dGlvbi4iCi0gIChsZXQqICgodyAocmVhZC1kZWxpbWl0ZWQgIiAoKVx0XG4iIHBvcnQgJ3BlZWsp KSkKKyAgKGxldCogKCh3IChyZWFkLWRlbGltaXRlZCAiIDw+PSgpXHRcbiIgcG9ydCAncGVlaykp KQogICAgIChjb25kICgoaXMtaWYgdykgKGxleC1pZiBsb2MpKQogICAgICAgICAgICgoaXMtdGVz dCB3IHBvcnQpIChsZXgtdGVzdCB3IGxvYykpCiAgICAgICAgICAgKChpcy10cnVlIHcpIChsZXgt dHJ1ZSBsb2MpKQpAQCAtNjg4LDcgKzY4OCwxMSBAQCB0aGUgb3JkZXJpbmcgb3BlcmF0aW9uIGFu ZCB0aGUgdmVyc2lvbi4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGN1dCBtYXRjaDpz dWJzdHJpbmcgPD4gMikpKQogICAgICAgICAgICAodmVyc2lvbiAoYW5kPT4gKHdpdGgtdmVyLW1h dGNoZXItZm4gc3BlYykKICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjdXQgbWF0Y2g6c3Vi c3RyaW5nIDw+IDMpKSkpCi0gICAgICAodmFsdWVzIG5hbWUgb3BlcmF0b3IgdmVyc2lvbikpKQor ICAgICAgKHZhbHVlcyBuYW1lCisgICAgICAgICAgICAgIChpZiAoYW5kIChzdHJpbmc/IG9wZXJh dG9yKSAoc3RyaW5nPSBvcGVyYXRvciAiPT0iKSkKKyAgICAgICAgICAgICAgICAgICI9IgorICAg ICAgICAgICAgICAgICAgb3BlcmF0b3IpCisgICAgICAgICAgICAgIHZlcnNpb24pKSkKICAgCiAg IChkZWZpbmUgKGltcGwgaGFza2VsbCkKICAgICAobGV0Ki12YWx1ZXMgKCgoY29tcC1uYW1lIGNv bXAtdmVyKQpAQCAtNjk3LDcgKzcwMSw3IEBAIHRoZSBvcmRlcmluZyBvcGVyYXRpb24gYW5kIHRo ZSB2ZXJzaW9uLiIKICAgICAgICAgICAgICAgICAgICAoY29tcC1zcGVjLW5hbWUrb3ArdmVyc2lv biBoYXNrZWxsKSkpCiAgICAgICAoaWYgKGFuZCBzcGVjLXZlciBjb21wLXZlcikKICAgICAgICAg ICAoZXZhbC1zdHJpbmcKLSAgICAgICAgICAgKHN0cmluZy1hcHBlbmQgIihzdHJpbmciIHNwZWMt b3AgIiBcIiIgY29tcC1uYW1lICJcIiIKKyAgICAgICAgICAgKHN0cmluZy1hcHBlbmQgIihzdHJp bmciIHNwZWMtb3AgIiBcIiIgY29tcC1uYW1lICItIiBjb21wLXZlciAiXCIiCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICIgXCIiIHNwZWMtbmFtZSAiLSIgc3BlYy12ZXIgIlwiKSIpKQogICAg ICAgICAgIChzdHJpbmctbWF0Y2ggc3BlYy1uYW1lIGNvbXAtbmFtZSkpKSkKICAgCi0tIAoyLjQu MwoK --001a11425b86033def0524811e68 Content-Type: text/x-diff; charset=US-ASCII; name="0003-import-hackage-Make-it-resilient-to-missing-final-ne.patch" Content-Disposition: attachment; filename="0003-import-hackage-Make-it-resilient-to-missing-final-ne.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_igz726s62 RnJvbSBmNzk2ZDgxNDgyMTI4OWE5OGU0MDFhM2UzZGYxMzMzNGEyZTg2ODliIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBGZWRlcmljbyBCZWZmYSA8YmVmZmFAZmJlbmdpbmVlcmluZy5j aD4KRGF0ZTogV2VkLCAxMSBOb3YgMjAxNSAxNTozMTo0NiArMDEwMApTdWJqZWN0OiBbUEFUQ0gg My82XSBpbXBvcnQ6IGhhY2thZ2U6IE1ha2UgaXQgcmVzaWxpZW50IHRvIG1pc3NpbmcgZmluYWwK IG5ld2xpbmUuCgoqIGd1aXgvaW1wb3J0L2NhYmFsLnNjbSAocGVlay1uZXh0LWxpbmUtaW5kZW50 KTogQ2hlY2sgZm9yIG1pc3NpbmcgZmluYWwKICBuZXdsaW5lLgotLS0KIGd1aXgvaW1wb3J0L2Nh YmFsLnNjbSB8IDMxICsrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFu Z2VkLCAxOCBpbnNlcnRpb25zKCspLCAxMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9ndWl4 L2ltcG9ydC9jYWJhbC5zY20gYi9ndWl4L2ltcG9ydC9jYWJhbC5zY20KaW5kZXggNjE1ZWNhMi4u Y2E4OGZmNSAxMDA2NDQKLS0tIGEvZ3VpeC9pbXBvcnQvY2FiYWwuc2NtCisrKyBiL2d1aXgvaW1w b3J0L2NhYmFsLnNjbQpAQCAtMjI2LDE5ICsyMjYsMjQgQEAgdG8gdGhlIHN0YWNrLiIKICAgIlRo aXMgZnVuY3Rpb24gY2FuIGJlIGNhbGxlZCB3aGVuIHRoZSBuZXh0IGNoYXJhY3RlciBvbiBQT1JU IGlzICNcbmV3bGluZQogYW5kIHJldHVybnMgdGhlIGluZGVudGF0aW9uIG9mIHRoZSBsaW5lIHN0 YXJ0aW5nIGFmdGVyIHRoZSAjXG5ld2xpbmUKIGNoYXJhY3Rlci4gIERpc2NhcmQgKGFuZCBjb25z dW1lKSBlbXB0eSBhbmQgY29tbWVudCBsaW5lcy4iCi0gIChsZXQgKChpbml0aWFsLW5ld2xpbmUg KHN0cmluZyAocmVhZC1jaGFyIHBvcnQpKSkpCi0gICAgKGxldCBsb29wICgoY2hhciAocGVlay1j aGFyIHBvcnQpKQotICAgICAgICAgICAgICAgKHdvcmQgIiIpKQotICAgICAgKGNvbmQgKChlcXY/ IGNoYXIgI1xuZXdsaW5lKSAocmVhZC1jaGFyIHBvcnQpCi0gICAgICAgICAgICAgKGxvb3AgKHBl ZWstY2hhciBwb3J0KSAiIikpCi0gICAgICAgICAgICAoKG9yIChlcXY/IGNoYXIgI1xzcGFjZSkg KGVxdj8gY2hhciAjXHRhYikpCi0gICAgICAgICAgICAgKGxldCAoKGMgKHJlYWQtY2hhciBwb3J0 KSkpCi0gICAgICAgICAgICAgICAobG9vcCAocGVlay1jaGFyIHBvcnQpIChzdHJpbmctYXBwZW5k IHdvcmQgKHN0cmluZyBjKSkpKSkKLSAgICAgICAgICAgICgoY29tbWVudC1saW5lIHBvcnQgY2hh cikgKGxvb3AgKHBlZWstY2hhciBwb3J0KSAiIikpCi0gICAgICAgICAgICAoZWxzZQotICAgICAg ICAgICAgIChsZXQgKChsZW4gKHN0cmluZy1sZW5ndGggd29yZCkpKQotICAgICAgICAgICAgICAg KHVucmVhZC1zdHJpbmcgKHN0cmluZy1hcHBlbmQgaW5pdGlhbC1uZXdsaW5lIHdvcmQpIHBvcnQp Ci0gICAgICAgICAgICAgICBsZW4pKSkpKSkKKyAgKGlmIChlb2Ytb2JqZWN0PyAocGVlay1jaGFy IHBvcnQpKQorICAgICAgOzsgSWYgdGhlIGZpbGUgaXMgbWlzc2luZyB0aGUgI1xuZXdsaW5lIG9u IHRoZSBsYXN0IGxpbmUsIGFkZCBpdCBhbmQgYWN0CisgICAgICA7OyBhcyBpZiBpdCB3ZXJlIHRo ZXJlLiBUaGlzIGlzIG5lZWRlZCBmb3IgcHJvcG9lciBvcGVyYXRpb24gb2YKKyAgICAgIDs7IGlu ZGVudGF0aW9uIGJhc2VkIGJsb2NrIHJlY29nbml0aW9uLgorICAgICAgKGJlZ2luICh1bnJlYWQt Y2hhciAjXG5ld2xpbmUgcG9ydCkgKHJlYWQtY2hhciBwb3J0KSAwKQorICAgICAgKGxldCAoKGlu aXRpYWwtbmV3bGluZSAoc3RyaW5nIChyZWFkLWNoYXIgcG9ydCkpKSkKKyAgICAgICAgKGxldCBs b29wICgoY2hhciAocGVlay1jaGFyIHBvcnQpKQorICAgICAgICAgICAgICAgICAgICh3b3JkICIi KSkKKyAgICAgICAgICAoY29uZCAoKGVxdj8gY2hhciAjXG5ld2xpbmUpIChyZWFkLWNoYXIgcG9y dCkKKyAgICAgICAgICAgICAgICAgKGxvb3AgKHBlZWstY2hhciBwb3J0KSAiIikpCisgICAgICAg ICAgICAgICAgKChvciAoZXF2PyBjaGFyICNcc3BhY2UpIChlcXY/IGNoYXIgI1x0YWIpKQorICAg ICAgICAgICAgICAgICAobGV0ICgoYyAocmVhZC1jaGFyIHBvcnQpKSkKKyAgICAgICAgICAgICAg ICAgICAobG9vcCAocGVlay1jaGFyIHBvcnQpIChzdHJpbmctYXBwZW5kIHdvcmQgKHN0cmluZyBj KSkpKSkKKyAgICAgICAgICAgICAgICAoKGNvbW1lbnQtbGluZSBwb3J0IGNoYXIpIChsb29wIChw ZWVrLWNoYXIgcG9ydCkgIiIpKQorICAgICAgICAgICAgICAgIChlbHNlCisgICAgICAgICAgICAg ICAgIChsZXQgKChsZW4gKHN0cmluZy1sZW5ndGggd29yZCkpKQorICAgICAgICAgICAgICAgICAg ICh1bnJlYWQtc3RyaW5nIChzdHJpbmctYXBwZW5kIGluaXRpYWwtbmV3bGluZSB3b3JkKSBwb3J0 KQorICAgICAgICAgICAgICAgICAgIGxlbikpKSkpKSkKIAogKGRlZmluZSogKHJlYWQtdmFsdWUg cG9ydCB2YWx1ZSBtaW4taW5kZW50ICM6b3B0aW9uYWwgKHNlcGFyYXRvciAiICIpKQogICAiVGhl IG5leHQgY2hhcmFjdGVyIG9uIFBPUlQgbXVzdCBiZSAjXG5ld2xpbmUuICBBcHBlbmQgdG8gVkFM VUUgdGhlCi0tIAoyLjQuMwoK --001a11425b86033def0524811e68 Content-Type: text/x-diff; charset=US-ASCII; name="0004-import-hackage-Make-parsing-of-tests-and-fields-more.patch" Content-Disposition: attachment; filename="0004-import-hackage-Make-parsing-of-tests-and-fields-more.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_igz726se3 RnJvbSAyMjUxNjRkMjM1NWFmZDZmOTQ1NTI1MWQ4N2NiZDM0YjA4ZjY4Y2RiIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBGZWRlcmljbyBCZWZmYSA8YmVmZmFAZmJlbmdpbmVlcmluZy5j aD4KRGF0ZTogV2VkLCAxMSBOb3YgMjAxNSAxNjoyMDo0NSArMDEwMApTdWJqZWN0OiBbUEFUQ0gg NC82XSBpbXBvcnQ6IGhhY2thZ2U6IE1ha2UgcGFyc2luZyBvZiB0ZXN0cyBhbmQgZmllbGRzIG1v cmUKIGZsZXhpYmxlLgoKKiBndWl4L2ltcG9ydC9jYWJhbC5zY20gKGlzLXRlc3QpOiBBbGxvdyBz cGFjZXMgYmV0d2VlbiBrZXl3b3JkIGFuZAogIHBhcmVudGhlc2VzLgogIChpcy1pZCk6IEFkZCBh cmd1bWVudCAncG9ydCcuICBBbGxvdyBzcGFjZXMgYmV0d2VlbiBrZXl3b3JkIGFuZCBjb2x1bW4u CiAgKGxleC13b3JkKTogQWRqdXN0IGNhbGwgdG8gJ2lzLWlkJy4KLS0tCiBndWl4L2ltcG9ydC9j YWJhbC5zY20gfCAxOSArKysrKysrKysrKysrLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgMTMgaW5z ZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9ndWl4L2ltcG9ydC9jYWJh bC5zY20gYi9ndWl4L2ltcG9ydC9jYWJhbC5zY20KaW5kZXggY2E4OGZmNS4uMjU3YWZhNSAxMDA2 NDQKLS0tIGEvZ3VpeC9pbXBvcnQvY2FiYWwuc2NtCisrKyBiL2d1aXgvaW1wb3J0L2NhYmFsLnNj bQpAQCAtMzMyLDcgKzMzMiw3IEBAIG1hdGNoaW5nIGEgc3RyaW5nIGFnYWluc3QgdGhlIGNyZWF0 ZWQgcmVnZXhwLiIKICAgICAgICAgICAgICAgICAobWFrZS1yZWdleHAgcGF0KSkpKQogICAgIChj dXQgcmVnZXhwLWV4ZWMgcnggPD4pKSkKIAotKGRlZmluZSBpcy1wcm9wZXJ0eSAobWFrZS1yeC1t YXRjaGVyICIoW2EtejAtOS1dKyk6WyBcdF0qKFxcdz8uKikkIgorKGRlZmluZSBpcy1wcm9wZXJ0 eSAobWFrZS1yeC1tYXRjaGVyICIoW2EtejAtOS1dKylbIFx0XSo6WyBcdF0qKFxcdz8uKikkIgog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZ2V4cC9pY2FzZSkpCiAKIChk ZWZpbmUgaXMtZmxhZyAobWFrZS1yeC1tYXRjaGVyICJeZmxhZyArKFthLXowLTlfLV0rKSIKQEAg LTM2NSwxNyArMzY1LDI0IEBAIG1hdGNoaW5nIGEgc3RyaW5nIGFnYWluc3QgdGhlIGNyZWF0ZWQg cmVnZXhwLiIKIAogKGRlZmluZSAoaXMtb3IgcykgKHN0cmluZz0/IHMgInx8IikpCiAKLShkZWZp bmUgKGlzLWlkIHMpCisoZGVmaW5lIChpcy1pZCBzIHBvcnQpCiAgIChsZXQgKChjYWJhbC1yZXNl cnZlZC13b3JkcwogICAgICAgICAgJygiaWYiICJlbHNlIiAibGlicmFyeSIgImZsYWciICJleGVj dXRhYmxlIiAidGVzdC1zdWl0ZSIKLSAgICAgICAgICAgInNvdXJjZS1yZXBvc2l0b3J5IiAiYmVu Y2htYXJrIikpKQorICAgICAgICAgICAic291cmNlLXJlcG9zaXRvcnkiICJiZW5jaG1hcmsiKSkK KyAgICAgICAgKHNwYWNlcyAocmVhZC13aGlsZSAoY3V0IGNoYXItc2V0LWNvbnRhaW5zPyBjaGFy LXNldDpibGFuayA8PikgcG9ydCkpCisgICAgICAgIChjIChwZWVrLWNoYXIgcG9ydCkpKQorICAg ICh1bnJlYWQtc3RyaW5nIHNwYWNlcyBwb3J0KQogICAgIChhbmQgKGV2ZXJ5IChjdXQgc3RyaW5n LWNpPD4gcyA8PikgY2FiYWwtcmVzZXJ2ZWQtd29yZHMpCi0gICAgICAgICAobm90IChjaGFyPT8g KGxhc3QgKHN0cmluZy0+bGlzdCBzKSkgI1w6KSkpKSkKKyAgICAgICAgIChhbmQgKG5vdCAoY2hh cj0/IChsYXN0IChzdHJpbmctPmxpc3QgcykpICNcOikpCisgICAgICAgICAgICAgIChub3QgKGNo YXI9PyAjXDogYykpKSkpKQogCiAoZGVmaW5lIChpcy10ZXN0IHMgcG9ydCkKICAgKGxldCAoKHRl c3RzLXJ4IChtYWtlLXJlZ2V4cCAib3N8YXJjaHxmbGFnfGltcGwiKSkKKyAgICAgICAgKHNwYWNl cyAocmVhZC13aGlsZSAoY3V0IGNoYXItc2V0LWNvbnRhaW5zPyBjaGFyLXNldDpibGFuayA8Pikg cG9ydCkpCiAgICAgICAgIChjIChwZWVrLWNoYXIgcG9ydCkpKQotICAgIChhbmQgKHJlZ2V4cC1l eGVjIHRlc3RzLXJ4IHMpIChjaGFyPT8gI1woIGMpKSkpCisgICAgKGlmIChhbmQgKHJlZ2V4cC1l eGVjIHRlc3RzLXJ4IHMpIChjaGFyPT8gI1woIGMpKQorICAgICAgICAjdAorICAgICAgICAoYmVn aW4gKHVucmVhZC1zdHJpbmcgc3BhY2VzIHBvcnQpICNmKSkpKQogCiA7OyBMZXhlcnMgZm9yIGlu ZGl2aWR1YWwgdG9rZW5zLgogCkBAIC01MDgsNyArNTE1LDcgQEAgTE9DIGlzIHRoZSBjdXJyZW50 IHBvcnQgbG9jYXRpb24uIgogICAgICAgICAgICgoaXMtZmFsc2UgdykgKGxleC1mYWxzZSBsb2Mp KQogICAgICAgICAgICgoaXMtYW5kIHcpIChsZXgtYW5kIGxvYykpCiAgICAgICAgICAgKChpcy1v ciB3KSAobGV4LW9yIGxvYykpCi0gICAgICAgICAgKChpcy1pZCB3KSAobGV4LWlkIHcgbG9jKSkK KyAgICAgICAgICAoKGlzLWlkIHcgcG9ydCkgKGxleC1pZCB3IGxvYykpCiAgICAgICAgICAgKGVs c2UgKHVucmVhZC1zdHJpbmcgdyBwb3J0KSAjZikpKSkKIAogKGRlZmluZSAobGV4LWxpbmUgcG9y dCBsb2MpCi0tIAoyLjQuMwoK --001a11425b86033def0524811e68 Content-Type: text/x-diff; charset=US-ASCII; name="0005-utils-Add-canonical-newline-port.patch" Content-Disposition: attachment; filename="0005-utils-Add-canonical-newline-port.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_igz726sm4 RnJvbSAxYjI2NDEwZjRhN2E5MjAzODI3NTBiZmZiZjUzODEzOTRhY2FmZGJjIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBGZWRlcmljbyBCZWZmYSA8YmVmZmFAZmJlbmdpbmVlcmluZy5j aD4KRGF0ZTogU2F0LCAxNCBOb3YgMjAxNSAxNTowMDozNiArMDEwMApTdWJqZWN0OiBbUEFUQ0gg NS82XSB1dGlsczogQWRkICdjYW5vbmljYWwtbmV3bGluZS1wb3J0Jy4KCiogZ3VpeC91dGlscy5z Y20gKGNhbm9uaWNhbC1uZXdsaW5lLXBvcnQpOiBOZXcgcHJvY2VkdXJlLgoqIHRlc3RzL3V0aWxz LnNjbSAoImNhbm9uaWNhbC1uZXdsaW5lLXBvcnQiKTogTmV3IHRlc3QuCi0tLQogZ3VpeC91dGls cy5zY20gIHwgMzQgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLQogdGVzdHMvdXRp bHMuc2NtIHwgIDYgKysrKysrCiAyIGZpbGVzIGNoYW5nZWQsIDM4IGluc2VydGlvbnMoKyksIDIg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZ3VpeC91dGlscy5zY20gYi9ndWl4L3V0aWxzLnNj bQppbmRleCAxNTQyZTg2Li43YjU4OWU2IDEwMDY0NAotLS0gYS9ndWl4L3V0aWxzLnNjbQorKysg Yi9ndWl4L3V0aWxzLnNjbQpAQCAtMjksNyArMjksOCBAQAogICAjOnVzZS1tb2R1bGUgKHNyZmkg c3JmaS0zOSkKICAgIzp1c2UtbW9kdWxlIChzcmZpIHNyZmktNjApCiAgICM6dXNlLW1vZHVsZSAo cm5ycyBieXRldmVjdG9ycykKLSAgIzp1c2UtbW9kdWxlICgocm5ycyBpbyBwb3J0cykgIzpzZWxl Y3QgKHB1dC1ieXRldmVjdG9yKSkKKyAgIzp1c2UtbW9kdWxlIChybnJzIGlvIHBvcnRzKQorICAj OnVzZS1tb2R1bGUgKChybnJzIGJ5dGV2ZWN0b3JzKSAjOnNlbGVjdCAoYnl0ZXZlY3Rvci11OC1z ZXQhKSkKICAgIzp1c2UtbW9kdWxlICgoZ3VpeCBidWlsZCB1dGlscykKICAgICAgICAgICAgICAg ICAjOnNlbGVjdCAoZHVtcC1wb3J0IHBhY2thZ2UtbmFtZS0+bmFtZSt2ZXJzaW9uKSkKICAgIzp1 c2UtbW9kdWxlICgoZ3VpeCBidWlsZCBzeXNjYWxscykgIzpzZWxlY3QgKGVycm5vIG1rZHRlbXAh KSkKQEAgLTkwLDcgKzkxLDggQEAKICAgICAgICAgICAgIGRlY29tcHJlc3NlZC1wb3J0CiAgICAg ICAgICAgICBjYWxsLXdpdGgtZGVjb21wcmVzc2VkLXBvcnQKICAgICAgICAgICAgIGNvbXByZXNz ZWQtb3V0cHV0LXBvcnQKLSAgICAgICAgICAgIGNhbGwtd2l0aC1jb21wcmVzc2VkLW91dHB1dC1w b3J0KSkKKyAgICAgICAgICAgIGNhbGwtd2l0aC1jb21wcmVzc2VkLW91dHB1dC1wb3J0CisgICAg ICAgICAgICBjYW5vbmljYWwtbmV3bGluZS1wb3J0KSkKIAogDAogOzs7CkBAIC03NDYsNiArNzQ4 LDM0IEBAIGVsZW1lbnRzIGFmdGVyIEUuIgogICAgICAgICAgICAgKGlmIHN1Y2Nlc3M/CiAgICAg ICAgICAgICAgICAgKGxvb3AgKGFic29sdXRlIHRhcmdldCkgKCsgZGVwdGggMSkpCiAgICAgICAg ICAgICAgICAgZmlsZSkpKSkpKQorCisoZGVmaW5lIChjYW5vbmljYWwtbmV3bGluZS1wb3J0IHBv cnQpCisgICJSZXR1cm4gYW4gaW5wdXQgcG9ydCB0aGF0IHdyYXBzIFBPUlQgc3VjaCB0aGF0IGFs bCBuZXdsaW5lcyBjb25zaXN0CisgIG9mIGEgc2luZ2xlIGNhcnJpYWdlIHJldHVybi4iCisgIChk ZWZpbmUgKGdldC1wb3NpdGlvbikKKyAgICAoaWYgKHBvcnQtaGFzLXBvcnQtcG9zaXRpb24/IHBv cnQpIChwb3J0LXBvc2l0aW9uIHBvcnQpICNmKSkKKyAgKGRlZmluZSAoc2V0LXBvc2l0aW9uISBw b3NpdGlvbikKKyAgICAoaWYgKHBvcnQtaGFzLXNldC1wb3J0LXBvc2l0aW9uIT8gcG9ydCkKKyAg ICAgICAgKHNldC1wb3J0LXBvc2l0aW9uISBwb3NpdGlvbiBwb3J0KQorICAgICAgICAjZikpCisg IChkZWZpbmUgKGNsb3NlKSAoY2xvc2UtcG9ydCBwb3J0KSkKKyAgKGRlZmluZSAocmVhZCEgYnYg c3RhcnQgbikKKyAgICAobGV0IGxvb3AgKChjb3VudCAwKQorICAgICAgICAgICAgICAgKGJ5dGUg KGdldC11OCBwb3J0KSkpCisgICAgICAoY29uZCAoKGVvZi1vYmplY3Q/IGJ5dGUpIGNvdW50KQor ICAgICAgICAgICAgKCg9IGNvdW50ICgtIG4gMSkpCisgICAgICAgICAgICAgKGJ5dGV2ZWN0b3It dTgtc2V0ISBidiAoKyBzdGFydCBjb3VudCkgYnl0ZSkKKyAgICAgICAgICAgICBuKQorICAgICAg ICAgICAgOzsgWFhYOiBjb25zdW1lIGFsbCBMRnMgZXZlbiBpZiBub3QgZm9sbG93ZWQgYnkgQ1Iu CisgICAgICAgICAgICAoKGVxdj8gYnl0ZSAoY2hhci0+aW50ZWdlciAjXHJldHVybikpIChsb29w IGNvdW50IChnZXQtdTggcG9ydCkpKQorICAgICAgICAgICAgKGVsc2UKKyAgICAgICAgICAgICAo Ynl0ZXZlY3Rvci11OC1zZXQhIGJ2ICgrIHN0YXJ0IGNvdW50KSBieXRlKQorICAgICAgICAgICAg IChsb29wICgrIGNvdW50IDEpIChnZXQtdTggcG9ydCkpKSkpKQorICAobWFrZS1jdXN0b20tYmlu YXJ5LWlucHV0LXBvcnQgImNhbm9uaWNhbC1uZXdsaW5lLXBvcnQiCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICByZWFkIQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Z2V0LXBvc2l0aW9uCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXQtcG9zaXRp b24hCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbG9zZSkpCiAMCiA7OzsKIDs7 OyBTb3VyY2UgbG9jYXRpb24uCmRpZmYgLS1naXQgYS90ZXN0cy91dGlscy5zY20gYi90ZXN0cy91 dGlscy5zY20KaW5kZXggYjY1ZDZkMi4uOWQzNDVlMCAxMDA2NDQKLS0tIGEvdGVzdHMvdXRpbHMu c2NtCisrKyBiL3Rlc3RzL3V0aWxzLnNjbQpAQCAtMzE4LDYgKzMxOCwxMiBAQAogICAgKHN0cmlu Zy1hcHBlbmQgKCVzdG9yZS1wcmVmaXgpCiAgICAgICAgICAgICAgICAgICAiL3F2czJyajJpYTV2 Y2kzd3NkYjdxdnlkcm1hY2lnNHBnLWJhc2gtNC4yLXAyNCIpKSkKIAorKHRlc3QtZXF1YWwgImNh bm9uaWNhbC1uZXdsaW5lLXBvcnQiCisgICJUaGlzIGlzIGEgam91cm5leSIKKyAgKGxldCAoKHBv cnQgKG9wZW4tc3RyaW5nLWlucHV0LXBvcnQKKyAgICAgICAgICAgICAgICJUaGlzIGlzIGEgam91 cm5leVxyXG4iKSkpCisgICAgKGdldC1saW5lIChjYW5vbmljYWwtbmV3bGluZS1wb3J0IHBvcnQp KSkpCisKICh0ZXN0LWVuZCkKIAogKGZhbHNlLWlmLWV4Y2VwdGlvbiAoZGVsZXRlLWZpbGUgdGVt cC1maWxlKSkKLS0gCjIuNC4zCgo= --001a11425b86033def0524811e68 Content-Type: text/x-diff; charset=US-ASCII; name="0006-import-hackage-Handle-CRLF-end-of-line-style.patch" Content-Disposition: attachment; filename="0006-import-hackage-Handle-CRLF-end-of-line-style.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_igz726st5 RnJvbSBjNTdiZThjYWU5YjM2NDJiZWZmMTQ2MmFjZDMyYTBhZWU1NGFkN2M2IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBGZWRlcmljbyBCZWZmYSA8YmVmZmFAZmJlbmdpbmVlcmluZy5j aD4KRGF0ZTogU2F0LCAxNCBOb3YgMjAxNSAxNToxNTowMCArMDEwMApTdWJqZWN0OiBbUEFUQ0gg Ni82XSBpbXBvcnQ6IGhhY2thZ2U6IEhhbmRsZSBDUkxGIGVuZCBvZiBsaW5lIHN0eWxlLgoKKiBn dWl4L2ltcG9ydC9oYWNrYWdlLnNjbSAoaGFja2FnZS1mZXRjaCwgaGFja2FnZS0+Z3VpeC1wYWNr YWdlKTogRG8gaXQuCi0tLQogZ3VpeC9pbXBvcnQvaGFja2FnZS5zY20gfCA4ICsrKysrLS0tCiAx IGZpbGUgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdp dCBhL2d1aXgvaW1wb3J0L2hhY2thZ2Uuc2NtIGIvZ3VpeC9pbXBvcnQvaGFja2FnZS5zY20KaW5k ZXggM2JhYTUxNC4uODcyNWZmYSAxMDA2NDQKLS0tIGEvZ3VpeC9pbXBvcnQvaGFja2FnZS5zY20K KysrIGIvZ3VpeC9pbXBvcnQvaGFja2FnZS5zY20KQEAgLTIyLDcgKzIyLDggQEAKICAgIzp1c2Ut bW9kdWxlIChzcmZpIHNyZmktMTEpCiAgICM6dXNlLW1vZHVsZSAoc3JmaSBzcmZpLTEpCiAgICM6 dXNlLW1vZHVsZSAoKGd1aXggZG93bmxvYWQpICM6c2VsZWN0IChkb3dubG9hZC10by1zdG9yZSkp Ci0gICM6dXNlLW1vZHVsZSAoKGd1aXggdXRpbHMpICM6c2VsZWN0IChwYWNrYWdlLW5hbWUtPm5h bWUrdmVyc2lvbikpCisgICM6dXNlLW1vZHVsZSAoKGd1aXggdXRpbHMpICM6c2VsZWN0IChwYWNr YWdlLW5hbWUtPm5hbWUrdmVyc2lvbgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgY2Fub25pY2FsLW5ld2xpbmUtcG9ydCkpCiAgICM6dXNlLW1vZHVsZSAoZ3VpeCBpbXBv cnQgdXRpbHMpCiAgICM6dXNlLW1vZHVsZSAoZ3VpeCBpbXBvcnQgY2FiYWwpCiAgICM6dXNlLW1v ZHVsZSAoZ3VpeCBzdG9yZSkKQEAgLTg0LDcgKzg1LDggQEAgdmVyc2lvbi4iCiAgICAgKGNhbGwt d2l0aC10ZW1wb3Jhcnktb3V0cHV0LWZpbGUKICAgICAgKGxhbWJkYSAodGVtcCBwb3J0KQogICAg ICAgIChhbmQgKHVybC1mZXRjaCB1cmwgdGVtcCkKLSAgICAgICAgICAgIChjYWxsLXdpdGgtaW5w dXQtZmlsZSB0ZW1wIHJlYWQtY2FiYWwpKSkpKSkKKyAgICAgICAgICAgIChjYWxsLXdpdGgtaW5w dXQtZmlsZSB0ZW1wCisgICAgICAgICAgICAgIChjb21wb3NlIHJlYWQtY2FiYWwgY2Fub25pY2Fs LW5ld2xpbmUtcG9ydCkpKSkpKSkKIAogKGRlZmluZSBzdHJpbmctPmxpY2Vuc2UKICAgOzsgTGlz dCBvZiB2YWxpZCB2YWx1ZXMgZnJvbQpAQCAtMjE2LDcgKzIxOCw3IEBAIHRvIHRoZSBDYWJhbCBm aWxlIGZvcm1hdCBkZWZpbml0aW9uLiAgVGhlIGRlZmF1bHQgdmFsdWUgYXNzb2NpYXRlZCB3aXRo IHRoZQoga2V5cyBcIm9zXCIsIFwiYXJjaFwiIGFuZCBcImltcGxcIiBpcyBcImxpbnV4XCIsIFwi eDg2XzY0XCIgYW5kIFwiZ2hjXCIKIHJlc3BlY3RpdmVseS4iCiAgIChsZXQgKChjYWJhbC1tZXRh IChpZiBwb3J0Ci0gICAgICAgICAgICAgICAgICAgICAgICAocmVhZC1jYWJhbCBwb3J0KQorICAg ICAgICAgICAgICAgICAgICAgICAgKHJlYWQtY2FiYWwgKGNhbm9uaWNhbC1uZXdsaW5lLXBvcnQg cG9ydCkpCiAgICAgICAgICAgICAgICAgICAgICAgICAoaGFja2FnZS1mZXRjaCBwYWNrYWdlLW5h bWUpKSkpCiAgICAgKGFuZD0+IGNhYmFsLW1ldGEgKGNvbXBvc2UgKGN1dCBoYWNrYWdlLW1vZHVs ZS0+c2V4cCA8PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIzppbmNsdWRl LXRlc3QtZGVwZW5kZW5jaWVzPyAKLS0gCjIuNC4zCgo= --001a11425b86033def0524811e68-- From debbugs-submit-bounces@debbugs.gnu.org Sun Nov 15 15:59:52 2015 Received: (at 21829) by debbugs.gnu.org; 15 Nov 2015 20:59:52 +0000 Received: from localhost ([127.0.0.1]:39234 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Zy4Ot-0001mF-66 for submit@debbugs.gnu.org; Sun, 15 Nov 2015 15:59:51 -0500 Received: from eggs.gnu.org ([208.118.235.92]:52899) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Zy4Oq-0001m7-Hu for 21829@debbugs.gnu.org; Sun, 15 Nov 2015 15:59:49 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Zy4Oo-0002b6-Sr for 21829@debbugs.gnu.org; Sun, 15 Nov 2015 15:59:48 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.2 required=5.0 tests=BAYES_50,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:36945) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Zy4Oj-0002ZS-0U; Sun, 15 Nov 2015 15:59:41 -0500 Received: from reverse-83.fdn.fr ([80.67.176.83]:60592 helo=pluto) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1Zy4Oi-0003dk-5M; Sun, 15 Nov 2015 15:59:40 -0500 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: Federico Beffa Subject: Re: guix import hackage failures References: <87d1vghjhk.fsf@gnu.org> <87vb971t74.fsf@gnu.org> <87lha3ufxv.fsf@gnu.org> <87h9kp1ts2.fsf@gnu.org> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 25 Brumaire an 224 de la =?utf-8?Q?R=C3=A9volution?= X-PGP-Key-ID: 0x3D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-unknown-linux-gnu Date: Sun, 15 Nov 2015 21:59:37 +0100 In-Reply-To: (Federico Beffa's message of "Sat, 14 Nov 2015 15:37:35 +0100") Message-ID: <87k2pjq8qu.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.6 (-----) X-Debbugs-Envelope-To: 21829 Cc: 21829@debbugs.gnu.org, Paul van der Walt X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -5.6 (-----) Federico Beffa skribis: > On Fri, Nov 13, 2015 at 10:19 PM, Ludovic Court=C3=A8s wro= te: >> Federico Beffa skribis: [...] >> In practice this discards LF even if it=E2=80=99s not following CR; that= =E2=80=99s >> probably a good enough approximation, but an XXX comment would be >> welcome. > > This is intentional because, in my ignorance, I only know of uses of > '\r' before or after '\n'. Do you know of any other use in text files? ISTR that some OSes (MacOS 9 and earlier?! who cares?! :-)) use(d) a single LF instead of a single CR. Again that=E2=80=99s fine in practice I guess, but I always think it=E2=80= =99s good to add a note when we make an approximation so we can notice later, just in case. > The attached patches fix the parsing of all but two of the failures > reported by Paul. > Two cabal files are still not imported correctly because they are buggy: > > * streaming-commons: indentation changes from 4 to 2. But this is > explicitly forbidden. From [1]: "Field names may be indented, but all > field values in the same section must use the same indentation." > > * fgl: uses braces to delimit the value of a field. As far as I > understand this is not allowed by [1]: "To continue a field value, > indent the next line relative to the field name." and "Flags, > conditionals, library and executable sections use layout to indicate > structure. ... As an alternative to using layout you can also use > explicit braces {}. ". Thus I understand that braces may be used to > delimit sections, not field values. Fair enough! > Obviously the official 'cabal' program is more permissive than the > description in the documentation. We=E2=80=99re more royalist than the king! ;-) > From d13f06383d07e0ad4096ff7eb715264463738b0c Mon Sep 17 00:00:00 2001 > From: Federico Beffa > Date: Wed, 11 Nov 2015 10:39:38 +0100 > Subject: [PATCH 1/6] import: hackage: Add recognition of 'true' and 'fals= e' > symbols. > > * guix/import/cabal.scm (is-true, is-false, lex-true, lex-false): New pro= cedures. > (lex-word): Use them. > (make-cabal-parser): Add TRUE and FALSE tokens. > (eval): Add entries for 'true and 'false symbols. LGTM. > From 445f1b6197c0e266027ac033c52629d990137171 Mon Sep 17 00:00:00 2001 > From: Federico Beffa > Date: Wed, 11 Nov 2015 11:22:42 +0100 > Subject: [PATCH 2/6] import: hackage: Imporve parsing of tests. > > * guix/import/cabal.scm (lex-word): Add support for tests with no spaces. > (impl): Fix handling of operator "=3D=3D". LGTM, but I think it=E2=80=99d be great to add a test that illustrates the = case that this fixes (and to make sure it doesn=E2=80=99t come back later.) > From f796d814821289a98e401a3e3df13334a2e8689b Mon Sep 17 00:00:00 2001 > From: Federico Beffa > Date: Wed, 11 Nov 2015 15:31:46 +0100 > Subject: [PATCH 3/6] import: hackage: Make it resilient to missing final > newline. > > * guix/import/cabal.scm (peek-next-line-indent): Check for missing final > newline. [...] > + (if (eof-object? (peek-char port)) > + ;; If the file is missing the #\newline on the last line, add it a= nd act > + ;; as if it were there. This is needed for propoer operation of ^^^^ Typo. > + ;; indentation based block recognition. > + (begin (unread-char #\newline port) (read-char port) 0) Isn=E2=80=99t this equivalent to: 0 ? Could you add a test for this one? > From 225164d2355afd6f9455251d87cbd34b08f68cdb Mon Sep 17 00:00:00 2001 > From: Federico Beffa > Date: Wed, 11 Nov 2015 16:20:45 +0100 > Subject: [PATCH 4/6] import: hackage: Make parsing of tests and fields mo= re > flexible. > > * guix/import/cabal.scm (is-test): Allow spaces between keyword and > parentheses. > (is-id): Add argument 'port'. Allow spaces between keyword and column. > (lex-word): Adjust call to 'is-id'. LGTM, and would be perfect with a test. ;-) > From 1b26410f4a7a920382750bffbf5381394acafdbc Mon Sep 17 00:00:00 2001 > From: Federico Beffa > Date: Sat, 14 Nov 2015 15:00:36 +0100 > Subject: [PATCH 5/6] utils: Add 'canonical-newline-port'. > > * guix/utils.scm (canonical-newline-port): New procedure. > * tests/utils.scm ("canonical-newline-port"): New test. [...] > +(test-equal "canonical-newline-port" > + "This is a journey" > + (let ((port (open-string-input-port > + "This is a journey\r\n"))) > + (get-line (canonical-newline-port port)))) I would rather use =E2=80=98get-string-all=E2=80=99 and make sure the resul= t is exactly: "This is a journey\n" (Because =E2=80=98get-line=E2=80=99 could have been doing its own thing reg= ardless of the EOL style.) A test with several lines, including lines with just \n would be nice. > From c57be8cae9b3642beff1462acd32a0aee54ad7c6 Mon Sep 17 00:00:00 2001 > From: Federico Beffa > Date: Sat, 14 Nov 2015 15:15:00 +0100 > Subject: [PATCH 6/6] import: hackage: Handle CRLF end of line style. > > * guix/import/hackage.scm (hackage-fetch, hackage->guix-package): Do it. Rather =E2=80=9CUse =E2=80=98canonical-newline-port=E2=80=99.=E2=80=9D inst= ead of =E2=80=9CDo it.=E2=80=9D Thanks for all the work! Ludo=E2=80=99. From debbugs-submit-bounces@debbugs.gnu.org Wed Nov 25 11:55:36 2015 Received: (at 21829) by debbugs.gnu.org; 25 Nov 2015 16:55:36 +0000 Received: from localhost ([127.0.0.1]:52973 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1a1dLx-0002V3-Ls for submit@debbugs.gnu.org; Wed, 25 Nov 2015 11:55:35 -0500 Received: from mail-vk0-f53.google.com ([209.85.213.53]:34827) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1a1dLt-0002Uq-V0 for 21829@debbugs.gnu.org; Wed, 25 Nov 2015 11:55:31 -0500 Received: by vkha189 with SMTP id a189so38243417vkh.2 for <21829@debbugs.gnu.org>; Wed, 25 Nov 2015 08:55:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type; bh=IOvw9KNlpSMN7SnnY/qS4IcdtTlVLKI3aeNMEO3n2N0=; b=RaPoKim5KxtzpnW1FWO2F4x2U0lmHcBSFSlOr0fd0aBSTe+nONQU5GYay7J/A9VTaL sNm5bmRUdJ6qJt/8tniyDRk+JRg+Ubbgs3ipmJikipcpGtqCfnqPXumUqDUEorRgEKG2 ig3D94os70jL/6httnb1mxZ6Vl5vYBk6HQ6fAbJv++JnCXxJljseWnB4Eh7Tq15b5I8z A01vrali7bZuW2TI3stmzNO+gqBut9IvWVT6OEyR3hIdTrWMVePpz4T7q8zU8UDmQhrm 9pBV+4fL7Q/PmeU070YYW1ivMgvexdAQrK1nkXD44azZrXgYUrxufoYaPnbr+oVMf/Hm 6kxQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ieee-org.20150623.gappssmtp.com; s=20150623; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type; bh=IOvw9KNlpSMN7SnnY/qS4IcdtTlVLKI3aeNMEO3n2N0=; b=t5IbcEkFSlM2nKlEYBPKvHkPe6cPDxZAiH2DausOz93UJn/CBFQbMA/cz3DzHS1mvS XWmLIdFGaEY2DYf6M41YHdpGKfbPYIw660oDMb/RguxrNj0evXog2LpML7WZTl9RAmNb qxKqULYcLgOoOmxYlmj9yD6SERh4nrs8gNMEh4LzzI2KldVZunuIkznbL9zoMOC2GaXB Z8R5w/xjV0yU4yvtLwTCyu5QYVtQ8Xbz/z2MxV/kb6xnU1YPJLfpHrwXzZHlY+hJKWq2 1Z33QNQ7kb947ldM67j5vOSKBCuK2gypbukJAQ0xU/Vvbhe1LMBUe7qCsekrA+6q8t28 iONQ== MIME-Version: 1.0 X-Received: by 10.31.134.3 with SMTP id i3mr35113399vkd.14.1448470529014; Wed, 25 Nov 2015 08:55:29 -0800 (PST) Received: by 10.103.106.199 with HTTP; Wed, 25 Nov 2015 08:55:28 -0800 (PST) In-Reply-To: <87k2pjq8qu.fsf@gnu.org> References: <87d1vghjhk.fsf@gnu.org> <87vb971t74.fsf@gnu.org> <87lha3ufxv.fsf@gnu.org> <87h9kp1ts2.fsf@gnu.org> <87k2pjq8qu.fsf@gnu.org> Date: Wed, 25 Nov 2015 17:55:28 +0100 X-Google-Sender-Auth: aTMZK5NUsbzObyfrq7LK9C4gyM4 Message-ID: Subject: Re: guix import hackage failures From: Federico Beffa To: =?UTF-8?Q?Ludovic_Court=C3=A8s?= Content-Type: multipart/mixed; boundary=001a11441afc5a073e05256053c3 X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 21829 Cc: 21829@debbugs.gnu.org, Paul van der Walt X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) --001a11441afc5a073e05256053c3 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On Sun, Nov 15, 2015 at 9:59 PM, Ludovic Court=C3=A8s wrote: > Federico Beffa skribis: >> * guix/import/cabal.scm (lex-word): Add support for tests with no spaces= . >> (impl): Fix handling of operator "=3D=3D". > > LGTM, but I think it=E2=80=99d be great to add a test that illustrates th= e case > that this fixes (and to make sure it doesn=E2=80=99t come back later.) I've rewritten 'impl' and the new test that I've added covers this and more= . >> From f796d814821289a98e401a3e3df13334a2e8689b Mon Sep 17 00:00:00 2001 >> From: Federico Beffa >> Date: Wed, 11 Nov 2015 15:31:46 +0100 >> Subject: [PATCH 3/6] import: hackage: Make it resilient to missing final >> newline. >> >> * guix/import/cabal.scm (peek-next-line-indent): Check for missing final >> newline. > > [...] > >> + (if (eof-object? (peek-char port)) >> + ;; If the file is missing the #\newline on the last line, add it = and act >> + ;; as if it were there. This is needed for propoer operation of > ^^^^ > Typo. > >> + ;; indentation based block recognition. >> + (begin (unread-char #\newline port) (read-char port) 0) > > Isn=E2=80=99t this equivalent to: 0 ? No. This is because at the start of a new line we check if and how many indentation blocks have ended. If the last line doesn't terminate this check is no done. > > Could you add a test for this one? I've removed the final newline from the test 'test-read-cabal-1". > >> From 225164d2355afd6f9455251d87cbd34b08f68cdb Mon Sep 17 00:00:00 2001 >> From: Federico Beffa >> Date: Wed, 11 Nov 2015 16:20:45 +0100 >> Subject: [PATCH 4/6] import: hackage: Make parsing of tests and fields m= ore >> flexible. >> >> * guix/import/cabal.scm (is-test): Allow spaces between keyword and >> parentheses. >> (is-id): Add argument 'port'. Allow spaces between keyword and column= . >> (lex-word): Adjust call to 'is-id'. > > LGTM, and would be perfect with a test. ;-) These are now exercised in "test-read-cabal-1". > [...] > >> +(test-equal "canonical-newline-port" >> + "This is a journey" >> + (let ((port (open-string-input-port >> + "This is a journey\r\n"))) >> + (get-line (canonical-newline-port port)))) > > I would rather use =E2=80=98get-string-all=E2=80=99 and make sure the res= ult is exactly: > > "This is a journey\n" > > (Because =E2=80=98get-line=E2=80=99 could have been doing its own thing r= egardless of > the EOL style.) > > A test with several lines, including lines with just \n would be nice. OK. I've updated it and the test. > >> From c57be8cae9b3642beff1462acd32a0aee54ad7c6 Mon Sep 17 00:00:00 2001 >> From: Federico Beffa >> Date: Sat, 14 Nov 2015 15:15:00 +0100 >> Subject: [PATCH 6/6] import: hackage: Handle CRLF end of line style. >> >> * guix/import/hackage.scm (hackage-fetch, hackage->guix-package): Do it. > > Rather =E2=80=9CUse =E2=80=98canonical-newline-port=E2=80=99.=E2=80=9D in= stead of =E2=80=9CDo it.=E2=80=9D OK. I've made 1 more change. The importer now peeks at the 'ghc' package version and uses that as default implementation. Before, without using the '-e' option, it was assuming "ghc", but no specific version. Regards, Fede --001a11441afc5a073e05256053c3 Content-Type: text/x-diff; charset=US-ASCII; name="0001-import-hackage-Add-recognition-of-true-and-false-sym.patch" Content-Disposition: attachment; filename="0001-import-hackage-Add-recognition-of-true-and-false-sym.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_iheye4ge0 RnJvbSBkMTNmMDYzODNkMDdlMGFkNDA5NmZmN2ViNzE1MjY0NDYzNzM4YjBjIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBGZWRlcmljbyBCZWZmYSA8YmVmZmFAZmJlbmdpbmVlcmluZy5j aD4KRGF0ZTogV2VkLCAxMSBOb3YgMjAxNSAxMDozOTozOCArMDEwMApTdWJqZWN0OiBbUEFUQ0gg MS84XSBpbXBvcnQ6IGhhY2thZ2U6IEFkZCByZWNvZ25pdGlvbiBvZiAndHJ1ZScgYW5kICdmYWxz ZScKIHN5bWJvbHMuCgoqIGd1aXgvaW1wb3J0L2NhYmFsLnNjbSAoaXMtdHJ1ZSwgaXMtZmFsc2Us IGxleC10cnVlLCBsZXgtZmFsc2UpOiBOZXcgcHJvY2VkdXJlcy4KICAobGV4LXdvcmQpOiBVc2Ug dGhlbS4KICAobWFrZS1jYWJhbC1wYXJzZXIpOiBBZGQgVFJVRSBhbmQgRkFMU0UgdG9rZW5zLgog IChldmFsKTogQWRkIGVudHJpZXMgZm9yICd0cnVlIGFuZCAnZmFsc2Ugc3ltYm9scy4KLS0tCiBn dWl4L2ltcG9ydC9jYWJhbC5zY20gfCAxNiArKysrKysrKysrKysrKystCiAxIGZpbGUgY2hhbmdl ZCwgMTUgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL2d1aXgvaW1w b3J0L2NhYmFsLnNjbSBiL2d1aXgvaW1wb3J0L2NhYmFsLnNjbQppbmRleCA0NWQ2NDRhLi44ZDg0 ZTA5IDEwMDY0NAotLS0gYS9ndWl4L2ltcG9ydC9jYWJhbC5zY20KKysrIGIvZ3VpeC9pbXBvcnQv Y2FiYWwuc2NtCkBAIC0xMzgsNyArMTM4LDcgQEAgdG8gdGhlIHN0YWNrLiIKICAgIkdlbmVyYXRl IGEgcGFyc2VyIGZvciBDYWJhbCBmaWxlcy4iCiAgIChsYWxyLXBhcnNlcgogICAgOzsgLS0tIHRv a2VuIGRlZmluaXRpb25zCi0gICAoQ0NVUkxZIFZDQ1VSTFkgT1BBUkVOIENQQVJFTiBURVNUIElE IFZFUlNJT04gUkVMQVRJT04KKyAgIChDQ1VSTFkgVkNDVVJMWSBPUEFSRU4gQ1BBUkVOIFRFU1Qg SUQgVkVSU0lPTiBSRUxBVElPTiBUUlVFIEZBTFNFCiAgICAgICAgICAgIChyaWdodDogSUYgRkxB RyBFWEVDIFRFU1QtU1VJVEUgU09VUkNFLVJFUE8gQkVOQ0hNQVJLIExJQiBPQ1VSTFkpCiAgICAg ICAgICAgIChsZWZ0OiBPUikKICAgICAgICAgICAgKGxlZnQ6IFBST1BFUlRZIEFORCkKQEAgLTIw Niw2ICsyMDYsOCBAQCB0byB0aGUgc3RhY2suIgogICAgKGlmLXRoZW4gICAgIChJRiB0ZXN0cyBP Q1VSTFkgZXhwcnMgQ0NVUkxZKSA6IGAoaWYgLCQyICwkNCAoKSkKICAgICAgICAgICAgICAgICAo SUYgdGVzdHMgb3BlbiBleHBycyBjbG9zZSkgICAgOiBgKGlmICwkMiAsJDQgKCkpKQogICAgKHRl c3RzICAgICAgIChURVNUIE9QQVJFTiBJRCBDUEFSRU4pICAgICAgICA6IGAoLCQxICwkMykKKyAg ICAgICAgICAgICAgICAoVFJVRSkgICAgICAgICAgICAgICAgICAgICAgICAgOiAndHJ1ZQorICAg ICAgICAgICAgICAgIChGQUxTRSkgICAgICAgICAgICAgICAgICAgICAgICA6ICdmYWxzZQogICAg ICAgICAgICAgICAgIChURVNUIE9QQVJFTiBJRCBSRUxBVElPTiBWRVJTSU9OIENQQVJFTikKICAg ICAgICAgICAgICAgICA6IGAoLCQxICwoc3RyaW5nLWFwcGVuZCAkMyAiICIgJDQgIiAiICQ1KSkK ICAgICAgICAgICAgICAgICAoVEVTVCBPUEFSRU4gSUQgUkVMQVRJT04gVkVSU0lPTiBBTkQgUkVM QVRJT04gVkVSU0lPTiBDUEFSRU4pCkBAIC0zNTAsNiArMzUyLDEwIEBAIG1hdGNoaW5nIGEgc3Ry aW5nIGFnYWluc3QgdGhlIGNyZWF0ZWQgcmVnZXhwLiIKIAogKGRlZmluZSAoaXMtaWYgcykgKHN0 cmluZy1jaT0/IHMgImlmIikpCiAKKyhkZWZpbmUgKGlzLXRydWUgcykgKHN0cmluZy1jaT0/IHMg InRydWUiKSkKKworKGRlZmluZSAoaXMtZmFsc2UgcykgKHN0cmluZy1jaT0/IHMgImZhbHNlIikp CisKIChkZWZpbmUgKGlzLWFuZCBzKSAoc3RyaW5nPT8gcyAiJiYiKSkKIAogKGRlZmluZSAoaXMt b3IgcykgKHN0cmluZz0/IHMgInx8IikpCkBAIC00MjQsNiArNDMwLDEwIEBAIHN0cmluZyB3aXRo IHRoZSByZWFkIGNoYXJhY3RlcnMuIgogCiAoZGVmaW5lIChsZXgtaWYgbG9jKSAobWFrZS1sZXhp Y2FsLXRva2VuICdJRiBsb2MgI2YpKQogCisoZGVmaW5lIChsZXgtdHJ1ZSBsb2MpIChtYWtlLWxl eGljYWwtdG9rZW4gJ1RSVUUgbG9jICN0KSkKKworKGRlZmluZSAobGV4LWZhbHNlIGxvYykgKG1h a2UtbGV4aWNhbC10b2tlbiAnRkFMU0UgbG9jICNmKSkKKwogKGRlZmluZSAobGV4LWFuZCBsb2Mp IChtYWtlLWxleGljYWwtdG9rZW4gJ0FORCBsb2MgI2YpKQogCiAoZGVmaW5lIChsZXgtb3IgbG9j KSAobWFrZS1sZXhpY2FsLXRva2VuICdPUiBsb2MgI2YpKQpAQCAtNDg5LDYgKzQ5OSw4IEBAIExP QyBpcyB0aGUgY3VycmVudCBwb3J0IGxvY2F0aW9uLiIKICAgKGxldCogKCh3IChyZWFkLWRlbGlt aXRlZCAiICgpXHRcbiIgcG9ydCAncGVlaykpKQogICAgIChjb25kICgoaXMtaWYgdykgKGxleC1p ZiBsb2MpKQogICAgICAgICAgICgoaXMtdGVzdCB3IHBvcnQpIChsZXgtdGVzdCB3IGxvYykpCisg ICAgICAgICAgKChpcy10cnVlIHcpIChsZXgtdHJ1ZSBsb2MpKQorICAgICAgICAgICgoaXMtZmFs c2UgdykgKGxleC1mYWxzZSBsb2MpKQogICAgICAgICAgICgoaXMtYW5kIHcpIChsZXgtYW5kIGxv YykpCiAgICAgICAgICAgKChpcy1vciB3KSAobGV4LW9yIGxvYykpCiAgICAgICAgICAgKChpcy1p ZCB3KSAobGV4LWlkIHcgbG9jKSkKQEAgLTcxNCw2ICs3MjYsOCBAQCB0aGUgb3JkZXJpbmcgb3Bl cmF0aW9uIGFuZCB0aGUgdmVyc2lvbi4iCiAgICAgICAoKCdvcyBuYW1lKSAob3MgbmFtZSkpCiAg ICAgICAoKCdhcmNoIG5hbWUpIChhcmNoIG5hbWUpKQogICAgICAgKCgnaW1wbCBuYW1lKSAoaW1w bCBuYW1lKSkKKyAgICAgICgndHJ1ZSAjdCkKKyAgICAgICgnZmFsc2UgI2YpCiAgICAgICAoKCdu b3QgbmFtZSkgKG5vdCAoZXZhbCBuYW1lKSkpCiAgICAgICA7OyAnYW5kJyBhbmQgJ29yJyBhcmVu J3QgZnVuY3Rpb25zLCB0aHVzIHdlIGNhbid0IHVzZSBhcHBseQogICAgICAgKCgnYW5kIGFyZ3Mg Li4uKSAoZm9sZCAobGFtYmRhIChlIHMpIChhbmQgZSBzKSkgI3QgKGV2YWwgYXJncykpKQotLSAK Mi40LjMKCg== --001a11441afc5a073e05256053c3 Content-Type: text/x-diff; charset=US-ASCII; name="0002-import-hackage-Imporve-parsing-of-tests.patch" Content-Disposition: attachment; filename="0002-import-hackage-Imporve-parsing-of-tests.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_iheye4h81 RnJvbSBkOTZhNjU1YTIzMmJhNzdkN2Q3MWE1MjI3YzZkM2M4YmM4Yjk4M2NjIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBGZWRlcmljbyBCZWZmYSA8YmVmZmFAZmJlbmdpbmVlcmluZy5j aD4KRGF0ZTogV2VkLCAxMSBOb3YgMjAxNSAxMToyMjo0MiArMDEwMApTdWJqZWN0OiBbUEFUQ0gg Mi84XSBpbXBvcnQ6IGhhY2thZ2U6IEltcG9ydmUgcGFyc2luZyBvZiB0ZXN0cy4KCiogZ3VpeC9p bXBvcnQvY2FiYWwuc2NtIChsZXgtd29yZCk6IEFkZCBzdXBwb3J0IGZvciB0ZXN0cyB3aXRoIG5v IHNwYWNlcy4KICAoaW1wbCk6IFJld3JpdGUuCi0tLQogZ3VpeC9pbXBvcnQvY2FiYWwuc2NtIHwg MTggKysrKysrKysrKysrKy0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgMTMgaW5zZXJ0aW9ucygrKSwg NSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9ndWl4L2ltcG9ydC9jYWJhbC5zY20gYi9ndWl4 L2ltcG9ydC9jYWJhbC5zY20KaW5kZXggOGQ4NGUwOS4uZWQ2Mzk0ZSAxMDA2NDQKLS0tIGEvZ3Vp eC9pbXBvcnQvY2FiYWwuc2NtCisrKyBiL2d1aXgvaW1wb3J0L2NhYmFsLnNjbQpAQCAtMzAsNiAr MzAsNyBAQAogICAjOnVzZS1tb2R1bGUgKHNyZmkgc3JmaS05IGdudSkKICAgIzp1c2UtbW9kdWxl IChzeXN0ZW0gYmFzZSBsYWxyKQogICAjOnVzZS1tb2R1bGUgKHJucnMgZW51bXMpCisgICM6dXNl LW1vZHVsZSAoZ3VpeCB1dGlscykKICAgIzpleHBvcnQgKHJlYWQtY2FiYWwKICAgICAgICAgICAg IGV2YWwtY2FiYWwKICAgICAgICAgICAgIApAQCAtNDk2LDcgKzQ5Nyw3IEBAIGxvY2F0aW9uLiIK IChkZWZpbmUgKGxleC13b3JkIHBvcnQgbG9jKQogICAiUHJvY2VzcyB0b2tlbnMgd2hpY2ggY2Fu IGJlIHJlY29nbml6ZWQgYnkgcmVhZGluZyB0aGUgbmV4dCB3b3JkIGZvcm0gUE9SVC4KIExPQyBp cyB0aGUgY3VycmVudCBwb3J0IGxvY2F0aW9uLiIKLSAgKGxldCogKCh3IChyZWFkLWRlbGltaXRl ZCAiICgpXHRcbiIgcG9ydCAncGVlaykpKQorICAobGV0KiAoKHcgKHJlYWQtZGVsaW1pdGVkICIg PD49KClcdFxuIiBwb3J0ICdwZWVrKSkpCiAgICAgKGNvbmQgKChpcy1pZiB3KSAobGV4LWlmIGxv YykpCiAgICAgICAgICAgKChpcy10ZXN0IHcgcG9ydCkgKGxleC10ZXN0IHcgbG9jKSkKICAgICAg ICAgICAoKGlzLXRydWUgdykgKGxleC10cnVlIGxvYykpCkBAIC02OTYsMTEgKzY5NywxOCBAQCB0 aGUgb3JkZXJpbmcgb3BlcmF0aW9uIGFuZCB0aGUgdmVyc2lvbi4iCiAgICAgICAgICAgICAgICAg ICAoKHNwZWMtbmFtZSBzcGVjLW9wIHNwZWMtdmVyKQogICAgICAgICAgICAgICAgICAgIChjb21w LXNwZWMtbmFtZStvcCt2ZXJzaW9uIGhhc2tlbGwpKSkKICAgICAgIChpZiAoYW5kIHNwZWMtdmVy IGNvbXAtdmVyKQotICAgICAgICAgIChldmFsLXN0cmluZwotICAgICAgICAgICAoc3RyaW5nLWFw cGVuZCAiKHN0cmluZyIgc3BlYy1vcCAiIFwiIiBjb21wLW5hbWUgIlwiIgotICAgICAgICAgICAg ICAgICAgICAgICAgICAiIFwiIiBzcGVjLW5hbWUgIi0iIHNwZWMtdmVyICJcIikiKSkKKyAgICAg ICAgICAoY29uZAorICAgICAgICAgICAoKG5vdCAoc3RyaW5nPSBzcGVjLW5hbWUgY29tcC1uYW1l KSkgI2YpCisgICAgICAgICAgICgoc3RyaW5nPSBzcGVjLW9wICI9PSIpIChzdHJpbmc9IHNwZWMt dmVyIGNvbXAtdmVyKSkKKyAgICAgICAgICAgKChzdHJpbmc9IHNwZWMtb3AgIj49IikgKHZlcnNp b24+PT8gY29tcC12ZXIgc3BlYy12ZXIpKQorICAgICAgICAgICAoKHN0cmluZz0gc3BlYy1vcCAi PiIpICh2ZXJzaW9uPj8gY29tcC12ZXIgc3BlYy12ZXIpKQorICAgICAgICAgICAoKHN0cmluZz0g c3BlYy1vcCAiPD0iKSAobm90ICh2ZXJzaW9uPj8gY29tcC12ZXIgc3BlYy12ZXIpKSkKKyAgICAg ICAgICAgKChzdHJpbmc9IHNwZWMtb3AgIjwiKSAobm90ICh2ZXJzaW9uPj0/IGNvbXAtdmVyIHNw ZWMtdmVyKSkpCisgICAgICAgICAgIChlbHNlCisgICAgICAgICAgICAocmFpc2UgKGNvbmRpdGlv bgorICAgICAgICAgICAgICAgICAgICAoJm1lc3NhZ2UgKG1lc3NhZ2UgIkZhaWxlZCB0byBldmFs dWF0ZSAnaW1wbCcgdGVzdC4iKSkpKSkpCiAgICAgICAgICAgKHN0cmluZy1tYXRjaCBzcGVjLW5h bWUgY29tcC1uYW1lKSkpKQotICAKKwogICAoZGVmaW5lIChjYWJhbC1mbGFncykKICAgICAobWFr ZS1jYWJhbC1zZWN0aW9uIGNhYmFsLXNleHAgJ2ZsYWcpKQogICAKLS0gCjIuNC4zCgo= --001a11441afc5a073e05256053c3 Content-Type: text/x-diff; charset=US-ASCII; name="0003-import-hackage-Make-it-resilient-to-missing-final-ne.patch" Content-Disposition: attachment; filename="0003-import-hackage-Make-it-resilient-to-missing-final-ne.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_iheye4hf2 RnJvbSA2MTRmOWE5YjY4NWJjZWZhNGUzNTViOGMyNTkyMjViMGYwOThiYzcyIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBGZWRlcmljbyBCZWZmYSA8YmVmZmFAZmJlbmdpbmVlcmluZy5j aD4KRGF0ZTogV2VkLCAxMSBOb3YgMjAxNSAxNTozMTo0NiArMDEwMApTdWJqZWN0OiBbUEFUQ0gg My84XSBpbXBvcnQ6IGhhY2thZ2U6IE1ha2UgaXQgcmVzaWxpZW50IHRvIG1pc3NpbmcgZmluYWwK IG5ld2xpbmUuCgoqIGd1aXgvaW1wb3J0L2NhYmFsLnNjbSAocGVlay1uZXh0LWxpbmUtaW5kZW50 KTogQ2hlY2sgZm9yIG1pc3NpbmcgZmluYWwKICBuZXdsaW5lLgotLS0KIGd1aXgvaW1wb3J0L2Nh YmFsLnNjbSB8IDMxICsrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFu Z2VkLCAxOCBpbnNlcnRpb25zKCspLCAxMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9ndWl4 L2ltcG9ydC9jYWJhbC5zY20gYi9ndWl4L2ltcG9ydC9jYWJhbC5zY20KaW5kZXggZWQ2Mzk0ZS4u MGMyNmU0MCAxMDA2NDQKLS0tIGEvZ3VpeC9pbXBvcnQvY2FiYWwuc2NtCisrKyBiL2d1aXgvaW1w b3J0L2NhYmFsLnNjbQpAQCAtMjI3LDE5ICsyMjcsMjQgQEAgdG8gdGhlIHN0YWNrLiIKICAgIlRo aXMgZnVuY3Rpb24gY2FuIGJlIGNhbGxlZCB3aGVuIHRoZSBuZXh0IGNoYXJhY3RlciBvbiBQT1JU IGlzICNcbmV3bGluZQogYW5kIHJldHVybnMgdGhlIGluZGVudGF0aW9uIG9mIHRoZSBsaW5lIHN0 YXJ0aW5nIGFmdGVyIHRoZSAjXG5ld2xpbmUKIGNoYXJhY3Rlci4gIERpc2NhcmQgKGFuZCBjb25z dW1lKSBlbXB0eSBhbmQgY29tbWVudCBsaW5lcy4iCi0gIChsZXQgKChpbml0aWFsLW5ld2xpbmUg KHN0cmluZyAocmVhZC1jaGFyIHBvcnQpKSkpCi0gICAgKGxldCBsb29wICgoY2hhciAocGVlay1j aGFyIHBvcnQpKQotICAgICAgICAgICAgICAgKHdvcmQgIiIpKQotICAgICAgKGNvbmQgKChlcXY/ IGNoYXIgI1xuZXdsaW5lKSAocmVhZC1jaGFyIHBvcnQpCi0gICAgICAgICAgICAgKGxvb3AgKHBl ZWstY2hhciBwb3J0KSAiIikpCi0gICAgICAgICAgICAoKG9yIChlcXY/IGNoYXIgI1xzcGFjZSkg KGVxdj8gY2hhciAjXHRhYikpCi0gICAgICAgICAgICAgKGxldCAoKGMgKHJlYWQtY2hhciBwb3J0 KSkpCi0gICAgICAgICAgICAgICAobG9vcCAocGVlay1jaGFyIHBvcnQpIChzdHJpbmctYXBwZW5k IHdvcmQgKHN0cmluZyBjKSkpKSkKLSAgICAgICAgICAgICgoY29tbWVudC1saW5lIHBvcnQgY2hh cikgKGxvb3AgKHBlZWstY2hhciBwb3J0KSAiIikpCi0gICAgICAgICAgICAoZWxzZQotICAgICAg ICAgICAgIChsZXQgKChsZW4gKHN0cmluZy1sZW5ndGggd29yZCkpKQotICAgICAgICAgICAgICAg KHVucmVhZC1zdHJpbmcgKHN0cmluZy1hcHBlbmQgaW5pdGlhbC1uZXdsaW5lIHdvcmQpIHBvcnQp Ci0gICAgICAgICAgICAgICBsZW4pKSkpKSkKKyAgKGlmIChlb2Ytb2JqZWN0PyAocGVlay1jaGFy IHBvcnQpKQorICAgICAgOzsgSWYgdGhlIGZpbGUgaXMgbWlzc2luZyB0aGUgI1xuZXdsaW5lIG9u IHRoZSBsYXN0IGxpbmUsIGFkZCBpdCBhbmQgYWN0CisgICAgICA7OyBhcyBpZiBpdCB3ZXJlIHRo ZXJlLiBUaGlzIGlzIG5lZWRlZCBmb3IgcHJvcGVyIG9wZXJhdGlvbiBvZgorICAgICAgOzsgaW5k ZW50YXRpb24gYmFzZWQgYmxvY2sgcmVjb2duaXRpb24uCisgICAgICAoYmVnaW4gKHVucmVhZC1j aGFyICNcbmV3bGluZSBwb3J0KSAocmVhZC1jaGFyIHBvcnQpIDApCisgICAgICAobGV0ICgoaW5p dGlhbC1uZXdsaW5lIChzdHJpbmcgKHJlYWQtY2hhciBwb3J0KSkpKQorICAgICAgICAobGV0IGxv b3AgKChjaGFyIChwZWVrLWNoYXIgcG9ydCkpCisgICAgICAgICAgICAgICAgICAgKHdvcmQgIiIp KQorICAgICAgICAgIChjb25kICgoZXF2PyBjaGFyICNcbmV3bGluZSkgKHJlYWQtY2hhciBwb3J0 KQorICAgICAgICAgICAgICAgICAobG9vcCAocGVlay1jaGFyIHBvcnQpICIiKSkKKyAgICAgICAg ICAgICAgICAoKG9yIChlcXY/IGNoYXIgI1xzcGFjZSkgKGVxdj8gY2hhciAjXHRhYikpCisgICAg ICAgICAgICAgICAgIChsZXQgKChjIChyZWFkLWNoYXIgcG9ydCkpKQorICAgICAgICAgICAgICAg ICAgIChsb29wIChwZWVrLWNoYXIgcG9ydCkgKHN0cmluZy1hcHBlbmQgd29yZCAoc3RyaW5nIGMp KSkpKQorICAgICAgICAgICAgICAgICgoY29tbWVudC1saW5lIHBvcnQgY2hhcikgKGxvb3AgKHBl ZWstY2hhciBwb3J0KSAiIikpCisgICAgICAgICAgICAgICAgKGVsc2UKKyAgICAgICAgICAgICAg ICAgKGxldCAoKGxlbiAoc3RyaW5nLWxlbmd0aCB3b3JkKSkpCisgICAgICAgICAgICAgICAgICAg KHVucmVhZC1zdHJpbmcgKHN0cmluZy1hcHBlbmQgaW5pdGlhbC1uZXdsaW5lIHdvcmQpIHBvcnQp CisgICAgICAgICAgICAgICAgICAgbGVuKSkpKSkpKQogCiAoZGVmaW5lKiAocmVhZC12YWx1ZSBw b3J0IHZhbHVlIG1pbi1pbmRlbnQgIzpvcHRpb25hbCAoc2VwYXJhdG9yICIgIikpCiAgICJUaGUg bmV4dCBjaGFyYWN0ZXIgb24gUE9SVCBtdXN0IGJlICNcbmV3bGluZS4gIEFwcGVuZCB0byBWQUxV RSB0aGUKLS0gCjIuNC4zCgo= --001a11441afc5a073e05256053c3 Content-Type: text/x-diff; charset=US-ASCII; name="0004-import-hackage-Make-parsing-of-tests-and-fields-more.patch" Content-Disposition: attachment; filename="0004-import-hackage-Make-parsing-of-tests-and-fields-more.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_iheye4hl3 RnJvbSA4MWU1NWI0OTYxOTVjYzllOWFhNDFhMmNmNTcxMTczMjZjZjkzMjQ1IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBGZWRlcmljbyBCZWZmYSA8YmVmZmFAZmJlbmdpbmVlcmluZy5j aD4KRGF0ZTogV2VkLCAxMSBOb3YgMjAxNSAxNjoyMDo0NSArMDEwMApTdWJqZWN0OiBbUEFUQ0gg NC84XSBpbXBvcnQ6IGhhY2thZ2U6IE1ha2UgcGFyc2luZyBvZiB0ZXN0cyBhbmQgZmllbGRzIG1v cmUKIGZsZXhpYmxlLgoKKiBndWl4L2ltcG9ydC9jYWJhbC5zY20gKGlzLXRlc3QpOiBBbGxvdyBz cGFjZXMgYmV0d2VlbiBrZXl3b3JkIGFuZAogIHBhcmVudGhlc2VzLgogIChpcy1pZCk6IEFkZCBh cmd1bWVudCAncG9ydCcuICBBbGxvdyBzcGFjZXMgYmV0d2VlbiBrZXl3b3JkIGFuZCBjb2x1bW4u CiAgKGxleC13b3JkKTogQWRqdXN0IGNhbGwgdG8gJ2lzLWlkJy4KLS0tCiBndWl4L2ltcG9ydC9j YWJhbC5zY20gfCAxOSArKysrKysrKysrKysrLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgMTMgaW5z ZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9ndWl4L2ltcG9ydC9jYWJh bC5zY20gYi9ndWl4L2ltcG9ydC9jYWJhbC5zY20KaW5kZXggMGMyNmU0MC4uNzc1NWUzYyAxMDA2 NDQKLS0tIGEvZ3VpeC9pbXBvcnQvY2FiYWwuc2NtCisrKyBiL2d1aXgvaW1wb3J0L2NhYmFsLnNj bQpAQCAtMzMzLDcgKzMzMyw3IEBAIG1hdGNoaW5nIGEgc3RyaW5nIGFnYWluc3QgdGhlIGNyZWF0 ZWQgcmVnZXhwLiIKICAgICAgICAgICAgICAgICAobWFrZS1yZWdleHAgcGF0KSkpKQogICAgIChj dXQgcmVnZXhwLWV4ZWMgcnggPD4pKSkKIAotKGRlZmluZSBpcy1wcm9wZXJ0eSAobWFrZS1yeC1t YXRjaGVyICIoW2EtejAtOS1dKyk6WyBcdF0qKFxcdz8uKikkIgorKGRlZmluZSBpcy1wcm9wZXJ0 eSAobWFrZS1yeC1tYXRjaGVyICIoW2EtejAtOS1dKylbIFx0XSo6WyBcdF0qKFxcdz8uKikkIgog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZ2V4cC9pY2FzZSkpCiAKIChk ZWZpbmUgaXMtZmxhZyAobWFrZS1yeC1tYXRjaGVyICJeZmxhZyArKFthLXowLTlfLV0rKSIKQEAg LTM2NiwxNyArMzY2LDI0IEBAIG1hdGNoaW5nIGEgc3RyaW5nIGFnYWluc3QgdGhlIGNyZWF0ZWQg cmVnZXhwLiIKIAogKGRlZmluZSAoaXMtb3IgcykgKHN0cmluZz0/IHMgInx8IikpCiAKLShkZWZp bmUgKGlzLWlkIHMpCisoZGVmaW5lIChpcy1pZCBzIHBvcnQpCiAgIChsZXQgKChjYWJhbC1yZXNl cnZlZC13b3JkcwogICAgICAgICAgJygiaWYiICJlbHNlIiAibGlicmFyeSIgImZsYWciICJleGVj dXRhYmxlIiAidGVzdC1zdWl0ZSIKLSAgICAgICAgICAgInNvdXJjZS1yZXBvc2l0b3J5IiAiYmVu Y2htYXJrIikpKQorICAgICAgICAgICAic291cmNlLXJlcG9zaXRvcnkiICJiZW5jaG1hcmsiKSkK KyAgICAgICAgKHNwYWNlcyAocmVhZC13aGlsZSAoY3V0IGNoYXItc2V0LWNvbnRhaW5zPyBjaGFy LXNldDpibGFuayA8PikgcG9ydCkpCisgICAgICAgIChjIChwZWVrLWNoYXIgcG9ydCkpKQorICAg ICh1bnJlYWQtc3RyaW5nIHNwYWNlcyBwb3J0KQogICAgIChhbmQgKGV2ZXJ5IChjdXQgc3RyaW5n LWNpPD4gcyA8PikgY2FiYWwtcmVzZXJ2ZWQtd29yZHMpCi0gICAgICAgICAobm90IChjaGFyPT8g KGxhc3QgKHN0cmluZy0+bGlzdCBzKSkgI1w6KSkpKSkKKyAgICAgICAgIChhbmQgKG5vdCAoY2hh cj0/IChsYXN0IChzdHJpbmctPmxpc3QgcykpICNcOikpCisgICAgICAgICAgICAgIChub3QgKGNo YXI9PyAjXDogYykpKSkpKQogCiAoZGVmaW5lIChpcy10ZXN0IHMgcG9ydCkKICAgKGxldCAoKHRl c3RzLXJ4IChtYWtlLXJlZ2V4cCAib3N8YXJjaHxmbGFnfGltcGwiKSkKKyAgICAgICAgKHNwYWNl cyAocmVhZC13aGlsZSAoY3V0IGNoYXItc2V0LWNvbnRhaW5zPyBjaGFyLXNldDpibGFuayA8Pikg cG9ydCkpCiAgICAgICAgIChjIChwZWVrLWNoYXIgcG9ydCkpKQotICAgIChhbmQgKHJlZ2V4cC1l eGVjIHRlc3RzLXJ4IHMpIChjaGFyPT8gI1woIGMpKSkpCisgICAgKGlmIChhbmQgKHJlZ2V4cC1l eGVjIHRlc3RzLXJ4IHMpIChjaGFyPT8gI1woIGMpKQorICAgICAgICAjdAorICAgICAgICAoYmVn aW4gKHVucmVhZC1zdHJpbmcgc3BhY2VzIHBvcnQpICNmKSkpKQogCiA7OyBMZXhlcnMgZm9yIGlu ZGl2aWR1YWwgdG9rZW5zLgogCkBAIC01MDksNyArNTE2LDcgQEAgTE9DIGlzIHRoZSBjdXJyZW50 IHBvcnQgbG9jYXRpb24uIgogICAgICAgICAgICgoaXMtZmFsc2UgdykgKGxleC1mYWxzZSBsb2Mp KQogICAgICAgICAgICgoaXMtYW5kIHcpIChsZXgtYW5kIGxvYykpCiAgICAgICAgICAgKChpcy1v ciB3KSAobGV4LW9yIGxvYykpCi0gICAgICAgICAgKChpcy1pZCB3KSAobGV4LWlkIHcgbG9jKSkK KyAgICAgICAgICAoKGlzLWlkIHcgcG9ydCkgKGxleC1pZCB3IGxvYykpCiAgICAgICAgICAgKGVs c2UgKHVucmVhZC1zdHJpbmcgdyBwb3J0KSAjZikpKSkKIAogKGRlZmluZSAobGV4LWxpbmUgcG9y dCBsb2MpCi0tIAoyLjQuMwoK --001a11441afc5a073e05256053c3 Content-Type: text/x-diff; charset=US-ASCII; name="0005-utils-Add-canonical-newline-port.patch" Content-Disposition: attachment; filename="0005-utils-Add-canonical-newline-port.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_iheye4hs4 RnJvbSBiZGQ0YWExOGUzZjNhNjg2Y2VhZTkwNDBjOGI3NDA0OTg0ODg2YWNlIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBGZWRlcmljbyBCZWZmYSA8YmVmZmFAZmJlbmdpbmVlcmluZy5j aD4KRGF0ZTogU2F0LCAxNCBOb3YgMjAxNSAxNTowMDozNiArMDEwMApTdWJqZWN0OiBbUEFUQ0gg NS84XSB1dGlsczogQWRkICdjYW5vbmljYWwtbmV3bGluZS1wb3J0Jy4KCiogZ3VpeC91dGlscy5z Y20gKGNhbm9uaWNhbC1uZXdsaW5lLXBvcnQpOiBOZXcgcHJvY2VkdXJlLgoqIHRlc3RzL3V0aWxz LnNjbSAoImNhbm9uaWNhbC1uZXdsaW5lLXBvcnQiKTogTmV3IHRlc3QuCi0tLQogZ3VpeC91dGls cy5zY20gIHwgMzQgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLQogdGVzdHMvdXRp bHMuc2NtIHwgIDYgKysrKysrCiAyIGZpbGVzIGNoYW5nZWQsIDM4IGluc2VydGlvbnMoKyksIDIg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZ3VpeC91dGlscy5zY20gYi9ndWl4L3V0aWxzLnNj bQppbmRleCAxNTQyZTg2Li43YjU4OWU2IDEwMDY0NAotLS0gYS9ndWl4L3V0aWxzLnNjbQorKysg Yi9ndWl4L3V0aWxzLnNjbQpAQCAtMjksNyArMjksOCBAQAogICAjOnVzZS1tb2R1bGUgKHNyZmkg c3JmaS0zOSkKICAgIzp1c2UtbW9kdWxlIChzcmZpIHNyZmktNjApCiAgICM6dXNlLW1vZHVsZSAo cm5ycyBieXRldmVjdG9ycykKLSAgIzp1c2UtbW9kdWxlICgocm5ycyBpbyBwb3J0cykgIzpzZWxl Y3QgKHB1dC1ieXRldmVjdG9yKSkKKyAgIzp1c2UtbW9kdWxlIChybnJzIGlvIHBvcnRzKQorICAj OnVzZS1tb2R1bGUgKChybnJzIGJ5dGV2ZWN0b3JzKSAjOnNlbGVjdCAoYnl0ZXZlY3Rvci11OC1z ZXQhKSkKICAgIzp1c2UtbW9kdWxlICgoZ3VpeCBidWlsZCB1dGlscykKICAgICAgICAgICAgICAg ICAjOnNlbGVjdCAoZHVtcC1wb3J0IHBhY2thZ2UtbmFtZS0+bmFtZSt2ZXJzaW9uKSkKICAgIzp1 c2UtbW9kdWxlICgoZ3VpeCBidWlsZCBzeXNjYWxscykgIzpzZWxlY3QgKGVycm5vIG1rZHRlbXAh KSkKQEAgLTkwLDcgKzkxLDggQEAKICAgICAgICAgICAgIGRlY29tcHJlc3NlZC1wb3J0CiAgICAg ICAgICAgICBjYWxsLXdpdGgtZGVjb21wcmVzc2VkLXBvcnQKICAgICAgICAgICAgIGNvbXByZXNz ZWQtb3V0cHV0LXBvcnQKLSAgICAgICAgICAgIGNhbGwtd2l0aC1jb21wcmVzc2VkLW91dHB1dC1w b3J0KSkKKyAgICAgICAgICAgIGNhbGwtd2l0aC1jb21wcmVzc2VkLW91dHB1dC1wb3J0CisgICAg ICAgICAgICBjYW5vbmljYWwtbmV3bGluZS1wb3J0KSkKIAogDAogOzs7CkBAIC03NDYsNiArNzQ4 LDM0IEBAIGVsZW1lbnRzIGFmdGVyIEUuIgogICAgICAgICAgICAgKGlmIHN1Y2Nlc3M/CiAgICAg ICAgICAgICAgICAgKGxvb3AgKGFic29sdXRlIHRhcmdldCkgKCsgZGVwdGggMSkpCiAgICAgICAg ICAgICAgICAgZmlsZSkpKSkpKQorCisoZGVmaW5lIChjYW5vbmljYWwtbmV3bGluZS1wb3J0IHBv cnQpCisgICJSZXR1cm4gYW4gaW5wdXQgcG9ydCB0aGF0IHdyYXBzIFBPUlQgc3VjaCB0aGF0IGFs bCBuZXdsaW5lcyBjb25zaXN0CisgIG9mIGEgc2luZ2xlIGNhcnJpYWdlIHJldHVybi4iCisgIChk ZWZpbmUgKGdldC1wb3NpdGlvbikKKyAgICAoaWYgKHBvcnQtaGFzLXBvcnQtcG9zaXRpb24/IHBv cnQpIChwb3J0LXBvc2l0aW9uIHBvcnQpICNmKSkKKyAgKGRlZmluZSAoc2V0LXBvc2l0aW9uISBw b3NpdGlvbikKKyAgICAoaWYgKHBvcnQtaGFzLXNldC1wb3J0LXBvc2l0aW9uIT8gcG9ydCkKKyAg ICAgICAgKHNldC1wb3J0LXBvc2l0aW9uISBwb3NpdGlvbiBwb3J0KQorICAgICAgICAjZikpCisg IChkZWZpbmUgKGNsb3NlKSAoY2xvc2UtcG9ydCBwb3J0KSkKKyAgKGRlZmluZSAocmVhZCEgYnYg c3RhcnQgbikKKyAgICAobGV0IGxvb3AgKChjb3VudCAwKQorICAgICAgICAgICAgICAgKGJ5dGUg KGdldC11OCBwb3J0KSkpCisgICAgICAoY29uZCAoKGVvZi1vYmplY3Q/IGJ5dGUpIGNvdW50KQor ICAgICAgICAgICAgKCg9IGNvdW50ICgtIG4gMSkpCisgICAgICAgICAgICAgKGJ5dGV2ZWN0b3It dTgtc2V0ISBidiAoKyBzdGFydCBjb3VudCkgYnl0ZSkKKyAgICAgICAgICAgICBuKQorICAgICAg ICAgICAgOzsgWFhYOiBjb25zdW1lIGFsbCBMRnMgZXZlbiBpZiBub3QgZm9sbG93ZWQgYnkgQ1Iu CisgICAgICAgICAgICAoKGVxdj8gYnl0ZSAoY2hhci0+aW50ZWdlciAjXHJldHVybikpIChsb29w IGNvdW50IChnZXQtdTggcG9ydCkpKQorICAgICAgICAgICAgKGVsc2UKKyAgICAgICAgICAgICAo Ynl0ZXZlY3Rvci11OC1zZXQhIGJ2ICgrIHN0YXJ0IGNvdW50KSBieXRlKQorICAgICAgICAgICAg IChsb29wICgrIGNvdW50IDEpIChnZXQtdTggcG9ydCkpKSkpKQorICAobWFrZS1jdXN0b20tYmlu YXJ5LWlucHV0LXBvcnQgImNhbm9uaWNhbC1uZXdsaW5lLXBvcnQiCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICByZWFkIQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Z2V0LXBvc2l0aW9uCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXQtcG9zaXRp b24hCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbG9zZSkpCiAMCiA7OzsKIDs7 OyBTb3VyY2UgbG9jYXRpb24uCmRpZmYgLS1naXQgYS90ZXN0cy91dGlscy5zY20gYi90ZXN0cy91 dGlscy5zY20KaW5kZXggYjY1ZDZkMi4uMDRhODU5ZiAxMDA2NDQKLS0tIGEvdGVzdHMvdXRpbHMu c2NtCisrKyBiL3Rlc3RzL3V0aWxzLnNjbQpAQCAtMzE4LDYgKzMxOCwxMiBAQAogICAgKHN0cmlu Zy1hcHBlbmQgKCVzdG9yZS1wcmVmaXgpCiAgICAgICAgICAgICAgICAgICAiL3F2czJyajJpYTV2 Y2kzd3NkYjdxdnlkcm1hY2lnNHBnLWJhc2gtNC4yLXAyNCIpKSkKIAorKHRlc3QtZXF1YWwgImNh bm9uaWNhbC1uZXdsaW5lLXBvcnQiCisgICJUaGlzIGlzIGEgam91cm5leVxuSW50byB0aGUgc291 bmRcbkEgam91cm5leSAuLi5cbiIKKyAgKGxldCAoKHBvcnQgKG9wZW4tc3RyaW5nLWlucHV0LXBv cnQKKyAgICAgICAgICAgICAgICJUaGlzIGlzIGEgam91cm5leVxyXG5JbnRvIHRoZSBzb3VuZFxy XG5BIGpvdXJuZXkgLi4uXG4iKSkpCisgICAgKGdldC1zdHJpbmctYWxsIChjYW5vbmljYWwtbmV3 bGluZS1wb3J0IHBvcnQpKSkpCisKICh0ZXN0LWVuZCkKIAogKGZhbHNlLWlmLWV4Y2VwdGlvbiAo ZGVsZXRlLWZpbGUgdGVtcC1maWxlKSkKLS0gCjIuNC4zCgo= --001a11441afc5a073e05256053c3 Content-Type: text/x-diff; charset=US-ASCII; name="0006-import-hackage-Handle-CRLF-end-of-line-style.patch" Content-Disposition: attachment; filename="0006-import-hackage-Handle-CRLF-end-of-line-style.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_iheye4i35 RnJvbSAzMmI4NDhlMDUwNmQ2ZGVhYzBiZDExMzAyMzRlMDJmYjY0NTYxM2VlIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBGZWRlcmljbyBCZWZmYSA8YmVmZmFAZmJlbmdpbmVlcmluZy5j aD4KRGF0ZTogU2F0LCAxNCBOb3YgMjAxNSAxNToxNTowMCArMDEwMApTdWJqZWN0OiBbUEFUQ0gg Ni84XSBpbXBvcnQ6IGhhY2thZ2U6IEhhbmRsZSBDUkxGIGVuZCBvZiBsaW5lIHN0eWxlLgoKKiBn dWl4L2ltcG9ydC9oYWNrYWdlLnNjbSAoaGFja2FnZS1mZXRjaCwgaGFja2FnZS0+Z3VpeC1wYWNr YWdlKTogVXNlCiAgJ2Nhbm9uaWNhbC1uZXdsaW5lLXBvcnQnLgotLS0KIGd1aXgvaW1wb3J0L2hh Y2thZ2Uuc2NtIHwgOCArKysrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwg MyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9ndWl4L2ltcG9ydC9oYWNrYWdlLnNjbSBiL2d1 aXgvaW1wb3J0L2hhY2thZ2Uuc2NtCmluZGV4IDNiYWE1MTQuLjg3MjVmZmEgMTAwNjQ0Ci0tLSBh L2d1aXgvaW1wb3J0L2hhY2thZ2Uuc2NtCisrKyBiL2d1aXgvaW1wb3J0L2hhY2thZ2Uuc2NtCkBA IC0yMiw3ICsyMiw4IEBACiAgICM6dXNlLW1vZHVsZSAoc3JmaSBzcmZpLTExKQogICAjOnVzZS1t b2R1bGUgKHNyZmkgc3JmaS0xKQogICAjOnVzZS1tb2R1bGUgKChndWl4IGRvd25sb2FkKSAjOnNl bGVjdCAoZG93bmxvYWQtdG8tc3RvcmUpKQotICAjOnVzZS1tb2R1bGUgKChndWl4IHV0aWxzKSAj OnNlbGVjdCAocGFja2FnZS1uYW1lLT5uYW1lK3ZlcnNpb24pKQorICAjOnVzZS1tb2R1bGUgKChn dWl4IHV0aWxzKSAjOnNlbGVjdCAocGFja2FnZS1uYW1lLT5uYW1lK3ZlcnNpb24KKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhbm9uaWNhbC1uZXdsaW5lLXBvcnQpKQog ICAjOnVzZS1tb2R1bGUgKGd1aXggaW1wb3J0IHV0aWxzKQogICAjOnVzZS1tb2R1bGUgKGd1aXgg aW1wb3J0IGNhYmFsKQogICAjOnVzZS1tb2R1bGUgKGd1aXggc3RvcmUpCkBAIC04NCw3ICs4NSw4 IEBAIHZlcnNpb24uIgogICAgIChjYWxsLXdpdGgtdGVtcG9yYXJ5LW91dHB1dC1maWxlCiAgICAg IChsYW1iZGEgKHRlbXAgcG9ydCkKICAgICAgICAoYW5kICh1cmwtZmV0Y2ggdXJsIHRlbXApCi0g ICAgICAgICAgICAoY2FsbC13aXRoLWlucHV0LWZpbGUgdGVtcCByZWFkLWNhYmFsKSkpKSkpCisg ICAgICAgICAgICAoY2FsbC13aXRoLWlucHV0LWZpbGUgdGVtcAorICAgICAgICAgICAgICAoY29t cG9zZSByZWFkLWNhYmFsIGNhbm9uaWNhbC1uZXdsaW5lLXBvcnQpKSkpKSkpCiAKIChkZWZpbmUg c3RyaW5nLT5saWNlbnNlCiAgIDs7IExpc3Qgb2YgdmFsaWQgdmFsdWVzIGZyb20KQEAgLTIxNiw3 ICsyMTgsNyBAQCB0byB0aGUgQ2FiYWwgZmlsZSBmb3JtYXQgZGVmaW5pdGlvbi4gIFRoZSBkZWZh dWx0IHZhbHVlIGFzc29jaWF0ZWQgd2l0aCB0aGUKIGtleXMgXCJvc1wiLCBcImFyY2hcIiBhbmQg XCJpbXBsXCIgaXMgXCJsaW51eFwiLCBcIng4Nl82NFwiIGFuZCBcImdoY1wiCiByZXNwZWN0aXZl bHkuIgogICAobGV0ICgoY2FiYWwtbWV0YSAoaWYgcG9ydAotICAgICAgICAgICAgICAgICAgICAg ICAgKHJlYWQtY2FiYWwgcG9ydCkKKyAgICAgICAgICAgICAgICAgICAgICAgIChyZWFkLWNhYmFs IChjYW5vbmljYWwtbmV3bGluZS1wb3J0IHBvcnQpKQogICAgICAgICAgICAgICAgICAgICAgICAg KGhhY2thZ2UtZmV0Y2ggcGFja2FnZS1uYW1lKSkpKQogICAgIChhbmQ9PiBjYWJhbC1tZXRhIChj b21wb3NlIChjdXQgaGFja2FnZS1tb2R1bGUtPnNleHAgPD4KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICM6aW5jbHVkZS10ZXN0LWRlcGVuZGVuY2llcz8gCi0tIAoyLjQuMwoK --001a11441afc5a073e05256053c3 Content-Type: text/x-diff; charset=US-ASCII; name="0008-import-hackage-Assume-current-ghc-package-version.patch" Content-Disposition: attachment; filename="0008-import-hackage-Assume-current-ghc-package-version.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_iheye4ii7 RnJvbSA1MDc0MDRjNTA4Nzc0ZTVlZGIxY2RhMTAyN2ZlZTEyZGFlMjYzNTkyIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBGZWRlcmljbyBCZWZmYSA8YmVmZmFAZmJlbmdpbmVlcmluZy5j aD4KRGF0ZTogV2VkLCAyNSBOb3YgMjAxNSAxNDo0NzoxNiArMDEwMApTdWJqZWN0OiBbUEFUQ0gg OC84XSBpbXBvcnQ6IGhhY2thZ2U6IEFzc3VtZSBjdXJyZW50ICdnaGMnIHBhY2thZ2UgdmVyc2lv bi4KCiogZ3VpeC9zY3JpcHRzL2ltcG9ydC9oYWNrYWdlLnNjbSAoJWRlZmF1bHQtb3B0aW9ucyk6 IERvIGl0LgogIChnaGMtZGVmYXVsdC12ZXJzaW9uKTogTmV3IHZhcmlhYmxlLgotLS0KIGd1aXgv c2NyaXB0cy9pbXBvcnQvaGFja2FnZS5zY20gfCA4ICsrKysrKy0tCiAxIGZpbGUgY2hhbmdlZCwg NiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2d1aXgvc2NyaXB0 cy9pbXBvcnQvaGFja2FnZS5zY20gYi9ndWl4L3NjcmlwdHMvaW1wb3J0L2hhY2thZ2Uuc2NtCmlu ZGV4IDk3ZDA0MmIuLjRlODQyNzggMTAwNjQ0Ci0tLSBhL2d1aXgvc2NyaXB0cy9pbXBvcnQvaGFj a2FnZS5zY20KKysrIGIvZ3VpeC9zY3JpcHRzL2ltcG9ydC9oYWNrYWdlLnNjbQpAQCAtMTksNiAr MTksNyBAQAogKGRlZmluZS1tb2R1bGUgKGd1aXggc2NyaXB0cyBpbXBvcnQgaGFja2FnZSkKICAg Izp1c2UtbW9kdWxlIChndWl4IHVpKQogICAjOnVzZS1tb2R1bGUgKGd1aXggdXRpbHMpCisgICM6 dXNlLW1vZHVsZSAoZ3VpeCBwYWNrYWdlcykKICAgIzp1c2UtbW9kdWxlIChndWl4IHNjcmlwdHMp CiAgICM6dXNlLW1vZHVsZSAoZ3VpeCBpbXBvcnQgaGFja2FnZSkKICAgIzp1c2UtbW9kdWxlIChn dWl4IHNjcmlwdHMgaW1wb3J0KQpAQCAtMzQsMTAgKzM1LDEzIEBACiA7OzsgQ29tbWFuZC1saW5l IG9wdGlvbnMuCiA7OzsKIAorKGRlZmluZSBnaGMtZGVmYXVsdC12ZXJzaW9uCisgIChzdHJpbmct YXBwZW5kICJnaGMtIiAocGFja2FnZS12ZXJzaW9uIChAIChnbnUgcGFja2FnZXMgaGFza2VsbCkg Z2hjKSkpKQorCiAoZGVmaW5lICVkZWZhdWx0LW9wdGlvbnMKLSAgJygoaW5jbHVkZS10ZXN0LWRl cGVuZGVuY2llcz8gLiAjdCkKKyAgYCgoaW5jbHVkZS10ZXN0LWRlcGVuZGVuY2llcz8gLiAjdCkK ICAgICAocmVhZC1mcm9tLXN0ZGluPyAuICNmKQotICAgICgnY2FiYWwtZW52aXJvbm1lbnQgLiAn KCkpKSkKKyAgICAoY2FiYWwtZW52aXJvbm1lbnQgLiAsYCgoImltcGwiIC4gLGdoYy1kZWZhdWx0 LXZlcnNpb24pKSkpKQogCiAoZGVmaW5lIChzaG93LWhlbHApCiAgIChkaXNwbGF5IChfICJVc2Fn ZTogZ3VpeCBpbXBvcnQgaGFja2FnZSBQQUNLQUdFLU5BTUUKLS0gCjIuNC4zCgo= --001a11441afc5a073e05256053c3 Content-Type: text/x-diff; charset=US-ASCII; name="0007-import-hackage-Add-new-tests.patch" Content-Disposition: attachment; filename="0007-import-hackage-Add-new-tests.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_iheytcbt7 RnJvbSBiZjBiYzY2YWNlM2IyNjE3MTc4YzI4ZDk2MzVkYmI0YmMzYTg5Y2U5IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBGZWRlcmljbyBCZWZmYSA8YmVmZmFAZmJlbmdpbmVlcmluZy5j aD4KRGF0ZTogV2VkLCAyNSBOb3YgMjAxNSAxMzo1ODowNiArMDEwMApTdWJqZWN0OiBbUEFUQ0gg Ny84XSBpbXBvcnQ6IGhhY2thZ2U6IEFkZCBuZXcgdGVzdHMuCgoqIHRlc3RzL2hhY2thZ2Uuc2Nt IChldmFsLXRlc3Qtd2l0aC1jYWJhbCk6IEFkZCBvcHRpb25hbCBhcmd1bWVudC4KICAodGVzdC1j YWJhbC0zKTogTmV3IHZhcmlhYmxlIGFuZCB0ZXN0LgogICh0ZXN0LXJlYWQtY2FiYWwtMSk6IEV4 ZXJjaXNlIG1vcmUgcGFyc2luZyB2YXJpYW50cy4KLS0tCiB0ZXN0cy9oYWNrYWdlLnNjbSB8IDM3 ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAz MCBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3Rlc3RzL2hhY2th Z2Uuc2NtIGIvdGVzdHMvaGFja2FnZS5zY20KaW5kZXggMjI5YmVlMy4uYjYwOGNjZCAxMDA2NDQK LS0tIGEvdGVzdHMvaGFja2FnZS5zY20KKysrIGIvdGVzdHMvaGFja2FnZS5zY20KQEAgLTUwLDgg KzUwLDI4IEBAIGJ1aWxkLWRlcGVuZHM6CiB9CiAiKQogCis7OyBDaGVjayBjb21waWxlciBpbXBs ZW1lbnRhdGlvbiB0ZXN0IHdpdGggYW5kIHdpdGhvdXQgc3BhY2VzLgorKGRlZmluZSB0ZXN0LWNh YmFsLTMKKyAgIm5hbWU6IGZvbwordmVyc2lvbjogMS4wLjAKK2hvbWVwYWdlOiBodHRwOi8vdGVz dC5vcmcKK3N5bm9wc2lzOiBzeW5vcHNpcworZGVzY3JpcHRpb246IGRlc2NyaXB0aW9uCitsaWNl bnNlOiBCU0QzCitsaWJyYXJ5CisgIGlmIGltcGwoZ2hjID49IDcuMiAmJiA8IDcuNikKKyAgICBC dWlsZC1kZXBlbmRzOiBnaGMtYQorICBpZiBpbXBsKGdoYz49Ny4yJiY8Ny42KQorICAgIEJ1aWxk LWRlcGVuZHM6IGdoYy1iCisgIGlmIGltcGwoZ2hjID09IDcuOCkKKyAgICBCdWlsZC1kZXBlbmRz OiAKKyAgICAgIEhUVFAgICAgICAgPj0gNDAwMC4yLjUgJiYgPCA0MDAwLjMsCisgICAgICBtdGwg ICAgICAgID49IDIuMCAgICAgICYmIDwgMworIikKKwogOzsgQSBmcmFnbWVudCBvZiBhIHJlYWwg Q2FiYWwgZmlsZSB3aXRoIG1pbm9yIG1vZGlmaWNhdGlvbiB0byBjaGVjayBwcmVjZWRlbmNlCi07 OyBvZiAnYW5kJyBvdmVyICdvcicuCis7OyBvZiAnYW5kJyBvdmVyICdvcicsIG1pc3NpbmcgZmlu YWwgbmV3bGluZSwgc3BhY2VzIGJldHdlZW4ga2V5d29yZHMgYW5kCis7OyBwYXJlbnRoZXNlcyBh bmQgYmV0d2VlbiBrZXkgYW5kIGNvbHVtbi4KIChkZWZpbmUgdGVzdC1yZWFkLWNhYmFsLTEKICAg Im5hbWU6IHRlc3QtbWUKIGxpYnJhcnkKQEAgLTY2LDI0ICs4NiwyMyBAQCBsaWJyYXJ5CiAgICAg ICAgIEJ1aWxkLWRlcGVuZHM6IGJhc2UgPj0gMyAmJiA8IDQKICAgICAgIGVsc2UKICAgICAgICAg QnVpbGQtZGVwZW5kczogYmFzZSA8IDMKLSAgaWYgZmxhZyhiYXNlNHBvaW50OCkgfHwgZmxhZyhi YXNlNCkgJiYgZmxhZyhiYXNlMykKKyAgaWYgZmxhZyhiYXNlNHBvaW50OCkgfHwgZmxhZyAoYmFz ZTQpICYmIGZsYWcoYmFzZTMpCiAgICAgQnVpbGQtZGVwZW5kczogcmFuZG9tCi0gIEJ1aWxkLWRl cGVuZHM6IGNvbnRhaW5lcnMKKyAgQnVpbGQtZGVwZW5kcyA6IGNvbnRhaW5lcnMKIAogICAtLSBN b2R1bGVzIHRoYXQgYXJlIGFsd2F5cyBidWlsdC4KICAgRXhwb3NlZC1Nb2R1bGVzOgotICAgIFRl c3QuUXVpY2tDaGVjay5FeGNlcHRpb24KLSIpCisgICAgVGVzdC5RdWlja0NoZWNrLkV4Y2VwdGlv biIpCiAKICh0ZXN0LWJlZ2luICJoYWNrYWdlIikKIAotKGRlZmluZSAoZXZhbC10ZXN0LXdpdGgt Y2FiYWwgdGVzdC1jYWJhbCkKKyhkZWZpbmUqIChldmFsLXRlc3Qtd2l0aC1jYWJhbCB0ZXN0LWNh YmFsICM6a2V5IChjYWJhbC1lbnZpcm9ubWVudCAnKCkpKQogICAobW9jawogICAgKChndWl4IGlt cG9ydCBoYWNrYWdlKSBoYWNrYWdlLWZldGNoCiAgICAgKGxhbWJkYSAobmFtZS12ZXJzaW9uKQog ICAgICAgKGNhbGwtd2l0aC1pbnB1dC1zdHJpbmcgdGVzdC1jYWJhbAogICAgICAgICByZWFkLWNh YmFsKSkpCi0gICAobWF0Y2ggKGhhY2thZ2UtPmd1aXgtcGFja2FnZSAiZm9vIikKKyAgIChtYXRj aCAoaGFja2FnZS0+Z3VpeC1wYWNrYWdlICJmb28iICM6Y2FiYWwtZW52aXJvbm1lbnQgY2FiYWwt ZW52aXJvbm1lbnQpCiAgICAgICgoJ3BhY2thZ2UKICAgICAgICAgKCduYW1lICJnaGMtZm9vIikK ICAgICAgICAgKCd2ZXJzaW9uICIxLjAuMCIpCkBAIC0xMTYsNiArMTM1LDEwIEBAIGxpYnJhcnkK ICh0ZXN0LWFzc2VydCAiaGFja2FnZS0+Z3VpeC1wYWNrYWdlIHRlc3QgMiIKICAgKGV2YWwtdGVz dC13aXRoLWNhYmFsIHRlc3QtY2FiYWwtMikpCiAKKyh0ZXN0LWFzc2VydCAiaGFja2FnZS0+Z3Vp eC1wYWNrYWdlIHRlc3QgMyIKKyAgKGV2YWwtdGVzdC13aXRoLWNhYmFsIHRlc3QtY2FiYWwtMwor ICAgICAgICAgICAgICAgICAgICAgICAgIzpjYWJhbC1lbnZpcm9ubWVudCAnKCgiaW1wbCIgLiAi Z2hjLTcuOCIpKSkpCisKICh0ZXN0LWFzc2VydCAicmVhZC1jYWJhbCB0ZXN0IDEiCiAgIChtYXRj aCAoY2FsbC13aXRoLWlucHV0LXN0cmluZyB0ZXN0LXJlYWQtY2FiYWwtMSByZWFkLWNhYmFsKQog ICAgICgoKCJuYW1lIiAoInRlc3QtbWUiKSkKLS0gCjIuNC4zCgo= --001a11441afc5a073e05256053c3-- From debbugs-submit-bounces@debbugs.gnu.org Wed Nov 25 16:45:33 2015 Received: (at 21829) by debbugs.gnu.org; 25 Nov 2015 21:45:33 +0000 Received: from localhost ([127.0.0.1]:53223 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1a1hsZ-0003B7-94 for submit@debbugs.gnu.org; Wed, 25 Nov 2015 16:45:32 -0500 Received: from eggs.gnu.org ([208.118.235.92]:37859) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1a1hsV-0003Aw-Gc for 21829@debbugs.gnu.org; Wed, 25 Nov 2015 16:45:28 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1a1hsT-0006m4-OQ for 21829@debbugs.gnu.org; Wed, 25 Nov 2015 16:45:27 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.2 required=5.0 tests=BAYES_50,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:56940) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1a1hsM-0006lO-Rm; Wed, 25 Nov 2015 16:45:18 -0500 Received: from reverse-83.fdn.fr ([80.67.176.83]:41896 helo=pluto) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1a1hsM-0008EL-3T; Wed, 25 Nov 2015 16:45:18 -0500 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: Federico Beffa Subject: Re: guix import hackage failures References: <87d1vghjhk.fsf@gnu.org> <87vb971t74.fsf@gnu.org> <87lha3ufxv.fsf@gnu.org> <87h9kp1ts2.fsf@gnu.org> <87k2pjq8qu.fsf@gnu.org> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 5 Frimaire an 224 de la =?utf-8?Q?R=C3=A9volution?= X-PGP-Key-ID: 0x3D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-unknown-linux-gnu Date: Wed, 25 Nov 2015 22:45:15 +0100 In-Reply-To: (Federico Beffa's message of "Wed, 25 Nov 2015 17:55:28 +0100") Message-ID: <87fuztda8k.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.6 (-----) X-Debbugs-Envelope-To: 21829 Cc: 21829@debbugs.gnu.org, Paul van der Walt X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -5.6 (-----) Federico Beffa skribis: > On Sun, Nov 15, 2015 at 9:59 PM, Ludovic Court=C3=A8s wrot= e: >> Federico Beffa skribis: >>> * guix/import/cabal.scm (lex-word): Add support for tests with no space= s. >>> (impl): Fix handling of operator "=3D=3D". >> >> LGTM, but I think it=E2=80=99d be great to add a test that illustrates t= he case >> that this fixes (and to make sure it doesn=E2=80=99t come back later.) > > I've rewritten 'impl' and the new test that I've added covers this and mo= re. Great, thanks for following up! >>> + ;; indentation based block recognition. >>> + (begin (unread-char #\newline port) (read-char port) 0) >> >> Isn=E2=80=99t this equivalent to: 0 ? > > No. This is because at the start of a new line we check if and how > many indentation blocks have ended. If the last line doesn't terminate > this check is no done. More generally, it looks like: (begin (do-effect!) (undo-effect!) val) which I thought reduces to: val Oh well, not crucial. > From d13f06383d07e0ad4096ff7eb715264463738b0c Mon Sep 17 00:00:00 2001 > From: Federico Beffa > Date: Wed, 11 Nov 2015 10:39:38 +0100 > Subject: [PATCH 1/8] import: hackage: Add recognition of 'true' and 'fals= e' > symbols. > > * guix/import/cabal.scm (is-true, is-false, lex-true, lex-false): New pro= cedures. > (lex-word): Use them. > (make-cabal-parser): Add TRUE and FALSE tokens. > (eval): Add entries for 'true and 'false symbols. OK. In general I think development, review, and quality benefit from adding a test alongside a feature or bug-fix, even a small one like this (as opposed to adding a test separately.) We try to do this for the rest of the repo. Now, I don=E2=80=99t want to bother you more ;-), and the test added by the= last patch covers some of this, so that=E2=80=99s OK. > From d96a655a232ba77d7d71a5227c6d3c8bc8b983cc Mon Sep 17 00:00:00 2001 > From: Federico Beffa > Date: Wed, 11 Nov 2015 11:22:42 +0100 > Subject: [PATCH 2/8] import: hackage: Imporve parsing of tests. > > * guix/import/cabal.scm (lex-word): Add support for tests with no spaces. > (impl): Rewrite. OK. > From 614f9a9b685bcefa4e355b8c259225b0f098bc72 Mon Sep 17 00:00:00 2001 > From: Federico Beffa > Date: Wed, 11 Nov 2015 15:31:46 +0100 > Subject: [PATCH 3/8] import: hackage: Make it resilient to missing final > newline. > > * guix/import/cabal.scm (peek-next-line-indent): Check for missing final > newline. OK. > From 81e55b496195cc9e9aa41a2cf57117326cf93245 Mon Sep 17 00:00:00 2001 > From: Federico Beffa > Date: Wed, 11 Nov 2015 16:20:45 +0100 > Subject: [PATCH 4/8] import: hackage: Make parsing of tests and fields mo= re > flexible. > > * guix/import/cabal.scm (is-test): Allow spaces between keyword and > parentheses. > (is-id): Add argument 'port'. Allow spaces between keyword and column. > (lex-word): Adjust call to 'is-id'. LGTM. > From bdd4aa18e3f3a686ceae9040c8b7404984886ace Mon Sep 17 00:00:00 2001 > From: Federico Beffa > Date: Sat, 14 Nov 2015 15:00:36 +0100 > Subject: [PATCH 5/8] utils: Add 'canonical-newline-port'. > > * guix/utils.scm (canonical-newline-port): New procedure. > * tests/utils.scm ("canonical-newline-port"): New test. OK. > From 32b848e0506d6deac0bd1130234e02fb645613ee Mon Sep 17 00:00:00 2001 > From: Federico Beffa > Date: Sat, 14 Nov 2015 15:15:00 +0100 > Subject: [PATCH 6/8] import: hackage: Handle CRLF end of line style. > > * guix/import/hackage.scm (hackage-fetch, hackage->guix-package): Use > 'canonical-newline-port'. OK. > From 507404c508774e5edb1cda1027fee12dae263592 Mon Sep 17 00:00:00 2001 > From: Federico Beffa > Date: Wed, 25 Nov 2015 14:47:16 +0100 > Subject: [PATCH 8/8] import: hackage: Assume current 'ghc' package versio= n. > > * guix/scripts/import/hackage.scm (%default-options): Do it. > (ghc-default-version): New variable. OK. > From bf0bc66ace3b2617178c28d9635dbb4bc3a89ce9 Mon Sep 17 00:00:00 2001 > From: Federico Beffa > Date: Wed, 25 Nov 2015 13:58:06 +0100 > Subject: [PATCH 7/8] import: hackage: Add new tests. > > * tests/hackage.scm (eval-test-with-cabal): Add optional argument. > (test-cabal-3): New variable and test. > (test-read-cabal-1): Exercise more parsing variants. OK. Please add =E2=80=9CPartly fixes .=E2=80=9D or = =E2=80=9CFixes .=E2=80=9D in the commit logs as appropriate (see past commits for examples.) Thank you for the hard work! Ludo=E2=80=99. From debbugs-submit-bounces@debbugs.gnu.org Thu Nov 26 03:28:10 2015 Received: (at 21829) by debbugs.gnu.org; 26 Nov 2015 08:28:10 +0000 Received: from localhost ([127.0.0.1]:53388 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1a1ruU-0002PN-2r for submit@debbugs.gnu.org; Thu, 26 Nov 2015 03:28:10 -0500 Received: from mail-vk0-f42.google.com ([209.85.213.42]:35434) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1a1ruS-0002PF-2x for 21829@debbugs.gnu.org; Thu, 26 Nov 2015 03:28:08 -0500 Received: by vkha189 with SMTP id a189so49348736vkh.2 for <21829@debbugs.gnu.org>; Thu, 26 Nov 2015 00:28:07 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type:content-transfer-encoding; bh=ZpVlWXz76/jKdzgd5sMSgLZ+UqYVdfO1OsKWxvR0uMg=; b=zzFm6/b0RAn6rKMz8yGx3kGYCRCIfY3Odtxzjz/2YtERq9PPwT5cXAKz7/k0vU8DzA 89rdhuxWs5oQa/szrcdA98UELj3zLHua4SeqU46d+jJJjr8uIXxxb/BoAn7z7weUoke8 3EpParfC1rmlJxeZJQxW3VrJ9NFQ42zRv0A0yw9Qe+aAoQY8S10HiesfKX6HH/yE2y0E IpAAFRnb52lnHuXOjftLaQRHhZxLoJc/3tHhPQzeJC/IFrnosJKVS1z/z4ZT5fFIwZHB uoauz/c8uaHoyLC6c5ymXfQvFo6+J8fl3mrj2i5GQPloTnh04E4gFJZKmbfc+cT1FoSs l+YQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ieee-org.20150623.gappssmtp.com; s=20150623; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type:content-transfer-encoding; bh=ZpVlWXz76/jKdzgd5sMSgLZ+UqYVdfO1OsKWxvR0uMg=; b=alSIkWipCNl+fremK9SPpcUiDTDBn25Ok40fhujBUe832bcMhNHtOGd6hXiOxf/tKz mc2l1lArj8xfNNW1UlMnDCPntHTN1/hTXHWtUpdzmBgDBXiprDbOCpGQQGf4E3upNO4g dLey+xQx6VBRY47MVFGdV0uk0ZNYds3xifpzDUyuXCbKtmhWiFdzsKLYe6FH3og1Q6QJ FMSgVWXgaEeQVWsnEbHunTGIj3rIiaqacOwGum5xRcOEoQxjoB/6wOA81QrWt2dJmOmF qRj15FULjY5UCyrXtje1bfYRxPf9H7z18MgznqmNREujpU/mQK+9lVVOHlyUfmrE/CXC GvKw== MIME-Version: 1.0 X-Received: by 10.31.174.131 with SMTP id x125mr36476175vke.136.1448526487354; Thu, 26 Nov 2015 00:28:07 -0800 (PST) Received: by 10.103.106.199 with HTTP; Thu, 26 Nov 2015 00:28:07 -0800 (PST) In-Reply-To: <87fuztda8k.fsf@gnu.org> References: <87d1vghjhk.fsf@gnu.org> <87vb971t74.fsf@gnu.org> <87lha3ufxv.fsf@gnu.org> <87h9kp1ts2.fsf@gnu.org> <87k2pjq8qu.fsf@gnu.org> <87fuztda8k.fsf@gnu.org> Date: Thu, 26 Nov 2015 09:28:07 +0100 X-Google-Sender-Auth: fhiriqhNM961eaQPSO_hACmXT2M Message-ID: Subject: Re: guix import hackage failures From: Federico Beffa To: =?UTF-8?Q?Ludovic_Court=C3=A8s?= Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 21829 Cc: 21829@debbugs.gnu.org, Paul van der Walt X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) On Wed, Nov 25, 2015 at 10:45 PM, Ludovic Court=C3=A8s wrote= : > Federico Beffa skribis: [...] >>>> + ;; indentation based block recognition. >>>> + (begin (unread-char #\newline port) (read-char port) 0) >>> >>> Isn=E2=80=99t this equivalent to: 0 ? >> >> No. This is because at the start of a new line we check if and how >> many indentation blocks have ended. If the last line doesn't terminate >> this check is no done. > > More generally, it looks like: > > (begin (do-effect!) (undo-effect!) val) > > which I thought reduces to: > > val Since we are doing IO, there are side effects. The key difference is the result of '(port-column port)' and that triggers what I mentioned. Thanks for the review. Regards, Fede From debbugs-submit-bounces@debbugs.gnu.org Thu Nov 26 03:46:29 2015 Received: (at 21829) by debbugs.gnu.org; 26 Nov 2015 08:46:30 +0000 Received: from localhost ([127.0.0.1]:53398 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1a1sCD-0002uO-Go for submit@debbugs.gnu.org; Thu, 26 Nov 2015 03:46:29 -0500 Received: from eggs.gnu.org ([208.118.235.92]:54699) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1a1sBt-0002ts-E8 for 21829@debbugs.gnu.org; Thu, 26 Nov 2015 03:46:27 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1a1sBs-00046Q-7c for 21829@debbugs.gnu.org; Thu, 26 Nov 2015 03:46:09 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-2.9 required=5.0 tests=BAYES_00,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:35646) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1a1sBn-00045e-B0; Thu, 26 Nov 2015 03:46:03 -0500 Received: from pluto.bordeaux.inria.fr ([193.50.110.57]:39614 helo=pluto) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1a1sBm-0005p8-Mp; Thu, 26 Nov 2015 03:46:03 -0500 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: Federico Beffa Subject: Re: guix import hackage failures References: <87d1vghjhk.fsf@gnu.org> <87vb971t74.fsf@gnu.org> <87lha3ufxv.fsf@gnu.org> <87h9kp1ts2.fsf@gnu.org> <87k2pjq8qu.fsf@gnu.org> <87fuztda8k.fsf@gnu.org> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 6 Frimaire an 224 de la =?utf-8?Q?R=C3=A9volution?= X-PGP-Key-ID: 0x3D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-unknown-linux-gnu Date: Thu, 26 Nov 2015 09:46:00 +0100 In-Reply-To: (Federico Beffa's message of "Thu, 26 Nov 2015 09:28:07 +0100") Message-ID: <87h9k95et3.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.6 (-----) X-Debbugs-Envelope-To: 21829 Cc: 21829@debbugs.gnu.org, Paul van der Walt X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -5.6 (-----) Federico Beffa skribis: > On Wed, Nov 25, 2015 at 10:45 PM, Ludovic Court=C3=A8s wro= te: >> Federico Beffa skribis: > > [...] > >>>>> + ;; indentation based block recognition. >>>>> + (begin (unread-char #\newline port) (read-char port) 0) >>>> >>>> Isn=E2=80=99t this equivalent to: 0 ? >>> >>> No. This is because at the start of a new line we check if and how >>> many indentation blocks have ended. If the last line doesn't terminate >>> this check is no done. >> >> More generally, it looks like: >> >> (begin (do-effect!) (undo-effect!) val) >> >> which I thought reduces to: >> >> val > > Since we are doing IO, there are side effects. The key difference is > the result of '(port-column port)' and that triggers what I mentioned. Oooh, I see, thanks for explaining! Then what about a comment like: Read a newline from PORT to reset its =E2=80=98port-column=E2=80=99, as e= xpected by the indentation-based block recognition code. I think it would be helpful for those like me who are hard of hearing. ;-) Ludo=E2=80=99. From debbugs-submit-bounces@debbugs.gnu.org Thu Nov 26 12:24:11 2015 Received: (at 21829) by debbugs.gnu.org; 26 Nov 2015 17:24:11 +0000 Received: from localhost ([127.0.0.1]:54575 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1a20Gu-0000l5-NF for submit@debbugs.gnu.org; Thu, 26 Nov 2015 12:24:11 -0500 Received: from mail-vk0-f42.google.com ([209.85.213.42]:36381) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1a20Gb-0000kU-1G for 21829@debbugs.gnu.org; Thu, 26 Nov 2015 12:23:51 -0500 Received: by vkay187 with SMTP id y187so56581846vka.3 for <21829@debbugs.gnu.org>; Thu, 26 Nov 2015 09:23:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type:content-transfer-encoding; bh=SPeZkIJjQRO2SILUmuax9Fx+vFchuBw8We7yd6kZj8Y=; b=gVnZ/NlMoqwCFjj5ARCm+LbVj92PRUoP/F5awA5Be6KenFHQCngOxxbAuhIJp3FotW 57aSpgrhjM31fdbu7eBO7LYrE44j44ZBJXKL7Yde+Z7c3Y4/lQLFkxBDDbMd8Lbs2zfl CelpP048CoikTnzhrB87d5VLOmA0UwdSDvgoRnH1NIkvMmqFH5qOt+Wo0yxrHgtrGmKW ZzAU4ANGbIoQH1UQKxoYtefqov6DSQawQkl7mFb/OM0U7rRG1Sc4QDQr/w7grkSuOV9u PsyxbexPXwIpWjP6DCZnGHPUSb+HWwi8CFaiEWBvhc3wbobAkl4iCZTA3vYulhfT6dhM HDgg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ieee-org.20150623.gappssmtp.com; s=20150623; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type:content-transfer-encoding; bh=SPeZkIJjQRO2SILUmuax9Fx+vFchuBw8We7yd6kZj8Y=; b=vnhd/M66GZW6NZTuAt4Mz7H6BLEFBcG7jf11t8R1Hq/xhVIkZHq4N2L/h10lWYHY+E UhHHkr0BKMClNmWSe0S+laWwJp9uQ7JRtXwSbVIghrUvFGbMc2Ob7PAhj/qZ6+plV99x 6LmIrFWrZ/TJgk/bUgBlt/Hi4fgHOP7WivAnsQZRu68QANnolntYaRS5rOuASmKnbEIP RvDl4rKYW6tKzlVEL1pe2s74zl0LbSud+nz3/m33RdHCsud4SyUi9iCJJD2MC0gKs/A4 QMVoueOP6LY7IaU5ft7qYVuJMNljVDmsEt0mFWHPE8WhUdFIPU/9oM7tA5VD5FMJgF5t Eh+Q== MIME-Version: 1.0 X-Received: by 10.31.13.205 with SMTP id 196mr39711597vkn.37.1448558612696; Thu, 26 Nov 2015 09:23:32 -0800 (PST) Received: by 10.103.106.199 with HTTP; Thu, 26 Nov 2015 09:23:32 -0800 (PST) In-Reply-To: <87fuztda8k.fsf@gnu.org> References: <87d1vghjhk.fsf@gnu.org> <87vb971t74.fsf@gnu.org> <87lha3ufxv.fsf@gnu.org> <87h9kp1ts2.fsf@gnu.org> <87k2pjq8qu.fsf@gnu.org> <87fuztda8k.fsf@gnu.org> Date: Thu, 26 Nov 2015 18:23:32 +0100 X-Google-Sender-Auth: vjLalJifh41R0uRUb9x6YEX9EzQ Message-ID: Subject: Re: guix import hackage failures From: Federico Beffa To: =?UTF-8?Q?Ludovic_Court=C3=A8s?= Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 21829 Cc: 21829@debbugs.gnu.org, Paul van der Walt X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) On Wed, Nov 25, 2015 at 10:45 PM, Ludovic Court=C3=A8s wrote= : > Please add =E2=80=9CPartly fixes .=E2=80=9D or= =E2=80=9CFixes > .=E2=80=9D in the commit logs as appropriate (= see > past commits for examples.) After committing I realized that I forgot about this. Sorry! Fede From debbugs-submit-bounces@debbugs.gnu.org Thu Nov 26 14:57:12 2015 Received: (at 21829-done) by debbugs.gnu.org; 26 Nov 2015 19:57:12 +0000 Received: from localhost ([127.0.0.1]:54674 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1a22fI-0004ZC-DH for submit@debbugs.gnu.org; Thu, 26 Nov 2015 14:57:12 -0500 Received: from eggs.gnu.org ([208.118.235.92]:51298) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1a22ey-0004YT-Cm for 21829-done@debbugs.gnu.org; Thu, 26 Nov 2015 14:57:10 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1a22ex-0002KK-9p for 21829-done@debbugs.gnu.org; Thu, 26 Nov 2015 14:56:52 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-2.9 required=5.0 tests=BAYES_00,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:43843) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1a22er-0002JS-Fh; Thu, 26 Nov 2015 14:56:45 -0500 Received: from reverse-83.fdn.fr ([80.67.176.83]:53410 helo=pluto) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1a22eq-0006tP-Bv; Thu, 26 Nov 2015 14:56:44 -0500 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) To: Federico Beffa Subject: Re: guix import hackage failures References: <87d1vghjhk.fsf@gnu.org> <87vb971t74.fsf@gnu.org> <87lha3ufxv.fsf@gnu.org> <87h9kp1ts2.fsf@gnu.org> <87k2pjq8qu.fsf@gnu.org> <87fuztda8k.fsf@gnu.org> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 6 Frimaire an 224 de la =?utf-8?Q?R=C3=A9volution?= X-PGP-Key-ID: 0x3D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-unknown-linux-gnu Date: Thu, 26 Nov 2015 20:56:41 +0100 In-Reply-To: (Federico Beffa's message of "Thu, 26 Nov 2015 18:23:32 +0100") Message-ID: <87lh9kilfq.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2001:4830:134:3::e X-Spam-Score: -6.0 (------) X-Debbugs-Envelope-To: 21829-done Cc: 21829-done@debbugs.gnu.org, Paul van der Walt X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.0 (------) Federico Beffa skribis: > On Wed, Nov 25, 2015 at 10:45 PM, Ludovic Court=C3=A8s wro= te: >> Please add =E2=80=9CPartly fixes .=E2=80=9D o= r =E2=80=9CFixes >> .=E2=80=9D in the commit logs as appropriate = (see >> past commits for examples.) > > After committing I realized that I forgot about this. OK. Good news is we can close the bug now. :-) Thanks, Ludo=E2=80=99. From unknown Tue Aug 19 09:34:44 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Fri, 25 Dec 2015 12:24:03 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator