Commit Graph

15787 Commits

Author SHA1 Message Date
lukechampine
5ff263e78d eyre: add HTTP scrying 2023-09-19 19:45:23 +03:00
Pyry Kovanen
37db4ab4a8
Merge pull request #6797 from urbit/develop
Merge develop into next/kelvin/411
2023-09-19 19:45:02 +03:00
fang
34148f9f44 eyre: allow PUTting empty channel-request list
Previously, we would reject this with a 400 error. Considering the
request body is expected to contain "array of requests" and that arrays
may be empty, we really should not be rejecting the requests.

Prior to 156ca21472, sending the empty array would have been convenient
for channel creation. Empty arrays getting rejected forced clients to
inject a faux poke (commonly hi-ing oneself). With that recent change,
the most common case for wanting to PUT the empty list of requests is
largely obsolete, but one can still imagine it being useful for clients
that want to keep their channel alive without necessarily being
connected to it. This also implements sloppier clients from running into
400 responses when they submit an empty "command queue" for whatever.

Regardless, there seems to be no clear reason why the empty request list
_shouldn't_ be accepted and processed as normal.

We add a small test to ensure eyre accepts this.
2023-09-19 19:12:25 +03:00
fang
4affae8181 eyre: GETting non-existent channels creates them
Previously, a channel could only be created by sending a PUT request,
and a GET request to receive the channel's stream would only succeed
after channel creation had happened that way. This forces client
libraries, that generally have an explicit "set up" step before allowing
normal operation, to do strange things, like sending faux pokes
(commonly hi-ing oneself) before connecting to the channel's stream as
normal.

Here, we update the GET request handling for channels to allow requests
for non-existent channels. When this happens, the channel will be
created, and eyre tracks the request as normal.

We do some... gentle restructuring... of +on-get-request:by-channel to
let the new creation case share code with the "already exists" codepath.
In the process, we find that duct-to-key was never getting updated in
the case where we replace the original channel request/connection with
the new incoming one. We fix this, it's trivial. We also identify two
other areas with vaguely-incorrect behavior, but consider them less
important and out of scope.

We also add a test case for "create channel through GET".
2023-09-19 19:12:25 +03:00
Pyry Kovanen
e355b5090e
Merge pull request #6783 from urbit/pkova/dear
lull, ames: add %dear task to receive lane from unix
2023-09-19 15:56:43 +03:00
Pyry Kovanen
c846dea16b
Merge pull request #6796 from urbit/develop
Merge develop into next/kelvin/411
2023-09-19 13:56:24 +03:00
fang
b427c9e800 eyre: serve 503 if bound agent is not running
Previously, for endpoints bound to agents, we would pass the request
onto the agent even if the agents wasn't currently running.

Here, we make eyre check to see if the agent is actually running, before
passing the request on. If the bound agent is not running, eyre serves a
503 synchronously instead.

This way, we avoid cluttering up the gall queue for the bound agent.
2023-09-18 15:52:28 +03:00
Tinnus Napbus
e9a618e184 kiln: change jump-related @p printing to scow's 2023-09-16 02:53:41 +12:00
Tinnus Napbus
00bc412619 kiln: simplify ++frond call in %kiln-jump mark 2023-09-16 01:34:01 +12:00
Tinnus Napbus
b2a3350afd kiln: %jump-ask mark noun:grab structure mode 2023-09-16 01:31:17 +12:00
Tinnus Napbus
b59525a203 kiln: OTA merge control
- let users disable automatic OTA merging for a sync or globally
- a sync can be set to manual, automatic or global default
- unapproved non-auto updates must be approved by the user
2023-09-15 22:20:42 +12:00
pkova
58698a428c ames: cancel pump timers when toggling to dead flow consolidation 2023-09-14 22:48:58 +03:00
pkova
bf4d7c92e1 ames: make dead flow consolidation toggleable, default off 2023-09-14 18:35:26 +03:00
Pyry Kovanen
babfd75daf
roller-rpc: do not assert team:title for http-requests 2023-09-13 14:57:28 +03:00
midden-fabler
dabff19cd9 gall: add scry endpoint for backups 2023-09-06 17:34:34 -04:00
Pyry Kovanen
328e085e41
lick: initialize unix-duct before %born 2023-09-05 16:17:06 +03:00
pkova
6a6e07d49f lull, ames: add %dear task to receive lane from unix 2023-09-04 22:09:52 +03:00
Ted Blackman
f077e48112 ames: fix saxo scry; emit on sponsor change too 2023-09-01 11:28:31 -04:00
Ted Blackman
0c6f3030f3 lull,ames: emit %saxo gift on %born 2023-09-01 11:17:35 -04:00
Tinnus Napbus
c8ab40c87a Merge branch 'next/kelvin/411' into desk-publisher-switcher 2023-08-31 01:44:40 +12:00
Ted Blackman
9d2f40d654 sys.kelvin: zuse 411 2023-08-23 16:39:28 -04:00
pkova
c8379b245a zuse: decrement kelvin from 412 to 411 2023-08-23 21:22:50 +03:00
Pyry Kovanen
4bb9bae2d2
arvo: add provenance when casting forward move 2023-08-23 19:06:14 +03:00
Pyry Kovanen
3260e4fe05 eyre: handle old wires correctly in +on-gall-response 2023-08-22 21:37:15 +03:00
Pyry Kovanen
a1f9374145
Merge pull request #6756 from urbit/pkova/dead-flow-fix
ames: fix bug in dead flow consolidation
2023-08-21 18:29:39 +03:00
yosoyubik
8320e7dbf2 ames: update dead flow timers in state 2023-08-21 14:03:38 +03:00
yosoyubik
4da54b9e4d ames: reinitialize recork timer 2023-08-21 14:03:38 +03:00
yosoyubik
e6bc865425 gall: fix error 2023-08-18 16:52:54 +02:00
yosoyubik
7242e56be5 gall: clear leaves.state after handling all leaves
Instead of setting a new timer every time, we wait to hear a new %nack
for a %leave to do so, accumulating any unacked %leaves in the state for
up to ~m2. When the timers comes back, we re-send all outsanting %leaves
and skipp setting up a new timer.
2023-08-18 13:57:16 +02:00
yosoyubik
be0bbc78c5 Merge branch 'yu/decongest-ames-in-develop' into yu/fix-state-migrations 2023-08-18 08:16:26 +02:00
yosoyubik
19f5946e72 ames: only reinitialize congestion if bunted 2023-08-17 15:22:09 +02:00
yosoyubik
def2591812 ames: reinitialize congestion control values 2023-08-17 15:22:03 +02:00
yosoyubik
cf937374c8 gall: put +on-bad-nonce log under %odd flag
The change introduced in 5422715c9b makes it very frequent for subscribers
to get stale facts on the subscriptions they are trying to leave so to not
clutter their dojo, we put the log under the %odd flag
2023-08-16 14:20:34 +02:00
Joe Bryan
508c5bd53c hoon: fix gol type enforcement for trivial %cnts 2023-08-16 13:46:01 +03:00
yosoyubik
5422715c9b gall: send %cork only if hearing %ack for %leave 2023-08-16 10:47:20 +02:00
yosoyubik
58b678505f roller: fix state migration 2023-08-16 10:23:52 +02:00
Pyry Kovanen
c276ddd476
ames: fix bug in dead flow consolidation 2023-08-15 16:15:55 +03:00
fang
a9e3ebb780
eyre: avoid +got'ing a channel that doesn't exist
+on-gall-response might detect the symptom of a bug, where we are
getting a %fact for a channel that has since been deleted. (Meaning that
subscription should have been cleaned up, and we shouldn't have received
the %fact.) We want to issue a %leave, but need to take care to do so
with the same identity that the subscription was opened on.

Previously, we would forcefully get the identity from the non-existent
channel, resulting in a crash. Now, we encode the identity into the wire
instead, so that we may retrieve it from there, even when the channel is
long gone.
2023-08-10 11:33:08 +02:00
Tinnus Napbus
4440eaced6 kiln: make publisher change requests require approval 2023-08-07 21:24:52 +12:00
Pyry Kovanen
330d134a1c
Merge pull request #6737 from urbit/ja/eyre-login-412
eyre: cosmetic updates to login form
2023-07-28 19:26:19 +03:00
Pyry Kovanen
3cfc3cf235
Merge pull request #6740 from urbit/pkova/bane
lull, ames: add %tame task to delete a route for a ship
2023-07-28 18:59:50 +03:00
Pyry Kovanen
46c567f75f
Merge pull request #6700 from urbit/philip/stale
ames: Don't check for lane staleness
2023-07-28 18:35:02 +03:00
Pyry Kovanen
32665022d2
Merge pull request #6733 from urbit/remove-deprecated-arms
zuse: remove deprecated arms
2023-07-28 18:30:36 +03:00
pkova
facd6994b0 lull, ames: add %tame task to delete a route for a ship 2023-07-28 18:15:04 +03:00
Pyry Kovanen
19d7fe0f85
Merge pull request #6738 from urbit/pkova/dead-flow-consolidation
ames: consolidate dead flows to a single behn timer
2023-07-28 17:32:08 +03:00
James Acklin
4bbe46adc1 eyre: cosmetic updates to login form
Makes cosmetic changes to the login page of eyre. This addresses an issue with insufficient contrast between text elements and their backgrounds in dark mode.
2023-07-28 16:36:53 +03:00
Marcus
ef6965c882 zuse: remove deprecated arms 2023-07-28 16:33:55 +03:00
pkova
82d4e2a265 ames: add comment explaining magic number in +set-wake 2023-07-28 16:33:34 +03:00
pkova
ff21513864 ames: fix indentation in dead flow handling 2023-07-28 16:33:34 +03:00
pkova
45924f7571 ames: store dead flow consolidation timer in state 2023-07-28 16:33:34 +03:00
pkova
d2956a3233 ames: consolidate dead flows to a single behn timer 2023-07-28 16:33:34 +03:00
pkova
7bea0038e5 clay: propagate [~ ~] properly from read-x 2023-07-28 16:32:49 +03:00
Pyry Kovanen
c35aabcebf
Merge pull request #6744 from urbit/develop
Merge develop into next/kelvin/412
2023-07-28 16:32:35 +03:00
Tinnus Napbus
c4b612dac5 gen/hood: add +change-publisher generator 2023-07-28 23:43:17 +12:00
Tinnus Napbus
f1c1205fe2 kiln: let publishers tell subs to switch source
This adds a %kiln-change-source poke that changes the sync source
for all syncs from the given remote ship/desk to a new ship/source.

This poke works remotely iff it comes from the publisher, allowing
publishers to migrate app distribution.

A %kiln-change-publisher poke is also added to kiln which sends this out
to all desk subscribers with the let+1 %w %sing that %kiln uses.
2023-07-28 21:35:38 +12:00
Pyry Kovanen
d52826e570
Merge pull request #6712 from ilyakooo0/iko/sink
%sink
2023-07-24 18:24:13 +03:00
Pyry Kovanen
a061ef1ffc
Merge pull request #6686 from midden-fabler/dojo-errors
dojo: better generator errors
2023-07-24 18:22:04 +03:00
Pyry Kovanen
9ec34d81a5
Merge pull request #6681 from ilyakooo0/iko/noun-grad
Add %noun-autodiff mark with automatic diffing algorithm
2023-07-24 18:09:30 +03:00
Pyry Kovanen
897d00334f
Merge branch 'next/kelvin/412' into yu/enable-close-flows 2023-07-24 16:58:13 +03:00
Pyry Kovanen
983cba3724
Merge pull request #6697 from urbit/remove-deprecated-json-calls
json: remove deprecated JSON parser calls
2023-07-24 16:20:27 +03:00
Marcus
be853b5a1a kiln: avoid downloading updates for uninstalled desks 2023-07-24 16:15:48 +03:00
Pyry Kovanen
82f9ed43bc
Merge pull request #6703 from urbit/fix-html-conversions
mar: better html-related conversions
2023-07-24 16:14:49 +03:00
Marcus
71ccdbe4ab json: remove deprecated JSON parser calls 2023-07-24 15:18:11 +03:00
Marcus
a42b74bc5c mar: better HTML-related conversions 2023-07-24 15:16:56 +03:00
silnem2
d6362cb293 dojo: fix gall scries in +to-command 2023-07-24 15:16:04 +03:00
silnem2
b254524aaf kiln: change deprecated %cd scry 2023-07-24 15:10:54 +03:00
silnem2
23bb0eb35e kiln: rewrite +poke-uninstall to unsync suspended desks 2023-07-24 15:10:54 +03:00
pkova
8565fb5f8b Merge branch 'develop' into next/kelvin/412 2023-07-24 14:58:31 +03:00
iko
d9f8074b87 Made it compile 2023-07-19 21:03:23 +03:00
iko
082ef00b83 %sink 2023-07-19 21:03:23 +03:00
Matthew LeVan
46575dc2fe base: add pace to next revision in -runtime-version 2023-07-19 17:10:50 +03:00
Matthew LeVan
cfb51a453e
Merge branch 'develop' into pkova/drop-pokes 2023-07-18 12:54:41 -04:00
Pyry Kovanen
efb92ad0c0 ames: ignore old rifts in +on-take-flub 2023-07-18 19:35:03 +03:00
pkova
f2b0628e10 ci: hopefully fix ci 2023-07-18 18:40:27 +03:00
fang
9f2c97f95e
lull: add %'PATCH' to $method:http
As of RFC 5789, PATCH is a valid HTTP request method. The $method:http type,
however, did not include it.

Here, we add it to the $method:http type, so that it now includes all nine
standard HTTP methods.
2023-07-12 15:56:51 +02:00
pkova
985350d2b5 ames: address style nits 2023-07-11 18:32:19 +03:00
pkova
a5f88cb24e ames: use abet pattern for flubbing 2023-07-11 18:19:56 +03:00
pkova
4fe9de8194 lull, gall, hoon: drop pokes for non-running agents 2023-07-11 17:36:09 +03:00
iko
a810e72d6d
Fixed styling 2023-07-10 19:02:48 +03:00
Pyry Kovanen
8f5d29fb73
Merge pull request #6695 from urbit/pkova/delete-nonsense
%base: delete /app/gaze and /ted/naive-csv
2023-07-10 18:51:21 +03:00
Pyry Kovanen
77b0c4c40f
base: update output format in /ted/read 2023-07-10 15:30:07 +03:00
Pyry Kovanen
ff06119f93
base: fix output format in /ted/code 2023-07-10 15:28:57 +03:00
Pyry Kovanen
65508d56a6
base: fix hi thread output formatting 2023-07-10 15:21:09 +03:00
iko
529ead91a3 Fixed formatting again 2023-07-10 11:01:18 +03:00
iko
8b208451bd noun-autodiff: Added a mark that has diffing 2023-07-10 11:01:18 +03:00
Ted Blackman
5dcb298eec
Merge pull request #6683 from urbit/wicrum/sss-no-timers
sss: rely on ames acks instead of timers
2023-07-09 19:39:48 -04:00
midden-fabler
0543f4e8b1 dojo: high level error at bottom 2023-07-07 23:55:14 -04:00
midden-fabler
8f5497d687
Merge branch 'develop' into dojo-errors 2023-07-07 15:32:21 -04:00
Pyry Kovanen
1211767269
zuse: fix to-wain jet mismatch 2023-07-05 14:40:36 +03:00
midden-fabler
b3be753727 spider: move spider tree 2023-07-04 02:11:03 -04:00
midden-fabler
1c07314ff5 dojo: revise error conditions 2023-07-04 00:30:21 -04:00
~wicrum-wicrun
92849f3e8f sss: $rule is now horizon and frequency 2023-07-03 15:53:42 +02:00
Philip Monk
a136355bbd ames: remove lane staleness checks 2023-06-30 15:03:16 -07:00
yosoyubik
f56db0f460 ames: better naming in queued event migrations 2023-06-30 15:26:20 +02:00
~wicrum-wicrun
82ea321997 sss: remove blank lines 2023-06-30 15:24:50 +02:00
~wicrum-wicrun
d98dfbe4db sss: rocks.rule=0 now means "store genesis and one snapshot" 2023-06-30 15:11:46 +02:00
yosoyubik
c4e5d3c963 Merge branch 'yu/fix-drop-nack-state' into yu/enable-close-flows 2023-06-30 14:54:30 +02:00
yosoyubik
3b9a22bb5c Merge branch 'next/kelvin/412' into yu/fix-drop-nack-state 2023-06-30 14:32:13 +02:00
yosoyubik
437f943fbd ames: update pill 2023-06-30 14:31:36 +02:00
yosoyubik
caea585c31 Merge branch 'develop' into next/kelvin/412 2023-06-30 12:22:09 +02:00