Omit showing stdlib as dependency in pkldoc (#503)

The stdlib is an implicit dependency for every package.
Showing this as a dependency is unnecessary noise.
This commit is contained in:
Daniel Chao
2024-05-28 13:42:57 -07:00
committed by GitHub
parent 47f161a211
commit 5e4ccfd4e8
6 changed files with 11 additions and 8 deletions

View File

@@ -518,10 +518,12 @@ internal abstract class PageGenerator<out S>(
}
}
if (docPackage.docPackageInfo.dependencies.isNotEmpty()) {
// Every package implicitly depends on `pkl`; omit to reduce noise.
val dependencies = docPackage.docPackageInfo.dependencies.filter { it.name != "pkl" }
if (dependencies.isNotEmpty()) {
result[MemberInfoKey("Dependencies")] = {
var first = true
for (dep in docPackage.docPackageInfo.dependencies) {
for (dep in dependencies) {
if (first) first = false else +", "
a {
href =

View File

@@ -45,6 +45,9 @@ internal class RuntimeDataGenerator(
for (pkg in packages) {
packageVersions.add(pkg.ref.pkg, pkg.ref.version)
for (dependency in pkg.dependencies) {
if (dependency.isStdlib()) continue
// Every package implicitly depends on the stdlib. Showing this dependency adds unwanted
// noise.
packageUsages.add(dependency.ref, pkg.ref)
}
for (module in pkg.modules) {
@@ -240,3 +243,5 @@ internal class RuntimeDataGenerator(
put(key, newValue)
}
}
private fun DependencyData.isStdlib(): Boolean = ref.pkg == "pkl"