This log channel copies the log line and instantly returns to allow the
main codebase to not have an impact on logging speed.
Normal usage this isn't really relevant, but for cases where we want a
massive amount of logging for performance tuning the logging ends up
being a bottle-neck. Well, not logging but the output channel ends up
being a IO based bottleneck.
This log channel moves the IO based work to its own thread in order
to ensure that the main code works at full speed.
Try to be closer to what the SPV action does, after calmly starting we
agressively get more new peers every cycle to compensate for the problem
that our addresses database may have lots of outdated data.
The default behavior is unchanged, we remove some logging on things
like release builds, they simply don't get compiled in.
This feature is for people wanting to make a build with the libraries
including all levels of logging, while not compromising on something
like using a release build.
We parse a date/time for headers now with a specific
method that returns a QDateTime
We added a partial (incremental) download feature to avoid the need to
wait until completed. This also allows us to lower mem usage by spooling
to disk as data comes in.
We decided to avoid the stupid issue of looping infinitely on error by
forwarding past the end of the string on said error.
This now is reflected in the unit test too.
The server allows a wallet to store or restore wallet data, but it
requires the application to have access to the identity address of
the wallet.
So it should be made clear that we do NOT expect anyone to store
a wallet seed in here, as that would create a circular dependency.
Can't get the wallet-identity without the seed and thus without
the seed you can't find nor decrypt the actual file.
Boost now no longer wants header only sections to be added here,
presumably because we won't link to any library.
This fixes compilation against Boost 1.89