* Fix WASM executor without instance reuse; cleanups and refactoring
* Align to review comments
* Move the functions for reading/writing memory to `util.rs`
* Only `#[ignore]` the test in debug builds
* More review comments and minor extra comments
* Add a block production benchmark
* Simplify the block production benchmark
* Cleanups; switch execution strategy to WASM
* Switch WASM execution to `Compiled`
* Reduce the setup cost of the benchmark
Creating all of those extrinsics takes up *a lot* of time, up to the point
where the majority of the time is actually spent *outside* of the code
which we want to benchmark here. So let's only do it once.
* Add a variant of the block production benchmark with proof recording
* sp-sandbox: convert executors into normal `mod`s instead of using `include!`
* sp-sandbox: run `cargo fmt` on `host_executor.rs`
* sp-sandbox: abstract away the executors behind traits
* sp_sandbox: always compile both executors when possible
* sc-executor: make sure all sandbox tests run on both sandbox executors
* sc-executor: fix brainfart: actually call into the sandbox through the trait
* sc-runtime-test: fix cargo fmt
* sc-runtime-test: deduplicate executor-specific sandbox test entrypoints
* sc-executor: test each sandbox executor in a separate test
* cargo fmt (Github's conflict resolving thingy broke indentation)
* Strip out control codes from the logged messages
* Also strip away C1 control codes
* Add extra comments
* Clear the buffer after flushing; rename `write` to `flush`
* Move control code stripping into its own function
* Also strip out control codes from panic messages
* Also strip out Unicode left-to-right/right-to-left control codes
* Update `tracing`-related dependencies
* Enable `parking_lot` feature in `tracing-subscriber`
* Add an asynchronous stderr logger
* Make clippy happy
* Add an integration test for the logger
* Refactor `test_logger_filters`'s subprocess machinery into a separate function
* Use a child process instead of hooking into stderr for the test
* Add a doc comment for `MakeStderrWriter`
* Move the initialization into the `MakeStderrWriter`'s constructor
* Add an extra test case to trigger the logger's emergency flush mechanism
* Use the buffer's mutex for asynchronous flushes
* Remove vestigial `nix` dependency from one of the previous commits