Commit Graph

22 Commits

Author SHA1 Message Date
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
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
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
Fang
fcf1255b7d
link-store: add scry endpoint for getting unseen urls 2020-02-10 20:18:42 +01:00
Fang
b8ffebcb9d
link: support marking urls as seen 2020-02-07 21:49:16 +01:00
Fang
b08a4ef605
link-store: touch up interface path docs 2020-02-07 21:43:11 +01:00
Fang
2df646bd0a
link-store: reject pokes without content 2020-02-07 21:42:33 +01:00
Fang
e3a4de4d31
link: encode urls in paths using +wood (vs base64)
Base64 encoding isn't actually @ta-safe, since it contains capitals and
=. +wood escapes all such characters explicitly. The result is more
readable and more hoon-native paths, but does mean clients will have to
re-implement +wood locally.
2020-02-05 17:39:08 +01:00
Fang
4a337fa633
link: update subscription model
Better subscription path API support. Should support us better moving
forward.

Note that this kills the server-hook. It will be replaced with a
link-view shortly.
2020-02-04 21:35:33 +01:00
Fang
4951d6ba45
link: support higher-level paths for broader subscriptions
Also re-orders the comment paths to have URL first, which is easier to
handle and also seems more correct wrt the behavior you might want in
the web extension and similar use cases.
2020-02-04 20:35:10 +01:00
Fang
2e8fb88a26
link: hotfix "all comments in group" support
This is an obvious hack, and should be replaced with the m/uplink-broad
work as soon as possible.
2020-01-29 20:40:20 +01:00
Fang
a6877cea62
link: augment with /lib/dbug 2020-01-29 19:21:40 +01:00
Fang
00a4c91f92
link: encode urls in paths in base64 2020-01-07 17:38:39 -08:00
Fang
879e45c377
Merge branch 'master' into m/uplink 2020-01-07 13:30:55 -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
9f18877c0a
link: rudimentary comments
As of yet largely untested. The "urls in paths" might bring trouble.
2019-12-21 00:52:09 +01:00
Fang
8a0baed192
link: %add -> %save 2019-12-20 15:58:32 +01:00
Fang
2048f7ab9e
link: make network comms work
This resolves a number of issues that were keeping communications with
foreign ships from working.

- there was no link-update mark
- there was no +on-arvo handling in link-listen-hook
- link-listen-hook was subscribing to the non-existent "link-hook"
- link-proxy-hook permission check was looking at a wrong path

Also makes link-listen-hook aware that subscriptions might get rejected
because of permissions, so that it ignores failed subscriptions instead
of being loud about it.
2019-12-11 20:49:50 +01:00
Fang
3a859ef585
link: add minimal link-server-hook and link-webext
link-server-hook exposes (parts of) the link-store over eyre, on the
condition that the client is authenticated as the host ship.

link-webext as committed is a very minimal web extension. When its
toolbar button is clicked, it saves the current webpage to /private
in the link-store.
In the future, this should support choosing a target to save to,
highlighting already-saved pages, and many other features.
2019-12-11 20:49:50 +01:00
Fang
a95449cc64
link: social bookmarking core implementation
Stores URLs and their titles for the local ship. Can listen to
"submissions" on foreign ships.

Has a primitive perspective on groups, treating them as
always-interesting. Auto-subscribes to all ships in all groups.

Foreign communications untested.
2019-12-11 20:49:49 +01:00