Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1rjpj6-008Bwo-I5 for pgsql-committers@arkaria.postgresql.org; Tue, 12 Mar 2024 00:10:41 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1rjpj4-002z0L-48 for pgsql-committers@arkaria.postgresql.org; Tue, 12 Mar 2024 00:10:38 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1rjpj3-002yx8-KJ for pgsql-committers@lists.postgresql.org; Tue, 12 Mar 2024 00:10:38 +0000 Received: from mail-oi1-x22e.google.com ([2607:f8b0:4864:20::22e]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1rjpiz-00424a-Pa for pgsql-committers@lists.postgresql.org; Tue, 12 Mar 2024 00:10:36 +0000 Received: by mail-oi1-x22e.google.com with SMTP id 5614622812f47-3c24ff042ebso598877b6e.3 for ; Mon, 11 Mar 2024 17:10:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=j-davis-com.20230601.gappssmtp.com; s=20230601; t=1710202234; x=1710807034; darn=lists.postgresql.org; h=mime-version:user-agent:references:in-reply-to:date:cc:to:from :subject:message-id:from:to:cc:subject:date:message-id:reply-to; bh=zHJBp+yoGZDW8Hov14byeZHlPZ2evBFkil/3Y91Ubio=; b=xMp789ZXj08X8WWOD1jXhi+FCZ7bAytYN4c430TgL6RMCRUPoNLLxaDFN6EXq/Fite k/bnm31fof2Gupkl8ZTP5oxNBwQm/teJJ45FKLUSbEdw0iYgpD8PLjCDkrY4HrOwsemT E8y88KGtDDClvsmxGle/FF0l6N71pVUphbjchkALnWpnI8MQrF7n267in+T2IQj4lCAE LVesckLK8r4ViesCPKOghAElm9tvW9tV0y3GxfyYm+8VABtjkKUKZHaKmJpuERNAPSn7 xATwxwwtNyi3qvWN7Ryd3aN4hcmybK4FbdgLD8VWmuYrNi5R1eI66YsnFmt8D8+FNwVG nwOg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1710202234; x=1710807034; h=mime-version:user-agent:references:in-reply-to:date:cc:to:from :subject:message-id:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=zHJBp+yoGZDW8Hov14byeZHlPZ2evBFkil/3Y91Ubio=; b=HO92BgnoB6LC6wx9deki+wwdWARU0xo1JPw+Mi/N1qKUc3mbfl6Z/U6qPRFP7atp+h NkjNHbnBCaRQFZGLY+0Z/FJoIm00qxqxbTAgKgwdm9267ORJP8E+UlAmdwMAKZBKvNgN U61ClEmrTZvpjoD+Xo5iPkJNjkZi6wWoQ51B8FrT+dDXqRP3cD9PdDDVSnYkDc2CYNs3 fgn0Do/AeuAVT0w4cIGx2aGGT+HqN07NzZqRtoRjQbgZLkb0cT7apslE2vj1I3BqsBB3 rfU9K6jJFeRAFfpfqM73ZVy6daT/fGQ3uH1/lovQxk5eymOwN3nXfqRylaeEqpYNuNu6 MYpg== X-Gm-Message-State: AOJu0YzJrLN1dn/CanjlAePdGD0WDmSXHDtHjsQCwlo+HqWcs7WTlpVh V6JrYaj8QIrs+8gg1ZSOvsZoT6kMk1LBEjnINBH95adhhweMz0chrrIlrOHSYqF71rnIiXiIOlA = X-Google-Smtp-Source: AGHT+IHswByLyuDrxHaIKapgbqk33ZlpeqSyUjc6gQ+MeuwL7CfPBa1nDGD9Pmfezu1mdElrr7c23w== X-Received: by 2002:a54:488c:0:b0:3c2:277e:66fe with SMTP id r12-20020a54488c000000b003c2277e66femr8113703oic.49.1710202234369; Mon, 11 Mar 2024 17:10:34 -0700 (PDT) Received: from jeff-laptop.lan (c-76-102-242-158.hsd1.ca.comcast.net. [76.102.242.158]) by smtp.gmail.com with ESMTPSA id s7-20020a056a00194700b006e5c464c0a9sm4901954pfk.23.2024.03.11.17.10.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 11 Mar 2024 17:10:33 -0700 (PDT) Message-ID: Subject: Re: pgsql: Catalog changes preparing for builtin collation provider. From: Jeff Davis To: Tom Lane Cc: pgsql-committers@lists.postgresql.org Date: Mon, 11 Mar 2024 17:10:32 -0700 In-Reply-To: <1560269.1710194675@sss.pgh.pa.us> References: <8899c7c62b86370076110920686fd24863b69a01.camel@j-davis.com> <1222780.1710047108@sss.pgh.pa.us> <0ef325fa06e7a1605c4e119c4ecb637c67e5fb4e.camel@j-davis.com> <1547879.1710188139@sss.pgh.pa.us> <1548559.1710188512@sss.pgh.pa.us> <1560269.1710194675@sss.pgh.pa.us> Content-Type: multipart/mixed; boundary="=-+N3JTWfJdo9gXtarRI7b" User-Agent: Evolution 3.44.4-0ubuntu2 MIME-Version: 1.0 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --=-+N3JTWfJdo9gXtarRI7b Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Mon, 2024-03-11 at 18:04 -0400, Tom Lane wrote: > Another question is why it didn't fail on all the animals with > similar > Perl vintage.=C2=A0 My guess about that is that there's some configuratio= n > difference causing the Perl script to take slightly different code > paths, but it's just a guess. Sounds plausible. >=20 > Yeah.=C2=A0 I was dismayed to find that there's no perlcritic check for > this, because it sure seems like the kind of thing you don't want > to invoke by accident. Additionally, the delimiters can many characters, which makes simple grepping harder. I found a few cases -- attached a patch. Something is better than nothing. I'm not sure that I got the /.*/ cases right, but they don't seem to be expecting any output, so /.*/ seemed like the right pattern. Regards, Jeff Davis --=-+N3JTWfJdo9gXtarRI7b Content-Disposition: attachment; filename="v1-0001-perl-avoid-empty-regex-patterns.patch" Content-Type: text/x-patch; name="v1-0001-perl-avoid-empty-regex-patterns.patch"; charset="UTF-8" Content-Transfer-Encoding: base64 RnJvbSBiZTVhYTY3N2UzNzE4MGE4YzFiMGZhZWJjY2VhYjU1MDZiMWM4MTMwIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBKZWZmIERhdmlzIDxqZWZmQGotZGF2aXMuY29tPgpEYXRlOiBN b24sIDExIE1hciAyMDI0IDE2OjQ0OjU2IC0wNzAwClN1YmplY3Q6IFtQQVRDSCB2MV0gcGVybDog YXZvaWQgZW1wdHkgcmVnZXggcGF0dGVybnMKCkVtcHR5IHBhdHRlcm5zIGhhdmUgc3BlY2lhbCBi ZWhhdmlvciB0aGF0IHVzZXMgdGhlIGxhc3Qgc3VjY2Vzc2Z1bApwYXR0ZXJuIG1hdGNoLiBUaGlz IGJlaGF2aW9yIGNhbiBiZSBzdXJwcmlzaW5nLCBzbyByZW1vdmUgZW1wdHkKcGF0dGVybnMgYW5k IGluc3RlYWQgbWF0Y2ggYWdhaW5zdCBleGFjdGx5IHdoYXQgaXMgaW50ZW5kZWQKKGUuZy4gL14k LyBvciAvLiovKS4KClVuZm9ydHVuYXRlbHkgdGhlcmUncyBub3QgYW4gZWFzeSB3YXkgdG8gY2hl Y2sgZm9yIHRoaXMgaW4gYW4KYXV0b21hdGVkIHdheSwgc28gaXQncyBsaWtlbHkgdGhhdCBzb21l IGNhc2VzIGhhdmUgYmVlbiBtaXNzZWQgYW5kCndpbGwgYmUgbWlzc2VkIGluIHRoZSBmdXR1cmUu IFRoaXMgY29tbWl0IGp1c3QgY2xlYW5zIHVwIGtub3duCmluc3RhbmNlcy4KCkRpc2N1c3Npb246 IGh0dHBzOi8vcG9zdGdyLmVzL20vMTU0ODU1OS4xNzEwMTg4NTEyQHNzcy5wZ2gucGEudXMKLS0t CiBzcmMvYmluL3BnX3VwZ3JhZGUvdC8wMDNfbG9naWNhbF9zbG90cy5wbCAgIHwgNCArKy0tCiBz cmMvYmluL3BnX3VwZ3JhZGUvdC8wMDRfc3Vic2NyaXB0aW9uLnBsICAgIHwgMiArLQogc3JjL2Jp bi9wc3FsL3QvMDAxX2Jhc2ljLnBsICAgICAgICAgICAgICAgICB8IDggKysrKy0tLS0KIHNyYy9i aW4vcHNxbC90LzAxMF90YWJfY29tcGxldGlvbi5wbCAgICAgICAgfCAyICstCiBzcmMvdGVzdC9y ZWNvdmVyeS90LzAzN19pbnZhbGlkX2RhdGFiYXNlLnBsIHwgMiArLQogNSBmaWxlcyBjaGFuZ2Vk LCA5IGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjL2Jpbi9w Z191cGdyYWRlL3QvMDAzX2xvZ2ljYWxfc2xvdHMucGwgYi9zcmMvYmluL3BnX3VwZ3JhZGUvdC8w MDNfbG9naWNhbF9zbG90cy5wbAppbmRleCA4M2Q3MWMzMDg0Li4yNTZkZmQ1M2IxIDEwMDY0NAot LS0gYS9zcmMvYmluL3BnX3VwZ3JhZGUvdC8wMDNfbG9naWNhbF9zbG90cy5wbAorKysgYi9zcmMv YmluL3BnX3VwZ3JhZGUvdC8wMDNfbG9naWNhbF9zbG90cy5wbApAQCAtNzgsNyArNzgsNyBAQCBj b21tYW5kX2NoZWNrc19hbGwoCiAJWwogCQlxci9tYXhfcmVwbGljYXRpb25fc2xvdHMgXCgxXCkg bXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gdGhlIG51bWJlciBvZiBsb2dpY2FsIHJl cGxpY2F0aW9uIHNsb3RzIFwoMlwpIG9uIHRoZSBvbGQgY2x1c3Rlci8KIAldLAotCVtxci8vXSwK KwlbcXIvXiQvXSwKIAkncnVuIG9mIHBnX3VwZ3JhZGUgd2hlcmUgdGhlIG5ldyBjbHVzdGVyIGhh cyBpbnN1ZmZpY2llbnQgbWF4X3JlcGxpY2F0aW9uX3Nsb3RzJwogKTsKIG9rKCAtZCAkbmV3cHVi LT5kYXRhX2RpciAuICIvcGdfdXBncmFkZV9vdXRwdXQuZCIsCkBAIC0xMTgsNyArMTE4LDcgQEAg Y29tbWFuZF9jaGVja3NfYWxsKAogCVsKIAkJcXIvWW91ciBpbnN0YWxsYXRpb24gY29udGFpbnMg bG9naWNhbCByZXBsaWNhdGlvbiBzbG90cyB0aGF0IGNhbid0IGJlIHVwZ3JhZGVkLi8KIAldLAot CVtxci8vXSwKKwlbcXIvXiQvXSwKIAkncnVuIG9mIHBnX3VwZ3JhZGUgb2Ygb2xkIGNsdXN0ZXIg d2l0aCBzbG90cyBoYXZpbmcgdW5jb25zdW1lZCBXQUwgcmVjb3JkcycKICk7CiAKZGlmZiAtLWdp dCBhL3NyYy9iaW4vcGdfdXBncmFkZS90LzAwNF9zdWJzY3JpcHRpb24ucGwgYi9zcmMvYmluL3Bn X3VwZ3JhZGUvdC8wMDRfc3Vic2NyaXB0aW9uLnBsCmluZGV4IGRmNWQ2ZGZmYmMuLmM4ZWUyMzkw ZDEgMTAwNjQ0Ci0tLSBhL3NyYy9iaW4vcGdfdXBncmFkZS90LzAwNF9zdWJzY3JpcHRpb24ucGwK KysrIGIvc3JjL2Jpbi9wZ191cGdyYWRlL3QvMDA0X3N1YnNjcmlwdGlvbi5wbApAQCAtNjgsNyAr NjgsNyBAQCBjb21tYW5kX2NoZWNrc19hbGwoCiAJWwogCQlxci9tYXhfcmVwbGljYXRpb25fc2xv dHMgXCgwXCkgbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gdGhlIG51bWJlciBvZiBz dWJzY3JpcHRpb25zIFwoMVwpIG9uIHRoZSBvbGQgY2x1c3Rlci8KIAldLAotCVtxci8vXSwKKwlb cXIvXiQvXSwKIAkncnVuIG9mIHBnX3VwZ3JhZGUgd2hlcmUgdGhlIG5ldyBjbHVzdGVyIGhhcyBp bnN1ZmZpY2llbnQgbWF4X3JlcGxpY2F0aW9uX3Nsb3RzJwogKTsKIApkaWZmIC0tZ2l0IGEvc3Jj L2Jpbi9wc3FsL3QvMDAxX2Jhc2ljLnBsIGIvc3JjL2Jpbi9wc3FsL3QvMDAxX2Jhc2ljLnBsCmlu ZGV4IDlmMGI2Y2Y4Y2EuLmNlODc1Y2UzMTYgMTAwNjQ0Ci0tLSBhL3NyYy9iaW4vcHNxbC90LzAw MV9iYXNpYy5wbAorKysgYi9zcmMvYmluL3BzcWwvdC8wMDFfYmFzaWMucGwKQEAgLTQxMiwyMyAr NDEyLDIzIEBAIG15ICRwZXJsYmluID0gJF5YOwogJHBlcmxiaW4gPX4gcyFcXCEvIWcgaWYgJFBv c3RncmVTUUw6OlRlc3Q6OlV0aWxzOjp3aW5kb3dzX29zOwogbXkgJHBpcGVfY21kID0gIiRwZXJs YmluIC1wZSAnJyA+JGdfZmlsZSI7CiAKLXBzcWxfbGlrZSgkbm9kZSwgIlNFTEVDVCAnb25lJyBc XGcgfCAkcGlwZV9jbWQiLCBxci8vLCAib25lIGNvbW1hbmQgXFxnIik7Citwc3FsX2xpa2UoJG5v ZGUsICJTRUxFQ1QgJ29uZScgXFxnIHwgJHBpcGVfY21kIiwgcXIvLiovLCAib25lIGNvbW1hbmQg XFxnIik7CiBteSAkYzEgPSBzbHVycF9maWxlKCRnX2ZpbGUpOwogbGlrZSgkYzEsIHFyL29uZS8p OwogCi1wc3FsX2xpa2UoJG5vZGUsICJTRUxFQ1QgJ3R3bycgXFw7IFNFTEVDVCAndGhyZWUnIFxc ZyB8ICRwaXBlX2NtZCIsIHFyLy8sICJ0d28gY29tbWFuZHMgXFxnIik7Citwc3FsX2xpa2UoJG5v ZGUsICJTRUxFQ1QgJ3R3bycgXFw7IFNFTEVDVCAndGhyZWUnIFxcZyB8ICRwaXBlX2NtZCIsIHFy Ly4qLywgInR3byBjb21tYW5kcyBcXGciKTsKIG15ICRjMiA9IHNsdXJwX2ZpbGUoJGdfZmlsZSk7 CiBsaWtlKCRjMiwgcXIvdHdvLip0aHJlZS9zKTsKIAogCi1wc3FsX2xpa2UoJG5vZGUsICJcXHNl dCBTSE9XX0FMTF9SRVNVTFRTIDBcblNFTEVDVCAnZm91cicgXFw7IFNFTEVDVCAnZml2ZScgXFxn IHwgJHBpcGVfY21kIiwgcXIvLywKK3BzcWxfbGlrZSgkbm9kZSwgIlxcc2V0IFNIT1dfQUxMX1JF U1VMVFMgMFxuU0VMRUNUICdmb3VyJyBcXDsgU0VMRUNUICdmaXZlJyBcXGcgfCAkcGlwZV9jbWQi LCBxci8uKi8sCiAgICJ0d28gY29tbWFuZHMgXFxnIHdpdGggb25seSBsYXN0IHJlc3VsdCIpOwog bXkgJGMzID0gc2x1cnBfZmlsZSgkZ19maWxlKTsKIGxpa2UoJGMzLCBxci9maXZlLyk7CiB1bmxp a2UoJGMzLCBxci9mb3VyLyk7CiAKIHBzcWxfbGlrZSgkbm9kZSwgImNvcHkgKHZhbHVlcyAoJ2Zv bycpLCgnYmFyJykpIHRvIHN0ZG91dCBcXGcgfCAkcGlwZV9jbWQiLAotCQkgIHFyLy8sCisJCSAg cXIvLiovLAogCQkgICJjb3B5IG91dHB1dCBwYXNzZWQgdG8gXFxnIHBpcGUiKTsKIG15ICRjNCA9 IHNsdXJwX2ZpbGUoJGdfZmlsZSk7CiBsaWtlKCRjNCwgcXIvZm9vLipiYXIvcyk7CmRpZmYgLS1n aXQgYS9zcmMvYmluL3BzcWwvdC8wMTBfdGFiX2NvbXBsZXRpb24ucGwgYi9zcmMvYmluL3BzcWwv dC8wMTBfdGFiX2NvbXBsZXRpb24ucGwKaW5kZXggYjY1NzViMDc1ZS4uZDNhOTVhYzA2NiAxMDA2 NDQKLS0tIGEvc3JjL2Jpbi9wc3FsL3QvMDEwX3RhYl9jb21wbGV0aW9uLnBsCisrKyBiL3NyYy9i aW4vcHNxbC90LzAxMF90YWJfY29tcGxldGlvbi5wbApAQCAtNDE0LDcgKzQxNCw3IEBAIGNoZWNr X2NvbXBsZXRpb24oCiBjbGVhcl9xdWVyeSgpOwogCiAjIGNoZWNrIG5vLWNvbXBsZXRpb25zIGNv ZGUgcGF0aAotY2hlY2tfY29tcGxldGlvbigiYmxhcmcgXHRcdCIsIHFyLy8sICJjaGVjayBjb21w bGV0aW9uIGZhaWx1cmUgcGF0aCIpOworY2hlY2tfY29tcGxldGlvbigiYmxhcmcgXHRcdCIsIHFy Ly4qLywgImNoZWNrIGNvbXBsZXRpb24gZmFpbHVyZSBwYXRoIik7CiAKIGNsZWFyX3F1ZXJ5KCk7 CiAKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlY292ZXJ5L3QvMDM3X2ludmFsaWRfZGF0YWJhc2Uu cGwgYi9zcmMvdGVzdC9yZWNvdmVyeS90LzAzN19pbnZhbGlkX2RhdGFiYXNlLnBsCmluZGV4IDMy YjdkOGFmNTcuLjY4NGNkY2E5MjggMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L3JlY292ZXJ5L3QvMDM3 X2ludmFsaWRfZGF0YWJhc2UucGwKKysrIGIvc3JjL3Rlc3QvcmVjb3ZlcnkvdC8wMzdfaW52YWxp ZF9kYXRhYmFzZS5wbApAQCAtOTgsNyArOTgsNyBAQCBvayggJGJncHNxbC0+cXVlcnlfc2FmZSgK IAkiYmxvY2tlZCBEUk9QIERBVEFCQVNFIGNvbXBsZXRpb24iKTsKIAogIyBUcnkgdG8gZHJvcC4g VGhpcyB3aWxsIHdhaXQgZHVlIHRvIHRoZSBzdGlsbCBoZWxkIGxvY2suCi0kYmdwc3FsLT5xdWVy eV91bnRpbChxci8vLCAiRFJPUCBEQVRBQkFTRSByZWdyZXNzaW9uX2ludmFsaWRfaW50ZXJydXB0 O1xuIik7CiskYmdwc3FsLT5xdWVyeV91bnRpbChxci8uKi8sICJEUk9QIERBVEFCQVNFIHJlZ3Jl c3Npb25faW52YWxpZF9pbnRlcnJ1cHQ7XG4iKTsKIAogIyBFbnN1cmUgd2UncmUgd2FpdGluZyBm b3IgdGhlIGxvY2sKICRub2RlLT5wb2xsX3F1ZXJ5X3VudGlsKCdwb3N0Z3JlcycsCi0tIAoyLjM0 LjEKCg== --=-+N3JTWfJdo9gXtarRI7b--