Wolfgang Walther and Laurence Isla
de25b26f3e
nix: reduce closure size of default package in flake.nix
...
Splitting the executable in a separate output avoids distributing all of
the libraries and documentation, which are not needed when just running
PostgREST.
Reduces closure size from 4.3G to 73.9M for the flake exported packages.
Resolves #4149
2025-06-24 01:44:44 +00:00
steve-chavez
67bd3526c2
nix: use json file for generated jwk on loadtest
...
Having the JWK as .http file was confusing.
Also split genTargets into two to avoid confusion.
2025-06-20 11:27:44 -05:00
Taimoor Zaeem and Steve Chavez
c7e5db34e4
chore: add changelog for v13.0.3 and v13.0.4
2025-06-20 09:45:04 -05:00
steve-chavez
c8adfebb1f
nix: fix postgrest-loadtest-to-markdown on NAs
...
The python script failed when presenting NAs with:
TypeError: boolean value of NA is ambiguous
2025-06-19 16:48:44 -05:00
steve-chavez
49de3c1ab8
nix: adjacent process monitoring report columns
2025-06-19 16:36:25 -05:00
steve-chavez
e1c71c92d6
nix: add traces to loadtest commands
2025-06-19 15:04:16 -05:00
Taimoor Zaeem and Wolfgang Walther
330df05891
ci: only run commitlint on github PRs
...
The `commitlint` script disrupts our release workflow if failed
on push event. We also don't need it on push because once pushed,
git commit history can't be amended.
2025-06-18 17:03:04 +00:00
Taimoor Zaeem and Steve Chavez
63a492291a
nix: allow mixed casing in commitlint subject message
2025-06-17 18:10:37 -05:00
Taimoor Zaeem and Steve Chavez
0b69ad0e65
ci: fix commitlint CI failure
2025-06-17 18:10:37 -05:00
steve-chavez
bc99ec8285
nix: add group to postgrest-loadtest-report
...
This is so the results are easier to skim
2025-06-17 17:58:49 -05:00
steve-chavez
7dbb8cd987
nix: better monitoring loadtest report readability
2025-06-17 16:38:06 -05:00
Taimoor Zaeem and GitHub
38332d9462
nix: add commitlint to lint commit messages ( #4128 )
...
Adds a new script `postgrest-commitlint` to lint commit messages.
2025-06-17 16:15:14 -05:00
renovate[bot] and Wolfgang Walther
cba7fc950b
chore(deps): update ubuntu:noble docker digest to b59d215
2025-06-17 20:37:37 +00:00
renovate[bot] and Wolfgang Walther
143d23f1b8
chore(deps): update docker/setup-buildx-action action to v3.11.0
2025-06-17 20:36:39 +00:00
steve-chavez
47763df590
nix: add process monitoring for loadtests
...
Closes https://github.com/PostgREST/postgrest/issues/4107 .
Adds two python scripts:
- monitor_pid.py: monitors the postgrest process each second
until it exits, then outputs a csv with the results. The nix wrappers
use the `loadtest` dir for the output.
- merge_monitor_result.py: receives a list of csvs and merges them into
a single markdown table. The nix wrappers use the `loadtest/*.csv`
files for the input.
The nix `postgrest-with-pgrst` and `postgrest-loadtest-report` commands
use these scripts to add monitoring for `postgrest-loadtest` and
`postgrest-loadtest-against`.
2025-06-17 00:10:58 -05:00
steve-chavez
53604c9db2
nix: increase jwt-hs loadtest TOTAL_TARGETS
...
This is so the process monitoring results are more meaningful.
* remove the amount of total targets from the loadtest kind name
since the targets can change.
* clarifies the top comment on the generate_targets python script
* increase TOTAL_TARGETS on jwt-hs loadtest
2025-06-17 00:10:58 -05:00
steve-chavez
ba7aaa8ab1
nix: dedup vegeta command in nix loadtest
2025-06-17 00:10:58 -05:00
Taimoor Zaeem and GitHub
c318d46469
fix: jwt-aud config not failing when set to invalid URI ( #4140 )
...
The `jwt-aud` config was not validated when containing ':'
character according to RFC 3986. This fix validates it and
fails at startup if it is invalid.
2025-06-16 15:40:47 -05:00
Laurence Isla
a2892ab1dd
fix: regression that makes fts not work on domain types based on tsvector
2025-06-16 16:53:29 +00:00
Laurence Isla
1879c813c8
fix: detect the correct base type of recursive domains in schema cache for tables and views
...
In OpenAPI it shows the correct base type in properties' definitions (including enums).
2025-06-16 16:53:29 +00:00
Taimoor Zaeem and GitHub
2eb9e4a8a4
test: upserts with case sensitive table and sequence name ( #4131 )
...
Closes #3712 .
2025-06-07 12:39:50 -05:00
Laurence Isla
a9d4237bc2
chore: update UTM tracking for Euronodes
2025-06-06 12:55:55 -05:00
Laurence Isla
f85113669d
chore: update sponsor
2025-06-06 14:53:20 +00:00
Michal Kleczek and GitHub
69072116be
test: Use RSA 4096 algorithm for JWT load test ( #4118 )
...
Until now we had a load test with 50k unique JWTs signed with symmetric key.
This commit adds a new load test with 10k JWTs signed with RSA 4096.
Existing -k jwt parameter was changed to -k jwt-hs-50k.
New test is run with -k jwt-rsa-10k parameter.
Additionally a new parameter --jwtcache=off was added to turn off JWT caching in the above load tests.
2025-06-05 07:44:05 -05:00
steve-chavez
b2f8786821
nix: detect unused python code
...
Now `postgrest-lint` shows:
```
Linting workflows...
Scanning nix files for unused code...
Scanning python files for unused code...
nix/tools/generate_targets.py:13: unused variable 'JWT_DURATION' (60% confidence)
test/io/test_cli.py:6: unused import 'repeat' (90% confidence)
```
Also corrected the above detected files
2025-06-03 20:47:39 -05:00
Taimoor Zaeem and Steve Chavez
dc46aea15e
fix: max-affected preference not failing for rpc with strict handling
2025-06-03 14:31:17 -05:00
Laurence Isla
e33ce843dd
chore: add changelog entry for v13.0.2
2025-06-02 18:09:29 -05:00
Laurence Isla
f7fa717411
fix: regression that makes order by with nulls order not work alongside limits
2025-06-02 17:44:57 +00:00
Michał Kłeczek and Steve Chavez
a409a2cb94
Extracted JWT validation functions to a separate module.
...
This change introduces a PostgREST.Auth.Jwt module containing JWT validation functions.
The reason to extract them from Auth is to enable JwtCache module to reuse them without introducing module dependency cycle.
2025-06-02 12:26:39 -05:00
Michał Kłeczek and Steve Chavez
7e3fb2ba08
Define MetricsState as record and use Applicative to initialize one
2025-06-02 11:49:01 -05:00
renovate[bot] and Wolfgang Walther
9084d8c358
chore(deps): update codecov/codecov-action action to v5.4.3
2025-06-02 06:15:33 +00:00
Taimoor Zaeem and Wolfgang Walther
4ae5db57dc
chore: add changelog entry for v13.0.1
2025-06-02 06:14:50 +00:00
Taimoor Zaeem and Steve Chavez
c5ccf742d6
feat: improve error details of PGRST301 error
2025-05-31 13:30:32 -05:00
Thilo Hohlt and Steve Chavez
f6316b86e4
Update ecosystem.rst
...
The repository has been moved from a dedicated organisation to my personal profile, so this old link will no longer work after 90 days.
2025-05-31 06:42:38 -05:00
Taimoor Zaeem and Steve Chavez
aebdc716c7
refactor: move jwt error messages to Error.hs module
2025-05-31 06:41:22 -05:00
steve-chavez
72f6036432
docs: external authentication page in explanations
...
- Move page from External JWT generation
2025-05-30 17:59:51 -05:00
steve-chavez
afc989403d
docs: move jwt using SSL to tutorial 1
...
Removes jwt.io example in favor of a bash script
2025-05-30 17:59:51 -05:00
Taimoor Zaeem and GitHub
ea9d4f49b2
fix: log db-schemas and db-extra-search-path in schema cache load error ( #4108 )
2025-05-30 10:13:19 -05:00
Laurence Isla
9c40a9c6df
docs: JWK kid parameter validation
2025-05-29 21:01:39 +00:00
Taimoor Zaeem and Steve Chavez
000cb87ec1
fix: allow db-extra-search-path to accept empty value
2025-05-29 14:25:28 -05:00
steve-chavez
054ee463a1
docs: remove Greenplum integration
...
They're not really a sponsor, so it's not fair to include them.
2025-05-28 17:43:16 -05:00
Wolfgang Walther
07d9747c40
docs: fix functions link in api/preferences
...
External link syntax was used instead of internal reference.
2025-05-28 09:09:13 +02:00
Wolfgang Walther
2d5d5ed704
docs: apply redirects
...
Those redirect, so we might as well hardcode the them.
2025-05-28 09:09:13 +02:00
Wolfgang Walther
52d2bd93f5
docs: remove outdated "in production" links
...
Moat has been bought by Oracle. The advertising subpage redirects to
oracle.com, but pointing at that would be a bit misleading.
No need to keep failing links either.
2025-05-28 09:09:10 +02:00
steve-chavez
da467fe3b6
nix: add PGRST_ADMIN_SERVER_PORT to postgrest-run
...
It's frequently needed during manual testing.
2025-05-27 20:12:00 -05:00
steve-chavez
52cf4658c5
docs: update architecture HTTP link
...
It links directly to warp page, which is confusing. Link to the
same page reference instead, which finally links to warp.
2025-05-26 13:44:20 -05:00
Taimoor Zaeem and Steve Chavez
94d6ac2f2e
docs: explain use of max-affected preference with rpc
2025-05-22 12:23:52 -05:00
Taimoor Zaeem and Steve Chavez
5f9e0a2739
test: add missing tests for max-affected preference with rpc
2025-05-22 12:23:52 -05:00
Wolfgang Walther
7933685ffb
docs: Update sphinx-rtd-theme to 3.0.2
2025-05-22 06:07:26 +00:00
Taimoor Zaeem and Steve Chavez
1258ea663c
docs: add note in JWT Role Extraction section
...
Add a note describing that the used JSPath DSL does not
strictly follow the JSONPath as described in RFC 9535
2025-05-18 13:36:43 -05:00