Compare commits

...
Author SHA1 Message Date
Stanisław Chmiela 9c692afbcb fix: classify PostgreSQL lock timeouts as transient 2026-10-05 17:46:12 +02:00
renovate[bot] 17bd06e67e chore(deps): update dependency @types/node to v24.19.1 (#713)
This PR contains the following updates:

| Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
| [@types/node](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node)) | [`24.13.5` → `24.19.1`](https://renovatebot.com/diffs/npm/@types%2fnode/24.13.5/24.19.1) | ![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/24.19.1?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/24.13.5/24.19.1?slim=true) |

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - "before 9am on monday"
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/expo/entity).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4xMjUuMSIsInVwZGF0ZWRJblZlciI6IjQ0LjEyNS4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
2026-10-05 08:41:40 -07:00
renovate[bot] 69ef7aa0c9 chore(deps): update dependency pg to v8.23.1 (#711)
This PR contains the following updates:

| Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
| [pg](https://redirect.github.com/brianc/node-postgres) ([source](https://redirect.github.com/brianc/node-postgres/tree/HEAD/packages/pg)) | [`8.23.0` → `8.23.1`](https://renovatebot.com/diffs/npm/pg/8.23.0/8.23.1) | ![age](https://developer.mend.io/api/mc/badges/age/npm/pg/8.23.1?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/pg/8.23.0/8.23.1?slim=true) |

---

### Release Notes

<details>
<summary>brianc/node-postgres (pg)</summary>

### [`v8.23.1`](https://redirect.github.com/brianc/node-postgres/compare/[email protected]@8.23.1)

[Compare Source](https://redirect.github.com/brianc/node-postgres/compare/[email protected]@8.23.1)

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - "before 9am on monday"
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/expo/entity).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4xMjUuMSIsInVwZGF0ZWRJblZlciI6IjQ0LjEyNS4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
2026-10-05 08:41:31 -07:00
renovate[bot] 8db4fbbd8a chore(deps): update redis docker digest to 6f81e89 (#710)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| redis | digest | `718f745` → `6f81e89` |

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - "before 9am on monday"
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/expo/entity).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4xMjUuMSIsInVwZGF0ZWRJblZlciI6IjQ0LjEyNS4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
2026-10-05 08:41:27 -07:00
10 changed files with 61 additions and 41 deletions

No files matched your search

+1 -1
View File
@@ -23,7 +23,7 @@
},
"devDependencies": {
"@tsconfig/bases": "1.0.28",
"@types/node": "24.13.5",
"@types/node": "24.19.1",
"ctix": "2.8.2",
"jest": "30.5.1",
"lerna": "9.0.7",
+1 -1
View File
@@ -27,7 +27,7 @@
"devDependencies": {
"@jest/globals": "30.5.1",
"@types/jscodeshift": "17.3.0",
"@types/node": "24.13.5",
"@types/node": "24.19.1",
"jscodeshift": "17.4.0",
"typescript": "6.0.3"
},
@@ -33,7 +33,7 @@
"devDependencies": {
"@jest/globals": "30.5.1",
"@types/invariant": "2.2.37",
"@types/node": "24.13.5",
"@types/node": "24.19.1",
"typescript": "6.0.3"
},
"peerDependencies": {
@@ -32,7 +32,7 @@
"devDependencies": {
"@expo/entity-testing-utils": "workspace:^",
"@jest/globals": "30.5.1",
"pg": "8.23.0",
"pg": "8.23.1",
"ts-mockito": "2.6.1",
"typescript": "6.0.3"
},
@@ -1,8 +1,26 @@
import { EntityDatabaseAdapterTransientError, EntityErrorState } from '@expo/entity';
import { describe, expect, it } from '@jest/globals';
import { wrapNativePostgresCallAsync } from '../wrapNativePostgresCallAsync.ts';
describe(wrapNativePostgresCallAsync, () => {
it('classifies a PostgreSQL lock timeout as transient and preserves the cause', async () => {
const error = Object.assign(new Error('canceling statement due to lock timeout'), {
code: '55P03',
});
const result = wrapNativePostgresCallAsync(async () => {
throw error;
});
await expect(result).rejects.toBeInstanceOf(EntityDatabaseAdapterTransientError);
await expect(result).rejects.toMatchObject({
state: EntityErrorState.TRANSIENT,
message: error.message,
stack: error.stack,
cause: error,
});
});
it('rethrows literals', async () => {
const throwingFn = async (): Promise<void> => {
// eslint-disable-next-line no-throw-literal,@typescript-eslint/only-throw-error
@@ -38,6 +38,8 @@ function translatePostgresError(
return new EntityDatabaseAdapterCheckConstraintError(error.message, error);
case '23P01':
return new EntityDatabaseAdapterExclusionConstraintError(error.message, error);
case '55P03':
return new EntityDatabaseAdapterTransientError(error.message, error);
default:
return new EntityDatabaseAdapterUnknownError(error.message, error);
}
+1 -1
View File
@@ -32,7 +32,7 @@
"devDependencies": {
"@jest/globals": "30.5.1",
"@types/lodash-es": "4.17.12",
"@types/node": "24.13.5",
"@types/node": "24.19.1",
"typescript": "6.0.3"
},
"peerDependencies": {
+1 -1
View File
@@ -33,7 +33,7 @@
"@jest/globals": "30.5.1",
"@types/invariant": "2.2.37",
"@types/lodash-es": "4.17.12",
"@types/node": "24.13.5",
"@types/node": "24.19.1",
"lodash-es": "4.18.1",
"ts-mockito": "2.6.1",
"typescript": "6.0.3",
+1 -1
View File
@@ -1,7 +1,7 @@
version: '2'
services:
redis:
image: redis@sha256:718f745deb7dfefeac6eed7041fc7ec9476b50e61b247932682457c41adafa0e
image: redis@sha256:6f81e8915c60b065a524e6967e0ad1c639ba6efa84d669f823683ea04d9150ee
ports:
- '${REDIS_PORT}:6379'
volumes:
Generated
+34 -34
View File
@@ -890,7 +890,7 @@ __metadata:
dependencies:
"@jest/globals": "npm:30.5.1"
"@types/jscodeshift": "npm:17.3.0"
"@types/node": "npm:24.13.5"
"@types/node": "npm:24.19.1"
jscodeshift: "npm:17.4.0"
typescript: "npm:6.0.3"
languageName: unknown
@@ -904,7 +904,7 @@ __metadata:
"@expo/entity-database-adapter-knex": "workspace:^"
"@jest/globals": "npm:30.5.1"
"@types/invariant": "npm:2.2.37"
"@types/node": "npm:24.13.5"
"@types/node": "npm:24.19.1"
invariant: "npm:^2.2.4"
typescript: "npm:6.0.3"
uuid: "npm:^14.0.0"
@@ -921,7 +921,7 @@ __metadata:
"@expo/entity-testing-utils": "workspace:^"
"@jest/globals": "npm:30.5.1"
knex: "npm:^3.2.9"
pg: "npm:8.23.0"
pg: "npm:8.23.1"
ts-mockito: "npm:2.6.1"
typescript: "npm:6.0.3"
languageName: unknown
@@ -1007,7 +1007,7 @@ __metadata:
"@expo/entity": "workspace:^"
"@jest/globals": "npm:30.5.1"
"@types/lodash-es": "npm:4.17.12"
"@types/node": "npm:24.13.5"
"@types/node": "npm:24.19.1"
lodash-es: "npm:^4.17.23"
ts-mockito: "npm:^2.6.1"
typescript: "npm:6.0.3"
@@ -1024,7 +1024,7 @@ __metadata:
"@jest/globals": "npm:30.5.1"
"@types/invariant": "npm:2.2.37"
"@types/lodash-es": "npm:4.17.12"
"@types/node": "npm:24.13.5"
"@types/node": "npm:24.19.1"
dataloader: "npm:^2.2.3"
invariant: "npm:^2.2.4"
lodash-es: "npm:4.18.1"
@@ -3389,12 +3389,12 @@ __metadata:
languageName: node
linkType: hard
"@types/node@npm:24.13.5":
version: 24.13.5
resolution: "@types/node@npm:24.13.5"
"@types/node@npm:24.19.1":
version: 24.19.1
resolution: "@types/node@npm:24.19.1"
dependencies:
undici-types: "npm:~7.18.0"
checksum: 10c0/f6c7f564e7b16670bc72ce119f2aaba0f6d6ebb886c13d8cd3656a96e4825d91d826be3d0995fc776df4e19eceb4d3074e5e18d54ce1aebd3f6e0ba12b9108cb
undici-types: "npm:>=7.24.0 <7.24.7"
checksum: 10c0/789822cc68a0e0b632fd0a9fa53411e33541f03c18dc19942ed38161c369bf0b013917b4c6c760688bd2d09d940c827a601add118dfa04fe35a285535b2a8596
languageName: node
linkType: hard
@@ -9184,10 +9184,10 @@ __metadata:
languageName: node
linkType: hard
"pg-cloudflare@npm:^1.4.0":
version: 1.4.0
resolution: "pg-cloudflare@npm:1.4.0"
checksum: 10c0/553764d00055052648393cda53c1feb065991d6f9fbfdeb56cf8396c5b33377ab2897aaf5dc9cd3933d09023a1f01e8b1ca755431dcf5fd71c92ea277e2888f1
"pg-cloudflare@npm:^1.4.1":
version: 1.4.1
resolution: "pg-cloudflare@npm:1.4.1"
checksum: 10c0/32e62c987073472e81c0dc218f850b1212b4e2c1f35d50433d87d054fe268f549ebaf8fc6c1227ab24c12b318f3e3a2a191ffbdfb2daa30b39aa6802ab8fe2f6
languageName: node
linkType: hard
@@ -9198,10 +9198,10 @@ __metadata:
languageName: node
linkType: hard
"pg-connection-string@npm:^2.14.0":
version: 2.14.0
resolution: "pg-connection-string@npm:2.14.0"
checksum: 10c0/c26d85970f782de72b90aa45b4acfa34df90242fc08bc676e8827297164044dbfb40a2cf20b0646bd02662a6b14c5ed27f322db627e41e582f2b705bc41e8b47
"pg-connection-string@npm:^2.14.1":
version: 2.14.1
resolution: "pg-connection-string@npm:2.14.1"
checksum: 10c0/7321eed97579b4972a714909e7a444beb2186780fe7fd86ea719ff7c8f1fad07d7e5f85722c4992245b23683ed7d2fe2bdda8f7469fed4c016bb5c3379c575ca
languageName: node
linkType: hard
@@ -9221,10 +9221,10 @@ __metadata:
languageName: node
linkType: hard
"pg-protocol@npm:^1.16.0":
version: 1.16.0
resolution: "pg-protocol@npm:1.16.0"
checksum: 10c0/8ea4a8f4970aa0ca1e5bf9a482da0a41a043d7470fbaf7592736971146b09a2a4003d953c0091b72fc30bf7a7994a0b7fdf897bf50cd219787bd22806b3ffb04
"pg-protocol@npm:^1.16.1":
version: 1.16.1
resolution: "pg-protocol@npm:1.16.1"
checksum: 10c0/84e8bf05c3548c8ffcad29247c075f8f1cf477600c92a7eb0ab27c6c4cbdbe1280433582bfba91f629b1f68bcaf4ae26436a898f430e884d7887543931e8ade6
languageName: node
linkType: hard
@@ -9241,14 +9241,14 @@ __metadata:
languageName: node
linkType: hard
"pg@npm:8.23.0":
version: 8.23.0
resolution: "pg@npm:8.23.0"
"pg@npm:8.23.1":
version: 8.23.1
resolution: "pg@npm:8.23.1"
dependencies:
pg-cloudflare: "npm:^1.4.0"
pg-connection-string: "npm:^2.14.0"
pg-cloudflare: "npm:^1.4.1"
pg-connection-string: "npm:^2.14.1"
pg-pool: "npm:^3.14.0"
pg-protocol: "npm:^1.16.0"
pg-protocol: "npm:^1.16.1"
pg-types: "npm:2.2.0"
pgpass: "npm:1.0.5"
peerDependencies:
@@ -9259,7 +9259,7 @@ __metadata:
peerDependenciesMeta:
pg-native:
optional: true
checksum: 10c0/11ce12a71b4239588c18f078531c378d5bcdbcb9ea892e080a6e71f91aaece2b4b8fd93ee5777f94210f9258ff56161f8ed1a45050c32d295aaca037bba12ee8
checksum: 10c0/084ce2bcd025705105d4d9a4c4438b178117acbaae5c766e3d3c9fb812cc55d826a212189e19937b8e3b0a8914a3c3e4ba78ad62af73890f37406a676c1f9e0c
languageName: node
linkType: hard
@@ -9789,7 +9789,7 @@ __metadata:
resolution: "root@workspace:."
dependencies:
"@tsconfig/bases": "npm:1.0.28"
"@types/node": "npm:24.13.5"
"@types/node": "npm:24.19.1"
ctix: "npm:2.8.2"
jest: "npm:30.5.1"
lerna: "npm:9.0.7"
@@ -10832,10 +10832,10 @@ __metadata:
languageName: node
linkType: hard
"undici-types@npm:~7.18.0":
version: 7.18.2
resolution: "undici-types@npm:7.18.2"
checksum: 10c0/85a79189113a238959d7a647368e4f7c5559c3a404ebdb8fc4488145ce9426fcd82252a844a302798dfc0e37e6fb178ff481ed03bc4caf634c5757d9ef43521d
"undici-types@npm:>=7.24.0 <7.24.7":
version: 7.24.6
resolution: "undici-types@npm:7.24.6"
checksum: 10c0/d9cd8befb643ac904615c280a095ba4240531f6bb4a5e75a22a7483630ca8d3f1016d2ab6ace6ceda1f63b3a2db2fe037fafe121d6917a0187573aa548ff78ca
languageName: node
linkType: hard