This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2020-06-30
Channels
- # announcements (5)
- # beginners (90)
- # cider (15)
- # clara (1)
- # clj-kondo (2)
- # cljs-dev (17)
- # clojars (8)
- # clojure (132)
- # clojure-europe (14)
- # clojure-nl (5)
- # clojure-uk (57)
- # clojurescript (39)
- # code-reviews (44)
- # conjure (6)
- # core-async (6)
- # cursive (20)
- # data-science (1)
- # datomic (13)
- # fulcro (11)
- # graalvm (6)
- # graphql (6)
- # helix (10)
- # joker (2)
- # kaocha (37)
- # leiningen (24)
- # malli (15)
- # off-topic (13)
- # pathom (18)
- # pedestal (14)
- # re-frame (67)
- # reitit (5)
- # ring (13)
- # ring-swagger (4)
- # sci (41)
- # shadow-cljs (33)
- # slack-help (5)
- # spacemacs (1)
- # sql (34)
- # tools-deps (64)
- # vim (171)
- # xtdb (3)
you may look for inspiration here: https://github.com/jacobobryant/biff Looks like they're using websockets to communicate out to clients
I also assume you don't need to worry about merge conflicts if two clients update the same document
thanks, i'll take a look at that codebase! yeah, i expect conflicts to be rare so i think a last-write-wins policy will be ok
ah perfect, well then please let us know how it goes! - I think it's a common need for a certain class of apps
Yea I am pretty sure no matter what, it is not as simple to keep a bunch of clients in sync in a more sophisticated way than "just reload the document", it seems to be a quite complex thing
some kind of operational transform i think: https://en.wikipedia.org/wiki/Operational_transformation
In incubator 0.0.30's pessimistic mutations, is it expected that, if the remote
impl returns nil — short-circuiting, choosing not to run — that the mutation’s ok-action
runs anyway? we’re seeing that behavior in our code, and found it surprising.