From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Artur Malabarba Newsgroups: gmane.emacs.devel Subject: [PATCH] Make `package-install-from-buffer' work on directories Date: Tue, 13 Jan 2015 13:26:55 -0200 Message-ID: Reply-To: bruce.connor.am@gmail.com NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary=047d7bf0e95ed04b17050c8a40f6 X-Trace: ger.gmane.org 1421162839 10401 80.91.229.3 (13 Jan 2015 15:27:19 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 13 Jan 2015 15:27:19 +0000 (UTC) To: emacs-devel Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Jan 13 16:27:14 2015 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1YB3NB-0000qr-LR for ged-emacs-devel@m.gmane.org; Tue, 13 Jan 2015 16:27:13 +0100 Original-Received: from localhost ([::1]:39845 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YB3NB-0003Ul-5F for ged-emacs-devel@m.gmane.org; Tue, 13 Jan 2015 10:27:13 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:44757) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YB3Mv-0003UV-SZ for emacs-devel@gnu.org; Tue, 13 Jan 2015 10:26:59 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YB3Mu-0003e5-UW for emacs-devel@gnu.org; Tue, 13 Jan 2015 10:26:57 -0500 Original-Received: from mail-oi0-x232.google.com ([2607:f8b0:4003:c06::232]:61558) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YB3Mu-0003dy-Jc for emacs-devel@gnu.org; Tue, 13 Jan 2015 10:26:56 -0500 Original-Received: by mail-oi0-f50.google.com with SMTP id x69so2768893oia.9 for ; Tue, 13 Jan 2015 07:26:56 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:reply-to:sender:date:message-id:subject:from:to :content-type; bh=cTLhWZuytU5ZicCHiohTfNRYpTZEHylDpD1coAOkFF0=; b=UZ+kmHNKCLSSQu/yAU8v3GIbwGhtxu0skzg6g4OBPodQj60pfI/2F5+gihYqUEU8vh 1xpNE5INI7sAXvHuexVu0ySNgxOM9yEEsYtKUcTcoaArP3KJMpIZwjL+ftZII1f5Eo0w snsHpSv6sqGRnEZHSXukZf0z+xLbfiu00xfMaNmzLmt2Cy5k1AXFI8mTE5kpgtWoSqLa EXsuGPNfsEnYDTXECvCZ6Njuk30LAYNjuUsKi0QvIYWNZx8ixJX8jhglRDgiWrkUDdzV qqps2KZWUd5uT9dwfOdCHiDQEOg192EvK6V0t/906O9lkyFr4VP/OSXsCDTEUFYQNO9v b5gQ== X-Received: by 10.60.155.228 with SMTP id vz4mr21286012oeb.37.1421162815941; Tue, 13 Jan 2015 07:26:55 -0800 (PST) Original-Received: by 10.76.99.74 with HTTP; Tue, 13 Jan 2015 07:26:55 -0800 (PST) X-Google-Sender-Auth: Wyj7EZCIpYlYFmhE1SYHIrE4ws0 X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2607:f8b0:4003:c06::232 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 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.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:181220 Archived-At: --047d7bf0e95ed04b17050c8a40f6 Content-Type: multipart/alternative; boundary=047d7bf0e95ed04b13050c8a40f4 --047d7bf0e95ed04b13050c8a40f4 Content-Type: text/plain; charset=UTF-8 The following patch to `package.el' makes it so that `package-install-from-buffer' (and `install-file') works on dired buffers. Before, they'd just work on .el and .tar files. Since the necessary .tar file is just a tared directory, it seems natural to extend this functionality to untared directories. Package repositories should still distribute tar files, of course, but manual installation is now easier and can be done directly from a package's directory. If we're ok with this feature and if nothing's missing (does this warrant an info update?), I'll merge it in. --047d7bf0e95ed04b13050c8a40f4 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
The following patch to `package.el' makes it so t= hat `package-install-from-buffer' (and `install-file') works on dir= ed buffers. Before, they'd just work on .el and .tar files.

Sin= ce the necessary .tar file is just a tared directory, it seems natural to e= xtend this functionality to untared directories. Package repositories shoul= d still distribute tar files, of course, but manual installation is now eas= ier and can be done directly from a package's directory.

I= f we're ok with this feature and if nothing's missing (does this wa= rrant an info update?), I'll merge it in.
--047d7bf0e95ed04b13050c8a40f4-- --047d7bf0e95ed04b17050c8a40f6 Content-Type: application/octet-stream; name="install-package-from-directory.patch" Content-Disposition: attachment; filename="install-package-from-directory.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_i4vfmn6r0 RnJvbSAwMTQ4YWQ0OTllNDViOGQ4ZmI0NWVlODgzMWZiY2E1ZTliNmQ2ZDk1IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBcnR1ciBNYWxhYmFyYmEgPGJydWNlLmNvbm5vci5hbUBnbWFp bC5jb20+CkRhdGU6IE1vbiwgMTIgSmFuIDIwMTUgMjM6MjQ6MjIgLTAyMDAKU3ViamVjdDogW1BB VENIIDEvNV0gKiBlbWFjcy1saXNwL3BhY2thZ2UuZWwgKHBhY2thZ2UtLXJlYWQtcGtnLWRlc2Mp OiBOZXcKIGZ1bmN0aW9uLgoKUmVhZCBhIGBkZWZpbmUtcGFja2FnZScgZm9ybSBpbiBjdXJyZW50 IGJ1ZmZlci4gUmV0dXJuIHRoZSBwa2ctZGVzYywKd2l0aCBkZXNjLWtpbmQgc2V0IHRvIEtJTkQu Ci0tLQogbGlzcC9DaGFuZ2VMb2cgICAgICAgICAgICAgfCAgNiArKysrKysKIGxpc3AvZW1hY3Mt bGlzcC9wYWNrYWdlLmVsIHwgMjYgKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0KIDIgZmlsZXMg Y2hhbmdlZCwgMjIgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv bGlzcC9DaGFuZ2VMb2cgYi9saXNwL0NoYW5nZUxvZwppbmRleCA1OThmOWM2Li44YzczMDg3IDEw MDY0NAotLS0gYS9saXNwL0NoYW5nZUxvZworKysgYi9saXNwL0NoYW5nZUxvZwpAQCAtMSwzICsx LDkgQEAKKzIwMTUtMDEtMTMgIEFydHVyIE1hbGFiYXJiYSAgPGJydWNlLmNvbm5vci5hbUBnbWFp bC5jb20+CisKKwkqIGVtYWNzLWxpc3AvcGFja2FnZS5lbCAocGFja2FnZS0tcmVhZC1wa2ctZGVz Yyk6IE5ldworCWZ1bmN0aW9uLiBSZWFkIGEgYGRlZmluZS1wYWNrYWdlJyBmb3JtIGluIGN1cnJl bnQgYnVmZmVyLiBSZXR1cm4KKwl0aGUgcGtnLWRlc2MsIHdpdGggZGVzYy1raW5kIHNldCB0byBL SU5ELgorCiAyMDE1LTAxLTExICBNaWNoYWVsIEFsYmludXMgIDxtaWNoYWVsLmFsYmludXNAZ214 LmRlPgogCiAJKiBmaWxlcy5lbCAoZGlyZWN0b3J5LWZpbGVzLXJlY3Vyc2l2ZWx5KTogRG8gbm90 IGluY2x1ZGUKZGlmZiAtLWdpdCBhL2xpc3AvZW1hY3MtbGlzcC9wYWNrYWdlLmVsIGIvbGlzcC9l bWFjcy1saXNwL3BhY2thZ2UuZWwKaW5kZXggNzlmOGI2NS4uZjBhZjIzMyAxMDA2NDQKLS0tIGEv bGlzcC9lbWFjcy1saXNwL3BhY2thZ2UuZWwKKysrIGIvbGlzcC9lbWFjcy1saXNwL3BhY2thZ2Uu ZWwKQEAgLTEyNTIsMTkgKzEyNTIsMjUgQEAgVGhlIHJldHVybiByZXN1bHQgaXMgYSBgcGFja2Fn ZS1kZXNjJy4iCiAgICAgKHVubGVzcyB0YXItZGVzYwogICAgICAgKGVycm9yICJObyBwYWNrYWdl IGRlc2NyaXB0b3IgZmlsZSBmb3VuZCIpKQogICAgICh3aXRoLWN1cnJlbnQtYnVmZmVyICh0YXIt LWV4dHJhY3QgdGFyLWRlc2MpCi0gICAgICAoZ290by1jaGFyIChwb2ludC1taW4pKQogICAgICAg KHVud2luZC1wcm90ZWN0Ci0gICAgICAgICAgKGxldCogKChwa2ctZGVmLXBhcnNlZCAocmVhZCAo Y3VycmVudC1idWZmZXIpKSkKLSAgICAgICAgICAgICAgICAgKHBrZy1kZXNjCi0gICAgICAgICAg ICAgICAgICAoaWYgKG5vdCAoZXEgKGNhciBwa2ctZGVmLXBhcnNlZCkgJ2RlZmluZS1wYWNrYWdl KSkKLSAgICAgICAgICAgICAgICAgICAgICAoZXJyb3IgIkNhbid0IGZpbmQgZGVmaW5lLXBhY2th Z2UgaW4gJXMiCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICh0YXItaGVhZGVyLW5hbWUg dGFyLWRlc2MpKQotICAgICAgICAgICAgICAgICAgICAoYXBwbHkgIydwYWNrYWdlLWRlc2MtZnJv bS1kZWZpbmUKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIChhcHBlbmQgKGNkciBwa2ctZGVm LXBhcnNlZCkpKSkpKQotICAgICAgICAgICAgKHNldGYgKHBhY2thZ2UtZGVzYy1raW5kIHBrZy1k ZXNjKSAndGFyKQotICAgICAgICAgICAgcGtnLWRlc2MpCisgICAgICAgICAgKHBhY2thZ2UtLXJl YWQtcGtnLWRlc2MgJ3RhcikKICAgICAgICAgKGtpbGwtYnVmZmVyIChjdXJyZW50LWJ1ZmZlcikp KSkpKQogCisoZGVmdW4gcGFja2FnZS0tcmVhZC1wa2ctZGVzYyAoa2luZCkKKyAgIlJlYWQgYSBg ZGVmaW5lLXBhY2thZ2UnIGZvcm0gaW4gY3VycmVudCBidWZmZXIuCitSZXR1cm4gdGhlIHBrZy1k ZXNjLCB3aXRoIGRlc2Mta2luZCBzZXQgdG8gS0lORC4iCisgIChnb3RvLWNoYXIgKHBvaW50LW1p bikpCisgICh1bndpbmQtcHJvdGVjdAorICAgICAgKGxldCogKChwa2ctZGVmLXBhcnNlZCAocmVh ZCAoY3VycmVudC1idWZmZXIpKSkKKyAgICAgICAgICAgICAocGtnLWRlc2MKKyAgICAgICAgICAg ICAgKGlmIChub3QgKGVxIChjYXIgcGtnLWRlZi1wYXJzZWQpICdkZWZpbmUtcGFja2FnZSkpCisg ICAgICAgICAgICAgICAgICAoZXJyb3IgIkNhbid0IGZpbmQgZGVmaW5lLXBhY2thZ2UgaW4gJXMi CisgICAgICAgICAgICAgICAgICAgICAgICAgKHRhci1oZWFkZXItbmFtZSB0YXItZGVzYykpCisg ICAgICAgICAgICAgICAgKGFwcGx5ICMncGFja2FnZS1kZXNjLWZyb20tZGVmaW5lCisgICAgICAg ICAgICAgICAgICAoYXBwZW5kIChjZHIgcGtnLWRlZi1wYXJzZWQpKSkpKSkKKyAgICAgICAgKHNl dGYgKHBhY2thZ2UtZGVzYy1raW5kIHBrZy1kZXNjKSBraW5kKQorICAgICAgICBwa2ctZGVzYykp KQorCiAKIDs7OyMjI2F1dG9sb2FkCiAoZGVmdW4gcGFja2FnZS1pbnN0YWxsLWZyb20tYnVmZmVy ICgpCi0tIAoyLjEuMQoKCkZyb20gN2NlN2I1NzVhN2EzOTlmNDM2YjcyNjRmYTVjMmYxNjU0OTRl ZDc1YyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogQXJ0dXIgTWFsYWJhcmJhIDxicnVj ZS5jb25ub3IuYW1AZ21haWwuY29tPgpEYXRlOiBNb24sIDEyIEphbiAyMDE1IDIzOjI2OjU4IC0w MjAwClN1YmplY3Q6IFtQQVRDSCAyLzVdICogZW1hY3MtbGlzcC9wYWNrYWdlLmVsIChwYWNrYWdl LWRpci1pbmZvKTogTmV3IGZ1bmN0aW9uLgoKRmluZCBwYWNrYWdlIGluZm9ybWF0aW9uIGZvciBh IGRpcmVjdG9yeS4gVGhlIHJldHVybiByZXN1bHQgaXMgYQpgcGFja2FnZS1kZXNjJy4KLS0tCiBs aXNwL0NoYW5nZUxvZyAgICAgICAgICAgICB8ICAyICsrCiBsaXNwL2VtYWNzLWxpc3AvcGFja2Fn ZS5lbCB8IDE4ICsrKysrKysrKysrKysrKysrKwogMiBmaWxlcyBjaGFuZ2VkLCAyMCBpbnNlcnRp b25zKCspCgpkaWZmIC0tZ2l0IGEvbGlzcC9DaGFuZ2VMb2cgYi9saXNwL0NoYW5nZUxvZwppbmRl eCA4YzczMDg3Li5jYTJkNDI1IDEwMDY0NAotLS0gYS9saXNwL0NoYW5nZUxvZworKysgYi9saXNw L0NoYW5nZUxvZwpAQCAtMyw2ICszLDggQEAKIAkqIGVtYWNzLWxpc3AvcGFja2FnZS5lbCAocGFj a2FnZS0tcmVhZC1wa2ctZGVzYyk6IE5ldwogCWZ1bmN0aW9uLiBSZWFkIGEgYGRlZmluZS1wYWNr YWdlJyBmb3JtIGluIGN1cnJlbnQgYnVmZmVyLiBSZXR1cm4KIAl0aGUgcGtnLWRlc2MsIHdpdGgg ZGVzYy1raW5kIHNldCB0byBLSU5ELgorCShwYWNrYWdlLWRpci1pbmZvKTogTmV3IGZ1bmN0aW9u LiBGaW5kIHBhY2thZ2UgaW5mb3JtYXRpb24gZm9yIGEKKwlkaXJlY3RvcnkuIFRoZSByZXR1cm4g cmVzdWx0IGlzIGEgYHBhY2thZ2UtZGVzYycuCiAKIDIwMTUtMDEtMTEgIE1pY2hhZWwgQWxiaW51 cyAgPG1pY2hhZWwuYWxiaW51c0BnbXguZGU+CiAKZGlmZiAtLWdpdCBhL2xpc3AvZW1hY3MtbGlz cC9wYWNrYWdlLmVsIGIvbGlzcC9lbWFjcy1saXNwL3BhY2thZ2UuZWwKaW5kZXggZjBhZjIzMy4u YWYyOTJmYyAxMDA2NDQKLS0tIGEvbGlzcC9lbWFjcy1saXNwL3BhY2thZ2UuZWwKKysrIGIvbGlz cC9lbWFjcy1saXNwL3BhY2thZ2UuZWwKQEAgLTEyNTYsNiArMTI1NiwyNCBAQCBUaGUgcmV0dXJu IHJlc3VsdCBpcyBhIGBwYWNrYWdlLWRlc2MnLiIKICAgICAgICAgICAocGFja2FnZS0tcmVhZC1w a2ctZGVzYyAndGFyKQogICAgICAgICAoa2lsbC1idWZmZXIgKGN1cnJlbnQtYnVmZmVyKSkpKSkp CiAKKyhkZWZ1biBwYWNrYWdlLWRpci1pbmZvICgpCisgICJGaW5kIHBhY2thZ2UgaW5mb3JtYXRp b24gZm9yIGEgZGlyZWN0b3J5LgorVGhlIHJldHVybiByZXN1bHQgaXMgYSBgcGFja2FnZS1kZXNj Jy4iCisgIChjbC1hc3NlcnQgKGRlcml2ZWQtbW9kZS1wICdkaXJlZC1tb2RlKSkKKyAgKGxldCog KChkZXNjLWZpbGUgKHBhY2thZ2UtLWRlc2NyaXB0aW9uLWZpbGUgZGVmYXVsdC1kaXJlY3Rvcnkp KSkKKyAgICAoaWYgKGZpbGUtcmVhZGFibGUtcCBkZXNjLWZpbGUpCisgICAgICAgICh3aXRoLXRl bXAtYnVmZmVyCisgICAgICAgICAgKGluc2VydC1maWxlLWNvbnRlbnRzIGRlc2MtZmlsZSkKKyAg ICAgICAgICAocGFja2FnZS0tcmVhZC1wa2ctZGVzYyAnZGlyKSkKKyAgICAgIChsZXQgKChmaWxl cyAoZGlyZWN0b3J5LWZpbGVzIGRlZmF1bHQtZGlyZWN0b3J5IHQgIlxcLmVsXFwnIiB0KSkKKyAg ICAgICAgICAgIGluZm8pCisgICAgICAgICh3aGlsZSBmaWxlcworICAgICAgICAgICh3aXRoLXRl bXAtYnVmZmVyCisgICAgICAgICAgICAoaW5zZXJ0LWZpbGUtY29udGVudHMgKHBvcCBmaWxlcykp CisgICAgICAgICAgICAoaWYgKHNldHEgaW5mbyAoaWdub3JlLWVycm9ycyAocGFja2FnZS1idWZm ZXItaW5mbykpKQorICAgICAgICAgICAgICAgIChzZXRxIGZpbGVzIG5pbCkKKyAgICAgICAgICAg ICAgaW5mbykpKSkpKSkKKwogKGRlZnVuIHBhY2thZ2UtLXJlYWQtcGtnLWRlc2MgKGtpbmQpCiAg ICJSZWFkIGEgYGRlZmluZS1wYWNrYWdlJyBmb3JtIGluIGN1cnJlbnQgYnVmZmVyLgogUmV0dXJu IHRoZSBwa2ctZGVzYywgd2l0aCBkZXNjLWtpbmQgc2V0IHRvIEtJTkQuIgotLSAKMi4xLjEKCgpG cm9tIDI2ZjZkNDM2OGRiYTBkMmNhNGJhM2MwMzUzYjk4MDE4ZjA0MmQ0YTIgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCkZyb206IEFydHVyIE1hbGFiYXJiYSA8YnJ1Y2UuY29ubm9yLmFtQGdtYWls LmNvbT4KRGF0ZTogTW9uLCAxMiBKYW4gMjAxNSAyMzozNTo0NiAtMDIwMApTdWJqZWN0OiBbUEFU Q0ggMy81XSAocGFja2FnZS1pbnN0YWxsLWZyb20tYnVmZmVyKTogSW5zdGFsbCBwYWNrYWdlcyBm cm9tCiBkaXJlZCBidWZmZXIuCgotLS0KIGxpc3AvQ2hhbmdlTG9nICAgICAgICAgICAgIHwgIDEg KwogbGlzcC9lbWFjcy1saXNwL3BhY2thZ2UuZWwgfCAyOSArKysrKysrKysrKysrKysrKysrKysr KystLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCAyNSBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL2xpc3AvQ2hhbmdlTG9nIGIvbGlzcC9DaGFuZ2VMb2cKaW5kZXggY2Ey ZDQyNS4uNGJjNDA4MiAxMDA2NDQKLS0tIGEvbGlzcC9DaGFuZ2VMb2cKKysrIGIvbGlzcC9DaGFu Z2VMb2cKQEAgLTUsNiArNSw3IEBACiAJdGhlIHBrZy1kZXNjLCB3aXRoIGRlc2Mta2luZCBzZXQg dG8gS0lORC4KIAkocGFja2FnZS1kaXItaW5mbyk6IE5ldyBmdW5jdGlvbi4gRmluZCBwYWNrYWdl IGluZm9ybWF0aW9uIGZvciBhCiAJZGlyZWN0b3J5LiBUaGUgcmV0dXJuIHJlc3VsdCBpcyBhIGBw YWNrYWdlLWRlc2MnLgorCShwYWNrYWdlLWluc3RhbGwtZnJvbS1idWZmZXIpOiBJbnN0YWxsIHBh Y2thZ2VzIGZyb20gZGlyZWQgYnVmZmVyLgogCiAyMDE1LTAxLTExICBNaWNoYWVsIEFsYmludXMg IDxtaWNoYWVsLmFsYmludXNAZ214LmRlPgogCmRpZmYgLS1naXQgYS9saXNwL2VtYWNzLWxpc3Av cGFja2FnZS5lbCBiL2xpc3AvZW1hY3MtbGlzcC9wYWNrYWdlLmVsCmluZGV4IGFmMjkyZmMuLjFh ZTYyMTcgMTAwNjQ0Ci0tLSBhL2xpc3AvZW1hY3MtbGlzcC9wYWNrYWdlLmVsCisrKyBiL2xpc3Av ZW1hY3MtbGlzcC9wYWNrYWdlLmVsCkBAIC03ODQsNiArNzg0LDE0IEBAIHVudGFyIGludG8gYSBk aXJlY3RvcnkgbmFtZWQgRElSOyBvdGhlcndpc2UsIHNpZ25hbCBhbiBlcnJvci4iCiAgICAgICAg ICAoZGlybmFtZSAocGFja2FnZS1kZXNjLWZ1bGwtbmFtZSBwa2ctZGVzYykpCiAJIChwa2ctZGly IChleHBhbmQtZmlsZS1uYW1lIGRpcm5hbWUgcGFja2FnZS11c2VyLWRpcikpKQogICAgIChwY2Fz ZSAocGFja2FnZS1kZXNjLWtpbmQgcGtnLWRlc2MpCisgICAgICAoYGRpcgorICAgICAgIChtYWtl LWRpcmVjdG9yeSBwa2ctZGlyIHQpCisgICAgICAgKGRvbGlzdCAoc291cmNlLWZpbGUKKyAgICAg ICAgICAgICAgICAoZGlyZWN0b3J5LWZpbGVzCisgICAgICAgICAgICAgICAgIGRlZmF1bHQtZGly ZWN0b3J5ICdmdWxsICJcXGBbXi5dLipcXC5lbFxcJyIgJ25vc29ydCkpCisgICAgICAgICAobGV0 ICgodGFyZ2V0LWVsLWZpbGUKKyAgICAgICAgICAgICAgICAoZXhwYW5kLWZpbGUtbmFtZSAoZmls ZS1uYW1lLW5vbmRpcmVjdG9yeSBzb3VyY2UtZmlsZSkgcGtnLWRpcikpKQorICAgICAgICAgICAo Y29weS1maWxlIHNvdXJjZS1maWxlIHRhcmdldC1lbC1maWxlIHQpKSkpCiAgICAgICAoYHRhcgog ICAgICAgIChtYWtlLWRpcmVjdG9yeSBwYWNrYWdlLXVzZXItZGlyIHQpCiAgICAgICAgOzsgRklY TUU6IHNob3VsZCB3ZSBkZWxldGUgUEtHLURJUiBpZiBpdCBleGlzdHM/CkBAIC0xMjkzLDEzICsx MzAxLDI0IEBAIFJldHVybiB0aGUgcGtnLWRlc2MsIHdpdGggZGVzYy1raW5kIHNldCB0byBLSU5E LiIKIDs7OyMjI2F1dG9sb2FkCiAoZGVmdW4gcGFja2FnZS1pbnN0YWxsLWZyb20tYnVmZmVyICgp CiAgICJJbnN0YWxsIGEgcGFja2FnZSBmcm9tIHRoZSBjdXJyZW50IGJ1ZmZlci4KLVRoZSBjdXJy ZW50IGJ1ZmZlciBpcyBhc3N1bWVkIHRvIGJlIGEgc2luZ2xlIC5lbCBvciAudGFyIGZpbGUgdGhh dCBmb2xsb3dzIHRoZQotcGFja2FnaW5nIGd1aWRlbGluZXM7IHNlZSBpbmZvIG5vZGUgYChlbGlz cClQYWNrYWdpbmcnLgorVGhlIGN1cnJlbnQgYnVmZmVyIGlzIGFzc3VtZWQgdG8gYmUgYSBzaW5n bGUgLmVsIG9yIC50YXIgZmlsZSBvcgorYSBkaXJlY3RvcnkuICBUaGVzZSBtdXN0IGZvbGxvdyB0 aGUgcGFja2FnaW5nIGd1aWRlbGluZXMgKHNlZQoraW5mbyBub2RlIGAoZWxpc3ApUGFja2FnaW5n JykuCisKK1NwZWNpYWxseSwgaWYgY3VycmVudCBidWZmZXIgaXMgYSBkaXJlY3RvcnksIHRoZSAt cGtnLmVsCitkZXNjcmlwdGlvbiBmaWxlIGlzIG5vdCBtYW5kYXRvcnksIGluIHdoaWNoIGNhc2Ug dGhlIGluZm9ybWF0aW9uCitpcyBkZXJpdmVkIGZyb20gdGhlIG1haW4gLmVsIGZpbGUgaW4gdGhl IGRpcmVjdG9yeS4KKwogRG93bmxvYWRzIGFuZCBpbnN0YWxscyByZXF1aXJlZCBwYWNrYWdlcyBh cyBuZWVkZWQuIgogICAoaW50ZXJhY3RpdmUpCi0gIChsZXQgKChwa2ctZGVzYyAoaWYgKGRlcml2 ZWQtbW9kZS1wICd0YXItbW9kZSkKLSAgICAgICAgICAgICAgICAgICAgICAocGFja2FnZS10YXIt ZmlsZS1pbmZvKQotICAgICAgICAgICAgICAgICAgICAocGFja2FnZS1idWZmZXItaW5mbykpKSkK KyAgKGxldCAoKHBrZy1kZXNjCisgICAgICAgICAoY29uZAorICAgICAgICAgICgoZGVyaXZlZC1t b2RlLXAgJ2RpcmVkLW1vZGUpCisgICAgICAgICAgIChwYWNrYWdlLWRpci1pbmZvKSkKKyAgICAg ICAgICAoKGRlcml2ZWQtbW9kZS1wICd0YXItbW9kZSkKKyAgICAgICAgICAgKHBhY2thZ2UtdGFy LWZpbGUtaW5mbykpCisgICAgICAgICAgKHQKKyAgICAgICAgICAgKHBhY2thZ2UtYnVmZmVyLWlu Zm8pKSkpKQogICAgIDs7IERvd25sb2FkIGFuZCBpbnN0YWxsIHRoZSBkZXBlbmRlbmNpZXMuCiAg ICAgKGxldCogKChyZXF1aXJlcyAocGFja2FnZS1kZXNjLXJlcXMgcGtnLWRlc2MpKQogICAgICAg ICAgICAodHJhbnNhY3Rpb24gKHBhY2thZ2UtY29tcHV0ZS10cmFuc2FjdGlvbiBuaWwgcmVxdWly ZXMpKSkKLS0gCjIuMS4xCgoKRnJvbSA3YWI4NTI1NzBlMDRlYjBlMTdmNzI4NzM2NWEzN2IyM2Iy ZTFlNDNmIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBcnR1ciBNYWxhYmFyYmEgPGJy dWNlLmNvbm5vci5hbUBnbWFpbC5jb20+CkRhdGU6IFR1ZSwgMTMgSmFuIDIwMTUgMDA6MDM6NTkg LTAyMDAKU3ViamVjdDogW1BBVENIIDQvNV0gKHBhY2thZ2UtaW5zdGFsbC1maWxlKTogSW5zdGFs bCBwYWNrYWdlcyBmcm9tIGRpcmVjdG9yeS4KCi0tLQogbGlzcC9DaGFuZ2VMb2cgICAgICAgICAg ICAgfCAxICsKIGxpc3AvZW1hY3MtbGlzcC9wYWNrYWdlLmVsIHwgOCArKysrKystLQogMiBmaWxl cyBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv bGlzcC9DaGFuZ2VMb2cgYi9saXNwL0NoYW5nZUxvZwppbmRleCA0YmM0MDgyLi4xMzA4MWMzIDEw MDY0NAotLS0gYS9saXNwL0NoYW5nZUxvZworKysgYi9saXNwL0NoYW5nZUxvZwpAQCAtNiw2ICs2 LDcgQEAKIAkocGFja2FnZS1kaXItaW5mbyk6IE5ldyBmdW5jdGlvbi4gRmluZCBwYWNrYWdlIGlu Zm9ybWF0aW9uIGZvciBhCiAJZGlyZWN0b3J5LiBUaGUgcmV0dXJuIHJlc3VsdCBpcyBhIGBwYWNr YWdlLWRlc2MnLgogCShwYWNrYWdlLWluc3RhbGwtZnJvbS1idWZmZXIpOiBJbnN0YWxsIHBhY2th Z2VzIGZyb20gZGlyZWQgYnVmZmVyLgorCShwYWNrYWdlLWluc3RhbGwtZmlsZSk6IEluc3RhbGwg cGFja2FnZXMgZnJvbSBkaXJlY3RvcnkuCiAKIDIwMTUtMDEtMTEgIE1pY2hhZWwgQWxiaW51cyAg PG1pY2hhZWwuYWxiaW51c0BnbXguZGU+CiAKZGlmZiAtLWdpdCBhL2xpc3AvZW1hY3MtbGlzcC9w YWNrYWdlLmVsIGIvbGlzcC9lbWFjcy1saXNwL3BhY2thZ2UuZWwKaW5kZXggMWFlNjIxNy4uMWY5 MzczMyAxMDA2NDQKLS0tIGEvbGlzcC9lbWFjcy1saXNwL3BhY2thZ2UuZWwKKysrIGIvbGlzcC9l bWFjcy1saXNwL3BhY2thZ2UuZWwKQEAgLTEzMzMsOCArMTMzMywxMiBAQCBEb3dubG9hZHMgYW5k IGluc3RhbGxzIHJlcXVpcmVkIHBhY2thZ2VzIGFzIG5lZWRlZC4iCiBUaGUgZmlsZSBjYW4gZWl0 aGVyIGJlIGEgdGFyIGZpbGUgb3IgYW4gRW1hY3MgTGlzcCBmaWxlLiIKICAgKGludGVyYWN0aXZl ICJmUGFja2FnZSBmaWxlIG5hbWU6ICIpCiAgICh3aXRoLXRlbXAtYnVmZmVyCi0gICAgKGluc2Vy dC1maWxlLWNvbnRlbnRzLWxpdGVyYWxseSBmaWxlKQotICAgICh3aGVuIChzdHJpbmctbWF0Y2gg IlxcLnRhclxcJyIgZmlsZSkgKHRhci1tb2RlKSkKKyAgICAoaWYgKGZpbGUtZGlyZWN0b3J5LXAg ZmlsZSkKKyAgICAgICAgKHByb2duCisgICAgICAgICAgKHNldHEgZGVmYXVsdC1kaXJlY3Rvcnkg ZmlsZSkKKyAgICAgICAgICAoZGlyZWQtbW9kZSkpCisgICAgICAoaW5zZXJ0LWZpbGUtY29udGVu dHMtbGl0ZXJhbGx5IGZpbGUpCisgICAgICAod2hlbiAoc3RyaW5nLW1hdGNoICJcXC50YXJcXCci IGZpbGUpICh0YXItbW9kZSkpKQogICAgIChwYWNrYWdlLWluc3RhbGwtZnJvbS1idWZmZXIpKSkK IAogKGRlZnVuIHBhY2thZ2UtZGVsZXRlIChwa2ctZGVzYykKLS0gCjIuMS4xCgoKRnJvbSAwNWQ2 MWU4OGFhMWMwYWUyYWYzZjJhODU5YTBjZTEyNzBkYjIxYTBlIE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQpGcm9tOiBBcnR1ciBNYWxhYmFyYmEgPGJydWNlLmNvbm5vci5hbUBnbWFpbC5jb20+CkRh dGU6IFR1ZSwgMTMgSmFuIDIwMTUgMDA6MTM6NTUgLTAyMDAKU3ViamVjdDogW1BBVENIIDUvNV0g KiBORVdTOiBEb2N1bWVudCBpbnN0YWxsaW5nIHBhY2thZ2VzIGZyb20gZGlyZWN0b3JpZXMuCgot LS0KIGV0Yy9DaGFuZ2VMb2cgfCA0ICsrKysKIGV0Yy9ORVdTICAgICAgfCA0ICsrKysKIDIgZmls ZXMgY2hhbmdlZCwgOCBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvZXRjL0NoYW5nZUxvZyBi L2V0Yy9DaGFuZ2VMb2cKaW5kZXggMjBmODhiZC4uMTBiM2ZlNSAxMDA2NDQKLS0tIGEvZXRjL0No YW5nZUxvZworKysgYi9ldGMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNyBAQAorMjAxNS0wMS0xMyAg QXJ0dXIgTWFsYWJhcmJhICA8YnJ1Y2UuY29ubm9yLmFtQGdtYWlsLmNvbT4KKworCSogTkVXUzog RG9jdW1lbnQgaW5zdGFsbGluZyBwYWNrYWdlcyBmcm9tIGRpcmVjdG9yaWVzLgorCiAyMDE1LTAx LTExICBQYXVsIEVnZ2VydCAgPGVnZ2VydEBjcy51Y2xhLmVkdT4KIAogCURlZmF1bHQgdG8gJ2Nv bmZpZ3VyZSAtLWVuYWJsZS1zaWxlbnQtcnVsZXMnCmRpZmYgLS1naXQgYS9ldGMvTkVXUyBiL2V0 Yy9ORVdTCmluZGV4IGIzMjY3ZTEuLmIzZjhkODcgMTAwNjQ0Ci0tLSBhL2V0Yy9ORVdTCisrKyBi L2V0Yy9ORVdTCkBAIC01Niw2ICs1NiwxMCBAQCBzbyBpZiB5b3Ugd2FudCB0byB1c2UgaXQsIHlv dSBjYW4gYWx3YXlzIHRha2UgYSBjb3B5IGZyb20gYW4gb2xkZXIgRW1hY3MuCiAMCiAqIENoYW5n ZXMgaW4gRW1hY3MgMjUuMQogCisqKiBgcGFja2FnZS1pbnN0YWxsLWZyb20tYnVmZmVyJyBhbmQg YHBhY2thZ2UtaW5zdGFsbC1maWxlJyB3b3JrIG9uIGRpcmVjdG9yaWVzLgorVGhpcyBmb2xsb3dz IHRoZSBzYW1lIHJ1bGVzIGFzIGluc3RhbGxpbmcgZnJvbSBhIC50YXIgZmlsZSwgZXhjZXB0IHRo ZQorLXBrZyBmaWxlIGlzIG9wdGlvbmFsLgorCiAqKiBOZXcgZnVuY3Rpb24gYGN1c3RvbS1wcm9t cHQtY3VzdG9taXplLXVuc2F2ZWQtb3B0aW9ucycgY2hlY2tzIGZvcgogdW5zYXZlZCBjdXN0b21p emF0aW9ucyBhbmQgcHJvbXB0cyB1c2VyIHRvIGN1c3RvbWl6ZSAoaWYgZm91bmQpLgogCi0tIAoy LjEuMQoK --047d7bf0e95ed04b17050c8a40f6--