Fang
e9aa3821ef
zuse, clay: further wip migration
2021-09-20 23:13:04 +02:00
Ted Blackman
fb8c73e39a
zuse,clay: WIP +migrate-dist
2021-09-20 13:01:48 -04:00
Ted Blackman
04e010e6c8
Merge branch 'dist' into ted/dist-migrate-wip
2021-09-20 07:43:43 -04:00
fang
d0f8eda937
hoon: correctly parse empty path
...
And reject paths ending in empty segments.
The following cases were being parsed incorrectly:
- `/` represents the empty path, `~`. This was being parsed into `[~. ~]`
- `/x/` is not valid. This was being parsed into `[~.x ~. ~]`
This happens because `urs:ab` has no problem parsing the empty string.
For some supported cases, like `//x` (`[~. ~.x ~]`), this is actually desired
behavior, but it results in trailing empty segments for paths ending in `/`.
Here we apply a `+sear` on top of the existing parser, that transform the `/`
case to produce `~`, and ensures the absence of a trailing empty segment in
all other cases.
Note that we change `(more fas urs:ab)` to `(most fas urs:ab)`. Since `urs:ab`
parses the empty string, this doesn't actually make a difference, but it does
make it more obvious that the `+rear` call will never crash.
Alternative approaches I attempted all resulted in much more complicated
parser, so the dumb `+sear` seems preferable.
We do eat the performance cost of an additional list traversal (in `+rear`)
with this change, but that is probably not the end of the world.
Fixes #1501 .
2021-09-16 12:39:50 +02:00
Liam Fitzgerald
1ac0465da7
gall: ignore reload for dead agents
...
Fixes a bug where even if an agent was dead, if its source was modified,
then gall would still attempt a scry for its cage.
2021-09-13 08:43:57 +10:00
Ted Blackman
84c043d921
lull,clay: WIP migration
2021-08-31 02:25:36 +03:00
Ted Blackman
91714f5579
lull,dill,gall,kiln: move %pyre to :agent:gall
2021-08-27 18:06:53 +03:00
Ted Blackman
dda7f13e0e
clay: WIP migrate from master
2021-08-26 19:32:52 +03:00
Ted Blackman
f9e1812a14
sys,gen/kiln: kelvin checking seems to work
2021-08-20 10:41:16 +03:00
Ted Blackman
4ea0c56849
dill: don't sync %kids on galaxies
2021-08-18 00:57:38 +03:00
Ted Blackman
616ab66f26
merge master; loosen :hood's updates
2021-08-11 19:23:36 +03:00
Ted Blackman
b8af4835cf
dill: sync to %kids on galaxies
2021-08-09 02:31:53 +03:00
Philip Monk
98d8419c9e
hoon: don't compile .= children twice
2021-08-04 17:02:48 -04:00
Philip Monk
4e16b9c555
hoon: remove +ad
...
This reverts d96d50199
because +ad is incredibly opaque, and +ergo's
sitting right there anyway. It looks like it was intended to abstract
over +endo, +elbo, and +ergo, but only +ergo was every implemented. I
don't doubt the others could be as well, but then they would be just as
inscrutable.
2021-08-04 16:57:03 -04:00
Philip Monk
eb383baba9
dill: no-op on strange fact
...
Otherwise, if you accidentally give on the system duct, you crash the
event, as in #5138
2021-07-29 14:56:26 -04:00
Ted Blackman
a27697a45d
dill: revert change to ota setup
2021-07-23 14:14:23 +03:00
Ted Blackman
6bf7d3316e
dill: |install %base from sponsor on boot
2021-07-23 14:08:30 +03:00
Ted Blackman
d9c9740b8d
clay: print desk in +read-a
2021-07-23 14:03:36 +03:00
Ted Blackman
891a295366
gall: fix /clear-huck handling
2021-07-21 11:55:21 +03:00
Philip Monk
1d06b77a46
jael, dawn: support multikeyfile
...
taken from bdaad4cf84
2021-07-20 13:28:33 -04:00
Philip Monk
564c1216e1
Merge remote-tracking branch 'origin/lf/replace-channel' into release/next-sys
2021-07-20 13:09:41 -04:00
Philip Monk
5240b66347
Merge branch 'pr' into release/next-sys
2021-07-20 13:07:57 -04:00
Ted Blackman
88c15bcca2
gall: make %jolt idempotent, remove dead +mo-reboot
2021-07-20 17:59:20 +03:00
Ted Blackman
38d6d0f4d4
gall,kiln: clean up agent stopping, starting, linking
2021-07-19 16:58:18 +03:00
Ted Blackman
4f5739879e
clay: more printing adjustment
2021-07-19 14:01:34 +03:00
Ted Blackman
f521881212
clay: better print
2021-07-18 23:11:13 +03:00
Ted Blackman
4f3e99f797
clay,hood: seems to boot for real now
2021-07-17 02:54:20 +03:00
Ted Blackman
a1b82d4b36
various: can bootstrap off existing ship, but generators are broken
2021-07-16 19:01:55 +03:00
Ted Blackman
121502028e
dill: stop poking drum
2021-07-16 05:22:53 +03:00
Ted Blackman
4121d35b64
gall: crash on agent build failure
2021-07-16 05:22:31 +03:00
Ted Blackman
4cb5cd0ba1
gall,drum,kiln: WIP start agents in kiln
2021-07-15 09:51:03 +03:00
Ted Blackman
5e496e920e
clay: invalidate cache on kelvin change
2021-07-14 19:21:00 +03:00
Ted Blackman
f4232ce415
dill,clay: minor printing cleanup
2021-07-14 01:51:35 +03:00
Ted Blackman
529502543b
sys,lib: boots!
2021-07-14 01:00:13 +03:00
Ted Blackman
9b968edf75
clay,kiln,/mar/kelvin,/lib/pill: some fixes for pills; not done
2021-07-13 19:02:24 +03:00
Ted Blackman
5986fe67f5
gall: no-op on %slay,%idle for missing agent
2021-07-13 17:35:54 +03:00
Ted Blackman
070bbd0917
clay: use
2021-07-10 08:56:25 -04:00
ixv
9883f09a34
gall: no-op instead of sending %huck in +mo-clear-queue
2021-07-09 12:12:48 -07:00
raghu
ad96d47cdc
better formatting in error messages
2021-07-08 22:29:06 -04:00
Ted Blackman
0e144314c3
gall: suspend agents on upgrade
2021-07-07 14:08:21 -04:00
Ted Blackman
6a1cbf8894
arvo: kelvin version type
2021-07-02 17:40:55 -04:00
Fang
cb1a7cb76a
Merge branch 'm/multipass' into naive/preboot
2021-07-02 16:20:51 +02:00
Ted Blackman
82581ae993
gall: %e scry to list apps on a desk
2021-07-01 20:33:43 -04:00
Ted Blackman
784004cfb6
kiln: +install compiles and loads, untested
2021-06-30 21:03:47 -04:00
Liam Fitzgerald
6ca0fd11c4
eyre: send comments as heartbeats, not empty events
...
The previous behaviour, in addition to not being conformant with the
spec, breaks correct reconnect behaviour.
See: https://html.spec.whatwg.org/multipage/server-sent-events.html#event-stream-interpretation
2021-06-30 11:45:50 +10:00
Ted Blackman
8c3d14b7a7
clay: check kelvin on non-%base desks
2021-06-28 21:22:55 -04:00
Ted Blackman
40af38c9ee
bin/solid.pill
2021-06-28 20:18:37 -04:00
Ted Blackman
501ed4ad82
clay: remove reef
2021-06-28 20:01:51 -04:00
Logan Allen
d5ec02c801
eyre: cast within zapgar to avoid nest check
2021-06-28 17:07:13 -04:00
Liam Fitzgerald
f2583ce080
eyre: address mark review
2021-06-25 08:28:06 +10:00
Liam Fitzgerald
9aaa44ff33
eyre: replace channel upon new GET request
...
As SSE are unidirectional, the client always realises that the
connection has failed faster than the server does. Hence, resuming a
subscription is useless, because channels can only be bound to one duct
at a time. Now, instead of failing a request for a channel
that is already bound to a duct, we replace the duct and continue
normally.
2021-06-24 13:54:53 +10:00
raghu
5698e2662a
Merge remote-tracking branch 'upstream/master' into better-bar-fuse
2021-06-21 20:57:20 -04:00
raghu
a04b318d2d
clay: log on strange fuse responses
2021-06-21 20:43:49 -04:00
Philip Monk
87ca57c364
gall: allow apps to run from any desk
...
Start with |start %desk %app-name
Everywhere in the kernel that we deal with marks, we infer the app it's
connected to and use the marks from that desk.
Also some light renaming in gall, especially path->wire and
current-agent->yoke.
Subsequent tasks:
- Dojo needs a syntax to run generators and threads from other desks
- The home desk should be split into at least a minimal base desk and
big "userspace" desk. Dill's initialization logic should be updated
to handle
- |show-package, |install, and |uninstall should to be written
- Clay should have smarter handling of system versions instead of just
ignoring what's on each desk. It's not clear that this will work
correctly when sys updates right now.
2021-06-18 16:13:55 -10:00
Logan Allen
1296728d4f
eyre: cast within zapgar to avoid nest check
2021-06-14 16:18:18 -05:00
Philip Monk
85fdd6b190
clay: handle out-of-bounds versions in nako
2021-06-08 15:41:44 -10:00
Philip Monk
e5ab5db20c
Merge branch 'release/next-sys' of ssh://github.com/urbit/urbit into release/next-sys
2021-06-08 09:21:04 -10:00
fang
f17e228046
Merge pull request #4942 from urbit/m/dill-appetizer
...
dill: support next runtime's inputs
2021-06-08 21:05:25 +02:00
Philip Monk
b0c9fd1940
Merge remote-tracking branch 'origin/lf/hoon-inc' into release/next-sys
2021-06-08 08:59:27 -10:00
raghu
b499e1e711
clay: print conflicting source on fuse failure
2021-06-07 20:35:18 -04:00
L
5cc908063a
Merge pull request #4987 from urbit/la/zuse-parsing
...
zuse: comb through all notes in libraries, and move arms to zuse
2021-06-07 13:11:40 -05:00
Logan Allen
6703e03199
zuse: remove unnecessary line from +re
2021-06-07 10:20:20 -05:00
Logan Allen
b6206728cc
hoon: make +sink more concise
2021-06-04 16:06:40 -05:00
fang
4c004e0165
lull: saner belt construction
...
$% by itself wasn't quite right, considering +bolt's @c case.
2021-06-04 21:45:59 +02:00
Logan Allen
7ef313c5e1
hoon: add +sink, a slow (but faster than dunk) type printing
2021-06-04 14:40:28 -05:00
Logan Allen
2c7a909f19
zuse: comb through all notes in libraries, and move arms to zuse
2021-06-04 12:47:51 -05:00
fang
3b81e35260
dawn: better multikey format
...
Improves the multikeyfile format by taking a single ship and a list of
life+key pairs, instead of a list of full seeds.
Also decouples these changes from the dawn event, once again putting a
single seed into it. In the multikeyfile case, keys are injected as
%rekey events to jael near the end of the boot sequence.
Haskell-side changes may or may not be incomplete, boot presently fails
at some unknown point with what looks like a noun conversion error.
2021-06-04 01:49:15 +02:00
L
21ae35a08f
Merge pull request #4932 from urbit/la/fast-look
...
arvo: add +de-case to speed up +de-beam, prime cache in +settle:va
2021-06-01 13:45:32 -05:00
Logan Allen
2549eaa5c2
eyre: comment out %writ specialization because it causes crashes
2021-05-27 13:28:23 -05:00
Logan Allen
d822d5adce
gall: ensure we send %whiz after all the other moves
2021-05-27 13:24:36 -05:00
Logan Allen
3427e57cb3
eyre: specialize %clay type
2021-05-27 13:01:06 -05:00
Logan Allen
00fa3e7f0d
arvo: add %whiz option that allows one to prime the compiler cache
2021-05-27 12:55:03 -05:00
fang
bee2fd278c
dill: support next runtime's inputs
...
This, along with the new runtime understanding current dill's blits,
will ensure that the new runtime is reasonably usable even with the old
dill.
2021-05-27 16:28:42 +02:00
Logan Allen
7305ce1499
arvo: clean up unnecessary type casts and fix profiling hint
2021-05-26 17:59:00 -05:00
Logan Allen
517ebbbbee
arvo: rename +en-case to +de-case, prime the cache in +settle
2021-05-26 17:12:59 -05:00
Logan Allen
fdec9ebe93
arvo: add +en-case, hoon: remove +sloy
2021-05-26 15:45:39 -05:00
Logan Allen
23f9668d46
eyre: make fang's requested style changes
2021-05-26 12:22:54 -05:00
fang
d1890f5db2
jael, dawn: support multi-keyfile during boot
...
Allows booting with a keyfile containing multiple keys, as long as one
of them matches current PKI pubkeys for the specified ship.
All relevant keys are loaded into jael and will automatically be put to
use when they match PKI state.
2021-05-26 16:02:39 +02:00
Logan Allen
8ee9382e7b
arvo/hoon: add +sloy, a %da short-circuited +slay to speed up +de-beam and thus +look
2021-05-23 20:34:43 -05:00
Logan Allen
571e1df2c6
eyre: add ~| to slym
2021-05-20 15:05:36 -05:00
Logan Allen
be7c94fcba
eyre: replace +slam with +slym for a speedup
2021-05-20 14:31:28 -05:00
L
782a7644a3
Update pkg/arvo/sys/vane/eyre.hoon
...
Co-authored-by: fang <github@fang.io>
2021-05-20 13:40:05 -05:00
L
c0daa7f9fc
Update pkg/arvo/sys/vane/eyre.hoon
...
Co-authored-by: fang <github@fang.io>
2021-05-20 13:39:49 -05:00
Logan Allen
5e2eb1b783
eyre: use slam and statically typed conversion
2021-05-20 18:03:04 +00:00
Logan Allen
306dbbaead
eyre: use static mark conversions
2021-05-20 12:11:45 -05:00
Logan Allen
c0e4dcdc18
eyre: no-op on clay take
2021-05-19 16:01:05 -05:00
Logan Allen
054806b307
eyre: send warp to warm %c cache for any mark that gets used
2021-05-19 15:40:32 -05:00
Philip Monk
bbe3cbe8ee
clay: formatting
2021-05-18 08:32:30 -10:00
Philip Monk
1e6e69a49d
Merge branch 'pr' into release/next-sys
2021-05-18 07:50:26 -10:00
Philip Monk
5007257b63
Merge branch 'release/next-sys' of ssh://github.com/urbit/urbit into release/next-sys
2021-05-18 07:41:58 -10:00
Philip Monk
1f016f56a6
Merge pull request #4916 from urbit/la/sys-ram
...
zuse: added +ram method to ordered map and made comments on methods a…
2021-05-18 10:40:31 -07:00
Philip Monk
63ba2823dd
Merge remote-tracking branch 'origin/ted/clay-bunt' into release/next-sys
2021-05-18 07:38:52 -10:00
Logan Allen
2c754ff08f
zuse: added +ram method to ordered map and made comments on methods accurate
2021-05-18 12:38:42 -05:00
Philip Monk
e2e4d28548
Merge pull request #4788 from urbit/la/sys-fast-orm
...
zuse: add +all, +any, +got, +has, +run, and +tab to ++ordered-map, jet hints, and reorganize alphabetically
2021-05-18 10:24:31 -07:00
Philip Monk
57bea9407e
Merge pull request #4623 from urbit/jb/seminoun-bunt
...
hoon: update seminoun bunt to be fully blocked
2021-05-18 10:23:30 -07:00
Philip Monk
f73b913df9
Merge branch 'release/next-sys' of ssh://github.com/urbit/urbit into release/next-sys
2021-05-13 07:04:27 -10:00
Philip Monk
a57b6f9c9e
Merge branch 'pr' into release/next-sys
2021-05-13 07:04:07 -10:00
raghu
44722f3a09
fuse: properly report success
2021-05-11 21:30:44 -04:00
Logan Allen
b311087f6a
Merge branch 'release/next-sys' into la/sys-fast-orm
2021-05-11 12:37:16 -05:00
Logan Allen
a25f8028f4
tests: add test to make sure subtree is being modified properly in +del-span
2021-05-05 16:07:08 -05:00
Logan Allen
915c548037
zuse: fix +del-span in +tab
2021-05-05 14:41:13 -05:00
Logan Allen
36ae091cff
zuse: +tab in ordered-map is more succinct and no longer nips
2021-05-05 13:09:43 -05:00
Logan Allen
4073cf9d76
zuse: +tab marginal code cleanup to reduce use of lark
2021-05-05 12:59:40 -05:00
Logan Allen
947b9ec75c
zuse: +tab should paginate into the ordered-map starting from the highest element, not from the lowest
2021-05-05 11:56:04 -05:00
Logan Allen
c86559071f
zuse: add +tab arm to +on, which allows one to take a subset excluding the start element with a max count
2021-05-04 14:55:41 -05:00
raghu
9db61a1566
fuse: simplify state restoration logic
2021-05-03 22:26:49 -04:00
raghu
2fd8e729e1
fuse: fix indents
2021-05-03 19:29:28 -04:00
Ted Blackman
4c94c7edd4
ames: expire direct lanes faster after inactivity
2021-05-03 17:33:56 -04:00
raghu
20fb39bba7
fuse: fix comments
2021-05-02 14:15:03 -04:00
raghu
08d3aa2485
fuse: c/r
2021-05-02 14:04:03 -04:00
raghu
75ed2cc0af
fuse: c/r
2021-05-02 13:44:18 -04:00
Philip Monk
49bbf37ca2
Merge pull request #4835 from urbit/philip/clay-fixes
...
clay: fix requests for strange cares over ames
2021-04-29 15:18:05 -07:00
Philip Monk
7b7e9e3104
clay: fix requests for strange cares over ames
...
Four changes:
- implement +validate-u to allow %u requests over the network
- make +validate-x use our local marks to make %x requests generally
work over the network
- in +start-request, if a foreign ship is making a request that we
shouldn't send over the network, ignore it. This closes a DOS vector.
- in +duce, if we're about to make a request to a foreign ship which
they won't be able to answer, crash the event.
Combined, these fix many of the common cases of weirdness around foreign
clay requests. Notably absent is a fix for reading `%a` across the
network, which I still maintain should happen against the foreign
hoon/zuse.
fixes #4834
see also #4307
2021-04-28 23:24:15 -07:00
Philip Monk
b1091d0e98
Merge remote-tracking branch 'origin/master' into philip/naive
2021-04-28 20:30:07 -07:00
Logan Allen
dd6eeccdae
zuse: update names of +subset to +lot, +peek to +pry, remove unnecessary comments
2021-04-28 16:12:46 -05:00
Philip Monk
f2c43edc99
naive: make bitlengths explicit
...
Also switches everything to ropsten by default, including ivory pill.
Batches work on ropsten now.
Also adds +tx as a hacky development tool to create text for metamask to
sign and then turn that into a batch. A useful reference for bridge and
aggregator work.
2021-04-27 22:58:19 -07:00
Liam Fitzgerald
9b2061a824
hoon: add +succ gate
...
Adds an +succ (successor) gate. Whilst .+ exists, it is impossible to use
in a point free style and doesn't compose functionally.
2021-04-27 10:24:21 +10:00
fang
6f0a947d1b
Merge branch 'master' into release/next-sys
2021-04-26 23:13:27 +02:00
fang
5d4d7de6a6
Merge pull request #4745 from urbit/m/ford-fassig
...
clay: add /~ ford rune, as /= for directories
2021-04-26 16:19:19 +02:00
raghu
8cbacb2545
clay: allow successive upgrades
2021-04-25 14:01:55 -04:00
raghu
201c3db193
clay: finalize fuse request - update |fuse
2021-04-25 14:01:45 -04:00
raghu
9d7afd10ee
clay: change fuse request
2021-04-25 14:01:33 -04:00
fang
550dee32da
clay: +any:in in place of +lien over +tap:in
2021-04-23 23:05:11 +02:00
fang
dcdf695991
clay: insert %nest-fail into trace conditionally
...
Previously, we would stack on the ~| for every file we had previously
processed, even though we only want it in the trace for actual failures.
2021-04-23 22:56:24 +02:00
Logan Allen
ca9f6180d8
zuse: make ordered-map's +run wet
2021-04-22 10:46:48 -05:00
Logan Allen
cef4e6a726
zuse: fix +apt jet parent not found
2021-04-20 16:04:48 -05:00
Logan Allen
5b7b7e6cb7
zuse: reorder dip alphabetically
2021-04-20 15:21:07 -05:00
Logan Allen
6b0dc98952
ames: reflect update of name +traverse -> +dip
2021-04-20 15:04:28 -05:00
Logan Allen
b5a8e7a40b
zuse: change name of +ordered-map to +on and add alias, change name of +traverse to +dip as per talk with ted
2021-04-20 15:03:57 -05:00
Logan Allen
f0ba5afe1c
zuse: respond to joe's requests to remove mk-item and add fast hint for ordered-map
2021-04-20 12:56:24 -05:00
Logan Allen
9247fc247c
zuse: add +got and +has arms to +ordered-map
2021-04-20 12:11:54 -05:00
Logan Allen
ae2aefed2a
zuse: made +run allow type transform to match +by and +in
2021-04-20 12:06:03 -05:00
Logan Allen
2e302818d3
zuse: added +any to +ordered-map
2021-04-20 12:05:24 -05:00
Logan Allen
fd6f6b3bd0
zuse: added jet hints to all +ordered-map arms, reordered them alphabetically as is done in +in and +by
2021-04-20 12:04:59 -05:00
raghu
b2e1008d9a
clay: add %fuse
2021-04-19 23:46:46 -04:00
Philip Monk
66b4c3f193
Merge pull request #4677 from urbit/philip/fast-refresh
...
sys: Speed up things used in Landscape
2021-04-19 15:43:16 -07:00
Philip Monk
8870add20d
Merge pull request #4701 from urbit/ted/gall-print
...
gall: print on missing request for ack
2021-04-19 15:41:27 -07:00
Logan Allen
2f0ed36101
zuse: add +all and +run to ++ordered-map
2021-04-19 15:10:33 -05:00
fang
0570fb5b76
clay: share logic between build-file and directory
...
By factoring their shared logic out into +build-dependency, which gets
passed the relevant details about how to track the file being built in
the dependency stack.
2021-04-12 13:10:36 +02:00
fang
8b4dba28fa
clay: update dependency logic for /~ imports
...
To match recent changes to the build logic, where it only includes
top-level hoon files.
2021-04-10 16:22:52 +02:00
fang
a45179412b
clay: for /~, only build top-level files
...
This is semantically cleaner than arbitrary-depth recursion, and lets us
stop worrying about hyphenated path conflicts.
2021-04-10 02:26:32 +02:00
fang
1411e08944
clay: specify target type for /~ results
...
Clay will nest-check the results and put a homogenous map into the
subject.
2021-04-10 01:59:26 +02:00
Logan Allen
5d16911f69
eyre: use font-display:swap; in login page
2021-04-09 16:02:55 +00:00
fang
62d7281156
clay: add /~ ford rune, as /= for directories
...
Hoon files may want to import nouns from all files in a given directory.
/~ lets you do so, importing as a (map @ta *) (but with typed values).
Note the description as "directories" here, instead of "path prefix".
The behavior, as implemented, will not include /path/hoon for /~ /path,
instead only including /path/more/hoon and more deeply nested files.
This seems to be, generally, the behavior you want, for example when
importing from /app/myapp/* for /app/myapp/hoon.
Actually using the resulting map requires some manual casting, which is
not ideal. Some code style improvement work remains to be done as well.
2021-04-09 01:49:14 +02:00
fang
1ec5e5acfb
hoon: add +stap, path parser
...
And cleans up a bunch of locally hand-written implementations of it.
2021-04-07 21:14:13 +02:00
Ted Blackman
06faf0b13c
gall: print on missing request for ack
2021-03-31 14:54:28 -04:00
Philip Monk
820aee0478
zuse: strip ~ from ships in enjs
2021-03-28 01:58:21 -07:00
Philip Monk
fda5e4b361
zuse: hack enjs to speed up ship printing
...
In +en-json, the vast majority of our time is in +jesc (json string
escaping). Since ships will always be string-safe, we pretend they're
numbers to bypass the escaper. This saves about a second on initial
landscape load.
2021-03-28 00:59:08 -07:00
Philip Monk
a777567bb6
eyre: faster wain-to-octs conversion
...
Avoid allocating hundreds of thousands of cells when giving large
requests. This took the footprint of this function on initial landscape
load from 1 second to 100 ms.
2021-03-28 00:57:33 -07:00
Philip Monk
a1647a9767
clay, eyre: add profiling hints
2021-03-28 00:50:25 -07:00