playframework / omnidoc   2.8.21

Apache License 2.0 GitHub

Play aggregated documentation

Scala versions: 3.x 2.13 2.12 2.11 2.10

Omnidoc

Twitter Follow Discord GitHub Discussions StackOverflow YouTube Twitch Status OpenCollective

Build Status Maven Repository size Scala Steward badge Mergify Status

Omnidoc is an sbt build that adds to sbt's mappings in (Compile, packageBin) to aggregate source code and manuals produced within the Play ecosystem and produce a single deliverable. This must not be confused with Interplay's Omnidoc which simply adds some metadata on the -source.jar artifact of every Play library.

The resulting deliverable includes:

  • manual (also referred to as playdoc)
  • javadoc
  • scaladoc

How it works

Omnidoc defines 5 tasks to:

  1. download -sources.jar and -playdoc.jar artifacts for each dependency
  2. extract the dowloaded -sourcesartifacts into omnidoc/sources/
  3. extract the dowloaded -playdocartifacts into omnidoc/playdoc/
  4. use omnidoc/sources/ to produce omnidoc/javadoc/
  5. use omnidoc/sources/ to produce omnidoc/scaladoc/
  6. package playdoc into play/docs/content
  7. package javadoc into play/docs/content/api/java
  8. package scaladoc into play/docs/content/api/scala

NOTE: all the paths above are relative to target/scala-2.1x/ (for example target/scala-2.12/).

Releasing a new version

Omnidoc will be released as part of a Play Framework release. See https://github.com/playframework/.github/blob/main/RELEASING.md