This removes the non-consensus critical protocol.h
and netaddress.h
headers from the kernel headers. With this patch, they are no longer required to include in order to use the libbitcoinkernel library. This also allows for the removal of the compat.h
header from the kernel headers.
As an added future benefit it also reduces the number of of kernel headers that include the platform specific bitcoin-config.h
.
For those interested, the currently required kernel headers can be inspected visually with the sourcetrail tool by looking at the required includes of bitcoin-chainstate.cpp
.
This is part of the libbitcoinkernel project, namely its stage 1 step 3: Decouple most non-consensus headers from libbitcoinkernel.