 
     # Ensure all apps are atoms
     apps = to_app_names(given)
+
     deps =
       if opts[:include_children] do
         get_deps_with_children(all_deps, apps)

  @doc """
  Checks if a dependency has diverged.
  """
  def diverged?(%Mix.Dep{status: {:overridden, _}}),   do: true
  def diverged?(%Mix.Dep{status: {:diverged, _}}),     do: true
  def diverged?(%Mix.Dep{status: {:divergedreq, _}}),  do: true
  def diverged?(%Mix.Dep{status: {:divergedonly, _}}), do: true
  def diverged?(%Mix.Dep{}), do: false


    * `:build` - the build path for the dependency

  """
  defstruct scm: nil,
            app: nil,
            requirement: nil,
            status: nil,
            opts: [],
            deps: [],
            top_level: false,
            extra: [],
            manager: nil,
            from: nil

  @type t :: %__MODULE__{
          scm: module,
          app: atom,
          requirement: String.t() | Regex.t() | nil,
          status: atom,
          opts: keyword,
          top_level: boolean,
          manager: :rebar | :rebar3 | :mix | :make | nil,
          from: String.t(),
          extra: term
        }

  @doc """
  Returns loaded dependencies from the cache for the current environment.
