Except in the vector #2315 added, the P2WPKH inputs in BIP-375's test vectors cannot be spent by the keys they carry, and 42 of the 43 signatures in the vectors do not verify. Each of those P2WPKH programs is SHA256(pubkey)[:20] instead of HASH160(pubkey). The test runner does not check signatures, so it does not catch this.
This PR sets each P2WPKH program to HASH160(pubkey) and makes the signatures again: BIP 143 for P2WPKH and P2SH-P2WPKH, legacy for P2PKH. The vector for a non-SIGHASH_ALL signature had a SIGHASH_ALL signature; it now has a SIGHASH_NONE one, matching its PSBT_IN_SIGHASH_TYPE. The three signatures with no defined sighash, on the two segwit v2 inputs and in the vector without PSBT_OUT_SCRIPT, are removed; the one in the vector #2310 added has a commit of its own. The other 40 now verify, and the test runner's output is unchanged: 44 passed. #2317 makes the runner check the signatures. A separate commit sets Version 0.1.5 with its changelog entry; 0.1.6 is #2324's, and whichever of the two lands second rebases its version if needed.
Made with my usual tools: a computer, the Internet and an LLM. The mistakes, as usual, are all mine.