From unknown Fri Jun 20 07:28:50 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#70001 <70001@debbugs.gnu.org> To: bug#70001 <70001@debbugs.gnu.org> Subject: Status: [PATCH] gnu: reprotest: Add missing propogated inputs Reply-To: bug#70001 <70001@debbugs.gnu.org> Date: Fri, 20 Jun 2025 14:28:50 +0000 retitle 70001 [PATCH] gnu: reprotest: Add missing propogated inputs reassign 70001 guix-patches submitter 70001 Skyler Ferris severity 70001 normal tag 70001 patch thanks From debbugs-submit-bounces@debbugs.gnu.org Mon Mar 25 15:13:21 2024 Received: (at submit) by debbugs.gnu.org; 25 Mar 2024 19:13:21 +0000 Received: from localhost ([127.0.0.1]:36296 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ropl3-0003qe-Bf for submit@debbugs.gnu.org; Mon, 25 Mar 2024 15:13:21 -0400 Received: from lists.gnu.org ([2001:470:142::17]:47726) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ropl2-0003qR-2V for submit@debbugs.gnu.org; Mon, 25 Mar 2024 15:13:20 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ropkx-0002mS-57 for guix-patches@gnu.org; Mon, 25 Mar 2024 15:13:15 -0400 Received: from mail-40131.protonmail.ch ([185.70.40.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ropkv-0006BE-4W for guix-patches@gnu.org; Mon, 25 Mar 2024 15:13:14 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com; s=protonmail3; t=1711393983; x=1711653183; bh=S+VQ3z8pyOkYqFlurxODka3Qm/h7EfjKQ7F2TJOP/AE=; h=Date:To:From:Subject:Message-ID:Feedback-ID:From:To:Cc:Date: Subject:Reply-To:Feedback-ID:Message-ID:BIMI-Selector; b=DvyZbrxfb54gCiDGCxo1ANaBCBLE9inmIr/EPfAK3Mryqh7U6xiwF4JRWWiH3j5Uj caD5oxWFz2mXJ0lp55lC/V6AUmoROE9XIkbFQHykXjWb5awUdlmsX3PsTrd/yzI0gW KWmHNR84kidzAbVN2WTwU7k3MsffhpnzqV0yUCl0tsK9FkGHLLtOtEpSNCgw0jyM4f avFcte7hSBXFbKmYYbQSx4rM8f6RZ493Syu3eyNVDkAWxMXtkuxf6ci7iwF3eEgdj8 QY3fztRrbqTSQz36syVSE1Uqmc7mTQdm8RlqW6Pkn2kK+8x7g88Yi31xHtv8TZW21V oAf0DZgdiI+KQ== Date: Mon, 25 Mar 2024 19:12:52 +0000 To: guix-patches@gnu.org From: Skyler Ferris Subject: [PATCH] gnu: reprotest: Add missing propogated inputs Message-ID: <7893aa6e-886b-4e74-999f-886a8ea0166b@protonmail.com> Feedback-ID: 40635331:user:proton MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Received-SPF: pass client-ip=185.70.40.131; envelope-from=skyvine@protonmail.com; helo=mail-40131.protonmail.ch X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 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.0 (/) Hello, This patch adds some propagated inputs to the reprotest package so that=20 most tests can run in a pure shell. I observed some issues running this=20 package in a pure shell when reviewing issue 69991 (which updates=20 diffoscope). Some of the new propagated inputs have already been listed=20 as native inputs, but I did not remove them under the assumption that=20 these programs are actually needed for the build machine. There are 3=20 tests which still do not work in a pure shell. The fileordering and user_group tests both require setuid programs. Both=20 require fusermount and user_group requires sudo. I do not think it is=20 possible to make these tests work within a pure shell because a package=20 cannot provide setuid programs (only an operating system can). The domain_host test does not work in a pure shell due to a dependency=20 on a program named domainname. I was unable to locate a package which=20 provides this command. The closest I could find is the inetutils package=20 which provides dnsdomainname but I do not think this is sufficient for=20 the test to run correctly. The domainname command is used in=20 reprotest/build.py line 243: ```python _ =3D _.prepend_to_build_command(*"unshare -r --uts".split(), =C2=A0=C2=A0=C2=A0 "sh", "-ec", r""" =C2=A0=C2=A0=C2=A0 hostname {1} =C2=A0=C2=A0=C2=A0 domainname "{2}" =C2=A0=C2=A0=C2=A0 """.format(build.aux_tree, hostname, domainname) + '"$@= "', "-") ``` It looks to me like this is trying to set both the hostname and the=20 domainname, which makes sense if it wants to test for these settings as=20 a cause of non-determinism. The hostname command supports setting, but=20 the dnsdomainname command only supports retrieving the domain name. Additionally, this patch adds a new build phase to call fusermount3=20 instead of fusermount, which is the name of the command provided by=20 Guix's fuse package. This does not make it work in a pure shell but it=20 does make it work in an operating system that provides the suid version=20 of the binary. Summary: Tests working in pure shell: - aslr - build_path - environment - exec_path - home - kernel - locales - num_cpus - time - timezone - umask Tests work with appropriate suid programs provided: - fileordering - user_group Tests that do not work on any Guix system: - domain_host To try reprotest in a pure shell, create the following makefile in an=20 empty directory: ```make destination: =C2=A0=C2=A0 =C2=A0echo foo > destination clean: =C2=A0=C2=A0 =C2=A0rm -f destination ``` Then, run the following command to try the working tests. If you want to=20 see the test report a problem you will need to change the recipe to be=20 non-deterministic. For example, use `date` instead of `echo foo` in=20 order to see the time test report a problem. Note that make is an=20 additional package in the shell because this is the build system that=20 happens to be used, but it would not make sense to add this as a=20 mandatory input to the package because some people might use reprotest=20 without using make. If you remove one of the propagated inputs then at=20 least one of these tests will crash, with the exception of findutils and=20 diffoscope which are used by reprotest outside the context of a specific=20 test (to get the hashes of multiple files and display diffs to the user,=20 respectively). ```shell guix shell --pure reprotest make -- bash -c 'cd /tmp/test && reprotest=20 "make clean && make" destination --variations=3D"+environment,=20 +build_path, +kernel, +aslr, +num_cpus, +time, +home, +locales,=20 +exec_path, +timezone, +umask"' ``` You can try the suid-dependent tests with the same Makefile. The sudo=20 and fuse-2 packages need to be installed; the default %setuid-programs=20 variable includes the relevant binaries. Remove the `--pure` flag from=20 the shell invocation and change the `--variations` flag in the reprotest=20 variations to have the value `"+fileordering, +user_group"`. Regards, Skyler From debbugs-submit-bounces@debbugs.gnu.org Mon Mar 25 15:16:31 2024 Received: (at 70001) by debbugs.gnu.org; 25 Mar 2024 19:16:31 +0000 Received: from localhost ([127.0.0.1]:36302 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ropo7-0003wK-4D for submit@debbugs.gnu.org; Mon, 25 Mar 2024 15:16:31 -0400 Received: from mail-40131.protonmail.ch ([185.70.40.131]:41459) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ropo5-0003w6-FB for 70001@debbugs.gnu.org; Mon, 25 Mar 2024 15:16:29 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com; s=protonmail3; t=1711394184; x=1711653384; bh=npv2AbpPWSoQ8m27i/cktFiIDHWrrf7jwRLTFPr5td0=; h=Date:To:From:Cc:Subject:Message-ID:Feedback-ID:From:To:Cc:Date: Subject:Reply-To:Feedback-ID:Message-ID:BIMI-Selector; b=Tjh+SZ0n6ti7r4ZgULSMij46Va1wSmql2FcN5VSUGXV5t3TAp4fBAFZJnjSXHcgX7 rm6Z31TF/tI7GXTeTkbI/RVzS793ONhwhZuVrLudfSGWUvYvyf6x1xdXhu5KG78KKw 7NFlOrWmNF/K8+LxB8aOHOwG6gcz93edyBc3wqX5x+kvaGV6OLIq3KzlVAQ5wkjewj TqH2K4xi2bg5qsncbOymc/3fYClqgKNdsQef+bH6MAsFuAi4TWxKFJO1/zztRSWVUE OI+rm5vdQs77uYuCZeg5BgSLAEcb7OgW+hwFmLVFfBIW58wbFpO6fvcfKpOMbhS9Lf B0X+/abQHL2IA== Date: Mon, 25 Mar 2024 19:16:14 +0000 To: 70001@debbugs.gnu.org From: skyvine@protonmail.com Subject: [PATCH] gnu: reprotest: Add missing propogated inputs Message-ID: <896f9b471c98c4cbba81bd02b961860421e84b1a.1711393455.git.skyvine@protonmail.com> Feedback-ID: 40635331:user:proton MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 70001 Cc: Skyler Ferris X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 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: -1.0 (-) From: Skyler Ferris * gnu/packages/diffoscope.scm (reprotest): Add bash, coreutils, diffoscope, disorderfs, findutils, grep, inetutils, libfaketime, and util-linux as propagated inputs. Change-Id: Ibc113558032697be9048bebe54ba7678156667b9 --- gnu/packages/diffoscope.scm | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/gnu/packages/diffoscope.scm b/gnu/packages/diffoscope.scm index 52f615f2cf..b87ed74874 100644 --- a/gnu/packages/diffoscope.scm +++ b/gnu/packages/diffoscope.scm @@ -29,12 +29,14 @@ (define-module (gnu packages diffoscope) #:use-module (gnu packages android) #:use-module (gnu packages backup) #:use-module (gnu packages base) + #:use-module (gnu packages bash) #:use-module (gnu packages bootloaders) #:use-module (gnu packages cdrom) #:use-module (gnu packages check) #:use-module (gnu packages compression) #:use-module (gnu packages cpio) #:use-module (gnu packages dbm) + #:use-module (gnu packages file-systems) #:use-module (gnu packages gettext) #:use-module (gnu packages ghostscript) #:use-module (gnu packages gnome) @@ -258,6 +260,18 @@ (define-public reprotest (base32 "1992wlkil07fmj64lw3i7l16dgkkzphz0f932hbkkj9rlcamdwxd")))) (inputs (list python-debian python-distro python-libarchive-c python-rstr)) + (propagated-inputs + (list + bash ; the python code sets up shell scripts to be executed + coreutils ; tests: locale, exec_path, home ("env") + diffoscope ; used to display diffs when builds are not reproducib= le + disorderfs ; test: fileordering, but fuse-2 and sudo must be inst= alled as + ; setuid programs as well. + findutils ; __init__ uses "find" to get the hash of multiple fil= es + grep ; tests: kernel + inetutils ; tests: domain_host ("hostname") + libfaketime ; tests: time + util-linux)) ; tests: num_cpus ("taskset") (native-inputs `(("diffoscope" ,diffoscope) ("help2man" ,help2man) base-commit: 76a3414a1bc500626a9feca013673f994eb51a34 --=20 2.41.0 From debbugs-submit-bounces@debbugs.gnu.org Tue Mar 26 10:31:46 2024 Received: (at 70001) by debbugs.gnu.org; 26 Mar 2024 14:31:46 +0000 Received: from localhost ([127.0.0.1]:34412 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rp7q6-0008Bs-8h for submit@debbugs.gnu.org; Tue, 26 Mar 2024 10:31:46 -0400 Received: from cascadia.aikidev.net ([173.255.214.101]:52554) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rp7q2-0008Bd-Ix for 70001@debbugs.gnu.org; Tue, 26 Mar 2024 10:31:45 -0400 Received: from localhost (unknown [IPv6:2600:3c01:e000:21:7:77:0:50]) (Authenticated sender: vagrant@aikidev.net) by cascadia.aikidev.net (Postfix) with ESMTPSA id C612C1AC97; Mon, 25 Mar 2024 23:03:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=reproducible-builds.org; s=1.vagrant; t=1711432984; bh=xnGVSdbXoSpNW6H50MykS5Tyixi8ssoIBuCjhKLZ2Rk=; h=From:To:Subject:In-Reply-To:References:Date:From; b=kE6pGERH8SHjp1GE+fiB5NAoqiTV1USD1ivLMdnKkgAsyadwZtTHfsBx5RjCz8TOt yyMkiDmfXiYWENRrigfTvDcVaR/HWtGIZE5gxPMTyyZiLJajlb19xPylVFmdcBqh/q rxHY7/eo13gFEcU6EwcsxwlSNc4H+H5JSzFiIa/+moulBW4eP/NZ7bTaHCJlPjJk1A Zu3DKhudoyJh92XrM8uvMgzQSSXwITHOr51nYfe4H2I0AgbkiKOcVGGfQegfBCaK9+ VQc0j/JaqeuPsMBNfmrlaARwlqPMty9a2uSRL6VOSFW2WqPwHyVbjqaxJ0bapuHYPL aH50xTtS1D/6Q== From: Vagrant Cascadian To: Skyler Ferris , 70001@debbugs.gnu.org Subject: Re: [PATCH] gnu: reprotest: Add missing propogated inputs In-Reply-To: <7893aa6e-886b-4e74-999f-886a8ea0166b@protonmail.com> References: <7893aa6e-886b-4e74-999f-886a8ea0166b@protonmail.com> Date: Mon, 25 Mar 2024 23:02:58 -0700 Message-ID: <87a5mlttrh.fsf@wireframe> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 70001 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 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: -1.0 (-) --=-=-= Content-Type: text/plain Content-Transfer-Encoding: quoted-printable On 2024-03-25, Skyler Ferris wrote: > This patch adds some propagated inputs to the reprotest package so that=20 > most tests can run in a pure shell. Thanks for taking an interest in this! My understanding is that propagated inputs are generally to be used very sparingly, as they make it very difficult to install multiple packages that might contain conflicting propagated inputs. Most of the proposed inputs are largely optional dependencies of reprotest, which in guix terms, generally the end-user is expected to install the additional packages to enable desired optional features. It might make sense to list the additional dependencies in the description describing what features each enables? Adding some of them to native-inputs might also make sense to enable more tests, and give a clear place to write comments about each. Then "guix shell --pure --development reprotest reprotest" would pull them in and reprotest itself to be able to run the relevent tests as you had tried. If reprotest behaves quite badly without some of the in the working environment, such as spitting out an ugly backtrace rather than reporting what is missing, it should probably be fixed upstream (and possibly patched in guix in the meantime). > Additionally, this patch adds a new build phase to call fusermount3=20 > instead of fusermount, which is the name of the command provided by=20 > Guix's fuse package. This does not make it work in a pure shell but it=20 > does make it work in an operating system that provides the suid version=20 > of the binary. It seems like this is missing from the patch, though I suspect it is needed to behave correctly with things relying on fuse! > You can try the suid-dependent tests with the same Makefile. The sudo=20 > and fuse-2 packages need to be installed; the default %setuid-programs=20 > variable includes the relevant binaries. Remove the `--pure` flag from=20 > the shell invocation and change the `--variations` flag in the reprotest= =20 > variations to have the value `"+fileordering, +user_group"`. Thanks for the detailed report ... this might be or should be covered by upstream documentation ... although if there are guix-specific angles on it, I am not sure where that should be documented. So, in summary, I think there are some ideas to explore from your patch, although it needs a bit of rethinking about implementation details. live well, vagrant --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iHUEARYKAB0WIQRlgHNhO/zFx+LkXUXcUY/If5cWqgUCZgJlEgAKCRDcUY/If5cW ql6MAQCFuvjl8ilzN+E5UEQ77rP1KAlrTP/ng3iSoaIKjidvdAEAtAIjoHcQUsI5 AY97ABRglXwhhDprsqAnKFo8Irfr5QI= =U/yY -----END PGP SIGNATURE----- --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Tue Mar 26 15:57:48 2024 Received: (at 70001) by debbugs.gnu.org; 26 Mar 2024 19:57:48 +0000 Received: from localhost ([127.0.0.1]:35131 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rpCvZ-0003uT-RC for submit@debbugs.gnu.org; Tue, 26 Mar 2024 15:57:48 -0400 Received: from mail-40131.protonmail.ch ([185.70.40.131]:22003) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rpCvU-0003tw-Ek for 70001@debbugs.gnu.org; Tue, 26 Mar 2024 15:57:44 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com; s=protonmail3; t=1711483054; x=1711742254; bh=G5cNZ+Rxfs6Wdb/K4Iu8mG1Gw5VQiGie7+e8jtHeNB4=; h=Date:To:From:Subject:Message-ID:In-Reply-To:References: Feedback-ID:From:To:Cc:Date:Subject:Reply-To:Feedback-ID: Message-ID:BIMI-Selector; b=SVHtgJCUMM+25jByPGEWaxGvM5SIgmLc2467rEmJadBDKgwpw6v80bqNDOVOd/Amc r/Pqy7tIICbOPm3fwjjXgdM6NWWKNTI+1hC/jn4ktl42pVfGw2uECZsLgjzH8SyVl/ DZX/Zomus/0zNeZZkW0Q/Uja83qTrsq1jj7fVaqPZYdEZjpJlGMS7lWqEnuzeXU6Gp S8ojmQW+pfQjHXZbCGEAe+8R5O8PUcB3lfK2dB2dRdz2f2bbZYKjJLISfz+Arx9+1u PT0bk2/PxvGiPw2vLshP6qm82VkWnyBlY0MaewADNu/A0TJEwMW2U2WBoyFlno3TuQ Pz3yM+de9UPlw== Date: Tue, 26 Mar 2024 19:57:19 +0000 To: Vagrant Cascadian , 70001@debbugs.gnu.org From: Skyler Ferris Subject: Re: [PATCH] gnu: reprotest: Add missing propogated inputs Message-ID: <9c3327ac-c6a3-4324-b832-7b51463ae13e@protonmail.com> In-Reply-To: <87a5mlttrh.fsf@wireframe> References: <7893aa6e-886b-4e74-999f-886a8ea0166b@protonmail.com> <87a5mlttrh.fsf@wireframe> Feedback-ID: 40635331:user:proton MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="b1_H20nidUO67zyVCPqN1nmMD0XJPolNiCGw3nrgPxSM" X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 70001 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 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: -1.0 (-) This is a multi-part message in MIME format. --b1_H20nidUO67zyVCPqN1nmMD0XJPolNiCGw3nrgPxSM Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 SGkgVmFncmFudCwKClRoYW5rcyBmb3IgdGhlIGZlZWRiYWNrIQoKT24gMy8yNS8yNCAyMzowMiwg VmFncmFudCBDYXNjYWRpYW4gd3JvdGU6Cgo+IE15IHVuZGVyc3RhbmRpbmcgaXMgdGhhdCBwcm9w YWdhdGVkIGlucHV0cyBhcmUgZ2VuZXJhbGx5IHRvIGJlIHVzZWQgdmVyeQo+IHNwYXJpbmdseSwg YXMgdGhleSBtYWtlIGl0IHZlcnkgZGlmZmljdWx0IHRvIGluc3RhbGwgbXVsdGlwbGUgcGFja2Fn ZXMKPiB0aGF0IG1pZ2h0IGNvbnRhaW4gY29uZmxpY3RpbmcgcHJvcGFnYXRlZCBpbnB1dHMuCgpG YWlyIGVub3VnaC4gSSBoYXZlbid0IHBlcnNvbmFsbHkgcnVuIGludG8gdGhpcyBwYWluIHBvaW50 LCBidXQgdGhhdCdzIHByb2JhYmx5IGJlY2F1c2UgcGVvcGxlIGFyZSB1c2luZyB0aGVtIHNwYXJp bmdseS4gPSkKCj4gTW9zdCBvZiB0aGUgcHJvcG9zZWQgaW5wdXRzIGFyZSBsYXJnZWx5IG9wdGlv bmFsIGRlcGVuZGVuY2llcyBvZgo+IHJlcHJvdGVzdCwgd2hpY2ggaW4gZ3VpeCB0ZXJtcywgZ2Vu ZXJhbGx5IHRoZSBlbmQtdXNlciBpcyBleHBlY3RlZCB0bwo+IGluc3RhbGwgdGhlIGFkZGl0aW9u YWwgcGFja2FnZXMgdG8gZW5hYmxlIGRlc2lyZWQgb3B0aW9uYWwgZmVhdHVyZXMuCgpJIHJlbWVt YmVyIHJ1bm5pbmcgaW50byB0aGlzIGJlZm9yZSBhbmQgaXQgaGFzIGJlZW4gYSBwYWluIHBvaW50 IGZvciBtZSBiZWNhdXNlIGl0IGlzIG5vdCBjbGVhciB3aGF0IHRoZSBvcHRpb25hbCBkZXBlbmRl bmNpZXMgYXJlLiBJIGtub3cgdGhhdCBwYWNrYWdlIG1hbmFnZXJzIGxpa2UgYXB0IGhhdmUgdGhl IGFiaWxpdHkgdG8gcmVjb21tZW5kIHBhY2thZ2VzIHdoaWNoIGFyZSBvcHRpb25hbCBkZXBlbmRl bmNpZXMsIGJ1dCB0aGUgcHJvYmxlbSB0aGF0IEkgcnVuIGludG8gaXMgdGhhdCBpZiBJJ20gbG9v a2luZyBhdCBhIGNvbmZpZ3VyYXRpb24gKG1hbmlmZXN0LCBvcGVyYXRpbmctc3lzdGVtIHNwZWMs IGV0YykgaXQncyBub3QgY2xlYXIgdG8gbWUgd2hpY2ggaXRlbXMgYXJlIGluY2x1ZGVkIGFzICJp bnZpc2libGUgZGVwZW5kZW5jaWVzIiBvZiBvdGhlciBwYWNrYWdlcyBhbmQgd2hpY2ggb25lcyBh cmUgYmVpbmcgaW5jbHVkZWQgZm9yIHRoZWlyIG93biBzYWtlLiBTbyBJIHdvdWxkIGxpa2UgdG8g cHJvcG9zZSB1c2luZyBhIGRpZmZlcmVudCB0ZWNobmlxdWUgd2hpY2ggSSBiZWxpZXZlIGFkZHJl c3NlcyBib3RoIG9mIG91ciBjb25jZXJucy4gQmFzaWNhbGx5LCB0aGUgdGVjaG5pcXVlIGlzIHRv IGVtYmVkIGFic29sdXRlIHBhdGhzIGludG8gdGhlIHB5dGhvbiBjb2RlLiBGb3IgZXhhbXBsZSwg SSB0cmllZCBhZGRpbmcgdGhpcyBwaGFzZSB0byByZXByb3Rlc3QgKGl0IHdvdWxkIG5lZWQgc29t ZSBwb2xpc2hpbmcgYmVmb3JlIGFjdHVhbCBzdWJtaXNzaW9uLCBmb3IgcmVhc29ucyBtZW50aW9u ZWQgbGF0ZXIgaW4gdGhpcyBlbWFpbCk6IGBgYHNjaGVtZSAoYWRkLWFmdGVyICdhZGp1c3QtbG9j YWxlcyAnc2V0LXRhc2tzZXQtcGF0aCAobGFtYmRhIF8gKGRlZmluZSAocXVvdGUtc3Vycm91bmQg c3RyKSAoc3RyaW5nLWFwcGVuZCAiJyIgc3RyICInIikpIChsZXQgKCh1dGlsLWxpbnV4ICMkKHRo aXMtcGFja2FnZS1pbnB1dCAidXRpbC1saW51eCIpKSkgKHdoZW4gdXRpbC1saW51eCAoc3Vic3Rp dHV0ZSogInJlcHJvdGVzdC9idWlsZC5weSIgKCgiJ3Rhc2tzZXQnIikgKHF1b3RlLXN1cnJvdW5k IChzdHJpbmctYXBwZW5kIHV0aWwtbGludXggIi9iaW4vdGFza3NldCIpKSkgKCgic2V0YXJjaCIp IChzdHJpbmctYXBwZW5kIHV0aWwtbGludXggIi9iaW4vc2V0YXJjaCIpKSkpKSkpIGBgYCBUaGlz IGxldCBtZSBydW4gdGhlIG51bV9jcHVzIHRlc3QgZnJvbSBhIHB1cmUgc2hlbGwgd2l0aG91dCBh ZGRpbmcgdXRpbC1saW51eCB0byBteSBleHBsaWNpdCBpbnB1dHMuIFJ1bm5pbmcgdGFza3NldCBm cm9tIHRoZSBzaGVsbCByZXN1bHRlZCBpbiBhICJjb21tYW5kIG5vdCBmb3VuZCIgZXJyb3Igc28g dGhlIHBhY2thZ2Ugd2FzIG5vdCBhZGRlZCB0byB0aGUgcHJvZmlsZS4gQWRkaXRpb25hbGx5LCBJ IGJ1aWx0IGEgYGd1aXggcGFja2Agd2l0aCBvbmx5IHJlcHJvdGVzdCBhcyBhbiBpbnB1dCwgYW5k IHV0aWwtbGludXggd2FzIHByZXNlbnQuIEkgYnVpbHQgYSBwYWNrIHdpdGggdGhlIGN1cnJlbnQg dmVyc2lvbiBvZiB0aGUgcGFja2FnZSBhbmQgdXRpbC1saW51eCB3YXMgbm90IHByZXNlbnQuIFNv IGl0IHNlZW1zIHRoYXQgZXZlbiB0aG91Z2ggR3VpeCBzZWVzIHRoZSBoYXNoIGFuZCBpcyBhd2Fy ZSBvZiBpdCBhcyBhIHJ1bi10aW1lIGRlcGVuZGVuY3ksIGl0IGRvZXMgbm90IGF1dG9tYXRpY2Fs bHkgYWRkIHRoZSBwYWNrYWdlIHRvIHRoZSBwcm9maWxlLCBhZGRyZXNzaW5nIGJvdGggb2Ygb3Vy IGNvbmNlcm5zLiBJZiBhIHVzZXIgZG9lcyBub3Qgd2FudCBhbiBvcHRpb25hbCBkZXBlbmRlbmN5 IHRoZW4gdGhleSBjYW4gZGVsZXRlIHRoZSBpbnB1dCBsaWtlIHNvIChvciByZXBsYWNlIGl0IGZv ciBhIGRpZmZlcmVudCB2ZXJzaW9uLCBpZiBzbyBkZXNpcmVkKTogYGBgc2NoZW1lICh1c2UtbW9k dWxlcyAoZ3VpeCBwYWNrYWdlcykgKGdudSBwYWNrYWdlcyBkaWZmb3Njb3BlKSkgKHBhY2thZ2Ug KGluaGVyaXQgcmVwcm90ZXN0KSAoaW5wdXRzIChtb2RpZnktaW5wdXRzIChwYWNrYWdlLWlucHV0 cyByZXByb3Rlc3QpIChkZWxldGUgInV0aWwtbGludXgiKSkpKSBgYGAgVW5mb3J0dW5hdGVseSBJ IGRvIG5vdCBzZWUgYSB3YXkgdG8gcmVtb3ZlIGFuIGlucHV0IHVzaW5nIHRoZSB3aXRoLWlucHV0 IG9wdGlvbiBpbiBvcHRpb25zLT50cmFuc2Zvcm1hdGlvbiBwcm9jZWR1cmUgb3IgdGhlIGFuYWxv Z291cyAtLXdpdGgtaW5wdXQgY29tbWFuZC1saW5lIGZsYWcuIElmIHdlIGRvIGdvIHRoaXMgcm91 dGUgdGhlbiBJIHdpbGwgbG9vayBhdCBhZGRpbmcgIiNmIiBhcyBhIHZhbGlkIHZhbHVlIGZvciB0 aGUgd2l0aC1pbnB1dCB0cmFuc2Zvcm1hdGlvbiB0byBzdXBwb3J0IHRoaXMgY2FzZSwgYnV0IHRo YXQgd2lsbCBiZSBoYW5kbGVkIGluIGEgc2VwYXJhdGUgaXNzdWUuIFdlIGNvdWxkIGRlZmF1bHQg dG8gbm90IGluY2x1ZGluZyBvcHRpb25hbCBkZXBlbmRlbmNpZXMsIGJ1dCBJIGRvbid0IHRoaW5r IHRoYXQgdGhpcyB3b3VsZCBiZSB0aGUgbW9zdCB1c2VmdWwgdGhpbmcgdG8gZG8uIEkgd291bGQg ZXhwZWN0IHRoYXQgbW9zdCBwZW9wbGUgd2FudCBhbGwgdGVzdHMgdG8gd29yayBhbmQgdGhhdCBy ZW1vdmluZyB0aGUgaW5wdXRzIGlzIGEgbmljaGUgaW50ZXJlc3QuIEl0IHNlZW1zIGxpa2VseSB0 aGF0ICJhbGwgb2YgdGhlIHRlc3RzIHdvcmsgb3V0IG9mIHRoZSBib3giIGlzIGNsb3NlciB0byB3 aGF0IG1vc3QgcGVvcGxlIGFyZSBjdXJyZW50bHkgZXhwZXJpZW5jaW5nIGJlY2F1c2UgYWxsIG9m IHRoZSBwYWNrYWdlcyB3aGljaCBJIGFkZGVkIHRvIHRoZSBwcm9wYWdhdGVkIGlucHV0cywgd2l0 aCB0aGUgZXhjZXB0aW9uIG9mIGxpYmZha2V0aW1lIGFuZCBkaWZmb3Njb3BlLCBpcyBpbiB0aGUg JWJhc2UtcGFja2FnZXMgdmFyaWFibGUgdGhhdCBHdWl4IHJlY29tbWVuZHMgcGVvcGxlIHVzZSAo YW5kIHRoZSAibm9ybWFsIiBkaWZmIGNvbW1hbmQgaXMgcHJvdmlkZWQgYnkgJWJhc2UtcGFja2Fn ZXMgYXMgd2VsbCwgc28gdGhlIGxhY2sgb2YgZGlmZm9zY29wZSB3b3VsZCBub3QgY2F1c2UgYSBw cm9ibGVtIGZvciB1c2VycyB3aXRoIHRoZSBkZWZhdWx0IGNvbmZpZ3VyYXRpb24pLiBJZiB3ZSBk byBkZWNpZGUgdG8gZXhjbHVkZSBvcHRpb25hbCBkZXBlbmRlbmNpZXMgYnkgZGVmYXVsdCB0aGVu IEkgd2lsbCBsb29rIGF0IGFkZGluZyBhbiAiYWRkLWlucHV0IiBvcHRpb24gdG8gdGhlIGF2YWls YWJsZSB0cmFuc2Zvcm1hdGlvbnMuCkRvaW5nIHRoaXMgZm9yIGV2ZXJ5IGNvbW1hbmQgdXNlZCBi eSByZXByb3Rlc3Qgd291bGQgcmVxdWlyZSBzb21lIHVwLWZyb250IHdvcmssIGFuZCBJJ20gbm90 IHN1cmUgaWYgaXQgd291bGQgYmUgcG9zc2libGUgdG8gdW5pcXVlbHkgaWRlbnRpZnkgZXZlcnkg aW5zdGFuY2Ugb2YgdGhlIHByb2dyYW0gbmFtZXMgd2l0aCByZWd1bGFyIGV4cHJlc3Npb25zIGFs b25lIChmb3IgZXhhbXBsZSwgdGhlIGFib3ZlIGJ1aWxkIHBoYXNlIHJlcGxhY2VzIGluc3RhbmNl cyBvZiBzZXRhcmNoIGluIGRvY3N0cmluZ3Mgd2hpY2ggaXMgdW5kZXNpcmFibGUpLiBTbyBJIG1p Z2h0IGVuZCB1cCBhZGRpbmcgYSBndWl4LXNwZWNpZmljIHBhdGNoIHRoYXQgZG9lcyBzb21ldGhp bmcgbGlrZSBzdXJyb3VuZCBlYWNoIGluc3RhbmNlIG9mIHRoZSBwcm9ncmFtIG5hbWUgd2l0aCBk b3VibGUgcGVyY2VudCBzaWducyBzbyB0aGF0IHRoZXkgYXJlIHVuaXF1ZWx5IGlkZW50aWZpYWJs ZSBpbiB0aGUgYnVpbGQgcGhhc2UuIFRoaXMgbWlnaHQgYWRkIHNvbWUgYWRkaXRpb25hbCB3b3Jr IHdoZW4gdXBkYXRpbmcgdGhlIHBhY2thZ2UsIGJlY2F1c2UgbmV3IGxpbmVzIHRoYXQgYWRkIGNv bW1hbmRzIHdvdWxkIG5lZWQgdG8gaGF2ZSB0aGUgZG91YmxlIHBlcmNlbnQgc2lnbnMgYWRkZWQg YW5kIGNoYW5nZXMgdG8gZXhpc3RpbmcgbGluZXMgY291bGQgY2F1c2UgY29uZmxpY3RzIHdpdGgg dGhlIHBhdGNoLiBCdXQgSSB0aGluayB0aGF0IHRoZSBtYWpvcml0eSBvZiB0aGUgd29yayB3b3Vs ZCBiZSB0aGUgdXAtZnJvbnQgd29yayB3aGljaCBJIGFtIHdpbGxpbmcgdG8gZG8uCgo+IEl0IG1p Z2h0IG1ha2Ugc2Vuc2UgdG8gbGlzdCB0aGUgYWRkaXRpb25hbCBkZXBlbmRlbmNpZXMgaW4gdGhl Cj4gZGVzY3JpcHRpb24gZGVzY3JpYmluZyB3aGF0IGZlYXR1cmVzIGVhY2ggZW5hYmxlcz8KCkkg dGhpbmsgdGhpcyBpcyBhIHVzZWZ1bCBhZGRpdGlvbiBldmVuIHdpdGggdGhlIGFib3ZlIHRlY2hu aXF1ZSwgc28gdGhhdCB1c2VycyBoYXZlIGF3YXJlbmVzcyBhYm91dCB0aGUgb3B0aW9uYWwgZGVw ZW5kZW5jaWVzICYgaG93IHRoZXkgY2FuIG1hbmlwdWxhdGUgdGhlbS4KCj4gSWYgcmVwcm90ZXN0 IGJlaGF2ZXMgcXVpdGUgYmFkbHkgd2l0aG91dCBzb21lIG9mIHRoZSBpbiB0aGUgd29ya2luZwo+ IGVudmlyb25tZW50LCBzdWNoIGFzIHNwaXR0aW5nIG91dCBhbiB1Z2x5IGJhY2t0cmFjZSByYXRo ZXIgdGhhbgo+IHJlcG9ydGluZyB3aGF0IGlzIG1pc3NpbmcsIGl0IHNob3VsZCBwcm9iYWJseSBi ZSBmaXhlZCB1cHN0cmVhbSAoYW5kCj4gcG9zc2libHkgcGF0Y2hlZCBpbiBndWl4IGluIHRoZSBt ZWFudGltZSkuCgpJIGFncmVlIHRoYXQgdGhpcyBzaG91bGQgYmUgcGFydCBvZiB0aGUgcmV2aXNp b24gZXZlbiB3aXRoIHRoZSBhYm92ZSB0ZWNobmlxdWUsIGJlY2F1c2UgaWYgYSB1c2VyIGNob29z ZXMgdG8gZXhjbHVkZSBhbiBvcHRpb25hbCBkZXBlbmRlbmN5IHdpdGhvdXQgcmVhbGl6aW5nIGEg ZGVzaXJlZCB0ZXN0IGRlcGVuZHMgb24gaXQgdGhlbiB0aGV5IHdpbGwgc2VlIHRoZSBiYWNrdHJh Y2UgaW5zdGVhZCBvZiBhIGNsZWFuIGV4cGxhbmF0aW9uICh0aGVyZSBpcyBhbiBleHBsYW5hdGlv biBhdCB0aGUgdmVyeSBiZWdpbm5pbmcgb2YgdGhlIGlucHV0LCBidXQgaXQgaXMgYnVyaWVkIGJ5 IHRoZSBiYWNrdHJhY2UpLiBBZGRpdGlvbmFsbHksIHRoZSBzZXR1aWQgcGFja2FnZXMgbmVlZCB0 byBiZSBoYW5kbGVkIGJ5IHRoZSBvcGVyYXRpbmctc3lzdGVtIGRlY2xhcmF0aW9uIG5vIG1hdHRl ciB3aGF0IHdlIGRvIGhlcmUuCgo+IEl0IHNlZW1zIGxpa2UgdGhpcyBpcyBtaXNzaW5nIGZyb20g dGhlIHBhdGNoLCB0aG91Z2ggSSBzdXNwZWN0IGl0IGlzCj4gbmVlZGVkIHRvIGJlaGF2ZSBjb3Jy ZWN0bHkgd2l0aCB0aGluZ3MgcmVseWluZyBvbiBmdXNlIQoKT29wcywgSSBtZWFudCB0byBkZWxl dGUgdGhhdCBwYXJhZ3JhcGguIEkgd3JvdGUgaXQgYmVmb3JlIGZpbmRpbmcgb3V0IHRoYXQgdGhl cmUgYXJlIHNlcGFyYXRlIGZ1c2UtMiBhbmQgZnVzZSBwYWNrYWdlcy4gVGhlIGZ1c2UtMiBwYWNr YWdlIHByb3ZpZGVzIGEgYmluYXJ5IG5hbWVkICJmdXNlcm1vdW50IiwgYW5kIHJlcHJvdGVzdCB1 c2VkIGl0IHN1Y2Nlc3NmdWxseSBvbiBteSBtYWNoaW5lIHdpdGhvdXQgdGhpcyBhZGRpdGlvbmFs IHN1YnN0aXR1dGlvbi4KCj4gVGhhbmtzIGZvciB0aGUgZGV0YWlsZWQgcmVwb3J0IC4uLiB0aGlz IG1pZ2h0IGJlIG9yIHNob3VsZCBiZSBjb3ZlcmVkIGJ5Cj4gdXBzdHJlYW0gZG9jdW1lbnRhdGlv biAuLi4gYWx0aG91Z2ggaWYgdGhlcmUgYXJlIGd1aXgtc3BlY2lmaWMgYW5nbGVzIG9uCj4gaXQs IEkgYW0gbm90IHN1cmUgd2hlcmUgdGhhdCBzaG91bGQgYmUgZG9jdW1lbnRlZC4KCkFzc3VtaW5n IHRoYXQgd2UgZ28gd2l0aCB0aGUgYWJvdmUgdGVjaG5pcXVlLCBJIHRoaW5rIHRoYXQgaXQgd291 bGQgbWFrZSBzZW5zZSB0byBtZW50aW9uIHRoZSBhYmlsaXR5IHRvIHVzZSBwYWNrYWdlIHRyYW5z Zm9ybWF0aW9uIG9wdGlvbnMgdG8gY29udHJvbCBvcHRpb25hbCBkZXBlbmRlbmNpZXMgaW4gdGhl IGRlc2NyaXB0aW9uIG9mIHRoZSByZXByb3Rlc3QgcGFja2FnZS4gSW4gZWl0aGVyIGNhc2UgSSB0 aGluayB0aGF0IHRoZSBzZXR1aWQgcmVxdWlyZW1lbnRzIHNob3VsZCBiZSBhZGRlZCB0byB0aGUg ZGVzY3JpcHRpb24uCgpJIGFwcHJlY2lhdGUgYW55IGZlZWRiYWNrIHlvdSBoYXZlIQoKUmVnYXJk cywKU2t5bGVy --b1_H20nidUO67zyVCPqN1nmMD0XJPolNiCGw3nrgPxSM Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: base64 PCFET0NUWVBFIGh0bWw+PGh0bWw+PGhlYWQ+DQogICAgPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVu dC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9VVRGLTgiLz4NCiAgPC9oZWFkPg0K ICA8Ym9keT4NCiAgICBIaSBWYWdyYW50LDxici8+DQogICAgPGJyLz4NCiAgICBUaGFua3MgZm9y IHRoZSBmZWVkYmFjayE8YnIvPg0KICAgIDxici8+DQogICAgPGRpdiBjbGFzcz0ibW96LWNpdGUt cHJlZml4Ij5PbiAzLzI1LzI0IDIzOjAyLCBWYWdyYW50IENhc2NhZGlhbg0KICAgICAgd3JvdGU6 PGJyLz4NCiAgICA8L2Rpdj4NCiAgICA8YmxvY2txdW90ZSB0eXBlPSJjaXRlIiBjaXRlPSJtaWQ6 ODdhNW1sdHRyaC5mc2ZAd2lyZWZyYW1lIj48c3BhbiBzdHlsZT0id2hpdGUtc3BhY2U6IHByZS13 cmFwIj4NCjwvc3Bhbj4NCiAgICAgIDxwcmUgY2xhc3M9Im1vei1xdW90ZS1wcmUiIHdyYXA9IiI+ TXkgdW5kZXJzdGFuZGluZyBpcyB0aGF0IHByb3BhZ2F0ZWQgaW5wdXRzIGFyZSBnZW5lcmFsbHkg dG8gYmUgdXNlZCB2ZXJ5DQpzcGFyaW5nbHksIGFzIHRoZXkgbWFrZSBpdCB2ZXJ5IGRpZmZpY3Vs dCB0byBpbnN0YWxsIG11bHRpcGxlIHBhY2thZ2VzDQp0aGF0IG1pZ2h0IGNvbnRhaW4gY29uZmxp Y3RpbmcgcHJvcGFnYXRlZCBpbnB1dHMuDQo8L3ByZT4NCiAgICA8L2Jsb2NrcXVvdGU+DQogICAg RmFpciBlbm91Z2guIEkgaGF2ZW4mIzM5O3QgcGVyc29uYWxseSBydW4gaW50byB0aGlzIHBhaW4g cG9pbnQsIGJ1dA0KICAgIHRoYXQmIzM5O3MgcHJvYmFibHkgYmVjYXVzZSBwZW9wbGUgYXJlIHVz aW5nIHRoZW0gc3BhcmluZ2x5LiA9KTxici8+DQogICAgPHNwYW4gc3R5bGU9IndoaXRlLXNwYWNl OiBwcmUtd3JhcCI+DQo8L3NwYW4+DQogICAgPGJsb2NrcXVvdGUgdHlwZT0iY2l0ZSIgY2l0ZT0i bWlkOjg3YTVtbHR0cmguZnNmQHdpcmVmcmFtZSI+DQogICAgICA8cHJlIGNsYXNzPSJtb3otcXVv dGUtcHJlIiB3cmFwPSIiPk1vc3Qgb2YgdGhlIHByb3Bvc2VkIGlucHV0cyBhcmUgbGFyZ2VseSBv cHRpb25hbCBkZXBlbmRlbmNpZXMgb2YNCnJlcHJvdGVzdCwgd2hpY2ggaW4gZ3VpeCB0ZXJtcywg Z2VuZXJhbGx5IHRoZSBlbmQtdXNlciBpcyBleHBlY3RlZCB0bw0KaW5zdGFsbCB0aGUgYWRkaXRp b25hbCBwYWNrYWdlcyB0byBlbmFibGUgZGVzaXJlZCBvcHRpb25hbCBmZWF0dXJlcy4NCjwvcHJl Pg0KICAgIDwvYmxvY2txdW90ZT4NCiAgICA8c3BhbiBzdHlsZT0id2hpdGUtc3BhY2U6IHByZS13 cmFwIj5JIHJlbWVtYmVyIHJ1bm5pbmcgaW50byB0aGlzIGJlZm9yZSBhbmQgaXQgaGFzIGJlZW4g YSBwYWluIHBvaW50IGZvciBtZSBiZWNhdXNlIGl0IGlzIG5vdCBjbGVhciB3aGF0IHRoZSBvcHRp b25hbCBkZXBlbmRlbmNpZXMgYXJlLiBJIGtub3cgdGhhdCBwYWNrYWdlIG1hbmFnZXJzIGxpa2Ug YXB0IGhhdmUgdGhlIGFiaWxpdHkgdG8gcmVjb21tZW5kIHBhY2thZ2VzIHdoaWNoIGFyZSBvcHRp b25hbCBkZXBlbmRlbmNpZXMsIGJ1dCB0aGUgcHJvYmxlbSB0aGF0IEkgcnVuIGludG8gaXMgdGhh dCBpZiBJJiMzOTttIGxvb2tpbmcgYXQgYSBjb25maWd1cmF0aW9uIChtYW5pZmVzdCwgb3BlcmF0 aW5nLXN5c3RlbSBzcGVjLCBldGMpIGl0JiMzOTtzIG5vdCBjbGVhciB0byBtZSB3aGljaCBpdGVt cyBhcmUgaW5jbHVkZWQgYXMgJiMzNDtpbnZpc2libGUgZGVwZW5kZW5jaWVzJiMzNDsgb2Ygb3Ro ZXIgcGFja2FnZXMgYW5kIHdoaWNoIG9uZXMgYXJlIGJlaW5nIGluY2x1ZGVkIGZvciB0aGVpciBv d24gc2FrZS4gU28gSSB3b3VsZCBsaWtlIHRvIHByb3Bvc2UgdXNpbmcgYSBkaWZmZXJlbnQgdGVj aG5pcXVlIHdoaWNoIEkgYmVsaWV2ZSBhZGRyZXNzZXMgYm90aCBvZiBvdXIgY29uY2VybnMuDQog DQpCYXNpY2FsbHksIHRoZSB0ZWNobmlxdWUgaXMgdG8gZW1iZWQgYWJzb2x1dGUgcGF0aHMgaW50 byB0aGUgcHl0aG9uIGNvZGUuIEZvciBleGFtcGxlLCBJIHRyaWVkIGFkZGluZyB0aGlzIHBoYXNl IHRvIHJlcHJvdGVzdCAoaXQgd291bGQgbmVlZCBzb21lIHBvbGlzaGluZyBiZWZvcmUgYWN0dWFs IHN1Ym1pc3Npb24sIGZvciByZWFzb25zIG1lbnRpb25lZCBsYXRlciBpbiB0aGlzIGVtYWlsKToN Cg0KYGBgc2NoZW1lDQooYWRkLWFmdGVyICYjMzk7YWRqdXN0LWxvY2FsZXMgJiMzOTtzZXQtdGFz a3NldC1wYXRoDQogIChsYW1iZGEgXw0KICAgIChkZWZpbmUgKHF1b3RlLXN1cnJvdW5kIHN0cikN CiAgICAgIChzdHJpbmctYXBwZW5kICYjMzQ7JiMzOTsmIzM0OyBzdHIgJiMzNDsmIzM5OyYjMzQ7 KSkNCg0KICAgIChsZXQgKCh1dGlsLWxpbnV4ICMkKHRoaXMtcGFja2FnZS1pbnB1dCAmIzM0O3V0 aWwtbGludXgmIzM0OykpKQ0KICAgICAgKHdoZW4gdXRpbC1saW51eA0KICAgICAgICAoc3Vic3Rp dHV0ZSogJiMzNDtyZXByb3Rlc3QvYnVpbGQucHkmIzM0Ow0KICAgICAgICAgICgoJiMzNDsmIzM5 O3Rhc2tzZXQmIzM5OyYjMzQ7KQ0KICAgICAgICAgICAocXVvdGUtc3Vycm91bmQgKHN0cmluZy1h cHBlbmQgdXRpbC1saW51eCAmIzM0Oy9iaW4vdGFza3NldCYjMzQ7KSkpDQogICAgICAgICAgKCgm IzM0O3NldGFyY2gmIzM0OykNCiAgICAgICAgICAgKHN0cmluZy1hcHBlbmQgdXRpbC1saW51eCAm IzM0Oy9iaW4vc2V0YXJjaCYjMzQ7KSkpKSkpKQ0KYGBgDQoNClRoaXMgbGV0IG1lIHJ1biB0aGUg bnVtX2NwdXMgdGVzdCBmcm9tIGEgcHVyZSBzaGVsbCB3aXRob3V0IGFkZGluZyB1dGlsLWxpbnV4 IHRvIG15IGV4cGxpY2l0IGlucHV0cy4gUnVubmluZyB0YXNrc2V0IGZyb20gdGhlIHNoZWxsIHJl c3VsdGVkIGluIGEgJiMzNDtjb21tYW5kIG5vdCBmb3VuZCYjMzQ7IGVycm9yIHNvIHRoZSBwYWNr YWdlIHdhcyBub3QgYWRkZWQgdG8gdGhlIHByb2ZpbGUuIEFkZGl0aW9uYWxseSwgSSBidWlsdCBh IGBndWl4IHBhY2tgIHdpdGggb25seSByZXByb3Rlc3QgYXMgYW4gaW5wdXQsIGFuZCB1dGlsLWxp bnV4IHdhcyBwcmVzZW50LiBJIGJ1aWx0IGEgcGFjayB3aXRoIHRoZSBjdXJyZW50IHZlcnNpb24g b2YgdGhlIHBhY2thZ2UgYW5kIHV0aWwtbGludXggd2FzIG5vdCBwcmVzZW50LiBTbyBpdCBzZWVt cyB0aGF0IGV2ZW4gdGhvdWdoIEd1aXggc2VlcyB0aGUgaGFzaCBhbmQgaXMgYXdhcmUgb2YgaXQg YXMgYSBydW4tdGltZSBkZXBlbmRlbmN5LCBpdCBkb2VzIG5vdCBhdXRvbWF0aWNhbGx5IGFkZCB0 aGUgcGFja2FnZSB0byB0aGUgcHJvZmlsZSwgYWRkcmVzc2luZyBib3RoIG9mIG91ciBjb25jZXJu cy4NCg0KSWYgYSB1c2VyIGRvZXMgbm90IHdhbnQgYW4gb3B0aW9uYWwgZGVwZW5kZW5jeSB0aGVu IHRoZXkgY2FuIGRlbGV0ZSB0aGUgaW5wdXQgbGlrZSBzbyAob3IgcmVwbGFjZSBpdCBmb3IgYSBk aWZmZXJlbnQgdmVyc2lvbiwgaWYgc28gZGVzaXJlZCk6DQoNCmBgYHNjaGVtZQ0KKHVzZS1tb2R1 bGVzIChndWl4IHBhY2thZ2VzKSAoZ251IHBhY2thZ2VzIGRpZmZvc2NvcGUpKQ0KDQoocGFja2Fn ZQ0KCShpbmhlcml0IHJlcHJvdGVzdCkNCgkoaW5wdXRzIChtb2RpZnktaW5wdXRzIChwYWNrYWdl LWlucHV0cyByZXByb3Rlc3QpDQoJICAgICAgICAgICAgICAgICAgICAgICAoZGVsZXRlICYjMzQ7 dXRpbC1saW51eCYjMzQ7KSkpKQ0KYGBgDQoNClVuZm9ydHVuYXRlbHkgSSBkbyBub3Qgc2VlIGEg d2F5IHRvIHJlbW92ZSBhbiBpbnB1dCB1c2luZyB0aGUgd2l0aC1pbnB1dCBvcHRpb24gaW4gb3B0 aW9ucy0mZ3Q7dHJhbnNmb3JtYXRpb24gcHJvY2VkdXJlIG9yIHRoZSBhbmFsb2dvdXMgLS13aXRo LWlucHV0IGNvbW1hbmQtbGluZSBmbGFnLiBJZiB3ZSBkbyBnbyB0aGlzIHJvdXRlIHRoZW4gSSB3 aWxsIGxvb2sgYXQgYWRkaW5nICYjMzQ7I2YmIzM0OyBhcyBhIHZhbGlkIHZhbHVlIGZvciB0aGUg d2l0aC1pbnB1dCB0cmFuc2Zvcm1hdGlvbiB0byBzdXBwb3J0IHRoaXMgY2FzZSwgYnV0IHRoYXQg d2lsbCBiZSBoYW5kbGVkIGluIGEgc2VwYXJhdGUgaXNzdWUuDQoNCjwvc3Bhbj48c3BhbiBzdHls ZT0id2hpdGUtc3BhY2U6IHByZS13cmFwIj5XZSBjb3VsZCBkZWZhdWx0IHRvIG5vdCBpbmNsdWRp bmcgb3B0aW9uYWwgZGVwZW5kZW5jaWVzLCBidXQgSSBkb24mIzM5O3QgdGhpbmsgdGhhdCB0aGlz IHdvdWxkIGJlIHRoZSBtb3N0IHVzZWZ1bCB0aGluZyB0byBkby4gSSB3b3VsZCBleHBlY3QgdGhh dCBtb3N0IHBlb3BsZSB3YW50IGFsbCB0ZXN0cyB0byB3b3JrIGFuZCB0aGF0IHJlbW92aW5nIHRo ZSBpbnB1dHMgaXMgYSBuaWNoZSBpbnRlcmVzdC4gSXQgc2VlbXMgbGlrZWx5IHRoYXQgJiMzNDth bGwgb2YgdGhlIHRlc3RzIHdvcmsgb3V0IG9mIHRoZSBib3gmIzM0OyBpcyBjbG9zZXIgdG8gd2hh dCBtb3N0IHBlb3BsZSBhcmUgY3VycmVudGx5IGV4cGVyaWVuY2luZyBiZWNhdXNlIGFsbCBvZiB0 aGUgcGFja2FnZXMgd2hpY2ggSSBhZGRlZCB0byB0aGUgcHJvcGFnYXRlZCBpbnB1dHMsIHdpdGgg dGhlIGV4Y2VwdGlvbiBvZiBsaWJmYWtldGltZSBhbmQgZGlmZm9zY29wZSwgaXMgaW4gdGhlICVi YXNlLXBhY2thZ2VzIHZhcmlhYmxlIHRoYXQgR3VpeCByZWNvbW1lbmRzIHBlb3BsZSB1c2UgKGFu ZCB0aGUgJiMzNDtub3JtYWwmIzM0OyBkaWZmIGNvbW1hbmQgaXMgcHJvdmlkZWQgYnkgJWJhc2Ut cGFja2FnZXMgYXMgd2VsbCwgc28gdGhlIGxhY2sgb2YgZGlmZm9zY29wZSB3b3VsZCBub3QgY2F1 c2UgYSBwcm9ibGVtIGZvciB1c2VycyB3aXRoIHRoZSBkZWZhdWx0IGNvbmZpZ3VyYXRpb24pLiBJ ZiB3ZSBkbyBkZWNpZGUgdG8gZXhjbHVkZSBvcHRpb25hbCBkZXBlbmRlbmNpZXMgYnkgZGVmYXVs dCB0aGVuIEkgd2lsbCBsb29rIGF0IGFkZGluZyBhbiAmIzM0O2FkZC1pbnB1dCYjMzQ7IG9wdGlv biB0byB0aGUgYXZhaWxhYmxlIHRyYW5zZm9ybWF0aW9ucy48L3NwYW4+PGJyLz4NCiAgICA8c3Bh biBzdHlsZT0id2hpdGUtc3BhY2U6IHByZS13cmFwIj4NCkRvaW5nIHRoaXMgZm9yIGV2ZXJ5IGNv bW1hbmQgdXNlZCBieSByZXByb3Rlc3Qgd291bGQgcmVxdWlyZSBzb21lIHVwLWZyb250IHdvcmss IGFuZCBJJiMzOTttIG5vdCBzdXJlIGlmIGl0IHdvdWxkIGJlIHBvc3NpYmxlIHRvIHVuaXF1ZWx5 IGlkZW50aWZ5IGV2ZXJ5IGluc3RhbmNlIG9mIHRoZSBwcm9ncmFtIG5hbWVzIHdpdGggcmVndWxh ciBleHByZXNzaW9ucyBhbG9uZSAoZm9yIGV4YW1wbGUsIHRoZSBhYm92ZSBidWlsZCBwaGFzZSBy ZXBsYWNlcyBpbnN0YW5jZXMgb2Ygc2V0YXJjaCBpbiBkb2NzdHJpbmdzIHdoaWNoIGlzIHVuZGVz aXJhYmxlKS4gU28gSSBtaWdodCBlbmQgdXAgYWRkaW5nIGEgZ3VpeC1zcGVjaWZpYyBwYXRjaCB0 aGF0IGRvZXMgc29tZXRoaW5nIGxpa2Ugc3Vycm91bmQgZWFjaCBpbnN0YW5jZSBvZiB0aGUgcHJv Z3JhbSBuYW1lIHdpdGggZG91YmxlIHBlcmNlbnQgc2lnbnMgc28gdGhhdCB0aGV5IGFyZSB1bmlx dWVseSBpZGVudGlmaWFibGUgaW4gdGhlIGJ1aWxkIHBoYXNlLiBUaGlzIG1pZ2h0IGFkZCBzb21l IGFkZGl0aW9uYWwgd29yayB3aGVuIHVwZGF0aW5nIHRoZSBwYWNrYWdlLCBiZWNhdXNlIG5ldyBs aW5lcyB0aGF0IGFkZCBjb21tYW5kcyB3b3VsZCBuZWVkIHRvIGhhdmUgdGhlIGRvdWJsZSBwZXJj ZW50IHNpZ25zIGFkZGVkIGFuZCBjaGFuZ2VzIHRvIGV4aXN0aW5nIGxpbmVzIGNvdWxkIGNhdXNl IGNvbmZsaWN0cyB3aXRoIHRoZSBwYXRjaC4gQnV0IEkgdGhpbmsgdGhhdCB0aGUgbWFqb3JpdHkg b2YgdGhlIHdvcmsgd291bGQgYmUgdGhlIHVwLWZyb250IHdvcmsgd2hpY2ggSSBhbSB3aWxsaW5n IHRvIGRvLg0KDQo8L3NwYW4+DQogICAgPGJsb2NrcXVvdGUgdHlwZT0iY2l0ZSIgY2l0ZT0ibWlk Ojg3YTVtbHR0cmguZnNmQHdpcmVmcmFtZSI+DQogICAgICA8cHJlIGNsYXNzPSJtb3otcXVvdGUt cHJlIiB3cmFwPSIiPkl0IG1pZ2h0IG1ha2Ugc2Vuc2UgdG8gbGlzdCB0aGUgYWRkaXRpb25hbCBk ZXBlbmRlbmNpZXMgaW4gdGhlDQpkZXNjcmlwdGlvbiBkZXNjcmliaW5nIHdoYXQgZmVhdHVyZXMg ZWFjaCBlbmFibGVzPzwvcHJlPg0KICAgIDwvYmxvY2txdW90ZT4NCiAgICBJIHRoaW5rIHRoaXMg aXMgYSB1c2VmdWwgYWRkaXRpb24gZXZlbiB3aXRoIHRoZSBhYm92ZSB0ZWNobmlxdWUsIHNvDQog ICAgdGhhdCB1c2VycyBoYXZlIGF3YXJlbmVzcyBhYm91dCB0aGUgb3B0aW9uYWwgZGVwZW5kZW5j aWVzICZhbXA7IGhvdw0KICAgIHRoZXkgY2FuIG1hbmlwdWxhdGUgdGhlbS48c3BhbiBzdHlsZT0i d2hpdGUtc3BhY2U6IHByZS13cmFwIj4NCjwvc3Bhbj48c3BhbiBzdHlsZT0id2hpdGUtc3BhY2U6 IHByZS13cmFwIj4NCjwvc3Bhbj48c3BhbiBzdHlsZT0id2hpdGUtc3BhY2U6IHByZS13cmFwIj4N Cjwvc3Bhbj4NCiAgICA8YmxvY2txdW90ZSB0eXBlPSJjaXRlIiBjaXRlPSJtaWQ6ODdhNW1sdHRy aC5mc2ZAd2lyZWZyYW1lIj4NCiAgICAgIDxwcmUgY2xhc3M9Im1vei1xdW90ZS1wcmUiIHdyYXA9 IiI+SWYgcmVwcm90ZXN0IGJlaGF2ZXMgcXVpdGUgYmFkbHkgd2l0aG91dCBzb21lIG9mIHRoZSBp biB0aGUgd29ya2luZw0KZW52aXJvbm1lbnQsIHN1Y2ggYXMgc3BpdHRpbmcgb3V0IGFuIHVnbHkg YmFja3RyYWNlIHJhdGhlciB0aGFuDQpyZXBvcnRpbmcgd2hhdCBpcyBtaXNzaW5nLCBpdCBzaG91 bGQgcHJvYmFibHkgYmUgZml4ZWQgdXBzdHJlYW0gKGFuZA0KcG9zc2libHkgcGF0Y2hlZCBpbiBn dWl4IGluIHRoZSBtZWFudGltZSkuPC9wcmU+DQogICAgPC9ibG9ja3F1b3RlPg0KICAgIEkgYWdy ZWUgdGhhdCB0aGlzIHNob3VsZCBiZSBwYXJ0IG9mIHRoZSByZXZpc2lvbiBldmVuIHdpdGggdGhl IGFib3ZlDQogICAgdGVjaG5pcXVlLCBiZWNhdXNlIGlmIGEgdXNlciBjaG9vc2VzIHRvIGV4Y2x1 ZGUgYW4gb3B0aW9uYWwNCiAgICBkZXBlbmRlbmN5IHdpdGhvdXQgcmVhbGl6aW5nIGEgZGVzaXJl ZCB0ZXN0IGRlcGVuZHMgb24gaXQgdGhlbiB0aGV5DQogICAgd2lsbCBzZWUgdGhlIGJhY2t0cmFj ZSBpbnN0ZWFkIG9mIGEgY2xlYW4gZXhwbGFuYXRpb24gKHRoZXJlIGlzIGFuDQogICAgZXhwbGFu YXRpb24gYXQgdGhlIHZlcnkgYmVnaW5uaW5nIG9mIHRoZSBpbnB1dCwgYnV0IGl0IGlzIGJ1cmll ZCBieQ0KICAgIHRoZSBiYWNrdHJhY2UpLiBBZGRpdGlvbmFsbHksIHRoZSBzZXR1aWQgcGFja2Fn ZXMgbmVlZCB0byBiZSBoYW5kbGVkDQogICAgYnkgdGhlIG9wZXJhdGluZy1zeXN0ZW0gZGVjbGFy YXRpb24gbm8gbWF0dGVyIHdoYXQgd2UgZG8gaGVyZS48YnIvPg0KICAgIDxibG9ja3F1b3RlIHR5 cGU9ImNpdGUiIGNpdGU9Im1pZDo4N2E1bWx0dHJoLmZzZkB3aXJlZnJhbWUiPjxzcGFuIHN0eWxl PSJ3aGl0ZS1zcGFjZTogcHJlLXdyYXAiPg0KPC9zcGFuPjxzcGFuIHN0eWxlPSJ3aGl0ZS1zcGFj ZTogcHJlLXdyYXAiPg0KPC9zcGFuPg0KICAgICAgPHByZSBjbGFzcz0ibW96LXF1b3RlLXByZSIg d3JhcD0iIj5JdCBzZWVtcyBsaWtlIHRoaXMgaXMgbWlzc2luZyBmcm9tIHRoZSBwYXRjaCwgdGhv dWdoIEkgc3VzcGVjdCBpdCBpcw0KbmVlZGVkIHRvIGJlaGF2ZSBjb3JyZWN0bHkgd2l0aCB0aGlu Z3MgcmVseWluZyBvbiBmdXNlITwvcHJlPg0KICAgIDwvYmxvY2txdW90ZT4NCiAgICBPb3BzLCBJ IG1lYW50IHRvIGRlbGV0ZSB0aGF0IHBhcmFncmFwaC4gSSB3cm90ZSBpdCBiZWZvcmUgZmluZGlu Zw0KICAgIG91dCB0aGF0IHRoZXJlIGFyZSBzZXBhcmF0ZSBmdXNlLTIgYW5kIGZ1c2UgcGFja2Fn ZXMuIFRoZSBmdXNlLTINCiAgICBwYWNrYWdlIHByb3ZpZGVzIGEgYmluYXJ5IG5hbWVkICYjMzQ7 ZnVzZXJtb3VudCYjMzQ7LCBhbmQgcmVwcm90ZXN0IHVzZWQgaXQNCiAgICBzdWNjZXNzZnVsbHkg b24gbXkgbWFjaGluZSB3aXRob3V0IHRoaXMgYWRkaXRpb25hbCBzdWJzdGl0dXRpb24uPHNwYW4g c3R5bGU9IndoaXRlLXNwYWNlOiBwcmUtd3JhcCI+DQo8L3NwYW4+DQogICAgPGJsb2NrcXVvdGUg dHlwZT0iY2l0ZSIgY2l0ZT0ibWlkOjg3YTVtbHR0cmguZnNmQHdpcmVmcmFtZSI+PHNwYW4gc3R5 bGU9IndoaXRlLXNwYWNlOiBwcmUtd3JhcCI+DQo8L3NwYW4+DQogICAgICA8cHJlIGNsYXNzPSJt b3otcXVvdGUtcHJlIiB3cmFwPSIiPlRoYW5rcyBmb3IgdGhlIGRldGFpbGVkIHJlcG9ydCAuLi4g dGhpcyBtaWdodCBiZSBvciBzaG91bGQgYmUgY292ZXJlZCBieQ0KdXBzdHJlYW0gZG9jdW1lbnRh dGlvbiAuLi4gYWx0aG91Z2ggaWYgdGhlcmUgYXJlIGd1aXgtc3BlY2lmaWMgYW5nbGVzIG9uDQpp dCwgSSBhbSBub3Qgc3VyZSB3aGVyZSB0aGF0IHNob3VsZCBiZSBkb2N1bWVudGVkLjwvcHJlPg0K ICAgIDwvYmxvY2txdW90ZT4NCiAgICBBc3N1bWluZyB0aGF0IHdlIGdvIHdpdGggdGhlIGFib3Zl IHRlY2huaXF1ZSwgSSB0aGluayB0aGF0IGl0IHdvdWxkDQogICAgbWFrZSBzZW5zZSB0byBtZW50 aW9uIHRoZSBhYmlsaXR5IHRvIHVzZSBwYWNrYWdlIHRyYW5zZm9ybWF0aW9uDQogICAgb3B0aW9u cyB0byBjb250cm9sIG9wdGlvbmFsIGRlcGVuZGVuY2llcyBpbiB0aGUgZGVzY3JpcHRpb24gb2Yg dGhlDQogICAgcmVwcm90ZXN0IHBhY2thZ2UuIEluIGVpdGhlciBjYXNlIEkgdGhpbmsgdGhhdCB0 aGUgc2V0dWlkDQogICAgcmVxdWlyZW1lbnRzIHNob3VsZCBiZSBhZGRlZCB0byB0aGUgZGVzY3Jp cHRpb24uPGJyLz4NCiAgICA8YnIvPg0KICAgIEkgYXBwcmVjaWF0ZSBhbnkgZmVlZGJhY2sgeW91 IGhhdmUhPGJyLz4NCiAgICA8YnIvPg0KICAgIFJlZ2FyZHMsPGJyLz4NCiAgICBTa3lsZXIgPGJy Lz4NCiAgDQoNCjwvYm9keT48L2h0bWw+ --b1_H20nidUO67zyVCPqN1nmMD0XJPolNiCGw3nrgPxSM-- From debbugs-submit-bounces@debbugs.gnu.org Tue Mar 26 16:06:54 2024 Received: (at 70001) by debbugs.gnu.org; 26 Mar 2024 20:06:54 +0000 Received: from localhost ([127.0.0.1]:35148 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rpD4P-0004Tg-SI for submit@debbugs.gnu.org; Tue, 26 Mar 2024 16:06:54 -0400 Received: from mail-40131.protonmail.ch ([185.70.40.131]:21577) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rpD4N-0004T1-W3 for 70001@debbugs.gnu.org; Tue, 26 Mar 2024 16:06:52 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com; s=protonmail3; t=1711483605; x=1711742805; bh=Yk9RfNDgIm782LHmIhixmS8fXl9pTReum09Y3iTMprw=; h=Date:To:From:Subject:Message-ID:In-Reply-To:References: Feedback-ID:From:To:Cc:Date:Subject:Reply-To:Feedback-ID: Message-ID:BIMI-Selector; b=Dwr3agOulsZ/0Y0DwalKQzhCb+EnzEYmkPuF3kNzOBZ/Jl9UDaIk5AvezmIO1Armr zZ9Hr8GvFHl/7GEF1iuCgYLAO7gKp2ghjtuoz/qFT6VjFmmXw70VzjxoNCvAF88pwf jMwFHSfHMFf+qDvkAOVr6pRtBw4ENLZvbKIT5AEP5vuRnTQNUbCWJ4UzMkkbcYZLWd PXWOw4ehL+mAMMw17Ztj/nrZK4i7Pg08hNUHe1gL/+Cp14uXwHr/wA+B7Jfbf24bRL Ui1JOXioIyhy19uikCkRd5z4AekfLU9tocstQYImZDbRrE7YyeiTQk/dS4CeXBXVnS zry7/XZhIBLJA== Date: Tue, 26 Mar 2024 20:06:41 +0000 To: Vagrant Cascadian , 70001@debbugs.gnu.org From: Skyler Ferris Subject: Re: [bug#70001] [PATCH] gnu: reprotest: Add missing propogated inputs Message-ID: <79373a3d-4e2c-44b0-9593-97374eaba7fa@protonmail.com> In-Reply-To: <9c3327ac-c6a3-4324-b832-7b51463ae13e@protonmail.com> References: <7893aa6e-886b-4e74-999f-886a8ea0166b@protonmail.com> <87a5mlttrh.fsf@wireframe> <9c3327ac-c6a3-4324-b832-7b51463ae13e@protonmail.com> Feedback-ID: 40635331:user:proton MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 70001 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 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: -1.0 (-) Hi again, sorry, it seems like some of my paragraphs and code blocks got=20 squashed into one giant paragraph somehow. I'm going to try this again,=20 hopefully it works this time. This is the text beneath the "Most of the=20 proposed inputs..." quote: I remember running into this before and it has been a pain point for me=20 because it is not clear what the optional dependencies are. I know that=20 package managers like apt have the ability to recommend packages which=20 are optional dependencies, but the problem that I run into is that if=20 I'm looking at a configuration (manifest, operating-system spec, etc)=20 it's not clear to me which items are included as "invisible=20 dependencies" of other packages and which ones are being included for=20 their own sake. So I would like to propose using a different technique=20 which I believe addresses both of our concerns. Basically, the technique is to embed absolute paths into the python=20 code. For example, I tried adding this phase to reprotest (it would need=20 some polishing before actual submission, for reasons mentioned later in=20 this email): ```scheme (add-after 'adjust-locales 'set-taskset-path =C2=A0 (lambda _ =C2=A0=C2=A0=C2=A0 (define (quote-surround str) =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (string-append "'" str "'")) =C2=A0=C2=A0=C2=A0 (let ((util-linux #$(this-package-input "util-linux"))) =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (when util-linux =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (substitute* "reprotest/build.p= y" =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (("'taskset'") =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (quote-surrou= nd (string-append util-linux "/bin/taskset"))) =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (("setarch") =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (string-appen= d util-linux "/bin/setarch"))))))) ``` This let me run the num_cpus test from a pure shell without adding=20 util-linux to my explicit inputs. Running taskset from the shell=20 resulted in a "command not found" error so the package was not added to=20 the profile. Additionally, I built a `guix pack` with only reprotest as=20 an input, and util-linux was present. I built a pack with the current=20 version of the package and util-linux was not present. So it seems that=20 even though Guix sees the hash and is aware of it as a run-time=20 dependency, it does not automatically add the package to the profile,=20 addressing both of our concerns. If a user does not want an optional dependency then they can delete the=20 input like so (or replace it for a different version, if so desired): ```scheme (use-modules (guix packages) (gnu packages diffoscope)) (package =C2=A0=C2=A0 =C2=A0(inherit reprotest) =C2=A0=C2=A0 =C2=A0(inputs (modify-inputs (package-inputs reprotest) =C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 (delete "util-linux")))) ``` Unfortunately I do not see a way to remove an input using the with-input=20 option in options->transformation procedure or the analogous=20 --with-input command-line flag. If we do go this route then I will look=20 at adding "#f" as a valid value for the with-input transformation to=20 support this case, but that will be handled in a separate issue. We could default to not including optional dependencies, but I don't=20 think that this would be the most useful thing to do. I would expect=20 that most people want all tests to work and that removing the inputs is=20 a niche interest. It seems likely that "all of the tests work out of the=20 box" is closer to what most people are currently experiencing because=20 all of the packages which I added to the propagated inputs, with the=20 exception of libfaketime and diffoscope, is in the %base-packages=20 variable that Guix recommends people use (and the "normal" diff command=20 is provided by %base-packages as well, so the lack of diffoscope would=20 not cause a problem for users with the default configuration). If we do=20 decide to exclude optional dependencies by default then I will look at=20 adding an "add-input" option to the available transformations.