   _installDependencies: ->
     @_getDependenciesToInstall().then (dependencies) =>
       if not dependencies?
-        return Promise.resolve()
+        return
 
       install(dependencies)
 
   _getDependenciesToInstall: ->
-    @_getDependencies().then (dependencies) =>
+    @_getUpdatedDependencies().then (dependencies) =>
       packagesToUpdate = null
 
       for name, version of dependencies

        description: 'This may take a few minutes. Please **do not** close the editor.'
        dismissable: true

    @_updatePackage().then (pkgResult) =>
      @_installDependencies().then (depResult) =>
        log = "Learn IDE:\n#{pkgResult.log}"

    currentVersion isnt latestVersion

  _someDependencyIsMismatched: ->
    {packageDependencies} = require('../package.json')

    for name, version of packageDependencies
      if @_shouldInstallDependency(name, version)
        return true

    false

  _updateFailed: (log) ->
    @updateNotification =
