Commit Graph

1276 Commits

Author SHA1 Message Date
Philip Monk
e7bf9cc190
ph: fix now that ford builds are often dripped 2020-04-23 19:07:33 -07:00
Logan Allen
d29ea5703e channel-js: fixed long-standing issue with subscription errors not being propagated 2020-04-23 16:51:53 -04:00
Liam Fitzgerald
ec03c29b72 chat-hook: fix variable name 2020-04-23 23:12:30 +10:00
Ted Blackman
e10bc43c4a app/: images load in web client again 2020-04-23 01:51:34 -04:00
Ted Blackman
2f65285666 Revert "Revert "lowercase image files""
This reverts commit bd8a0fe9e7.
2020-04-23 01:18:53 -04:00
Ted Blackman
bd8a0fe9e7 Revert "lowercase image files"
This reverts commit 5231031b60.
2020-04-22 22:35:04 -04:00
Fang
a810468dcf
Merge pull request #2777 from urbit/ixv/publish-groupify
publish: groupify notebooks
2020-04-23 02:00:24 +02:00
matildepark
5ccfd0537b
Merge pull request #2740 from liam-fitzgerald/lf/chat-group-autoleave
chat: leave chats associated with group on group leave
2020-04-22 18:41:10 -04:00
Isaac Visintainer
f46bc4b397 publish: addressed review, fixed issue with metadata 2020-04-22 15:14:24 -07:00
Logan Allen
c374e17ba5 contact-view: redirect upon url case of avatar 2020-04-22 18:08:59 -04:00
Ted Blackman
09b1606ca6 soto: whitespace cleanup 2020-04-22 17:41:25 -04:00
Logan
c36c5a9bd3
Merge branch 'master' into os1-avatar 2020-04-22 11:42:33 -04:00
Jared Tobin
5b9887ca19
Merge branch 'la-contact-delete-fix' (#2738)
* origin/la-contact-delete-fix:
  t groups + contacts: make removes completely clean up state
  contact-js: made channel handle onChannelError
  contact-hook: tested it, got /synced path working, and subscriptions loading
  contacts: fix group deletion and do some quality of life fixes

Signed-off-by: Jared Tobin <jared@tlon.io>
2020-04-22 14:04:19 +04:00
Ted Blackman
5231031b60 lowercase image files 2020-04-22 05:44:21 -04:00
Ted Blackman
627bb565c2 boots off gall using fusion to build apps; some app errors on boot, but usable 2020-04-22 05:27:36 -04:00
Logan Allen
f6a2f7f83c contact: finish %octt implementation 2020-04-21 19:59:03 -04:00
Isaac Visintainer
49463197f5 publish: add groupify action 2020-04-21 14:34:40 -07:00
Logan Allen
2f7e8fd811 contacts: added "url" avatar support and finished "octet" avatar
fetching support
2020-04-21 15:29:47 -04:00
Logan Allen
6d4a694aeb t groups + contacts: make removes completely clean up state 2020-04-21 15:00:43 -04:00
Jared Tobin
358aa5025f
Merge branch 'liam-fitzgerald/lf/chat-markdown-input' (#2756)
* liam-fitzgerald/lf/chat-markdown-input:
  chat-js: revive # prefix for code messages
  chat-js: toggle code editor on icon click
  chat-js: disabled block level elements in messages
  chat-js: render markdown in messages
  chat-js: use CodeMirror for chat input
  chat-js: add CodeMirror dependency

Signed-off-by: Jared Tobin <jared@tlon.io>
2020-04-21 13:06:18 +04:00
Jared Tobin
a9d10a5471
Merge branch 'liam-fitzgerald/lf/publish-del-edit' (#2734)
* liam-fitzgerald/lf/publish-del-edit:
  chat-fe: move cancel button below comment edit
  publish-js: lift editing state to comment list
  publish: fix check on edit-comment delta
  publish-js: avoid unnecessary scrollbars on note view
  publish-js: allow deletion and editing of comments
  publish: use @tas for comment ref in marks

Signed-off-by: Jared Tobin <jared@tlon.io>
2020-04-21 13:05:57 +04:00
Ted Blackman
e1146a820b remove temporary :spider2 agent 2020-04-21 01:05:56 -04:00
Ted Blackman
69f809ff3e use fusion in :spider 2020-04-21 01:05:05 -04:00
Ted Blackman
8b4ad9bfc9 :spider2 works with threads in subfolders 2020-04-21 00:22:54 -04:00
Liam Fitzgerald
4083af515e Merge branch 'master' into lf/chat-markdown-input 2020-04-21 13:56:30 +10:00
Liam Fitzgerald
a978ca2b5a chat: autoleave on watch-ack 2020-04-21 07:50:27 +10:00
Liam Fitzgerald
e21f9d772a chat: leave chats associated with group on group leave
When a group is left, the permissions no longer exist and the mailbox
subscription is kicked. Before attempting to resubscribe, we simply
check if we still have permissions and if not, leave the chat.
2020-04-21 07:47:48 +10:00
Jared Tobin
a2eaec6d6f
Merge branch 'm/link-perf' (#2728)
* origin/m/link-perf:
  link-listen-hook: partially revert 05e6519
  link fe: refactor message display into component
  link fe: more informative "empty list" display
  link-view: in pagination logic, only +lent once
  link: minimal initial view result
  link-view: add some hints to aid profiling

Signed-off-by: Jared Tobin <jared@tlon.io>
2020-04-20 12:40:58 +04:00
Ted Blackman
d1df818453 :spider2 works with ford-fusion 2020-04-19 23:25:46 -04:00
Ted Blackman
47d1d31a8d WIP :spider2 (actually committed) and -tree (untested) 2020-04-19 05:18:14 -04:00
Ted Blackman
4bf854c180 WIP :spider2 using ford-fusion 2020-04-19 05:11:01 -04:00
Fang
dbc172af29
Merge pull request #2758 from urbit/m/chat-cli-order
chat-cli: account for reverse message ordering
2020-04-18 13:16:54 +02:00
Fang
0815c56d1d
Merge pull request #2746 from urbit/m/chat-hook-leave
chat-hook: on %remove, try our best to pull subs
2020-04-18 13:13:53 +02:00
Fang
9f42d420b3
chat-hook: remove incorrect comment
We do, in fact, use it. Implicitly, when reestablishing the subscription during
kick handling.
2020-04-18 13:13:08 +02:00
Liam Fitzgerald
4d118ce6c4 chat-js: revive # prefix for code messages 2020-04-18 15:10:19 +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
Liam Fitzgerald
a7a539bb24 link: leave collection on leaving associated group
Automatically leaves a collection when the user is removed from a group
2020-04-16 21:45:58 +10:00
Fang
4c4858f198
chat-hook: clarify backlog wire handling logic 2020-04-16 01:44:36 +02:00
Fang
0f05ed3149
chat-hook: consistently pull backlog subs
We weren't accounting for backlog subscriptions with non-zero message
indexes in their wires. Now, we look through all of our outgoing
subscriptions to identify relevant backlog subscriptions, and leave all
of those.

The more proper fix here is to not include message indexes in the wire
in the first place, since we don't ever reuse that anywhere. But that's
a more invasive change, so we just leave a TODO for it instead.
2020-04-15 19:26:58 +02:00
Fang
084ce356a8
chat-hook: on %remove, try our best to pull subs
Previously, we were removing the relevant entry from the `synced` map
before calling `+pull-wire`, which requires an entry to still be there.
This lead to subscriptions not actually being pulled, commonly leading
to "subscribe wire not unique" errors on re-join.

In addition to fixing that, `%remove` actions now try to pull the
subscription regardless of whether they have an entry in the `synced`
map or not. `%leave` is always safe, and we might want to clean up
subscriptions that shouldn't be there anymore in the first place.
2020-04-15 16:29:26 +02:00
Liam Fitzgerald
963d04831d Merge branch 'master' into lf/publish-del-edit 2020-04-15 10:07:29 +10:00
Liam Fitzgerald
c46642af8d publish: fix check on edit-comment delta
An incorrect check caused comment editing to never be propagated.
2020-04-15 09:57:07 +10:00
Logan Allen
bfcaf6468e contact-hook: tested it, got /synced path working, and subscriptions loading 2020-04-14 18:05:32 -04:00
Logan Allen
b6e4566e61 contacts: fix group deletion and do some quality of life fixes 2020-04-14 21:33:01 +00:00
ixv
e5cf4fb813
Merge pull request #2720 from urbit/la-channel-err
channel.js: added way to handle event source errors more smoothly, and implemented in chat
2020-04-14 11:40:02 -07:00
Fang
7b5f7cde6b
link-listen-hook: partially revert 05e6519
We still want to auto-opt-in to new collections for _unmanaged groups_,
because we have no other way to join them.
2020-04-14 16:12:09 +02:00
Isaac Visintainer
d8cdbfdeb8 release: urbit-os-v1.0.13 2020-04-13 19:26:13 -07:00
ixv
228bee42e4
Merge pull request #2707 from urbit/ixv/cache-posts
publish: eagerly store your own changes
2020-04-13 16:54:41 -07:00
Isaac Visintainer
78023b8eff publish: ignore edit updates if they originated with us 2020-04-13 13:34:50 -07:00
Isaac Visintainer
7edcd65699 publish: add facilities for managing limbo state 2020-04-13 13:33:34 -07:00
Fang
4da0d636d3
link-view: in pagination logic, only +lent once
Also just use +swag instead of chaining +scag and +slag manually.
2020-04-13 21:26:44 +02:00
Fang
8f3d174c94
link: minimal initial view result
On initial load, instead of getting the first 25 links for every
collection, only get their totals and unread counts. This drastically
reduces the pageload time.

Updates the frontend to match:
- Handle initial results without link content.
- Dynamically load in collection's links, even for page 0.
2020-04-13 21:26:09 +02:00
Fang
bf42afbd56
link-view: add some hints to aid profiling 2020-04-13 21:15:51 +02:00
Isaac Visintainer
2608dea563 publish: style changes and comments 2020-04-13 00:04:33 -07:00
Isaac Visintainer
d3ab26e57c publish: restore OS0 -> OS1 transition logic 2020-04-12 23:38:54 -07:00
Isaac Visintainer
a40d292bb7 publish: remove or add posts/comments from limbo depending on whether they succeeded or failed 2020-04-12 23:21:42 -07:00
Isaac Visintainer
d2fdae4d4b publish: immediately store post and comment changes 2020-04-12 23:21:42 -07:00
Isaac Visintainer
f9e17e61a2 publish: update state with limbo field 2020-04-12 23:21:42 -07:00
Philip Monk
17fa15336f
clay: fix %init for -merge 2020-04-10 20:42:56 -07:00
Logan Allen
fb3111e88a channel.js: added way to handle event source errors more smoothly, and implemented in chat 2020-04-10 19:38:13 -04:00
Logan Allen
8ffca926e7 chat-js: reverted built files 2020-04-10 17:34:23 -04:00
Logan Allen
6d1efde884 chat-js: fixed scrollback for reverse message chatrooms 2020-04-10 17:29:23 -04:00
Logan Allen
b85697cbec chat-hook: respect backlog index, no longer truncate 2020-04-10 15:25:58 -04:00
Logan Allen
be1d5cee56 chat-store: flop envelopes in handle-messages so backlog comes in correct order 2020-04-10 15:25:58 -04:00
Logan Allen
8cdfb559f6 chat-view and hook: style pass and backlog truncation 2020-04-10 15:25:58 -04:00
Logan Allen
ecc8942eaf chat: reversed order that messages are stored in for faster performance 2020-04-10 15:25:58 -04:00
Isaac Visintainer
eef6e56dca release: urbit-os-v1.0.12 2020-04-09 17:47:55 -07:00
Fang
05e651970e
link: require explicit opt-in for new collections
Instead of auto-watching a new collection when it gets added to group
associations, require that the user explicitly choose to view it.

Of course, creation counts as opting in, so watch the collections we
create by default.
2020-04-09 19:01:58 +02:00
ixv
482e87f8fc
Merge pull request #2662 from urbit/la-app-hints
apps: added hints to the top of many networked apps
2020-04-03 10:22:23 -07:00
Isaac Visintainer
b5b19adb8c launch: handle change in url parsing 2020-04-02 19:01:36 -07:00
Fang
f494854dc0
Merge pull request #2641 from urbit/m/eth-watcher-timeout
eth-watcher: separate timeout from refresh-rate
2020-04-03 02:00:07 +02:00
Isaac Visintainer
5faaa6c710 release: urbit-os-v1.0.10 2020-04-02 15:54:24 -07:00
ixv
35fa913113
Merge pull request #2661 from urbit/ed/groups-add-channel-icons
groups: add channel type icons
2020-04-02 15:30:13 -07:00
Matilde Park
c873c4d01b chat: add spinner component and behaviours 2020-04-02 18:19:50 -04:00
Matilde Park
afec74cb2e groups: add componentised spinner and behaviours 2020-04-02 18:19:48 -04:00
Matilde Park
d49ace002d soto: add componentised spinner 2020-04-02 18:18:14 -04:00
Matilde Park
1bc973c520 link: reimplement spinner as component 2020-04-02 18:18:10 -04:00
Matilde Park
48c9bdc702 publish: componentise spinner as part of layout
This commit pulls the spinner out of the header bar -- and
reincorporates it as a component that hooks into local state when
awaiting a new prop, or disabling an input.
2020-04-02 18:17:11 -04:00
édouard
4cd7c77ad3 groups: add channel type icons
Adding three new icons for group channels (as seen in the groups view)
2020-04-02 18:15:51 -04:00
Logan Allen
99878eb65d apps: added hints to the top of many networked apps 2020-04-02 17:49:46 -04:00
Logan Allen
717b02ad6f chat: added jet hints 2020-04-02 17:43:03 -04:00
ixv
f6954e6a55
Merge pull request #2644 from urbit/mp/group-typing
groups: show tile icon, not full color; alphabetically sort group channels
2020-04-02 07:18:05 -07:00
ixv
d1a440fab9
Merge pull request #2636 from liam-fitzgerald/lf/dojo-gen-autocomplete
dojo: add autocomplete for various dojo syntaxes
2020-04-02 07:17:02 -07:00
ixv
e2022ed3a6
Merge pull request #2619 from liam-fitzgerald/lf/who-endpoint
/who JSON endpoint
2020-04-02 07:16:50 -07:00
Logan
0ce28806a9
Merge branch 'master' into matilde/interface-prod 2020-04-01 22:24:33 -04:00
Liam Fitzgerald
0115177eea launch: create new state-version for %serve 2020-04-02 09:12:39 +10:00
Liam Fitzgerald
ed7d9fb164 launch: move %serve card to types core 2020-04-02 08:52:59 +10:00
Liam Fitzgerald
eeebfc0114 launch: address review comments for /who endpoint 2020-04-02 08:50:01 +10:00
Liam Fitzgerald
e16c999c76 launch: add /who endpoint
The /who endpoint responds with the name of the ship in JSON
2020-04-02 08:16:08 +10:00
Fang
809befb6fc
clock: ensure launch is listening correctly
In the wild, ships that were live pre-OS1 still had launch subscriptions
open to the clock on the /tile path, instead of the currently-used
/clocktile path. Additionally, launch state for the clock tile seemed
incomplete.

Here, we simply re-%add the clock to launch.

Note that launch currently does not clean up old subscriptions on
path change. For the pre-OS1 case, the old path is no longer in use,
rendering the subscription harmless. For cases where the correct
subscription was already in place, it'll print a %watch-wire-not-unique,
but doesn't do any harm besides that.
2020-04-01 23:13:57 +02:00
Fang
b62105cce4
clock: add dbug 2020-04-01 22:26:07 +02:00
Fang
6fef6a996a
weather: add verb 2020-04-01 22:25:54 +02:00
Matilde Park
e1af036f1c groups: show tile icon, not full color 2020-04-01 15:26:47 -04:00
Fang
2223a85666
eth-watcher: separate timeout from refresh-rate
Previously, when the refresh-rate timer activated, and the thread from
the previous activation was still running, we would kill it and start
a new one. For low refresh rates, on slower machines, nodes, or network
connections, this could cause the update to never conclude.

Here we add a timeout-time to eth-watcher's config. If the refresh-rate
timer activates, and a thread exists, but hasn't been running for at
least the specified timeout-time yet, we simply take no action, and wait
for the next refresh timer.

Note that we opted for "at least timeout-time", instead of killing &
restarting directly after the specified timeout-time has passed, to
avoid having to handle an extra timer flow.

In the +on-load logic, we configure the timeout-time for existing
watchdogs as six times the refresh-rate. We want to set
azimuth-tracker's timeout-time to ~m30, and don't care much about other,
less-likely-to-be-active use cases of eth-watcher.
2020-04-01 12:47:38 +02:00
Liam Fitzgerald
4433b99011 dojo: change autocomplete to use sell
Change autocomplete to prettyprint variables with sell instead of
xsell
2020-04-01 14:22:04 +10:00
Liam Fitzgerald
ff8c7a61d5 dojo: fix hood shortcut 2020-04-01 12:29:14 +10:00
Liam Fitzgerald
ed7f8be424 dojo: add autocomplete for various dojo syntaxes
Adds autocomplete for
- :app poke syntax
- :app|gen poke generator syntax
- +gen naked generator syntax
- =var variable syntax
2020-04-01 11:28:27 +10:00
Isaac Visintainer
93c881cec9 release: urbit-os-v1.0.9 2020-03-31 16:45:40 -07:00
ixv
e76fe83ea1
Merge pull request #2615 from urbit/mp/grouping-take-2
os1: reintegrating groups into all Landscape applications
2020-03-31 15:17:57 -07:00
Isaac Visintainer
64a6e89be6 launch: remove groups tile here rather than in contact-view 2020-03-31 11:49:57 -07:00
Fang
56df6dc94f
link-listen-hook: recover neglected collections
During the #2607 upgrade, strictly local collections got left out of the
listening set. (Because they did not have any outgoing subscriptions.)
This led to personal collections not being available on the frontend.

Here, we add upgrade logic for adding those back to our listening set again.
If a user had explicitly left a personal collection (instead of deleted it, for
whatever reason), they will have to leave it again. This case seems much more
rare than the "my collection is gone" one.
2020-03-31 19:10:07 +02:00
Isaac Visintainer
12f150659b release: urbit-os-v1.0.8 2020-03-30 20:28:35 -07:00
ixv
31794ebacf
Merge pull request #2609 from urbit/m/group-kick-fix
group-hook: fix resubscribe bug
2020-03-30 17:59:51 -07:00
ixv
8f1655171d
Merge pull request #2616 from urbit/two-round
chat-js: improve subscription speed by doing two rounds of subscriptions and no longer subscribing to groups
2020-03-30 17:48:39 -07:00
Logan Allen
49476aac66 chat-js: refactored subscriptions to auto-resubscribe 2020-03-30 18:07:33 -04:00
Logan Allen
c2070dbcc6 chat-js: pass in groups property, convert from permissions 2020-03-30 17:59:52 -04:00
matildepark
2f3d681975
launch, link: apply @Fang- suggestions to #2615 review
Co-Authored-By: Fang <git@fang.io>
2020-03-30 15:50:16 -04:00
Logan Allen
f1a0b30c1f apps: added a duplicate channel.js for caching, updated script tags to point to it 2020-03-27 20:08:44 -04:00
Isaac Visintainer
6443424012 contact-view: remove tile 2020-03-27 14:18:03 -07:00
Matilde Park
003089bf11 soto: add %add launch-action 2020-03-27 15:30:55 -04:00
Matilde Park
891018159a launch: add group filter dropdown, header redesign 2020-03-27 12:45:51 -04:00
Matilde Park
5516d2ebdb launch: add %remove launch-action 2020-03-27 12:44:49 -04:00
Fang
058dcdf100
contact-hook: less destructive catch-up on-sub
(Re)subscribing gets us a %contacts update, containing the full set of
contacts as it currently exists.

Previously, we would fully delete our local state, only to recreate it
using the data from the update.

Now, we never delete existing data, instead only creating if we don't
have it yet, and adding, removing or recreating contacts if they
changed.

In the future, we'll want an easy way to turn two contacts into an %edit
diff, to let us apply correct semantics to individual contacts, too.
2020-03-27 14:21:03 +01:00
Fang
4551c74e3a
group-hook: on %path group-update, don't %unbundle
Instead, %bundle and %add if we don't have the group locally yet,
or %add and %remove whatever the difference is between the local group
and the group as specified in the %path update.
2020-03-27 12:38:08 +01:00
Fang
4220b91fae
metadata-hook: use dbug agent wrapper 2020-03-27 01:30:30 +01:00
Fang
4940501f3b
group-hook: use actual synced data in +on-load
It's gonna be ~ if we pull it from the app core during +on-load.
2020-03-26 23:58:15 +01:00
Logan Allen
221238c0fa chat-js: improve subscription speed by doing two rounds of subscriptions and no longer subscribing to groups 2020-03-26 17:41:11 -04:00
Fang
22bb2a0d86
group-hook: on-load, re-establish subscriptions
For every item in the synced map that doesn't have a matching outgoing
subscription, re-establish the subscription we expect to have.
2020-03-26 20:19:18 +01:00
Fang
ea48161334
group-hook: touch up watch-nack and kick logic
In both, we make clear that the wire is always of the /@/group/^ form,
and alias the "group path" portion of the wire for clarity.

For kick, more obviously reuse the same wire, don't reconstruct it.

For watch-nack, only delete from the synced map if the source of the
watch-nack is still relevant. While we don't expect this to be relevant
considering current mode of operation, this does protect us against
strange cases.
2020-03-26 20:18:45 +01:00
Fang
bf912f6aac
group-hook: fix incorrect on-kick logic
It was checking and resubscribing on the full wire, instead of the
part of the wire that represents the group path.
2020-03-26 20:06:31 +01:00
Isaac Visintainer
0d3e409f7c release: urbit-os-v1.0.7 2020-03-26 09:25:02 -07:00
ixv
b8a222ea75
Merge pull request #2606 from urbit/la-scrollback
Scrollback fixed and tested in Brave, Safari, and Chrome
2020-03-26 09:02:24 -07:00
Logan Allen
2719a24dcc chat: decreased message limit to 20, now asking for more messages upon navigating to a chat channel when we have < 100 messages for that channel 2020-03-25 19:48:35 -04:00
ixv
755fbb7d14
Merge pull request #2583 from urbit/mp/os1/welcome
os1: add startup content
2020-03-25 16:26:01 -07:00
Fang
5f94fe0cf4
link-listen-hook: explicitly track subscriptions
Instead of going purely off metadata, we now track the collections we're
listening to, and allow the user to remove collections from that list.

This allows us to remove/ignore collections, without mutilating group
assocations locally.
2020-03-25 22:41:20 +01:00
Logan Allen
a787eceae9 chat-js: turned off perf testing 2020-03-25 17:36:51 -04:00
Logan Allen
eb51ff693c chat: changed initial scrollback to 50 because 25 short messages wouldn't trigger any scrollbar at all, and fixed scrollback condition 2020-03-25 17:35:51 -04:00
Logan Allen
8d64d9d253 chat: fixed indentation
logging for scrollback
2020-03-25 17:34:59 -04:00
Fang
073b86be15
link-store: don't send update if not new
We were taking care not to re-add something to our data store if we
already had it in there, but were still sending out an update
regardless.

With this, we only send out an update if we weren't previously aware
of the content.
2020-03-25 22:12:49 +01:00
Isaac Visintainer
f7133f77e0 release: urbit-os-v1.0.6 2020-03-24 15:45:34 -07:00
Jared Tobin
cd9f23d6db
Merge branch 'liam-fitzgerald/lf/chat-patp-autocomplete' (#2571)
* liam-fitzgerald/lf/chat-patp-autocomplete:
  chat-fe: fix incorrect property in css
  chat-fe: improve name legibility in autocomplete
  chat-fe: match autocomplete to designs
  chat-fe: autocomplete nicknames in message input
  chat-fe: ignore comets in autocomplete
  chat-fe: correct light mode autocomplete styling
  chat-fe: add patp autocomplete to message input

Signed-off-by: Jared Tobin <jared@tlon.io>
2020-03-24 17:37:51 +04:00
Liam Fitzgerald
ca8f436fd0 chat-fe: fix incorrect property in css 2020-03-24 11:01:46 +10:00
Liam Fitzgerald
302c3dc4cc chat-fe: improve name legibility in autocomplete 2020-03-24 10:50:53 +10:00
Fang
f2986af4b3
Merge pull request #2582 from urbit/m/chat-backlog-limit
chat-view: limit initial scrollback to 25 msgs
2020-03-23 19:14:26 +01:00
Liam Fitzgerald
6c403f5135 chat-fe: match autocomplete to designs 2020-03-21 13:52:41 +10:00
Liam Fitzgerald
9c759a7e68 chat-fe: autocomplete nicknames in message input 2020-03-21 13:49:57 +10:00
Fang
376af254af
chat-view: limit initial scrollback to 25 msgs
Provided "load backlog on-scroll" actually works, you don't really need
all that much on initial load.
2020-03-20 20:47:15 +01:00
Isaac Visintainer
e5f701e4a5 launch: add startup bool 2020-03-20 12:06:10 -07:00
ixv
9f997fb5b8
Merge pull request #2579 from urbit/m/chat-hook-cleanup-subs
chat-hook: clean up pre-OS1 subscriptions
2020-03-20 11:35:15 -07:00
Fang
1e1c26e306
chat-hook: clean up pre-OS1 subscriptions
If chats with identical resource paths were created, that would result
in chat-hook seeing updates twice.

These "/mailbox wire sub to local chat-store" subscriptions aren't
created by the current logic anymore, and as such any existing ones
should be eradicated.
2020-03-20 17:56:17 +01:00
Liam Fitzgerald
14399777e0 chat-fe: ignore comets in autocomplete 2020-03-20 15:30:04 +10:00
Isaac Visintainer
a645f939ad release: urbit-os-v1.0.5 2020-03-19 16:40:17 -07:00
Isaac Visintainer
83fc700d41 release: urbit-os-v1.0.4 2020-03-19 11:19:30 -07:00
Fang
bee7f67d45
Merge pull request #2518 from urbit/m/chat-hook-watch-nack
chat-hook: clear all subscriptions on watch-nack
2020-03-19 15:35:26 +01:00
Fang
a162ab0e73
chat-hook: handle watch-nack for /store wires too
Similar to /backlog wires, we want to emulate %remove behavior on-nack.
2020-03-19 15:32:40 +01:00
Jared Tobin
7a7fe45677
Merge branch 'm/chat-groupify-extra' (#2546)
* origin/m/chat-groupify-extra:
  chat-view: %delete even without association
  frontend: apply ec6c2ed69 to link, publish, groups
  chat fe: clarify copy
  chat fe: support adding chat to existing group
  chat fe: invite search with/out ships
  chat-view: allow %groupify into existing group
  chat-view: add docs for %create action

Signed-off-by: Jared Tobin <jared@tlon.io>
2020-03-19 14:35:59 +04:00
Jared Tobin
2b794da987
Merge branch 'philip/goad-force' (#2539)
* origin/philip/goad-force:
  goad: run with %force on kernel change

Signed-off-by: Jared Tobin <jared@tlon.io>
2020-03-19 14:34:07 +04:00
Fang
d823448635
chat-view: %delete even without association
Previously, running %delete had a hard dependency on a (metadata-store)
association being present for the chat. If a remotely-hosted chat got
deleted, that would delete the association, preventing us from deleting
the chat for ourselves.

Now, we simply neglect to do related metadata deletions if no
association was present in the first place.
2020-03-19 01:33:33 +01:00
Fang
54eece11af
chat-view: allow %groupify into existing group
Will add the chat to an existing group, optionally adding chat members
who aren't part of the group yet to the group.
2020-03-18 21:54:28 +01:00
Isaac Visintainer
a9f8a2bd88 release: urbit-os-v1.0.3 2020-03-17 18:04:34 -07:00
Philip Monk
b830cf1486
goad: run with %force on kernel change
In many cases running without %force is insufficient because ford
crashes while unsubscribing.  This should fix some cases of OTAs being
received but not processed.
2020-03-17 17:06:48 -07:00
Fang
04b6ff9704
Merge pull request #2510 from urbit/m/chat-update-numbers
chat-store: include msg sequence nrs in update
2020-03-18 01:02:31 +01: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
Isaac Visintainer
9c495aa38a release: urbit-os-v1.0.2 2020-03-16 17:55:56 -07:00
ixv
254c3cf3a7
Merge pull request #2527 from urbit/ixv/publish-foreign-group-fix
publish: fix permissions issue
2020-03-16 17:28:46 -07:00
ixv
abc39cdc04
Apply suggestions from code review
Co-Authored-By: Fang <git@fang.io>
2020-03-16 17:05:23 -07:00
Isaac Visintainer
3f882b5a90 publish: fix permissions bug when notebook is associated with a foreign hosted group 2020-03-16 16:45:00 -07:00
Fang
be53e26d15
Merge pull request #2524 from urbit/m/chat-cli-shortcode
chat-cli: absolute parity wrt "shortcodes"
2020-03-17 00:38:27 +01:00
Fang
4b5a02fac8
Merge pull request #2480 from urbit/m/chat-groupify
chat: groupify
2020-03-16 18:37:29 +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
Jared Tobin
1dd2b77222
release: urbit-os-v1.0.1 2020-03-16 15:10:58 +04:00
Fang
62dfc5fd3c
chat-hook: clear all subscriptions on watch-nack
We would remove the entry from state, but not clean up its mailbox subscription.
2020-03-15 17:37:57 +01:00
Fang
9b5bc80016
chat-store: include msg sequence nrs in update
It was filling the number.envelope prior to adding the envelope to the
mailbox, but wasn't actually including that change in the %message(s)
update that was getting sent out.

This makes +append-envelope return both the updated mailbox _and_ the
modified envelope, which we then use in our outgoing update.
2020-03-14 23:15:41 +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
Logan Allen
43e4ca149e contact-hook: re-establish connection to group-store if subscription failed during ota 2020-03-13 19:32:28 +00:00
Fang
9793dccef0
chat-view: support %groupify
This upgrades an existing, unmanaged village chat into a full-fledged
group plus chat.
2020-03-13 18:15:34 +01:00
Fang
b77ab0f122
chat-view: add scry helper 2020-03-13 18:15:34 +01:00
ixv
33c422fca6
Merge pull request #2447 from urbit/la-unsubscribed-state
chat-hook: added ability to subscribe to chat-hook state from the front-end
2020-03-11 23:36:42 -07:00
Logan Allen
a0a39b87dc chat-hook: watch-ack successfully for store subscripttion kills 2020-03-11 23:13:31 -07:00
Isaac Visintainer
ba43f03726 chat-hook: resubscribe when kicked from chat-store 2020-03-11 22:21:56 -07:00
Logan Allen
84a9f23af6 chat-hook: fix ota chat backlog duplication 2020-03-11 20:43:41 -07:00
Logan Allen
cac98b2284 chat-hook: don't send invites upon on-load 2020-03-11 20:33:38 -07:00
Logan Allen
872c620c5a chat-js: styled the resubscribe element 2020-03-11 20:33:01 -07:00
Fang
55aa0cb610
apps: augment with /lib/dbug 2020-03-12 01:33:48 +01:00
Logan Allen
64a62df461 chat-hook: removed comments 2020-03-11 16:45:03 -07:00
Logan Allen
51eebf3407 chat-hook: send updates to synced every time the object changes 2020-03-11 16:45:01 -07:00
Logan Allen
64938e24e9 chat-hook: added ability to subscribe to chat-hook state from the frontend 2020-03-11 16:44:15 -07:00
ixv
d835cdbe0d
Merge pull request #2445 from urbit/m/link-proxy-initial
link-proxy-hook: correctly scry initial response
2020-03-11 16:31:19 -07:00
ixv
7ef54a1f09
Merge pull request #2442 from urbit/chat-ota-fix
chat-hook: ota fix and improvement on backlog fetching
2020-03-11 16:30:15 -07:00
Fang
f765b34459
link-proxy-hook: correctly scry initial response
Was using "manual" scries, and incorrect ones at that. Would crash, causing
subscriptions to not go through. Now uses the helper function and correct paths.
2020-03-11 23:38:09 +01:00
ixv
10f1e7e667
Merge pull request #2434 from urbit/m/chat-cli
chat-cli: support group-based chats
2020-03-11 14:11:07 -07: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
Logan Allen
10e0dca58c chat-hook: ota fix and improvement on backlog fetching 2020-03-11 12:12:51 -07:00
édouard
4aadbccfae contacts, publish: fixed/edited Tile icons
Turned the assets into ones that will play nice with dark mode (will properly invert their coloration without having weird visual zones)
2020-03-11 15:03:41 -04: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
Isaac Visintainer
5114cebfd7 publish: stop adding newlines, and fix post snippet on edit 2020-03-10 15:08:56 -07:00
Isaac Visintainer
0e9ea8c039 publish: fix notebook deletion card flushing bug 2020-03-10 15:08:38 -07:00
ixv
305a4874e2
Merge pull request #2428 from urbit/remote-pub-metadata
publish: update remote metadata group properly and only send invites …
2020-03-09 20:43:44 -07:00
Logan Allen
9a6a7b147d publish: update remote metadata group properly and only send invites for unmanaged notebooks 2020-03-09 17:05:06 -07:00
Logan Allen
17bea9a5bd chat: only send invites for unmanaged chats 2020-03-09 16:44:16 -07:00
Logan Allen
e0583be364 Merge branch 'merge-la-ota-work' of github.com:urbit/urbit into merge-la-ota-work 2020-03-09 12:40:43 -07:00
Logan Allen
e8c95157d4 chat-hook: emit cards upon upgrade AND store cards to be sent later upon chat-store trigger to support either order of updating 2020-03-09 12:40:04 -07:00
Logan
e160f0b0f4
Update pkg/arvo/app/contact-hook.hoon
Co-Authored-By: Fang <git@fang.io>
2020-03-09 12:29:49 -07:00
Logan Allen
3824402200 chat: upgraded chat-hook to move old chats to /~/chat-path
chat: ota attempt

chat: ota triggers chat-store to tell chat-hook to send cards to update chat-store's state

contact-view: commented out avatars and base64

chat: cleaned up commits
2020-03-08 13:05:10 -07:00
ixv
3e4d73d9e1
Merge pull request #2403 from urbit/publish-meta-ota
publish: check if metadata-store has started before scrying it
2020-03-05 20:35:27 -08:00
Logan Allen
1a8dfccf22 publish: check if metadata-store has started before scrying it 2020-03-05 15:43:12 -08:00
ixv
3c039bce39
Merge pull request #2378 from urbit/m/link-meta
link: metadata integration
2020-03-05 15:09:59 -08:00
Fang
fd9c6cee5d
link fe: various ui/ux fixes based on feedback
Also sneaks in a grammar correction for link-listen-hook documentation.
2020-03-05 22:42:02 +01:00
ixv
a16e40228d
Merge pull request #2399 from urbit/publish-metadata
publish: integration with metadata
2020-03-05 11:56:03 -08:00
Logan Allen
37820e5f51 publish: fill in title and description when importing, style 2020-03-05 11:44:34 -08:00
Logan Allen
3ace135c18 publish: integration with metadata 2020-03-04 15:56:48 -08:00
Matilde Park
aee2496588 contacts: rename, migrate '~contacts' to '~groups' 2020-03-04 16:13:12 -05:00
Fang
3e7f0dd9d8
link-view: support %delete and %invite actions
%delete tries to be as local as possible in its impact.
%invite deals with un/managed branching for you.
2020-03-04 22:11:54 +01:00
Fang
1f4e14f38a
link-view: include missing %create steps
Expose the metadata and set up a permission set for the group.
2020-03-04 22:06:24 +01:00
Fang
396d13ee1a
Merge branch 'os1-rc' of https://github.com/urbit/urbit into m/link-meta 2020-03-04 18:55:29 +01:00
Logan Allen
3210eac7e6 chat: only delete metadata for a chat if you created it 2020-03-03 16:10:54 -08:00
Fang
10842ecd92
link fe: remove references to chat & security 2020-03-03 18:31:08 +01:00
Fang
e524ffbdf6
link-view: use metadata-hook as advised in #2387 2020-03-03 16:47:07 +01:00
Logan Allen
eb1561cfc4 metadata-hook: support group members other than host creating shared resources 2020-03-02 16:50:20 -08:00
Fang
a382f7d41b
Merge branch 'os1-rc' of https://github.com/urbit/urbit into m/link-meta 2020-03-03 00:16:41 +01:00
Fang
111333ec93
link: can create managed groups for new collections
Just defers to contact-view for managed group creation.
2020-03-03 00:12:05 +01:00
Logan Allen
b8614cc7d8 chat + contact views: updated for style and to assert that group-path must be equal to app-path if there are ships in the members set 2020-03-02 11:10:29 -08:00
Logan Allen
e66fd1cbd6 chat-view: send invites when creating chat and group already exists 2020-03-01 17:08:16 -08:00
Logan Allen
5915840237 contacts + chat: move permission-hook syncing for managed groups to contact-view so everyone can depend on it 2020-03-01 16:38:46 -08:00
Logan Allen
bb0f56f17a chat + contacts: integrate managed groups with metadata 2020-03-01 15:40:49 -08:00
Fang
0539f3ca1f
link fe: metadata integration
- finds resources & displays details using metadata-store
- supports creating new collections for groups
- supports creating new collections with new unmanaged group
- supports receiving invites for new (unmanaged) collections
2020-03-01 02:10:35 +01:00
Fang
115fd1c14c
metadata-store: never crash fetching group metadata
In order to track & respond to all group-related metadata, hooks may
want to subscribe to the metadata-store in response to group creation.
In that case it is possible that there are no entries for the group-path
in group-indices yet.

This makes us fall back to the empty set in case group-indices has no
entry for the group-path yet.
2020-03-01 02:09:25 +01:00
Fang
0658367aaf
link hooks: discover resources with metadata-store
Instead of assuming groups to be singular resources, now depends on
metadata-store to discover %link resources, and the groups associated
with those.
2020-03-01 02:09:25 +01:00
Logan
3e235146ee
Merge pull request #2371 from litpub/bug/scroll-to-bottom-on-new-chat
chat: Fixes #2347 pushes chat to bottom on <Chat> mount
2020-02-29 16:35:38 -08:00
édouard
5474680e5c soto: swap out tile images
The previous Tile.png for the Dojo module (Soto) was a stylized rendering of "barcen" and could be seen as confusing. Fixing up the image to appear more *actually* glyph-like.
2020-02-28 16:16:37 -05:00
~litpub
701f83bc21 Fixes #2347 pushes chat to bottom on <Chat> mount 2020-02-28 13:02:31 -08:00
Logan
1cfd176434
Merge pull request #2369 from urbit/unmanaged-chats-rc
Unmanaged Chats Work Properly and Support Metadata Syncing
2020-02-28 11:52:54 -08:00
Logan Allen
c960075a11 chat: set metadata properly and incorporate fixes 2020-02-28 11:52:17 -08:00
Logan Allen
2b15010e66 chat: removed extraneous prints 2020-02-27 16:16:38 -08:00
Logan Allen
14b28a3d82 chat: unmanaged chats can be joined, have their title/description set, and send invites properly 2020-02-27 16:14:07 -08:00
édouard
f8bb003243
Merge branch 'os1-rc' into ed/qa-header-spacing-fixes 2020-02-27 19:06:33 -05:00
Logan
6587bc318d
Merge pull request #2367 from urbit/mp/os1/group/details
contacts: add group details page, metadata-store reducer
2020-02-27 15:28:44 -08:00
Fang
e7cbccbbf5
metadata-store: never crash fetching app metadata
In order to track & respond to all app-related metadata, hooks may want to
subscribe to the metadata-store as the first thing they do on-init. In that case
it is exceedingly likely that there are no entries for the app-name in
app-indices yet.

This makes us fall back to the empty set in case app-indices has no entry for
the app-name yet.
2020-02-28 00:16:09 +01:00
édouard
e8fdf3713d chat, contacts, dojo, links, publish: edited existing padding/margins/color/font-size of tab/header components
Basically, this PR includes a collection of edits made to the headers across each of our OS1 modules.
I flattened the font sizing, fixed edge margins/padding, and fixed some button copy in the case of the Contacts app.
2020-02-27 17:54:13 -05:00
Logan Allen
7abb371a20 chat: unmanaged chats are cleaned up and sync down metadata properly 2020-02-27 14:54:03 -08:00
Matilde Park
8ae2cc2680 metadata-store: fix 'associations' typo for /all 2020-02-26 22:43:40 -05:00
Isaac Visintainer
c502474942 Merge branch 'master' into os1-rc 2020-02-26 19:18:17 -08:00
Isaac Visintainer
8cd6160c55 publish: don't reset post dates on notebook import 2020-02-26 16:04:49 -08:00
Isaac Visintainer
8616bf06bf publish: ignore updates from old version 2020-02-26 16:04:42 -08:00
Isaac Visintainer
da31b74521 publish: don't leave notebooks on OTA 2020-02-26 16:02:39 -08:00
Isaac Visintainer
762bf136eb publish: set tile-num after OTA 2020-02-26 16:02:24 -08:00
Isaac Visintainer
db65ff546f publish: don't require a new notebook to trigger upgrading the old 2020-02-26 16:02:15 -08:00
Logan
c5f1f0f7d2
Merge pull request #2356 from urbit/os1-chat-integration
apps: main backend integration between metadata and chat
2020-02-26 14:51:36 -08:00
Logan Allen
eada785c2c chat-js + view: updated new page to work properly with group creation / selection 2020-02-26 14:21:20 -08:00
Logan Allen
0d69e17f3b apps: main backend integration between metadata and chat 2020-02-26 14:10:32 -08:00
matildepark
a1b9e34290
Merge pull request #2353 from urbit/mp/os1/publish/edit
publish: add 'edit note' functionality
2020-02-26 16:29:48 -05:00
Matilde Park
e6b38a1b47 publish: allow direct join from URL 2020-02-25 21:07:06 -05:00
Isaac Visintainer
9581a0535c publish: add publish invite path 2020-02-25 13:43:06 -08:00
Logan
1272a61443
Merge pull request #2324 from urbit/m/chat-ota
OS1 OTA: chat groups & permissions
2020-02-25 13:17:56 -08:00
Fang
82292cc152
chat-hook: on-migrate, only send invites for whitelists
Instead of also sending invites to blacklisted ships, which is obviously
incorrect.
2020-02-25 21:06:44 +01:00
Fang
53bc1d1996
chat-hook: on-migrate, send fresh invites
Accepting these post-upgrade should re-establish all the required
subscriptions. (But doesn't as of this commit, work still pending.)
2020-02-25 21:02:05 +01:00