Problem migrating from Archetypes to Dexterity via @@atct_migrator

Yesterday we had a screesharing-session and figured out how to fix the issues:

Generally you should migrate to the latest Plone 5, then migrate to Dexterity. Even better to migrate to 5.1 since the at-dx migration in 5.1 included many improvments that were not backported to 4.3 or even 5.0. Another thing (not an issue here): If you have LinguaPlone you need to migrate to plone.app.multilingual (with archetypes.multilingual) before upgrading to Plone 5! Then migrate from AT to DX in Plone 5.

This is what we did:

  • Disable the wiki-behavior in Plone 4 in editing-controlpanel (to keep the brackets (()) and [] during upgrades
  • Include wicked in the 5.x buildout
  • Patch the subscriber from wicked in wicked/at/objectevents.zcml as described above to prevent it from doing anything stupid.
  • We also had to patch a event-handler of plone.app.linkintegrity (that will no longer be necessary after Plone 5.1rc2 since I added https://github.com/plone/plone.app.linkintegrity/pull/60)
  • We also patched ZCTextIndex.index_object which is bascially a good idea to do during migrations since it speeds things up a lot (no indexing of files and documents!) and you're not doing a query for SearchableText during a migration. You should rebuild the catalog after the migration.
  • In Plone 5 with dexterity with all items moved to Dexterity the brackets were still there
  • Add collective.simplewiki to the buildout and install it. The brackets are now (after a restart) turned into wiki-links. Works like a charm and ist much more lightweight than wicked.

What remains is a uninstall Step in wicked that allows you to remove wicked from the buildout without throwing AttributeError: type object 'IFieldValueSetter' has no attribute '__iro__'

3 Likes