Skip to content
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

Manifest Schema Additions #78

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 15 additions & 1 deletion docs/developer/database-schema-migrations.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,10 +29,16 @@ ADD COLUMN `id` int(11) NOT NULL AUTO_INCREMENT FIRST,
DROP PRIMARY KEY,
ADD PRIMARY KEY (`id`) USING BTREE,
ADD UNIQUE INDEX(`varname`);
)"
)",
.content_schema_update = false,
.force_interactive = true
},
```

### Optional fields:
- `.content_schema_update` - If true, this will update the content_db if configured
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should leave this field in all the time, otherwise it often gets forgotten in PR's

- `.force_interactive` - If true, this will require the user during the migration to consent to the upgrade to move forward as it could be risky or breaking changes.

That's it! As far as what is needed from a developer to have the server run the migration, that is all you need to do.

You can test it by running world manually after you compile. Please test your database migrations before submitting a PR, it's a very simple mistake to avoid trying to fix later.
Expand All @@ -50,3 +56,11 @@ You can test it by running world manually after you compile. Please test your da
// std::string sql{}; // the SQL DDL that gets ran when the condition is true
// };
```

### Match Conditions

- **contains** = Strings::Contains(r, e.match);
- **match** = e.match;
- **missing** = !Strings::Contains(r, e.match);
- **empty** = r.empty();
- **not_empty** = !r.empty();
Comment on lines +62 to +66
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Formatting, should be a little bit more descriptive