Setting pool idle timeout to a value smaller than solana-watchtower's
poll interval can fix following error:
[2022-08-25T04:03:22.811160892Z INFO solana_watchtower] Failure 1 of 3: solana-watchtower testnet: Error: rpc-error: error sending request for url (https://api.testnet.solana.com/): connection closed before message completed
It looks like this happens because either RPC servers or ISPs drop HTTP
connections without properly notifying the client in some cases.
Similar issue: https://github.com/hyperium/hyper/issues/2136.
* Add test to verify output when deserializing/reserializing empty fields
* Add test to verify serialization from UiTransactionStatusMeta constructors
* Add OptionSerializer
* Use OptionSerializer for inner_instructions
* Use OptionSerializer for loaded_addresses
* Remove Default variant, use into instead
* Add as_ref implementation
* Use OptionSerializer for log_messages and rewards
* Use OptionSerializer for token_balances
* Use OptionSerializer for return_data
* Use OptionSerializer for compute_units_consumed