Commit Graph

498 Commits

Author SHA1 Message Date
yosoyubik
91435a92ca ames: don't drop events with old wires
Previously we were dropping events that used old
wires that lacked a rift in them. This seems a
bad behavior because we don't want to destroy a
flow that has not been processed by both ends.

Note: pending a fix to test-old-ames-wire
2022-04-22 12:26:14 +02:00
yosoyubik
60cc44e961 ames: fix cached state in larval upgrade 2022-04-22 12:26:02 +02:00
lukechampine
2f7a5964b3 tests: add message flow tests for comets 2022-04-02 22:38:59 -04:00
ryjm
155729ec8b %home -> %base
Mostly cosmetic, but also fixes `language-server` and parts of sundry
neglected components (the nix build for solid pills, aqua, gaze exports,
+help)
2022-03-06 11:55:55 -05:00
Jōshin
d06d8044fd
test: confirm different tids on same eny 2022-03-02 17:30:56 -06:00
Jōshin
1ef958ea25
khan: use +en-beam / +de-beam, wide form 2022-03-02 15:07:38 -06:00
Jōshin
e4b6fe6ad3
test: 1162 2022-03-02 13:25:10 -06:00
Jōshin
340f4d5b6c
khan: %fard/%arow use $cage, not $vase
Threads should eventually take and produce $cage instead of $vase. Since
%khan is likely to be used by third parties, we write to the eventual
intended API. We ignore the mark on the input $cage (it is safe to
always specify %noun), and we always use %noun as the output mark.

%fyrd now makes more sense. It was previously discarding the type of the
output %arow and re-encoding the raw noun as a vase of the output mark;
it is now performing mark conversion from the mark of the output $cage
to the originally requested output mark.
2022-03-02 13:07:52 -06:00
DaneBettis
ad2e6975af changes in response to code review 2022-03-01 21:27:33 +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
Jōshin
224a363780
test: fix failure introduced by random tids 2022-02-25 11:08:09 -08:00
Jōshin
0e185b66ed
test: fix 2022-02-15 22:32:43 -08:00
Jōshin
6aa72069e3
arvo: introduces $crag
Also strips out `$` from khan top-level comment.

There are arguments for keeping $crag in lull, and on the other side for
moving $cast to arvo. This seemed like the most reasonable approach.
2022-02-14 12:46:31 -06:00
Jōshin
6c443191a7
khan: name $cast type 2022-02-13 21:13:48 -06:00
Jōshin
044e9015af
Merge branch 'next/arvo' into jo/khan
Conflicts:
	bin/brass.pill
	bin/solid.pill

Resolved by regenerating pills.
2022-02-13 21:00:10 -06:00
Jōshin
e4f5438e88
test: tlv 2022-02-13 20:37:34 -06:00
Jōshin
22ef135323
test: missing mark cases, further cleanup 2022-02-13 20:30:36 -06:00
Jōshin
a1621ed2d4
test: cleanup 2022-02-13 19:58:36 -06:00
Jōshin
76911c6784
test: cleanup 2022-02-13 19:56:29 -06:00
Jōshin
27b6b4f706
test: %fyrd fail case 2022-02-13 13:09:39 -08:00
Jōshin
286c909283
test: refactor, strip out inner %fard call 2022-02-13 12:54:21 -08:00
Jōshin
18e2d751a5
test: remaining %fard failures 2022-02-13 12:51:43 -08:00
Jōshin
5750f5f0f6
test: %khan full run, %fyrd 2022-02-13 12:02:13 -08:00
Jōshin
1d487a758b
test: full run, happy path 2022-02-13 07:33:03 -08:00
Jōshin
c0423adea6
khan: parameterized types, nested implementation
%fyrd is now implemented in terms of %fard, and likewise %avow in terms
of %arow. State is tracked via wire rather than in a global map.

Unit tests adjusted to match.
2022-02-11 21:58:09 -08:00
Liam Fitzgerald
b813580b93 zuse: add ++ns:dejs:format
Adds a signed integer JSON parser, i.e. a gate of type $-(json @s)
2022-02-09 13:16:24 -06:00
Jōshin
5ff5082a5d
khan: docs, lift arg vase into (unit) 2022-02-08 12:03:00 -06:00
Jōshin
34fd7f5adf
test: wip full-run test 2022-02-08 08:44:55 -06:00
Jōshin
776604bf74
test: rewrite khan start-args unit test 2022-02-07 17:51:05 -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
Jōshin
ccf9110f7f
test: khan test cleanup
;;(vase ...) does a nest-check of the type of the kernel. This is
undesirable, so we instead run everything through +slum and cast the
result to +tang.
2022-01-28 09:05:37 -08:00
Jōshin
72981203c8
khan: PR feedback, wip tests 2022-01-27 22:20:31 -08:00
Jōshin
ce05e562ed
test: schnorr bounds checking 2022-01-09 05:49:47 +00:00
Jōshin
4591fa272e
zuse: schnorr test cases
These are from:
<https://github.com/bitcoin/bips/blob/master/bip-0340/test-vectors.csv>
2022-01-09 05:28:22 +00:00
Philip Monk
a2a89d3532
Merge remote-tracking branch 'origin/next/arvo' into philip/roller 2021-11-16 13:58:57 -08:00
fang
d379a38486
zuse: explicitly +cut in +cite:title, add tests 2021-11-12 13:11:40 +01:00
Philip Monk
d9d7f69f26
test: make lib/vere/dawn not crash 2021-11-10 01:25:08 -08:00
yosoyubik
27576e272b Merge remote-tracking branch 'origin/philip/naive' into naive/roller 2021-10-31 15:14:15 +01:00
fang
0ec3d5111d
Merge branch 'master' into naive/roller 2021-10-26 20:46:32 +02:00
fang
36cd69b6d0
Merge tag 'urbit-os-v2.100' into naive/roller 2021-10-26 17:08:03 +02:00
fang
5131d3165d
Merge branch 'release/next-userspace' into m/eip-1559-plus 2021-10-08 20:42:37 +04:00
Philip Monk
7b528e823f
naive: final touch-up 2021-10-05 22:20:35 -05:00
Joe Bryan
9a1b9b4450 Merge branch 'master' into release/next-vere
* master: (595 commits)
  grid: updating glob
  landscape: updating glob
  graph-store: clean up merge artefact
  interface: reduce %all-stats correctly
  docket: correctly en-vase a docket definition
  kiln: don't +mean the tang noun alongside the tang
  hood: scry for list of desks with empty desk name
  hood: remove needless weld
  hood: report %kids desk hash in +report-vats
  landscape: fix joining indicator in statusbar
  interface: reduce %saw-place correctly
  app-prefs: fixing logic around enabled
  pull-hook: add nice flag to kick poke
  graph-pull-hook: renegotiate subscriptions
  graph-store: Handle missing update-logs gracefully in scries
  arvo: update jamfiles
  landscape: correctly freeze graph-update-2
  jael: on rekey, update life if moon
  tmp/ jamfiles
  btc: updating glob
  ...
2021-10-05 11:33:08 -04:00
yosoyubik
f243500068 Merge remote-tracking branch 'origin/philip/naive' into naive/roller 2021-09-27 16:29:12 +02:00
Fang
7d3fc3d9b1
eyre: update tests wrt recent changes 2021-09-25 17:16:39 +04:00
Philip Monk
32f07f4c3e
naive: add block-number to input
Unused, but will be used to trigger all upgrades
2021-09-23 12:24:20 -05:00
Fang
4692c10fe2
ethereum: add support for eip-1559 transactions
Adds a new transaction type and signing method for eip-1559-style
transactions.

Includes a $typed-transactions type which can support any number of
eip-2718-style typed transactions.
2021-09-18 20:41:33 +02:00
Fang
3c5fd9fda6
ethereum: ensure "to" value is 20 bytes wide
Previously, this would measure as <20 bytes for addresses with leading
zeroes. This resulted in transactions with unexpected behavior.
For example, sending ETH to the zero address would create a contract
instead.

Here we switch to using +encode:rlp directly and indicate a width of
20 bytes for the "to" field.
2021-09-18 20:41:26 +02:00
Fang
0c1e999cdb
ethereum: fix bug with rlp encoding of zero bytes
Null bytes in lists were getting eaten during concatenation. To avoid
this, we track encoded item widths (which are always 1 or higher) and
+can them all together.

This likely did not affect any of the other Ethereum code, considering
it nearly always measures atoms, and the null byte would be seen as
no bytes in that case.
2021-09-18 20:41:14 +02:00
Liam Fitzgerald
143a8e08e6 various: fix dependencies & tests 2021-09-17 14:51:19 +10:00
Joe Bryan
bb53d5a8ba naive: splits large batch test into parsing and full tx handling 2021-09-15 10:36:56 -04:00
Philip Monk
312d27169b
naive: specific large batch test 2021-09-13 14:24:00 -05:00
Philip Monk
94c2223bf8
naive: style 2021-09-13 14:23:21 -05:00
drbeefsupreme
22d19f29cc
naive: remove unnecessary variable from test 2021-09-13 14:42:59 -04:00
drbeefsupreme
08e4a5afce
naive: large batch test is an actual batch 2021-09-13 14:40:26 -04:00
drbeefsupreme
b808f927d2
naive: large batch test 2021-09-13 12:56:53 -04:00
Joe Bryan
1a8935ffe6
Merge pull request #5171 from urbit/jb/urcrypt-merge
urcrypt: merge
2021-09-09 07:23:48 -07:00
drbeefsupreme
f9f82eedfd
naive: ledger signature tests 2021-09-08 14:52:24 -04:00
drbeefsupreme
ee260694fa
naive: test trezor signature 2021-09-01 16:54:52 -04:00
drbeefsupreme
e1bbcd01e3
naive: fix metamask signature test 2021-09-01 16:38:01 -04:00
drbeefsupreme
419400fd9c
naive: 80 char width trimming 2021-08-24 18:18:48 -04:00
drbeefsupreme
996743b830
naive: cleanup +test-rut 2021-08-24 17:01:09 -04:00
drbeefsupreme
44e0d65740
naive: add %spawn dominion galaxy tests 2021-08-24 15:28:40 -04:00
drbeefsupreme
e03a6d7055
naive: fix rank-filter 2021-08-24 15:06:08 -04:00
yosoyubik
3774abba73 Merge remote-tracking branch 'origin/philip/naive' into naive/roller 2021-08-22 18:27:33 +02:00
Philip Monk
38c0452203
naive: fixup test nonces 2021-08-20 10:36:04 -07:00
Joe Bryan
c28c3e040b test: removes obsolete scrypt test comment 2021-08-19 22:15:20 -04:00
drbeefsupreme
45daca57ad
Merge branch 'philip/naive' into poprox/naive-tests 2021-08-19 20:56:23 -04:00
Philip Monk
16306dc48c
naive: speed up tests by pinning initial state 2021-08-19 17:33:28 -07:00
drbeefsupreme
ee71d19000
naive: fix broken test nonces 2021-08-19 20:32:19 -04:00
Joe Bryan
0b19f51a6b Merge remote-tracking branch 'frodwith/urcrypt' into jb/urcrypt-prep
* frodwith/urcrypt: (75 commits)
  move libaes_siv to deps
  fix typo in urcrypt.h
  libaes_siv now using tip of dfoxfranke master
  check for recovery header presence in configure, put -O3 in flags, move pc to distcleanfiles
  clean generated pkg-config file
  update urbit's configure to use a liburcrypt version
  add a versioning scheme to urcrypt
  remove scrypt from urbit build (in urcrypt now)
  move the rest of the scrypt jets to urcrypt, enable them, and correct the hoon test to match the source rfc.
  scr-pbk->urcrypt
  start scrypt porting
  Squashed 'pkg/urcrypt/scrypt/' content from commit a402f4116
  finish porting secp jets to urcrypt
  pkg-config support for urcrypt, update urbit build
  cosmetic configure things
  require shared ssl when building a shared urcrypt
  remove some old files
  add autogen.sh
  use srcdir in -I to support out of tree builds
  whitespace and symbol cleanup
  ...
2021-08-19 20:03:19 -04:00
Philip Monk
bfd7550c98
naive: migrate tests to ordered map 2021-08-19 16:47:28 -07:00
Philip Monk
7f7e033004
Revert "Revert "Merge naive/aggregator into poprox/naive-tests""
This reverts commit 2f49dab586.
2021-08-19 16:09:28 -07:00
drbeefsupreme
c1106bf3f0
naive: cleanup test prep area 2021-08-19 18:11:14 -04:00
drbeefsupreme
175b363412
naive: add transfer proxy tests to +test-rut 2021-08-19 14:07:04 -04:00
drbeefsupreme
37ca59e96d
naive: add another case to spawn proxy test 2021-08-17 15:58:28 -04:00
drbeefsupreme
e834033daa
naive: comment out unneeded test 2021-08-17 15:41:54 -04:00
drbeefsupreme
febe814cce
naive: fully functional test-rut complete 2021-08-17 15:08:33 -04:00
drbeefsupreme
c11cd709d0
naive: fix test-rut nonce calculation 2021-08-17 13:37:43 -04:00
drbeefsupreme
c8b62d8d2c
naive: expand approval-for-all test 2021-08-17 13:30:04 -04:00
drbeefsupreme
2f49dab586
Revert "Merge naive/aggregator into poprox/naive-tests"
This reverts commit 8a5a7754f5, reversing
changes made to e21754f9af.
2021-08-17 13:23:40 -04:00
drbeefsupreme
8a5a7754f5
Merge naive/aggregator into poprox/naive-tests 2021-08-16 15:14:58 -04:00
drbeefsupreme
fbbbc834b7 naive: changed-dns test 2021-08-16 13:05:30 +02:00
drbeefsupreme
3f96038c79 naive: batch proxy transfer test 2021-08-16 13:05:30 +02:00
drbeefsupreme
ce9e63f2ae naive: approval-for-all test 2021-08-16 13:05:30 +02:00
drbeefsupreme
428cd34d41 naive: batch and changed-dns tests 2021-08-16 13:05:30 +02:00
drbeefsupreme
7358eaf748 naive: fix batch concatenation 2021-08-16 13:05:29 +02:00
drbeefsupreme
f4aad28097 naive: batches with tx with trailing zeroes fail 2021-08-16 13:05:29 +02:00
drbeefsupreme
2f6e60aa1c naive: batch test creator implemented 2021-08-16 13:05:29 +02:00
drbeefsupreme
ac21fecf89 naive: l2 batch maker for tests 2021-08-16 13:05:29 +02:00
drbeefsupreme
97d2a591ec naive: fuzz and padding tests 2021-08-16 13:05:29 +02:00
drbeefsupreme
4608e4d5f6 naive: remaining fuzz tests 2021-08-16 13:05:29 +02:00
drbeefsupreme
94c75985a6 naive: fuzz test 2021-08-16 13:05:28 +02:00
drbeefsupreme
e21754f9af
naive: changed-dns test 2021-08-13 13:29:55 -04:00
drbeefsupreme
dfac952c54
naive: batch proxy transfer test 2021-08-12 16:50:20 -04:00
drbeefsupreme
e6dd731b19
naive: approval-for-all test 2021-08-12 16:23:48 -04:00
drbeefsupreme
fa6935e08a
naive: batch and changed-dns tests 2021-08-12 16:06:39 -04:00
drbeefsupreme
cd0935e209
naive: fix batch concatenation 2021-08-12 10:27:19 -04:00
drbeefsupreme
dac89b0e3b
naive: batches with tx with trailing zeroes fail 2021-08-11 12:50:21 -04:00