How to migrate non-folderish to folderish Archetypes based content types

Recently I had to migrate content from an ATEvent based content type to a collective.folderishtypes and plone.app.event based content type with folderish behavior. It turned out, this was quite easy!

Non-folderish content types are missing some BTree attributes, which folderish content types have (See Products.BtreeFolder2.BTreeFolder2Base._initBtrees).

plone.app.folder provides an upgrade view to migrate pre-plone.app.folder (or non-folderish) types to the new BTree based implementation (defined in: plone.app.folder.migration.BTreeMigrationView).

To upgrade your non-folderish content types to folderish ones, just call @@migrate-btrees on your Plone site root. The migration shouldn't take too long.

This applies to Archetypes based content types.