private def retrieveTransitiveProjectDependencies()

in extractor/src/main/scala/org/jetbrains/sbt/extractors/DependenciesExtractor.scala [409:423]


  private def retrieveTransitiveProjectDependencies(
    projectRef: ProjectRef,
    config: sbt.Configuration,
    settings: SbtSettings,
    buildDependencies: BuildDependencies,
    projectToConfigurations: Map[ProjectRef, ProjectConfigurations]
  ): Seq[ProjectDependency] = {
    val allDependencies = Classpaths.interSort(projectRef, config, settings, buildDependencies)
    val dependenciesWithoutProjectItself = allDependencies
      // note: removing dependencies to the origin project itself (when prod/test sources are separated prod part is always added to the test part in #getTransitiveDependenciesForProjectProdTestSources)
      // and projects with configurations that do not have sources e.g. provided
      .filter { case(project, config) => project != projectRef && isProjectDependencyInSourceConfiguration(project, config, projectToConfigurations) }

    dependenciesWithoutProjectItself.map(ProjectDependency.apply)
  }