xamarin-macios/tools/apidiff
Rolf Bjarne Kvinge 1171587edc
[apidiff] Change to use dl.internalx.com with a GitHub PAT for API reference downloads. (#16548)
Update the download of API references to:

* Use `dl.internalx.com` links instead of `bosstoragemirror.blob.core.windows.net`
  links (the relative path stays the same).
* Require a GitHub PAT in order to download from dl.internalx.com. This PAT
  can either be provided through a file (recommended for local use) or through
  the environment.
* Document these changes.
2022-11-03 09:07:22 +01:00
..
.gitignore Improve the API diff (#15020) 2022-06-09 15:47:00 +02:00
Makefile [apidiff] Change to use dl.internalx.com with a GitHub PAT for API reference downloads. (#16548) 2022-11-03 09:07:22 +01:00
README.md [apidiff] Change to use dl.internalx.com with a GitHub PAT for API reference downloads. (#16548) 2022-11-03 09:07:22 +01:00
diff-bundles.sh [apidiff] Add q quick'n'dirty script to produce a diff between any two bundle.zip (#6050) 2019-05-15 12:46:38 -05:00
merger.cs Improve the API diff (#15020) 2022-06-09 15:47:00 +02:00
report-status.sh Improve the API diff (#15020) 2022-06-09 15:47:00 +02:00

README.md

New Releases

Inside Make.config update the APIDIFF_REFERENCES= line to point to the bundle.zip URL of the currently stable version. E.g.

The links from our CI will be from bosstoragemirror.blob.core.windows.net, but replace the domain name with dl.internalx.com, so the URL looks like this:

APIDIFF_REFERENCES=https://dl.internalx.com/wrench/jenkins/d15-9/2dc06c712629feeb179ed112a590d9922caac6e7/53/package/bundle.zip

New Revisions

On the bots each revision rebuilds every assemblies. Each of them will be compared to the downloaded stable version from APIDIFF_REFERENCES. Any changes (addition/removal) to the public API will be reported in HTML files.

This can be done manually with make. The .\diff\ directory will contain the diffs in HTML format.

The helper make merge target creates a single api-diff.html file (from all the diff\*.html files) that be used for the documentation web site.

GitHub token

It's required to provide a GitHub PAT, with scope read:user and read:org, in order to download the API reference files. The PAT can be created here.

This can be provided in two ways:

  1. Create a file named ~/.config/AUTH_TOKEN_GITHUB_COM, and add the PAT to this file (the file must contain only the PAT, and nothing else). This is the recommended way.
  2. Export the PAT as the AUTH_TOKEN_GITHUB_COM environment variable.