Commit Graph

804 Commits

Author SHA1 Message Date
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
Fang
d6da23f8c4
chat-hook: style touch-ups 2020-02-25 16:56:10 +01:00
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
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
édouard
5a6b859a07 Replacing the nonexistent soto tile image depicting "tiscen" with "barcen" 2020-02-20 13:43:48 -05:00
Matilde Park
108f3d9e4a publish: move header into skeleton, add spinner 2020-02-20 00:10:18 -05:00
Isaac Visintainer
00a9eb9eab Merge branch 'master' into os1-rc 2020-02-19 16:04:21 -08: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
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
e687b8988b Adds autoresize functionality to chat input 2020-02-18 22:26:05 -08: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
Isaac Visintainer
7fced14cfc automatically start contacts and links apps upon recieving ota 2020-02-18 11:22:36 -08: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
Fang
a5889794b9
link-listen-hook: ping groupies for retry on-join
Shortcuts the existing retry timer by having new members send out a poke
when they acknowledge joining the group.
The existing retry logic is left in place to deal with other cases of
subscription failure.

Also fixes an incorrect relevancy check during subscription retries, now
properly preventing duplicate subscriptions.
2020-02-18 15:43:04 +01:00
Logan
1106e4b5b3
Merge pull request #2291 from urbit/metadata-os1
metadata-store: associate groups with resources within apps, and allow various types of queries
2020-02-14 16:50:51 -08:00
Logan Allen
962ac2e184 metadata-store: sanitized paths and %y to %x 2020-02-14 16:41:39 -08:00
Logan Allen
6e2bcd9428 metadata-store: updated to use better naming for resources, added a few metadata fields 2020-02-14 14:59:22 -08:00
Fang
f2cf3d43d3
link-proxy-hook: fix incorrect scry paths
We were scrying for /gx/path instead of /gx/=link-store=/path.
In the %annotations case, that path wasn't even correct.

Also refactors scries out into a +scry-for helper.
2020-02-14 23:35:04 +01:00
ixv
d49987bcc7
Merge pull request #2286 from urbit/ixv/publish-members-settings
OS1: added members and settings page to publish
2020-02-14 14:34:43 -08:00
Isaac Visintainer
ac620baadb dont send invite on unban
split dropdown component out from api actions in subscribers
2020-02-14 13:55:55 -08:00
Logan
9410b3ad1e
Merge pull request #2292 from urbit/mp/os1/contacts/notes-design-updates
contacts: resizable "notes" field, sidebar scroll tweak, os1 nav buttons
2020-02-14 10:58:38 -08:00
Fang
5d01b4750b
Merge pull request #2289 from urbit/m/link-tile
link: properly support the launch tile
2020-02-14 12:50:26 +01:00
Matilde Park
0cb03b0461 contacts: sidebar scrollbar automatic, os1 buttons 2020-02-14 00:29:03 -07:00
Logan Allen
498c6e8e97 metadata-store: added scry + watch paths, an %update-metadata update 2020-02-13 17:22:52 -08:00
Fang
45088621f4
link-view: properly support the launch tile 2020-02-14 02:02:47 +01:00
Fang
1f4a41e550
link-store: support "all unseen" scry
Instead of forcing clients to scry at every path, they can now scry for
all paths at once.
2020-02-14 01:57:58 +01:00
Fang
fafe4cf2bd
link-store: always mark our own submission as seen 2020-02-14 01:55:17 +01:00
Fang
102424af40
link-store: fix incorrect arm calls
Also changes a typecheck to be more correct, and updates docs to match
implementation.
2020-02-14 01:54:16 +01:00
Isaac Visintainer
56807dd52f added members and settings page 2020-02-13 14:00:55 -08:00
Logan Allen
9205c7c7db sur: added metadata-store structures 2020-02-13 13:13:10 -08:00
Logan Allen
ca7cc1fc10 metadata-store: first compiling version of metadata-store 2020-02-13 13:13:10 -08:00
Logan Allen
a9231fd5f9 chat-js: one line fix to create chat screen to enable managed group creation 2020-02-13 13:11:22 -08:00
Logan
f316d0f118
Merge pull request #2282 from urbit/fix-remove
contacts: improve remove from group experience in UI and terminal log
2020-02-13 11:08:12 -08:00
Logan Allen
ef8aa94171 contact-js: change text to 'delete group' when removing yourself as a member when you own the group 2020-02-12 14:33:07 -08:00
Logan Allen
5aa7a91134 contact-hook: suppress resubscribe stack trace 2020-02-12 14:29:29 -08:00
Logan Allen
fb0ef50f43 contacts-js: fix case where default contact can be removed 2020-02-12 14:09:04 -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