diff --git a/book/SUMMARY.md b/book/SUMMARY.md index 289236ad..b6029127 100644 --- a/book/SUMMARY.md +++ b/book/SUMMARY.md @@ -2,6 +2,6 @@ * [Introduction](./introduction.md) * [Code of conduct](./code-of-conduct.md) -* [Migration to/from conduit](./migration.md) +* [Migration to/from Conduit](./migration.md) * [Contributing](./contributing.md) * [Changelog](./changelog.md) diff --git a/book/migration.md b/book/migration.md index e1651531..6ec2f833 100644 --- a/book/migration.md +++ b/book/migration.md @@ -1,12 +1,12 @@ -# Migration to/from conduit +# Migration to/from Conduit -Before migrating a conduit instance to grapevine, make sure to read through +Before migrating a Conduit instance to Grapevine, make sure to read through all of the breaking changes listed in [the changelog](./changelog.md). -In order to migrate an existing conduit instance to/from grapevine, the -grapevine config must include `conduit_compat = true`. This parameter cannot +In order to migrate an existing Conduit instance to/from Grapevine, the +Grapevine config must include `conduit_compat = true`. This parameter cannot currently be modified after creating the database for the first time, so make -sure to set it when creating a fresh grapevine instance that you may want to +sure to set it when creating a fresh Grapevine instance that you may want to migrate to a different implementation in the future. ## Config @@ -26,11 +26,11 @@ automatically migrating existing configs to the new schema. ## Database Grapevine is currently compatible with the Conduit 0.7.0 database format. It is -still possible to migrate to or from some newer conduit versions, but it may +still possible to migrate to or from some newer Conduit versions, but it may require manual intervention or break some functionality. We plan to add [a migration tool][db-compatibility-mr] to support cleanly -migrating to or from conduit versions we are not internally compatible with. +migrating to or from Conduit versions we are not internally compatible with. | Is migrating from | to | workable? | |-|-|-| @@ -46,11 +46,12 @@ migrating to or from conduit versions we are not internally compatible with. Conduit 0.9.0 includes [a database migration][conduit-db-16-migration] that modifies data that Grapevine doesn't read. Grapevine does not currently -recognize the new db version, and will fail to start against a conduit 0.9.0 -database. Grapevine can start and run without issues if the version recorded in -the db is rolled back from 16 to 13. It is possible to do this by editing the -db manually, or by modifying grapevine to change the version. [This -patch][conduit-db-16-patch] is an example of the latter approach. +recognize the new database schema version, and will fail to start against +a Conduit 0.9.0 database. Grapevine can start and run without issues if the +version recorded in the databse is rolled back from 16 to 13. It is possible to +do this by editing the database manually, or by modifying Grapevine to change +the version. [This patch][conduit-db-16-patch] is an example of the latter +approach. [conduit-db-16-migration]: https://gitlab.com/famedly/conduit/-/blob/f8d7ef04e664580e882bac852877b68e7bd3ab1e/src/database/mod.rs#L945 [conduit-db-16-patch]: https://gitlab.computer.surgery/matrix/grapevine/-/commit/fdaa30f0d670c6f04f4e6be5d193f9146d179d95 @@ -59,11 +60,11 @@ patch][conduit-db-16-patch] is an example of the latter approach. Conduit 0.8.0 added [a new database table][alias_userid-commit] to track which users created each room alias. Grapevine does not write to this table, so it is -not possible to delete aliases created in grapevine through the normal -client-server API after migrating to conduit 0.8.0. It is possible to delete -aliases with the `remove-alias` admin command. Not that this issue also applies -to migrations from conduit 0.7.0 to conduit 0.8.0. +not possible to delete aliases created in Grapevine through the normal +client-server API after migrating to Conduit 0.8.0. It is possible to delete +aliases with the `remove-alias` admin command. Note that this issue also applies +to migrations from Conduit <0.8.0 to Conduit 0.8.0. -There are no additional known issues when migrating to conduit 0.9.0. +There are no additional known issues when migrating to Conduit 0.9.0. [alias_userid-commit]: https://gitlab.com/famedly/conduit/-/commit/144d548ef739324ca97db12e8cada60ca3e43e09