I have a test module with 2 user defined fields. This module is stored in an non primary database in a table with columns. I want to remove one of the fields; however, when I modify the module it throws an error saying ’ cannot modify created. Changing physical schemas is not yet supported’.
I modified the table by deleting the table in the schema. Is there a way to force Corteza to resync or to tell it to ignore this error and proceed? This issue is a major hurdle in using the system for any serious development since changes are bound to happen and one can’t keep on recreating modules every time there is a schema change.
We have something coming in the 2023.9. From that version on, you’ll get an interface from where you can manually/automatically sync Corteza and the relevant database.
Corteza would compare the internal schema with your database schema and recommend a set of automatic/manal actions you can take to make it all work together so it doesn’t brick the system.
I’ll leave the thread open a bit in case there are questions regarding the feature
You mean 2023.3.9? Looking forward to the release. Thanks.
2023.9.0 which we should be releasing sometime soon; @jfortun would have some more info on that
You can expect the release at the end of this month.
Does this mean we’ll be able to upgrade the schema of Corteza data to the one in existing database and vice versa? Something we could use to manage changes between test/staging/production environments?
Are you asking about site promotion? Corteza (as of now) doesn’t have anything in place for that.
The feature in question will simply simplify the process of assuring the database schema can fit the modules (and their configs) you’ve defined. The feature takes the safest possible approach to hopefully avoid any data loss (so it avoids dropping columns and such).
If you are asking about the feature; in short, as long as the database schema (tables, columns) can hold your Corteza config (modules, fields, …); you can upgrade/downgrade as much as you want.