Skip to content

Sync main#4

Merged
laurenceisla merged 88 commits into
mainfrom
sync-main
May 28, 2026
Merged

Sync main#4
laurenceisla merged 88 commits into
mainfrom
sync-main

Conversation

@laurenceisla

Copy link
Copy Markdown

No description provided.

taimoorzaeem and others added 30 commits November 1, 2025 09:00
Signed-off-by: Taimoor Zaeem <taimoorzaeem@gmail.com>
Updates streaming-commons to version 0.2.3.1. This resolves PostgREST#3202.

Signed-off-by: Taimoor Zaeem <taimoorzaeem@gmail.com>
Signed-off-by: Taimoor Zaeem <taimoorzaeem@gmail.com>
Signed-off-by: Taimoor Zaeem <taimoorzaeem@gmail.com>
This should reduce setup time for build process.

- cache: introduced in PostgREST#2928, defunct since PostgREST#4084
- clock: introduced in PostgREST#2928, defunct since PostgREST#4084
- heredoc: introduced in PostgREST#714, defunct since PostgREST#4390
- iproute: introduced in PostgREST#3560, defunct since PostgREST#4288

Signed-off-by: Taimoor Zaeem <taimoorzaeem@gmail.com>
- Adds fixtures to `test/io/fixtures.sql` to test resource
  embedding related queries.

- Moves the resource embedding related tests that no longer
  require big schema from `test_big_schema.py` to `test_io.py`.

Closes PostgREST#4417.

Signed-off-by: Taimoor Zaeem <taimoorzaeem@gmail.com>
The docker-compose example did not work with multiple containers
when PGRST_SERVER_HOST is set to `localhost`. This updates the
value to `0.0.0.0` allowing other containers to connect.

Signed-off-by: Taimoor Zaeem <taimoorzaeem@gmail.com>
Renames these scripts to `postgrest-with-pg-xx`. The renaming
helps reduce the length of temporary filenames. This is needed
to ensure that socket file names remain under the maximum
allowed length of 107 chars.

Closes PostgREST#4461.

Signed-off-by: Taimoor Zaeem <taimoorzaeem@gmail.com>
The x86 GitHub runner will not be available anymore, soon.

We might be able to re-introduce this, once we can build a static
executable via Nix on darwin, too.
Introduces hashtables >= 1.4.1 requirement
Removes a test related to jwt cache which is stale
since PostgREST#4084.

Signed-off-by: Taimoor Zaeem <taimoorzaeem@gmail.com>
Fixes a typo in the documentation where it said that `()`
is a reserved character, when we actually meant to say that
`(` and `)` are reserved characters.

Related discussion in PostgREST#4254.

Signed-off-by: Taimoor Zaeem <taimoorzaeem@gmail.com>
The `*` character is a reserved character in the postgrest
url grammar but we didn't mention it in the docs. Now added.

Signed-off-by: Taimoor Zaeem <taimoorzaeem@gmail.com>
The `test_io.py` module is too bloated (2100+ lines). To
logically group related tests, as a first step, this commit
separates authentication related IO tests into `test_auth.py`
module.

Signed-off-by: Taimoor Zaeem <taimoorzaeem@gmail.com>
…tgREST#4502)

When running postgres from nix-shell, nix creates a directory
structure like `postgrest/postgrest-with-pg-17-XXX` in the `/tmp`
directory. This commit removes the extra `postgrest/` prefix to
shorten length of absolute path length of filenames.

Signed-off-by: Taimoor Zaeem <taimoorzaeem@gmail.com>
Enables `PGRST_CMD=postgrest-profiled-run postgrest-loadtest` running
loadtest against profiled executable, which wasn't available before
Signed-off-by: Taimoor Zaeem <taimoorzaeem@gmail.com>
Signed-off-by: Taimoor Zaeem <taimoorzaeem@gmail.com>
Sometimes, a healthcheck related test fails as occurred in
https://github.com/PostgREST/postgrest/actions/runs/19771357953/job/56655949002.
This happens due to freeport function accidently picking up a used port.

Signed-off-by: Taimoor Zaeem <taimoorzaeem@gmail.com>
taimoorzaeem and others added 23 commits January 2, 2026 06:32
Moves the `negotiateContent` function to `Plan/Negotiate.hs`
module. This also adds comments to describe the current approach
we have for negotiation.

Signed-off-by: Taimoor Zaeem <taimoorzaeem@gmail.com>
* Calculation of hint message when requested relation is not present in schema cache requires creation of a FuzzySet (to use fuzzy search to find candidate tables). For schemas with many tables it is costly.
This patch introduces dbTablesFuzzyIndex in SchemaCache to memoize the FuzzySet creation.

* Additionally, because of FuzzySet large memory requirements, this patch introduces a limit of 500 relations per schema, above which FuzzySet is not created and hint calculation disabled.
Signed-off-by: Taimoor Zaeem <taimoorzaeem@gmail.com>
Signed-off-by: Taimoor Zaeem <taimoorzaeem@gmail.com>
Found via `codespell -S test -L notin,nam,plantext,cryto,corelation,inout,ot`
…uld_be_quick

Changed divider in assertion (response.elapsed.total_seconds() < first_duration / divider) to 2 (from 10).
The logic to evaluate `JSPath` belongs to `JSPath.hs` module.
Hence, moving this logic from `Auth/Jwt.hs` to here.

Signed-off-by: Taimoor Zaeem <taimoorzaeem@gmail.com>
…tgres bug

The HINT shows a SQL command that solves the issue.
The coverage workflow mentions that we run the tests against PG 15,
however that is incorrect and misleading. We actually run it against the
latest supported PostgreSQL version according to the nix scripts.

Signed-off-by: Taimoor Zaeem <taimoorzaeem@gmail.com>
Signed-off-by: Taimoor Zaeem <taimoorzaeem@gmail.com>
retryingListen function potentially leaks database connections. This patch ensures the connections are released in case of listen/notify errors.
Diagnosing problems with listener channel notifications not being handled properly by PostgREST connected to read replicas is difficult. Issues might be related to lost connections and listener not being connected to the right host after failover or database server restarts.
This patch adds logging of actual host:port used by libpq connection opened by the listener. It should make it easier to find out if PostgREST is connected to the right host.
Follow-up to PostgREST#4617 adding more information to log entry produced upon successful listener connection establishement.
datrium.com doesn't exist anymore, while euronodes.com seems to only
fail SSL in CI.
This was done in other places in
ffa3938, but missed in the docs.
Comment thread .github/workflows/linkcheck.yaml Fixed
@steve-chavez

Copy link
Copy Markdown
Member

@laurenceisla This should be good to mrege right?

@laurenceisla
laurenceisla merged commit b43a3f1 into main May 28, 2026
31 of 32 checks passed
@laurenceisla
laurenceisla deleted the sync-main branch May 28, 2026 16:21
@laurenceisla

Copy link
Copy Markdown
Author

This should be good to mrege right?

It didn't allow a rebase to main, I got the message: "This branch cannot be rebased due to conflicts.". It looks like it only allows 100 commits tops to do that, so I only included ~90 commits and now it let me rebase. Will open a couple of PRs more to complete the sync.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.