Copy your settings.yml, permissions.yml, aliases.yml and errors.json to a safe place to help you configure the bot later, or in case you wish to downgrade.
If you are using SQLite for storage, copy your database folder to a safe place for migration after you upgrade. If using PostgreSQL/MySQL, you should create a database dump.
Update your Python version to 3.10 (https://www.python.org/downloads/). Use python3 -V to test on Linux and macOS or py -V on Windows and ensure it displays 3.10 as the version.
After you have backed up your configuration files and databases, you will need to completely re-install ZeoBot as this is a complete rewrite. Download the latest release from BuiltByBit, and unzip it to a different folder. Make sure there are no traces of the old version in this folder.
Download the database migration tool from here and unarchive it.
After unarchiving the file, open the db.yml file. If you are using SQLite, set the database_type to sqlite and paste all your database files into the database folder.
If you are using PostgreSQL/MySQL, set the database_type accordingly and enter your database details.
Now run the migrate.py file. (python3 migrate.py for macOS and Linux or py -3.10 migrate.py for Windows).
Make sure you have a backup of your databases before migration!
If database migration fails, you will have to delete the databases in the case of SQLite or reset the database in the case of PostgreSQL/MySQL.
Configure and Run ZeoBot
After your databases have been migrated, configure ZeoBot's new configuration files, using the old files as a guide. Finally, run ZeoBot in the same way as before, following the start guide.