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 1qsmzb-009QNj-Mz for pgsql-hackers@arkaria.postgresql.org; Tue, 17 Oct 2023 16:32:27 +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 1qsmzZ-00C77F-Mc for pgsql-hackers@arkaria.postgresql.org; Tue, 17 Oct 2023 16:32:26 +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 1qsmzZ-00C76q-9w for pgsql-hackers@lists.postgresql.org; Tue, 17 Oct 2023 16:32:26 +0000 Received: from mail-pf1-x42d.google.com ([2607:f8b0:4864:20::42d]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1qsmzU-000wnl-PH for pgsql-hackers@postgresql.org; Tue, 17 Oct 2023 16:32:24 +0000 Received: by mail-pf1-x42d.google.com with SMTP id d2e1a72fcca58-6bd73395bceso2110308b3a.0 for ; Tue, 17 Oct 2023 09:32:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=j-davis-com.20230601.gappssmtp.com; s=20230601; t=1697560340; x=1698165140; darn=postgresql.org; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject :date:message-id:reply-to; bh=IpvdNZ3Ho9NW1/jEfGyeOMZR/KZbiC/kjSC7F42jLKY=; b=vZ67nQTMSuyo0HF5YPpIi3kx0JFG77FhAa4R8N1oLjDYVBCrCFpsKzrQaGu7dwB7jp FmtkJOz/db6DxKCyaJOGIaxDBHK4wVrfcAY/juPZJS1qb2Sxb/OQTF/77nM/bfwvrKF2 dESbZo5G0yz0AD+RRn+jHNG5vf6now96csTeFjI9BFJ6fqeG4O/FkvZ/nb3cqCSN8nz2 kCO8NUjRRUDdYGCC9c25HG8Me9bLJ8xZqVoJhAnJZCLaCRkWCpcemDFlbNKm+lLI+yRS +itH8FQkJaZWCjCVRQ+45+kefy4lGTrKZoTswZVLcqaWtG5Gxt2ECYzQ421Y5jbxah1j KFxg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697560340; x=1698165140; h=mime-version:user-agent:content-transfer-encoding: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=IpvdNZ3Ho9NW1/jEfGyeOMZR/KZbiC/kjSC7F42jLKY=; b=VCo2O05ybCauW7VidhuD128WkdnXO1XfjZr675wveFaYeyFI3NZj6EVMoga01cgrx+ kZLn2rspH+mynuqOAz3fCydjTNXiuY6ji/qXrWlFfQyvamikOqxkEPyRXQ55VCIiUTpe zVu6cQdOCaBFnn5FEJX+bEaqxk+Vyk2UqfoqSbTqVmwmKfI+Xt3USJXnwT8qpEBiqt2P ppUnewW8hiY3ZJi0tGVBMB9Ig9NH4DUe5TH6GM5/Ch3S1w+i/meEaI7Dee78g6QKxw0B hx2Q0ji+t00Z+CaiL+fYXEqoO1HG3X91c29Sku5smoTW0FRO4phSWE96/5APJADTr1N2 Bc1g== X-Gm-Message-State: AOJu0Yz8dBsuY9ykMTFRDYWo3dmmLIY3QWglhXezu7JVAlLTkWAmSHzj oVb71FYOo8Yhsz9+CqNZzmp1lw== X-Google-Smtp-Source: AGHT+IFqAnqAVOF1nryDCdz1+1+R6pJPEf9vxfMQiHlVw+j0WAlQAuTDVvfpaeC5fX2AOslLa60Vzw== X-Received: by 2002:a05:6a20:7288:b0:15d:4cf1:212e with SMTP id o8-20020a056a20728800b0015d4cf1212emr3432922pzk.4.1697560339747; Tue, 17 Oct 2023 09:32:19 -0700 (PDT) Received: from [172.24.1.133] ([12.126.244.130]) by smtp.gmail.com with ESMTPSA id c30-20020a056a00009e00b006be0c9155aasm1718230pfj.91.2023.10.17.09.32.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 17 Oct 2023 09:32:19 -0700 (PDT) Message-ID: Subject: Re: Pre-proposal: unicode normalized text From: Jeff Davis To: Daniel Verite Cc: Peter Eisentraut , Robert Haas , pgsql-hackers@postgresql.org Date: Tue, 17 Oct 2023 09:32:18 -0700 In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable 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 On Tue, 2023-10-17 at 17:07 +0200, Daniel Verite wrote: > There's a problem in the fact that the set of assigned code points is > expanding with every Unicode release, which happens about every year. >=20 > If we had this option in Postgres 11 released in 2018 it would use > Unicode 11, and in 2023 this feature would reject thousands of code > points that have been assigned since then. That wouldn't be good for everyone, but might it be good for some users? We already expose normalization functions. If users are depending on normalization, and they have unassigned code points in their system, that will break when we update Unicode. By restricting themselves to assigned code points, normalization is guaranteed to be forward- compatible. Regards, Jeff Davis