Releases: monacoremo/postgrest
Releases · monacoremo/postgrest
v9.0.0.20210921
Added
- PostgREST#1783, Include partitioned tables into the schema cache. Allows embedding, UPSERT, INSERT with Location response, OPTIONS request and OpenAPI support for partitioned tables - @laurenceisla
- PostgREST#1878, Add Retry-After hint header when in recovery mode - @gautam1168
- PostgREST#1735, Allow calling function with single unnamed param through RPC POST. - @steve-chavez
- Enables calling a function with a single json parameter without using
Prefer: params=single-object
- Enables uploading bytea to a function with
Content-Type: application/octet-stream
- Enables uploading raw text to a function with
Content-Type: text/plain
- Enables calling a function with a single json parameter without using
- PostgREST#1938, Allow escaping inside double quotes with a backslash, e.g.
?col=in.("Double\"Quote")
,?col=in.("Back\\slash")
- @steve-chavez
Fixed
- PostgREST#1871, Fix OpenAPI missing default values for String types and identify Array types as "array" instead of "string" - @laurenceisla
- PostgREST#1930, Fix RPC return type handling for
RETURNS TABLE
with a single column. Regression of PostgREST#1615. - @wolfgangwalther - PostgREST#1938, Fix using single double quotes(
"
) and backslashes(/
) as values on the "in" operator - @steve-chavez
Changed
- PostgREST#1927, Overloaded Functions: If there's a function "my_func" having a single unnamed json param and other overloaded pairs(with any number of params), PostgREST won't be able to resolve a POST request to "my_func". For solving this, you can name the unnamed json param
my_func(json) -> my_func(prm json)
.
v9.0.0
v9.0.0.1
Added
- PostgREST#1783, Include partitioned tables into the schema cache. Allows embedding, UPSERT, INSERT with Location response, OPTIONS request and OpenAPI support for partitioned tables - @laurenceisla
- PostgREST#1878, Add Retry-After hint header when in recovery mode - @gautam1168
- PostgREST#1735, Allow calling function with single unnamed param through RPC POST. - @steve-chavez
- Enables calling a function with a single json parameter without using
Prefer: params=single-object
- Enables uploading bytea to a function with
Content-Type: application/octet-stream
- Enables uploading raw text to a function with
Content-Type: text/plain
- Enables calling a function with a single json parameter without using
- PostgREST#1938, Allow escaping inside double quotes with a backslash, e.g.
?col=in.("Double\"Quote")
,?col=in.("Back\\slash")
- @steve-chavez
Fixed
- PostgREST#1871, Fix OpenAPI missing default values for String types and identify Array types as "array" instead of "string" - @laurenceisla
- PostgREST#1930, Fix RPC return type handling for
RETURNS TABLE
with a single column. Regression of PostgREST#1615. - @wolfgangwalther - PostgREST#1938, Fix using single double quotes(
"
) and backslashes(/
) as values on the "in" operator - @steve-chavez
Changed
- PostgREST#1927, Overloaded Functions: If there's a function "my_func" having a single unnamed json param and other overloaded pairs(with any number of params), PostgREST won't be able to resolve a POST request to "my_func". For solving this, you can name the unnamed json param
my_func(json) -> my_func(prm json)
.
v10.0.0-b1
Added
Fixed
v8.0.0
Added
- PostgREST#1525, Allow http status override through response.status guc - @steve-chavez
- PostgREST#1512, Allow schema cache reloading with NOTIFY - @steve-chavez
- PostgREST#1119, Allow config file reloading with SIGUSR2 - @steve-chavez
- PostgREST#1558, Allow 'Bearer' with and without capitalization as authentication schema - @wolfgangwalther
- PostgREST#1470, Allow calling RPC with variadic argument by passing repeated params - @wolfgangwalther
- PostgREST#1559, No downtime when reloading the schema cache with SIGUSR1 - @steve-chavez
- PostgREST#504, Add
log-level
config option. The admitted levels are: crit, error, warn and info - @steve-chavez - PostgREST#1607, Enable embedding through multiple views recursively - @wolfgangwalther
- PostgREST#1598, Allow rollback of the transaction with Prefer tx=rollback - @wolfgangwalther
- PostgREST#1633, Enable prepared statements for GET filters. When behind a connection pooler, you can disable preparing with
db-prepared-statements=false
- This increases throughput by around 30% for simple GET queries(no embedding, with filters applied).
- PostgREST#1729, PostgREST#1760, Get configuration parameters from the db and allow reloading config with NOTIFY - @steve-chavez
- PostgREST#1824, Allow OPTIONS to generate certain HTTP methods for a DB view - @laurenceisla
- PostgREST#1872, Show timestamps in startup/worker logs - @steve-chavez
- PostgREST#1881, Add
openapi-mode
config option that allows ignoring roles privileges when showing the OpenAPI output - @steve-chavez - CLI options(for debugging):
- PostgREST#1678, Add --dump-config CLI option that prints loaded config and exits - @wolfgangwalther
- PostgREST#1691, Add --example CLI option to show example config file - @wolfgangwalther
- PostgREST#1697, PostgREST#1723, Add --dump-schema CLI option for debugging purposes - @monacoremo, @wolfgangwalther
- PostgREST#1794, (Experimental) Add
request.spec
GUC for db-root-spec - @steve-chavez
Fixed
- PostgREST#1592, Removed single column restriction to allow composite foreign keys in join tables - @goteguru
- PostgREST#1530, Fix how the PostgREST version is shown in the help text when the
.git
directory is not available - @monacoremo - PostgREST#1094, Fix expired JWTs starting an empty transaction on the db - @steve-chavez
- PostgREST#1162, Fix location header for POST request with select= without PK - @wolfgangwalther
- PostgREST#1585, Fix error messages on connection failure for localized postgres on Windows - @wolfgangwalther
- PostgREST#1636, Fix
application/octet-stream
appendingcharset=utf-8
- @steve-chavez - PostgREST#1469, PostgREST#1638 Fix overloading of functions with unnamed arguments - @wolfgangwalther
- PostgREST#1560, Return 405 Method not Allowed for GET of volatile RPC instead of 500 - @wolfgangwalther
- PostgREST#1584, Fix RPC return type handling and embedding for domains with composite base type (PostgREST#1615) - @wolfgangwalther
- PostgREST#1608, PostgREST#1635, Fix embedding through views that have COALESCE with subselect - @wolfgangwalther
- PostgREST#1572, Fix parsing of boolean config values for Docker environment variables, now it accepts double quoted truth values ("true", "false") and numbers("1", "0") - @wolfgangwalther
- PostgREST#1624, Fix using
app.settings.xxx
config options in Docker, now they can be used asPGRST_APP_SETTINGS_xxx
- @wolfgangwalther - PostgREST#1814, Fix panic when attempting to run with unix socket on non-unix host and properly close unix domain socket on exit - @monacoremo
- PostgREST#1825, Disregard internal junction(in non-exposed schema) when embedding - @steve-chavez
- PostgREST#1846, Fix requests for overloaded functions from html forms to no longer hang (PostgREST#1848) - @laurenceisla
- PostgREST#1858, Add a hint and clarification to the no relationship found error - @laurenceisla
- PostgREST#1841, Show comprehensive error when an RPC is not found in a stale schema cache - @laurenceisla
- PostgREST#1875, Fix Location headers in headers only representation for null PK inserts on views - @laurenceisla
Changed
- PostgREST#1522, PostgREST#1528, PostgREST#1535, Docker images are now built from scratch based on a the static PostgREST executable (PostgREST#1494) and with Nix instead of a
Dockerfile
. This reduces the compressed image size from over 30mb to about 4mb - @monacoremo - PostgREST#1461, Location header for POST request is only included when PK is available on the table - @wolfgangwalther
- PostgREST#1560, Volatile RPC called with GET now returns 405 Method not Allowed instead of 500 - @wolfgangwalther
- PostgREST#1584, PostgREST#1849 Functions that declare
returns composite_type
no longer return a single object array by default, only functions withreturns setof composite_type
return an array of objects - @wolfgangwalther - PostgREST#1604, Change the default logging level to
log-level=error
. Only requests with a status greater or equal than 500 will be logged. If you wish to go back to the previous behaviour and log all the requests, uselog-level=info
- @steve-chavez- Because currently there's no buffering for logging, defaulting to the
error
level(minimum logging) increases throughput by around 15% for simple GET queries(no embedding, with filters applied).
- Because currently there's no buffering for logging, defaulting to the
- PostgREST#1617, Dropped support for PostgreSQL 9.4 - @wolfgangwalther
- PostgREST#1679, Renamed config settings with fallback aliases. e.g.
max-rows
is nowdb-max-rows
, butmax-rows
is still accepted - @wolfgangwalther - PostgREST#1656, Allow
Prefer=headers-only
on POST requests and change default tominimal
(PostgREST#1813) - @laurenceisla - PostgREST#1854, Dropped undocumented support for gzip compression (which was surprisingly slow and easily enabled by mistake). In some use-cases this makes Postgres up to 3x faster - @aljungberg
- PostgREST#1872, Send startup/worker logs to stderr to differentiate from access logs on stdout - @steve-chavez