Commit 542df44
Port prisma functional wave 2: mongo composites, relationMode matrices, issue regressions (229 accounted)
Second porting wave for the port-all-tests project, +229 checklist boxes accounted (488 → 717).
Ported & passing:
- mongo composites/list + composites/object (withMongoPort): create/createMany/delete/deleteMany/findFirst/findMany/update/upsert
- relationMode foreignKeys referential-action matrices: 1-to-1, 1-to-n, m-to-n (Cascade/NoAction/Restrict/SetNull; @Map + nomap), plus 17255 same/mixed-action disconnect
- issue regressions: 5952 decimal, 14954 date, 21631 batching-in-tx (Promise.all forms), 29174 jsonb, 13089 dollar-in-search (mongo)
Ported & failing (test.fails, faithful gap):
- 29267 Uint8Array-in-JSON serialization; required-composite null; implicit default onUpdate (NoAction vs Prisma Cascade)
- relation-mode-gh-m-to-n @Map variants: prisma-next rejects the mapped join-table auto-index name (>54-char prefix limit, #1047); Prisma truncates/hashes. Tracked as it.fails that flips green when fixed.
Non-portable (recorded per-test in non-ported/):
- relationLoadStrategy, relationMode=prisma emulation, implicit embedded mongo m2m, array-batch $transaction([...]), embedded-subfield select / composite where operators / read-side aggregate+count in mongo ORM
Built against current main: fixtures emitted with the new indexes[].unique contract shape (#1047); count-only ORM terminals renamed to createAndCount/updateAndCount/deleteAndCount (#1044).
Corpus: 69 files, 476 passed | 52 expected-fail, typecheck + lint clean. failing.md matches the test.fails markers; non-ported ledgers mirror functional/<suite>/. All dispositions reviewer-gated.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Signed-off-by: Serhii Tatarintsev <tatarintsev@prisma.io>1 parent 79c5cd3 commit 542df44
275 files changed
Lines changed: 45410 additions & 232 deletions
File tree
- projects/port-all-tests
- briefs
- checklists
- test/integration/test/ports/prisma
- functional
- composites-list-createMany
- _fixture
- generated
- composites-list-create
- _fixture
- generated
- composites-list-deleteMany
- _fixture
- generated
- composites-list-delete
- _fixture
- generated
- composites-list-findFirst
- _fixture
- generated
- composites-list-findMany
- _fixture
- generated
- composites-list-update
- _fixture
- generated
- composites-list-upsert-create
- _fixture
- generated
- composites-object-createMany
- _fixture
- generated
- composites-object-deleteMany
- _fixture
- generated
- composites-object-delete
- _fixture
- generated
- composites-object-findFirst
- _fixture
- generated
- composites-object-findMany
- _fixture
- generated
- composites-object-upsert-create
- _fixture
- generated
- issues-13089-dollar-in-search
- _fixture
- generated
- issues-14954-date-batch
- _fixture
- generated
- issues-21631-batching-in-transaction
- _fixture
- generated
- issues-29174-jsonb-parameter-regression
- _fixture
- generated
- issues-29267-uint8array-in-json
- _fixture
- generated
- issues-5952-decimal-batch
- _fixture
- generated
- relation-mode-17255-mixed-actions
- _fixture
- generated
- relation-mode-17255-same-actions
- _fixture
- generated
- relation-mode-gh-1-to-1
- _fixture
- cascade-map
- generated
- cascade-plain
- generated
- noaction-map
- generated
- noaction-plain
- generated
- restrict-map
- generated
- restrict-plain
- generated
- setnull-map
- generated
- setnull-plain
- generated
- relation-mode-gh-1-to-n
- _fixture
- cascade-map
- generated
- cascade-plain
- generated
- noaction-map
- generated
- noaction-plain
- generated
- restrict-map
- generated
- restrict-plain
- generated
- setnull-map
- generated
- setnull-plain
- generated
- relation-mode-gh-m-to-n
- _fixture
- cascade-map
- cascade-nomap
- generated
- default-map
- default-nomap
- generated
- noaction-map
- noaction-nomap
- generated
- restrict-map
- restrict-nomap
- generated
- non-ported/functional
- composites-list-aggregate
- composites-list-count
- composites-list-findFirst
- composites-list-findMany
- composites-list-update
- composites-object-aggregate
- composites-object-count
- composites-object-findFirst
- composites-object-findMany
- issues-11740-transaction-stored-query
- issues-12862-errors-are-obfuscated-by-interactive-transactions
- issues-14954-date-batch
- issues-18276-batch-order
- issues-20724
- issues-21631-batching-in-transaction
- issues-5952-decimal-batch
- relation-load-strategy-unsupported
- relation-load-strategy
- relation-mode-17255-mixed-actions
- relation-mode-17255-same-actions
- relation-mode-gh-1-to-1
- relation-mode-gh-1-to-n
- relation-mode-gh-m-to-n-mongodb
- relation-mode-gh-m-to-n
- relation-mode-m-n-mongodb-at-map
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
45 | 45 | | |
46 | 46 | | |
47 | 47 | | |
48 | | - | |
| 48 | + | |
49 | 49 | | |
50 | 50 | | |
51 | 51 | | |
| |||
Lines changed: 68 additions & 68 deletions
Large diffs are not rendered by default.
Lines changed: 34 additions & 34 deletions
Large diffs are not rendered by default.
Lines changed: 129 additions & 129 deletions
Large diffs are not rendered by default.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
38 | 38 | | |
39 | 39 | | |
40 | 40 | | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
Lines changed: 36 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
Lines changed: 217 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
0 commit comments