Commit Graph

13 Commits (bc41947b18eac206bab4734d71f57ec64fec10e1)

Author SHA1 Message Date
Levi Pearson bc41947b18 Add TOPIC command and fix a couple of small bugs
Was using wrong numeric response for unknown channel errors.

Now we send JOIN response to user before topic, names, etc.

TOPIC now responds with RPL_NOTOPIC when there's no topic set.

Added some default cases to pattern matches, though they were not
absolutely necessary due to previous checks.

Added chanEchoAll action to IrcMonad to send the same message to all on
channel, including originating user.
2016-02-01 00:49:21 -07:00
Levi Pearson a4e724ebff Updates to build with stack and upstream changes
I figured this would be harder considering I haven't touched it in far
too long. Didn't take much work at all to get it built and running
again, and all tests (such as they are) pass.

+ stack didn't like the exe and test exe both using Main.hs
+ filled out other-modules in .cabal at stack's suggestion
+ EitherT is now ExceptT
+ pipes-concurrency deprecated `Unbounded` in favor of `unbounded`
+ tasty's wrapper of HSpec is now in IO
+ misc minor hLint changes
2016-01-31 20:14:35 -07:00
Levi Pearson f8b361dc5b Got rid of ! in Server.hs via better lensing 2014-06-29 23:50:26 -06:00
Levi Pearson fd141d09fb Misc refresh and cleanup, added some QuickCheck props 2014-06-12 03:33:09 -06:00
Levi Pearson 45eb76c8af Lots of haddock comments 2014-03-04 00:31:46 -07:00
Levi Pearson 91fcf5f78c Various refactorings and bugfixes 2014-03-03 01:29:28 -07:00
Levi Pearson 8f5e224a8f More refactoring of error handling and making better use of lenses 2014-03-01 17:11:16 -07:00
Levi Pearson b6299f59ba Break data manipulation functions into separate modules; add some haddocks 2014-02-12 01:31:48 -07:00
Levi Pearson 9278620b75 Re-arranged some code, added basic PING/PONG.
Also, channels now go away properly when they become empty.
2014-01-27 00:56:22 -07:00
Levi Pearson 723775633f Server is semi-functional, users can register and send direct messages to one another 2013-11-28 00:16:25 -07:00
Levi Pearson 6e2ceafe97 Significant refactoring and added parser tests 2013-11-22 00:57:40 -07:00
Levi Pearson ab6359dc86 Add .gitignore 2013-11-12 00:03:24 -07:00
Levi Pearson 41b457dd30 Initial checkin of pipes-based IRC server; work-in-progress
Currently there's a network server that parses commands received on a
connection and then renders them on all currently live connections.

There are still a couple of bugs in the parser. There's an initial stab
at types for managing the server's records for connections. users, and
channels, but they will probably evolve a bit.
2013-11-11 23:56:23 -07:00