From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Jonathan H Newsgroups: gmane.emacs.bugs Subject: bug#21383: Static revisions in vc-working-revision Date: Sun, 30 Aug 2015 17:45:25 -0700 Message-ID: NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary=047d7b3a91e688c54b051e90c151 X-Trace: ger.gmane.org 1440982037 2120 80.91.229.3 (31 Aug 2015 00:47:17 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 31 Aug 2015 00:47:17 +0000 (UTC) To: 21383@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Mon Aug 31 02:47:07 2015 Return-path: Envelope-to: geb-bug-gnu-emacs@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 1ZWDFb-0000ns-B3 for geb-bug-gnu-emacs@m.gmane.org; Mon, 31 Aug 2015 02:47:07 +0200 Original-Received: from localhost ([::1]:33202 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZWDFa-0000Qd-PO for geb-bug-gnu-emacs@m.gmane.org; Sun, 30 Aug 2015 20:47:06 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:56226) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZWDFX-0000Pj-9o for bug-gnu-emacs@gnu.org; Sun, 30 Aug 2015 20:47:04 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZWDFW-0003zB-Bv for bug-gnu-emacs@gnu.org; Sun, 30 Aug 2015 20:47:03 -0400 Original-Received: from debbugs.gnu.org ([208.118.235.43]:50978) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZWDFW-0003z7-8x for bug-gnu-emacs@gnu.org; Sun, 30 Aug 2015 20:47:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1ZWDFW-0003mP-17 for bug-gnu-emacs@gnu.org; Sun, 30 Aug 2015 20:47:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Jonathan H Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 31 Aug 2015 00:47:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 21383 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.144098196314463 (code B ref -1); Mon, 31 Aug 2015 00:47:01 +0000 Original-Received: (at submit) by debbugs.gnu.org; 31 Aug 2015 00:46:03 +0000 Original-Received: from localhost ([127.0.0.1]:43188 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZWDEY-0003l9-VN for submit@debbugs.gnu.org; Sun, 30 Aug 2015 20:46:03 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:46071) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZWDEV-0003kg-Qo for submit@debbugs.gnu.org; Sun, 30 Aug 2015 20:46:00 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZWDEU-0003no-8g for submit@debbugs.gnu.org; Sun, 30 Aug 2015 20:45:59 -0400 Original-Received: from lists.gnu.org ([2001:4830:134:3::11]:41538) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZWDEU-0003nk-5m for submit@debbugs.gnu.org; Sun, 30 Aug 2015 20:45:58 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:56070) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZWDET-0000Nw-2N for bug-gnu-emacs@gnu.org; Sun, 30 Aug 2015 20:45:58 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZWDER-0003nM-Sf for bug-gnu-emacs@gnu.org; Sun, 30 Aug 2015 20:45:56 -0400 Original-Received: from mail-ig0-x233.google.com ([2607:f8b0:4001:c05::233]:33060) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZWDER-0003nG-Lf for bug-gnu-emacs@gnu.org; Sun, 30 Aug 2015 20:45:55 -0400 Original-Received: by igbuu8 with SMTP id uu8so37608988igb.0 for ; Sun, 30 Aug 2015 17:45:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:from:date:message-id:subject:to:content-type; bh=/MTOfMW//GRkVHh3EK2eNsJfUC0tnhLi7XPbIsslLtI=; b=KLd6NGvvQRA8RmE8fZPlFDMJD4FvlITesU6ApS7uU02V9b6A4uLQ3wS7xJKSDu3+Ia E4Y81Zan88LEe5+KExFG7x9AyeBtBm5PVxPOKrKwa1+Ns2dHPrExLvTPLt48h4Tex/tl MhGiTMJhy2yuJtp4xnpOKZQ+VwMAqiDfkl1iVUyHwN0gHZzMIj0bUn/F4fRHa1xgzydo jbyKDLWMX7y5TXHVQ2DqIvhLoFChHNUWazGNk0Vqol/qk6Ni/msKRYOTpI0fJNVahD35 4KvgbTDgZDOPW3BOtSTJ2pctnOraaVroeHJNYknVHZZfCiwcIAxrUd0r0CPe61rNCXzF 8blQ== X-Received: by 10.50.129.99 with SMTP id nv3mr13400719igb.20.1440981954628; Sun, 30 Aug 2015 17:45:54 -0700 (PDT) Original-Received: by 10.79.110.197 with HTTP; Sun, 30 Aug 2015 17:45:25 -0700 (PDT) X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 208.118.235.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:105998 Archived-At: --047d7b3a91e688c54b051e90c151 Content-Type: multipart/alternative; boundary=047d7b3a91e688c544051e90c14f --047d7b3a91e688c544051e90c14f Content-Type: text/plain; charset=UTF-8 Hello all! I've attached a basic patch that adds an option to vc-working-revision. The option is named *concrete* and if non-nil, it forces vc-working-revision to return a revision name that will not go stale after new revisions are made. This is useful for, e.g. git, where vc-working-revision will just return the branch name, which only refers to the current commit for as long as it's the head of the branch. I'm using this in diff-hl #33 to determine when to refresh the current VC highlighting. I've supplied an implementation for Git, and no-op implementations for all the other backends. For most systems (i.e. all the other VCS systems I know), the value of *concrete *does not matter. If you know a backend that would benefit from a real implementation, please let me know. Also, this is my first patch, so I'm not entirely sure I've got all my ducks in a row. Any comments on that would be great too. Thanks, Jonathan --047d7b3a91e688c544051e90c14f Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
Hello all!

I've= attached a basic patch that adds an option to vc-working-revision. The opt= ion is named concrete and if non-nil, it forces vc-working-revision = to return a revision name that will not go stale after new revisions are ma= de.

This is useful for, e.g. git, where vc-working-revisi= on will just return the branch name, which only refers to the current commi= t for as long as it's the head of the branch.

I'm= using this in diff= -hl #33 to determine when to refresh the current VC highlighting.
I've supplied an implementation for Git, and no-op impleme= ntations for all the other backends. For most systems (i.e. all the other V= CS systems I know), the value of concrete does not matter. If you kn= ow a backend that would benefit from a real implementation, please let me k= now.

Also, this is my first patch, so I'm = not entirely sure I've got all my ducks in a row. Any comments on that = would be great too.

Thanks,
Jonathan
--047d7b3a91e688c544051e90c14f-- --047d7b3a91e688c54b051e90c151 Content-Type: application/octet-stream; name="0001-Add-CONCRETE-parameter-to-vc-working-revision.patch" Content-Disposition: attachment; filename="0001-Add-CONCRETE-parameter-to-vc-working-revision.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_idugwl8b0 RnJvbSA1ZmM3ZGZmNzYxMDJlYTFlMDk3YmMzOWNiY2ViOGI3ZDcxZGY0NDdkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBQeXRob25OdXQgPFB5dGhvbk51dEB1c2Vycy5ub3JlcGx5Lmdp dGh1Yi5jb20+CkRhdGU6IFNhdCwgMjIgQXVnIDIwMTUgMDE6MjU6NDQgKzAwMDAKU3ViamVjdDog W1BBVENIXSBBZGQgQ09OQ1JFVEUgcGFyYW1ldGVyIHRvIHZjLXdvcmtpbmctcmV2aXNpb24KCklm IENPTkNSRVRFIGlzIG5vbi1uaWwsIHRoZSByZXZpc2lvbiB3aWxsIGJlIHRpZWQgdG8gYW4gdW5h bWJpZ3VvdXMgY29tbWl0Cmluc3RlYWQgb2YgdGhlIG5vcm1hbCBzeW1ib2xpYyByZWYuCi0tLQog bGlzcC92Yy92Yy1ienIuZWwgICB8ICAyICstCiBsaXNwL3ZjL3ZjLWN2cy5lbCAgIHwgIDIgKy0K IGxpc3AvdmMvdmMtZ2l0LmVsICAgfCAxMiArKysrKystLS0tLS0KIGxpc3AvdmMvdmMtaGcuZWwg ICAgfCAgMiArLQogbGlzcC92Yy92Yy1ob29rcy5lbCB8IDE4ICsrKysrKysrKysrLS0tLS0tLQog bGlzcC92Yy92Yy1tdG4uZWwgICB8ICAyICstCiBsaXNwL3ZjL3ZjLXJjcy5lbCAgIHwgIDIgKy0K IGxpc3AvdmMvdmMtc2Njcy5lbCAgfCAgMiArLQogbGlzcC92Yy92Yy1zcmMuZWwgICB8ICAyICst CiBsaXNwL3ZjL3ZjLXN2bi5lbCAgIHwgIDIgKy0KIDEwIGZpbGVzIGNoYW5nZWQsIDI1IGluc2Vy dGlvbnMoKyksIDIxIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpc3AvdmMvdmMtYnpyLmVs IGIvbGlzcC92Yy92Yy1ienIuZWwKaW5kZXggNWY4ZGQwYi4uOTUzMTc5ZSAxMDA2NDQKLS0tIGEv bGlzcC92Yy92Yy1ienIuZWwKKysrIGIvbGlzcC92Yy92Yy1ienIuZWwKQEAgLTUzMiw3ICs1MzIs NyBAQCBSZXR1cm5zIG5pbCBpZiB1bmFibGUgdG8gZmluZCB0aGlzIGluZm9ybWF0aW9uLiIKICAg ICAgICAgICAgICAobG9va2luZy1hdCAiWzAtOV0rXDBcXChbXlwwXG5dK1xcKVwwIikKICAgICAg ICAgICAgICAobWF0Y2gtc3RyaW5nIDEpKSkpKSkKIAotKGRlZnVuIHZjLWJ6ci13b3JraW5nLXJl dmlzaW9uIChmaWxlKQorKGRlZnVuIHZjLWJ6ci13b3JraW5nLXJldmlzaW9uIChmaWxlICZvcHRp b25hbCBjb25jcmV0ZSkKICAgKGxldCogKChyb290ZGlyICh2Yy1ienItcm9vdCBmaWxlKSkKICAg ICAgICAgIChicmFuY2gtZm9ybWF0LWZpbGUgKGV4cGFuZC1maWxlLW5hbWUgdmMtYnpyLWFkbWlu LWJyYW5jaC1mb3JtYXQtZmlsZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICByb290ZGlyKSkKZGlmZiAtLWdpdCBhL2xpc3AvdmMvdmMtY3ZzLmVsIGIvbGlz cC92Yy92Yy1jdnMuZWwKaW5kZXggOWE0MTkwNS4uMjkwYjhjYiAxMDA2NDQKLS0tIGEvbGlzcC92 Yy92Yy1jdnMuZWwKKysrIGIvbGlzcC92Yy92Yy1jdnMuZWwKQEAgLTI1OCw3ICsyNTgsNyBAQCBT ZWUgYWxzbyB2YXJpYWJsZSBgdmMtY3ZzLXN0aWNreS1kYXRlLWZvcm1hdC1zdHJpbmcnLiIKICAg ICAgKChudWxsIGNoZWNrb3V0LXRpbWUpICd1bnJlZ2lzdGVyZWQpCiAgICAgICh0ICdlZGl0ZWQp KSkpCiAKLShkZWZ1biB2Yy1jdnMtd29ya2luZy1yZXZpc2lvbiAoZmlsZSkKKyhkZWZ1biB2Yy1j dnMtd29ya2luZy1yZXZpc2lvbiAoZmlsZSAmb3B0aW9uYWwgY29uY3JldGUpCiAgICJDVlMtc3Bl Y2lmaWMgdmVyc2lvbiBvZiBgdmMtd29ya2luZy1yZXZpc2lvbicuIgogICA7OyBUaGVyZSBpcyBu byBuZWVkIHRvIGNvbnN1bHQgUkNTIGhlYWRlcnMgdW5kZXIgQ1ZTLCBiZWNhdXNlIHdlCiAgIDs7 IGdldCB0aGUgd29ya2ZpbGUgdmVyc2lvbiBmb3IgZnJlZSB3aGVuIHdlIHJlY29nbml6ZSB0aGF0 IGEgZmlsZQpkaWZmIC0tZ2l0IGEvbGlzcC92Yy92Yy1naXQuZWwgYi9saXNwL3ZjL3ZjLWdpdC5l bAppbmRleCA5NTIyMzI4Li44NGUyMDI1IDEwMDY0NAotLS0gYS9saXNwL3ZjL3ZjLWdpdC5lbAor KysgYi9saXNwL3ZjL3ZjLWdpdC5lbApAQCAtMjQ4LDE1ICsyNDgsMTUgQEAgbWF0Y2hpbmcgdGhl IHJlc3VsdGluZyBHaXQgbG9nIG91dHB1dCwgYW5kIEtFWVdPUkRTIGlzIGEgbGlzdCBvZgogICAg ICAgICAgICAgKHZjLWdpdC0tc3RhdGUtY29kZSBkaWZmLWxldHRlcikpKQogICAgICAgKGlmICh2 Yy1naXQtLWVtcHR5LWRiLXApICdhZGRlZCAndXAtdG8tZGF0ZSkpKSkKIAotKGRlZnVuIHZjLWdp dC13b3JraW5nLXJldmlzaW9uIChmaWxlKQorKGRlZnVuIHZjLWdpdC13b3JraW5nLXJldmlzaW9u IChmaWxlICZvcHRpb25hbCBjb25jcmV0ZSkKICAgIkdpdC1zcGVjaWZpYyB2ZXJzaW9uIG9mIGB2 Yy13b3JraW5nLXJldmlzaW9uJy4iCiAgIChsZXQqIChwcm9jZXNzLWZpbGUtc2lkZS1lZmZlY3Rz Ci0gICAgICAgICAoc3RyICh2Yy1naXQtLXJ1bi1jb21tYW5kLXN0cmluZyBuaWwgInN5bWJvbGlj LXJlZiIgIkhFQUQiKSkpCisgICAgICAgICAgKHN0ciAodmMtZ2l0LS1ydW4tY29tbWFuZC1zdHJp bmcgbmlsICJzeW1ib2xpYy1yZWYiICJIRUFEIikpKQogICAgICh2Yy1maWxlLXNldHByb3AgZmls ZSAndmMtZ2l0LWRldGFjaGVkIChudWxsIHN0cikpCi0gICAgKGlmIHN0cgotICAgICAgICAoaWYg KHN0cmluZy1tYXRjaCAiXlxcKHJlZnMvaGVhZHMvXFwpP1xcKC4rXFwpJCIgc3RyKQotICAgICAg ICAgICAgKG1hdGNoLXN0cmluZyAyIHN0cikKLSAgICAgICAgICBzdHIpCisgICAgKGlmIChhbmQg c3RyIChub3QgY29uY3JldGUpKQorICAgICAgKGlmIChzdHJpbmctbWF0Y2ggIl5cXChyZWZzL2hl YWRzL1xcKT9cXCguK1xcKSQiIHN0cikKKyAgICAgICAgKG1hdGNoLXN0cmluZyAyIHN0cikKKyAg ICAgICAgc3RyKQogICAgICAgKHZjLWdpdC0tcmV2LXBhcnNlICJIRUFEIikpKSkKIAogKGRlZnVu IHZjLWdpdC1tb2RlLWxpbmUtc3RyaW5nIChmaWxlKQpkaWZmIC0tZ2l0IGEvbGlzcC92Yy92Yy1o Zy5lbCBiL2xpc3AvdmMvdmMtaGcuZWwKaW5kZXggZjYzNGUyZS4uZWVlOGM4NSAxMDA2NDQKLS0t IGEvbGlzcC92Yy92Yy1oZy5lbAorKysgYi9saXNwL3ZjL3ZjLWhnLmVsCkBAIC0yMzcsNyArMjM3 LDcgQEAgaGlnaGxpZ2h0aW5nIHRoZSBMb2cgVmlldyBidWZmZXIuIgogCSAoKGVxIHN0YXRlID9D KSAndXAtdG8tZGF0ZSkgOzsgT2xkZXIgbWVyY3VyaWFsIHZlcnNpb25zIHVzZSB0aGlzLgogCSAo dCAndXAtdG8tZGF0ZSkpKSkpKQogCi0oZGVmdW4gdmMtaGctd29ya2luZy1yZXZpc2lvbiAoZmls ZSkKKyhkZWZ1biB2Yy1oZy13b3JraW5nLXJldmlzaW9uIChmaWxlICZvcHRpb25hbCBjb25jcmV0 ZSkKICAgIkhnLXNwZWNpZmljIHZlcnNpb24gb2YgYHZjLXdvcmtpbmctcmV2aXNpb24nLiIKICAg KG9yIChpZ25vcmUtZXJyb3JzCiAgICAgICAgICh3aXRoLW91dHB1dC10by1zdHJpbmcKZGlmZiAt LWdpdCBhL2xpc3AvdmMvdmMtaG9va3MuZWwgYi9saXNwL3ZjL3ZjLWhvb2tzLmVsCmluZGV4IGJh ZTk5MTkuLjUwNGVmYjkgMTAwNjQ0Ci0tLSBhL2xpc3AvdmMvdmMtaG9va3MuZWwKKysrIGIvbGlz cC92Yy92Yy1ob29rcy5lbApAQCAtNDkwLDE1ICs0OTAsMTkgQEAgc3RhdHVzIG9mIHRoaXMgZmls ZS4gIE90aGVyd2lzZSwgdGhlIHZhbHVlIHJldHVybmVkIGlzIG9uZSBvZjoKICAgIkNvbnZlbmll bmNlIGZ1bmN0aW9uIHRoYXQgY2hlY2tzIHdoZXRoZXIgYHZjLXN0YXRlJyBvZiBGSUxFIGlzIGB1 cC10by1kYXRlJy4iCiAgIChlcSAodmMtc3RhdGUgZmlsZSkgJ3VwLXRvLWRhdGUpKQogCi0oZGVm dW4gdmMtd29ya2luZy1yZXZpc2lvbiAoZmlsZSAmb3B0aW9uYWwgYmFja2VuZCkKKyhkZWZ1biB2 Yy13b3JraW5nLXJldmlzaW9uIChmaWxlICZvcHRpb25hbCBiYWNrZW5kIGNvbmNyZXRlKQogICAi UmV0dXJuIHRoZSByZXBvc2l0b3J5IHZlcnNpb24gZnJvbSB3aGljaCBGSUxFIHdhcyBjaGVja2Vk IG91dC4KLUlmIEZJTEUgaXMgbm90IHJlZ2lzdGVyZWQsIHRoaXMgZnVuY3Rpb24gYWx3YXlzIHJl dHVybnMgbmlsLiIKLSAgKG9yICh2Yy1maWxlLWdldHByb3AgZmlsZSAndmMtd29ya2luZy1yZXZp c2lvbikKK0lmIEZJTEUgaXMgbm90IHJlZ2lzdGVyZWQsIHRoaXMgZnVuY3Rpb24gYWx3YXlzIHJl dHVybnMgbmlsLgorSWYgQ09OQ1JFVEUgaXMgbm9uLW5pbCwgdGhlIHJldmlzaW9uIHdpbGwgYmUg dGllZCB0byBhbiB1bmFtYmlndW91cyBjb21taXQKK2luc3RlYWQgb2YgdGhlIG5vcm1hbCBzeW1i b2xpYyByZWYuIgorICAoaWYgY29uY3JldGUKKyAgICAodmMtY2FsbC1iYWNrZW5kIGJhY2tlbmQg J3dvcmtpbmctcmV2aXNpb24gZmlsZSB0KQorICAgIChvciAodmMtZmlsZS1nZXRwcm9wIGZpbGUg J3ZjLXdvcmtpbmctcmV2aXNpb24pCiAgICAgICAocHJvZ24KLQkoc2V0cSBiYWNrZW5kIChvciBi YWNrZW5kICh2Yy1yZXNwb25zaWJsZS1iYWNrZW5kIGZpbGUpKSkKLQkod2hlbiBiYWNrZW5kCi0J ICAodmMtZmlsZS1zZXRwcm9wIGZpbGUgJ3ZjLXdvcmtpbmctcmV2aXNpb24KLQkJCSAgICh2Yy1j YWxsLWJhY2tlbmQgYmFja2VuZCAnd29ya2luZy1yZXZpc2lvbiBmaWxlKSkpKSkpCisgICAgICAg IChzZXRxIGJhY2tlbmQgKG9yIGJhY2tlbmQgKHZjLXJlc3BvbnNpYmxlLWJhY2tlbmQgZmlsZSkp KQorICAgICAgICAod2hlbiBiYWNrZW5kCisgICAgICAgICAgKHZjLWZpbGUtc2V0cHJvcCBmaWxl ICd2Yy13b3JraW5nLXJldmlzaW9uCisgICAgICAgICAgICAodmMtY2FsbC1iYWNrZW5kIGJhY2tl bmQgJ3dvcmtpbmctcmV2aXNpb24gZmlsZSkpKSkpKSkKIAogOzsgQmFja3dhcmQgY29tcGF0aWJp bGl0eS4KIChkZWZpbmUtb2Jzb2xldGUtZnVuY3Rpb24tYWxpYXMKZGlmZiAtLWdpdCBhL2xpc3Av dmMvdmMtbXRuLmVsIGIvbGlzcC92Yy92Yy1tdG4uZWwKaW5kZXggNjg1ZWYzYi4uNjNlZmI5ZiAx MDA2NDQKLS0tIGEvbGlzcC92Yy92Yy1tdG4uZWwKKysrIGIvbGlzcC92Yy92Yy1tdG4uZWwKQEAg LTE0Nyw3ICsxNDcsNyBAQCBzd2l0Y2hlcy4iCiAgICh2Yy1ydW4tZGVsYXllZAogICAgKHZjLW10 bi1hZnRlci1kaXItc3RhdHVzIHVwZGF0ZS1mdW5jdGlvbikpKQogCi0oZGVmdW4gdmMtbXRuLXdv cmtpbmctcmV2aXNpb24gKGZpbGUpCisoZGVmdW4gdmMtbXRuLXdvcmtpbmctcmV2aXNpb24gKGZp bGUgJm9wdGlvbmFsIGNvbmNyZXRlKQogICA7OyBJZiBgbXRuJyBmYWlscyBvciByZXR1cm5zIHN0 YXR1cz4wLCBvciBpZiB0aGUgc2VhcmNoIGZhaWxzLCBqdXN0CiAgIDs7IHJldHVybiBuaWwuCiAg IChpZ25vcmUtZXJyb3JzCmRpZmYgLS1naXQgYS9saXNwL3ZjL3ZjLXJjcy5lbCBiL2xpc3AvdmMv dmMtcmNzLmVsCmluZGV4IDcxZmZhNTUuLjVhNWVkNzYgMTAwNjQ0Ci0tLSBhL2xpc3AvdmMvdmMt cmNzLmVsCisrKyBiL2xpc3AvdmMvdmMtcmNzLmVsCkBAIC0xNjgsNyArMTY4LDcgQEAgRm9yIGEg ZGVzY3JpcHRpb24gb2YgcG9zc2libGUgdmFsdWVzLCBzZWUgYHZjLWNoZWNrLW1hc3Rlci10ZW1w bGF0ZXMnLiIKIAkgIChwdXNoIChsaXN0IGZyZWwgc3RhdGUpIHJlc3VsdCkpKSkKICAgICAoZnVu Y2FsbCB1cGRhdGUtZnVuY3Rpb24gcmVzdWx0KSkpCiAKLShkZWZ1biB2Yy1yY3Mtd29ya2luZy1y ZXZpc2lvbiAoZmlsZSkKKyhkZWZ1biB2Yy1yY3Mtd29ya2luZy1yZXZpc2lvbiAoZmlsZSAmb3B0 aW9uYWwgY29uY3JldGUpCiAgICJSQ1Mtc3BlY2lmaWMgdmVyc2lvbiBvZiBgdmMtd29ya2luZy1y ZXZpc2lvbicuIgogICAob3IgKGFuZCB2Yy1jb25zdWx0LWhlYWRlcnMKICAgICAgICAgICAgKHZj LXJjcy1jb25zdWx0LWhlYWRlcnMgZmlsZSkKZGlmZiAtLWdpdCBhL2xpc3AvdmMvdmMtc2Njcy5l bCBiL2xpc3AvdmMvdmMtc2Njcy5lbAppbmRleCA4ZDhkOWU4Li5mN2ZkYjczIDEwMDY0NAotLS0g YS9saXNwL3ZjL3ZjLXNjY3MuZWwKKysrIGIvbGlzcC92Yy92Yy1zY2NzLmVsCkBAIC0xNDcsNyAr MTQ3LDcgQEAgRm9yIGEgZGVzY3JpcHRpb24gb2YgcG9zc2libGUgdmFsdWVzLCBzZWUgYHZjLWNo ZWNrLW1hc3Rlci10ZW1wbGF0ZXMnLiIKIAogKGF1dG9sb2FkICd2Yy1tYXN0ZXItbmFtZSAidmMt ZmlsZXdpc2UiKQogCi0oZGVmdW4gdmMtc2Njcy13b3JraW5nLXJldmlzaW9uIChmaWxlKQorKGRl ZnVuIHZjLXNjY3Mtd29ya2luZy1yZXZpc2lvbiAoZmlsZSAmb3B0aW9uYWwgY29uY3JldGUpCiAg ICJTQ0NTLXNwZWNpZmljIHZlcnNpb24gb2YgYHZjLXdvcmtpbmctcmV2aXNpb24nLiIKICAgKHdo ZW4gKGFuZCAoZmlsZS1yZWd1bGFyLXAgZmlsZSkgKHZjLW1hc3Rlci1uYW1lIGZpbGUpKQogICAg ICh3aXRoLXRlbXAtYnVmZmVyCmRpZmYgLS1naXQgYS9saXNwL3ZjL3ZjLXNyYy5lbCBiL2xpc3Av dmMvdmMtc3JjLmVsCmluZGV4IGQ5YWExYjEuLmQyZGQ1MDUgMTAwNjQ0Ci0tLSBhL2xpc3AvdmMv dmMtc3JjLmVsCisrKyBiL2xpc3AvdmMvdmMtc3JjLmVsCkBAIC0xOTgsNyArMTk4LDcgQEAgVGhp cyBmdW5jdGlvbiBkaWZmZXJzIGZyb20gdmMtZG8tY29tbWFuZCBpbiB0aGF0IGl0IGludm9rZXMg YHZjLXNyYy1wcm9ncmFtJy4iCiAJICAgKHNldHEgZmlsZS1saXN0IChjb25zICItLSIgZmlsZS1v ci1saXN0KSkpKQogICAgIChhcHBseSAndmMtZG8tY29tbWFuZCAob3IgYnVmZmVyICIqdmMqIikg MCB2Yy1zcmMtcHJvZ3JhbSBmaWxlLWxpc3QgZmxhZ3MpKSkKIAotKGRlZnVuIHZjLXNyYy13b3Jr aW5nLXJldmlzaW9uIChmaWxlKQorKGRlZnVuIHZjLXNyYy13b3JraW5nLXJldmlzaW9uIChmaWxl ICZvcHRpb25hbCBjb25jcmV0ZSkKICAgIlNSQy1zcGVjaWZpYyB2ZXJzaW9uIG9mIGB2Yy13b3Jr aW5nLXJldmlzaW9uJy4iCiAgIChsZXQgKChyZXN1bHQgKGlnbm9yZS1lcnJvcnMKIAkJICAod2l0 aC1vdXRwdXQtdG8tc3RyaW5nCmRpZmYgLS1naXQgYS9saXNwL3ZjL3ZjLXN2bi5lbCBiL2xpc3Av dmMvdmMtc3ZuLmVsCmluZGV4IDhkNmVhZTUuLjAxY2IxZTQgMTAwNjQ0Ci0tLSBhL2xpc3AvdmMv dmMtc3ZuLmVsCisrKyBiL2xpc3AvdmMvdmMtc3ZuLmVsCkBAIC0yNDAsNyArMjQwLDcgQEAgUkVT VUxUIGlzIGEgbGlzdCBvZiBjb25zZXMgKEZJTEUgLiBTVEFURSkgZm9yIGRpcmVjdG9yeSBESVIu IgogCSAgICAgKHByb3BlcnRpemUgcmVwbyAnZmFjZSAnZm9udC1sb2NrLXZhcmlhYmxlLW5hbWUt ZmFjZSkpKQogCSAgICh0ICIiKSkpKSkKIAotKGRlZnVuIHZjLXN2bi13b3JraW5nLXJldmlzaW9u IChmaWxlKQorKGRlZnVuIHZjLXN2bi13b3JraW5nLXJldmlzaW9uIChmaWxlICZvcHRpb25hbCBj b25jcmV0ZSkKICAgIlNWTi1zcGVjaWZpYyB2ZXJzaW9uIG9mIGB2Yy13b3JraW5nLXJldmlzaW9u Jy4iCiAgIDs7IFRoZXJlIGlzIG5vIG5lZWQgdG8gY29uc3VsdCBSQ1MgaGVhZGVycyB1bmRlciBT Vk4sIGJlY2F1c2Ugd2UKICAgOzsgZ2V0IHRoZSB3b3JrZmlsZSB2ZXJzaW9uIGZvciBmcmVlIHdo ZW4gd2UgcmVjb2duaXplIHRoYXQgYSBmaWxlCi0tIAoyLjUuMAoK --047d7b3a91e688c54b051e90c151--