> On 7 Mar 2025, at 4:40 PM, Aleksander Alekseev <aleksan...@timescale.com> > wrote: > > Hi, > >>> Sometimes support for base64url from RFC 4648 would be useful. >>> Does anyone else need a patch like this? >> >> While not a frequent ask, it has been mentioned in the past. I think it >> would >> make sense to add so please do submit a patch for it for consideration. > > IMO it would be nice to have. > > Would you like to submit such a patch or are you merely suggesting an > idea for others to implement? > > -- > Best regards, > Aleksander Alekseev > >
Just to confirm: In a plan SQL flavor, we’re talking about something like this, correct? CREATE FUNCTION base64url_encode(input bytea) RETURNS text AS $$ SELECT regexp_replace( replace(replace(encode(input, 'base64'), '+', '-'), '/', '_'), '=+$', '', 'g' ); $$ LANGUAGE sql IMMUTABLE; CREATE FUNCTION base64url_decode(input text) RETURNS bytea AS $$ SELECT decode( rpad(replace(replace(input, '-', '+'), '_', '/'), (length(input) + 3) & ~3, '='), 'base64' ); $$ LANGUAGE sql IMMUTABLE; With minimal testing, this yields the same results with https://base64.guru/standards/base64url/encode select base64url_encode('post+gres') base64url_encode ------------------ cG9zdCtncmVz (1 row)