1
1
mirror of https://github.com/urbit/shrub.git synced 2024-12-28 06:32:51 +03:00
Commit Graph

15 Commits

Author SHA1 Message Date
Fang
ddb61adbd1
lib: take json as argument to server json-response
No reason conversion to octs has to happen outside of this function.
2020-08-27 16:57:03 +02:00
Liam Fitzgerald
cf84670fc8 file-server: do not cache index.html
Removes caching for index.html so JS versioning can occur by referencing
JS bundles with different filenames
2020-08-03 09:53:49 +10:00
Isaac Visintainer
7b0a587c4a landscape: don't special case os1 app paths 2020-06-01 14:00:47 -04:00
Isaac Visintainer
ae58a62fad landscape: added static serving to landscape.hoon 2020-06-01 14:00:47 -04:00
Logan Allen
39500f2036 server: add basic cache-control for faster load speeds 2020-03-25 01:02:27 -04:00
Fang
ae8a57ca25
gall: (list path) in %fact and %kick
Instead of providing a (unit path), allows for (list path), which better
supports the "update to path and subpath cases".

For example, if /things wants updates about everything, and
/things/specific wants updates about the specific thing, they'll both
need to receive a %fact when the specific thing changes.
Previously, these would have been two separate moves. Now, gall handles
the multi-targeting for you.
2019-12-23 13:37:32 +01:00
Fang
25d390d6b1
server: properly defined request-line type 2019-12-11 20:49:49 +01:00
Philip Monk
6a406e6b29
gall: mall -> gall 2019-11-18 20:36:21 -08:00
Philip Monk
4a6e98a558
mall, eyre: refactor server apps to be stateless 2019-11-13 00:38:35 -08:00
Philip Monk
1d1e9c0e16
eyre: better userspace libraries 2019-11-12 23:37:38 -08:00
Philip Monk
47e3b260d5
eyre: subscribe to apps for responses
This removes the %http-response special case from gall.  In its place,
we implement a subscription regime with the following steps:

- Agent sends %connect to Eyre
- Eyre pokes agent with %handle-http-response, including unique eyre-id
- Agent passes %start-watching to Eyre with eyre-id and unique app-id
- Eyre subscribes to agent on /http-response/app-id
- Agent produces a %http-response-header fact followed by 0 or more
  %http-response-data facts and possibly a %http-response-cancel fact
- Agent produces a %kick to close the subscription, which Eyre
  interprets as completion of the message.

This works when there is data.  There is currently a bug where if the
response has no data in total (as in the case of a naked 404), no
response will be sent.

This also includes lib/http-handler, which implements a convenient
interface for agents that want to respond immediately with all the data.
This lets them avoid carrying extra state to keep track of pending
requests.

This should really have access to your state and the ability to change
it.  Perhaps a more minimalist design would be better: just keep track
of the requests, then hand it off to +on-watch when eyre is ready to
receive responses.  It's not clear how to pass in the request data in
+on-watch.
2019-11-12 23:37:38 -08:00
Philip Monk
0e2da1e130
mall: convert lanaguage-server 2019-11-04 23:47:27 -08:00
Logan Allen
96a26e9f62 Updated timer and chat app, server and eyre with latest 2019-07-12 11:04:47 -07:00
Joe Bryan
e0f17b0ff1 moves +http-server interface core into +eyre 2019-07-03 23:29:13 -07:00
Jared Tobin
b3901ab42f Add 'pkg/arvo/' from commit 'c20e2a185f131ff3f5d3961829bd7a3fe0f227f8'
git-subtree-dir: pkg/arvo
git-subtree-mainline: 9c8f40bf6c
git-subtree-split: c20e2a185f
2019-06-28 12:48:05 +08:00