Fixed
Status Update
Comments
cm...@google.com <cm...@google.com> #2
We should just do this by default.
xa...@google.com <xa...@google.com> #3
Agreed.
The timestamp don't matter for Gradle consumers because Gradle will ignore them when doing up-to-date checks, but it's just better not to have them.
The timestamp don't matter for Gradle consumers because Gradle will ignore them when doing up-to-date checks, but it's just better not to have them.
au...@google.com <au...@google.com> #4
Is this going to make it to 3.1? If no, what workarounds could we do to our tasks to strip all these timestamps?
cm...@google.com <cm...@google.com> #5
Probably not. There's some done.
au...@google.com <au...@google.com> #6
Can you elaborate a bit more? What is done and what is still missing? Could we add steps on top of your tasks to strip it ourselves?
je...@google.com <je...@google.com> #7
Stephen, please reach out to cmw@ for context.
cm...@google.com <cm...@google.com> #8
For context, the AAR itself uses deterministic ordering and does not keep timestamps, the issue is the jars in it, where I believe the order of entries in them is not deterministic.
au...@google.com <au...@google.com> #9
That's not true from my observations. If I take an AAR of support-compat and look inside of it all the files inside the aar have timestamps (including the classes.jar), however classes.jar itself has not timestamps inside.
See attached screenshot and attached AAR.
See attached screenshot and attached AAR.
cm...@google.com <cm...@google.com> #10
Timestamps in the jars are 0, but the entry ordering is not necessarily
deterministic.
On Wed, 20 Dec 2017, 18:29 aurimas, <buganizer-system+aurimas@google.com>
wrote:
deterministic.
On Wed, 20 Dec 2017, 18:29 aurimas, <buganizer-system+aurimas@google.com>
wrote:
au...@google.com <au...@google.com> #11
Can this make it to 3.2?
au...@google.com <au...@google.com> #12
I would really like to make this a P1 so it makes it to 3.2. It would save us a lot of test runs when try to submit these binaries for internal google app consumption.
je...@google.com <je...@google.com> #13
Any update on this? (I’d be happy to take a crack at it if that could help)
xa...@google.com <xa...@google.com> #14
I agree we should fix this for 3.2. However, feel free to take a stab at it if you have bandwidth.
je...@google.com <je...@google.com>
je...@google.com <je...@google.com>
au...@google.com <au...@google.com> #15
Can you comment on #10? cmw@ mentioned that the jar ordering is not deterministic. Is that true?
je...@google.com <je...@google.com> #16
I didn't notice #10 to be a problem for Support Library anyway.
When I updated the dependency from Support Library to Android Gradle Plugin to be the latest version (3.2.0-dev) and ran two fresh builds in a row on my computer, I found that the .aar files were binary equal between the two builds.
I did find a few other files to be different, but I guess that none of the differing files were embedded in any .aar files
When I updated the dependency from Support Library to Android Gradle Plugin to be the latest version (3.2.0-dev) and ran two fresh builds in a row on my computer, I found that the .aar files were binary equal between the two builds.
I did find a few other files to be different, but I guess that none of the differing files were embedded in any .aar files
cm...@google.com <cm...@google.com> #17
The jar ordering is currently dependent on file system iteration ordering.
Description
It would be great if AGP included an option to drop all the timestamps from all the files inside the aar.