Compatibility and limits ======================== This page is the single record of what has been tested and what is not supported. Configured CI jobs and recipes do not widen these claims until they have passed. Requirements and tested versions -------------------------------- **Projects targeting Java 17, 21 and 25 are tested. Documentation extraction requires JDK 25**, even when your library builds and runs on an older Java release. Your library's own toolchain can stay as it is. .. list-table:: :header-rows: 1 :widths: 25 30 45 * - Component - Requirement - Tested * - Extraction JDK - JDK 25 only - Temurin 25.0.3. Other JDK runtimes are rejected with an error. * - Source/API release - ``java_release``; empty uses the JDK default - 17, 21 and 25 through JDK 25's ``--release``, with the complete feature fixture. This does not test JDK 17 or 21 runtimes. * - Python - 3.12+ - 3.12, 3.13 and 3.14 * - Sphinx - 9.1.x - 9.1.0, with the Docutils version it installs (0.22.4) * - Operating system - Platform-neutral - Linux, macOS and Windows in GitHub Actions * - HTML themes - Native Sphinx nodes - Alabaster 1.0.0, Sphinx Classic, Furo 2025.12.19, Read the Docs 3.1.0 and Lumina 2.9.11 in Chromium at desktop (1440px) and mobile (390px) widths. Classic keeps a minimum width on mobile; Read the Docs overflows on phones for native Sphinx objects too, and Java pages stay within that. * - Other builders - Native Sphinx nodes - Text builder * - Parallel builds - Sphinx ``-j`` - ``-j 2``, with an inventory identical to ``-j 1`` Put JDK 25's ``java``, ``javac`` and ``javadoc`` on ``PATH``, or set ``java_jdk`` to its home directory. A site that only renders a pre-extracted model or consumes another site's inventory needs no JDK. Not tested ---------- * Other JDK runtimes, Sphinx releases, Firefox and WebKit, PDF/LaTeX and EPUB builders. * Large multi-module projects. A measured single-library workload is recorded in :doc:`performance`; its warnings prevent a claim of complete Javadoc fidelity. * Availability of remote Javadoc sites behind ``java_external_javadoc`` URLs. Known limits ------------ * Traditional Javadoc comments and plain inline ``{@snippet}`` bodies are supported; see :doc:`javadoc-support`. Markdown comments (``///``), external or hybrid snippets, snippet regions, IDs and markup, and unsupported tags warn. The HTML subset excludes definition lists, headings, images, presentational attributes, ``