Based on the discussion with @hboutemy in #24366 we have to reach the state when two consecutive builds of the same codebase will have binary equal results.
Simple test - the following command should produce the same artifact size and the same checksum when you execute it twice:
To have unique identification of the build in the released artifact.
To have repeatable build, so the same codebase is transformed to the same binary.
We can't have both and current state of things is that the repeatability is preferred. As famous czech nonexisting hero Jara Cimrman told, "You can disapprove, but that's all you can do against it." ;-)
Based on the discussion with @hboutemy in #24366 we have to reach the state when two consecutive builds of the same codebase will have binary equal results.
Simple test - the following command should produce the same artifact size and the same checksum when you execute it twice:
What does it mean
project.build.outputTimestamp
property including it's definitions (it is inherited too with a nonsense value of 2020-...)git.build.time
property including it's definitionsRelates also to #24284 and #24316
See also
Additional context
There are two conflicting requirements:
We can't have both and current state of things is that the repeatability is preferred. As famous czech nonexisting hero Jara Cimrman told, "You can disapprove, but that's all you can do against it." ;-)