Andrei Dziahel and Laurence Isla
0ac4d0d0a9
fix: replace json parser error with generic msg ( #3090 )
2023-12-12 18:46:40 -05:00
Laurence Isla
50ea1999b2
fix: allow using special characters in json keys ( #3081 )
...
* increase memory size test
2023-12-12 18:46:40 -05:00
steve-chavez
9fe11249f9
feat: custom SQL handler for the "*/*" media type
2023-11-28 23:14:38 -05:00
Laurence Isla and GitHub
ca5eb64deb
chore: fix server-timing metric order and doctest
2023-11-28 12:45:39 -05:00
steve-chavez
b080f59bac
test: server timing on root and options method
2023-11-28 10:25:25 -05:00
steve-chavez
958339b8d3
chore: change server timing render to response
...
"render" is a loaded term than might be thought as the generation
of a full HTML page. While for this phase we only process the status
and the headers.
Changing it to "response" so is not misleading at least. Users can check the
docs for clarification.
2023-11-28 10:25:25 -05:00
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