Commit graph

9 commits

Author SHA1 Message Date
Théo Gaillard
67e61e0606
feature: add TLS as feature and support multiples TLS backends (currently native-tls and rustls) 2020-03-31 09:48:57 +08:00
Théo Gaillard
5bf3909d46
feature: add proxy config 2020-03-04 22:00:48 +08:00
John-John Tedro
5189b69e7e Simplify Config structure
This simplifies some of the `Config` structure, in particular this
means:

Parameters which are meaningfully equivalent longer stored in
an `Option<T>`, an example of this is `channels`. If you don't
want to join any channels you simply leave it as empty instead.
In effect, `None` is behaviorally equivalent to `vec![]`.

We don't allocate when accessing certain configuration options.
For example, when accessing `channels` we used to allocate a
vector to handle the "empty case", we simply return the slice
corresponding to the list of channels instead.

We skip serializing empty or optional configuration fields.
From a deserialization perspective this is already something
that was mostly supported through use of `Option<T>` and
`#[serde(default)]`.
2019-12-27 17:12:46 +01:00
John-John Tedro
549e2e8722 Port to tokio 0.2 2019-12-18 21:06:04 +01:00
Aaron Weiss
0235c71268
Added current nickname tracking (fixes #125). [BREAKING] 2018-05-05 15:12:29 +02:00
Aaron Weiss
87b84fdeb9
Changed naming scheme from server to client (resolves #46). 2018-01-28 02:16:50 +01:00
Aaron Weiss
af72e57c5f
Cleaned up a bunch of the examples. 2018-01-28 02:00:04 +01:00
Aaron Weiss
a0d0d3e249
Cleaned up a bunch of code with clippy. 2018-01-01 22:25:25 -05:00
Aaron Weiss
e446ff5042
Added a repeater example demonstrating message throttling. 2018-01-01 21:20:36 -05:00