Commit graph

32 commits

Author SHA1 Message Date
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
53fb890a7e
Merged develop onto 0.14 (which was tricky, and this might have introduced bugs?). 2018-09-17 17:50:53 -04:00
Aaron Weiss
87b84fdeb9
Changed naming scheme from server to client (resolves #46). 2018-01-28 02:16:50 +01:00
Aaron Weiss
c363dc7837
Migrated real IrcServer API to be async based on experiment. 2017-06-21 16:53:28 -04:00
Aaron Weiss
36eeca7db6
Changed examples to point to #irc-crate. 2017-06-19 14:46:34 -04:00
Aaron Weiss
f0f0b95038
Ran rustfmt on all the code. 2017-06-19 13:59:26 -04:00
Aaron Weiss
388628d62a
Applied a bunch of clippy lints. 2017-06-19 13:46:01 -04:00
Aaron Weiss
863946ecb8 Implemented Display for Message. 2016-03-17 21:39:58 -04:00
Aaron Weiss
e4495940fc Made a whole lot of linting changes to improve code.
Small API changes:
  1. Message::into_string -> Message:to_string
  2. NetStream::UnsecuredTcpStream -> NetStream::Unsecured
  3. NetStream::SslTcpStream -> NetStream::Ssl
2016-03-17 21:35:35 -04:00
Aaron Weiss
ea0577bbaf Implemented Clone for IrcServer and updated multithreaded examples
accordingly.
2016-01-03 05:39:44 -05:00
Aaron Weiss
11a54445b7 Removed deprecated code. 2015-11-22 16:26:43 -05:00
Aaron Weiss
05186cf670 Removed trailing whitespace. 2015-06-22 12:03:57 -04:00
Aaron Weiss
23fa48d41e Updated for Rust master. 2015-04-03 00:56:42 -04:00
Aaron Weiss
b7912ee592 Fixed warnings on Rust master. 2015-03-21 23:08:41 -04:00
Aaron Weiss
8cf7471af2 Updated examples with ServerExt change. 2015-02-24 10:14:44 -05:00
Aaron Weiss
73f6685114 Updated examples to use prelude. 2015-02-22 21:22:33 -05:00
Aaron Weiss
76e7aea8e7 Cleaned up code, and more warning fixes. 2015-02-21 10:18:53 -05:00
Aaron Weiss
2f79f180d8 Updated for Rust master. 2015-02-03 13:11:33 -05:00
Aaron Weiss
147af6c437 std::io -> std::old_io 2015-01-28 12:19:02 -05:00
Aaron Weiss
c9a767c8ff Refactored library in preparation for server work. 2015-01-13 02:39:59 -05:00
Aaron Weiss
d0b54f8119 Updated for Rust master. 2015-01-09 17:38:46 -05:00
Aaron Weiss
b3e3b8becd Updated examples with removal of deprecated code. 2014-12-23 13:00:07 -05:00
Aaron Weiss
70031aa8d8 ServerIterator now iterates over IoResults. 2014-12-20 16:50:54 -05:00
Aaron Weiss
5a77845691 Updated examples for removal of proc. 2014-12-16 03:22:05 -05:00
Aaron Weiss
eb091a0b58 Simplified tweeter example code. 2014-12-11 00:06:12 -05:00
Aaron Weiss
bdb04d693b Updated examples for if let addition, and a failure test with a message. 2014-12-08 15:00:10 -05:00
Aaron Weiss
3387f5d587 Updated configuration to be a lot more fluid, and easier to work with. 2014-12-04 21:04:22 -05:00
Aaron Weiss
4d85b7932c Updated tweeter example because reading and writing now use separate
mutexes.
2014-12-01 19:27:30 -05:00
Aaron Weiss
b4cda39134 Made encoding into a feature as encode. 2014-11-30 03:30:10 -05:00
Aaron Weiss
098f9dbbff Added support for non-unicode encodings. 2014-11-30 01:29:38 -05:00
Aaron Weiss
2e0d8e55d8 Added an example showing how to send messages that are not responses to
a user despite the fact that send and recv both block.
2014-11-29 05:26:55 -05:00