Commit Graph

241 Commits

Author SHA1 Message Date
fang
08ad367cd8
eyre: when a %request causes a crud, serve 500
Previously, if an incoming request caused a crash, we would just drop it
on the floor. We should at least have the decency to serve the client a
quick 500 and let them get on with their day.

We make sure not to touch state here. The connection is guaranteed-fresh
because of the task's semantics, and we're handling it in-line in one go.

Notably we only give a simple "crud!" for the body, instead of the full
error trace. We don't know whether the request is authenticated or not
(and who knows if checking was the cause of the crash!), and the crud
might leak sensitive details about the ship it occurred on. For the
owner, the trace still gets printed into the terminal.
2023-05-04 17:42:36 +02:00
Joe Bryan
c42f1d2663 eyre: corrects connection lifecycle comment 2023-05-03 18:40:22 -04:00
Joe Bryan
c349d154b6 eyre: optimizes responses, removes redundant connection state updates 2023-05-03 18:39:19 -04:00
Joe Bryan
007a32c47a eyre: remove redundant connection retrieval 2023-05-03 18:25:48 -04:00
Joe Bryan
7fb2f613d4 eyre: no-op on agent-error when missing connection state 2023-05-03 18:25:10 -04:00
Joe Bryan
bbe14ce747 arvo: fix %gall meta-namespace reads (missed in merge) 2023-04-26 20:28:32 -04:00
Hunter Miller
06af50a9b9 eyre: fixing errant whitespace 2023-04-26 17:00:46 +03:00
Hunter Miller
215a35640c eyre: if logged in and accessing login page, redirect 2023-04-26 17:00:46 +03:00
Ted Blackman
625b63614e
Merge pull request #6406 from urbit/i/5788/remote-scry
Add Remote Scry Protocol
2023-04-25 11:06:04 -04:00
Joe Bryan
5dfc8e3c5d arvo: restructures |mass, switches to %x //whey 2023-04-24 16:21:41 -04:00
~wicrum-wicrun
05304146a7 gall,eyre,dojo,azimuth,dbug: gall claims the [%$ *] namespace 2023-04-24 21:53:52 +02:00
pkova
5868c29c3b eyre: combine unreleased loads for ~2023.4.19 and ~2023.4.11 2023-04-24 18:54:22 +03:00
pkova
a1fd3a6792 lull, eyre: actually send events on clogged channel reconnect 2023-04-24 13:38:14 +03:00
Ted Blackman
6e793dfe39 Merge branch 'develop' into next/kelvin/413 2023-04-22 14:33:01 -04:00
fang
171142fd31
eyre: use jam mime type for PUT mode detection
Making this consistent with the mime type used for GET requests.
2023-04-12 19:19:13 +02:00
fang
d32527ba19
eyre: further refactor +load logic
Co-authored by: joemfb <joemfb@gmail.com>
2023-04-12 18:53:44 +02:00
fang
132299f278
eyre, mar: use x-urb-jam mime type for jams 2023-04-12 18:42:35 +02:00
pkova
fa40fd7f35 eyre: do not clear unacked events in +on-get-request 2023-04-12 19:36:26 +03:00
fang
4b68139c40
Merge branch 'next/kelvin/413' into x/json-bgon 2023-04-11 21:54:43 +02:00
lukechampine
e0ff3b4d5f eyre: add cache 2023-03-28 17:01:31 -04:00
fang
e11ac8a1c8 eyre: deduce channel mode from headers, not url 2023-03-16 14:32:02 -06:00
fang
10fe204c9e eyre: add support for noun-based channels
Adds a "mode" to channels, which can be set to either %json (current
behavior) or %jam. For %jam channels, aside from the SSE framing, all
communication happens through @uw-encoded jammed nouns. This applies to
both outgoing channel events, as well as incoming channel requests.

We choose @uw-style encoding because raw bytestreams are fragile and
cannot work inside the SSE stream context.

Currently, a separate endpoint (/~/channel-jam/etc) is used to indicate
%jam as the desired mode for a channel. We will probably want to make
this a bit cleaner, not least because it's not currently implemented as
a formal standalone endpoint, but also to give it stronger aesthetic
equivalence with the existing channel endpoint. Putting the mode in the
file extension is a tempting option here, but semantically not quite
right.

Connecting to the same channel across multiple modes is currently
supported, but it's untested, and unclear whether this is desirable or
not.
2023-03-16 14:31:45 -06:00
tadad
328a3d687d
Merge branch 'develop' into i/6303/eyre-verbose 2023-03-16 09:36:27 -06:00
pkova
d9c9b4150b lull, eyre: remove scry adapters for /~/name endpoint 2023-03-15 08:35:58 -04:00
tadad
a404982f75
Merge branch 'develop' into i/6303/eyre-verbose 2023-02-22 09:26:17 -06:00
pkova
76f32c6fad lull, eyre: add intermediate type for /~/name endpoint
The previous changes implementing the /~/name endpoint were breaking,
since we changed the type of `$action:eyre`. This commit keeps the /~/name
endpoint functional, but adds adapters to eyre scries that returns the old
`$action:eyre` type. These adapters and their associated intermediate types
can be removed the next time we burn a kelvin.
2023-02-21 20:48:56 +02:00
dachus
7c046d8812 +load fixed 2023-02-17 10:15:27 -06:00
tadad
dce0317327
Merge branch 'develop' into i/6303/eyre-verbose 2023-02-17 09:46:54 -06:00
Ted Blackman
61d32b5598
Merge pull request #5973 from urbit/m/http-auth-tokens
http: check requests for auth using tokens from eyre
2023-02-17 09:09:23 -05:00
dachus
5433d186aa requested changes fixed 2023-02-16 09:02:34 -06:00
dachus
099415c550 Merge branch 'i/6303/eyre-verbose' of https://github.com/uqbar-dao/urbit into i/6303/eyre-verbose
merge
2023-02-14 10:49:11 -06:00
tadad
470cdf0fef
Merge branch 'develop' into i/6303/eyre-verbose 2023-02-14 10:48:58 -06:00
dachus
c62549e0b3 message changed 2023-02-14 10:46:07 -06:00
pkova
49a24647da eyre: revert inclusion of HttpOnly header for now 2023-02-13 20:58:59 +02:00
fang
54680c33a8
eyre: clean up stray ~! 2023-02-13 15:12:24 +01:00
pkova
0202ff069c eyre: fix indentation 2023-02-13 14:27:34 +02:00
pkova
bb73dc9975 eyre: replace hardcoded duct in +load with equivalent outgoing-duct 2023-02-13 14:27:23 +02:00
pkova
712bcba2b2 eyre: hardcode %init task duct in +load 2023-02-13 14:27:12 +02:00
pkova
e3d19f9e8d eyre: refactor +load to be prettier 2023-02-13 14:27:12 +02:00
pkova
9291fed27f eyre: revert +error-response refactor 2023-02-13 14:27:12 +02:00
pkova
d8ff95db84 eyre: add /~/name endpoint 2023-02-13 14:26:54 +02:00
tadad
cbc178ee76
Merge branch 'develop' into i/6303/eyre-verbose 2023-02-09 14:08:16 -06:00
dachus
50d35ad89a cleaning 2023-02-09 15:06:06 -05:00
dachus
b5b11b0bf1 cleaning 2023-02-09 14:56:50 -05:00
dachus
785fa057bd cleaning code 2023-02-09 14:51:34 -05:00
dachus
d8ca915c22 cleaning up message rankings 2023-02-09 14:22:50 -05:00
dachus
9aadada6fc discard-channel traces fixed 2023-02-09 14:11:35 -05:00
dachus
d52df27ca0 channel discarding messages added 2023-02-09 13:58:24 -05:00
dachus
7e4a55b304 error connections tuned 2023-02-09 13:06:02 -05:00
dachus
b6c1ed2240 load changed 2023-02-09 12:55:47 -05:00