...specifically in the case where the most recent commit didn't run
the Java checks, and therefore we don't have a previous run of
check_code_size to compare to. (We could go back until we find one,
but that seems like overkill.)
- Fix the format matcher after 0147989
- When merging into a branch other than main, compare against that branch
- When running on GitHub on the main branch itself, compare against HEAD^
- Adjust the plot view to have flexible columns
Previously the Android libraries were stripped as part of the build,
but what we're really trying to track is the download size and
size-on-disk for Android users, so the stripped library is more
relevant (and lets us continue to compare against previous releases).
The main benefit of this is not our *own* type-checking; it's that
mypy will error out if you try to use a too-new Python API. And in
fact, we were already relying on Python 3.9 and didn't realize.
check_code_size.py works with JSON, so it still uses Any a fair bit.
Each of these updates is required for the following update, and the
final one allows us to use 'record'.
The target SDK version is set to 33, matching the Android app.
Use the GitHub CLI utility, if present, to fetch the size from the logs of the
"Build and Test" workflow run for the merge-base of the current branch and
upstream main. This represents the true "delta" attributable to the current
branch, as opposed to the integral of changes since the last release.