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
Théo Gaillard
5bf3909d46
feature: add proxy config
2020-03-04 22:00:48 +08:00
Aaron Weiss
bbc99b1d20
Merge pull request #199 from belak/fix-suffix-handling
...
Handle suffix as a plain param
2020-01-31 13:21:10 -05:00
Kaleb Elwert
f785d15b4c
Handle suffix as a plain param
2020-01-30 16:25:52 -08:00
Kaleb Elwert
14e1f845f3
Add features to travis.yml
2020-01-29 15:09:10 -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
Christoph Herzog
2aff64b645
Refactor IrcClientFuture and ConnectionFuture to own the config
...
This commit refactors IrcClientFuture and ConnectionFuture to own
the config instead of holding a reference.
This is required for reconnecting in dynamic contexts.
This is not possible with the old API, because Config is a reference,
requiring the value to live for the whole execution of the reactor.
2018-10-04 02:52:53 +02: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
Ratys
5275e79971
Rewrote conn
module to utilize impl Future
in return position:
...
Changed all involved structs to take `Config`s, rather than borrow them - this is due to `'static` requirement that is bound to crop up somewhere, when spawning a future into a reactor/runtime.
Updated examples and docs to reflect the change.
2018-06-08 22:00:49 +03:00
Aaron Weiss
0235c71268
Added current nickname tracking ( fixes #125 ). [BREAKING]
2018-05-05 15:12:29 +02:00
Aaron Weiss
59f426ac8d
Cleaned up tests and documentation after the big renaming.
2018-01-28 03:19:05 +01: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
7a1d1d2af6
Added a reactor version of the simple example.
2018-01-28 01:50:39 +01:00
Aaron Weiss
e4d441695e
Merge branch 'use-failure' into develop
2018-01-28 01:16:38 +01:00
Aaron Weiss
90276b63b0
Removed multiserver examples, and renamed nothreads to multiserver.
2018-01-28 01:03:49 +01:00
Aaron Weiss
5266e4098d
Refactored the whole crate to use failure.
2018-01-28 00:52:11 +01:00
Aaron Weiss
495e419de0
Added some documentation to the reactor examples.
2018-01-24 12:28:07 +01:00
Aaron Weiss
233eab6969
Added an example that reconnects on error using IrcReactor.
2018-01-09 15:02:57 -05:00
Aaron Weiss
47bbf38497
Removed nothreads_alt because that behavior is the default with reactors.
2018-01-08 23:50:41 -05:00
Aaron Weiss
bbc6b0244d
Added an experimental reactor API to hide tokio.
2018-01-08 21:52:56 -05:00
Aaron Weiss
6821fd4853
Added another nothreads example where we join on all servers.
2018-01-02 11:49:38 -05: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
Aaron Weiss
e220e90c58
Added the ability to create a new IrcServer without spawning a thread.
2017-08-15 14:00:32 -04:00
Aaron Weiss
c749146d5c
Added support for toml and yaml configurations.
2017-06-29 00:31:27 -07:00
Aaron Weiss
971745ca33
Added a multiserver example supporting an arbitrary number of servers.
2017-06-25 05:36:58 -04:00
Aaron Weiss
c93d817735
Added a multiserver example.
2017-06-25 05:24:10 -04:00
Aaron Weiss
b4893377a6
Updated examples because of new for_each_incoming return type.
2017-06-25 05:00:44 -04:00
Aaron Weiss
536521e349
Fixed bug with SSL domain verification.
2017-06-21 23:35:00 -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
7d3e923de8
Added a first real cut at async.
2017-06-21 13:18:22 -04:00
Aaron Weiss
36eeca7db6
Changed examples to point to #irc-crate
.
2017-06-19 14:46:34 -04:00
Aaron Weiss
a4f1675394
Made the multithreaded example actually do something.
2017-06-19 14:08:43 -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
aefd2108c5
Removed autoreconnect example because it now happens automatically.
2016-01-23 11:00:27 -05: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
81b3e58d52
Replaced Command::from_message with a From<&Message> implementation.
2015-06-05 21:27:15 -04:00
Aaron Weiss
c26d297e62
Eliminated feature use for beta.
2015-04-04 23:06:13 -04:00