Repository navigation
TML-3537: Migration statements rename, remove and fill value object fields, and convert and delete variants, on Postgres and SQLite #30929
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
wmadden-electric
wants to merge
88
commits into
main
Choose a base branch
from
tml-3537-value-object-variant-statements
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+21,409
−1,031
Open
Changes from all commits
Commits
Show all changes
88 commits
Select commit
Hold shift + click to select a range
8f9aa91
TML-3537: the statement vocabulary for value object fields and variants
wmadden-electric b9fad98
TML-3537: statements whose operations are planned with the diff say so
wmadden-electric 1f28171
TML-3537: the SQL family shares the stored value helpers, and the rem…
wmadden-electric 30046f6
TML-3537: a failed enum value removal reports every required column o…
wmadden-electric b57c869
TML-3537: renameStoredKey renames a key inside the JSON of a column, …
wmadden-electric dde95c2
TML-3537: removeStoredKey removes a key from the JSON of a column, on…
wmadden-electric 80b7320
TML-3537: fillStoredKey sets a key to a JSON value in every object of…
wmadden-electric 16088e1
TML-3537: deleteRows deletes the rows whose column holds a stored val…
wmadden-electric d84e222
TML-3537: replaceStoredValue and removeStoredValue take a path, and a…
wmadden-electric f97aec0
TML-3537: the Migration System doc and the error reference describe t…
wmadden-electric 8e5e7eb
TML-3537: the render fixture lists of both targets cover the JSON ope…
wmadden-electric e45a8f1
TML-3537: the SQL family plans the key rewrites of renamed and remove…
wmadden-electric c73cdaa
TML-3537: migration plan and db update rename and remove the keys of …
wmadden-electric 545d0b8
TML-3537: integration tests apply value object field renames and remo…
wmadden-electric 4a9ac84
TML-3537: the CLI asks one question about a removed value object fiel…
wmadden-electric 1e27d09
TML-3537: the SQL family plans the row rewrites of variants whose dis…
wmadden-electric 15fe61c
TML-3537: the Postgres planner converts and deletes the rows of varia…
wmadden-electric a1de377
TML-3537: the SQLite planner converts and deletes the rows of variant…
wmadden-electric 35b6ef5
TML-3537: integration tests apply variant converts and row deletions …
wmadden-electric 7550aa3
TML-3537: db update --convert Bug rewrites a variant's discriminator …
wmadden-electric 89d60a5
TML-3537: the Migration System doc and the error reference describe v…
wmadden-electric 5bce619
TML-3537: the planners rewrite an enum value inside the JSON of value…
wmadden-electric 694864e
TML-3537: integration tests apply enum value rewrites inside value ob…
wmadden-electric 7ead06c
TML-3537: a CLI test asks one question about an enum value removed fr…
wmadden-electric a684964
TML-3537: a question about a model lists every operation with that su…
wmadden-electric c7290f5
TML-3537: a variant with no fields of its own emits from PSL, since S…
wmadden-electric caab853
TML-3537: the Migration System doc and the error reference describe e…
wmadden-electric 0957006
TML-3537: fillStoredKey fills keys that hold JSON null too, and takes…
wmadden-electric 8268452
TML-3537: the SQL family plans the fills of value object fields that …
wmadden-electric 4ddb819
TML-3537: the Postgres planner fills value object fields that become …
wmadden-electric 530e641
TML-3537: the SQLite planner fills value object fields that become re…
wmadden-electric 3b5aaea
TML-3537: db update prints the temporary value it gives a value objec…
wmadden-electric cfad620
TML-3537: integration tests fill value object fields that become requ…
wmadden-electric 27cf81a
TML-3537: a journey plans --backfill Address.country, fills the place…
wmadden-electric 6b73280
TML-3537: a MongoDB variant with no fields of its own emits from PSL,…
wmadden-electric 9be11f2
TML-3537: the Migration System doc, the CLI README and the error refe…
wmadden-electric c0c90e1
TML-3537: db update fills a temporary value only when the codec's dat…
wmadden-electric 55b4e5a
TML-3537: variant journeys on Postgres and SQLite convert, rename and…
wmadden-electric 755ae19
TML-3537: migration plan offers --rename of a removed value object fi…
wmadden-electric 378748b
TML-3537: a Postgres journey renames and removes value object fields …
wmadden-electric d7c0351
TML-3537: SQLite journeys rename, remove and fill value object fields…
wmadden-electric 86a4db7
TML-3537: the Migration System doc, the error reference, the CLI READ…
wmadden-electric 4cd2e1b
TML-3537: the slice spec names the journey that proves each change an…
wmadden-electric c4689a4
Merge remote-tracking branch 'origin/main' into tml-3537-value-object…
wmadden-electric 16b5a8e
TML-3537: a variant convert is described as convert variant "Bug", as…
wmadden-electric 02600ee
TML-3537: the fill side calls a value object field a field, not a mem…
wmadden-electric 958caa1
TML-3537: unnamedFieldFillOf states that it reads a policy allowing d…
wmadden-electric 8924476
TML-3537: db update fills a required list of enum values or of value …
wmadden-electric 3819bce
TML-3537: a refusal for a value object in a union, a dictionary or a …
wmadden-electric feec7b8
TML-3537: fillStoredKey carries the field's codec and refuses a value…
wmadden-electric e8e7dfc
TML-3537: [*] and .* select every child, the elements of a list and t…
wmadden-electric 7a2d0fb
TML-3537: on SQLite, deleting the rows of a variant with its own tabl…
wmadden-electric 3a5d437
TML-3537: one SQL family function, planStoredRewrites, plans the key,…
wmadden-electric 8998842
TML-3537: deferred records the question whether the framework canonic…
wmadden-electric 9e441a9
TML-3537: db migrate refuses a migration whose migration.ts still has…
wmadden-electric 63f1d0c
TML-3537: on Postgres, every path operation reads a json column as js…
wmadden-electric 14c31e7
TML-3537: fillStoredKey names its value object field, and refuses a v…
wmadden-electric a858dbe
TML-3537: on SQLite, a cascade with a column but no reference is an i…
wmadden-electric cf0fda5
TML-3537: the refusal of a value object rename says to leave the valu…
wmadden-electric ad5f55e
TML-3537: a value object field named through a model field is refused…
wmadden-electric 5d711e8
TML-3537: a value object field renamed with no statement asks the sam…
wmadden-electric 843a829
TML-3537: a removed variant whose base gained one variant is offered …
wmadden-electric f62e0c8
TML-3537: a question about several operations lists them one per line…
wmadden-electric 7cb8627
TML-3537: a removed enum value that rows still hold names every colum…
wmadden-electric 87aa788
TML-3537: a temporary value is reported once per field, not once per …
wmadden-electric c3d7edb
TML-3537: migration plan --backfill lists each fill whose value is a …
wmadden-electric 7fc5c97
TML-3537: db update says which reason keeps it from a temporary value…
wmadden-electric c0aa685
TML-3537: the error reference says db update refuses only a field con…
wmadden-electric b6722e2
TML-3537: on SQLite, a variant question warns about foreign keys only…
wmadden-electric 85fd41d
TML-3537: a key operation names its path as written, and a failed che…
wmadden-electric 35c2e76
TML-3537: a SQLite foreign key failure names the tables whose rows re…
wmadden-electric d537003
TML-3537: when db migrate runs fewer operations than its migrations h…
wmadden-electric b897726
TML-3537: VariantRowRewrite.cascadingTable names the variant table wh…
wmadden-electric 5a157bd
TML-3537: describeDataStatement describes a variant convert by its ki…
wmadden-electric 6c9e427
TML-3537: the SQLite wildcard rename test compares the stored text, s…
wmadden-electric 69eaea0
TML-3537: deferred records the SQLite cascades the plan does not emul…
wmadden-electric c49ea3e
TML-3537: deferred records the db update advice for an enum value ins…
wmadden-electric 28d7f6b
TML-3537: migration plan fills a value object field only when --backf…
wmadden-electric 381edbd
TML-3537: db migrate finds an unfilled placeholder by the name migrat…
wmadden-electric 9ffbeb8
TML-3537: the renameStoredKey precheck says to remove one of the two …
wmadden-electric 8a3144c
TML-3537: fillStoredKey refuses a field that does not name the key it…
wmadden-electric c406ac5
TML-3537: the Migration System doc says a row a path operation rewrit…
wmadden-electric bb4d0dd
TML-3537: deferred asks Will whether a migration package should recor…
wmadden-electric 381bdb2
TML-3537: migration plan refuses a new required value object field wi…
wmadden-electric 641c900
TML-3537: the --delete note of a value object field names every new r…
wmadden-electric 4f7f46f
TML-3537: the doc comment of dataLossQuestion sits above it again
wmadden-electric 7cc1989
TML-3537: the error reference lists the forms of migration.ts the db …
wmadden-electric 11b6750
TML-3537: journey O1 expects migration plan to refuse the renamed fie…
wmadden-electric File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Script executed:
Repository: prisma/orm
Length of output: 18287
Obtain the operator’s decision before merging framework-domain changes.
The applicable
packages/1-framework/**rule prohibits framework-domain changes and requires notifying the operator when a design needs one. This PR changes the exportedMigrationRunnerFailureMeta.rowsHoldingValuetype and adds related behavior across the framework package. Stop and tell the operator, then record the decision in the PR. If it is not approved, do not implement this behavior in the framework domain.Source: Coding guidelines