Make unidoc generate external javadoc links (#477)

* make unidoc generate external javadoc links (#353)

* Move code of updating apiMappings
This commit is contained in:
Naoki Yamada 2023-07-10 22:19:11 +09:00 committed by GitHub
parent 17403a4faa
commit 2b2d325006
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -156,6 +156,24 @@ object UnidocRoot extends AutoPlugin {
Seq( Seq(
ScalaUnidoc / unidocProjectFilter := unidocRootProjectFilter(unidocRootIgnoreProjects.value), ScalaUnidoc / unidocProjectFilter := unidocRootProjectFilter(unidocRootIgnoreProjects.value),
JavaUnidoc / unidocProjectFilter := unidocRootProjectFilter(unidocRootIgnoreProjects.value), JavaUnidoc / unidocProjectFilter := unidocRootProjectFilter(unidocRootIgnoreProjects.value),
Compile / doc / apiMappings ++= {
val entries: Seq[Attributed[File]] = (LocalProject("slf4j") / Compile / fullClasspath).value
def mappingsFor(organization: String, names: List[String], location: String,
revision: String => String = identity): Seq[(File, URL)] = {
for {
entry: Attributed[File] <- entries
module: ModuleID <- entry.get(moduleID.key)
if module.organization == organization
if names.exists(module.name.startsWith)
} yield entry.data -> url(location.format(module.revision))
}
val mappings: Seq[(File, URL)] =
mappingsFor("org.slf4j", List("slf4j-api"), "https://www.javadoc.io/doc/org.slf4j/slf4j-api/%s/")
mappings.toMap
},
ScalaUnidoc / apiMappings := (Compile / doc / apiMappings).value) ++ ScalaUnidoc / apiMappings := (Compile / doc / apiMappings).value) ++
UnidocRoot.CliOptions.genjavadocEnabled UnidocRoot.CliOptions.genjavadocEnabled
.ifTrue(Seq(JavaUnidoc / unidocAllSources ~= { v => .ifTrue(Seq(JavaUnidoc / unidocAllSources ~= { v =>