guix: remove bzip2 from deps #29895

pull fanquake wants to merge 11 commits into bitcoin:master from fanquake:remove_xz_guix changing 11 files +20 −21
  1. fanquake commented at 5:21 pm on April 16, 2024: member

    This moves packages in depends that use .tar.bzip2 to .tar.gz (which is what we use for our own release tarballs). Doing so means we can drop bzip2 from our Guix release env. You can observe that Guix building master without it would currently fail:

     0diff --git a/contrib/guix/manifest.scm b/contrib/guix/manifest.scm
     1index 8f13c642d3..96818c7748 100644
     2--- a/contrib/guix/manifest.scm
     3+++ b/contrib/guix/manifest.scm
     4@@ -499,7 +499,6 @@ inspecting signatures in Mach-O binaries.")
     5         moreutils
     6         ;; Compression and archiving
     7         tar
     8-        bzip2
     9         gzip
    10         xz
    11         ;; Build tools
    

    FORCE_DIRTY_WORKTREE=1 ./contrib/guix/guix-build

    0Extracting boost...
    1/sources/boost_1_81_0.tar.bz2: OK
    2tar (child): lbzip2: Cannot exec: No such file or directory
    3tar (child): Error is not recoverable: exiting now
    4tar: Child returned status 2
    5tar: Error is not recoverable: exiting now
    

    Guix Build:

     08f6959d01ae972bae1340dfaf18753607152eca9844e6d8c4fa128314a4ba762  guix-build-b8e084b9781e/output/aarch64-linux-gnu/SHA256SUMS.part
     13c9c1cc000e3e6b7c2853c9d530c9afa1c880a43e7ab4c766aaa88283ff0908c  guix-build-b8e084b9781e/output/aarch64-linux-gnu/bitcoin-b8e084b9781e-aarch64-linux-gnu-debug.tar.gz
     2f45fbece697b450538aded11f568e92b2af391e873e113c3038d022eff41688f  guix-build-b8e084b9781e/output/aarch64-linux-gnu/bitcoin-b8e084b9781e-aarch64-linux-gnu.tar.gz
     308295d770c11b2057206f98aaf4123007c7475bd942840d048f5f9d5efec1ce1  guix-build-b8e084b9781e/output/arm-linux-gnueabihf/SHA256SUMS.part
     40a0db6967168019b8b890ec4d31b3a87a88c4956b703938ec4447d514cfc231e  guix-build-b8e084b9781e/output/arm-linux-gnueabihf/bitcoin-b8e084b9781e-arm-linux-gnueabihf-debug.tar.gz
     53d1538e8bf4edfb66a4875198dfa90b79dcfe44eb9c4e76e47d73a18175c838a  guix-build-b8e084b9781e/output/arm-linux-gnueabihf/bitcoin-b8e084b9781e-arm-linux-gnueabihf.tar.gz
     687e7805155dbed3bd64763f199ea63843ed8c4eb37873753c7e60b0b42565eaf  guix-build-b8e084b9781e/output/arm64-apple-darwin/SHA256SUMS.part
     7fa33590296aeae2b738b023a4cbf2de4a4e06662a5f7d407c251a8af714bd587  guix-build-b8e084b9781e/output/arm64-apple-darwin/bitcoin-b8e084b9781e-arm64-apple-darwin-unsigned.tar.gz
     832b8fbbdf240f9f08e44c7bb0a8ea2e8a40537e59ec2231cf6635edc6592f226  guix-build-b8e084b9781e/output/arm64-apple-darwin/bitcoin-b8e084b9781e-arm64-apple-darwin-unsigned.zip
     9d176f3b7c8140c8dfde03bd87fd5abd4a89b497ba11fa6849bc92a33cb621a07  guix-build-b8e084b9781e/output/arm64-apple-darwin/bitcoin-b8e084b9781e-arm64-apple-darwin.tar.gz
    105273b17087e3565ab042a7989cfba71cf1629331d0267137d7eccabee1a06a13  guix-build-b8e084b9781e/output/dist-archive/bitcoin-b8e084b9781e.tar.gz
    11b84a9180181994a6a17a1c2a4701f8ba5a82654233d5a8afcf596d28dd8b3924  guix-build-b8e084b9781e/output/powerpc64-linux-gnu/SHA256SUMS.part
    12fd3396f6b64425a31b5a3565ab4d8a1c1668c291349a0f9e9b8904dad04ee24c  guix-build-b8e084b9781e/output/powerpc64-linux-gnu/bitcoin-b8e084b9781e-powerpc64-linux-gnu-debug.tar.gz
    1373cb4bd2a67934c93ea8e3f3bc04b8917627ec09d75c151bb01977bba97522c8  guix-build-b8e084b9781e/output/powerpc64-linux-gnu/bitcoin-b8e084b9781e-powerpc64-linux-gnu.tar.gz
    1415938e7f0f71303b96566d60e3b255816e7fd70d628601e592e1d6840eb8d2a1  guix-build-b8e084b9781e/output/riscv64-linux-gnu/SHA256SUMS.part
    15408b4973865e3a77be833438f71181fd88acd0490127257b3667309e8421030e  guix-build-b8e084b9781e/output/riscv64-linux-gnu/bitcoin-b8e084b9781e-riscv64-linux-gnu-debug.tar.gz
    16a5c02144ffb79cfa0179ff0d7ac0f81192ef1d3b1acfad334adf486e50b776bb  guix-build-b8e084b9781e/output/riscv64-linux-gnu/bitcoin-b8e084b9781e-riscv64-linux-gnu.tar.gz
    17de904843d8bb8601a2d763701ebb929e61b447e01040267a12149a2902489535  guix-build-b8e084b9781e/output/x86_64-apple-darwin/SHA256SUMS.part
    18414cb3cf3fa10b9a3cda47e98858222f01fdd164371dd54761642e6793099849  guix-build-b8e084b9781e/output/x86_64-apple-darwin/bitcoin-b8e084b9781e-x86_64-apple-darwin-unsigned.tar.gz
    196ce43d7f007bf17eca16d3ee48190318e09aacd82c5396f9565e6345ec6bd2fa  guix-build-b8e084b9781e/output/x86_64-apple-darwin/bitcoin-b8e084b9781e-x86_64-apple-darwin-unsigned.zip
    2024eba9c0dd1312a68c2b2a800cc915595e343c0ead982b6cbe025abe7a7bff19  guix-build-b8e084b9781e/output/x86_64-apple-darwin/bitcoin-b8e084b9781e-x86_64-apple-darwin.tar.gz
    212869a01ce847298950a91b3b8514bc8fa39cc274a8e9cd4f68f4f038c1bb3040  guix-build-b8e084b9781e/output/x86_64-linux-gnu/SHA256SUMS.part
    223f63e1d3b19b640d3994074b344d595bcd6fca420a1a8669b63b4ad22978308b  guix-build-b8e084b9781e/output/x86_64-linux-gnu/bitcoin-b8e084b9781e-x86_64-linux-gnu-debug.tar.gz
    23ccc3eb8eb56c1596981e81c8c95cadee3db799ed69b0cd1fb1e102da10adacfb  guix-build-b8e084b9781e/output/x86_64-linux-gnu/bitcoin-b8e084b9781e-x86_64-linux-gnu.tar.gz
    241ff6dab6dcde9ddbbe407cca02119c4a5d545034c91389a1c647020902b7b40e  guix-build-b8e084b9781e/output/x86_64-w64-mingw32/SHA256SUMS.part
    25a91c2247fd9d886e3f3ada551c0a4f9f7ffc4874e07ea5ab9de14f2743b9b8c7  guix-build-b8e084b9781e/output/x86_64-w64-mingw32/bitcoin-b8e084b9781e-win64-debug.zip
    266fbc8d5df571fd535990370009bdfcbb37b9697c33446a08eadb1279ba6e4649  guix-build-b8e084b9781e/output/x86_64-w64-mingw32/bitcoin-b8e084b9781e-win64-setup-unsigned.exe
    2738f7a981fd2999c1e138860e1ddc183dafec090d867e37f5ab5c2d48ad4ef9ee  guix-build-b8e084b9781e/output/x86_64-w64-mingw32/bitcoin-b8e084b9781e-win64-unsigned.tar.gz
    2888aca0a40a64a289617aad060a9ccf8c78bc6a201470720d8caf48d793d5207f  guix-build-b8e084b9781e/output/x86_64-w64-mingw32/bitcoin-b8e084b9781e-win64.zip
    
  2. DrahtBot commented at 5:21 pm on April 16, 2024: contributor

    The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

    Code Coverage

    For detailed information about the code coverage, see the test coverage report.

    Reviews

    See the guideline for information on the review process.

    Type Reviewers
    ACK laanwj
    Concept ACK hebasto, Sjors

    If your review is incorrectly listed, please react with 👎 to this comment and the bot will ignore it on the next update.

    Conflicts

    Reviewers, this pull request conflicts with the following ones:

    • #29959 ([PoC] qt, depends: Add wayland support without build-time nor fixed run-time deps by laanwj)
    • #29923 (depends: Remove Qt build-time dependencies by laanwj)

    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.

  3. laanwj added the label Build system on Apr 16, 2024
  4. DrahtBot added the label CI failed on Apr 16, 2024
  5. laanwj commented at 5:10 am on April 17, 2024: member

    i’m divided on this conceptually, i think with the reputation it has now, another successful attack on xz specifically is unlikely (not more likely than any other library, at least). And i’m not sure we need to go out of our way to avoid it given how much of the FOSS ecosystem relies on it.

    One thing i am slightly afraid of is that in avoiding xz we become more sloppy about dependencies in other ways. Not saying that that is happening here.

    But e.g. not being able to use the primary source for a project anymore like for xkbcommon is something to think about. But maybe the github-generated tarball is actually better? Unlike the bootstrapped one it shouldn’t. contain any extra files besides what’s in the git repo, and we can check this. After all, the xz backdoor used one of these autotools “bonus” files to hide in.

    Putting that aside, there is a real question of if we want to consolidate all packages in depends to one type of tarball

    That said i do like the elegance of having only one kind of input format for the guix builder. It’s generally good to drop dependencies from guix.

  6. maflcko commented at 6:06 am on April 17, 2024: member

    Not sure about the benefit to make extra steps to use a possibly non-standard, possibly easier to backdoor, mirrored tarball.

    An alternative might be to completely skip the step of tarballs and instead use the upstream source control directly?

  7. fanquake commented at 7:50 am on April 17, 2024: member

    And i’m not sure we need to go out of our way to avoid it given how much of the FOSS ecosystem relies on it.

    Yea. xz was a way to start a discussion. It could turn out that we actually consolidate everything to xz, and actually drop bzip2 for example.

    possibly easier to backdoor, mirrored tarball. and instead use the upstream source control directly

    If anything, I’d hope it’s less easy to backdoor, because it’s just the source code, and not all the bootstrapped garbage we don’t need. This is using the tag from the official upstream source control.

  8. laanwj commented at 7:50 am on April 17, 2024: member

    Not sure about the benefit to make extra steps to use a possibly non-standard, possibly easier to backdoor, mirrored tarball.

    Mind that we do verify the sha256 hash. The person introducing it has to check, once, that the tarball matches exactly what is in git (and reviewers can verify this). i don’t think there’s a win in making every guix buid do a git (or other scm) checkout of all dependencies. That leaves more of a network attack surface too and makes it harder to mirror safely, not easier.

  9. maflcko commented at 8:29 am on April 17, 2024: member

    The person introducing it has to check, once, that the tarball matches exactly what is in git (and reviewers can verify this)

    I think it could make sense to specifically mention this on bumps, going forward. Maybe there could even be a new target written in depends to do the check?

  10. maflcko commented at 8:34 am on April 17, 2024: member

    If anything, I’d hope it’s less easy to backdoor, because it’s just the source code, and not all the bootstrapped garbage we don’t need. This is using the tag from the official upstream source control.

    Oh, I see. So the motivation is to drop, possibly non-determinisically created, “bootstrapped garbage”? Concept +1 on this.

    I am just not sure on dropping $compression_tool. I presume guix internally requires it to bootstrap to a point where Bitcoin Core can be compiled, as many guix sources are compressed tarballs. So effectively $compression_tool will still be compiled and exist in guix, just not be present during the compilation of Bitcoin Core.

  11. fanquake force-pushed on Apr 18, 2024
  12. fanquake commented at 10:19 am on April 18, 2024: member

    Something a bit more concrete. We could consolidate all packages in depends to .tar.gz (which is also what we use for releases), and drop bzip2 and eventually xz.

    Oh, I see. So the motivation is to drop, possibly non-determinisically created, “bootstrapped garbage”? Concept +1 on this.

    We could also start doing this now, but it may be somewhat cleaner to do when packages are using CMake, so if reviewers want we could look at switching any of the open CMake depends PRs to downloading unbootstrapped tarballs.

  13. hebasto commented at 10:32 am on April 18, 2024: member
    Concept ACK on consolidating archive formats.
  14. maflcko commented at 10:36 am on April 18, 2024: member

    Something a bit more concrete. We could consolidate all packages in depends to .tar.gz (which is also what we use for releases), and drop bzip2 and eventually xz.

    Again, I don’t understand what the goal is. I doubt that removing xz as a dependency is doable. For example, gcc seems to be fetched as a xz archive (https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/gcc.scm#n803)? Even if it wasn’t, I am sure there are other guix packages that depend on xz.

  15. fanquake commented at 10:39 am on April 18, 2024: member

    Again, I don’t understand what the goal is.

    The goal is to remove things we don’t use. If we don’t need bzip2, then I don’t see a reason to keep it in our build release environment. Same reasoning for any other dep. Also, just because some thing may be used somewhere in the Guix bootstrap chain, isn’t a reason to explicitly include it in our release env unnecessarily.

  16. fanquake renamed this:
    [RFC] guix: remove xz from deps
    [RFC] guix: remove bzip2 (and almost xz) from deps
    on Apr 18, 2024
  17. Sjors commented at 9:34 am on April 19, 2024: member

    Something a bit more concrete. We could consolidate all packages in depends to .tar.gz (which is also what we use for releases), and drop bzip2 and eventually xz.

    Concept ACK. From your commits I gather that most stuff we use, provides .tar.gz at the same location we got the source from before.

    Only QT and libxkbcommon require fetching code from Github. If they ever move away from Github to a platform that doesn’t automatically generate .tar.gz files (Gitlab does), we could either revert or use git clone instead.

    An alternative might be to completely skip the step of tarballs and instead use the upstream source control directly?

    This could make sense, but the fact that this source is almost always Github makes me a bit uneasy. OTOH that’s why we have $(package)_sha256_hash and FALLBACK_DOWNLOAD_PATH. Anyway, for now this PR mostly maintains the download pages we used before.

    So the motivation is to drop, possibly non-determinisically created, “bootstrapped garbage”?

    Also concept ACK.

  18. bitcoin deleted a comment on Apr 19, 2024
  19. depends: switch boost to .tar.gz 58c423def3
  20. depends: switch fontconfig to .tar.gz e7a8dd5931
  21. depends: switch libXau to .tar.gz 5996c30384
  22. depends: switch xproto to .tar.gz b845029d46
  23. depends: switch libxcb_util to .tar.gz 8e9190c6aa
  24. depends: switch libxcb_util_image to .tar.gz 00a6896346
  25. depends: switch libxcb_util_keysyms to .tar.gz ce28cb31b4
  26. depends: switch libxcb_util_render to .tar.gz fad989852d
  27. depends: switch libxcb_util_wm to .tar.gz 4a9b71b900
  28. depends: switch qrencode to .tar.gz bd6e1d6718
  29. guix: remove no-longer-used bzip2 b8e084b978
  30. fanquake renamed this:
    [RFC] guix: remove bzip2 (and almost xz) from deps
    guix: remove bzip2 from deps
    on Apr 19, 2024
  31. fanquake force-pushed on Apr 19, 2024
  32. maflcko commented at 2:54 pm on April 19, 2024: member
    The current set of the changes look fine. However, to actually review all 10 changed packages, it would be nice to have a script that prints whether the tarball has any differences from the upstream source control it claims to come from.
  33. fanquake commented at 3:16 pm on April 19, 2024: member

    Changed to drop the xz changes, and just switch tar.bzip2 tarballs to using tar.gz (same as release tarballs), so we can drop bzip2 as a Guix dep.

    it would be nice to have a script that prints whether the tarball has any differences from the upstream source control it claims to come from.

    Sure, we can have a script. Note that the current tarballs will already differ in that sense.

  34. DrahtBot removed the label CI failed on Apr 19, 2024
  35. fanquake marked this as ready for review on Apr 20, 2024
  36. laanwj commented at 8:42 am on April 26, 2024: member

    The current set of the changes look fine. However, to actually review all 10 changed packages, it would be nice to have a script that prints whether the tarball has any differences from the upstream source control it claims to come from.

    i expect the gz and bz2 are the same tar data just compressed with a different compressor. Going to check, though.

    This, along with seeing if the guix binary output is the same (apart from version markers) before and after this PR.

  37. laanwj commented at 9:49 am on April 26, 2024: member

    Always some surprises…

     0#!/usr/bin/env python3
     1from os import path
     2import os
     3from subprocess import run
     4import bz2
     5import gzip
     6
     7GIT='git'
     8TMPDIR='tmp_checkout'
     9BRANCH='remove_xz_guix'
    10BASE_COMMIT='c05c214f2e9cfd6070a3c7680bfa09358fd9d97a'
    11
    12def compare_streams(f, g, bsize=1024*1024):
    13    while True:
    14        b1 = f.read(bsize)
    15        b2 = g.read(bsize)
    16        if b1 != b2:
    17            return False
    18        if len(b1) == 0 and len(b2) == 0: # Both at EOF
    19            break
    20    return True
    21
    22run([GIT, 'clone', '--depth', '20', '--single-branch', '-b', BRANCH, 'https://github.com/fanquake/bitcoin.git', TMPDIR], check=True)
    23
    24os.chdir(path.join(TMPDIR, 'depends'))
    25
    26# download and checksum packages from PR
    27run([GIT, 'checkout', BRANCH], check=True)
    28run(['make', 'download'], check=True)
    29
    30# download and checksum packages from base commit
    31run([GIT, 'checkout', BASE_COMMIT], check=True)
    32run(['make', 'download'], check=True)
    33
    34# check compressed data
    35SOURCES=[
    36    'boost_1_81_0.tar',
    37    'qrencode-4.1.1.tar',
    38    'libXau-1.0.9.tar',
    39    'xproto-7.0.31.tar',
    40    'fontconfig-2.12.6.tar',
    41    'xcb-util-0.4.0.tar',
    42    'xcb-util-renderutil-0.3.9.tar',
    43    'xcb-util-keysyms-0.4.0.tar',
    44    'xcb-util-image-0.4.0.tar',
    45    'xcb-util-wm-0.4.1.tar'
    46]
    47fail = False
    48for source in SOURCES:
    49    print(f'Checking {source}')
    50    with bz2.open(path.join('sources', source) + '.bz2', 'rb') as f, \
    51         gzip.open(path.join('sources', source) + '.gz', 'rb') as g:
    52        if not compare_streams(f, g):
    53            print(f'Mismatch for {source}')
    54            fail = True
    55
    56if not fail:
    57    print('Passed checks')
    58else:
    59    print('There were failures')
    

    Output:

     0Checking boost_1_81_0.tar
     1Checking qrencode-4.1.1.tar
     2Mismatch for qrencode-4.1.1.tar
     3Checking libXau-1.0.9.tar
     4Checking xproto-7.0.31.tar
     5Checking fontconfig-2.12.6.tar
     6Checking xcb-util-0.4.0.tar
     7Checking xcb-util-renderutil-0.3.9.tar
     8Checking xcb-util-keysyms-0.4.0.tar
     9Checking xcb-util-image-0.4.0.tar
    10Checking xcb-util-wm-0.4.1.tar
    11There were failures
    

    Will check the qrencode one…

  38. Sjors commented at 10:01 am on April 26, 2024: member

    @laanwj did you mean '-b', BRANCH instead of '-b', branch?

    I also get a difference on qrencode when running this on macOS 13.6.6 with Python 3.12.1.

  39. laanwj commented at 10:03 am on April 26, 2024: member

    Contents are the same, there is a slight difference in the metadata:

     0--- qrencode-4.1.1.tar_gz.hex   2024-04-26 11:58:29.335356741 +0200
     1+++ qrencode-4.1.1.tar_bz2.hex  2024-04-26 11:58:16.387499575 +0200
     2@@ -4,7 +4,7 @@
     3 00000060  00 00 00 00 30 30 30 30  37 35 35 00 30 30 30 31  |....0000755.0001|
     4 00000070  37 35 30 00 30 30 30 31  37 35 30 00 30 30 30 30  |750.0001750.0000|
     5 00000080  30 30 30 30 30 30 30 00  31 33 37 33 34 33 30 33  |0000000.13734303|
     6-00000090  36 36 36 00 30 31 30 33  33 31 00 20 35 00 00 00  |666.010331. 5...|
     7+00000090  36 36 34 00 30 31 30 33  32 37 00 20 35 00 00 00  |664.010327. 5...|
     8 000000a0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
     9 *
    10 00000140  00 00 00 00 00 00 00 00  00 30 30 30 30 30 30 30  |.........0000000|
    11@@ -18,7 +18,7 @@
    12 00000260  00 00 00 00 30 30 30 30  37 35 35 00 30 30 30 31  |....0000755.0001|
    13 00000270  37 35 30 00 30 30 30 31  37 35 30 00 30 30 30 30  |750.0001750.0000|
    14 00000280  30 30 30 30 30 30 30 00  31 33 37 33 34 33 30 33  |0000000.13734303|
    15-00000290  36 36 36 00 30 31 31 34  31 31 00 20 35 00 00 00  |666.011411. 5...|
    16+00000290  36 36 34 00 30 31 31 34  30 37 00 20 35 00 00 00  |664.011407. 5...|
    17 000002a0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    18 *
    19 00000340  00 00 00 00 00 00 00 00  00 30 30 30 30 30 30 30  |.........0000000|
    20@@ -14956,7 +14956,7 @@
    21 0003c860  00 00 00 00 30 30 30 30  37 35 35 00 30 30 30 31  |....0000755.0001|
    22 0003c870  37 35 30 00 30 30 30 31  37 35 30 00 30 30 30 30  |750.0001750.0000|
    23 0003c880  30 30 30 30 30 30 30 00  31 33 37 33 34 33 30 33  |0000000.13734303|
    24-0003c890  36 36 36 00 30 31 31 31  32 35 00 20 35 00 00 00  |666.011125. 5...|
    25+0003c890  36 36 34 00 30 31 31 31  32 33 00 20 35 00 00 00  |664.011123. 5...|
    26 0003c8a0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    27 *
    28 0003c940  00 00 00 00 00 00 00 00  00 30 30 30 30 30 30 30  |.........0000000|
    29@@ -78254,7 +78254,7 @@
    30 00136060  00 00 00 00 30 30 30 30  37 35 35 00 30 30 30 31  |....0000755.0001|
    31 00136070  37 35 30 00 30 30 30 31  37 35 30 00 30 30 30 30  |750.0001750.0000|
    32 00136080  30 30 30 30 30 30 30 00  31 33 37 33 34 33 30 33  |0000000.13734303|
    33-00136090  36 36 36 00 30 31 31 34  37 33 00 20 35 00 00 00  |666.011473. 5...|
    34+00136090  36 36 34 00 30 31 31 34  37 31 00 20 35 00 00 00  |664.011471. 5...|
    35 001360a0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    36 *
    37 00136140  00 00 00 00 00 00 00 00  00 30 30 30 30 30 30 30  |.........0000000|
    

    A two-second difference in the times for four of the directories!

     0--- la  2024-04-26 12:01:39.429259873 +0200
     1+++ lb  2024-04-26 12:01:44.405204988 +0200
     2@@ -1,5 +1,5 @@
     3-drwxr-xr-x 1000/1000         0 2020-09-28 08:50:28 qrencode-4.1.1/
     4-drwxr-xr-x 1000/1000         0 2020-09-28 08:50:28 qrencode-4.1.1/cmake/
     5+drwxr-xr-x 1000/1000         0 2020-09-28 08:50:30 qrencode-4.1.1/
     6+drwxr-xr-x 1000/1000         0 2020-09-28 08:50:30 qrencode-4.1.1/cmake/
     7 -rw-r--r-- 1000/1000      4004 2020-08-29 11:02:17 qrencode-4.1.1/cmake/FindIconv.cmake
     8 -rw-r--r-- 1000/1000      3901 2020-09-28 08:47:44 qrencode-4.1.1/rsecc.c
     9 -rw-r--r-- 1000/1000     20478 2020-09-28 08:47:44 qrencode-4.1.1/qrencode.c
    10@@ -14,7 +14,7 @@
    11 -rw-r--r-- 1000/1000     44031 2020-09-28 08:50:07 qrencode-4.1.1/Makefile.in
    12 -rw-r--r-- 1000/1000      7628 2020-09-28 03:16:22 qrencode-4.1.1/CMakeLists.txt
    13 -rw-r--r-- 1000/1000     54476 2020-08-29 11:02:17 qrencode-4.1.1/acinclude.m4
    14-drwxr-xr-x 1000/1000         0 2020-09-28 08:50:28 qrencode-4.1.1/use/
    15+drwxr-xr-x 1000/1000         0 2020-09-28 08:50:30 qrencode-4.1.1/use/
    16 -rwxr-xr-x 1000/1000     13997 2015-05-05 10:30:10 qrencode-4.1.1/use/install-sh
    17 -rw-r--r-- 1000/1000    324404 2016-05-17 17:15:27 qrencode-4.1.1/use/ltmain.sh
    18 -rwxr-xr-x 1000/1000      7333 2015-05-05 10:30:10 qrencode-4.1.1/use/compile
    19@@ -29,7 +29,7 @@
    20 -rw-r--r-- 1000/1000      2570 2020-09-28 03:20:17 qrencode-4.1.1/config.h.in
    21 -rw-r--r-- 1000/1000      4342 2020-09-28 08:47:44 qrencode-4.1.1/qrencode.1.in
    22 -rwxr-xr-x 1000/1000    503759 2020-09-28 03:20:03 qrencode-4.1.1/configure
    23-drwxr-xr-x 1000/1000         0 2020-09-28 08:50:28 qrencode-4.1.1/tests/
    24+drwxr-xr-x 1000/1000         0 2020-09-28 08:50:30 qrencode-4.1.1/tests/
    25 -rw-r--r-- 1000/1000     88787 2020-08-29 11:02:17 qrencode-4.1.1/tests/URI_testset.inc
    26 -rw-r--r-- 1000/1000     31523 2020-09-28 03:16:22 qrencode-4.1.1/tests/test_qrinput.c
    27 -rw-r--r-- 1000/1000      6277 2020-08-29 17:40:00 qrencode-4.1.1/tests/test_bitstream.c
    

    Well it’s weird but i guess we can let this slide, for this time 😄

    @laanwj did you mean ‘-b’, BRANCH instead of ‘-b’, branch?

    Fixed, thanks.

  40. laanwj approved
  41. laanwj commented at 11:21 am on April 26, 2024: member

    Compared the binaries. bitcoin-qt has three differences:

    • _Z17FormatFullVersionB5cxx11v
    • version string in .rodata section
    • checksum in .debug_info section

    This is fully expected (no weird changes from dropping bzip2 from the build env). ACK b8e084b9781eaa4d624a3c1d58b39c07005a0e13

  42. DrahtBot requested review from Sjors on Apr 26, 2024
  43. DrahtBot requested review from hebasto on Apr 26, 2024
  44. fanquake merged this on Apr 29, 2024
  45. fanquake closed this on Apr 29, 2024

  46. fanquake deleted the branch on Apr 29, 2024

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2024-06-29 07:13 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me