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 1rZmDl-006MMI-Ps for pgsql-hackers@arkaria.postgresql.org; Tue, 13 Feb 2024 06:24:47 +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 1rZmDk-00FuXn-DA for pgsql-hackers@arkaria.postgresql.org; Tue, 13 Feb 2024 06:24:44 +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 1rZmDi-00FuXZ-Bs for pgsql-hackers@lists.postgresql.org; Tue, 13 Feb 2024 06:24:44 +0000 Received: from fhigh1-smtp.messagingengine.com ([103.168.172.152]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1rZmDc-006UUV-GK for pgsql-hackers@postgresql.org; Tue, 13 Feb 2024 06:24:41 +0000 Received: from compute6.internal (compute6.nyi.internal [10.202.2.47]) by mailfhigh.nyi.internal (Postfix) with ESMTP id C8E5811400F2; Tue, 13 Feb 2024 01:24:34 -0500 (EST) Received: from mailfrontend1 ([10.202.2.162]) by compute6.internal (MEProxy); Tue, 13 Feb 2024 01:24:34 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=eisentraut.org; h=cc:cc:content-transfer-encoding:content-type:content-type :date:date:from:from:in-reply-to:in-reply-to:message-id :mime-version:references:reply-to:subject:subject:to:to; s=fm2; t=1707805474; x=1707891874; bh=KBUdS54RmRmOPQDxPaaYNfaqDvhAR3sL o2HswD/8vgI=; b=hRjGFT5eFk9Pm33fdQdPdOcK8NeqDx7e51rCj6iOZB/1MysO +czMLmP2R1QG6mBALjA7IQsjFsC6SKNlvrbEqmaTW+zk2lJi5V3BTZQa6A2r0PMQ +14X5VRnUBnkOBBUB36Z3cxpVHLorjMH+tpHuUyyOsbk0gj/FbhmDXlKW5DpVfr6 xEhl0fq8DTWbKFzbRHN89uOdT1WT3FBEa/gXKZ3ZZ6AXtlarmbvyZIf/FqM7G+y3 pIu5v0Q7b08orxy+rbe9QRtpaD/7MIwn7cDqQkw4so40r+GyUhx+A5mPKm7InrN8 qw8jZEC9mwSQQ+whmCSLX3pJ3kHVF35Y8+KnHg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm3; t=1707805474; x= 1707891874; bh=KBUdS54RmRmOPQDxPaaYNfaqDvhAR3sLo2HswD/8vgI=; b=H qg0zMNLHD/EH2ANNpEwj5dvAd/NHbxI3kzmKyXORYiO2a5s2GrEcyUm3gg1hUIjq MJ+wFaqX6Gelrf1aIOBXkhP422WJPGBIEX1VXh56yuAVJrE1ysQkR0q1r/5lXg+p tBE4SUECbr9QtFGGnUtZWFn7xSbMRkId4p6/JrDpmhCLO8l59c6PiS0O40JnzQP/ qlVSVmUQkDHEgdofnaLFdbliCQH5aA0U+POWHumLWUIaobEKMqR/MJzXBeDBrdpS LsTME2fIfMStBJyrX8tF4lKlg9Ks7BSaIyb2K4luFG2xQ78PrKQ/a/vuqfJILQPN ZkN+3MHQ7ivxN68nlTHgQ== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrudeggdeliecutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc fjughrpefkffggfgfuvfevfhfhjggtgfesthekredttddvjeenucfhrhhomheprfgvthgv rhcugfhishgvnhhtrhgruhhtuceophgvthgvrhesvghishgvnhhtrhgruhhtrdhorhhgqe enucggtffrrghtthgvrhhnpeejhfevhedttefgfffhhfeffefggffhffelgfeiueeukeeh vdehvdefheffvdefueenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrih hlfhhrohhmpehpvghtvghrsegvihhsvghnthhrrghuthdrohhrgh X-ME-Proxy: Feedback-ID: ie0a040ee:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 13 Feb 2024 01:24:33 -0500 (EST) Message-ID: <27bb0e52-801d-4f73-a0a4-02cfdd4a9ada@eisentraut.org> Date: Tue, 13 Feb 2024 07:24:32 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: Built-in CTYPE provider Content-Language: en-US To: Jeff Davis , Daniel Verite Cc: Robert Haas , Jeremy Schneider , pgsql-hackers@postgresql.org References: <6f3e94c0-f174-4380-9b69-072f8a838881@manitou-mail.org> <12e4f6a78403b33c303c20e44976f891d879be09.camel@j-davis.com> <612987b5-38fa-44c6-8b78-c0be5a177a70@eisentraut.org> <2692039df6b0cac20c5e488fa0209e8958c5fedb.camel@j-davis.com> From: Peter Eisentraut In-Reply-To: <2692039df6b0cac20c5e488fa0209e8958c5fedb.camel@j-davis.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On 13.02.24 03:01, Jeff Davis wrote: > 1. The SQL spec mentions the capitalization of "ß" as "SS" > specifically. Should UCS_BASIC use the unconditional mappings in > SpecialCasing.txt? I already have some code to do that (not posted > yet). It is my understanding that "correct" Unicode case conversion needs to use at least some parts of SpecialCasing.txt. The header of the file says "For compatibility, the UnicodeData.txt file only contains simple case mappings for characters where they are one-to-one and independent of context and language. The data in this file, combined with the simple case mappings in UnicodeData.txt, defines the full case mappings [...]" I read this as, just using UnicodeData.txt by itself is incomplete. I think we need to use the "Unconditional" mappings and the "Conditional Language-Insensitive" mappings (which is just Greek sigma). Obviously, skip the "Language-Sensitive" mappings.