# 2.1.0 Upgrade Guide

### Backup Configuration

Copy all of your configuration (settings.yml, permissions.yml, aliases.yml, embeds.yml and errors.json) to a safe place to help you configure the bot later, or in case you wish to downgrade. Do not copy application.yml. Additionally, you should backup the `filter.txt` file in the cogs > admin folder to save your blacklisted words.

### Backup Databases

If you are using SQLite for storage, copy your `database` folder to a safe place to restore after installing the new version.

### (Optional) Update Python

If you are migrating from ZeoBot 2.0.1, you should already have some version of Python 3.9 installed. It is recommended to update to the latest patch version - at the time of writing this is Python 3.9.5. - for bug fixes and optimisations. This is not required however.&#x20;

### Update ZeoBot

After you have backed up your configuration files and databases, you will need to completely re-install ZeoBot as there are configuration and structure changes. Download the latest release from MC-Market and unzip it to a different folder. Make sure there are no traces of the old version in this folder.

### Restore Databases

If you are using SQLite, paste your old `database` folder into the new installation (there are no database changes). If you are using PostgreSQL or MySQL, you do not need to do anything except fill in your database details.

### Configure and Run ZeoBot

After your databases have been restored, configure ZeoBot's new configuration files, using the old files as a guide. There are changes to configuration in all configuration files so do not use your old configuration files directly .Using a diff tool such as [diffchecker](https://www.diffchecker.com) is recommended to find changes. You can directly paste your `filter.txt` file into the cogs > admin folder however. Finally, run ZeoBot in the same way as before, following the [Dependencies](/installation/3.-dependencies.md) guide.&#x20;


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.zingyawesome.com/upgrading/2.1.0-upgrade-guide.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
