Taimoor Zaeem and Wolfgang Walther
c5af0cc3f9
fix: loading utf-8 config files with ascii locale set
...
Updates configurator-pg to version 0.2.11. This resolves #4386 .
Signed-off-by: Taimoor Zaeem <taimoorzaeem@gmail.com >
2025-10-24 17:58:09 +00:00
Laurence Isla and GitHub
9c880c082a
feat: allow logging the SQL query to stderr
...
- Logs the main SQL query when `log-query=main-query`.
- Only logs at the current `log-level`.
2025-02-18 19:17:26 -05:00
M. Taimoor Zaeem and Steve Chavez
af6b79d4d7
feat: support string comparison for jwt-role-claim-key
2024-12-12 08:47:06 -05:00
Laurence Isla
e0baf7e78e
feat: log error message when JWT secret is less than 32 characters long
...
breaking change: PostgREST now fails to start or reload the config when the JWT secret is less than 32 characters long.
2024-07-04 12:06:24 -05:00
Andrei Dziahel and GitHub
9d7e87b3e0
feat: add the "admin-server-host" config to set the host for the admin server
2024-06-24 14:47:19 -05:00
Taimoor Zaeem and Steve Chavez
8cbcf9867b
feat: add config db-hoisted-tx-settings to allow only hoisted function settings
2024-05-21 19:50:03 -05:00
Laurence Isla
378c11104b
test: fix some in-db config values
...
To correctly test in-db override of config file values, the former must be different from the latter.
2024-03-27 15:59:35 -05:00
Laurence Isla
428a6fef63
fix: in-db config values not loading for pgrst.server_trace_header and pgrst.server_cors_allowed_origins
2024-03-27 15:59:35 -05:00
Laurence Isla and GitHub
4fb521cac6
fix: add jwt_cache_max_lifetime as an in-database configuration option ( #3102 )
2023-12-12 16:29:50 -05:00
Tim Abdulla and GitHub
1c60b50e2e
Add aggregate functions ( #2925 )
...
The aggregate functions SUM(), MAX(), MIN(), AVG(), and COUNT() are now supported.
2023-11-23 14:03:03 -05:00
Andrei Dziahel and GitHub
c3301a1653
feat: implement server-timing-enabled config parameter ( #3064 )
2023-11-22 17:57:50 -05:00
Laurence Isla
226400a5bc
break:remove the db-use-legacy-gucs config
...
BREAKING CHANGE
All PostgreSQL versions will use JSON GUCs for headers, cookies and JWT claims.
2023-11-02 15:50:22 -05:00
steve-chavez
14d030b96c
break: remove binary field logic, raw-media-types
...
BREAKING CHANGE
Can be done later with custom media types
2023-10-26 09:04:02 -05:00
Taimoor Zaeem and GitHub
d94286c185
feat: add config to specify CORS origins ( #2986 )
2023-10-24 09:38:25 -05:00
Taimoor Zaeem and GitHub
a6e3eda5b2
feat: implement JWT caching ( #2928 )
2023-09-25 14:46:55 -03:00
Taimoor Zaeem and GitHub
57fa2719dd
feat: add db-pool-automatic-recovery configuration to disable connection retrying
2023-08-23 21:08:04 -05:00
steve-chavez
14be3fb671
feat: add pre-config function
...
Allows using the in-database configuration without SUPERUSER
2023-05-28 10:21:13 -05:00
steve-chavez
009250006e
feat: add db-pool-timeout alias
...
For db-pool-max-idletime
2023-05-22 18:34:18 -03:00
Robert and GitHub
f9f0f79fa9
feat: use hasql-pool-0.10, add db-pool-max-idletime ( #2786 )
...
- new option db-pool-max-idletime limits the maximal idle time of a
postgresql connection, defaults to 30 seconds
- this essentially restores the db-pool-timeout option from versions
<=10, with more specific name
2023-05-16 23:00:40 +02:00
Robert Vollmert
394bd22148
feat: use hasql-pool-0.9, add db-pool-max-lifetime ( fixes #2638 )
...
- db-pool-acquisition-timeout is no longer optional, defaults to 10s
- new option db-pool-max-lifetime limits the maximal lifetime of a
postgresql connection, defaults to 30m
2023-04-06 22:40:22 +02:00
steve-chavez
ee036f8397
feat: add server-trace-header config for tracing
2023-02-28 17:30:54 -05:00
Wolfgang Walther and Wolfgang Walther
793acd276a
test: Non-existing config options should not break anything
...
Signed-off-by: Wolfgang Walther <walther@technowledgy.de >
2022-10-27 17:39:04 +02:00
Robert Vollmert
ba1fcfd1e3
feat: introduce pool acquisition timeout ( fixes #2348 )
...
The configuration option db-pool-acquisition-timeout
specifies the time in seconds to wait for the pool to
free up a connection slot. Otherwise, a 504 error is
returned. By default, there is no timeout.
2022-08-31 19:54:34 +02:00
Robert Vollmert
90eaaefe12
upgrade to fork of hasql-pool 0.7.2 ( fixes #2401 )
...
This version of hasql-pool is a simplified rewrite that doesn't use
the resource-pool package. The major API changes are that idle
connections are no longer timed out (and the corresponding setting
is gone), and that `release` makes the pool unusable, where it used
to remain usable and only flushed idle connections.
We depend on a PostgREST fork of 0.7.2 that gives us reliable
flushing, compare https://github.com/PostgREST/hasql-pool/pull/1
- hasql-pool 0.7 removes timing out of idle connections, so
this change removes the db-pool-timeout option.
Given that we were typically running with very high
timeout settings, I don't anticipate the lack of timeout
to introduce new issues, though we might want to consider
introducing some retry-logic down the line when we
encounter connection failures.
- See https://github.com/PostgREST/postgrest/issues/2422 for a
discussion on depending on a forked dependency. Besides adding
the dependency to the nix overlay, we're also adding it to
stack.yaml and a new cabal.project to allow stack/cabal users
to build the project.
2022-08-29 14:55:09 +02:00
Steve Chavez and GitHub
8911afd079
feat: Allow getting the EXPLAIN plan of a request
2022-07-27 19:33:34 -05:00
Laurence Isla and GitHub
e0ba6b6d1c
Add security definitions to the OpenAPI output
2022-07-13 22:47:09 -05:00
steve-chavez
df7d71db32
fix: Increase the db-pool-timeout to 1 hour
2022-06-15 13:19:44 -05:00
Wolfgang Walther
c3ade07ad6
feat: Make db-anon-role optional
...
Without db-anon-role, PostgREST will block any anonymous access without hitting the database.
Resolves #1689 , Ref #1823
2022-01-22 15:59:26 +01:00
Wolfgang Walther
dbbde6aae1
feat: Make db-schemas optional
...
Resolves #1769 , Ref #1823
2022-01-22 15:13:21 +01:00
Wolfgang Walther
9ed30c0ba4
feat: Make db-uri optional
...
The default is now "postgresql://" which falls back to LIBPQ environment variables.
Resolves #1991 , Ref #1823
2022-01-22 15:13:19 +01:00
Wolfgang Walther
ec09b87940
test: Make io tests use environment variables instead of config files where possible.
...
Load jwt secret from file instead of stdin in tests, because stdin is not supported when reloading the config. Resolves #2126 .
2022-01-22 15:10:25 +01:00
Wolfgang Walther and Wolfgang Walther
995215c6a5
fix: Read database configuration properly when = is present in value
...
Resolves #2120
2022-01-10 09:24:49 +01:00
Wolfgang Walther and Wolfgang Walther
8b63d928ae
test: Reorganize test/ folder into one subdirectory for each test type
2022-01-07 13:10:36 +01:00