     # Don't run recursively for the top-level project
     scms = Mix.SCM.available
     from = current_source(:mix)
-    (Mix.project[:deps] || []) |> Enum.map(update(&1, scms, nil, from))
+    (Mix.project[:deps] || []) |> Enum.map(update(&1, scms, from))
   end
 
   @doc """

  """
  def update(Mix.Dep[scm: scm, app: app, requirement: req, opts: opts,
                     manager: manager, from: from]) do
    update({ app, req, opts }, [scm], manager, from)
  end

  ## Helpers

        "deprecated, please use Mix.Version instead")
    end

    cond do
      # If it is not available, there is nothing we can do
      not Mix.Deps.available?(dep) ->
        dep

      # If the manager was already set to rebar, let's use it
      manager == :rebar ->
        rebar_dep(dep)

      mixfile?(dep) ->
        Mix.Deps.in_dependency(dep, fn project ->
          mix_dep(dep, project)
        end)

      rebarconfig?(dep) or rebarexec?(dep) ->
        rebar_dep(dep)

      makefile?(dep) ->
        make_dep(dep)

      true ->
        dep
    end
  end

