Commit Graph

206 Commits

Author SHA1 Message Date
Philip Monk
a5412f01de
Merge branch 'alef-testnet-merge' into philip/mall-real 2019-11-19 13:03:07 -08:00
Philip Monk
6a406e6b29
gall: mall -> gall 2019-11-18 20:36:21 -08:00
Philip Monk
9862dccc0e
mall: age -> app 2019-11-18 19:28:59 -08:00
Philip Monk
7837d51aba
spider: rename thread -> strand, imp -> thread 2019-11-16 04:07:09 -08:00
Philip Monk
c1b0bd63e4
spider: don't pass in initial bowl 2019-11-15 17:37:20 -08:00
Philip Monk
fc28e6e378
ph: make breach-sync pass 2019-11-15 12:46:11 -08:00
Philip Monk
9ace7ff590
ph: make breach-hi pass 2019-11-14 16:39:28 -08:00
Philip Monk
4cb821de11
ph: get boot-az working 2019-11-14 13:31:55 -08:00
Philip Monk
32ea09caf2
mall: remove old hood libraries 2019-11-14 10:39:50 -08:00
Philip Monk
881517c872
mall: fix tests 2019-11-13 20:45:12 -08:00
Philip Monk
adc54531fc
mall: autostart lens 2019-11-13 17:26:29 -08:00
Philip Monk
cd3308d8d9
mall: convert lens 2019-11-13 16:20:24 -08:00
Philip Monk
4a6e98a558
mall, eyre: refactor server apps to be stateless 2019-11-13 00:38:35 -08:00
Philip Monk
1d1e9c0e16
eyre: better userspace libraries 2019-11-12 23:37:38 -08:00
Philip Monk
47e3b260d5
eyre: subscribe to apps for responses
This removes the %http-response special case from gall.  In its place,
we implement a subscription regime with the following steps:

- Agent sends %connect to Eyre
- Eyre pokes agent with %handle-http-response, including unique eyre-id
- Agent passes %start-watching to Eyre with eyre-id and unique app-id
- Eyre subscribes to agent on /http-response/app-id
- Agent produces a %http-response-header fact followed by 0 or more
  %http-response-data facts and possibly a %http-response-cancel fact
- Agent produces a %kick to close the subscription, which Eyre
  interprets as completion of the message.

This works when there is data.  There is currently a bug where if the
response has no data in total (as in the case of a naked 404), no
response will be sent.

This also includes lib/http-handler, which implements a convenient
interface for agents that want to respond immediately with all the data.
This lets them avoid carrying extra state to keep track of pending
requests.

This should really have access to your state and the ability to change
it.  Perhaps a more minimalist design would be better: just keep track
of the requests, then hand it off to +on-watch when eyre is ready to
receive responses.  It's not clear how to pass in the request data in
+on-watch.
2019-11-12 23:37:38 -08:00
Philip Monk
54d55b69e4
mall: fix ph 2019-11-12 21:03:21 -08:00
Philip Monk
1caa30d812
mall: convert eth-watcher to mall/imp 2019-11-11 21:36:32 -08:00
Philip Monk
5c1d68bf44
spider: add process tree 2019-11-09 23:27:07 -08:00
Philip Monk
ab8ac96702
spider: allow arguments and return values 2019-11-09 19:09:02 -08:00
Philip Monk
bcd7c5e82d
Merge branch 'master' into philip/mall-real 2019-11-09 16:47:41 -08:00
Philip Monk
1c8bddfb15
mall: ci 2019-11-08 19:52:18 -08:00
Philip Monk
47f24faaf8
mall: convert chat-cli 2019-11-08 19:32:21 -08:00
Philip Monk
7c4316fce4
mall: refactor gift/sign/task types
+on-agent now takes a +sign:agent:mall, which doesn't include spurious
options.  Similarly, +task:agent:mall is smaller.
2019-11-08 17:35:24 -08:00
Philip Monk
aba0811b1d
mall: add lib/verb 2019-11-08 15:18:29 -08:00
Philip Monk
1688fe82fd
mall: add flag to default-agent to assist with errors 2019-11-08 13:56:35 -08:00
Philip Monk
4ef1278cfa
mall: add lib/skeleton 2019-11-08 13:18:27 -08:00
Philip Monk
43be7737d6
mall: rename agent arms 2019-11-07 00:19:58 -08:00
Jared Tobin
3ec88f9bb1
Merge branch 'goad-gall' (#1915)
* goad-gall:
  updates solid pill
  dill: fixes cursor position during boot
  dill: adds %goad automation
  dill: refactors move production
  goad: adds app to unblock :hood if necessary
  hood: adds |goad-gall generator
  gall: restores "not-running" printf
  gall: adds %goad task force agent rebuilds

Signed-off-by: Jared Tobin <jared@tlon.io>
2019-11-06 17:29:45 +08:00
Jared Tobin
0e6542afd5
Merge branch 'philip/language-server' (#1910)
* philip/language-server:
  language-server: address review comments
  language-server: fix rune typos
  language-server: multiple files and ford
  language-server: namespace libraries
  language-server: cleanup and incremental text sync
  language-server: initial commit

Signed-off-by: Jared Tobin <jared@tlon.io>
2019-11-06 16:12:26 +08:00
Jared Tobin
144445beb1
Merge branch 'invite-app' (#1901)
* origin/invite-app:
  chat-hook: upgrade from old state and perform invitatory creation and subscription
  invite-hook: crash upon invalid invite received
  changed invite peek interface to /:path/:uid
  invite: add comments and clean up
  chat-js: added invite functionality
  chat-hook: added invite functionality
  app: added invite app and mark converters to JSON

Signed-off-by: Jared Tobin <jared@tlon.io>
2019-11-06 15:47:05 +08:00
Philip Monk
65f5b95146
spider: convert dns 2019-11-05 23:28:20 -08:00
Philip Monk
9f0b1f9ae9
language-server: forward port changes to static gall 2019-11-05 20:33:11 -08:00
Philip Monk
545fe25cd2
language-server: address review comments 2019-11-05 20:26:33 -08:00
Philip Monk
7448432707
drum: don't print stack trace on phat reap 2019-11-05 20:05:31 -08:00
Joe Bryan
c26d547625 hood: adds |goad-gall generator 2019-11-05 13:04:27 -08:00
Philip Monk
faf3741b41
mall: convert chat-store 2019-11-05 11:30:58 -08:00
Jared Tobin
3fac197ec1
Merge branch 'eth-watcher-2' (#1895)
* eth-watcher-2: (21 commits)
  eth: move existing chain requests into ethio
  eth-watcher: refactor refresh rate to top of file
  hook: add pool-group-hook for making invite groups
  ethio: add +read-contract for chain state reading
  zuse: add delegated-sending address
  eth: move eth-watcher's request-rpc into ethio lib
  gaze: make compile for latest eth-watcher
  drum: start eth-watcher on boot
  azimuth-tracker: remove deprecated generator
  eth: implement azimuth-tracker using eth-watcher
  eth-watcher: ensure logs always sent oldest-first
  eth-watcher: allow peers to unconfigured watchdogs
  eth-watcher: saner %watch behavior
  eth-watcher: implement %clear poke
  eth-watcher: store logs in state to implement peer
  eth-watcher: move types into /sur file
  eth-watcher: properly tag out-peer-data
  eth-watcher: single update timer loop
  eth-watcher: implement /block peek
  eth: turn azimuth-tracker into eth-watcher
  ...

Signed-off-by: Jared Tobin <jared@tlon.io>
2019-11-05 17:11:19 +08:00
Philip Monk
0e2da1e130
mall: convert lanaguage-server 2019-11-04 23:47:27 -08:00
Philip Monk
189f6cc955
language-server: fix rune typos 2019-11-04 23:46:46 -08:00
Philip Monk
aea2a76363
Merge branch 'philip/language-server' into philip/mall-real 2019-11-04 21:44:17 -08:00
Philip Monk
0638d23840
mall: forward port userspace changes 2019-11-04 21:35:42 -08:00
Philip Monk
82513c27fc
Merge branch 'master' into philip/mall-real 2019-11-04 19:35:24 -08:00
Philip Monk
0713d3d38c
language-server: multiple files and ford
Handle multiple files by keeping a map of text buffers.  Also use the
Ford parser so we can parse ford runes.  At some point we should load in
libraries when that happens so we have the appropriate types.

This corresponds to hoon-language-server 0.1.1
2019-11-04 18:18:36 -08:00
Fang
8c452ef61f
Merge branch 'eth-watcher-2' into pool-group-hook 2019-11-04 20:52:29 +01:00
Fang
5c6c75c7ea
eth: move existing chain requests into ethio
To avoid reimplementing these (on top of ethio) every time. This seems
like a good place to centralize chain request logic going forward.
2019-11-04 18:59:30 +01:00
Philip Monk
8fe859ad49
language-server: namespace libraries 2019-11-03 21:54:04 -08:00
Philip Monk
647c0ddf8b
language-server: cleanup and incremental text sync 2019-11-03 21:46:15 -08:00
Philip Monk
da71dac4ab
language-server: initial commit
A simple language server engine, for use with hoonls.py, which presents
the RPC interface expected by editors.  Features:

- Syntax error detection
- Rune snippets
- Autocomplete
2019-11-03 21:42:35 -08:00
Jared Tobin
988b3a4785
Merge branch 'philip/tab-complete' (#1899)
* philip/tab-complete:
  auto: gain and lose types on ?:
  auto: handle tab in middle of symbol
  auto: support forks
  auto: support autocomplete inside wings
  auto: fix some crashes on strange wet gates
  auto: support multiline tab completion
  auto: don't look in context of non-gold cores
  easy-print: don't crash if type-check crashes
  dojo, drum: change %tab sole-effect to use tanks
  dojo, auto: move insert-magic logic to lib/auto
  dojo, drum: give tab completion as true output
  dojo: add a better function printer
  dojo: add tab completion

Signed-off-by: Jared Tobin <jared@tlon.io>
2019-11-03 22:09:55 +08:00
Ted Blackman
9a02c64b45 Merge branch 'master' into alef-testnet-merge
Untested, has not been run.
Uses master pills for now.  Will need refreshing.
2019-11-02 23:37:01 -04:00