feat(core): cache opportunities for ICU downloads, etc 🙀
in re #8495 : look at how to cache the meson data on the build agents across builds
https://build.palaso.org/buildConfiguration/Keyman_Common_KPAPI_TestPullRequests_macOS/431756?expandBuildDeploymentsSection=false&hideTestsFromDependencies=false&hideProblemsFromDependencies=false&expandBuildProblemsSection=true&expandBuildChangesSection=true had:
Downloading icu-for-uset source from https://github.com/unicode-org/icu/releases/download/release-73-1/icu4c-73_1-src.tgz
<urlopen error [Errno 60] Operation timed out>
[10:24:22 ] A fallback URL could be specified using source_fallback_url key in the wrap file
[10:24:22 ]
[10:24:22 ](https://build.palaso.org/buildConfiguration/Keyman_Common_KPAPI_TestPullRequests_macOS/4317 src/meson.build:59:0: ERROR: could not get https://github.com/unicode-org/icu/releases/download/release-73-1/icu4c-73_1-src.tgz is the internet available?
26M file, doesn't change from build to build. Caching would prevent this from being downloaded (twice??)
./developer/src/kmcmplib/subprojects/packagecache/icu4c-73_1-src.tgz
./core/subprojects/packagecache/icu4c-73_1-src.tgz
- meson 1.3.0 has a
MESON_PACKAGE_CACHE_DIRthat would be great because there could be a single persistent dir outside of the workspace that holds the cached files.
MESON_PACKAGE_CACHE_DIR=${HOME}/Downloads/packagecache works well globally with meson 1.3.0, allows sharing between keyman builds locally so I just set this in my local environment globally
can we simply set MESON_PACKAGE_CACHE_DIR to something persistent on the build servers?
I can look at adding this to our build agents.