Skip to content

--emit-digest flag only includes indexed content from a single target when requesting an archive with multiple combined targets #1359

@heckj

Description

@heckj

Description

While I was exploring using --emit-digest with the experimental combined documentation, I noticed that the content included in the indexing-records.json was only sourced from a single catalog, not a combination of all the targets that I'm including in the combined archive.

This was found while I was exploring the combined documentation for Swift Package Manager, where I used the following command to render for a test GitHub pages hosting:

export DOCC_JSON_PRETTYPRINT=YES
swift package --disable-sandbox generate-documentation \
  --enable-experimental-combined-documentation \
  --enable-mentioned-in \
  --enable-experimental-external-link-support \
  --target PackageManagerDocs \
  --target PackageDescription \
  --target PackagePlugin \
  --emit-digest \
  --hosting-base-path swiftpmtest --transform-for-static-hosting \
  -o /Users/heckj/swiftpmtest/docs

Checklist

  • If possible, I've reproduced the issue using the main branch of this package.
  • This issue hasn't been addressed in an existing GitHub issue.

Expected Behavior

The indexing content, if requested, should include content from all catalogs included within the combined archive.

Actual behavior

I used jq '.[].location.reference.url' docs/indexing-records.json to dump out the URLs in the records, and noticed that all of them were from a single target, and there were no records in the index from the other two targets. In my experiment (sample size 1), the PackageDescription target was included, but the PackageManagerDocs and PackagePlugin catalogs weren't included.

Steps To Reproduce

git clone https://github.com/swiftlang/swift-package-manager
cd swift-package-manager
export DOCC_JSON_PRETTYPRINT=YES
swift package --disable-sandbox generate-documentation \
  --enable-experimental-combined-documentation \
  --enable-mentioned-in \
  --enable-experimental-external-link-support \
  --target PackageManagerDocs \
  --target PackageDescription \
  --target PackagePlugin \
  --emit-digest \
  --hosting-base-path swiftpmtest --transform-for-static-hosting \
  -o staticdocs

Swift-DocC Version Information

6.2

Swift Compiler Version Information

swift-driver version: 1.127.14.1 Apple Swift version 6.2 (swiftlang-6.2.3.3.20 clang-1700.6.3.2)
Target: arm64-apple-macosx26.0

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions