at Berlin Strategic sprint 2016 Florian Pilz and me developed a tool to analyze a ZODB Filestorage for Python 2 string objects. When they are in an encoding besides ASCII this would prevent using this Filestorage with Python 3 because of decoding errors arising on loading the pickles.
The tool is even able to convert those strings either to unicode by decoding them using a configurable encoding or convert them to
zodbpickle.binary so Python 3 will read them as
There is documentation of the tool and a repository on GitHub where the code lives.
- Is there already another tool for this analysis/migration?
- Is there already any practical knowledge migrating Filestorage contents to Python 3?
- Do you think such a tool is the right approach to achieve such a migration?
- Is there anyone who wants to try out the tool on a Filestorage of a personal project and share the experiences? (I analyzed two projects where I have access to a Filestorage but I am sure this does not catch all the edge cases.)