Laurence Isla and Steve Chavez
dfa875c8c7
fix: do not log internal db errors like 'acquisition timeout' when log-level=crit
2023-11-27 23:06:40 -05:00
Laurence Isla and Steve Chavez
33891e3a73
feat: log all internal database errors to stderr
2023-11-27 23:06:40 -05:00
Laurence Isla and Steve Chavez
b538ab9823
feat: add timing for the api request parse
2023-11-24 16:29:25 -05:00
Laurence Isla and Steve Chavez
850b15fe13
fix: change timing name from 'query' to 'transaction'
2023-11-24 16:29:25 -05:00
Andrei Dziahel and GitHub
df97a5071f
Display an actual TCP port app is bound to ( #3034 )
2023-11-23 18:17:16 -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
steve-chavez
f7bf2157f3
feat: apply super settings on impersonated roles
...
If they have GRANT SET ON PARAMETER <setting> TO authenticator
2023-11-21 10:54:56 -05:00
Taimoor Zaeem and GitHub
125f10a60f
feat: add statement_timeout set on functions ( #3056 )
2023-11-17 12:36:51 -05:00
Taimoor Zaeem and GitHub
3c1a7f2641
feat: add timezone in Prefer header ( #3024 )
...
* increase reloading timeout in io-tests
* increase memory test by 1M
2023-11-13 14:16:27 -05:00
steve-chavez
ed90774f53
test: query the empty string
2023-11-03 12:58:54 -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
Laurence Isla and GitHub
b235227119
allow all origins when server-cors-allowed-origins is an empty string
2023-10-27 21:30:56 -05:00
Taimoor Zaeem and GitHub
5c9c7f4ff4
fix: HTTP status responses for upserts
...
* PUT returns 201 instead of 200 when rows are inserted
* POST with "Prefer: resolution=merge-duplicates" returns 200 instead of 201 when no rows are inserted
2023-10-26 20:49:20 -05:00
steve-chavez
82b38341bf
feat: sql handlers for custom media types
...
* test text/html and drop HtmlRawOutputSpec.hs
* all tests passing, removed all pendingWith
* make functions compatible with pg <= 12
* move custom media types tests to own spec
* anyelement aggregate
* apply aggregates without a final function
* overriding works
* overriding anyelement with particular agg
* cannot override vendored media types
* plan spec works with custom aggregate
* renamed media types to make clear which ones are overridable
* correct content negotiation with same weight
* text/tab-separated-values media type
* text/csv with BOM plus content-disposition header
2023-10-26 09:04:02 -05:00
steve-chavez
4a90e9fbd9
break: db-root-spec default app/openapi+json media
...
BREAKING CHANGE
Can be done later with custom media types
2023-10-26 09:04:02 -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
618f93dec1
test: fix typos in batch upsert tests
2023-10-21 16:29:43 -05:00
Laurence Isla and GitHub
317619bf62
fix: regression by reverting fix that returned 206 when first-pos=length in Range header
2023-10-21 16:28:08 -05:00
steve-chavez
eb238ad678
test: DRY scache/config sleep in io tests
...
Also increase schema cache sleep to 0.2 as 0.1 tends to fail in CI.
2023-10-20 17:53:54 -05:00
steve-chavez
54786a6c04
fix: unnecessary count() on RPC returning single
2023-10-19 15:54:22 -05:00
steve-chavez
00f3cb3746
test: prove RPC returning single always gives 1
2023-10-19 15:54:22 -05:00
Taimoor Zaeem and GitHub
f10b4c3268
test: add tests for batch upserts ( #3005 )
2023-10-13 09:47:26 -03:00
Andrei Dziahel and GitHub
dc01c748ae
feat: add more perf counters to Server-Timing ( #2983 )
2023-10-12 09:55:30 -03:00
Kam Ting Hoi and GitHub
818387f24e
fix: range request with 0 rows and 0 offset return status 416 ( #2991 )
2023-10-07 00:10:17 -03:00
steve-chavez
df08d7f3ff
refactor: rename JSONParseError to PGRSTParseError
...
The error name is too generic otherwise.
2023-10-06 01:16:45 -03:00
Laurence Isla and GitHub
910950dbac
fix: RPCs not embedding correctly when using overloaded functions for computed relationships
2023-10-02 16:00:33 -05:00
steve-chavez
cf7ee67dfe
fix: arrow filter on RPC returning TABLE+composite
2023-09-28 20:26:38 -03:00
Taimoor Zaeem and Steve Chavez
3c1cdd434a
feat: add handling=strict/lenient for Prefer header
2023-09-27 15:00:52 -03:00
Taimoor Zaeem and GitHub
a6e3eda5b2
feat: implement JWT caching ( #2928 )
2023-09-25 14:46:55 -03:00
Laurence Isla and GitHub
37a3f818dd
fix: error when requesting "Prefer: count=<type>" with null filters on embedded resources
2023-09-16 15:02:59 -05:00
Taimoor Zaeem and Steve Chavez
d64b71cbf0
refactor: rename test module NullsStrip.hs to NullsStripSpec.hs
2023-09-15 14:39:12 -03:00
Taimoor Zaeem and Steve Chavez
c195eece65
feat: add Server-Timing header with JWT duration
2023-09-15 14:39:12 -03:00
Laurence Isla and GitHub
fa182c216e
fix: bug when Null Filtering on embedded resources
...
When doing Null Filtering, the to-one embed resources were not included if they had a NULL value in any of the selected fields.
2023-09-14 21:30:48 -05:00
steve-chavez
8d3c9f8435
refactor: move media type logic to Plan module
2023-09-12 19:24:26 -03:00
steve-chavez
d8a91453d1
fix: inconsistent Preference-Applied
...
* Don't apply `tx=commit` if the transaction doesn't commit
* Apply `count=exact`
* Also simplifies the Preference-Applied logic, removing the need for
some functions.
2023-09-12 13:52:49 -03:00
Taimoor Zaeem and Steve Chavez
8eed576826
fix: range request with first position same as length return status 206
2023-09-04 15:50:00 -03:00
Taimoor Zaeem and GitHub
07fef25591
feat: allow full response control when raising exceptions
2023-09-01 14:02:03 -05: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
Taimoor Zaeem and Steve Chavez
87d6a0d0fe
fix: application/vnd.pgrst.array not accepted as a valid mediatype
2023-08-11 12:41:04 -05:00
steve-chavez
5ce020d5bc
fix: impersonated role applying superuser settings
2023-08-09 20:05:22 -05:00
Taimoor Zaeem and GitHub
fbf9bf21c2
feat: add optional nulls=stripped parameter for mediatypes applicatio… ( #2894 )
2023-08-09 18:49:22 -05:00
Taimoor Zaeem and Steve Chavez
d490bf09fd
feat: add Preference-Applied header in response for Prefer: return=representation/minimal/headers-only
2023-08-05 02:21:50 -05:00
Laurence Isla and GitHub
aa53623aac
fix: error when a function returns RECORD or SETOF RECORD
2023-08-03 20:09:55 -05:00
Taimoor Zaeem and GitHub
d0a71de2da
chore: improve details field of the singular error response ( #2876 )
2023-08-01 19:37:54 -05:00
Laurence Isla and GitHub
40c2bcd4a1
fix: paramaters of type character and bit not ignoring length
...
- Fixes the error "value too long for type character(1)" when the char length of the parameter was bigger than one.
2023-07-31 18:36:37 -05:00
steve-chavez
2d00d7d248
fix: null filtering on embed when column=relation
2023-07-27 22:43:13 -05:00
Laurence Isla and GitHub
630e0a1691
fix: character and bit columns with fixed length not inserting/updating properly
...
Fixes the error "value too long for type character(1)" when the char length of the column was bigger than one.
2023-07-21 11:30:01 -05:00
steve-chavez
28d5278d62
fix: use index on jsonb/jsonb arrow filter/order
2023-07-12 14:51:21 -05:00