Commit Graph

17599 Commits

Author SHA1 Message Date
Fang
51f1f9e3a2
chat-hook: on-migrate, delete permission-hook entry
If we don't host a group, we can't (locally) delete it, but we do still
have a permission-hook entry we want to clean up. This does that
deletion, but still relies on the permission-hook logic to clean it up
in the local group case.
2020-02-24 22:52:40 +01:00
Fang
e5525b7d9e
chat-hook: on-migrate, configure permission-hook also
Permissions for the new group need to be exposed to the members of those
new groups. This makes the on-migrate logic poke the permission-hook for
that.
2020-02-21 23:57:58 +01:00
Fang
c3becc9f5f
chat-hook: fall back if metadata-store not live
This temporary, upgrade-oriented logic depends on two assumptions:
- If the metadata-store is not running, we are still in the process of
  applying the upgrade.
- If the above is true, all chats are /~host/name, all groups are
  /~/~host/name, and they have a strict one-to-one relation.

Armed with those assumptions, we can deduce groups from chats and vice
versa without depending on the metadata-store, allowing us to carry on
as if it were already running.
2020-02-21 23:57:57 +01:00
Fang
337dc03f6b
permission-group-hook: support /lib/dbug interface 2020-02-21 23:57:57 +01:00
Fang
4a45d2caa6
chat-hook: implement group/permission migration
We want to move from group/permission paths of the form /chat/~host/name
to /~/~host/name, merging the ./read and ./write permission paths into a
single permission matching the group path.
(The leading /~ signifies an "unmanaged" group, one used by apps
internally, and not explicitly exposed to the user as a contacts group.)

This upgrade logic does roughly the following, for every chat path, to
accomplish the migration:
1. delete ./read and ./write groups associated with the chat
2. create a new group containing an approximate "uni" of the old groups
3. register the chat + new group with the metadata-store
4. hook the group up to its matching permission set

Note that because existing groups are hooked up through the
permission-group-hook, doing step 1 deletes the associated permissions.
Step 4 then re-establishes that relation for the newly created group.

The logic here scries into the metadata-store, and as such depends on
that having been started prior to this upgrade process.
2020-02-21 00:50:17 +01:00
Fang
491ac5689f
chat-hook: use metadata-store for permission checks
When permissions change, find out which chats are impacted (on the
assumption that permission paths are group paths), then perform actions
wrt that chat accordingly.

When a chat is interacted with, find out which groups the chat is
associated with, then use those to perform permission checks. If the
check passes for any group, permission is granted.
2020-02-21 00:50:17 +01:00
Fang
9a9aaaaf17
chat-hook: add scry helper 2020-02-21 00:50:16 +01:00
Fang
16886c4876
metadata-store: support /lib/dbug interface 2020-02-21 00:50:16 +01:00
Fang
5a029967b7
drum: start metadata-store on-upgrade 2020-02-21 00:50:15 +01:00
Logan
a0b9e84ae5
Merge pull request #2318 from urbit/mp/os1/chat/spinner
chat: add new spinner, behaviours
2020-02-20 13:40:45 -08:00
Logan
d203c684e7
Merge pull request #2319 from urbit/mp/os1/chat/blended-sigil
chat: blend uncustomised sigils
2020-02-20 13:38:47 -08:00
matildepark
f78f53525a
Merge pull request #2317 from urbit/mp/os1/publish-progress
publish: add spinner, transition behaviours
2020-02-20 15:05:13 -05:00
Matilde Park
a960a7778a publish: remove header-bar render from index.js 2020-02-20 14:40:43 -05:00
matildepark
910603aaf9
Merge pull request #2320 from urbit/qa/replace-soto-tile-image
Replacing the nonexistent soto tile image depicting "tiscen" with "barcen"
2020-02-20 13:48:06 -05:00
édouard
5a6b859a07 Replacing the nonexistent soto tile image depicting "tiscen" with "barcen" 2020-02-20 13:43:48 -05:00
Matilde Park
09d2057284 chat: blend uncustomised sigils 2020-02-20 01:37:16 -05:00
Matilde Park
075de2cf3b chat: add spinner behaviours 2020-02-20 01:18:19 -05:00
Matilde Park
45af92c173 publish: sidebar and note -m, -l viewport fixes 2020-02-20 00:28:16 -05:00
Matilde Park
68f38dbf5b publish: spinner on post comment, proper disabling 2020-02-20 00:11:15 -05:00
Matilde Park
a0c06dbdf0 publish: new-post.js uses spinner 2020-02-20 00:11:00 -05:00
Matilde Park
86a0993975 publish: new.js uses spinner and disables button 2020-02-20 00:10:41 -05:00
Matilde Park
108f3d9e4a publish: move header into skeleton, add spinner 2020-02-20 00:10:18 -05:00
Matilde Park
ccde2a6a76 publish: proper sidebar height, overflow behaviour 2020-02-20 00:08:35 -05:00
Isaac Visintainer
00a9eb9eab Merge branch 'master' into os1-rc 2020-02-19 16:04:21 -08:00
matildepark
7d4f9bc6b2
Merge pull request #2315 from urbit/mp/os1/weather/hotfix-border
weather: add border to manual entry
2020-02-19 16:41:41 -07:00
Matilde Park
9de5ee87af publish: dropdown component as sidebar sort
also adds 'align' to dropdown component as prop
2020-02-19 17:55:11 -05:00
Logan
11d8953873
Merge pull request #2310 from urbit/mp/os1/invite-search-ship
chat, publish: invite-search surfaces valid ship name as result
2020-02-19 13:48:43 -08:00
Logan
5df24fc856
Merge pull request #2312 from litpub/support-line-breaks
chat: Supports translating /n into new <p> tags
2020-02-19 13:48:21 -08:00
Logan
1e05f47d91
Merge branch 'os1-rc' into support-line-breaks 2020-02-19 13:48:14 -08:00
Matilde Park
c3f0743053 publish: new post has same width as other views 2020-02-19 16:24:36 -05:00
Matilde Park
eec6713338 weather: add border to manual entry 2020-02-19 15:43:05 -05:00
matildepark
76576003be
Merge pull request #2308 from urbit/mp/os1/weather/colors
weather: add blurred color gradient, changes based on weather
2020-02-19 13:05:46 -07:00
Matilde Park
1638c62406 weather: style fixes 2020-02-19 15:01:21 -05:00
Logan
6d86c44f4b
Merge pull request #2314 from urbit/la-group-create
chat-js: fixed group creation
2020-02-19 11:23:52 -08:00
Logan
820e14757a
Merge branch 'os1-rc' into la-group-create 2020-02-19 11:23:05 -08:00
Matilde Park
3d0f1ff898 weather: increase blur 2020-02-19 13:20:52 -05:00
~litpub
b96df813aa Supports translating /n into new <p> tags 2020-02-18 23:07:41 -08:00
Logan
6289ef9727
Merge pull request #2311 from litpub/autoresize-textarea
Adds autoresize functionality to chat input
2020-02-18 22:55:16 -08:00
~litpub
e687b8988b Adds autoresize functionality to chat input 2020-02-18 22:26:05 -08:00
Matilde Park
c4bba73833 publish: invite-search shows valid ship in results 2020-02-18 23:32:21 -05:00
Matilde Park
7aeb593fb4 chat: invite-search shows valid ship in results 2020-02-18 23:32:11 -05:00
Matilde Park
069df98edd weather: colors change based on weather 2020-02-18 21:22:19 -05:00
Logan Allen
688f9c33a1 chat-js: fixed group creation 2020-02-18 18:05:12 -08:00
Fang
5b1c3f3cca
Merge pull request #2302 from urbit/m/link-listen-bugfix
link: peer subscription fixes
2020-02-18 23:40:58 +01:00
ixv
42945d14ed
Merge pull request #2305 from urbit/ixv/auto-start-apps
OS1: automatically start contacts and links apps upon recieving ota
2020-02-18 11:59:17 -08:00
Isaac Visintainer
7fced14cfc automatically start contacts and links apps upon recieving ota 2020-02-18 11:22:36 -08:00
ixv
feb5523b73
Merge pull request #2296 from urbit/update-build-interface-script
OS1: Update build interface script
2020-02-18 10:37:53 -08:00
Fang
83fecabba9
Merge pull request #2303 from urbit/m/link-order
link: ensure content remains sorted by timestamp
2020-02-18 18:53:27 +01:00
Fang
199f7e6279
link fe: ensure items remain sorted by timestamp
So that they're always displayed in post-order, and our index of them
stays consistent with the data on the backend.
2020-02-18 16:31:47 +01:00
Fang
583c3dc364
link-store: ensure latest-first ordering of state
We may %hear or %read content that was posted some time ago, so we need
to make sure we add it at the appropriate position (wrt timestamp)
rather than just sticking it at the head of the list.
2020-02-18 16:00:50 +01:00