From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28]) by sourceware.org (Postfix) with ESMTPS id D729B3858032; Wed, 19 Jan 2022 08:07:46 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org D729B3858032 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=suse.cz Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=suse.cz Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 9CE102170E; Wed, 19 Jan 2022 08:07:45 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_rsa; t=1642579665; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=QJVo8RrWkU08zZmvyEKmjBv+SCw9Is25vr3Q/6OijZQ=; b=UdxHABbAx0PL3hgUmG/193mQ7qESWkjzEmlONaJFnyi+0tXSdLYw2HcqKHVYUPZgwPTxaD dwsOSmpaXMMQE3QydjgNFc5gEeh0q4hxTwumVXNf/h4f3iRMqyfidm8BPcDgSSgYYeZ5Di oE8Z5+XaE+1dBBiKexVEmCmy/Cb6et8= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_ed25519; t=1642579665; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=QJVo8RrWkU08zZmvyEKmjBv+SCw9Is25vr3Q/6OijZQ=; b=phuNmQz65gooPcQ6AWvAyptfrYbn75HrKpMyBMjSOKl+CFKeUnbtHkG3aBMQAOWqMuQ0Op OAuzEKbzDIYjQnDg== Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 7CDBC13B2F; Wed, 19 Jan 2022 08:07:45 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id PrZfHdHG52GidgAAMHmgww (envelope-from ); Wed, 19 Jan 2022 08:07:45 +0000 Content-Type: multipart/mixed; boundary="------------8ih11I4IcRt9F5Owh8RbP4bG" Message-ID: <5a6b02d8-daed-bc5e-0f0d-c863265fbe2a@suse.cz> Date: Wed, 19 Jan 2022 09:07:45 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.5.0 Subject: Re: [PATCH] git-backport: support renamed .cc files in commit message. Content-Language: en-US To: Harald Anlauf , fortran@gcc.gnu.org Cc: gcc@gcc.gnu.org, gcc-patches@gcc.gnu.org References: <57564370-7184-ef62-039e-60b150058fd8@suse.cz> <68946bf6-4b2f-b8f3-20b3-5cf3f2fd611c@moene.org> <713a96b5-b82e-ffd7-d03b-7e05a4dede9e@suse.cz> <20220111155657.GA2646553@tucnak> <8a3f6503-7380-13bb-5731-18ff5474f68a@suse.cz> <20220111161636.GB2646553@tucnak> <78c91bbb-34d7-36f6-0d69-d8a4e7f446f5@suse.cz> <486de71c-d1fc-5ca7-4036-59462a75f116@suse.cz> <1bf6bb05-a51b-ccb1-2b36-e883d56b69b3@gmx.de> From: =?UTF-8?Q?Martin_Li=c5=a1ka?= In-Reply-To: <1bf6bb05-a51b-ccb1-2b36-e883d56b69b3@gmx.de> X-Spam-Status: No, score=-11.7 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, NICE_REPLY_A, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: gcc@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jan 2022 08:07:49 -0000 This is a multi-part message in MIME format. --------------8ih11I4IcRt9F5Owh8RbP4bG Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 1/18/22 20:10, Harald Anlauf via Fortran wrote: > Am 17.01.22 um 22:26 schrieb Martin Liška: >> On 1/12/22 16:54, Martin Liška wrote: >>> >>> There's a patch that enhances git-backport so that it updates commit >>> messages for files which name ends now with .cc and is still .c on a branch. >> >> The patch has been installed as I've made the renaming now. >> >> Cheers, >> Martin >> > > I just made a "git rebase" and had to manually fix the filenames > in the commit message.  Otherwise gcc-verify would complain. Sure and I'm adding a new script that basically follows all the 'did you mean' in gcc-verify and fixes that: ERR: unchanged file mentioned in a ChangeLog (did you mean "contrib/gcc-git-customization.sh"?): "contrib/gcc2-git-customization.sh" ... > > Would it make sense to have something that is clever enough for > rebase to do similar things as git-backport? Yes, a new git alias 'gcc-fix-changelog' is going to be available with the patch. Martin > > Thanks, > Harald > --------------8ih11I4IcRt9F5Owh8RbP4bG Content-Type: text/x-patch; charset=UTF-8; name="0001-Come-up-with-git-fix-changelog.py-script.patch" Content-Disposition: attachment; filename="0001-Come-up-with-git-fix-changelog.py-script.patch" Content-Transfer-Encoding: base64 RnJvbSA0ZjUwMjc0NWM4ZTI1NjJhZTE5MjE4MWJmMjU4NWJhZDQyNDE0ZDQ1IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBNYXJ0aW4gTGlza2EgPG1saXNrYUBzdXNlLmN6PgpE YXRlOiBXZWQsIDE5IEphbiAyMDIyIDA3OjU3OjA1ICswMTAwClN1YmplY3Q6IFtQQVRDSF0g Q29tZSB1cCB3aXRoIGdpdC1maXgtY2hhbmdlbG9nLnB5IHNjcmlwdC4KCmNvbnRyaWIvQ2hh bmdlTG9nOgoKCSogZ2l0LWJhY2twb3J0LnB5OiBVc2UgaXQuCgkqIGdpdC1maXgtY2hhbmdl bG9nLnB5OiBOZXcgZmlsZS4KCSogZ2NjLWdpdC1jdXN0b21pemF0aW9uLnNoOiBBZGQgbmV3 IGFsaWFzIGdpdCBnY2MtZml4LWNoYW5nZWxvZy4KLS0tCiBjb250cmliL2djYy1naXQtY3Vz dG9taXphdGlvbi5zaCB8ICAxICsKIGNvbnRyaWIvZ2l0LWJhY2twb3J0LnB5ICAgICAgICAg IHwgNDcgKy0tLS0tLS0tLS0tLS0tLQogY29udHJpYi9naXQtZml4LWNoYW5nZWxvZy5weSAg ICAgfCA5MiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogMyBmaWxlcyBjaGFu Z2VkLCA5NSBpbnNlcnRpb25zKCspLCA0NSBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEw MDc1NSBjb250cmliL2dpdC1maXgtY2hhbmdlbG9nLnB5CgpkaWZmIC0tZ2l0IGEvY29udHJp Yi9nY2MtZ2l0LWN1c3RvbWl6YXRpb24uc2ggYi9jb250cmliL2djYy1naXQtY3VzdG9taXph dGlvbi5zaAppbmRleCBhY2E2MWI3ODFmZi4uMmVlYzE3OTM3YWYgMTAwNzU1Ci0tLSBhL2Nv bnRyaWIvZ2NjLWdpdC1jdXN0b21pemF0aW9uLnNoCisrKyBiL2NvbnRyaWIvZ2NjLWdpdC1j dXN0b21pemF0aW9uLnNoCkBAIC0yNyw2ICsyNyw3IEBAIGdpdCBjb25maWcgYWxpYXMuZ2Nj LXVuZGVzY3IgXCEiZigpIHsgbz1cJChnaXQgY29uZmlnIC0tZ2V0IGdjYy1jb25maWcudXBz dHJlYW0pCiAKIGdpdCBjb25maWcgYWxpYXMuZ2NjLXZlcmlmeSAnIWYoKSB7ICJgZ2l0IHJl di1wYXJzZSAtLXNob3ctdG9wbGV2ZWxgL2NvbnRyaWIvZ2NjLWNoYW5nZWxvZy9naXRfY2hl Y2tfY29tbWl0LnB5IiAkQDsgfSA7IGYnCiBnaXQgY29uZmlnIGFsaWFzLmdjYy1iYWNrcG9y dCAnIWYoKSB7ICJgZ2l0IHJldi1wYXJzZSAtLXNob3ctdG9wbGV2ZWxgL2NvbnRyaWIvZ2l0 LWJhY2twb3J0LnB5IiAkQDsgfSA7IGYnCitnaXQgY29uZmlnIGFsaWFzLmdjYy1maXgtY2hh bmdlbG9nICchZigpIHsgImBnaXQgcmV2LXBhcnNlIC0tc2hvdy10b3BsZXZlbGAvY29udHJp Yi9naXQtZml4LWNoYW5nZWxvZy5weSIgJEA7IH0gOyBmJwogZ2l0IGNvbmZpZyBhbGlhcy5n Y2MtbWtsb2cgJyFmKCkgeyAiYGdpdCByZXYtcGFyc2UgLS1zaG93LXRvcGxldmVsYC9jb250 cmliL21rbG9nLnB5IiAkQDsgfSA7IGYnCiBnaXQgY29uZmlnIGFsaWFzLmdjYy1jb21taXQt bWtsb2cgJyFmKCkgeyAiYGdpdCByZXYtcGFyc2UgLS1zaG93LXRvcGxldmVsYC9jb250cmli L2dpdC1jb21taXQtbWtsb2cucHkiICIkQCI7IH07IGYnCiAKZGlmZiAtLWdpdCBhL2NvbnRy aWIvZ2l0LWJhY2twb3J0LnB5IGIvY29udHJpYi9naXQtYmFja3BvcnQucHkKaW5kZXggODMx ODlhMmI1YzcuLmZjMzY5ZDk3NzU0IDEwMDc1NQotLS0gYS9jb250cmliL2dpdC1iYWNrcG9y dC5weQorKysgYi9jb250cmliL2dpdC1iYWNrcG9ydC5weQpAQCAtMjIsMjkgKzIyLDkgQEAK IGltcG9ydCBhcmdwYXJzZQogaW1wb3J0IG9zCiBpbXBvcnQgc3VicHJvY2VzcwotaW1wb3J0 IHRlbXBmaWxlCiAKIHNjcmlwdF9mb2xkZXIgPSBvcy5wYXRoLmRpcm5hbWUob3MucGF0aC5h YnNwYXRoKF9fZmlsZV9fKSkKLXZlcmlmeV9zY3JpcHQgPSBvcy5wYXRoLmpvaW4oc2NyaXB0 X2ZvbGRlciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2djYy1jaGFuZ2Vsb2cv Z2l0X2NoZWNrX2NvbW1pdC5weScpCi0KLQotZGVmIHJlcGxhY2VfZmlsZV9pbl9jaGFuZ2Vs b2cobGluZXMsIGZpbGVuYW1lKToKLSAgICBpZiBub3QgZmlsZW5hbWUuZW5kc3dpdGgoJy5j YycpOgotICAgICAgICByZXR1cm4KLQotICAgICMgY29uc2lkZXIgYWxsIGNvbXBvbmVuZXRz IG9mIGEgcGF0aDogZ2NjL2lwYS1pY2YuY2MKLSAgICB3aGlsZSBmaWxlbmFtZToKLSAgICAg ICAgZm9yIGksIGxpbmUgaW4gZW51bWVyYXRlKGxpbmVzKToKLSAgICAgICAgICAgIGlmIGZp bGVuYW1lIGluIGxpbmU6Ci0gICAgICAgICAgICAgICAgbGluZSA9IGxpbmUucmVwbGFjZShm aWxlbmFtZSwgZmlsZW5hbWVbOi0xXSkKLSAgICAgICAgICAgICAgICBsaW5lc1tpXSA9IGxp bmUKLSAgICAgICAgICAgICAgICByZXR1cm4KLSAgICAgICAgcGFydHMgPSBmaWxlbmFtZS5z cGxpdCgnLycpCi0gICAgICAgIGlmIGxlbihwYXJ0cykgPT0gMToKLSAgICAgICAgICAgIHJl dHVybgotICAgICAgICBmaWxlbmFtZSA9ICcvJy5qb2luKHBhcnRzWzE6XSkKLQorZml4dXBf c2NyaXB0ID0gb3MucGF0aC5qb2luKHNjcmlwdF9mb2xkZXIsICdnaXQtZml4LWNoYW5nZWxv Zy5weScpCiAKIGlmIF9fbmFtZV9fID09ICdfX21haW5fXyc6CiAgICAgcGFyc2VyID0gYXJn cGFyc2UuQXJndW1lbnRQYXJzZXIoZGVzY3JpcHRpb249J0JhY2twb3J0IGEgZ2l0IHJldmlz aW9uLicpCkBAIC01MiwyNyArMzIsNCBAQCBpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgog ICAgIGFyZ3MgPSBwYXJzZXIucGFyc2VfYXJncygpCiAKICAgICBzdWJwcm9jZXNzLnJ1bign Z2l0IGNoZXJyeS1waWNrIC14ICVzJyAlIGFyZ3MucmV2aXNpb24sIHNoZWxsPVRydWUpCi0K LSAgICAjIFVwZGF0ZSBjb21taXQgbWVzc2FnZSBpZiBjaGFuZ2UgZm9yIGEgLmNjIGZpbGUg d2FzIHRha2VuCi0gICAgciA9IHN1YnByb2Nlc3MucnVuKGYne3ZlcmlmeV9zY3JpcHR9IEhF QUQnLCBzaGVsbD1UcnVlLCBlbmNvZGluZz0ndXRmOCcsCi0gICAgICAgICAgICAgICAgICAg ICAgIHN0ZG91dD1zdWJwcm9jZXNzLlBJUEUsIHN0ZGVycj1zdWJwcm9jZXNzLlBJUEUpCi0g ICAgaWYgci5yZXR1cm5jb2RlICE9IDA6Ci0gICAgICAgIGxpbmVzID0gci5zdGRvdXQuc3Bs aXRsaW5lcygpCi0gICAgICAgIGNtZCA9ICdnaXQgc2hvdyAtcyAtLWZvcm1hdD0lQicKLSAg ICAgICAgY29tbWl0X21lc3NhZ2UgPSBzdWJwcm9jZXNzLmNoZWNrX291dHB1dChjbWQsIHNo ZWxsPVRydWUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgZW5jb2Rpbmc9J3V0ZjgnKS5zdHJpcCgpCi0gICAgICAgIGNvbW1pdF9tZXNzYWdl ID0gY29tbWl0X21lc3NhZ2Uuc3BsaXRsaW5lcygpCi0KLSAgICAgICAgdG9kbyA9IFtsaW5l IGZvciBsaW5lIGluIGxpbmVzIGlmICd1bmNoYW5nZWQgZmlsZSBtZW50aW9uZWQnIGluIGxp bmVdCi0gICAgICAgIGZvciBpdGVtIGluIHRvZG86Ci0gICAgICAgICAgICBmaWxlbmFtZSA9 IGl0ZW0uc3BsaXQoKVstMV0uc3RyaXAoJyInKQotICAgICAgICAgICAgcmVwbGFjZV9maWxl X2luX2NoYW5nZWxvZyhjb21taXRfbWVzc2FnZSwgZmlsZW5hbWUpCi0KLSAgICAgICAgd2l0 aCB0ZW1wZmlsZS5OYW1lZFRlbXBvcmFyeUZpbGUoJ3cnLCBlbmNvZGluZz0ndXRmOCcsCi0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlbGV0ZT1GYWxzZSkg YXMgdzoKLSAgICAgICAgICAgIHcud3JpdGUoJ1xuJy5qb2luKGNvbW1pdF9tZXNzYWdlKSkK LSAgICAgICAgICAgIHcuY2xvc2UoKQotICAgICAgICAgICAgc3VicHJvY2Vzcy5jaGVja19v dXRwdXQoZidnaXQgY29tbWl0IC0tYW1lbmQgLUYge3cubmFtZX0nLAotICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgc2hlbGw9VHJ1ZSwgZW5jb2Rpbmc9J3V0ZjgnKQot ICAgICAgICAgICAgb3MudW5saW5rKHcubmFtZSkKLSAgICAgICAgICAgIHByaW50KGYnQ29t bWl0IG1lc3NhZ2UgdXBkYXRlZDoge2xlbih0b2RvKX0gLmNjIGZpbGUocykgY2hhbmdlZC4n KQorICAgIHN1YnByb2Nlc3MucnVuKGZpeHVwX3NjcmlwdCwgc2hlbGw9VHJ1ZSkKZGlmZiAt LWdpdCBhL2NvbnRyaWIvZ2l0LWZpeC1jaGFuZ2Vsb2cucHkgYi9jb250cmliL2dpdC1maXgt Y2hhbmdlbG9nLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAwMDAwLi5j MTVlNDVjMTFmYQotLS0gL2Rldi9udWxsCisrKyBiL2NvbnRyaWIvZ2l0LWZpeC1jaGFuZ2Vs b2cucHkKQEAgLTAsMCArMSw5MiBAQAorIyEvdXNyL2Jpbi9lbnYgcHl0aG9uMworCisjIENv cHlyaWdodCAoQykgMjAyMCBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KKyMKKyMg VGhpcyBmaWxlIGlzIHBhcnQgb2YgR0NDLgorIworIyBHQ0MgaXMgZnJlZSBzb2Z0d2FyZTsg eW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorIyBpdCB1bmRlciB0aGUg dGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBi eQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAzLCBv ciAoYXQgeW91ciBvcHRpb24pCisjIGFueSBsYXRlciB2ZXJzaW9uLgorIworIyBHQ0MgaXMg ZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0 IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFu dHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQ VVJQT1NFLiAgU2VlIHRoZQorIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9y ZSBkZXRhaWxzLgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRo ZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIEdDQzsgc2VlIHRo ZSBmaWxlIENPUFlJTkcuICBJZiBub3QsIHdyaXRlIHRvCisjIHRoZSBGcmVlIFNvZnR3YXJl IEZvdW5kYXRpb24sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCisjIEJvc3Rv biwgTUEgMDIxMTAtMTMwMSwgVVNBLgorIworIyBUaGUgc2NyaXB0IHRyaWVzIHRvIGZpeCBj b21taXQgbWVzc2FnZSB3aGVyZSBDaGFuZ2VMb2cgZW50cmllcworIyBjYW4gcG9pbnQgdG8g LmNjIHJlbmFtZWQgZmlsZXMuCisKK2ltcG9ydCBhcmdwYXJzZQoraW1wb3J0IG9zCitpbXBv cnQgc3VicHJvY2VzcworaW1wb3J0IHRlbXBmaWxlCisKK0RFU0NSSVBUSU9OID0gJ0ZpeCB1 cCBDaGFuZ2VMb2cgb2YgdGhlIGN1cnJlbnQgY29tbWl0LicKKworc2NyaXB0X2ZvbGRlciA9 IG9zLnBhdGguZGlybmFtZShvcy5wYXRoLmFic3BhdGgoX19maWxlX18pKQordmVyaWZ5X3Nj cmlwdCA9IG9zLnBhdGguam9pbihzY3JpcHRfZm9sZGVyLAorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAnZ2NjLWNoYW5nZWxvZy9naXRfY2hlY2tfY29tbWl0LnB5JykKKworCitk ZWYgcmVwbGFjZV9maWxlX2luX2NoYW5nZWxvZyhsaW5lcywgZmlsZW5hbWUsIGZpeGVkKToK KyAgICAjIGNvbnNpZGVyIGFsbCBjb21wb25lbmV0cyBvZiBhIHBhdGg6IGdjYy9pcGEtaWNm LmNjCisgICAgd2hpbGUgZmlsZW5hbWU6CisgICAgICAgIGZvciBpLCBsaW5lIGluIGVudW1l cmF0ZShsaW5lcyk6CisgICAgICAgICAgICBpZiBmaWxlbmFtZSBpbiBsaW5lOgorICAgICAg ICAgICAgICAgIGxpbmVzW2ldID0gbGluZS5yZXBsYWNlKGZpbGVuYW1lLCBmaXhlZCkKKyAg ICAgICAgICAgICAgICByZXR1cm4KKworICAgICAgICBwYXJ0cyA9IGZpbGVuYW1lLnNwbGl0 KCcvJykKKyAgICAgICAgaWYgbGVuKHBhcnRzKSA9PSAxOgorICAgICAgICAgICAgcmV0dXJu CisgICAgICAgIGZpbGVuYW1lID0gJy8nLmpvaW4ocGFydHNbMTpdKQorICAgICAgICBmaXhl ZCA9ICcvJy5qb2luKGZpeGVkLnNwbGl0KCcvJylbMTpdKQorCisKK2lmIF9fbmFtZV9fID09 ICdfX21haW5fXyc6CisgICAgcGFyc2VyID0gYXJncGFyc2UuQXJndW1lbnRQYXJzZXIoZGVz Y3JpcHRpb249REVTQ1JJUFRJT04pCisgICAgYXJncyA9IHBhcnNlci5wYXJzZV9hcmdzKCkK KworICAgICMgVXBkYXRlIGNvbW1pdCBtZXNzYWdlIGlmIGNoYW5nZSBmb3IgYSAuY2MgZmls ZSB3YXMgdGFrZW4KKyAgICByID0gc3VicHJvY2Vzcy5ydW4oZid7dmVyaWZ5X3NjcmlwdH0g SEVBRCcsIHNoZWxsPVRydWUsIGVuY29kaW5nPSd1dGY4JywKKyAgICAgICAgICAgICAgICAg ICAgICAgc3Rkb3V0PXN1YnByb2Nlc3MuUElQRSwgc3RkZXJyPXN1YnByb2Nlc3MuUElQRSkK KyAgICBpZiByLnJldHVybmNvZGUgIT0gMDoKKyAgICAgICAgbGluZXMgPSByLnN0ZG91dC5z cGxpdGxpbmVzKCkKKyAgICAgICAgY21kID0gJ2dpdCBzaG93IC1zIC0tZm9ybWF0PSVCJwor ICAgICAgICBjb21taXRfbWVzc2FnZSA9IHN1YnByb2Nlc3MuY2hlY2tfb3V0cHV0KGNtZCwg c2hlbGw9VHJ1ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBlbmNvZGluZz0ndXRmOCcpLnN0cmlwKCkKKyAgICAgICAgY29tbWl0X21lc3Nh Z2UgPSBjb21taXRfbWVzc2FnZS5zcGxpdGxpbmVzKCkKKworICAgICAgICAjIFBhcnNlIHRo ZSBmb2xsb3dpbmcgbGluZXM6CisgICAgICAgICMgRVJSOiB1bmNoYW5nZWQgZmlsZSBtZW50 aW9uZWQgaW4gYSBDaGFuZ2VMb2cgXAorICAgICAgICAjIChkaWQgeW91IG1lYW4gImdjYy9p cGEtaWNmLmNjIj8pOiAiZ2NjL2lwYS1pY2YuYyIKKyAgICAgICAgcmVwbGFjZWQgPSAwCisg ICAgICAgIGZvciBsaW5lIGluIGxpbmVzOgorICAgICAgICAgICAgaWYgKCd1bmNoYW5nZWQg ZmlsZSBtZW50aW9uZWQnIGluIGxpbmUgYW5kCisgICAgICAgICAgICAgICAgICAgICdkaWQg eW91IG1lYW4nIGluIGxpbmUpOgorICAgICAgICAgICAgICAgIGZpbGVuYW1lID0gbGluZS5z cGxpdCgpWy0xXS5zdHJpcCgnIicpCisgICAgICAgICAgICAgICAgZml4ZWQgPSBsaW5lW2xp bmUuaW5kZXgoJ2RpZCB5b3UgbWVhbicpOl0KKyAgICAgICAgICAgICAgICBmaXhlZCA9IGZp eGVkW2ZpeGVkLmluZGV4KCciJykgKyAxOl0KKyAgICAgICAgICAgICAgICBmaXhlZCA9IGZp eGVkWzpmaXhlZC5pbmRleCgnIicpXQorCisgICAgICAgICAgICAgICAgaWYgZmlsZW5hbWUu Y291bnQoJy8nKSA9PSBmaXhlZC5jb3VudCgnLycpOgorICAgICAgICAgICAgICAgICAgICBy ZXBsYWNlX2ZpbGVfaW5fY2hhbmdlbG9nKGNvbW1pdF9tZXNzYWdlLCBmaWxlbmFtZSwgZml4 ZWQpCisgICAgICAgICAgICAgICAgICAgIHJlcGxhY2VkICs9IDEKKworICAgICAgICBpZiBy ZXBsYWNlZDoKKyAgICAgICAgICAgIHdpdGggdGVtcGZpbGUuTmFtZWRUZW1wb3JhcnlGaWxl KCd3JywgZW5jb2Rpbmc9J3V0ZjgnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgZGVsZXRlPUZhbHNlKSBhcyB3OgorICAgICAgICAgICAgICAgIHcu d3JpdGUoJ1xuJy5qb2luKGNvbW1pdF9tZXNzYWdlKSkKKyAgICAgICAgICAgICAgICB3LmNs b3NlKCkKKyAgICAgICAgICAgICAgICBzdWJwcm9jZXNzLmNoZWNrX291dHB1dChmJ2dpdCBj b21taXQgLS1hbWVuZCAtRiB7dy5uYW1lfScsCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgc2hlbGw9VHJ1ZSwgZW5jb2Rpbmc9J3V0ZjgnKQorICAgICAgICAg ICAgICAgIG9zLnVubGluayh3Lm5hbWUpCisgICAgICAgICAgICAgICAgcHJpbnQoZidDb21t aXQgbWVzc2FnZSB1cGRhdGVkOiB7cmVwbGFjZWR9IGZpbGUocykgcmVuYW1lZC4nKQorICAg ICAgICBlbHNlOgorICAgICAgICAgICAgcHJpbnQoJ0NvbW1pdCBtZXNzYWdlIGhhcyBub3Qg YmVlbiB1cGRhdGVkLicpCi0tIAoyLjM0LjEKCg== --------------8ih11I4IcRt9F5Owh8RbP4bG--