-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Example : how to create a revision #2
Comments
Things I'm not sure about in the above story: 1. do you need to publish all fields on the revision, or can you just publish the changes ? {
description: 'this is a beautiful little **dormant volcano** overlooking wellington',
root: '%A',
branch: ['%B'],
revisionRoot: '%A',
revisionBranch: ['%A']
} I don't expect this will work because the 2. what does
|
Do you have methods anywhere for publishing revisions? It's my strong opinion that helpers to handle these details for developers are the best pattern. Many people don't understand things like branch and implement it incorrectly. Here's an example of a helper which calculates branch for a user who wants to update a gathering |
Hey @mixmix thanks!
Revisions don't alter the semantics of
would be sufficient. In tre I use
I think I have such a helper hidden in tre-client ... (bad place for it, I know) I'd probably prefer to keep convenience method in a separate module (separate from ssb-revisions) because I suspect their API to change more frequently than ssb-revision's, which should remain relatively stable and a small API surface helps with that.
Yes, there is no support for deltas or diffs, you have to post the entire message. This means that you have to include large property values even if they have not changed. The reasona behind this
That having said, I have a change-permission scheme in mind (well, dominic came up with it way back), where you list the ssb-feeds that should have permission to change you message in that message's
Of course, the It would be interesting to build a proof of concept for, say a lodash.merge-based reduction. |
I've built a merge-based reduction in Yeah I've thought about this editor field as well. In this case I think about the editors less as a field and more like a timeline with editors being added / removed for parts of it... and edits that were made being legal within the bounds that an editor was "on board". I think this is the same things you're describing with recursion. Juicy huh. A further idea I'm considering is to make the editor field point to another message / document (somewhere else) which is a "group" definition. I want this because I think for my case I'm going to need to confer authorship to many different documents at once, and I think it would be a nightmare to maintain without editors being abstracted. Not sure how to do this. Happily, I'm hosting Dominic at my house this coming week, and I plan to get all the downloads on the private group work (which will also intersect with this work in the future I think). All the things....can't just be simple huh. Would be nice to catch up some time and hear about your adventures over the last year! |
I've been writing about this on ssb : %tqk8p2DTokSzrzmIvFqu8v6gHD23I0F1Fy5ILLfF2jI=.sha256 |
hey @regular , I'm looking at your work again because it might be super relevant to something I'm starting in on. I've read your README (very good docs thank you!), and one thing I'm missing is an example of how it's like to create revisions. I thought I'd write an example for myself, and it might turn out to be useful for others too!
Story. I publish a
profile
for a place of cultural significance. It has content like this:Someone publishes a comment:
Then I edit the original
profile
message by publishing this revision messageThe text was updated successfully, but these errors were encountered: