Commit Graph

181 Commits

Author SHA1 Message Date
silnem2
877a00baf8 lib/gen: update pill lib/gens not to use whitelist 2023-03-15 11:43:10 -06:00
Pyry Kovanen
7eee507bab Merge pull request #6377 from justinlynn/hotfix/6376-eth-hex-format
Fix stuck %eth-watcher due to get-block-by-number zero-padded number RPC failure.
2023-03-07 17:44:17 -06:00
Ted Blackman
51be6665f5
Merge pull request #6336 from ashelkovnykov/eval-ted
Add threads to run arbitrary hoon
2023-02-17 09:56:06 -05:00
Alex Shelkovnykov
fa17eaac43 Add threads to run arbitrary hoon 2023-02-17 15:39:10 +01:00
~wicrum-wicrun
7e4f7d4bc6 Publisher doesn't set timer 2023-02-17 10:22:58 +01:00
~wicrum-wicrun
26c7a94321 Crash if we're woken up for a subscription we don't have 2023-02-16 14:57:47 +01:00
~wicrum-wicrun
6055266d85 Comment /lib/sss/hoon 2023-02-16 14:49:25 +01:00
~wicrum-wicrun
83cfd18290
Merge branch 'develop' into i/6268/solid-state-publications 2023-02-16 08:58:58 +01:00
~wicrum-wicrun
6f31ad889a %rest stale timers on subscriber 2023-02-16 08:58:15 +01:00
~wicrum-wicrun
55c3fedcfa Use ^- instead of ;; because to save resources (and cleaner) 2023-02-16 07:46:52 +01:00
~wicrum-wicrun
34328a0ac3 Ad Fontes-style networking 2023-02-15 15:54:06 +01:00
Josh Lehman
d2af28fdbc
Merge branch 'develop' into lf/goerli-address 2023-02-09 06:57:19 -08:00
~wicrum-wicrun
08ada13c2b Fix snapshotting bug 2023-02-01 21:52:30 +01:00
~wicrum-wicrun
1d1894a4cf
Merge branch 'develop' into i/6268/solid-state-publications 2023-02-01 17:24:20 +01:00
~wicrum-wicrun
23d43bd5f4 Add draft code 2023-02-01 17:05:18 +01:00
fang
c61a9f8bd7
clay: update %prep task for pages instead of blobs 2023-01-23 21:10:28 +01:00
fang
5a90d9bdd9
autoprop: include desk name in install prop meta 2023-01-23 20:45:33 +01:00
fang
8cfc9b5dfc
prop: rename prop tiers for style 2023-01-23 20:44:30 +01:00
fang
903351f86f
pill: support including clay blob store
During pill and install prop generation.

In autopill, we stop tracking a copy of the blob store, instead just
having the pill lib scry it out on-demand.
2023-01-23 20:42:13 +01:00
fang
382d0d5522
pill: include %prep task in desk install props
Primes the blob store, making initial sync faster.
2023-01-23 20:40:52 +01:00
fang
b3b5400cec
boot: partial prop support
Doesn't yet support pre-userspace props, and the code might need to be
shuffled around a bit, but what's here works already.
2023-01-23 20:34:56 +01:00
fang
74e653053d
lib: move pill creation into /lib/pill
In preparation for pill building from outside the generators.
2023-01-23 20:24:02 +01:00
Philip Monk
35f1cdb93f
Merge pull request #6098 from wicrum-wicrun/patch-1
base-dev: remove `+fact-curry` from lib/agentio
2023-01-17 15:24:54 -07:00
fang
a15111a35c
Merge branch 'next/arvo' into m/drum-sessions 2023-01-03 17:19:32 +01:00
Ted Blackman
08c95f2b6f
Merge pull request #5475 from dasrun-fadben/bitcoin-compact-size
bitcoin-utils: Fix parsing of of CompactSize integers
2022-11-27 14:11:06 -06:00
~wicrum-wicrun
f988af4555
base-dev: remove +fact-curry from lib/agentio 2022-11-24 13:18:49 +01:00
Ted Blackman
99acf3a2c8
Merge pull request #6055 from urbit/jon/lustar-barbuc-lsp
language server: change +* to |$
2022-11-22 19:49:39 -06:00
drbeefsupreme
3c431baf4b language server: change +* to |$
This old use of +* was deprecated by |$
2022-11-04 19:04:42 -04:00
Liam Fitzgerald
ed96e6162c arvo: retool for goerli instead of deprecated ropsten 2022-10-26 13:11:22 +10:00
Philip Monk
fb2919594f tests: make pass 2022-10-13 22:14:12 -07:00
Philip Monk
2cc6abbf78 Merge remote-tracking branch 'origin/tinnus/fix-story-printing' into philip/agent-clay 2022-10-13 20:05:40 -07:00
Philip Monk
79f520c56c Merge remote-tracking branch 'origin/master' into philip/agent-clay 2022-10-13 18:42:19 -07:00
Tinnus Napbus
7e59a66fdf story: fix story printing
`+story-list` produced janky indentation because the `$-(story
wain)` functions encoded linefeeds in the cords of the wain and the
printer doesn't like this.

Story printing functions have been changed to produce pure wains without
linefeeds.
2022-10-01 22:21:45 +13:00
Philip Monk
c3f5fe923a docket: update to use tire instead of kiln 2022-09-13 16:14:43 -08:00
fang
e22b198dea
Merge pull request #5972 from urbit/ted/grq-test-2
tests: ames+gall subscribe/kick/resubscribe sequence
2022-09-06 22:15:47 +02:00
Philip Monk
e3a8cab943 khan: support inline threads
This allows you to pass a thread directly into khan, instead of passing
a filename.  This has several implications:

- The friction for using threads from an app is significantly lower.
  Consider:

    =/  shed
      =/  m  (strand ,vase)
      ;<  ~  bind:m  (poke:strandio [our %hood] %helm-hi !>('hi'))
      ;<  ~  bind:m  (poke:strandio [our %hood] %helm-hi !>('there'))
      (pure:m !>('product'))
    [%pass /wire %arvo %k %lard %base shed]

- These threads close over their subject, so you don't need to parse
  arguments out from a vase -- you can just refer to them.  The produced
  value must still be a vase.

    ++  hi-ship
      |=  [=ship msg1=@t msg2=@t]
      =/  shed
        =/  m  (strand ,vase)
        ;<  ~  bind:m  (poke:strandio [ship %hood] %helm-hi !>(msg1))
        ;<  ~  bind:m  (poke:strandio [ship %hood] %helm-hi !>(msg2))
        (pure:m !>('product'))
      [%pass /wire %arvo %k %lard %base shed]

- Inline threads can be added to the dojo, though this PR does not add
  any sugar for this.

    =strandio -build-file %/lib/strandio/hoon
    =sh |=  message=@t
        =/  m  (strand:rand ,vase)
        ;<  ~  bind:m  (poke:strandio [our %hood] %helm-hi !>('hi'))
        ;<  ~  bind:m  (poke:strandio [our %hood] %helm-hi !>(message))
        (pure:m !>('product'))
    |pass [%k %lard %base (sh 'the message')]

Implementation notes:
- Review the commits separately: the first is small and implements the
  real feature.  The second moves the strand types into lull so khan can
  refer to them.

- In lull, I wanted to put +rand inside +khan, but this fails to that
  issue that puts the compiler in a loop.  +rand depends on +gall, which
  depends on +sign-arvo, which depends on +khan.  If +rand is in +khan,
  this spins the compiler.  The usual solution is to either move
  everything into the same battery (very ugly here) or break the
  recursion (which we do here).
2022-08-29 21:04:50 -08:00
Philip Monk
0e14eedb50 spider: accept inline threads 2022-08-29 20:09:08 -08:00
Ted Blackman
e37f738573 /lib/test: add +expect-success helper 2022-08-25 16:36:14 +03:00
Ted Blackman
c48c2f4b6a /lib/test: add +run-chain for test sequences 2022-08-25 16:36:13 +03:00
Ted Blackman
f2b85df948 tests: initial setup for gall and ames on two ships 2022-08-25 16:36:13 +03:00
Ted Blackman
81bfe17f37 tests: WIP gall request queue tests 2022-08-25 16:36:13 +03:00
Philip Monk
ed3b028d9a Merge remote-tracking branch 'origin/master' into philip/snap 2022-08-23 14:16:57 -08:00
Philip Monk
ca0a00cb3c Merge remote-tracking branch 'origin/master' into philip/snap 2022-08-19 12:37:25 -08:00
fang
fc019157b8
Merge branch 'master' into next/arvo 2022-08-19 21:21:38 +02:00
hosted-fornet
00dc78402a agentio: fix +rest typo 2022-08-17 18:08:37 -07:00
dasrun-fadben
d66de5b486 bitcoin-utils: fix encoding of CompactSize integers
Encoding an atom as a Compact fails when a = 0: a 4-byte CompactSize is
emitted.
2022-07-15 17:06:12 -06:00
dasrun-fadben
fee929ec33 bitcoin-utils: Fix parsing of of CompactSize integers
When the first byte is greater or equal to 0xfd, (bex len) bytes are consumed to
form the csiz atom, but only one byte is dropped from the 'rest' of the input.

The parser should consume all bytes of the CompactSize.
2022-07-15 17:06:12 -06:00
Nick
740d68777c %bitcoin: Added %regtest to arms using the network type definition. 2022-07-07 16:47:06 -04:00
fang
d177d4f509
Revert "testnet: tweaks for ropsten"
This reverts commit e6db12cd82.
2022-07-05 16:34:14 +02:00
Philip Monk
89b9977ac8 azimuth: fetch snapshot on boot
Previously, the initial Azimuth snapshot was stored in Clay and shipped
in the pill.  This causes several problems:

- It bloats the pill
- Updating the snapshot added large blobs to Clay's state.  Even now
  that tombstoning is possible, you don't want to have to do that
  regularly.
- As a result, the snapshot was never updated.
- Even if you did tombstone those files, it could only be updated as
  often as the pill
- And those updates would be sent over the network to people who didn't
  need them

This moves the snapshot out of the pill and refactors Azimuth's
initialization process.  On boot, when app/azimuth starts up, it first
downloads a snapshot from bootstrap.urbit.org and uses that to
initialize its state.  As before, updates after this initial snapshot
come from an Ethereum node directly and are verified locally.

Relevant commands are:

- `-azimuth-snap-state %filename` creates a snapshot file
- `-azimuth-load "url"` downloads and inits from a snapshot, with url
  defaulting to https://bootstrap.urbit.org/mainnet.azimuth-snapshot
- `:azimuth &azimuth-poke-data %load snap-state` takes a snap-state any
  way you have it

Note the snapshot is downloaded from the same place as the pill, so this
doesn't introduce additional trust beyond what was already required.
When remote scry is released, we should consider allowing downloading
the snapshot in that way.
2022-06-30 23:22:50 -07:00
fang
e6db12cd82
testnet: tweaks for ropsten 2022-05-23 23:25:33 +02:00
fang
a0f7891f50
Merge branch 'philip/tomb' into lf/content-dist-rc
Beware, the ames conflict was particularly nasty. State migrations as of
yet untested.

Includes patched-up fine tests.
2022-05-19 17:07:35 +02:00
Philip Monk
f41cfa112e tests: fix various 2022-05-14 22:05:39 -07:00
Philip Monk
9c7e30bab5 test: align output
H/t @sigilante
2022-05-14 21:27:01 -07:00
Philip Monk
98808a5f19 Merge branch 'pr' into philip/tomb 2022-05-14 21:00:40 -07:00
yosoyubik
a347172abb ethereum: use jetted |base16 to parse hex cords 2022-05-13 07:38:17 +02:00
fang
8bef14d0a7
Merge branch 'philip/tomb' into lf/content-dist-rc 2022-05-05 00:33:37 +02:00
fang
b42833a568
Merge branch 'm/scry-vane-next' into lf/content-dist-rc 2022-05-03 15:29:16 +02:00
fang
4415aa781e
Merge branch 'next/arvo' into m/aqua-revival 2022-04-20 18:47:59 +02:00
Philip Monk
a18f35dd16
Merge pull request #5697 from urbit/jon/await-thread-fix
strandio: fix +await-thread %thread-fail handling
2022-04-06 11:29:14 -07:00
fang
51d252be24
ph: include missing library function 2022-04-06 16:44:08 +02:00
drbeefsupreme
a44781f47b
strandio: fix +await-thread %thread-fail handling
we need to use ;; instead of !< since the %thread-fail mark just returns
a raw noun
2022-04-06 10:42:21 -04: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
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
01de5a06b0
term: consistently use x/y coordinate ordering
%rez has always used "width & height". Certainly, "x & y" is more
standard than "row & column". As such, we settle on making %hop and %hit
respect the more natural ordering. This change is safe because these
interfaces haven't made it to livenet yet.
2022-03-25 13:45:29 +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
Philip Monk
5ff4cc7f66
Merge pull request #5612 from ynx0/story
clay: add `story`, a set of tools to support commit messages
2022-03-22 21:49:16 -07: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
cf3770586d
Merge pull request #5635 from rabsef-bicrym/patch-2
Update /lib/ring/hoon for %jael scries.
2022-03-15 22:36:02 +01:00
rabsef-bicrym
986d273b5f
Update /lib/ring/hoon for %jael scries.
Also I took the liberty of making `build-signing-participants` use a `%lyfe` scry and remove unknowns from the set rather than crashing. This is a choice - happy to change it back the other way.
2022-03-11 11:10:47 -08:00
Yaseen
341e27b5c3 story: enforce 80 cols, fix formatting, update comments 2022-03-11 12:08:40 -05:00
Liam Fitzgerald
49e53290a1 Merge remote-tracking branch 'origin/yu/dangling-bone' into lf/content-dist-rc 2022-03-11 11:07:51 -06:00
fang
8906d1c17d
dill: move %mor case into $blit
This lets us send a single blit around, instead of sending facts for
every individual blit in a draw event.
2022-03-05 18:17:48 -06:00
Jōshin
9d50957861
arvo: remove $crag, promote $page 2022-03-02 17:59:56 -06:00
Liam Fitzgerald
b4da246f01 strandio: add +keen gate 2022-02-24 12:03:07 -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
fang
c4f38032ce
pkg: move /lib/dill into base-dev, include it
Landscape desk needed it, but didn't have it.
2022-02-20 15:35:55 -06:00
Yaseen
a149dc6c40 story: generators: add check for invalid case 2022-02-18 22:30:24 -05:00
Yaseen
52537a7b3b story: lib: remove ;; in favor of typecast 2022-02-11 12:12:20 -05:00
Yaseen
5346784609 story: parser improvements 2022-02-05 06:16:59 -05:00
Yaseen
a38ec43d99 story: misc clean up 2022-02-05 06:15:45 -05:00
Yaseen
75b01a2c0c story: fix dif-ju correctness on empty input 2022-02-04 12:51:58 -05:00
Yaseen
9b66cb9b81 story: make lib lead core 2022-02-04 12:49:55 -05:00
Yaseen
94d55f1e33 story: misc changes 2022-02-04 12:49:10 -05:00
Yaseen
e1f8f4db45 story: fix error with null jug 2022-02-02 23:35:55 -05:00
Yaseen
b7e0b28220
Merge branch 'urbit:master' into story 2022-01-30 16:03:48 -05:00
Yaseen
f723088f4d story: create fundamental jug operations 2022-01-30 16:02:25 -05:00
Yaseen
10e252bca0 story: add new parsers to lib 2022-01-30 16:01:00 -05:00
Yaseen
75d6882b51 story: fix to-text arms 2022-01-30 15:59:58 -05:00
Yaseen
1e871e3c35 story: use crip/trip where necessary 2022-01-26 18:07:00 -05:00
Yaseen
b0a666d2eb story: add lib/story.hoon 2022-01-26 11:37:02 -05: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
xiphiness
73b2d27d49
Add +address-to-checksum gate to ethereum lib as per EIP-55
https://github.com/ethereum/EIPs/blob/master/EIPS/eip-55.md

I needed it because some api's i'm hitting fail if the address isn't checksummed.

Could maybe be written better, haven't done much byte munging in hoon. Feel free to improve.
2022-01-23 19:57:13 +02: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
4724c32d3d pill: load azimuth snapshot file with mime mark 2021-12-14 09:40:34 +01:00
yosoyubik
f6dca03786 pill: restore solid pill 2021-12-10 16:19:59 +01:00
Jōshin
d94aa5704b
Merge branch 'master' into next/arvo
Conflicts:
	pkg/arvo/lib/azimuth.hoon

This file was turned into a symlink to pkg/base-dev/lib/azimuth.hoon on
one side of the fork, and meanwhile edited on the other side of the fork
(to update ecliptic to the new address for the WSTR fix.)

The two sides of the fork both had different outdated addresses in
base-dev's azimuth.hoon file, and Git's UI helpfully refilled the
contents of arvo's azimuth.hoon so that it showed a merge conflict with
an empty diff.

Resolved by reading out HEAD:pkg/arvo/lib/azimuth.hoon into
pkg/base-dev/lib/azimuth.hoon and manually recreating the symlink.
2021-12-10 08:24:32 +00:00
yosoyubik
fb2c078fde pill: load azimuth snapshot as mime in file-ovum 2021-12-09 07:28:57 +01:00
fang
35e820bfe6
Merge branch 'next/arvo' into m/shoe-scry 2021-12-08 13:13:54 +01:00
yosoyubik
81eb6ae247 pill: add azimuth snapshot 2021-12-07 16:13:39 +01:00