What's the best way to Upgrade PhpStorm?

Yesterday PhpStorm told me there was a new version 3.0.1, and that I should upgrade (from 3.0.0).

I downloaded the new version and ran the installation.

Today PhpStorm told me there was a new version 3.0.1, and that I should upgrade (from 3.0.0).


Okay, so I looked and found I now have BOTH versions installed.  I can see why that MIGHT be useful for some users, but I suspect that for most developers they just want the current version, or at the least a very easy option to remove the old version.

In fact I can't even see an easy option to Uninstall, without going to Programs and Features to uninstall it.

Is there some recommended process for upgrading - as in removing the old version, and installing the new one?

Any gotchas?  Will I have to reenter licence information?  Will my settings etc, be remembered?

I suspect this must be covered somewhere, because it's such an obvious thing that people need to do, but I couldn't find it.


Comment actions Permalink

Hi Jon,

It's purely up to you to decide which one is better:

  • Using patch is much faster and easier .. and it works (well, last time I've used it was the in summer and it went fine). Cannot comment more than that, but if there would be any serious issues you will see more forum threads and/or tickets on Issue Tracker regarding it.
  • I personally always doing uninstall and then fresh install (all settings are preserved). This involves few extra steps, but they are small and not really an issue for me (although I would love to not to have them at all).
  • You can use archive (zip) version -- no installer, just extract into empty folder and start using it.

I prefer fresh install (mainly because I'm using EAP builds a lot and they may introduce new files/behaviour etc). Considering that this process in not perfectly implemented (IMHO) and there is no install-over-existing-installation (a.k.a. Upgrade) option available, the whole process looks like this:

  1. Download new full install .exe file.
  2. Uninstall current version via Control Panel (I see no real need in "easy option to Uninstall", e.g. "Uninstall" icon in Programs menu)
  3. Go to installed folder and delete few remained files/folders that uninstaller left behind (that is the most annoying parts for me -- why it does not removes those files?). Without it installer will refuse this folder as it is not empty.
  4. Start installing new version. Make sure to select proper install folder (I'm always using C:\Program Files (x86)\JetBrains\PhpStorm, no version in folder name), otherwise almost each new EAP build will be installed into separate folder.

All your settings are stored in your profile folder (C:\Users\USERNAME\.WebIde10) and will remain intact unless you choose to delete it during uninstall (there are 2 checkboxes available, unchecked by default).

If you have 2 completely different versions (e.g. v2.x and v3.0) installed at the same time and they both using default config/data folders, then most likely you will have some issues (lost settings (as they may not be backward compatible between major versions), forced re-indexing upon opening a project (as each version most likely will support different libraries and may have different index/cache structure) etc). But if they configured to use separate folders for config/data (look into PhpStorm_HOME\bin\idea.properties file), then no issues here.

Comment actions Permalink

Thanks for the advice.

In the meantime, I decided to remove the old version.  It seemed silly to keep it around.  I checked those two boxes too, thinking it would be a good idea to clean out what I thought was OLD profile information.

Then when I ran PhpStorm I found I'd lost all my settings, all knowledge of previous projects, etc - AND it's no longer licensed.

It's incredibly frustrating.

There are some things PhpStorm does really well.  And then there are some things, like this, that PhpStorm does INCREDIBLY BADLY!

I mean seriously, from 3.0.0 to 3.0.1 and it doesn't just do a proper upgrade?  That is incredibly lame!

What should have been a very minor upgrade, has become a major pain in the ass.

Comment actions Permalink

Purely from my person point of view: you should only blame yourself for loosing your settings -- you assumed it will work differently without having any backups of that data in case your assumption would be incorrect. I can only suggest setting up some sort of automatic backup of your user profile (C:\Users\USERNAME) and maybe C:\ProgramData as well, so it executes on every system startup/logon etc -- really helps in such situations (Acronis TruImage Home takes like 20-30 secs doing such thing for me). If you remember a movie with Steven Seagal: Under Siege 2 -- it has this nice quote, which I happened to remember: "Assumption is the mother of all f*** ups!".

I absolutely agree that stand-alone installer should be able to upgrade current installation to the latest version, like most applications do (e.g. Opera browser, Firefox browser etc -- maybe by running uninstaller silently behind / as a step in installation process) without asking other questions. Unfortunately this requires few things to be implemented:

  1. The IDE will be installed in the same folder all the time (e.g. "PhpStorm" .. or at least "PhpStorm 3" for v3.x .. or by remembering previously using target folder).
  2. Uninstaller should execute full uninstall .. and/or installer should ignore some files if they are already present (which means, do not overwrite them).

There is a ticket for 2nd moment, but it does not look like devs planing to look at it any time soon (maybe even for the next few years, who knows) -- http://youtrack.jetbrains.net/issue/WI-3853 . Although it is about EAP builds, you will see similar behaviour in release builds as well.

In any case: it can be an issue / frustrating experience until you figure out how all this works (which most people do just fine). After that the procedure is known and it does not seem to be the major usability case -- I remember seeing very few tickets/threads on this subject.


Please sign in to leave a comment.