Commit Graph

12887 Commits

Author SHA1 Message Date
Hunter Miller
6c221fbddc interface: updating glob to trigger properly uploaded glob 2022-03-02 18:32:45 -06:00
Jōshin
6ed6fdfc6e
Merge pull request #5575 from urbit/jo/unix-sane
vere/unix: sane(r) path handling
2022-03-02 10:00:05 -08:00
Jōshin
f1da3f12d2
vere: sort motes
just piped the whole body through !sort in vim.
2022-03-01 17:43:44 -06:00
Jōshin
7d9ac764a7
conn: document /info type 2022-03-01 17:40:53 -06:00
Jōshin
33fb7ff86a
vere: u3_pier_info (and use in conn) 2022-03-01 17:35:21 -06:00
Joe Bryan
75b64f5b3e
Merge pull request #5515 from DaneBettis/dane.bettis/stacktrace-hints
Dane.bettis/stacktrace hints
2022-03-01 17:59:40 -05:00
Joe Bryan
d3804c01c0 Merge branch 'master' into next/vere
* master: (33 commits)
  groups: updating glob and version
  interface: use single sig in NotificationText
  interface: fix subscription reconnect issues
  landscape: fixing bad glob
  landscape: updating glob and version
  interface: adds `theme-color` meta tag, removes outdated safari web app meta tag
  zuse: add missing assertions
  landscape: cache marks again
  zuse: comment clarifying sk bounds check
  bounds-check against sk=1
  zuse: style cleanup, use +rep/+end
  pill: solid, brass
  interface: refine joining error cases
  group-view: fix errored rollback
  helm: cleanup +poke-rekey to match #5522
  helm: fix |rekey to work with multikey files
  test: schnorr bounds checking
  zuse: boundary assertions for schnorr
  zuse: schnorr test cases
  zuse: schnorr address
  ...
2022-03-01 17:58:48 -05:00
Jōshin
5825cbde71
test: move _test_lily into noun_tests 2022-03-01 16:23:23 -06:00
DaneBettis
ad2e6975af changes in response to code review 2022-03-01 21:27:33 +00:00
DaneBettis
7fa53169f2 vere: add hela and nara hints 2022-03-01 21:24:11 +00:00
DaneBettis
ee46c6a0dd vere: add %nara %hela hints, add a hoon test module for hints
nara: swedish for near, provides a trace from the start of the nearest virtualization
      to the statement wrapped by the nara hint.

hela: swedish for whole, provides a trace from the start of the event
      to the statement wrapped by the hela hint.

The eventual goal is to present these traces in a way that is most salient & useful to developers
and in a way that is aesthetically pleasing as the bout hint is useful and nice looking.

For this pull request the goal is to provide the actual functionality in code that we can feel
safe and comfortable adding to the master branch. To this end, I've added a trivial set of tests for
nara and hela in pkg/arvo/tests/run/hints.hoon - they only prove that invoking these hints will not
crash the runtime, but I'm open to ideas for how I can test these hints further.
2022-03-01 21:24:11 +00:00
DaneBettis
0917f694c9 vere: add %near and %hela tracing hints 2022-03-01 21:24:11 +00:00
Joe Bryan
9dc5d7b178 jets: plug leak in (slaw %p ...) 2022-03-01 11:14:06 -05:00
tomholford
3bbfd20022 Merge branch 'master' into next/landscape 2022-02-28 15:39:17 -06:00
Hunter Miller
c4bc9b3428 groups: updating glob and version 2022-02-28 11:32:05 -06:00
tomholford
5959b73ecb interface: use single sig in NotificationText
The `ProfileOverlay` component expects a `ship` arg as a patp without the sig. This deSigs the ship value used in `NotificationText`.

This closes urbit/landscape#1376
2022-02-25 15:24:14 -06:00
Liam Fitzgerald
cbb17a2135 interface: fix subscription reconnect issues
Restores subscription reconnect issues by correctly throwing a
FatalError so that subscriptions are correctly restarted
2022-02-25 13:25:18 -06:00
tomholford
4c25bcd586 devex: peg interface node version
See: https://nodejs.org/en/about/releases/
2022-02-24 16:32:39 -06:00
Hunter Miller
ce75499ae5 Merge branch 'next/groups' 2022-02-24 10:44:08 -06:00
tomholford
47338cffc6 Merge branch 'master' into next/groups 2022-02-23 17:14:34 -06:00
Hunter Miller
2da5e9c5ca landscape: fixing bad glob 2022-02-23 13:30:56 -06:00
Hunter Miller
b4adaf2fee landscape: updating glob and version 2022-02-23 10:45:32 -06:00
ryjm
7ce7d2622d graph-store: fix scrying into archive 2022-02-22 08:07:40 -05:00
Jōshin
af1f2da161
vere: resolve /vars type
the full type output by vars is now:

    (list [cord (list [cord (list [cord @])])])

it's a mouthful, but a consistent mouthful. the first layer of the list
is the IO driver name, nam_m. the second layer is the instance name,
either %all or some driver-relevant identifier (e.g. http instance.) the
third layer is the list of labels and values.
2022-02-21 23:07:32 -08:00
Jōshin
dfd744d08a
conn: basic http server info
This actually raises difficult questions about the schema for the /vars
peel. One level of nesting makes sense to aggregate per IO driver, but
multiple levels is confusing.

The current output is extremely unprincipled: you just have to know that
there are multiple http servers and handle the output accordingly.

Options would be:

1. collapse the ambiguity to the top level, i.e. 'http-0i8080',
   'http-global', etc.
2. collapse the ambiguity to the inner level, i.e. '0i8080-connections'.
3. create a proper recursive data type that e.g. uses an $each.
3b. send some kind of schema.
5. recognize that we have entered a terrifying hall of mirrors and back
   out the entire approach of nested metrics in favor of just a bigass
   flat list of labels with values like borgmon does.
2022-02-20 00:15:37 -08:00
Jōshin
5a5518f7f0
conn: indentation 2022-02-19 00:27:59 -08:00
Jōshin
fedd2710ee
ames: comment 2022-02-19 00:02:05 -08:00
Jōshin
dc9f645e72
conn: typo 2022-02-18 23:48:07 -08:00
Jōshin
b6d101d651
conn: read http / https ports from pier
also read peels against the pier that this conn is associated with.
2022-02-18 23:44:53 -08:00
Jōshin
86eb32d933
vere: implement noun-style info in conn %vars 2022-02-18 23:28:12 -08:00
Jōshin
c291add2b3
vere: s/info/slog/ 2022-02-18 22:50:25 -08:00
Jōshin
7f53686e39
Revert "conn: provides ames metrics"
This reverts commit 80d4400d53.
2022-02-18 22:46:02 -08:00
Jōshin
a3edf17895
conn: alignment 2022-02-18 22:39:44 -08:00
Jōshin
2cbe30395e
newt: use 0x0 instead of 0x9 2022-02-18 12:36:31 -08:00
Jōshin
fde6c95b34
conn: don't send %work 2022-02-18 12:16:12 -08:00
Jōshin
c89bb66949
conn: peel is (unit), not (unit (unit)) 2022-02-18 12:06:05 -08:00
Jōshin
31d195a264
conn: hopefully clarify bail termination 2022-02-18 11:55:46 -08:00
Jōshin
22b2dd4373
conn: remove args from help list 2022-02-18 11:35:52 -08:00
Jōshin
fae633a32f
vere: per-block indentation 2022-02-18 11:32:51 -08:00
Jōshin
23d94f1828
conn: fix break style 2022-02-18 11:29:56 -08:00
Jōshin
c1a739b2d3
vere: ivory.h u3 header convention 2022-02-18 11:10:59 -08:00
Jōshin
286f77e301
Revert "conn: produce command line arguments"
This reverts commit c2bc47a399.
2022-02-18 11:09:38 -08:00
fang
98c6c77ebb
Merge branch 'next/arvo' 2022-02-17 20:32:26 +01:00
Hunter Miller
2959549594
Merge pull request #5600 from urbit/mackenzie/theme-color
interface: adds `theme-color` meta tag, removes outdated safari web app meta tag
2022-02-15 16:32:10 -06:00
Mackenzie Davidson
7b835165e0 interface: adds theme-color meta tag, removes outdated safari web app meta tag
fixes urbit/landscape#1392
2022-02-15 12:27:04 -05:00
Jōshin
4e312379ec
conn: remove cram 2022-02-11 22:24:55 -08:00
Jōshin
c8f3dd65af
conn: remove unused inn_u 2022-02-11 00:15:43 -08:00
Jōshin
69c29e5b31
conn: u3i_chub in ames stats 2022-02-11 00:00:47 -08:00
Jōshin
171ee877e4
Merge branch 'next/vere' into jo/khan-c3 2022-02-10 23:52:17 -08:00
Jōshin
ee8a21e166
conn: more docs cleanup, describe %ovum updates 2022-02-10 23:32:21 -08:00
Jōshin
f1b5e6a0dc
conn: cleanup docs, document %peel 2022-02-10 23:21:30 -08:00
Jōshin
80d4400d53
conn: provides ames metrics 2022-02-10 23:14:19 -08:00
Jōshin
e66345e04d
Merge pull request #5510 from mrdomino/jo/secp-c3
vere: schnorr signature jets
2022-02-09 13:01:21 -08:00
Jōshin
ed0c66a43c
vere: comments around fs wrappers and unix.c 2022-02-09 14:56:10 -06:00
Jōshin
ca0a861c5e
zuse: add missing assertions 2022-02-09 14:14:12 -06:00
Liam Fitzgerald
981bcfdecc landscape: cache marks again
Fixes urbit/urbit#5590
2022-02-09 10:52:04 -06:00
Jōshin
3124d0815a
conn: cleanup peel response 2022-02-08 15:16:44 -06:00
Jōshin
54bc16626c
Merge branch 'next/vere' into jo/unix-sane 2022-02-08 14:29:02 -06:00
rabsef-bicrym
22a69d38f4
%depth-first has pattern-matching issue
support a `%depth-first` scry constructed as follows `.^(* %gx /=graph-store=/graph/<ship of resource>/<name of resource>/depth-first/<count>/<start>/graph-update-3)`
2022-02-07 17:49:11 -08:00
Jōshin
d07c063c44
vere: remove unused declarations from vere.h 2022-02-05 22:04:11 -06:00
Jōshin
0d0ac4edbf
conn: peel: /help, /mass stub, /vars stub
Also make /live return u3K.pir_u->liv_o.
2022-02-05 22:03:00 -06:00
Jōshin
259c7e535c
vere: remove log lines 2022-02-05 19:57:59 -06:00
Jōshin
c2bc47a399
conn: produce command line arguments
Involves saving a copy of the arguments in _main_getopt.
2022-02-05 18:53:21 -06:00
Jōshin
c6a147257a
conn: extract %peel response 2022-02-05 15:13:42 -06:00
Jōshin
3e3f9c553c
conn: add port request
Also make peel requests respond with $unit.
2022-02-05 09:06:26 -06:00
Jōshin
f47b77faae
vere: mv ivory header out of ur 2022-02-05 09:03:50 -06:00
Philip Monk
66fd3073d7
Merge pull request #5568 from urbit/m/galaxy-dawn
vere: do not use eth-mainnet for galaxy booting
2022-02-03 17:28:50 -07:00
Jōshin
64fcd685af
zuse: comment clarifying sk bounds check 2022-02-03 13:52:09 -06:00
Jōshin
330c433f27
jets: remove sosi/sove testing flags
N.B. `tot` appears to not be used anywhere currently, so I removed it
from `sosi`.
2022-02-03 13:45:50 -06:00
Jōshin
4cef7dc38b
bounds-check against sk=1
+sign:schnorr crashes on `=(0 sk)`, so the bounds checking code is not
exercised for sk=0. It also crashes on `(gte sk n.domain.c)`, which is
redundant with the size check on sk, so we remove that.
2022-02-03 13:21:21 -06:00
Jōshin
f07f759253
zuse: style cleanup, use +rep/+end 2022-02-03 12:54:27 -06:00
Liam Fitzgerald
f3da5488ce Merge remote-tracking branch 'origin/next/groups' into lf/no-perms-rejoin 2022-02-03 11:12:43 -06:00
Jōshin
822eb6ea08
Merge branch 'next/arvo' into jo/secp-arvo 2022-02-02 20:34:11 -06:00
Jōshin
08ca0cf0c7
jets: mark schnorr jets non-perfect
also marks %sosi as non-total, since it conceivably could punt.
2022-02-02 20:32:46 -06:00
Jōshin
8d3f19aba9
Merge branch 'next/vere' into jo/secp-c3 2022-02-02 17:57:51 -06:00
Jōshin
74b71f35cc
Merge branch 'next/vere' into jo/unix-sane 2022-02-02 12:27:25 -06:00
fang
5588953d84
Merge branch 'next/vere' into m/--vere-args 2022-02-02 19:26:17 +01:00
Jōshin
bd67814a95
Merge branch 'next/vere' into jo/khan-c3 2022-02-02 12:24:55 -06:00
Jōshin
f34f6a91e9
conn: comment format 2022-02-02 12:24:36 -06:00
Jōshin
997544eb11
conn: describe +fyrd interface to %khan 2022-02-02 12:24:36 -06:00
Joe Bryan
1736bae519
Merge pull request #5572 from urbit/jb/dirty-loom
u3: fix snapshot corruption by preemptively dirtying the loom
2022-02-02 13:01:52 -05:00
Jōshin
7fcdf6ef54
noun: go ahead and enforce that invariant (#5579)
* noun: go ahead and enforce that invariant

* mingw: sysconf compat wrapper
2022-02-02 08:06:05 -06:00
Joe Bryan
60fc5c1389 u3: refines snapshot system docs 2022-02-01 20:11:40 -05:00
Jōshin
1183634501
unix: knot mapping that is not a valid @ta
'~.' was a pun with the @ta encoding, which could cause people to get
confused about how the mapping actually worked.

I had previusly wanted the escape sequence to be a valid @ta, since I
had wanted to check that path components were (sane %ta) prior to doing
$knot conversion. However @joemfb mentioned that it was desirable to
have it not be a valid @ta so that if someone messed up the encoding in
the future, the paths would be detectably wrong.

This necessitates calling _unix_knot_to_string on unsanitized input,
which means we can no longer assume that it won't contain non-(sane %ta)
characters, which means we can no longer assert that '\\' is not in the
string on Linux.

Also added a seemingly forgotten null byte to _unix_knot_to_string.
2022-02-01 12:56:50 -06:00
Jōshin
7b6e89fc15
unix: comment with suggestions for future 2022-01-31 23:07:13 -06:00
Jōshin
4a74b9b13f
unix: fix regression in _unix_scan_mount_point
We previously checked for '#' at strlen(out_u->d_name) - 1 here. So just
go ahead and do (sane %ta) on the whole out_u->d_name.
2022-01-31 20:52:42 -06:00
Jōshin
46a1139e70
main: repath cleanup 2022-01-31 17:26:07 -06:00
Jōshin
5591752f9c
main: support files in cwd 2022-01-31 17:02:18 -06:00
Jōshin
0375646a93
unix: cane before root removal 2022-01-31 16:34:09 -06:00
Liam Fitzgerald
b14dc76992 interface: refine joining error cases 2022-01-31 16:21:27 -06:00
Liam Fitzgerald
9540afecad group-view: fix errored rollback 2022-01-31 16:20:57 -06:00
Jōshin
6c5d7133f1
unix: fix compile warning 2022-01-31 14:25:22 -06:00
Jōshin
eaf47d95c5
unix: test cases 2022-01-31 14:23:39 -06:00
Jōshin
3f1c526d2e
main: repath scry path 2022-01-31 14:19:27 -06:00
Jōshin
8191955eff
unix: reorder checks 2022-01-31 14:18:22 -06:00
Jōshin
c83d9b9c1e
unix: hard-code %put base directory 2022-01-31 14:03:34 -06:00
Jōshin
2b05fa2ebe
unix: use $ for types 2022-01-31 13:53:22 -06:00
Jōshin
9172b3dfe8
unix: c3_ 2022-01-31 13:52:44 -06:00
Jōshin
6b5361d7df
unix: code review feedback 2022-01-31 13:49:51 -06:00
Jōshin
ca1ed3d7a1
vere: remove 'new' from header comments
'New' is relative; some of these subsystems were 'new' in 2015.
2022-01-31 13:21:50 -06:00
Jōshin
b8277be5b2
vere: remove walk, move save to unix 2022-01-31 13:19:32 -06:00
Jōshin
7fc9db8c9a
unix: reformat comments 2022-01-31 12:28:45 -06:00
Jōshin
443315f401
vere: rename u3_unix_{safe,cane} 2022-01-31 12:25:42 -06:00
Jōshin
60f1a44910
unix: remove extra layer of conditional 2022-01-31 11:14:54 -06:00
Jōshin
0d9264ea1c
unix: don't require that string is non-empty
Fixes an assert failure if you try to commit a file named `~.`.
2022-01-31 11:13:57 -06:00
Jōshin
2a5baa9e3f
main: simplify _main_repath 2022-01-31 10:59:23 -06:00
Jōshin
b5a49a159f
unix: use (sane %ta) out of arvo 2022-01-31 10:43:56 -06:00
Jōshin
19002c72dd
compat: mingw realpath 2022-01-31 10:24:11 -06:00
Jōshin
c041080729
unix: bugfixes
- Don't test for '\\' in u3_unix_safe. Doing otherwise was crashing vere
  when unmounting a mountpoint that had come to contain a file with '\\'
  in its path. This might mean you can do bad things on Windows if other
  checks fail.

- Ignore any files whose names do not pass `(sane %ta)` when scanning
  directories. (This reimplements `(sane %ta)` in C. Perhaps it should
  instead call `(sane %ta)`.)

- Use '~.' rather than '~' for the escape. We ignore files that end in
  '~', probably for vim backup-file reasons.

- Add a _unix_string_to_knot missed in the prior conversion.
2022-01-31 10:00:35 -06:00
Jōshin
00f7407a5e
unix: escape overloaded paths
unix cannot represent the file with empty name, and it has special
mappings for '.' and '..'. as these three are all valid arvo `+knot`s,
we need to escape them if we come across them.

the method we use to escape is: if we encounter any of those three
`+knot`s, or any `+knot` starting with '~', we prepend its filename with
a '~'. and when going from filename to `+knot`, we do the reverse; i.e.
we ignore a '~' if it is the first character of a filename.

the current implementation just crashes if it encounters a `+knot`
containing '/' or '\\', neither of which are valid under the current
implementation of `@ta` (which only accepts numbers, lowercase, '-',
'~', '.', and '_'.)

it also crashes if it encounters a file containing '\\'. something else
should happen here; most likely vere should just ignore the file.
2022-01-31 10:00:35 -06:00
Jōshin
d4b4504ae4
vere: move lockfile from unix to disk 2022-01-30 19:26:45 -06:00
Jōshin
a4b40d104c
noun: noop, C 'types' being what they are... 2022-01-30 13:09:20 -06:00
Jōshin
0248f57f0b
unix: comment format 2022-01-29 23:24:12 -06:00
Jōshin
3d36582fda
unix: whitespace cleanup 2022-01-29 23:24:12 -06:00
Jōshin
c8f8ced249
main: canonicalize paths from command line 2022-01-29 23:24:11 -06:00
Jōshin
a74d08f489
vere: extra fs calls 2022-01-29 23:24:11 -06:00
Jōshin
741e1d3e8b
vere: replace fs calls with asserting counterparts 2022-01-29 23:24:11 -06:00
Jōshin
d2fc42c3ea
unix: asserting wrappers around unix fs calls 2022-01-29 23:24:11 -06:00
Jōshin
2e53930d5a
Merge branch 'master' into next/vere 2022-01-28 21:23:00 -08:00
Hunter Miller
874d380ad5 groups: updating version 2022-01-28 20:30:13 -06:00
Hunter Miller
dc188d6059 groups: fixing bad glob 2022-01-28 20:29:34 -06:00
Hunter Miller
de747b343f join: don't show modal if no kind 2022-01-28 19:51:35 -06:00
Hunter Miller
509bd2b11a groups: updating glob 2022-01-28 19:39:48 -06:00
Hunter Miller
0d93cf9cff join: handling kind safer and join links more consistent 2022-01-28 19:33:42 -06:00
drbeefsupreme
f67962b803
helm: cleanup +poke-rekey to match #5522 2022-01-28 12:23:36 -05:00
Peter McEvoy
c1441e9cd0 u3: document page tracking subtleties when taking snapshot 2022-01-27 14:05:29 -08:00
Joe Bryan
4087699172 u3: fix snapshot corruption by preemptively dirtying the loom 2022-01-27 14:51:25 -05:00
Hunter Miller
c07bcd6e03 Merge branch 'next/groups' 2022-01-27 10:25:14 -06:00
Hunter Miller
88e956df01 Merge branch 'next/landscape' 2022-01-27 10:24:04 -06:00
fang
d7d15115ee
Merge branch 'next/webterm' 2022-01-27 00:30:17 +01:00
fang
192f2cd19d
webterm: v1.0.1 2022-01-27 00:29:24 +01:00
drbeefsupreme
b5f299c02d
helm: fix |rekey to work with multikey files 2022-01-26 16:29:14 -05:00
Philip Monk
34bcd2ffcd
Merge pull request #5495 from urbit/m/whos-who
helm: bind /who.json
2022-01-26 12:47:47 -07:00
Hunter Miller
79f0fd98dd chat-resource: fixing admin detection 2022-01-26 10:29:04 -06:00
fang
5928ca8747
vere: do not use mainnet-proxy for galaxy booting
Fallback to the default happens in dawn.c, which correctly points to
roller.urbit.org, an endpoint that matches its request/response logic.
Continuing to use an Ethereum endpoint instead of an L2 one will just result
in 400s, since they don't speak the same language.
2022-01-26 17:17:37 +01:00
Jōshin
507ab561aa
conn: don't send roc 2022-01-25 16:06:30 -08:00
Hunter Miller
5426f2aff8 Merge branch 'next/groups' into hm/fix-group-dm-initial-load 2022-01-25 11:23:30 -06:00
Jōshin
aebce8dbf5
Merge branch 'next/vere' into jo/khan-c3 2022-01-25 08:50:45 -08:00
Hunter Miller
86d9aba7fb garden,landscape: updating globs and versions 2022-01-24 16:14:26 -06:00
Liam Fitzgerald
14ca87c43c dm-hook: mutate screened before giving fact
Fixes an issue where the subscription update would contain stale data
2022-01-24 15:18:52 -06:00
fang
a51ac14833
webterm: improve readability of char under cursor
Make sure it's the opposite of the cursor color.
2022-01-24 14:33:25 +01:00
Jōshin
13bdfe26aa
build: arm64 architecture
This seems to be what nix settled on.

(As of now, I can build urbit on M1 Mac with stock nix. nix-build -A
urbit hangs for some reason, but nix-shell ./configure && make works.)
2022-01-23 21:22:13 -08:00
Jōshin
924d8e0628
conn: comments 2022-01-22 02:33:26 +00:00
Liam Fitzgerald
c5c7946e5a
Merge pull request #5553 from urbit/la/proxy-sigs
graph-push-hook: proxy add and remove signatures across the network
2022-01-20 16:52:22 -06:00
Logan Allen
bb953945f8 graph-push-hook: proxy add and remove signatures across the network 2022-01-20 21:58:00 +00:00
yosoyubik
0c9fc76b93 eth-watcher: fix zoom-margin to account for reorgs
The previous value—used for testing—didn't consider
block reorgs, which meant that if we zoom to the latest
block that has no transactions, but that gets later replaced
by a 1-block reorg that does have a transaction, we'll miss it,
making our Azimuth state incomplete.

To fix it, we rewind the Azimuth state to the contents of the snapshot,
and then start retrieving logs from the latest one we have.
2022-01-19 17:41:05 +01:00
Hunter Miller
09f71e504b dms: don't load if pending 2022-01-18 14:38:45 -06:00
yosoyubik
3d943ec201 ames: ignore missing peer-state on-publ-sponsor 2022-01-18 20:34:32 +01:00
Jōshin
86fee3c104
conn: merge lines 2022-01-15 08:13:50 +00:00
Jōshin
c89eb11f57
conn: various fixes and cleanups 2022-01-15 08:00:59 +00:00