From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Stephen Leake Newsgroups: gmane.emacs.devel Subject: policy discussion on bundling ELPA packages in the emacs tarball - take 2 Date: Fri, 29 Jan 2021 11:32:34 -0800 Message-ID: <86tuqz35f1.fsf@stephe-leake.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="21992"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (windows-nt) To: emacs-devel Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Fri Jan 29 20:34:01 2021 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1l5ZWr-0005br-0N for ged-emacs-devel@m.gmane-mx.org; Fri, 29 Jan 2021 20:34:01 +0100 Original-Received: from localhost ([::1]:48638 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1l5ZWq-0002lA-3J for ged-emacs-devel@m.gmane-mx.org; Fri, 29 Jan 2021 14:34:00 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:41998) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1l5ZVf-0002HQ-5h for emacs-devel@gnu.org; Fri, 29 Jan 2021 14:32:48 -0500 Original-Received: from gateway22.websitewelcome.com ([192.185.46.152]:17686) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1l5ZVb-0000Jg-N0 for emacs-devel@gnu.org; Fri, 29 Jan 2021 14:32:46 -0500 Original-Received: from cm12.websitewelcome.com (cm12.websitewelcome.com [100.42.49.8]) by gateway22.websitewelcome.com (Postfix) with ESMTP id 3D09811912 for ; Fri, 29 Jan 2021 13:32:39 -0600 (CST) Original-Received: from host2007.hostmonster.com ([67.20.76.71]) by cmsmtp with SMTP id 5ZVWlFkUSiQiZ5ZVXljE9B; Fri, 29 Jan 2021 13:32:39 -0600 X-Authority-Reason: nr=8 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=stephe-leake.org; s=default; h=Content-Type:MIME-Version:Message-ID:Date: Subject:To:From:Sender:Reply-To:Cc:Content-Transfer-Encoding:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:In-Reply-To:References:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=vKYbXtIZP6rwgr/BkKwzdETgL6Y+BS9bVKKbxHUrYF8=; b=YpvTtLdxUrZw2UKRT1vtMEbJ2F ILTKaGk+doT/0NH9jvCARil0fg4QLpzKr40dDNlh9a2WE8cOEkSppwH+Baw9cCMJoIxWG4ezz/4Op xb27HV/0vk6wQC3T8L7DRFfySXXO1nacxJUAB0XZEwIUmEJr4P+5rfYK8YmosxInPvKTDzIlV+6vi 0OxVh6ptyzeHIk6EBDjkrPg4ah9ruJCI/s9Ck2ycF7JTeP/wfEE3+LRJnh9RS9Y+G1KWQtdps/gb2 +TxSXPlY3lnq8ALB15fK8L0MsLFU71GQ7v+3CIbrXuAcB+vSqqBsuyibVp2R2ss3/Om3aiKdV4s50 jtgd0wbg==; Original-Received: from [76.77.182.20] (port=63572 helo=Takver4) by host2007.hostmonster.com with esmtpsa (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.93) (envelope-from ) id 1l5ZVW-001hOs-If for emacs-devel@gnu.org; Fri, 29 Jan 2021 12:32:38 -0700 X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - host2007.hostmonster.com X-AntiAbuse: Original Domain - gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - stephe-leake.org X-BWhitelist: no X-Source-IP: 76.77.182.20 X-Source-L: No X-Exim-ID: 1l5ZVW-001hOs-If X-Source-Sender: (Takver4) [76.77.182.20]:63572 X-Source-Auth: stephen_leake@stephe-leake.org X-Email-Count: 1 X-Source-Cap: c3RlcGhlbGU7c3RlcGhlbGU7aG9zdDIwMDcuaG9zdG1vbnN0ZXIuY29t X-Local-Domain: yes Received-SPF: neutral client-ip=192.185.46.152; envelope-from=stephen_leake@stephe-leake.org; helo=gateway22.websitewelcome.com X-Spam_score_int: -8 X-Spam_score: -0.9 X-Spam_bar: / X-Spam_report: (-0.9 / 5.0 requ) BAYES_00=-1.9, DKIM_INVALID=0.1, DKIM_SIGNED=0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_PASS=-0.001, SPF_NEUTRAL=0.779 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:263586 Archived-At: --=-=-= Content-Type: text/plain Attached is an updated version of emacs/admin/notes/elpa, describing a proposal for bundling ELPA packages in the emacs distribution. I believe I have included all the recent discussions. I think I figured out a way to resolve the submodles vs worktrees dilemma; each emacs developer can choose. If they don't execute any submodule commands, they can use worktrees. If we can reach consensus on this, the next step would be to create a feature branch and edit the code to implement this, then do a practice release with that branch. -- -- Stephe --=-=-= Content-Type: application/octet-stream Content-Disposition: attachment; filename=elpa Content-Transfer-Encoding: base64 Tk9URVMgT04gVEhFIEVNQUNTIFBBQ0tBR0UgQVJDSElWRQoKVGhlIEdOVSBFbWFjcyBwYWNrYWdl IGFyY2hpdmUsIGF0IGVscGEuZ251Lm9yZywgaXMgbWFuYWdlZCB1c2luZyBhIEdpdApyZXBvc2l0 b3J5IG5hbWVkICJlbHBhIiwgaG9zdGVkIG9uIFNhdmFubmFoLiAgVG8gY2hlY2sgaXQgb3V0OgoK ICBnaXQgY2xvbmUgZ2l0Oi8vZ2l0LnN2LmdudS5vcmcvZW1hY3MvZWxwYQogIGNkIGVscGEKICBt YWtlIHNldHVwCgpUaGF0IGxlYXZlcyB0aGUgZWxwYS9wYWNrYWdlcyBkaXJlY3RvcnkgZW1wdHk7 IHlvdSBtdXN0IGNoZWNrIG91dCB0aGUKb25lcyB5b3Ugd2FudC4KCklmIHlvdSB3aXNoIHRvIGNo ZWNrIG91dCBhbGwgdGhlIHBhY2thZ2VzIGludG8gdGhlIHBhY2thZ2VzIGRpcmVjdG9yeSwKeW91 IGNhbiBydW4gdGhlIGNvbW1hbmQ6CgogICBtYWtlIHdvcmt0cmVlcwoKWW91IGNhbiBjaGVjayBv dXQgYSBzcGVjaWZpYyBwYWNrYWdlIDxwa2duYW1lPiBpbnRvIHRoZSBwYWNrYWdlcwpkaXJlY3Rv cnkgd2l0aDoKCiAgIG1ha2UgcGFja2FnZXMvPHBrZ25hbWU+CgoKQ2hhbmdlcyB0byB0aGlzIHJl cG9zaXRvcnkgcHJvcGFnYXRlIHRvIGVscGEuZ251Lm9yZyB2aWEgYQoiZGVwbG95bWVudCIgc2Ny aXB0IHJ1biBkYWlseS4gIFRoaXMgc2NyaXB0IGdlbmVyYXRlcyB0aGUgY29udGVudAp2aXNpYmxl IGF0IGh0dHBzOi8vZWxwYS5nbnUub3JnL3BhY2thZ2VzLgoKQSBuZXcgcGFja2FnZSBpcyByZWxl YXNlZCBhcyBzb29uIGFzIHRoZSAidmVyc2lvbiBudW1iZXIiIG9mIHRoYXQKcGFja2FnZSBpcyBj aGFuZ2VkLiAgU28geW91IGNhbiB1c2UgJ2VscGEnIHRvIHdvcmsgb24gYSBwYWNrYWdlCndpdGhv dXQgZmVhciBvZiByZWxlYXNpbmcgdGhvc2UgY2hhbmdlcyBwcmVtYXR1cmVseS4gIEFuZCBvbmNl IHRoZQpjb2RlIGlzIHJlYWR5LCBqdXN0IGJ1bXAgdGhlIHZlcnNpb24gbnVtYmVyIHRvIG1ha2Ug YSBuZXcgcmVsZWFzZSBvZgp0aGUgcGFja2FnZS4KCkl0IGlzIGVhc3kgdG8gdXNlIHRoZSBlbHBh IGJyYW5jaCB0byBkZXBsb3kgYSAibG9jYWwiIGNvcHkgb2YgdGhlCnBhY2thZ2UgYXJjaGl2ZS4g IEZvciBkZXRhaWxzLCBzZWUgdGhlIFJFQURNRSBmaWxlIGluIHRoZSBlbHBhIGJyYW5jaC4KCgpF TFBBIFBBQ0tBR0VTIEJVTkRMRUQgSU4gVEhFIERJU1RSSUJVVElPTiBUQVJCQUxMCi0tIHVwZGF0 ZWQgMjkgSmFuIDIwMjEKCldoeSBCdW5kbGU/CgogICAgLSBUbyBwcm92aWRlIGJhY2t3YXJkIGNv bXBhdGliaWxpdHkgZm9yIHVzZXJzIHdoaWxlIGFsbG93aW5nIG1vcmUKICAgICAgZmxleGlibGUg cmVsZWFzZXMsIGFuZCBtb3JlIGNvbnZlbmllbnQgbWFpbnRlbmFuY2UuCgogICAgICAtIGFkYS1t b2RlIHdhcyBvcmlnaW5hbGx5IGluY2x1ZGVkIGluIHRoZSBlbWFjcyB0YXJiYWxsLCBidXQgd2Fz CiAgICAgICAgcmVtb3ZlZCB3aGVuIHRoZSBFTFBBIHZlcnNpb24gd2FzIGNhcGFibGUgZW5vdWdo LiBTb21lIHVzZXJzCiAgICAgICAgY29tcGxhaW5lZDsgYnVuZGxpbmcgYWRhLW1vZGUgd291bGQg KGFsbW9zdCkgcmVzdG9yZSB0aGUKICAgICAgICBvcmlnaW5hbCBiZWhhdmlvci4KCiAgICAgIC0g b3JnIGFuZCBvdGhlciBwYWNrYWdlcyBjdXJyZW50bHkgbWFpbnRhaW4gdHdvIGNvcGllcyBvZiB0 aGVpcgogICAgICAgIGNvZGUsIGluIGVtYWNzLmdpdCBtYXN0ZXIgYW5kIGVscGEuZ2l0LiBTeW5j aHJvbml6aW5nIHRoZW0gaXMKICAgICAgICBkaWZmaWN1bHQ7IGl0IGlzIG5vdCBhIHNpbXBsZSBg Z2l0IHB1c2gvcHVsbCcuIEJ1bmRsaW5nIHdvdWxkCiAgICAgICAgYWxsb3cgdXNpbmcgJ2dpdCBw dXNoL3B1bGwnIHRvIHN5bmNob25pemUgYmV0d2VlbiBlbWFjcy5naXQKICAgICAgICBhbmQgZWxw YS5naXQuCgogICAtIFRvIHByb3ZpZGUgYSBiZXR0ZXIgIm91dC1vZi10aGUtYm94IiBFbWFjcyBl eHBlcmllbmNlIGZvciBuZXcKICAgICBFbWFjcyB1c2VycywgYnkgYnVuZGxpbmcgbmV3IHVzZWZ1 bCBwYWNrYWdlcy4KICAgCkFmdGVyIHRoZSBpbml0aWFsIGluc3RhbGwgb2YgRW1hY3MsIHVzZXJz IGRvIG5vdCBuZWVkIHRvIGRvIGFueXRoaW5nCnNwZWNpYWwgdG8gdXBkYXRlIGEgYnVuZGxlZCBF TFBBIHBhY2thZ2U7IHRoZSBub3JtYWwgcGFja2FnZS5lbAptZWNoYW5pc21zIHJlY29nbml6ZSBh bGwgdGhlIHZlcnNpb25zIHByb3Blcmx5LgoKRW1hY3MgY29yZSBjb2RlIG1heSBub3QgZGVwZW5k IG9uIChidW5kbGVkIG9yIG5vbi1idW5kbGVkKSBHTlUgRUxQQQpwYWNrYWdlcyB1bmxlc3MgdGhl eSBhcmUgIjpjb3JlIiBwYWNrYWdlczsgaWYgdGhhdCBmdW5jdGlvbmFsaXR5IGlzCnJlcXVpcmVk LCB0aGUgcGFja2FnZSBtdXN0IGJlIG1vdmVkIHRvIEVtYWNzLgogICAKICAgLSBBIHNpbXBsZSBn aXQgY2xvbmUvY2hlY2tvdXQgb2YgZW1hY3MuZ2l0IG1hc3RlciBjcmVhdGVzIGEKICAgICB3b3Jr c3BhY2Ugd2lsbCBhbGwgY29kZSByZXF1aXJlZCB0byBidWlsZCBhbmQgcnVuIEVtYWNzLgoKICAg LSBBbnkgRUxQQSBwYWNrYWdlIGNhbiBiZSBjaGFuZ2VkIHdpdGhvdXQgYWZmZWN0aW5nIEVtYWNz IGNvcmUuCgpGb3Igc2luZ2xlIGZpbGUgcGFja2FnZXMsIHRoZSBmaWxlIGNhbiBzaW1wbHkgYmUg aW4gYm90aCBlbHBhLmdpdCBhbmQKZW1hY3MuZ2l0IG1hc3Rlci4gVGhlIHBhY2thZ2UgaXMgbWFy a2VkICI6Y29yZSIgaW4gdGhlIEVMUEEKImVscGEtcGFja2FnZXMiIGZpbGUuIEZvciBleGFtcGxl LCBlbGRvYyBhbmQgZmx5bWFrZSBhcmUgOmNvcmUKcGFja2FnZXMuIFRoaXMgbWVjaGFuaXNtIGlz IG5vdCBzdXBwb3J0ZWQgZm9yIG11bHRpLWZpbGUgcGFja2FnZXMsCmJlY2F1c2UgbWFpbnRhaW5p bmcgc3luYyBiZXR3ZWVuIHRoZSBmaWxlcyBpbiBlbWFjcy5naXQgYW5kIGVscGEuZ2l0CmlzIG1v cmUgcHJvYmxlbWF0aWMuCgpUbyBidW5kbGUgYSBtdWx0aS1maWxlIHBhY2thZ2UgaW4gRW1hY3Ms IGFkZCB0byBlbHBhLmdpdCBhIGJyYW5jaApgZW1hY3MtTk4vW1BLR05BTUVdYCB3aGljaCBob2xk cyB0aGUgdmVyc2lvbiB0byBiZSBpbmNsdWRlZCBpbiB0aGUKbmV4dCBFbWFjcyByZWxlYXNlIG9m IHZlcnNpb24gTk46CgogICAgZ2l0IGJyYW5jaCAtYyBleHRlcm5hbHMvW1BLR05BTUVdIGVtYWNz LU5OL1tQS0dOQU1FXQoKTm90ZSB0aGF0IGV2ZXJ5IEdOVSBFTFBBIHBhY2thZ2UgaGFzIGEgYnJh bmNoIGBleHRlcm5hbHMvW1BLR05BTUVdYCBpbgplbHBhLmdpdC4KCkFsc28gcHVzaCB0aGUgcmVs ZWFzZSBicmFuY2ggdG8gZW1hY3MuZ2l0OgoKICAgIGdpdCBwdXNoIFtVU0VSTkFNRV1AZ2l0LnNh dmFubmFoLmdudS5vcmc6L3Nydi9naXQvZW1hY3MuZ2l0IGVtYWNzLU5OL1tQS0dOQU1FXQoKICAg IFRoaXMgYWxsb3dzIGVtYWNzIGRldmVsb3BlcnMgdG8gY2hlY2tvdXQgdGhlIGJ1bmRsZWQgcGFj a2FnZQogICAgd2l0aG91dCByZXF1aXJpbmcgYSBzZXBhcmF0ZSBjbG9uZSBvZiBlbHBhLmdpdC4K ICAgIApJbiBlbWFjcy9tYXN0ZXIsIGFkZCBhIGdpdCBzdWJtb2R1bGUgZm9yIHRoYXQgYnJhbmNo OgoKICAgIGdpdCBzdWJtb2R1bGUgYWRkIC0tcmVmZXJlbmNlIC4gLWIgZW1hY3MtTk4vW1BLR05B TUVdIGVscGEvW1BLR05BTUVdCgpFbWFjcyBkZXZlbG9wZXJzIHNob3VsZCBhZGQgJy0tcmVjdXJz ZS1zdWJtb2R1bGVzJyB0byB0aGUgJ2dpdCBjbG9uZScKY29tbWFuZCB3aGVuIGNsb25pbmcgRW1h Y3M7IHRoYXQgd2lsbCBjaGVja291dCB0aGUgc3VibW9kdWxlcyB3aXRoIHRoZQpyZXN0IG9mIEVt YWNzLiBUbyBjaGVja291dCB0aGUgc3VibW9kdWxlcyBpbiBhbiBleGlzdGluZyBFbWFjcwpkaXJl Y3RvcnkgdHJlZToKCiAgICBnaXQgc3VibW9kdWxlIHVwZGF0ZSAtLXJlZmVyZW5jZSAuIC0taW5p dAoKICBIb3dldmVyLCB0aGUgZ2l0IHdvcmt0cmVlIG1hbnVhbCAoaHR0cHM6Ly9naXQtc2NtLmNv bS9kb2NzL2dpdC13b3JrdHJlZSksIGluCiAgdGhlIEJ1Z3Mgc2VjdGlvbiBhdCB0aGUgZW5kLCBz YXlzOgoKICAgIE11bHRpcGxlIGNoZWNrb3V0IGluIGdlbmVyYWwgaXMgc3RpbGwgZXhwZXJpbWVu dGFsLCBhbmQgdGhlCiAgICBzdXBwb3J0IGZvciBzdWJtb2R1bGVzIGlzIGluY29tcGxldGUuIEl0 IGlzIE5PVCByZWNvbW1lbmRlZCB0bwogICAgbWFrZSBtdWx0aXBsZSBjaGVja291dHMgb2YgYSBz dXBlcnByb2plY3QuCgogIGdpdCB3b3JrdHJlZXMgYWxsb3cga2VlcGluZyBzZXZlcmFsIGNoZWNr ZWQgb3V0IGRpcmVjdG9yeSB0cmVlcwogIHdoaWxlIGhhdmluZyBvbmx5IG9uZSBsb2NhbCBjb3B5 IG9mIHRoZSBlbWFjcy5naXQgcmVwb3NpdG9yeS4gU29tZQogIGVtYWNzIGRldmVsb3BlcnMgdXNl IHdvcmt0cmVlcywgZm9yIGV4YW1wbGUgdG8ga2VlcCBlbWFjcyBtYXN0ZXIsCiAgZW1hY3MtMjcs IGFuZCBzb21lIGZlYXR1cmUgYnJhbmNoZXMgY2hlY2tlZCBvdXQgYW5kIGJ1aWx0LgoKICBFbWFj cyBkZXZlbG9wZXJzIHRoYXQgd2lzaCB0byB1c2Ugd29ya3RyZWVzIG11c3Qgbm90IGV4ZWN1dGUg YW55CiAgc3VibW9kdWxlIGNvbW1hbmRzOyBkbyBub3QgaW5jbHVkZSAtLXJlY3Vyc2Utc3VibW9k dWxlcycgb24gJ2dpdAogIGNsb25lJywgZG8gbm90IGV4ZWN1dGUgJ2dpdCBzdWJtb2R1bGUgdXBk YXRlJy4gVGhlbiB0aGUgbG9jYWwgZ2l0CiAgcmVwb3NpdG9yeSBpcyBub3QgYSAic3VwZXJwcm9q ZWN0IiwgYW5kIHdvcmt0cmVlcyBjYW4gYmUgc2FmZWx5CiAgdXNlZC4KCiAgV2UgcHJvdmlkZSBh IHNjcmlwdCBgY2hlY2tvdXRfZ2l0X2VscGFfd29ya3RyZWVzLnNoJyB0aGF0IHVzZXMgJ2dpdAog IHdvcmt0cmVlJyB0byBjaGVja291dCBlYWNoIGJ1bmRsZWQgRUxQQSBicmFuY2ggaW50byBlbWFj L2VscGEsCiAgaW5zdGVhZCBvZiAnZ2l0IHN1Ym1vZHVsZSB1cGRhdGUnLgoKVGhlcmUgYXJlIGN1 cnJlbnRseSAoamFuIDIwMjApIHNvbWUgbXVsdGktZmlsZSBwYWNrYWdlcyB3aXRoIGNvZGUgaW4K Ym90aCBlbHBhLmdpdCBhbmQgZW1hY3MuZ2l0OyBvcmcsIGdudXMgZm9yIGV4YW1wbGUuIFRvIGNv bnZlcnQgdGhvc2UKcGFja2FnZXMgaW50byBidW5kbGVkIHBhY2thZ2VzLCB0aGV5IGFyZSBkZWxl dGVkIGZyb20gZW1hY3MuZ2l0LCBhbmQKdGhlbiBmb2xsb3cgdGhlIHByb2Nlc3MgYWJvdmUuIFRo ZSBuZXQgcmVzdWx0IGluIHRoZSBlbWFjcyBkaXJlY3RvcnkKdHJlZSBpcyB0aGF0IHRoZSBjb2Rl IG1vdmVzIGZyb20gZW1hY3MvbGlzcC9bUEtHTkFNRV0gdG8KZW1hY3MvZWxwYS9bUEtHTkFNRV0u CgonbWFrZScgdHJlYXRzIGVtYWNzL2VscGEgdGhlIHNhbWUgYXMgaXQgdHJlYXRzIGVtYWNzL2xp c3AgYW5kCmVtYWNzL2RvYzsgLmVsIGZpbGVzIGFyZSBieXRlIGNvbXBpbGVkLCAudGV4aSBmaWxl cyBhcmUgY29tcGlsZWQgdG8KaW5mby4gTm90ZSB0aGF0IGRvY3VtZW50YXRpb24gc291cmNlIC50 ZXhpIGZpbGVzIGZvciBidW5kbGVkIHBhY2thZ2VzCnJlc2lkZSBpbiBlbWFjcy9lbHBhL1tQS0dO QU1FXSwgbm90IGluIGVtYWNzL2RvYy4KCidtYWtlIGRpc3QnIHRyZWF0cyBlbWFjcy9lbHBhIHRo ZSBzYW1lIGFzIGl0IHRyZWF0cyBlbWFjcy9saXNwOyB0aGUKZmlsZXMgYXJlIGluY2x1ZGVkIGlu IHRoZSBkaXN0cmlidXRpb24gdGFyYmFsbC4KCidtYWtlIGluc3RhbGwnIHBsYWNlcyB0aGUgaW5z dGFsbGVkIGVtYWNzL2VscGEgZGlyZWN0b3J5IG5leHQgdG8gdGhlCmluc3RhbGxlZCBlbWFjcy9s aXNwIGRpcmVjdG9yeS4KCkF0IEVtYWNzIHN0YXJ0dXAsIHRoZSAoaW5zdGFsbGVkIG9yIHNvdXJj ZSkgYGVtYWNzL2VscGEnIGRpcmVjdG9yeSBpcwphZGRlZCB0byBgcGFja2FnZS1kaXJlY3Rvcnkt bGlzdCcsIGFuZCBpcyB0cmVhdGVkIHRoZSBzYW1lIGFzIG90aGVyCmVudHJpZXMgaW4gdGhhdCBs aXN0LiBOb3RlIHRoYXQgdGhpcyBpcyBkaWZmZXJlbnQgZnJvbSBmaWxlcyBpbgplbWFjcy9saXNw OyB0aG9zZSBhcmUgYWRkZWQgdG8gYGxvYWQtcGF0aCcuIFVzaW5nCmBwYWNrYWdlLWRpcmVjdG9y eS1saXN0JyBhbGxvd3MgdXNlcnMgdG8gZGlzYWJsZSBidW5kbGVkIHBhY2thZ2VzIHZpYQpgcGFj a2FnZS1sb2FkLWxpc3QnLgoKRW1hY3MgZGV2ZWxvcGVycyB1c2UgdGhlIHZhcmlvdXMgJ2dpdCBz dWJtb2R1bGUnIGNvbW1hbmRzIHRvIG1haW50YWluCnBhY2thZ2VzIGluIGVtYWNzL2VscGEuIEl0 IGlzIGV4cGVjdGVkIHRoYXQgdmVyeSBmZXcgZWRpdHMgd2lsbCBiZQptYWRlIHRoZXJlOyB0aGUg cHJpbWFyeSBkZXZlbG9wbWVudCBvZiBFTFBBIHBhY2thZ2VzIGlzIGRvbmUgaW4gYQpjaGVja291 dCBmcm9tIGVscGEuZ2l0LiBDaGFuZ2VzIGNhbiBiZSBtYWRlIGluIGVtYWNzL2VscGEgdG8gZml4 IGEgYnVnCmZvciBhIHJlbGVhc2UsIG9yIHRvIGNoYW5nZSBjb2RlIHRvIGJlIGNvbnNpc3RlbnQg d2l0aCBzb21lIGVtYWNzIGNvcmUKY2hhbmdlLiBTdWNoIGNoYW5nZXMgY2FuIGJlIHB1c2hlZCB0 byBlbHBhLmdpdCBhbmQgbWVyZ2VkIGludG8gdGhlCnBhY2thZ2UgZGV2ZWxvcG1lbnQgYnJhbmNo LgoKVU5SRVNPTFZFRCBJU1NVRVMvVE9ETzoKCi0gT25lIGlzc3VlIGlzIHdoZXRoZXIgdGhlIGF1 dG9sb2FkcyBvZiBidW5kbGVkIEVMUEEgcGFja2FnZXMgYXJlCiAgcHJvY2Vzc2VkIHdoZW4gd2Ug ZHVtcCBFbWFjcyAobGlrZSB3ZSBkbyBmb3IgYWxsIHRoZSBwYWNrYWdlcyB0aGF0CiAgYXJlIGlu IEVtYWNzIGNvcmUpLCBvciB3aGV0aGVyIHRoYXQncyBkb25lIGR1cmluZwogIGBwYWNrYWdlLWFj dGl2YXRlLWFsbGAuIFRoZSBiYXNlbGluZSBkZXNpZ24gZG9lcyBpdCBkdXJpbmcKICBgcGFja2Fn ZS1hY3RpdmF0ZS1hbGwnLgoKICBEb2luZyBpdCBhdCBkdW1wIHRpbWUgZ2l2ZXMgYmV0dGVyIHN0 YXJ0dXAgdGltZXMsIGF0IHRoZSBjb3N0IG9mCiAgbWFraW5nIGl0IGltcG9zc2libGUgZm9yIHRo ZSBlbmQtdXNlciB0byBwcmV2ZW50IGFjdGl2YXRpb24gb2YgYQogIHBhY2thZ2UuCgogIFVzZXJz IHdobyBjYXJlIGFib3V0IHN0YXJ0dXAgdGltZSBjYW4gZG8gdGhlaXIgb3duIGR1bXAuCgotIGVt YWNzL2VscGEvW1BLTkFNRV0gdnMgZW1hY3MvbGlzcC9bUEtHTkFNRV0KCiAgVGhlIGJhc2VsaW5l IGRlc2lnbiBrZWVwcyBhbGwgYnVuZGxlZCBFTFBBIHBhY2thZ2VzIGluCiAgZW1hY3MvZWxwYS9b UEtOQU1FXSwgYm90aCBpbiB0aGUgc291cmNlIGFuZCBpbnN0YWxsZWQgZGlyZWN0b3J5CiAgdHJl ZXMuIFRoaXMgbWFrZXMgaXQgdmVyeSBlYXN5IHRvIGRpc3Rpbmd1aXNoIGFuIGVtYWNzIGRpcmVj dG9yeQogIHRyZWUgd2l0aCBidW5kbGVkIHBhY2thZ2VzIGZyb20gb25lIHdpdGhvdXQuCgogIEFu IGFsdGVybmF0aXZlIGlzIHRvIGtlZXAgdGhlIGJ1bmRsZWQgRUxQQSBwYWNrYWdlcyBpbgogIGVt YWNzL2xpc3AvW1BLR05BTUVdOyB0aGF0IG1pbmltaXplcyB0aGUgY2hhbmdlIHdoZW4gYSBwYWNr YWdlIHRoYXQKICBpcyBjdXJyZW50IGluIGVtYWNzLmdpdCBjb252ZXJ0cyB0byBhIGJ1bmRsZWQg cGFja2FnZS4gVGhpcyB3b3VsZAogIGFsc28gbWVhbiB0aGF0IGJ1bmRsZWQgcGFja2FnZXMgYXJl IHB1dCBpbiBgbG9hZC1wYXRoJyBhdCBFbWFjcwogIHN0YXJ0dXAsIG5vdCBpbiBgcGFja2FnZS1k aXJlY3RvcnktbGlzdCcuCgotIERvZXMgdmMgc3VwcG9ydCBzdWJtb2R1bGVzIGFuZCBuZXN0ZWQg d29ya3RyZWVzPwoKLSBEZWZpbmUgYSB1c2VmdWwgZW1hY3MgbGlzcCBwcm9qZWN0IChvciBzb21l dGhpbmcgc2ltcGxlciksCiAgU28gYEMteCBwIGYnIHNlYXJjaGVzIGBsb2FkLXBhdGgnIHZpYSBg cHJvamVjdC1maW5kLWZpbGUnCgogIFRoYXQgcmVkdWNlcyB0aGUgbmVlZCB0byByZW1lbWJlciB3 aGF0IHBhY2thZ2VzIGFyZSBidW5kbGVkLCBhbmQKICB3aGVyZSB5b3UgaGF2ZSB0aGVtIGNoZWNr ZWQgb3V0LgoKLSBVcGRhdGUgdGhlIG1lY2hhbmlzbSB0aGF0IHBvcHVsYXRlcwogIGh0dHBzOi8v d3d3LmdudS5vcmcvc29mdHdhcmUvZW1hY3MvbWFudWFsL2h0bWxfbW9uby8qCgogIEZvciBleGFt cGxlLCBhZGEtbW9kZS5odG1sIHRoZXJlIHN0aWxsIHJlZmxlY3RzIHRoZSBhbmNpZW50IHZlcnNp b24KICB0aGF0IHdhcyBpbiBlbWFjcyBjb3JlLgoKLSBBdXRvbWF0aW5nIGNvbXBpbGluZyBDLCBB ZGEsIFJ1c3Qgb3Igb3RoZXIgbGFuZ3VhZ2UgY29kZSByZXF1aXJlZCBieQogIHRoZSBwYWNrYWdl LCB0byBleGVjdXRhYmxlcyBvciBtb2R1bGVzLiBUaGlzIGluY2x1ZGVzIGRlZmluaW5nCiAgc3Rh bmRhcmQgcGxhY2VzIHRvIHB1dCBleGVjdXRhYmxlcywgbW9kdWxlcywgYW5kIG90aGVyCiAgYXJp dGlmYWN0cy4gVGhpcyBpcyBtb3JlIGltcG9ydGFudCBmb3IgYnVuZGxlZCBwYWNrYWdlczsgdXNl cnMKICBleHBlY3QgRW1hY3MgdG8gImp1c3Qgd29yayIgb3V0IG9mIHRoZSBib3guCgo= --=-=-=--