This PR bumps many of the dependencies and updates much of the code to use rust 2018 idioms. This makes reading and reasoning about the code easier, especially in the areas of imports.
Previously, main.rs used the following 2015 syntax:
Now, the imports are more abbreviated and the function / macro calls throughout the codebase are more explicit as they are now required to be explicitly imported in each file or use module::macro!() syntax. main.rs cargo crate imports are now able to be abbreviated to:
use tokio_core;
use tokio_tls;
use slog_async;
use slog_term;
use url;
use lazy_static;
use clap;
use tasked_futures;
use native_tls;
This PR bumps many of the dependencies and updates much of the code to use rust 2018 idioms. This makes reading and reasoning about the code easier, especially in the areas of imports.
Previously, main.rs used the following 2015 syntax:
https://github.com/matrix-org/matrix-ircd/blob/624a5256602af7a88a7e69966e2e38523a970480/src/main.rs#L18-L49
and modules would use macros in the following way:
https://github.com/matrix-org/matrix-ircd/blob/624a5256602af7a88a7e69966e2e38523a970480/src/irc/protocol.rs#L281-L294
Now, the imports are more abbreviated and the function / macro calls throughout the codebase are more explicit as they are now required to be explicitly imported in each file or use
module::macro!()
syntax. main.rs cargo crate imports are now able to be abbreviated to: