Ansel Sermersheim via SG16:If I use std::text::u8text, which seems most natural and is likely to work best with other librariesI guess in this case the encoding object should have the copy of UCD and use it during... hmm... I think you should write a conversion function. The old code should use some old type and new code should reject it so type system is not compromised. Then you slowly convert all old data to new data.