Commit Graph

2975 Commits

Author SHA1 Message Date
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
Philip Monk
ff63ffd1aa
azimuth: stop processing state in %watch
Also reprocess state in +on-load for ships which currently have
unprocessed state.
2021-11-17 10:22:27 -08:00
Philip Monk
45a8d12c35
Merge remote-tracking branch 'origin/philip/hotfix' into philip/hotfix 2021-11-17 10:00:49 -08:00
yosoyubik
9430c666d2 azimuth: update state on-watch 2021-11-17 12:40:06 +01:00
Philip Monk
a58db10b94
azimuth: don't crash if timer failed 2021-11-16 21:09:10 -08:00
Philip Monk
4b328a4fa7
azimuth: make +run-logs tail-recursive
Also kick the call to +mule out of the loop.  By uncommenting the
diagnostics in u3m_fall, I measured that running through the 290k events
the azimuth snapshot required this much memory:

Head recursive, +mule in:  1.1GB
Head recursive, +mule out: 780MB
Tail recursive, +mule in:  700MB
Tail recursive, +mule out: 70MB

So this commit chooses the last one.  The most delicate part is making
sure the effects are the right order; this uses the usual idiom.

Kicking +mule out of the loop is okay because lib/naive should never
fail, and if it does then azimuth shouldn't advance until an out-of-band
solution is decided.

Addresses #5431
2021-11-16 20:03:20 -08:00
Philip Monk
fae27385ff
eth-watcher: remove printfs 2021-11-16 14:47:17 -08:00
Philip Monk
a2a89d3532
Merge remote-tracking branch 'origin/next/arvo' into philip/roller 2021-11-16 13:58:57 -08:00
fang
b9b1fbfb1a
Merge pull request #5310 from urbit/m/acme-base
acme: load custom cert from base desk, not home
2021-11-13 00:44:14 +01:00
yosoyubik
ed2d9bb482 Merge remote-tracking branch 'origin/philip/roller' into naive/roller 2021-11-10 18:44:25 +01:00
yosoyubik
da739d6e87 azimuth: add sponsorship scry 2021-11-10 18:39:43 +01:00
yosoyubik
4727b49b89 acme: point acme to /~debug 2021-11-10 18:38:13 +01:00
yosoyubik
e32b0a1956 roller: add sponsorship index 2021-11-10 17:46:22 +01:00
yosoyubik
856d8ed8fc azimuth: use last-snap only in %default network 2021-11-10 11:47:22 +01:00
Philip Monk
6a152218b2
test: fix :test 2021-11-10 01:04:17 -08:00
Philip Monk
3290b68d40
Merge remote-tracking branch 'origin/naive/roller' into philip/roller-ci 2021-11-10 00:41:25 -08:00
Philip Monk
04fbb045d2
ci: try 2021-11-10 00:40:56 -08:00
Philip Monk
08ab77893e
azimuth: don't start on fake ships 2021-11-09 22:36:05 -08:00
yosoyubik
1ade4d29f0 roller: add default network 2021-11-10 07:09:22 +01:00
yosoyubik
48fd671b9a various: removed unused/wip files 2021-11-10 06:23:36 +01:00
Philip Monk
185fd1f979
azimuth: fixing upgrading from mainnet
load snapshot and node on boot and make sure we initalize after
eth-watcher updates
2021-11-09 16:42:03 -08:00
Philip Monk
bf7f4ba453
Merge remote-tracking branch 'origin/m/naive-ugprade-path' into philip/roller 2021-11-09 12:52:25 -08:00
Joe Bryan
6200873680 dojo: protect against missing mark in bunt (%sa) 2021-11-09 15:04:39 -05:00
Joe Bryan
bb7804d510 dojo: virtualize mark conversion 2021-11-09 15:04:32 -05:00
Philip Monk
60436f2673
Merge remote-tracking branch 'origin/naive/roller' into philip/roller 2021-11-09 10:47:48 -08:00
yosoyubik
084c70497d roller-rpc: fix serializing tx for personal_sign 2021-11-09 19:18:10 +01:00
yosoyubik
502fd5822b roller-rpc: add rpc %spawns-remaining 2021-11-09 16:08:30 +01:00
yosoyubik
360f5fdd35 roller: only add tx to pending if verifies 2021-11-09 16:06:29 +01:00
fang
07e59afcfe
azimuth: properly nuke azimuth-tracker on-init 2021-11-09 16:00:01 +01:00
Philip Monk
42410a708d
azimuth: give backlog on %watch 2021-11-09 00:42:34 -08:00
Philip Monk
1db1819d4d
azimuth: update snapshot 2021-11-09 00:24:10 -08:00
Philip Monk
ea199bfba9
azimuth: correctly load snapshot on boot 2021-11-09 00:22:32 -08:00
Philip Monk
45c1693085
jael: use default network id 2021-11-08 22:59:06 -08:00
Philip Monk
681faa68e4
azimuth: send updates to jael 2021-11-08 21:56:47 -08:00
yosoyubik
9e2e6a7aee roller-rpc: add %hash-raw-transaction rpc
the returned hash can be used to cancel pending txs
by signing the message 'cancel: 0xke.ccak'
2021-11-08 17:47:55 +01:00
yosoyubik
df9827a2cb roller: on submit, crash if no naive state exists 2021-11-08 16:28:12 +01:00
yosoyubik
9015dbb1c5 roller: restrict config actions to our.bowl 2021-11-08 16:22:25 +01:00
yosoyubik
a22b16a465 roller: give rpc error if roller has no l2 state 2021-11-08 16:08:59 +01:00
yosoyubik
89c4d30b30 roller: remove sigwut 2021-11-08 07:33:03 +01:00
yosoyubik
291f6128e7 roller-rpc: add %hash-transaction
hysterical raisins, deprecated in newer version of roller-api
2021-11-08 06:11:37 +01:00
yosoyubik
705eb5cb4b roller-rpc: rename methods for hashing l2 txs 2021-11-07 11:58:03 +01:00
yosoyubik
b2a7c2830f Merge branch 'naive/roller' into naive/roller-personal-sign 2021-11-07 10:57:15 +01:00
yosoyubik
5ea87c1f47 roller: add generators for config options 2021-11-07 10:36:46 +01:00
yosoyubik
e54805893f roller: bugfix for incorrect predicted l2 nonce 2021-11-06 15:18:39 +01:00
yosoyubik
095ce0dff4 roller: wip add quota per ship for tx submission 2021-11-06 10:27:00 +01:00
fang
fecb809573
jael, azimuth: reconfigure jael for L2
Jael needs to be reconfigured to listen to the new aagent for azimuth
events, and the old app needs to be shut down. We do this in
/app/azimuth's +on-init.

Additionally, we make sure that jael doesn't crash when it (as expected)
loses its subscription to the old agent.
2021-11-06 01:10:33 +01:00
yosoyubik
1c641629e2 roller: add azimuth refresh-rate to getConfig RPC 2021-11-04 09:54:25 +01:00
yosoyubik
aabf028b89 roller: wip support for metamask personal_sign 2021-11-03 16:58:57 +01:00
yosoyubik
2bb218cfc8 roller: bugfix for adding failed txs to history 2021-11-01 10:09:11 +01:00
yosoyubik
27576e272b Merge remote-tracking branch 'origin/philip/naive' into naive/roller 2021-10-31 15:14:15 +01:00
yosoyubik
c5c6379260 roller: keep only one status entry in tx history 2021-10-31 14:02:33 +01:00
yosoyubik
8b45302982 roller: restore finding index as sig+raw-tx hash 2021-10-30 13:12:09 +02: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
yosoyubik
824de38532 roller: wip order roller tx history by timestamp 2021-10-16 12:47:39 +02:00
yosoyubik
a392ccde58 roller: wip finding map simplification 2021-10-16 07:26:57 +02:00
yosoyubik
21139ea8de roller: increase next-nonce if not out of sync 2021-10-14 15:42:06 +02:00
yosoyubik
ca0681a4b5 roller: fix for duplicate transactions in a batch 2021-10-13 12:56:47 +02:00
yosoyubik
91be390397 roller: use an ordered map for tracking L2 batches 2021-10-11 17:16:17 +02:00
fang
8ed93c27c4
kiln: re-emit clay listen for affected ships
Previous version of kiln had a bug where a crash caused the listen to be
dropped, making kiln ignore base commits.
2021-10-07 23:12:42 +04:00
fang
565c1b0bf2
acme: load custom cert from base desk, not home
Small patch for the ancient workaround.
2021-10-07 09:54:29 +02:00
fang
c29108a5f0
dojo: support running threads from other desks
Similar to the syntax for generators, you can now -desk!thread to run
the thread from the specified desk.
2021-10-06 19:57:53 +04:00
Philip Monk
7b528e823f
naive: final touch-up 2021-10-05 22:20:35 -05:00
yosoyubik
2d1a5215bc roller: increase nonce on successful send roll 2021-10-03 16:15:42 +02:00
yosoyubik
56b2d6b451 roller: simplify handling of /predict timer 2021-10-03 15:09:11 +02:00
yosoyubik
86276b894b roller: use chain details in endpoint generator 2021-10-02 09:12:58 +02:00
yosoyubik
5938f3569e roller: add logic for fixing out-sync nonce 2021-10-02 08:44:37 +02:00
Ted Blackman
a55c1cb515 Revert "dojo: support running threads from other desks"
This reverts commit 446e53318a.
2021-09-29 14:29:52 -04:00
Fang
27fcc9b4c3
various: %home -> %base 2021-09-29 22:13:08 +04:00
Fang
446e53318a
dojo: support running threads from other desks 2021-09-29 18:06:45 +04:00
yosoyubik
37aee72f55 roller: retrieve latest (current+pending) nonce 2021-09-29 14:38:20 +02:00
Liam Fitzgerald
31f5898087 kiln: track original publisher with desk.ship file 2021-09-29 13:27:28 +10:00
Liam Fitzgerald
9ee819e5ac spider: do not glob http request serving in +handle-start-thread 2021-09-29 09:57:23 +10:00
Fang
6d1636b566
herm: ignore legacy /tube wire responses
We use /$ now.
2021-09-28 19:37:13 +04:00
ryjm
ed5e7e84ce spider: remove noisy logs
we weren't logging these anyway
2021-09-27 22:17:43 -04:00
ryjm
bf534ffe71 spider: clean serving threads 2021-09-27 22:09:35 -04:00
ryjm
472f16fd2e garden spider: address comments 2021-09-27 21:23:46 -04:00
ryjm
098587bf8b spider: fix mark validation
glob is succesfully downloaded and inserted into the docket state, but
as an octet stream. need to define the correct marks.
2021-09-27 21:23:46 -04:00
ryjm
121a7c9468 garden spider: add desk tracking 2021-09-27 21:23:46 -04:00
ryjm
ddf9e769ae spider, docket: move back to threads 2021-09-27 21:23:46 -04:00
ryjm
a08c38b83c spider: track desks and validate marks (wip) 2021-09-27 21:23:46 -04:00
Hunter Miller
502f2e8a9c Merge branch 'hm/btc-wallet-conflict-resolution' into ea/master-dist-deconflict 2021-09-27 18:55:45 -05:00
Edward Amsden
20104b056b
dojo: fix house-6 type to use session-6 instead of session
Co-authored-by: Fang-
2021-09-27 12:39:06 -04:00
Fang
934c32d401
dojo: !< the vase like a normal person
It was never broken to begin with.
2021-09-27 19:12:39 +04:00
yosoyubik
f243500068 Merge remote-tracking branch 'origin/philip/naive' into naive/roller 2021-09-27 16:29:12 +02:00
Fang
059fb9e1ee
dbug: fix dashboard for the softdist age
We can no longer rely on landscape to be installed and serving a
channel.js, so we bring our own.

App discovery works through gall now. We can only ask per desk though,
so we still need to talk to clay for the set of desks.
2021-09-26 14:21:54 +04:00
Fang
f51ac34517
dojo: reset =dir during migration
The base desk is the new default. If we leave the dir untouched, for
most users this means they remain on home, which gets rendered
explicitly in the prompt since it's no longer the default desk.
2021-09-25 15:43:43 +04:00
Joe Bryan
5385889ebd Revert "Revert "Merge pull request #4463 from urbit/m/next-gen-term""
This reverts commit 3fba32185d.
2021-09-24 23:14:55 -04:00
Fang
dc5662b73e
dojo: finalize new +desk!generator syntax 2021-09-25 01:12:55 +04:00
Joe Bryan
3fba32185d Revert "Merge pull request #4463 from urbit/m/next-gen-term"
This reverts commit 39667fc071, reversing
changes made to 698fd6f66f.
2021-09-24 16:33:15 -04:00
Fang
9f89dadc41
dojo: support running other-desk generators
Syntax is +desk#gen. (We can probably find something nicer.)

:app|gen desugars to :app +desk#gen, where the desk is the desk the app
is running on.

:app|desk#gen currently broken, in the sense that the above desugaring
takes precedence.

+on-load just aborts any running user action to avoid having a
monstrously large state adapter.
2021-09-23 20:09:54 +02: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
Hunter Miller
c7cafd8e1a permalink: fixed path and spider case 2021-09-20 21:09:19 -05:00
Fang
da28fbfed9
Merge dist into m/distpilled 2021-09-20 19:35:51 +02:00
yosoyubik
0042426179 roller: fix crash in +pending-by address 2021-09-20 08:31:15 +02:00
yosoyubik
9c3cd5240d roller: add generators to connect to eth nodes 2021-09-20 07:24:10 +02:00