Data compatibility issue in module 'module-secure-development-essentials' #1102
Fuzzbender
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Unfortunately more strict validation uncovered a data break in one of the modules.
Recently we hardened validation. It now complains from field types that the project does not recognise. Project does not recognise the field type if it is not local, nor imported through any of the modules. This was done in commit
93e7b63d4091430bb2ef7a3663b8d9b932600746.But, earlier module
module-secure-development-essentials(secdeva) had removed field typesecdeva/fieldTypes/controlImplementer. This was not caught. We don't have instructions for content/module creators on how to keep data-compatibility. Or even how to announce breaks in data.Thus, the projects that used the module, started complaining about unknown field type.
As a fix, you can either fix it manually. Or use the attached script.
Manually:
Find all references to
secdeva/fieldTypes/controlImplementerfromcardRoot. Remove the lines fromindex.json. The references can be in three arrays:customFields,alwaysVisibleFields, oroptionallyVisibleFields. Remove only the array element.Script:
Save the attached script to local file system.
Run the script in the root of your project with:
The script announces the changes it does. If your project is not using the removed field type, the last output line should state:
To avoid repeating the same mistake in the future, we will improve our instructions. The upcoming versioning and migrations support will also be helpful.
Sorry for the inconvenience.
Beta Was this translation helpful? Give feedback.
All reactions