Magento – Magento Connect and ./mage list-extensions not showing community extensions since upgrade to 1.9.1

bugdownloadermagento-connectupgrade

I was wondering if anyone could help me. I just upgraded from 1.8.1 to 1.9.1. Everything updated fine along with the database, and it all appeared to be fine.

However, I can no longer view my installed extensions in Connect Manager. I can see all of the Mage core extensions, but none of my community ones. They were all installed using ./mage and previously showed up in 1.8.1, but now it simply cannot see them. They are showing up as modules that I can enable and disable in configuration, but even if I run ./mage list-installed it still can't see them, even though all of the files and folders are in the correct places.

I want to be able to upgrade these extensions via the terminal with ./mage upgrade. Even though I've tried ./mage sync and ./mage sync-pear, it just can't seem to "see" them. Is there something in downloader that has been overwritten by the upgrade which means it can no longer track my community extensions?

Thanks for any help anybody can offer!

Update: What I've done as a fix is I ran ./mage upgrade community extension_name on all of my community extensions (which may not be the solution for some people as they may have a lot more then me!) and instead of moaning about it like it would if I did ./mage install (as it already exists), it simply acts as if it is upgrading it (some actually needed updating, so obviously test them thoroughly afterward).

It then reappears in the extension list on ./mage list-installed and Connect Manager. Yay.

Best Answer

There's no changes in 1.9 that made Magento Connect stop tracking community extensions. Magento Connect stores a list of your installed extensions in the downloader/cache.cfg file. My guess is something happened during the upgrade (either a Connect Bug or unexpected termination) that reset the list of extensions in this file.

One possible additional diagnostic tool — the latest version of n98-magerun has a command for validating extensions

n98-magerun extension:validate

This command runs through the list of extension in downloader/cache.cfg and compares the cached contents of package.xml with the actual files on your system. Might be useful to see what extensions this command lists as installed vs. what Connect lists as installed.

Related Topic