Commit graph

520 commits

Author SHA1 Message Date
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
90d9f0568a Bumped version number to 0.10.1. 2016-02-21 12:39:59 -05:00
angelsl
46f9136c93 Write directly from threads (through a mutex) instead of using a writing thread
The writing thread now becomes a simple pinging thread. The pinging
thread will exit when the weak reference to the ServerState can no
longer be upgraded i.e. when the ServerState has been dropped i.e. when
the IrcServer has been dropped.

This fixes #43 as well.

This is the first in a series of changes that will reduce allocations by
the library.
2016-02-17 23:25:01 -05:00
Aaron Weiss
7d7e09fa8e Removed incomplete doc comment. 2016-02-12 11:30:55 -05:00
Aaron Weiss
a8dc3c6502 Bumped version number to 0.10.0. 2016-02-12 11:23:18 -05:00
Aaron Weiss
e7b5d5e9d1 Made some formatting changes for readability. 2016-02-12 11:21:00 -05:00
Aaron Weiss
5be0b8c5b5 Removed caret in version number since it's the default. 2016-02-10 16:53:15 -05:00
Aaron Weiss
33123f4695 Fixed bug that caused user modes to be sent incorrectly when an
alternate nickname was in use.
2016-02-10 15:46:42 -05:00
Aaron Weiss
597badda0c Updated README to recommend the latest version for dependencies. 2016-02-10 15:41:54 -05:00
Aaron Weiss
6d5b534628 Fixed bug in MODE parsing. 2016-02-10 12:31:52 -05:00
Aaron Weiss
52027f7834 Fixed compilation of test cases and made API changes for testing where
necessary.
2016-02-10 12:00:25 -05:00
Aaron Weiss
75bcc42af5 Added written to Connection interface and eliminated code duplication in Connection implementations. 2016-02-10 00:32:00 -05:00
Aaron Weiss
3314c93c3e Implemented a major redesign to simplify API and eliminate
overly-complicated generics usage.
2016-02-10 00:15:08 -05:00
Aaron Weiss
bacf6d019e Merge pull request #42 from angelsl/robustness
Add nickname reclamation with NickServ GHOST.
2016-02-09 14:42:45 -05:00
angelsl
5f20e715fd Add NickServ GHOST functionality 2016-02-09 18:41:52 +08:00
Aaron Weiss
2cf0b26dca Cleaned up new comments on source_nickname. 2016-02-07 11:33:45 -05:00
Aaron Weiss
b0ecd397ad Merge pull request #41 from angelsl/robustness
User idents and hostnames actually can have dots
2016-02-07 11:29:21 -05:00
angelsl
022b4af86c Fix Message::source_nickname 2016-02-07 16:01:05 +08:00
angelsl
54cb41a616 User idents and hostnames actually can have dots 2016-02-07 16:00:35 +08:00
Aaron Weiss
20338f881f Renamed getter functions to not include get as is common practice. 2016-01-30 12:00:25 -05:00
Aaron Weiss
b6ce088693 Updated examples after Command redesign. 2016-01-30 05:00:16 -05:00
Aaron Weiss
2eb0e63d59 Performed the great Command redesign (fixes #16). 2016-01-30 04:56:32 -05:00
Aaron Weiss
81a807f0a1 Rewrote From<Message> implementation in preparation of Command/Message
redesign.
2016-01-29 15:39:22 -05:00
Aaron Weiss
667a3dade3 Added RAW command. 2016-01-29 13:15:38 -05:00
Aaron Weiss
aefd2108c5 Removed autoreconnect example because it now happens automatically. 2016-01-23 11:00:27 -05:00
Aaron Weiss
e7e83c3ab8 Added regression test for nochanlists. 2016-01-19 15:27:58 -05:00
Aaron Weiss
bf9bd3ecb8 Fixed bug in nochanlists from handle_message rewrite. 2016-01-19 15:23:09 -05:00
Aaron Weiss
5df4d26c07 Updated README.md with more information about the library and
configuration.
2016-01-18 01:32:15 -05:00
Aaron Weiss
81518bf244 Rewrote internal message handling in more modern Rust. 2016-01-18 00:18:28 -05:00
Aaron Weiss
8a2ce65e71 Added extract_writer function for use in unit tests. 2016-01-16 12:51:44 -05:00
Aaron Weiss
f597aaa9f3 Updated Cargo.toml. 2016-01-16 11:50:14 -05:00
Aaron Weiss
8113c47842 Fixed test execution. 2016-01-16 11:47:25 -05:00
Aaron Weiss
506fa3d78f Made time a required library dependency. 2016-01-16 11:18:11 -05:00
Aaron Weiss
f34a6ba5cf Fixed implementation of auto-reconnection by updating message sending to
use the write queue.
2016-01-16 11:15:10 -05:00
Aaron Weiss
3dc15449a8 Implemented ping-sending on inactivity. 2016-01-15 12:37:16 -05:00
Aaron Weiss
9ac625c091 Implemented internal auto-reconnection for servers. 2016-01-13 17:02:39 -05:00
Aaron Weiss
33004abc12 Fixed a bug with the drop behavior for IrcServer. 2016-01-03 08:32:45 -05:00
Aaron Weiss
6ece3e25fe Moved to using an internal sending channel for messages. 2016-01-03 07:51:10 -05:00
Aaron Weiss
ea0577bbaf Implemented Clone for IrcServer and updated multithreaded examples
accordingly.
2016-01-03 05:39:44 -05:00
Aaron Weiss
a6cd761e51 Moved Arc abstraction internally for IrcServer. 2016-01-03 05:35:00 -05:00
Aaron Weiss
8104894c28 Updated get_source_nickname behavior to match spec (fixes #40). 2015-11-26 13:11:02 -05:00
Aaron Weiss
7eebe9ad25 Bumped version number to 0.9.2. 2015-11-22 16:41:39 -05:00
Aaron Weiss
11a54445b7 Removed deprecated code. 2015-11-22 16:26:43 -05:00
Aaron Weiss
6e160f561f Fixed typo in value for ERR_KEYNOPERMISSION. 2015-11-04 12:17:23 -05:00
Aaron Weiss
db6e3edfe9 Bumped version number to 0.9.1. 2015-10-19 14:26:37 -04:00
Aaron Weiss
40479b4e37 Merge pull request #37 from retep998/bunny
Fix #36
2015-10-14 22:10:23 -04:00
Peter Atashian
ca7233fe1b Fix #36
Signed-off-by: Peter Atashian <retep998@gmail.com>
2015-10-14 21:56:13 -04:00
Aaron Weiss
c372403ed5 Made iterator types well-formed to respond to RFC 1214 changes. 2015-10-09 13:21:11 -04:00
Aaron Weiss
b866785c89 Added a function to save a Config. 2015-09-16 12:21:58 -04:00