-
Notifications
You must be signed in to change notification settings - Fork 37.8k
build: Drop pointless sed commands #21708
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Strings that contain moc and rcc versions without timestamps cannot cause any non-determinism.
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers. ConflictsReviewers, this pull request conflicts with the following ones:
If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Concept ACK
GUIX hashes for f52fafc:
find guix-build-$(git rev-parse --short=12 HEAD)/output/ -type f -print0 | env LC_ALL=C sort -z | xargs -r0 sha256sum
7f6acec71761e06321e4745b413faebeaa48ee070e2ab1d4297dc30c1ab8f0c8 guix-build-f52fafc9351e/output/aarch64-linux-gnu/bitcoin-f52fafc9351e-aarch64-linux-gnu-debug.tar.gz
52b0e3317700370181c3b58af0deaf26c92a7e720b13771cd28606171b5563e4 guix-build-f52fafc9351e/output/aarch64-linux-gnu/bitcoin-f52fafc9351e-aarch64-linux-gnu.tar.gz
9ea3ff1098f818dc2b6636bceaaafec27f368efbddc51afccd03aedf83fdf9ed guix-build-f52fafc9351e/output/arm-linux-gnueabihf/bitcoin-f52fafc9351e-arm-linux-gnueabihf-debug.tar.gz
6b0d564a3874f52dbd4cbbad06c87387762d6ee53ee08b2ff545f5981f93682c guix-build-f52fafc9351e/output/arm-linux-gnueabihf/bitcoin-f52fafc9351e-arm-linux-gnueabihf.tar.gz
599e70f84e17495c013518dba871af6c3c56768e7dd9427c8f5cf70ddb379bbf guix-build-f52fafc9351e/output/dist-archive/bitcoin-f52fafc9351e.tar.gz
28bd8b3a5ec11f366e34a333573d13ac875aa2f69c4bfff4f28a5f2e7502d09d guix-build-f52fafc9351e/output/powerpc64-linux-gnu/bitcoin-f52fafc9351e-powerpc64-linux-gnu-debug.tar.gz
6f386d45866a5922cb03de260ba9a83f340e2a69ed26c5a7843c3e24b2636fd6 guix-build-f52fafc9351e/output/powerpc64-linux-gnu/bitcoin-f52fafc9351e-powerpc64-linux-gnu.tar.gz
5704f15c17b123398fe116542eba1d61698aac942e1dea57fbd7c7b4377f57a0 guix-build-f52fafc9351e/output/powerpc64le-linux-gnu/bitcoin-f52fafc9351e-powerpc64le-linux-gnu-debug.tar.gz
00f7e6b6f168f4960cabf05b58921e082e8f169f914790a34ee935a572653a0c guix-build-f52fafc9351e/output/powerpc64le-linux-gnu/bitcoin-f52fafc9351e-powerpc64le-linux-gnu.tar.gz
d0490c666d86762434b4beaa6d23c22e861148dc3d721b65b06d1d949e6a80aa guix-build-f52fafc9351e/output/riscv64-linux-gnu/bitcoin-f52fafc9351e-riscv64-linux-gnu-debug.tar.gz
c32d565f13b6d5b309a62aabbf394b191c0ef0210a8e7ad771899ad1a912202e guix-build-f52fafc9351e/output/riscv64-linux-gnu/bitcoin-f52fafc9351e-riscv64-linux-gnu.tar.gz
7383cfb44e0d1fed9ccadc69b86ea940943fb3c77cc1fbd842124d0b75485c1c guix-build-f52fafc9351e/output/x86_64-apple-darwin18/bitcoin-f52fafc9351e-osx-unsigned.dmg
aec844ac917afcc1bcea0b793296493951be3bfd3c0be1097c1898657c3d0723 guix-build-f52fafc9351e/output/x86_64-apple-darwin18/bitcoin-f52fafc9351e-osx-unsigned.tar.gz
eff71d97ea3728fb0e7a32f867d0a7d697e6c9d828635e23c562b3fa2f2baae7 guix-build-f52fafc9351e/output/x86_64-apple-darwin18/bitcoin-f52fafc9351e-osx64.tar.gz
ef77b4daf0030117548bae4e605f768b57602d5f921254c006e902da9db2ee6f guix-build-f52fafc9351e/output/x86_64-linux-gnu/bitcoin-f52fafc9351e-x86_64-linux-gnu-debug.tar.gz
1c462ce5b79fc3926715262fad270b4963267c84f94643da46817373b0af7791 guix-build-f52fafc9351e/output/x86_64-linux-gnu/bitcoin-f52fafc9351e-x86_64-linux-gnu.tar.gz
3fe5a98d2605bffb9f7691453d06c8f98141d8d8fdb0d7a82166bf01d32d3328 guix-build-f52fafc9351e/output/x86_64-w64-mingw32/bitcoin-f52fafc9351e-win-unsigned.tar.gz
e204c790965c5feaa7bbc5003a5644d03dd8c92c1c13a16cfac84c0e71960282 guix-build-f52fafc9351e/output/x86_64-w64-mingw32/bitcoin-f52fafc9351e-win64-debug.zip
5107d549210d42a792cee60ad89554a8c314807c3dddef0fcbfcc9c894174fef guix-build-f52fafc9351e/output/x86_64-w64-mingw32/bitcoin-f52fafc9351e-win64-setup-unsigned.exe
e9804baefaa51a9579e2506c3e13cc5f180d7660361aa272658402f44cb4af23 guix-build-f52fafc9351e/output/x86_64-w64-mingw32/bitcoin-f52fafc9351e-win64.zip
Guix builds:
Gitian builds:
|
Just because strings don't have timestamps, doesn't mean that they can't cause non-determinism. You might want to compare the build output between machines where the versions of these tools differs slightly, i.e 5.15.1 vs 5.15.2, in which case, having the version of the tool being used emitted into the file would cause non-determinism. That being said, given we've long since dropped the removal from the ui_*.h files, I think removing the |
Valid point but also, there are tons of other ways difference in tool versions can create non-determinism by building the output files in a slightly different way. So I don't think this is a big concern here. Usually we worry about non-determinism given everything else is the same. ACK f52fafc |
Since moving to Autotools build system (35b8af9, #2943, 2013-09), tag strings created by Qt specialized compilers (uic, moc, rcc) were being removed.
A bit later (70c71c5, #4241, 2014-06) this rule was dropped for the uic, and since then all of the generated
ui_*.h
files contain the following string:Such strings do not contain any timestamps, and cannot cause any non-determinism. The removing of them seems pointless.
Diffs for some files: