Re: PATCH: jsonpath string methods: lower, upper, initcap, l/r/btrim, replace, split_part
Florents Tselai <florents.tselai@gmail.com>
From: Florents Tselai <florents.tselai@gmail.com>
To: "David E. Wheeler" <david@justatheory.com>
Cc: pgsql-hackers <pgsql-hackers@lists.postgresql.org>, Chao Li <li.evan.chao@gmail.com>, Álvaro Herrera <alvherre@kurilemu.de>, Tom Lane <tgl@sss.pgh.pa.us>, Peter Eisentraut <peter@eisentraut.org>, Robert Haas <robertmhaas@gmail.com>, Alexander Korotkov <aekorotkov@gmail.com>, Andrew Dunstan <andrew@dunslane.net>, jian he <jian.universality@gmail.com>
Date: 2026-01-31T16:23:27Z
Lists: pgsql-hackers
Attachments
- v17-0001-Rename-jsonpath-method-arg-tokens.patch (application/octet-stream) patch v17-0001
- v17-0002-Add-additional-jsonpath-string-methods.patch (application/octet-stream) patch v17-0002
On Sat, Jan 31, 2026 at 4:44 PM David E. Wheeler <david@justatheory.com> wrote: > On Jan 4, 2026, at 15:51, David E. Wheeler <david@justatheory.com> wrote: > > > Updated and rebased patch attached. > I think your attachment was left behind. Attaching it myself (that's v17, right? ) checked out from your PR New rebase on 6918434. See also the PR[0]. > The Commitfest app still shows this patch as “Needs review”[1]. It has had > a number of reviews, most recently from jian. Any objection to changing it > to “Ready for Committer”? With the refactoring you’ve done across the parser and executor, I’m already tempted to slip in a few more string methods - but I think we should leave that for a future iteration. Functionally, it’d just mean adding another branch in executeStringInternalMethod, and I’d rather keep this patch focused. At this point, I’d say it’s ready for committer review. That said, I do expect someone to raise (again) the question of how we want to handle potential future conflicts with the SQL/JSON standard. That’s a broader design topic, and it’s going to come up every time we extend the JSONPath language. And yes, I’m obviously biased here - I already have two other patches in the same spirit queued up, namely https://commitfest.postgresql.org/patch/6429/ https://commitfest.postgresql.org/patch/6436/
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Add additional jsonpath string methods
- bd4f879a9cdd 19 (unreleased) landed
-
Rename jsonpath method arg tokens
- a35c9d524ed0 19 (unreleased) landed
-
Fix transient memory leakage in jsonpath evaluation.
- 5a2043bf7131 19 (unreleased) cited
-
Make jsonpath .string() be immutable for datetimes.
- cb599b9ddfcc 18.0 cited