Serialization improvements (minimal initial commits) #17850

pull sipa wants to merge 2 commits into bitcoin:master from sipa:202001_noncastserial changing 3 files +30 −18
  1. sipa commented at 7:14 pm on January 2, 2020: member

    This is a minimal subset of #10785 that still does something.

    It adds a new saner serialization macro, which can be used in parallel with the old one. Then the addrdb code is converted to use this new macro.

    I’ll add follow-up PRs that add more functionality + converting of other modules as things get merged.

  2. Introduce new serialization macros without casts
    This new approach uses a static method which takes the object as
    a argument. This has the advantage that its constness can be a
    template parameter, allowing a single implementation that sees the
    object as const for serialization and non-const for deserialization,
    without casts.
    
    More boilerplate is included in the new macro as well.
    ca33451535
  3. Convert addrdb/addrman to new serialization 9250a087d2
  4. fanquake added the label Utils/log/libs on Jan 2, 2020
  5. fanquake added this to the "Blockers" column in a project

  6. fanquake commented at 0:07 am on January 3, 2020: member
    Concept ACK - thanks for splitting this up. I’ve swapped out #10785 for this PR in the high-prio project.
  7. jamesob commented at 7:02 pm on January 3, 2020: member

    ACK 9250a087d2f450f37342010aea0a5d583eea508b (jamesob/ackr/17850.1.sipa.serialization_improvemen)

    Code looks good. I pulled locally, built, ran make -j 4 check.

     0-----BEGIN PGP SIGNED MESSAGE-----
     1Hash: SHA512
     2
     3ACK 9250a087d2f450f37342010aea0a5d583eea508b ([`jamesob/ackr/17850.1.sipa.serialization_improvemen`](https://github.com/jamesob/bitcoin/tree/ackr/17850.1.sipa.serialization_improvemen))
     4
     5Code looks good. I pulled locally, built, ran `make -j 4 check`.
     6-----BEGIN PGP SIGNATURE-----
     7
     8iQIzBAEBCgAdFiEEpm2+LMqPsWj2rAwWyrywS1A+5mgFAl4Pj6MACgkQyrywS1A+
     95mjoVQ/8CY+CSMIvURlNx614LFfcBlsh5/pM9hyohAraovCiKXbhfJ53X0nuJmKn
    10AVYmXr72ArKlbtgvYfBD3x5+MpamQ1/WfDGpEHFaKwmjiowFi6B7On8eC3yHGwFf
    11jE0QjAvqekudhb4UOAJuKapKezW83jK+wwp86yWIm5b0vPEH1wgOg+Mlym/LICms
    12BAwV14OHrgMvzfJeXUg7w9QsjrMUWCmc/mdrYqehNbu9JDCXRPdplxH+H4Dr4kLm
    13Wem7Ts/buwns6rsM2JG1Sh5QmipNkXPLGW7klwqvJ1IojD1ruQ/DJgV4FeUyjRc5
    144hSEJLn7HEyY+u7e2Sx/zEQOAHcmso+lpUxKT5toSq+YTml1WgHeUMtFi+r8fPMp
    15MpbscgzgNMB7v/D6X7pu1hZo1MlO/wAf/E/x57nLB7gidMLD4wsayrzYmkMf0Fg7
    16JM4zZRcWiA3kJV0EQSm0SwvvQbsuTKOasSNse3wspQwafpGjKoa0eCa0aZ1md5AJ
    170cZiwQoSibM893e+b1hpXYC0/aF7oG+Nt1Dda2tX99SeMImtx8F09gu0NK2dQcM0
    18bguCw1XiMCpHLfTjpozuVdoWOVU9r9JhBTjLR5D/jhh5/MOeA73lLCIPG22/GVsg
    19rf3kikt9Q0TSWiVicuhGav+E/4/lWsE0DRwNiQCmgSGcaQ82Qlw=
    20=m98m
    21-----END PGP SIGNATURE-----
    
  8. jamesob commented at 7:14 pm on January 3, 2020: member
    BTW, #10785 is an anagram of this, its replacement, #17850. Threw me for a loop there for a second.
  9. promag commented at 7:21 pm on January 3, 2020: member

    @jamesob and you think it’s a coincidence?

    Concept ACK.

  10. sipa commented at 7:22 pm on January 3, 2020: member

    BTW, #10785 is an anagram of this, its replacement, #17850.

    Same digits, but serialized differently.

  11. kallewoof commented at 7:05 am on January 4, 2020: member
    ACK 9250a087d2f450f37342010aea0a5d583eea508b
  12. practicalswift commented at 10:39 am on January 4, 2020: contributor
    Concept ACK
  13. laanwj commented at 12:27 pm on January 4, 2020: member
    code review ACK 9250a087d2f450f37342010aea0a5d583eea508b
  14. laanwj referenced this in commit 593f5e239f on Jan 4, 2020
  15. laanwj merged this on Jan 4, 2020
  16. laanwj closed this on Jan 4, 2020

  17. fanquake removed this from the "Blockers" column in a project

  18. sidhujag referenced this in commit ebf4e95996 on Jan 4, 2020
  19. sidhujag referenced this in commit 60bda9d425 on Nov 10, 2020
  20. jasonbcox referenced this in commit d3cceadfa4 on Nov 13, 2020
  21. jasonbcox referenced this in commit e59a7e1253 on Nov 13, 2020
  22. kittywhiskers referenced this in commit 70cfdfedbc on Mar 10, 2021
  23. kittywhiskers referenced this in commit 7396f35ae2 on Mar 16, 2021
  24. PastaPastaPasta referenced this in commit e483a689e3 on Apr 18, 2021
  25. kittywhiskers referenced this in commit 2e57c40b10 on May 20, 2021
  26. furszy referenced this in commit 5c93f159bc on Jul 5, 2021
  27. random-zebra referenced this in commit b4751e10ce on Aug 11, 2021
  28. DrahtBot locked this on Feb 15, 2022

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-11-17 09:12 UTC

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