Check current version
Start by checking what version you currently have with command:
Git Users: You can check the latest release you have by getting new tags with git fetch --tags then running git describe
Write this down somewhere.
Backup database(s) (optional)
In case you wish to roll back to previous version you will need to make backup of your database since running new version will upgrade it and downgrade is not supported.
Each configuration file has corresponding database file, so for example config.yml will have db-config.sqlite
Copy this file to backup file containing the version number you are were last using, e.g. db-config.sqlite_1.1.59
If you have short cron interval, comment FlexGet out from the cron. After you've ran successfully manually, put it back. If you are running the daemon, you should stop the daemon until the upgrade is complete and you verify your config file works with the updated version.
There has been alot of errors arising from setuptools package being out of date and failing an upgrade. Please make sure to upgrade setuptools.
pip install --upgrade setuptools pip install --upgrade flexget
Git users can just run git pull. If the dependencies have changed, you'll also have to run bin/pip install -e . again to upgrade them.
Check if your configuration file is still valid, there may have been some changes to it.
If your configuration doesn't pass check, Have a look at upgrade actions to see if there are any actions you must take. The behavior of certain plugins may also have changed, so check upgrade actions even if your config is passing.
For example, if you were running 1.1.2 follow all the steps above this revision.
If you encounter problems, there are ways to get help !
Start by removing traces of old FlexGet from your python site-packages, eg.
Also make sure you are running the latest package of pip.
pip install --upgrade pip
Special note for Arch Linux users. Yours is different.
pip2 install --upgrade pip
If you receive errors about database upgrades please report them via a ticket. If you do not care about the history for that plugin, you can reset the database for that plugin with --reset-plugin PLUGINNAME to get it working again.