summaryrefslogtreecommitdiff
path: root/python/python.go
diff options
context:
space:
mode:
author Chris Parsons <cparsons@google.com> 2023-01-26 17:30:44 -0500
committer Christopher Parsons <cparsons@google.com> 2023-01-30 21:26:57 +0000
commit7b3289b471aae82585d3b9311d13c83ab516aaed (patch)
tree8b402bac548088798494aac9364184029f928ef0 /python/python.go
parent82a9e8fe03936b35bce3a55a5e99870f0f8c0446 (diff)
Fix nondeterminism in bp2build
This fixes two main sources of nondeterminism: 1. Fix a bug in the ConfigurationAxis comparator (which caused ConfigurationAxis sorting to be nondeterministic) 2. Process C++ dependencies using the sorted ConfigurationAxis order. In theory, the order in which dependencies are processed shouldn't matter (as they should end up in different select stanzas). However, in the case of InApex stubs, this is not the case; we now ensure that lists are concatenated in a predictable order. Added bonus: Some cleanup with SortConfigurationAxes which makes use of go generics (this made it easier to debug this issue). Will follow-up with regression tests. Test: Manually verified that build.ninja checksum and BUILD.bazel checksums do not change after running `m nothing` 6 times in AOSP (with comment-only Android.bp changes in between each run) Change-Id: I81168e45bdbbcd61ea95ff665cf6c4bc180aa4e0
Diffstat (limited to 'python/python.go')
0 files changed, 0 insertions, 0 deletions