Commit Graph

2970 Commits

Author SHA1 Message Date
Philip Monk
6f46e483d0 Merge remote-tracking branch 'origin/yu/azimuth-kick' into philip/tomb 2022-05-14 19:27:45 -07:00
yosoyubik
7fc5177602 azimuth: restart %eth-watcher if not running 2022-05-12 07:14:26 +02:00
Philip Monk
8e2720cd0e Merge remote-tracking branch 'origin/yu/azimuth-kick' into philip/tomb 2022-05-09 22:36:28 -07:00
Philip Monk
c76214b226 Merge remote-tracking branch 'origin/next/arvo' into philip/tomb 2022-05-09 22:36:19 -07:00
yosoyubik
da4de1579d eth-watcher: discard future pend-logs in watchdog
If there were pending-logs in an existing watchdog that was not fully
restarted, and the number of the starting block is newer than the first
in pending, when starting a new thread, those logs will be carried over
to the new thread, which will then be re-downloaded and will fail to be
verified in /lib/naive
2022-05-08 09:43:30 +02:00
yosoyubik
79d0129401 azimuth: use %kick poke to restart subscriptions 2022-05-07 16:27:04 +02:00
Philip Monk
591bdf458c Merge branch 'next/arvo' into philip/tomb 2022-05-04 00:45:57 -07:00
Philip Monk
71d4f72ce1
Merge pull request #5647 from urbit/roller/batch-split
roller: add batch-trimming functionality
2022-05-03 14:34:12 -07:00
yosoyubik
79af26fc3c azimuth: revert azimuth change in 60cc44e 2022-04-26 18:36:48 +02:00
Philip Monk
ac6e793aa2 arvo: rename +de to +of 2022-04-22 17:55:42 -07:00
yosoyubik
60cc44e961 ames: fix cached state in larval upgrade 2022-04-22 12:26:02 +02:00
yosoyubik
1b01455fe5 ames: fix dangling-bone error 2022-04-22 12:25:55 +02:00
fang
4415aa781e
Merge branch 'next/arvo' into m/aqua-revival 2022-04-20 18:47:59 +02:00
yosoyubik
7bf759adb0 roller: fix parsing nonces with dot separator 2022-04-15 15:27:08 +02:00
yosoyubik
2eec24ee27 roller: make output less loud 2022-04-15 13:19:10 +02:00
Pyry Kovanen
148c7880da
eth-watcher: remove obsolete zoom-margin handling 2022-04-11 22:15:14 +03:00
drbeefsupreme
24a175a803
dojo: flop order of topics for dy-inspect
you had to search for core:arm instead of arm:core before
2022-04-07 13:05:15 -04:00
fang
132592e32e
Merge pull request #5695 from pkova/master
eth-watcher: implement optional to-block parameter
2022-04-07 16:15:21 +02:00
fang
c4f3825f3a
aqua: revert erroneously committed changes
These changes, part of optimization experiments, had snuck in somewhere.
2022-04-07 14:39:52 +02:00
pkova
32ac7434f4 eth-watcher: implement optional to-block parameter 2022-04-07 14:24:28 +03:00
drbeefsupreme
7a94319af3
dojo, doccords: dprint library can take list term
this allows you to search for foo:bar instead of just foo
2022-04-06 17:37:55 -04:00
drbeefsupreme
33b2761b39
doccords, dojo: move flop print-arm -> dy-inspect
this looks more sensible
2022-04-06 15:50:23 -04:00
drbeefsupreme
877fe0059e
dojo: add command to lookup doccords
syntax: `# foo` to look up foo. this is not the final form - it does not
support `# foo:bar` yet. the dprint library needs some changes first.
2022-04-06 14:02:25 -04:00
fang
9bbf6dfad0
aqua: disable cache loading for real ships for now
It breaks some of the azimuth-related tests in a seemingly inconsistent
way, and I cannot find a way to make it work.
2022-04-06 14:52:21 +02:00
fang
fa1a04ea6e
aqua: support using real moons
Only "shortmoons" though, due to some ames lane size limitation which
makes encoding longer ships difficult.

Notably the -ph-moon-az test does not pass, the moon cannot talk to a
non-sponsor galaxy.
2022-04-06 14:51:02 +02:00
Philip Monk
4131821b4f clay: unify all trie implementations
We had trie operations independently implemented in +de in arvo,
+an:cloy in zuse, +zu in clay, lib/trie, and app/spider.  This unifies
them all into +de in arvo, aggregating the used operations.
2022-04-06 00:19:38 -07:00
Philip Monk
73180a0d94
Merge pull request #5670 from urbit/jon/thread-marks
spider: fix child threads
2022-04-01 16:48:15 -07:00
fang
69c3976460
aqua: remove todo list note
Was committed accidentally.
2022-03-31 23:39:20 +02:00
fang
30be6ef9c8
aqua: stub out azimuth snapshot in pills
It would interfere with aqua's simulation of azimuth.
2022-03-30 17:38:09 +02:00
fang
3d639f325e
aqua: cache real ships as well
And inject their latest keys as soon as we pull them from cache. This
way, we avoid having to do the whole boot sequence again just for a
modified dawn event.
2022-03-30 16:38:48 +02:00
fang
2f3527921a
aqua: increase azimuth refresh rate for real ships
This reduces the time it takes to run tests that wait on azimuth events.
For example, -ph-breach-hi runs ~30% faster.
2022-03-30 13:59:10 +02:00
fang
dad82436be
aqua: support injecting arbitrary tasks 2022-03-30 12:51:46 +02:00
fang
c55975e8de
azimuth: allow configuring of the refresh rate
Pulls a constant out of the code, into state, and adds a poke for
changing it.
2022-03-30 12:19:57 +02:00
drbeefsupreme
656a86479f
spider: fix child threads
addresses #5442 by adding %thread-done and %thread-fail marks. also
fixes await-thread:strandio and removes some blank lines from
app/spider.hoon

%thread-done loses the type of the result, so you'll need to use ;; to
get it back. the real way to fix this is to have threads produce cages
instead of vases
2022-03-25 18:01:48 -04:00
fang
8da6c20f70
herm: stop sending %hail on-connect
Client will probably want to send a %blew first anyway. By not doing any
screen refreshed in herm, we avoid doing unnecessary redraws on-connect.
2022-03-25 15:08:50 +01:00
fang
3259f1f588
aqua: fix most tests
Small touch-ups to simulation behavior and ph tests. Most of them pass
now, even if they're still really slow at times.

The breach ones don't pass, but also complain of dangling bone, so might
work once the fix for that is in.
2022-03-23 22:19:35 +01:00
fang
804c8a8bb7
aqua: use cache for fake ships only
Boot sequence for real ships contains %dawn, which is affected by
azimuth state and may not be consistent.
2022-03-21 20:29:23 +01:00
yosoyubik
cff562b4c6 Merge branch 'next/arvo' into roller/batch-split 2022-03-20 14:27:50 +01:00
yosoyubik
cf838fd1d7 roller: add batch-trimming functionality
If a batch gets bigger than a max size defined by the ethereum node
the raw transaction is sent to, the /ted/roller/send thread will crash and
the batch will be blocked, stopping any subsequent batches to be sent.

This detects when the current batch reaches a certain threshold and only
includes transactions up to that point, moving the ones that are not sent
back to the pending queue, adjusting their history and finding status.
2022-03-20 14:07:27 +01:00
fang
3a4993f58c
aqua: cache results of booting ships from pill
This gives us much higher cycle times when retrying tests over and over,
since we can just fast-forward past the boot sequence, which never
changes unless we change the pill.
2022-03-19 00:24:23 +01:00
fang
250e750a89
spider: factor spider-arg type out into interface
And fix a callsite that wasn't conforming.
2022-03-16 21:10:31 +01:00
fang
41a796d2d1
hoon: hook up $+ for shorthand type rendering
Too often when dealing with big types the compiler traces and other such
outputs become hard to read. Wrapping a type as $+(shorthand big-type)
will now print #shorthand in place of the type.
2022-03-14 13:58:48 -04:00
fang
3df227760f
hoon: hook up $+ for shorthand type rendering
Too often when dealing with big types the compiler traces and other such
outputs become hard to read. Wrapping a type as $+(shorthand big-type)
will now print #shorthand in place of the type.
2022-03-10 01:45:18 +01:00
ryjm
20fdae85a4 fix typo and beak 2022-03-08 10:13:04 -05:00
ryjm
dc03d866f8 arvo: language-server desk support 2022-03-06 15:45:47 -05: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
fang
e41263c653
dojo: add missing nu-sole-id compatability
Forgotten code.
2022-03-02 22:49:31 -06:00
Jōshin
06fe78ef6e
Merge branch 'next/arvo' into jo/khan 2022-03-02 20:28:44 -06:00
fang
41a063867b
dojo: auto-fill generator's named drum-session arg
If a generator has a named argument named "drum-session", and the caller
doesn't specify a value for it, dojo auto-fills it with the current drum
session identifier.
2022-02-28 16:41:49 -06:00
fang
3120681b2b
sole: properly support multiple sessions
We update the sole protocol to more cleanly support multiple sessions.

Primarily, the "sole id" is updated to be a [@p @ta] instead of a @ta,
and it is now generated based off the connected dill session, rather
than statically.

This change ripples out to applications that support the sole protocol:
the subscription path becomes /sole/[ship]/[session] (as opposed to
/sole/[per-ship-constant]), and %sole-action pokes include the new id as
well.
For shoe agents, this means (at the very least) updating the function
signatures of the shoe arms.

/lib/sole has been updated to include helper functions for parsing a
sole-id from a subscription path, and turning a sole-id into its
corresponding path. It also has a function to aid in migrating old
sole-ids.

Existing sole agents are made to kick any known open sessions, forcing a
resubscribe by drum, so that they may use exclusively the new format
going forward. Third-party agents are recommended to do the same.

Note that some functionality, such as |link, still operates exclusively
on the default session. Improvements in this area to follow soon.
2022-02-20 17:19:03 -06:00
yosoyubik
1dd5fca11c roller: bug fix in looking for sending diff 2022-02-12 14:36:40 +01:00
yosoyubik
72794870c8 roller: include signing address in sending txs 2022-02-12 14:02:50 +01:00
yosoyubik
403c8af519 roller: check for existence in resend nonce 2022-02-11 15:46:13 +01:00
yosoyubik
5c9fc52f47 roller: keep force flag in sending transactions 2022-02-11 14:28:27 +01:00
Jōshin
4c22e2ceaa
spider: blank lines 2022-01-31 15:47:14 -06:00
Hunter Miller
88e956df01 Merge branch 'next/landscape' 2022-01-27 10:24:04 -06: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
fang
2c5510db64
Merge branch 'jb/next-gen-term' into next/dill
Resolves a good number of conflicts. Most notably, re-propagates removal
of gall's %onto, confirms new /app/herm behavior, coerces hood/drum
state adapters back into place, and updates webterm to use the latest
api.
2022-01-24 14:50:16 +01:00
yosoyubik
d62ba7d6b5 roller: fix wrong ship quota 2022-01-20 16:15:38 +01: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
jose
f158ebe312
Merge pull request #5532 from urbit/azimuth/jael-fix
jael: give new private key to subscribers on %keys new-event
2022-01-12 12:47:21 +01:00
yosoyubik
fccf99e0a6 jael: refactor new-event for %keys diff
this also adds a %rerun %poke to /app/azimuth
2022-01-08 19:28:11 +01:00
yosoyubik
8535563de6 jael: give private key to subscribers on keys diff
Triggering this event has been added to /app/azimuth's +on-load
2022-01-08 09:48:28 +01:00
yosoyubik
583d5f5063 azimuth: process snapshot on-load 2022-01-07 18:13:51 +01:00
yosoyubik
1950736518 azimuth: update snapshot at block 13.958.653 2022-01-07 17:31:49 +01:00
yosoyubik
8df443bc46 azimuth: remove eth-logs 2022-01-06 16:43:28 +01:00
Joe Bryan
1657c548cc Merge branch 'master' into next/arvo
* master:
  [nix] track nixos-21.11 branch whenever niv updates, bump to include qemu-in-virtualization fix
  webterm: v1.0.0
  herm: permission checks
  herm: avoid trailing empty path segments
  pmnsh: update secp256k1 configure flags
  secp256k1: use nixpkgs provided secp256k1 and add to sources-pmnsh
  webterm: remove border, let term live in page
  theme: cleaning up a few mismatches
  webterm: handle old-style blits and belts
  build: correct lmdb static builds
  build: explicitly override h2o build platforms to support darwin
  ci: upgrade cachix/install-nix-action from v13 -> v16
  build: remove haskell related nix code and haskell.nix dependency
  webterm: update imports
  @urbit/api: move term types
  webterm: fix broken imports
  webterm: update package name for lerna
  webterm: commit missing api files
  webterm: backport
2021-12-17 23:39:04 -05:00
fang
970075bbcd
helm, docket: bind /who endpoint in helm instead
This seems like a better place.
2021-12-17 00:42:57 +01:00
yosoyubik
1bda134280 azimuth: update /app/azimuth snapshot 2021-12-15 08:31:26 +01:00
yosoyubik
5d4a410653 roller: don't set :frequency timer on commit 2021-12-14 16:39:22 +01:00
yosoyubik
fc540bf209 roller: handle sending malformed batches 2021-12-14 15:24:25 +01:00
yosoyubik
d1a04c7c54 Merge branch 'naive/snapshot' into roller/gas-price 2021-12-14 09:41:22 +01:00
yosoyubik
4724c32d3d pill: load azimuth snapshot file with mime mark 2021-12-14 09:40:34 +01:00
fang
fd375c1d90
herm: permission checks
Make sure herm can only be interacted with by the local ship.
2021-12-13 14:25:14 +01:00
fang
c7c601c041
herm: avoid trailing empty path segments
append /view to the existing subscription paths to "wrap" the possibly
empty path segment of the session name.
2021-12-13 14:24:20 +01:00
yosoyubik
92c498cd04 Merge branch 'naive/snapshot' into roller/gas-price 2021-12-10 18:42:55 +01:00
yosoyubik
f6dca03786 pill: restore solid pill 2021-12-10 16:19:59 +01:00
yosoyubik
f6ff4f108b roller: add utilities for handling low-gas batches
This adds support for handling cases where the send-batch thread failed,
mainly among them, a thread crash. One of the events that causes this
behavior is a ver low gas price for this L1 transaction.

Here we add support for manually bumping the price for such transaction,
and for increasing the default fallback gas-price, together with discarding
any malformed batch from the sending queue.
2021-12-10 11:36:45 +01:00
yosoyubik
c467d5aa67 Merge branch 'roller/quota-left' into naive/snapshot 2021-12-09 07:45:18 +01:00
yosoyubik
ae05bbf571 roller: don't crash if nonce not in queue 2021-12-09 07:44:53 +01:00
yosoyubik
4384f19643 azimuth: use ship as prefix for loading snapshot log 2021-12-09 07:30:08 +01:00
yosoyubik
cce14699c8 azimuth: update log message 2021-12-08 12:52:23 +01:00
yosoyubik
37adba1ba0 various: update to new udiff:point type 2021-12-08 11:23:35 +01:00
yosoyubik
1e912d1ec4 Merge branch 'roller/quota-left' into naive/snapshot 2021-12-08 11:02:23 +01:00
yosoyubik
463ca6e8db roller: set default quota to 25 2021-12-08 11:02:05 +01:00
Philip Monk
5c20b63a5a
Merge pull request #5412 from urbit/jb/safer-dojo
dojo: improve safety of mark conversion
2021-12-07 20:20:53 -08:00
Philip Monk
7583d33cf1
Merge pull request #5436 from urbit/m/claz-lockup-txs
claz: better linear lockup ops support
2021-12-07 18:41:55 -08:00
yosoyubik
28dacad857 Merge branch 'roller/quota-left' into naive/snapshot 2021-12-07 17:48:30 +01:00
yosoyubik
33852ea90e roller: support private keys with leading 0x 2021-12-07 17:47:56 +01:00
yosoyubik
0833ee9ea6 azimuth: only print number of points during init 2021-12-07 16:32:39 +01:00
yosoyubik
81eb6ae247 pill: add azimuth snapshot 2021-12-07 16:13:39 +01:00
yosoyubik
d08ab43f3a lull: skip rift/life printf when booting 2021-12-06 13:47:59 +01:00
yosoyubik
ad16155c77 azimuth: load azimuth state from state snapshot 2021-12-03 16:11:15 +01:00
yosoyubik
d5c44598ba roller: refactor and clean up 2021-11-28 16:37:06 +01:00
yosoyubik
8c8aef96aa dice: include nas when rolling over tx-effects 2021-11-25 21:22:15 +01:00
yosoyubik
2e94a0d446 azimuth, dice: simplify index update 2021-11-24 15:31:59 +01:00
yosoyubik
528a046b51 roller: add to state ship allowance and next-slice 2021-11-23 10:55:50 +01:00
yosoyubik
144065c4fc roller-rpc: add %get-remaining-quota 2021-11-22 14:02:31 +01:00
fang
0a5bcf7464
claz: interleave transfer proxy & deposit txs
Dumb hack, but very nice for multi-tx batches.
2021-11-18 17:48:23 +01:00
fang
130761039d
claz: include linear release txs 2021-11-18 17:46:53 +01:00