Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
This simply delegates to eprintln! for writing output. This ensures writes happen more synchronously and the flaky integration tests are fixed. While in theory these are blocking operations on the async executor, this is acceptable because: - We already use println!() without any problems. Arguably this is more of an issue since we also write data to stdout but it isn't because we don't do that at the same time. - We print a small number of messages, not large amounts of data. Any blocking from this will be small. - This acquires a sync mutex while writing, that's fine because it is acquired and released in the same chunk of async code and not held across await points. This is unlikely to block much as only main writes and only one write happens at a time. - When logging via tracing is enabled this will also end up logging on here and will compete for the lock. This is slightly higher contention but doesn't really interfere with the logging here.
- Loading branch information