Experimental IRC log happs-2007-07-26

Available formats: content-negotiated html turtle (see SIOC for the vocabulary)

Back to channel and daily index: content-negotiated html turtle

These logs are provided as an experiment in indexing discussions using IRCHub.py, Irc2RDF.hs, and SIOC.

11:24:15<fxr>how to test happs applications? are there any practical examples out there?
11:27:39<kaol>test how?
11:29:36<fxr>kaol: well dunno how
11:56:43<fxr>hey, how can I use basicFileServe? I'm getting "not in scope" with the examples given in wiki
11:59:30<mightybyte>Add 'hs (Prefix ["s"]) GET $ basicFileServe "static"' to the list of arguments to stdHTTP
12:00:24<mightybyte>Then create a file static/index.html
12:01:16<mightybyte>And you can view it by pointing your browser to s/index.html
12:10:30<Saizan>basicFileServe has been removed in the darcs version
12:13:01<fxr>Saizan: are there any alternatives?
13:03:42<Saizan>there's fileServe
13:05:32<Saizan>basicFileServe staticPath path rq = respond $ fileServe staticPath path rq
13:09:16<mightybyte>Saizan: Are there any tutorials on how to do sessions?
13:09:52<Saizan>mmh
13:10:16<mightybyte>mmh???
13:10:55<Saizan>i was trying to remember :(
13:11:27<Saizan>there's something under examples/ but it's for SessionKeeperEx
13:11:37<mightybyte>So far I haven't been able to find anything that I can figure out.
13:11:51<mightybyte>What's the difference between SessionKeeper and SessionKeeperEx?
13:12:15<Saizan>*Ex let you register event handlers for when a session expires
13:12:47<mightybyte>Ahhh
13:13:19<Saizan>basically you have a field in your state that works roughly like a Map SessionKey YourSessionType
13:13:57<Saizan>but where the entries have a timeout
13:15:06<Saizan>so you have to communicate this SessionKey with the client to know who is who
13:15:27<Saizan>you usually do this with cookies if possible
13:15:48<mightybyte>Ok, I thought maybe it would take care of the cookies for you.
13:16:07<Saizan>heh, i hoped that too
13:17:18<mightybyte>Does it take care of any other details like matching IP addresses to prevent session hijacking?
13:17:36<Saizan>no..
13:17:43<mightybyte>Too bad
13:17:59<mightybyte>I guess I could contribute something that does.
13:18:06<Saizan>it's just the raw functionality of a self-expiring map
13:18:17<mightybyte>...if I got the motivation to do it.
13:18:29<Saizan>yeah :)
13:18:36<mightybyte>Ok, that's what I wanted to know.
13:19:01<mightybyte>I'm pretty new to haskell in general...probably not equipped to tackle something like that yet.
13:19:44<mightybyte>I was wanting to do a website in HAppS as a way to force myself into some serious real-world haskell.
13:21:34<kaol>IMHO using sessions is a bad idea with any programming language
13:22:00<mightybyte>What should be used?
13:22:28<Saizan>i've a module to handle cookies+sessions in my app, so that handlers that have a session take a (Maybe SessionType) argument and respond a ToMessage m => (Maybe SessionType,m)
13:23:33<Saizan>so that if return Nothing the session is cancelled
13:23:49<mightybyte>That sounds more like what I thought SessionKeeper would do.
13:26:44<Saizan>http://zzodici.yi.org/s/GenSess.hs <-- you can see it here, it's quite raw and not very readable though, it's been a while from the last time that i've touched it
13:27:07<mightybyte>Ok, thanks. What website did you use it for?
13:28:33<Saizan>heh, look at that domain, it's just a silly bash.org localization, so security robustness it's not been tested
13:29:02<mightybyte>Ok
13:29:15<Saizan>*has
13:44:27<fxr>I just tried ',h (Prefix ["s"]) GET $ respIO $ fileServe "s"' and it works, thanks Saizan

Back to channel and daily index: content-negotiated html turtle