Backports the following PRs to the 0.20 branch:
- #19777 - docs: Correct description for getblockstats’s txs field
- #19836 - rpc: Properly deserialize txs with witness before signing
- #20080 - Strip any trailing
/
in -datadir and -blocksdir paths - #20082 - [bugfix] random: fixes read buffer to use min rather than max
- #20141 - Avoid the use of abs64 in timedata
- #20146 - net: Send post-verack handshake messages at most once
- #20195 - build: fix mutex detection when building bdb on macOS
- #20298 - macOS deploy: use the new plistlib API
Will add additional commits as they become available.