Re: [oauth] Stabilize the libpq-oauth ABI (and allow alternative implementations?)
Jonathan Gonzalez V. <jonathan.abdiel@gmail.com>
From: "Jonathan Gonzalez V." <jonathan.abdiel@gmail.com>
To: Jacob Champion <jacob.champion@enterprisedb.com>, Zsolt Parragi <zsolt.parragi@percona.com>
Cc: PostgreSQL Hackers <pgsql-hackers@postgresql.org>, Chao Li <li.evan.chao@gmail.com>
Date: 2026-03-13T07:18:57Z
Lists: pgsql-hackers
Hello!
On Tue, 2026-03-10 at 09:32 -0700, Jacob Champion wrote:
> On Fri, Mar 6, 2026 at 4:27 PM Jacob Champion
> <jacob.champion@enterprisedb.com> wrote:
> > I'll cherry-pick some of the -1 handling backwards in the patchset
> > to
> > handle this.
>
> Done in v7-0001. Some of the improvements in the WIP patch were also
> cherry-picked, and I fixed a stray comment bug. -0001 and -0002 are
> next up for commit.
>
While rebasing this patch[1] I notice that the test where wailing, that
was due to the following missing dependency in the test, small patch
here:
```
diff --git a/src/test/modules/oauth_validator/meson.build
b/src/test/modules/oauth_validator/meson.build
index 915603cbd29..7e52aef7829 100644
--- a/src/test/modules/oauth_validator/meson.build
+++ b/src/test/modules/oauth_validator/meson.build
@@ -97,6 +97,6 @@ tests += {
'cert_dir': meson.project_source_root() / 'src/test/ssl/ssl',
'flow_module_path': oauth_flow.full_path(),
},
- 'deps': [oauth_hook_client],
+ 'deps': [oauth_hook_client,oauth_flow],
},
}
```
Regards!
[1]
https://www.postgresql.org/message-id/flat/16a91d02795cb991963326a902afa764e4d721db.camel@gmail.com
--
Jonathan Gonzalez V.
EDB: https://www.enterprisedb.com
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
libpq: Allow developers to reimplement libpq-oauth
- 09532b4040ed 19 (unreleased) landed
-
libpq: Poison the v2 part of a v1 Bearer request
- 0af4d402cb90 19 (unreleased) landed
-
libpq-oauth: Never link against libpq's encoding functions
- dba35604485f 19 (unreleased) landed
-
libpq-oauth: Use the PGoauthBearerRequestV2 API
- 6225403f2783 19 (unreleased) landed
-
libpq: Introduce PQAUTHDATA_OAUTH_BEARER_TOKEN_V2
- e982331b5208 19 (unreleased) landed
-
libpq: Add PQgetThreadLock() to mirror PQregisterThreadLock()
- b8d76858353e 19 (unreleased) landed
-
oauth: Report cleanup errors as warnings on stderr
- f8c0b91a6063 19 (unreleased) landed
-
oauth_validator: Avoid races in log_check()
- c3df85756ceb 18.2 landed
- ab8af1db4303 19 (unreleased) landed
-
libpq-oauth: use correct c_args in meson.build
- 023a3c786b81 18.2 landed
- 781ca72139d6 19 (unreleased) landed
-
libpq-fe.h: Don't claim SOCKTYPE in the global namespace
- cc824482a3c0 18.2 landed
- 8b217c96ea2d 19 (unreleased) landed