adityamparikh opened a new pull request, #246:
URL: https://github.com/apache/solr-mcp/pull/246
> **Depends on #245.** This branch is stacked on it, so the first commit in
the diff is #245's; review only the last commit, `refactor(build): build the
IP-clearance row with the kotlinx.html DSL`. The extra commit drops out once
#245 merges.
## Summary
Builds the Incubator IP-clearance row (`generateIpClearanceLicenseReport`)
with the type-safe `kotlinx.html` DSL instead of `XMLStreamWriter` plus
whitespace string literals.
Before, the element structure was buried in literals like `"\n
"`, so the shape of the emitted XML could only be recovered by replaying
the whitespace. Now the code mirrors the XML:
```kotlin
appendHTML(prettyPrint = true).tr {
td { +date.get() }
td {
+CHECKLIST_WORDING
code { +"META-INF/LICENSE" }
+" of the executable JAR):"
ul { items.forEach { (name, licenses) -> li { +"$name —
${licenses.joinToString(" / ") { it.label }}" } } }
}
}
```
- The checklist wording and the row indent move into named constants
(`CHECKLIST_WORDING`, `ROW_INDENT`); one `prependIndent` replaces the
hand-written indentation.
- The library escapes text itself.
- New `buildSrc`-only dependency:
`org.jetbrains.kotlinx:kotlinx-html-jvm:0.12.0` (Apache-2.0). It is not on the
shipped classpath, so it does not appear in the binary `LICENSE`.
## Output
The date, the checklist wording and all 157 dependency entries are
unchanged. Only insignificant whitespace in the row differs: the checklist
sentence is one line instead of hand-wrapped, and the `<li>` indent is 18
spaces instead of 20.
## Testing
- `./gradlew build` (JDK 25, clean tree, including `rat`) — 421 tests, 0
failed, 0 skipped.
- The generated `ip-clearance-licenses.xml` is well-formed; parsed, it
matches the previous output (date, prose, 157 items). `LICENSE` is
byte-identical.
@epugh, please review.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]