Bug 40485: Resolve Android reproducibility issues
Closes #40485 (closed)
As described in the issue, we resolve two issues in this MR. The first is related to code generation in the Nimbus FML (gradle) plugin. The gradle plugin's parser relies on rust's HashMap
data structure, but that structure doesn't provide a deterministic iterator. We replace it with BTreeMap
which does provide ordering.
The second issue is in glean_parser
where a build timestamp is included. However, to solve this we can simply set gleanBuildDate
. Ideally we'd use the result of MOZ_BUILD_DATE
, but the format is wrong and this doesn't seem important enough to manually parse each component of MOZ_BUILD_DATE
and format it correctly for gleanBuildDate
- therefore we just inject 0
.