freenode/#shirakumo - IRC Chatlog
Search
8:31:33
Shinmera
DATA is arbitrary data to store along the request for request-bound data from the application.
8:33:21
hjudt
well, i am fine with providing the raw stream. i only have reflected whether it could be done without any interface changes.
8:34:05
hjudt
hm... about the raw stream. does any server provide anything else than unsigned-8 byte vectors and do we need to care?
8:37:20
hjudt
ok, if you have decided which new fields to add, tell me, i start implementing in i-woo.
8:37:58
hjudt
don't know about wookie, i believe i haven't gotten it to work but have only tried with radiance
8:39:44
hjudt
iirc it only exposes fetch POST data as raw stream, which woo (or i-woo) for some strange reason does support somehow but hunchentoot (or i-hunchentoot) does not.
8:43:38
Shinmera
Hunchentoot has been around a long time and is maintained by people who are wary of breaking the API
8:44:12
Shinmera
https://github.com/Shirakumo/radiance/commit/2440af0305774f10bfb3362fdb0bb347e369381d
8:44:13
Colleen
github.com/Shirakumo/radian... Website (HTML), Title: Add body-stream to the request to allow accessing raw stream data on … · Shirakumo/radiance@2440af0 ·
8:44:40
no-defun-allowed
Yeah, it was written in 1972, and I don't think anyone would feel up to the task of changing something made by Frank Zappa.
8:46:41
Shinmera
Now we're good. https://github.com/Shirakumo/radiance/commit/191aaed70fc5e8e082f26a6780e035fcf0635863
8:46:42
Colleen
github.com/Shirakumo/radian... Website (HTML), Title: Add body-stream to the request to allow accessing raw stream data on … · Shirakumo/radiance@191aaed ·
8:53:26
hjudt
ok. i will see when i find some time working on the tests, then after that start working on raw-stream.
8:56:43
hjudt
i will probably use dexador to test requests if that is ok for you. perhaps i could use radiance:request, but i am not very comfortable using something inside radiance to test radiance...
8:58:11
Shinmera
Though I'm actually not sure how you'd do the tests, since the requests come in by a different mechanism than from where you're running the request.
8:59:19
hjudt
i can use drakma but it has problems with some application content or application servers, which need workarounds. dexador usually works fine with these, i use it in my applications and have replaced drakma with it. if i use drakma, maybe tests become more verbose. but i can try if you want and switch to dex if it gets more complicated.
9:00:45
Shinmera
As for how to do the tests; you'd probably have to set up a default handler that pushes all requests to a queue that you then inspect after the request is done to actually test conformance.
9:18:15
no-defun-allowed
there's dexador -> fast-io -> static-vectors -> cffi but unlike woo it doesn't seem to have any particuarly unstable c dependencies?
9:25:56
no-defun-allowed
ACTION remembers she has said she would fix the common lisp buildpack for heroku but hasn't for several months now
9:32:52
no-defun-allowed
the best buildpack i can find runs sbcl 1.2.13 and ccl 1.7 so it can't run websocket-driver
9:50:58
no-defun-allowed
ngl the heroku interface is horrid, leaks internal state to the user and generally is a PITA, requiring you to make useless git pushes to update settings and stuff
10:28:41
hjudt
no-defun-allowed: that would explain problems i sometimes have with woo when shutting down and starting up the server. maybe something still sticks around for some time, lingering and causing trouble later...
10:53:53
no-defun-allowed
imo there are not enough safety checks around spinning up/down libev in woo, but i am more likely to make idiot moves in a repl than most lispers
10:58:24
hjudt
Shinmera: If I want to switch server backends between tests, is it enough to shutdown radiance, change environment, then startup radiance again?
11:01:21
Shinmera
Other interfaces, particularly ones that expose macros, won't work so nice with that.
11:44:53
Shinmera
The idea of the test suite is that you load an environment you want to test, run the test suite, and then exit
11:50:38
hjudt
are the tests written in a way they can be reproduced every time (database cleanup etc.)?