Commit Graph

74 Commits

Author SHA1 Message Date
Liam Fitzgerald
371c98c035 chat-cli: remove unnecessary %gu scry
This is now redundant as chat-store will always boot before chat-cli.
2020-04-28 12:24:21 +10:00
Fang
6f13546e2d
chat-cli: account for reverse message ordering
#2618 changed the way chat-store orders messages. We need to account for that
when processing/printing. This is the minimum viable fix.
2020-04-16 16:52:40 +02:00
Fang
9498d9afa5
chat-cli: skip catch-up if chat-store not booted
This way we don't just crash on the scry that follows.
2020-03-17 15:49:01 +01:00
Fang
db5475b1ae
chat-cli: absolute parity wrt "shortcodes"
Downgrades unmanaged chat paths to their uglified versions, as used by
web chat. Removes "group-based" indicators and makes them implicit in
shorter paths instead.
2020-03-16 17:46:58 +01:00
Fang
6ac52b5523
chat-cli: set sane display width, if zero
Under mysterious conditions, chat-cli might get into a state where its
rendering width is set to zero. This makes sure we set it back to 80
if that's the case.

This commit is mostly just precaution.
2020-03-16 17:43:46 +01:00
Fang
123213b3be
chat-cli: ensure bound map is sorted
During upgrade, we gassed _in_ a map, instead of _by_, causing it to use
set-style sorting, leading to incorrect lookups.

This fixes that upgrade logic, and re-builds the map for existing instances.
2020-03-13 21:45:49 +01:00
Fang
064131e530
chat-cli: render incoming invites
Also removes message from invites sent from chat-cli,
and refactors a scry.
2020-03-11 21:52:26 +01:00
Fang
dfacd619eb
chat-cli: more-conventional state naming 2020-03-11 00:42:04 +01:00
Fang
22cc6ae629
chat-cli: support un- *and* managed chats
Re-enables chat creation, touches up invite logic, and makes everything
work with the new "un/managed" attribute of chats.

Changes the +target type, so requires state transition. We use that
opportunity to clean up our messages mirror (memory reclamation).

"Unmanaged" chats should work the same as they did before.
Group-based chats are secondary citizens, but supported by prepending
"group " to whatever target you want to use. ie:
;join group ~marzod/secret-club  ::  join a group-based chat
;group ~marzod/secret-club       ::  target a group-based chat

The latter case should be rarely needed, as glyphs remember this
attribute of their bound target.

Creating a group alongside a chat is supported through:
;create village-with-group /cool-kids

You can then invite to that group (and by extension the associated chat)
by doing:
;invite group /cool-kids ~rinsed-walrus
2020-03-11 00:40:21 +01:00
Fang
4740fdd493
chat-cli: use example of state instead of type
This prepares us for versioned state, and is more consistent with modern
app code style.
2020-03-10 23:56:24 +01:00
Fang
2c1539742b
chat-cli: add scry helper 2020-03-10 23:31:18 +01:00
Logan Allen
0d69e17f3b apps: main backend integration between metadata and chat 2020-02-26 14:10:32 -08:00
Isaac Visintainer
00a9eb9eab Merge branch 'master' into os1-rc 2020-02-19 16:04:21 -08:00
Fang
d840c384e1
chat-cli: remove r/w specifiers for invite and banish
No longer supported. As such, we also don't include that in the
permission path anymore.
2020-02-12 15:53:44 +01:00
Fang
27be1861db
chat-cli: no longer allows %mailbox and %journal chats
Also adds in some casts to ensure sane action data. The chat-view-action
changed in this commit should've been nest-failing.
2020-02-11 20:39:14 +01:00
Logan Allen
543420b68e chat: cleanup to change api to accept path instead of ship, path 2020-02-04 15:30:02 -08:00
Fang
da6f27c55c
dbug: augment various apps with /lib/dbug
Also includes lib/verb where it wasn't being used yet.
2020-01-21 12:36:03 -08:00
Jared Tobin
8afad66138
Merge branch 'm/chat-cli-reconnect' (#2147)
* m/chat-cli-reconnect:
  chat-cli: reconnect with actual bowl

Signed-off-by: Jared Tobin <jared@tlon.io>
2020-01-07 04:25:14 +08:00
Fang
0ff2f44f31
chat-cli: reconnect with actual bowl
Fixes a bug introduced in 4798b9d.

This, uh, fell into the same old case of using an arm from a |_ without
initializing that core with a sample first. In this case, that resulted
in the bowl in connect being the default bowl here. This is fine for
~zod, since it's the default ship, but gives incorrect behavior for
anyone else.
2020-01-07 04:21:49 +08:00
Fang
ae8a57ca25
gall: (list path) in %fact and %kick
Instead of providing a (unit path), allows for (list path), which better
supports the "update to path and subpath cases".

For example, if /things wants updates about everything, and
/things/specific wants updates about the specific thing, they'll both
need to receive a %fact when the specific thing changes.
Previously, these would have been two separate moves. Now, gall handles
the multi-targeting for you.
2019-12-23 13:37:32 +01:00
Fang
ea7c1db61c
various: use =/ in place of =+ ^-
Also faceless =; where appropriate.
2019-12-21 14:29:14 -03:30
Fang
4798b9df1f
chat-cli: reconnect to chat-store on-kick
Also reconnects on-load, if no chat-store subscription appears to be
open. This should resolve any current disconnects.
2019-12-21 13:02:33 +01:00
Fang
c814114d93
chat-cli: add trace printf for tuba crashes 2019-12-21 12:59:45 +01:00
Fang
5cd8d98dd6
chat-cli: don't pass mark into +poke-noun 2019-12-21 12:58:22 +01:00
Joe Bryan
c8958a2553 chat: give terminal bell on tab in an empty buffer 2019-12-06 12:03:32 -08:00
Joe Bryan
706d25ba79 chat: don't crash on tab in an empty buffer 2019-12-06 12:02:59 -08:00
Liam Fitzgerald
3f31904595 chat-cli: update tab-complete to static gall 2019-12-05 08:54:18 +10:00
Liam Fitzgerald
bcd94868cb Merge branch 'master' into tab-complete-chat 2019-12-05 08:40:41 +10:00
Fang
e882cd1346
chat-cli: our-self with bowl set
We were calling it directly, rather than through the (initialized) tc core,
causing the bowl in its context to be the *bowl, resulting in [~zod /] audience.
2019-12-04 01:09:39 +01:00
Liam Fitzgerald
9e6b08bbf1 chat-cli: autocomplete on empty command 2019-11-28 15:44:02 +10:00
Liam Fitzgerald
4acc1fe948 chat-cli: use tall-form cencab 2019-11-28 15:23:18 +10:00
Liam Fitzgerald
a53b4861a9 chat-cli: clarify tab completion suggestions 2019-11-28 15:21:51 +10:00
Liam Fitzgerald
6a17812ecc chat-cli: address style issues 2019-11-28 15:15:58 +10:00
Liam Fitzgerald
afc6c11580 chat-cli: add tab autocomplete
adds tab autocomplete with a static list of the chat-cli commands
2019-11-27 18:10:22 +10:00
Logan Allen
6b54bde272 chat-cli: fixed chat-cli bugs 2019-11-26 17:42:24 -08:00
Philip Monk
4d1457bbaa
Merge remote-tracking branch 'origin/master' into philip/mall-real 2019-11-24 00:01:04 -08:00
Fang
1245eb9238
chat-cli: update for sole changes
Now accounts for the leading session identifier in sole-action.
2019-11-23 21:49:23 -08:00
Fang
9da38d21db
chat-cli: use name:title 2019-11-22 13:01:33 +01:00
Fang
78e819fc17
chat-cli: make compatible with sole changes
Still supports only drum's session though.
2019-11-21 19:03:41 +01:00
Fang
8c948725b1
chat-cli: forward-port #1941 2019-11-21 19:03:25 +01: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
Jared Tobin
053c784de6
Merge branch 'chat-history' (#1948)
* chat-history:
  chat: added temporary chat-two-update mark with new %messages type
  chat: oust correctness fix and js style fix
  chat-store: factored out functions used in both message and messages
  chat: style fixes
  chat: fixes to cli parser and increased page size in hook
  chat-js: updated to support %messages events
  sur: added rw-security to replace chat-security
  chat: add history functionality. optionally request backlog.

Signed-off-by: Jared Tobin <jared@tlon.io>
2019-11-19 10:47:40 +08:00
Logan Allen
8421e236df chat: added temporary chat-two-update mark with new %messages type 2019-11-15 15:27:50 -08:00
Logan Allen
223fc8c5b4 chat: fixes to cli parser and increased page size in hook 2019-11-14 13:38:53 -08:00
Logan Allen
dcde20c86c sur: added rw-security to replace chat-security 2019-11-14 10:42:55 -08:00
Logan Allen
9cacb12dbc chat: add history functionality. optionally request backlog. 2019-11-14 10:42:52 -08:00
Fang
b31d5a6dc7
chat-cli: send invites on-;invite
This augments permission management with invite sending, when setting "positive"
permissions. This matches talk's behavior.

Also implements +full:tr, which renders as ~ship/path, even for local targets.
2019-11-13 00:09:18 +01:00
Philip Monk
ae295d445a
mall: rm old apps for easier merging 2019-11-09 16:53:42 -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