| name | api-coverage |
| description | Regenerate the Compose ⇄ Microsoft.AndroidX.Compose API coverage report via `scripts/api-comparison.cs`. Use for any Compose coverage question — "how much do we wrap", "what's missing in module X", "is Foo wrapped yet" — or after bumping a `Xamarin.AndroidX.Compose.*` version or adding a facade. |
API coverage
Regenerate docs/api-coverage.md — the Jetpack Compose ⇄ Microsoft.AndroidX.Compose API
coverage report. The report is produced by a single .NET 10 file-based
program at scripts/api-comparison.cs that downloads upstream AndroidX
-sources.jar files from Google Maven, parses public Kotlin
declarations, cross-references them with
src/Microsoft.AndroidX.Compose/PublicAPI.Unshipped.txt, and writes a markdown
report with a coverage % summary, per-module checkbox lists,
Microsoft.AndroidX.Compose-only types, and a "differences worth investigating"
appendix.
Workflow
1. Run the script
From the repo root (Windows / PowerShell):
dotnet run scripts/api-comparison.cs
That's it — no .csproj, no package install, no MSBuild target. The
script handles its own dependency download and caching. First run
takes ~30 seconds to fetch all 24 sources jars; subsequent runs are
"[cached] …" and finish in a couple of seconds.
Expected tail output:
Kotlin symbols scanned: 2282
C# public symbols: 1139
Report written: docs/api-coverage.md
2. Verify the diff
git diff --stat docs/api-coverage.md
The headline numbers live near the top of the file (lines ~9-16).
Quick sanity check:
Select-String -Path docs/api-coverage.md -Pattern '^- \*\*' | Select-Object -First 5
If the totals didn't move when you expected them to (e.g. you added a
new facade but Covered by Microsoft.AndroidX.Compose is unchanged), see
below.