Upgrading to 3.1.2

Hi, I’m on a really old version of Flow on my production environment (2.2.2), and am busy trying to upgrade.

What would be the best steps to upgrade to the latest stable version?
I’m trying it locally, and am running into this issue when executing ‘./flow database:setcharset’:

The object “TYPO3\Surf\Domain\Service\ShellCommandService” which was specified as a property in the object configuration of object “EcoChain\Surf\Task\TYPO3\Flow\ChownTask” (automatically registered class) does not exist.

Thanks

UPDATE:

It seems related to the flow/surf dependency, which has undergone major changes, and it no longer explicitly depends on flow. So depending on “~0.9.0” solved this issue.
But running into other similar dependency injection issues, so my question is still relevant: Is there a recommended path to upgrade from 2.2.2 to 3.1.2?

Hi Jaco, best thing to do is probably check release notes of the versions from 2.2.2 upwards. They should contain the steps you need to take in the right order.