Commit graph

47 commits

Author SHA1 Message Date
Aaron Weiss
5968edd355
migrate all the examples and tests to freenode 2020-07-23 13:41:01 -04:00
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
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
af72e57c5f
Cleaned up a bunch of the examples. 2018-01-28 02:00:04 +01:00
Aaron Weiss
b4893377a6
Updated examples because of new for_each_incoming return type. 2017-06-25 05:00:44 -04:00
Aaron Weiss
8c9a1aca2c
Added for_each_incoming helper to Server. 2017-06-21 22:07:53 -04:00
Aaron Weiss
d57bb11994
Changed examples to be formatted more readibly. 2017-06-21 21:54:48 -04:00
Aaron Weiss
3369ef5ff2
Cleaned up code and added documentation. 2017-06-21 17:15:30 -04: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
b6ce088693 Updated examples after Command redesign. 2016-01-30 05:00:16 -05:00
Aaron Weiss
05186cf670 Removed trailing whitespace. 2015-06-22 12:03:57 -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
99f0789d35 Updated tests and examples for Rust master. 2015-02-13 10:58:40 -05:00
Aaron Weiss
2f79f180d8 Updated for Rust master. 2015-02-03 13:11:33 -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
b44ff8b196 Fixed build. 2014-12-23 12:15:41 -05:00
Aaron Weiss
1b51c69a23 Added CTCP feature with automatic responses to a set of CTCP commands
as per #7.
2014-12-22 16:35:56 -05:00
Aaron Weiss
3173accaa8 Added set_keepalive to Connection and the ability to reconnect to a
server.
2014-12-20 17:36:48 -05:00
Aaron Weiss
70031aa8d8 ServerIterator now iterates over IoResults. 2014-12-20 16:50:54 -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
4dfa5942a0 Added alternate nicknames to the simple example. 2014-12-06 19:11:13 -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
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
f5654abd6e Added a multithreaded example, and added comments to examples. 2014-11-29 03:19:14 -05:00
Aaron Weiss
a903dd9571 Added SSL support, but it's broken because of the duplicate SslStream creations. 2014-11-08 17:35:19 -05:00
Aaron Weiss
039049ab32 Added documentation for Wrapper and utility functions. 2014-11-03 04:19:12 -05:00
Aaron Weiss
b3e0e2ea08 Refactored utilities into a Server Wrapper that provides added functionality. 2014-11-03 04:15:03 -05:00
Aaron Weiss
5ac62acfd9 Added a simple response to the simple example. 2014-11-03 03:50:28 -05:00
Aaron Weiss
c7a0d4b83d Implemented join on connection. 2014-11-03 03:11:14 -05:00
Aaron Weiss
16f29f179a Added basic message handling, and fixed a bug in message parsing. 2014-11-03 02:54:40 -05:00
Aaron Weiss
4479c59e79 Fixed bug with Message parsing causing suffixes to include colon prefix. 2014-11-03 02:42:06 -05:00
Aaron Weiss
c8dc582fd1 Fixed bug with message parsing, and updated example. 2014-11-03 02:30:58 -05:00
Aaron Weiss
c20038951e Added simple example, and changed how IrcServer creation works. 2014-11-03 02:11:51 -05:00
Aaron Weiss
b2006d044d Laid out basic structure of rewritten library. 2014-11-02 16:25:57 -05:00
Aaron Weiss
91aa5bcc6f Refactored for iterators. 2014-11-02 16:16:58 -05:00