public function handle(Args $args, IO $io)
    {
        $updateStrategy = new PuliStrategy();
        $updateStrategy->setStability($this->getStability($args));

        // false: disable signed releases, otherwise the updater will look for
        // a *.pubkey file for the PHAR
        $updater = new Updater(null, false);
        $updater->setStrategyObject($updateStrategy);

        if ($updater->update()) {
            $io->writeLine(sprintf(
                'Updated from version %s to version %s.',
                $updater->getOldVersion(),
                $updater->getNewVersion()
            ));

            return 0;
        }

        $io->writeLine(sprintf(
            'Version %s is the latest version. No update required.',
            $updater->getOldVersion()
        ));

        return 0;
    }