It's still the case as of v5.30 that the incompleteIncomplete UTF8 support is hard coded into the core code before 5.33 (thanks @michaelmcandrew!).
The solution for now seems to be to re-run the System.utf8conversion
routine after any time
- Pre 5.33: do this after any time you create a field/fieldset (including anytime you install an extension that creates a custom field/fielset)
- 5.33+ do this once, then the only time it should be needed again is if an extension hard-codes the old UTF8 in place.
Note that you create a field/fieldsetcan use the uh-oh extension to help discover whether your db uses the old UTF8 stuff.