Specifying the library name before the language-country code with a new
separator (":") as you suggested below has some benefits. Did you consider
making the collation version just another collation attribute, such as
colStrength, colCaseLevel, etc.?
For example, an alternate syntax might be:
create collation icu63."en-US-x-icu" (provider = icu, locale =
'en-US@colVersion=63');
Was the concern that ICU might redefine a new collation property with the same
name in a different and incompatible way (we might work with the ICU developers
to agree on what it should be), or that a version is just not the same kind of
collation property as the other collation properties?
(in the example above, I'm assuming that for provider = icu, we could translate
'63' into 'libicui18n.so.63' automatically.)
On 6/8/22, 6:22 AM, "Thomas Munro" <[email protected]> wrote:
<snip>
postgres=# create collation icu63."en-US-x-icu" (provider = icu,
locale = 'libicui18n.so.63:en-US');
CREATE COLLATION
<snip>