Commit Graph

440 Commits

Author SHA1 Message Date
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
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
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