You are reading content from Scuttlebutt
@mmckegg %DxQpzCl/x6ulFoU/a2XWiET1hh3Nfw/VGWHCSg88V8U=.sha256

Patchwork Dev Diary :closed_book:

As part of the #ssbc-grants protocol, I'm gonna start keeping a diary on my patchwork development!

2017-11-20

There’s a bit to catch-up on patchwork wise before I can start working on the multi-device feeds. Really keen to get Patchwork 3.8.1 out first.

Another thing I want to do before getting started is put together prebuilds for all of the native-addon patchwork dependencies. This will mean that I will be able to easily build releases for all platforms from my mac! (and also much easier npm installs for everyone else)

I’ve been working a lot on Loop Drop lately (got a big gig coming up on the 29th), so I’ve been trying hard to only spend half days on that, and the rest of the time on patchwork. But I tend to get motivated on a project when I’m not supposed to be working on it… classic.

Here’s what I managed to get done in a couple of hours today:

  • Pushed through case insensitive channels
  • Bumped versions all over the place to get prebuilds of sodium-native working in latest electron
  • Experimental unread messages (track pull-scroll position to remove items from unread list that gets populated when new messages are added)
  • scroll to start of highlighted messages when viewing full thread
@mmckegg %0Tsjqpe7r4HvHtlKojzFOVzNY0YbqlSm6vbZHKp6/kE=.sha256

whoops, probably should have posted this to #patchwork-dev instead. Prepare to get spammed with my innermost dev thoughts folks!

@mmckegg %oInsUShjR/BpLxnRlaketjKF5NWBz2SJUO4oWGLYFvo=.sha256

2017-11-21

I spent most of today weaving in and out of working on random ssb things that came up and Loop Drop.

Found another dependency that hadn’t had ssb-keys bumped (ssb-client). Also removed unused sodium-native from scuttlebot package.json

Unread not working for some reason. Will investigate it later

Trying to help tim get his old profile back on ssbc/patchwork#674.

Mix had some mutant questions about reducers that I tried to answer. We talked on the phone and came up with a solution involving a sort insert mutant/array with observables inside.

Yeah, pretty disastrous on the patchwork dev front. Oh well, got a bit done on Loop Drop (well not really, but some important research was done).

@mmckegg %UBKaVgeNKxBbOJUY9Ol4e8FNmf5/J6hxURDZ0fRXFy8=.sha256

2017-11-22

Didn't really do much on Patchwork today. Was stuck down a Loop Drop rabbit hole.

But oh well, when I went to post my rather long dev diary for LD today, found a bug where the message preview is restricted by the max height that was added for "See more" on long posts. However it doesn't show the "See more", so the post just cuts off. :bug:

Need to decide how to best handle the situation. The easy answer is to remove the max height for preview, but on the other hand it could be nice to see a preview that your post is going to be truncated. So in the latter case, we could just add a "see more" on to the preview too! Will decide tomorrow.

@mmckegg %1YvCLculRBm7su6Ofu6P3hKKpXfu1Aq6PneaGNetSaQ=.sha256

2017-12-03

Okay, after getting my busy Loop Drop dev out of the way (that is, I did my gig and it went pretty well!), I’m finally ready to get stuck in to some patchwork/ssb development for the next few weeks!

The mythical offical Patchwork 3.8.x release has been a bit, uh.. not yet done. But I had to push out a release last week anyway because of that bug that came up and broke everything.

The issues standing in the way of getting it properly released are:

  • some strange feed ordering bugs (occasionally seeing the same posts repeated in the public feed, haven’t had a chance to get to the bottom of it yet)
  • the “unread” count sometimes isn’t updating on private messages
  • preserving unread message (the messages you haven’t yet scrolled past as unread)
  • ordering of thread posts (when you have the thread open, new replies appear in order they were synced not based on correct thread order — this can be pretty confusing)
  • better explanations for why posts are in feed (currently it only tells you that “person” replied, but if you are not following that person it isn’t helpful. The reason is normally because you subscribe to the channel/tag that a post was in, so the interface should explain this)
  • better handling and explanation of “missing posts” (currently the helper text assumes that you are not seeing a post because you don’t follow any FoaFs or that you block them — but the other case is that you haven’t yet synced a post. We should be using the new reply author tagging to give a more definite explanation, and the user interface should somehow communicate that a missing post is now available!)
  • missing post handling should also be extended to the message viewer when you try and access a message that hasn’t been synced (rather than just showing “Cannot Load Thread”)

In the mean time, I’m likely to keep pushing out some more pre-releases as the work is completed (or as needed).

But since everyone is very excited about finally getting those Multi-feed identities happening, I’m gonna start working on that ASAP but parallelise a bit and try and work on a few of the issues in the above list each day.

@mmckegg %sHO75FSTtwB9YFYngVeU3LZkwqEAnehymGY9dDghVVw=.sha256

2017-12-04

Starting the day off by trying to get unread message preservation working, since this is still sitting in my working directory unfinished. This has been a bit fiddly, but what I have working so far is that the unread flag is not removed until you actually scroll past that post in the feed. Let’s see if this is good enough for now! I also took the opportunity to update the “new” flag in the light theme to match the awesome one in dark.

Great news, after lunch came back and there were a bunch of messages queued up to test with, and works great! Gonna commit this and see how it feels over the next few days.

RIGHT, let’s start looking at this sameAs business

Looking through all of the places in the various code bases that expect the current users ID. A lot of them depend on ssb-friends. Wonder if I’ll need to get my hands dirty in that module. Kind of hoped I wouldn’t, but it’s probably the right way.

For the sake of simplicity, I’m going to start prototyping using a seperate index/reducer, then I can start talking to @Dominic about modifying ssb-friends. I also just realised that sameAs should work basically the same as about messages, so I’m going to copy that as a starting point.

Here’s the message that I am currently experimenting with:

{
  value: {
    …,
    "author": "@FbGoHeEcePDG3Evemrc+hm+S77cXKf8BRQgkYinJggg=.ed25519",
    "content": {
      "type": "contact",
      "contact": "@CSkJc/4nUZnkOuRJWhKh/zNaacD6OHy7U2Rhpg4LhNE=.ed25519",
      "sameAs": true
    }
  }
}

That message is me claiming that I am the same person as @matt.exe 2.0. I haven’t yet created the reciprocal message from the other side.

I also have specced out a message for when you want to say someone is someone else:

{
  value: {
    …,
    "content": {
      "type": "contact",
      "contact": "@EMovhfIrFk4NihAKnRNhrfRaqIhBv1Wj8pTxJNgvCCY=.ed25519",
      "sameAs": {
        "@H4UWjDPVZRlY7BQw546xcowcCHj1VdFRRCpNT9HQJyc=.ed25519": true
      }
    }
  }
}

My current thinking is that patchwork won’t allow a merge unless at least one of the members of the group has already made a merge claim about the target. So you can agree with something that someone says about themselves, but you can’t say things about random people.

But I have hit an issue with this message that ssb-friends assumes that all type: “contact” messages are about following. It isn’t checking to see if the message actually has following key, it just goes all JavaScript falsy on it. Hopefully we can fix this and not too many old clients will get confused! SIGH!!! Otherwise we’ll have to fall back to copying the current following state into the message. Nasty.

Anyway, at this point, I’ve written a flumeview-reduce that scans for these {type: ‘contact , sameAs} messages and collects a list of who says who is who and added some patchcore helpers to contact.async for merge and unmerge. Next step is to take this info and do some smart transforms based on who said what! But that will have to wait until tomorrow.

last minute bug fixes before knocking off for the day

As I mentioned in yesterday’s dev-diary and @jolyon pointed out, the private message count doesn’t seem to be updating when a new message comes through in the latest version of Patchwork for some reason.

It looks like the count is updating for root messages, but not replies. Caused by a recent change that checked to see if a message could be rendered before notifying. It was failing all private replies because it wasn’t unboxing the root message. And it’s fixed!

Started investigating the double up posts. There are a few that I see repeated (e.g. %gwllYPP... and %v4WXlHm...), but it’s not a loop and not in the same order. Something else is going on.

Turns out it’s just messages that have been active for a long time. They have replies stretching across multiple feed pages. I forgot that sbot.patchwork.roots will be called multiple times with a fresh cache when I did this refactor. And it’s fixed!

I also fixed an issue where the message confirm box was getting truncated since adding the max-height on messages.

That’s it for today! Hopefully start getting some merge action going on tomorrow!

User has not chosen to be hosted publicly
@mmckegg %bMFNUebS0k5YQ9CPzqOXbCtrzp3bxV2vXXAibm3JsaM=.sha256

2017-12-05

Currently trying to convince @Dominic that we should fix a “bug” in ssb-friends that makes it assume messages without a following key are unfollows. This kind of breaks my sameAs spec as above. Did a pull request, we’ll see how it goes!

I can understand his argument for keeping things the way they are since it won’t cause any short-term problems. But I feel that the current behaviour violates conventions found in other places in ssb (such as the way about messages work), and will just be one of those annoying things we regret in the future. I think that contact messages should work the same way (basically an about message about a relationship between two feeds). Since ssb is still young, we could fix this now without much disruption!

(continued, going realtime today!)

@mmckegg %z6pkT4mysm/1HeVFaE7HxHukwjLQ9aSYBdgD3ELwWwA=.sha256

Sounds like this is gonna get merged, however for backwards compatibility, we’re gonna have to add following: true to the sameAs posts if you are merging an identity with yourself, or you already follow that person. See https://github.com/ssbc/ssb-friends/issues/8 for full discussion.

Okay, updated my patchcore merge and unmerged schemas to reflect this.

@mmckegg %41QF5cudHt2Pqcwj43vs10V/LPVCcuqufhnrYJx0dTE=.sha256

(2017-12-05 continued)

The sameAs index I made yesterday seems to be working. Added a patchcore contact.obs.sameAs observable that takes all of the sameAs claims, and filters to just include the valid ones for a given identity.

If one side explicitly disagrees (with a sameAs: false), the identities will NEVER be merged.

If both sides agree, the identity will ALWAYS be merged.

If one side agrees (and the otherside has not shared an opinion), and you agree, then the identities will be merged.

In all other cases, the identities will not be merged.

The next thing I need to look at handling is the case where you have more than two identities to merge. That was brought up in this post.

Also for two-way merges we'll want to make sure we support any topology of mutual links like a linear chain of five devices, a star-shaped network, etc.

My current architecture makes this a bit difficult because we only have access to explicit sameAs. Need to figure out to derive these other values. This sort of thing hurts my brain :cry:

Gonna give this some more thought tomorrow.

@mmckegg %mX1aqryYobH92HTLRppdzSqAu4cS3WBpHnnJFszC5bU=.sha256

2017-12-06

I realised that I need to rewrite my index to be based on a graph (just like ssb-friends). The sameAs values are very similar to the friend graph, just a lot smaller. Should be traversed backwards and forwards to find all the links. This will allow for multiple identities to be merged (linear chain / star shaped).

So I’m going to try taking the ssb-friends code and adapting it to work for sameAs: true instead of following: true where a sameAs: false is similar to the way blocking: true is handled.

Agreements will need to be handled separately. Index any sameAs posts made by you separately then use these to confirm a walk when only one side links up.

We shouldn’t have to modify ssb-friends at all, instead we’ll make a new plugin called ssb-same-as. It will interface with gossip directly to ensure that sameAs identities are gossiped correctly.

@mmckegg %25tSamZe1FCJuRwsYi9DokWbu+2c1c+NqSsUo1qCeVM=.sha256

(...)

That seems to be a good idea! Am able to depend directly on ssb-friends and use alg/block, and testing is quite easy! My code is most definitely not as efficient as it could be though, so it would be great to get @Dominic's help to improve my algorithms.

I must say that this has helped me understand the way ssb-friends works quite a lot more!

Next up, need to write a bunch of tests and verify that this thing actually works!

@mmckegg %D21W5aLqnf8qnGP6Vn+EihumAQ3EirPuhgbQpQjxtI4=.sha256

(...)

Started testing, and all of the mutual stuff is working great! However the local agreements are all broken. They’re not extending the graph (joining with other connected sameAs values), just face value links. We need them to join the graph otherwise agreeing with someones lost key sameAs won’t join with all of their other mutual sameAs messages.

But this is good progress for today! I now have the beginnings of an sbot plugin (ssb-same-as) that provides a realtime stream (sbot.sameAs.createSameAsStream) of all resolved “same as” relationships between for all feed you know about. Next step will be to include this in patchcore and use it to merge various queries.


I’m gonna go head off into town and hang out with @Ben in the bush with some beats! (we’re trying to get our battery powered synth setup perfect before kiwiburn in January) :deciduous_tree: :circus_tent: :fireworks:

User has not chosen to be hosted publicly
@mmckegg %grd1GhvayvAMeq3j1HvlE+X5dPuvnhMIUzlGDfGgVIo=.sha256

2017-12-07

Reorganised things a wee bit today. Now only using a single graph to represent sameAs self assertions and local agreements. The graph value is now an array containing:

  • [0] value specified by source
  • [1] value specified by target
  • [2] local value

Still using the same logic to decide whether a feed should be merged, but this is now done at the graph level (using my own reachable reducer) instead of using the separate fold step.

Realtime updates are still pretty inefficient (has to recalculate final values for all feeds, rather than just a subset).

But the tests pass! I think we’re getting close to being able to push some code!

@mmckegg %OuaVTb0YpPHusOHWBVDqqcvVJcsw8OwcHXSvFHVnchg=.sha256

Alright, just pushed ssb-same-as to github and git-ssb! :tada:

@mmckegg %iClM37608r4HLD1KtbQyi8i3fYNNC/AJTbvUXhfFiJE=.sha256

2017-12-11

Investigating creating prebuilds for all of the Patchwork deps so that we can build for all platforms from any platform!

prebuild-ci looks promising! If we add this to our own fork of spellchecker, then builds will automatically get created every time a new version is pushed. We’d probably still want to build patchwork locally (although it looks like this also might be possible to automate, just need to figure out how to do the signing keys).

Travis CI can build for Mac/Linux and AppVeyor can do Windows. Both are free for open source projects. I wrote up some info here: %ttOgSGx...

@mmckegg %8RMOFW9bJo/tfkHwWNJdeOOFNcj7Q4x8Nhp4eHvpOWI=.sha256

(...)

And... success! Managed to build for Windows and Linux from my Mac :)

Haven't verified that the linux AppImage version works yet though, so someone please install it and let me know! cc @bobhaugen

Turns out the only thing stopping Patchwork from being built multi-platform was electron-spellchecker. Everything else has prebuilds already! So if you have a client that doesn't use spellchecking, you can probably already build installers for every platform! cc @mix

User has not chosen to be hosted publicly
@mmckegg %1n6+IrEwbELmjmNkLGpQ5FpXu/9ViJkHqvDNqFJ4EoM=.sha256

2017-12-12

Did a bunch of random (but important) things on Patchwork today.

Merged a few patchwork pull requests. The main one was from @robbie who added a font-size option into the settings page!

I added a setting to filter out posts to channels you don't follow from your main feed. This means that if you are a non-dev person who follows dev people, you no longer have to see their boring posts about #patchwork-dev! The post will still appear if it has a tag you follow, mentions you, or someone replies with a tag you follow. cc @Captain Awesomepants

Updated settings to have proper default values. Now if you haven't selected a language, it will try to use your system default (or falls back to english, or a language in the same root).

Fixed "hide following messages" that's been broken since 3.8

Updated ssb-backlinks, patchcore and patchwork to handle asserted timestamps from the future a little bit better.

Hopefully get some more done on sameAs tomorrow! And since it is easy for me to build for all platforms now, I went and released 3.8.4. Still pre-release though, so it's not really notification spam!

@mmckegg %cIW3yGFzq6iFvngLEIfbChCDyYYVpeLu1MumYXNDjkI=.sha256

2017-12-13

So far spent the day doing more random stuff. Pushed out yet another pre-release v3.8.5! See the change log for what I got up to.

Chased around some weird bugs I introduced yesterday when I tried to improve the timestamps from the future issue.

Updated patchwork-builder to publish assets directly to github! No longer have to manually upload them. Releases are too easy now! Still have to manually write the changelogs though.

Gonna see if I can spend the rest of (what's left of) the day working on sameAs again! I was up to the part where I integrate with patchcore I seem to remember.

(...)

@mmckegg %IkWqb3cK/M1sksXzQXTLhRQOlm1ZiNL1D7Dv5iRWdUM=.sha256

Whoops, looks like I broke #hashtags appearing in channels with the latest release. :cry: Fixed in master, will be in next version.

Got contact.obs.sameAs working in Patchcore. It provides an observable list of the resolved same IDs for a given feed id.

I started trying to do a combined mentions feed (see all your identities mentions on the mentions tab). But it is a little tricky because based on the way backlinks indexes, you have to do multiple streams and merge them together. This will require a bit of refactoring of rollup (and probably the patchcore feed.pull.* types).

@mmckegg %oth2Ljb1di7BpGZNiXPBb1dB4S5naa1d9F0yfijNpCs=.sha256

(...)

Got pretty stuck into sameAs tonight!

I now have a hacky version working on a branch, with profile, mentions, and follow merging for all of your identities (which are resolved using ssb-same-as)!

Still need to do channel subscriptions, and follow merging needs a lot of work to make it handle all the edge cases. How do we handle if one identity follows and another blocks? We don't have access to timestamps with ssb-friends, so either gonna have to use a different index, or get creative!

Not to mention private messages, or the UI for doing the actual merging. But finally I'm starting to see some results!

There is also a lot of work needed to make this efficient. I'm already noticing a bit of a load-time increase :turtle:

Good effort, now I'm going to bed.

@mmckegg %mOyo9K4WqwjMHFRAHsLWJyuNxAiIRdzO6xoNZFFfZ4A=.sha256

2017-12-18

I'm gonna be taking a break from active patchwork dev for the next couple of weeks. Got another music gig coming up this NYE and need to focus a bit more on Loop Drop :speaker: :musical_keyboard:

I've really managed to stretch that november grant out quite a bit! :laughing:

Was please to finally get 3.8 officially released last week! And I also got a sameAs prototype working!

Probably gonna push out a 3.8.7 today (a couple of wee bug fixes). But we'll see, they're not very important.

@mmckegg %5hor6lFFv3tfwvugKTMcaIfTKMpnSw3qg5cNK+fDVio=.sha256

2018-01-13

Still on break from SSB world. Very glad to see so much activity and interesting conversations happening! But I'm also glad to be taking some distance and clearing my head.

Not sure if I'll be getting back into dev work before kiwiburn (24th-28th Jan) + a gathering in the forest (2-6th Feb). But we'll see. Might be nice to push out a new release of patchwork to roll in some of those recent pull requests and fixes.

I'll probably try and apply for a February scuttlegrant for more patchwork dev!


I've been hard at work the last couple of weeks completely redesigning my live music setup to be entirely hardware (NO LAPTOP), but still preserving my work done on the Loop Drop sequencer by running Node.js on a Beaglebone. So I can trigger all of my synths from a Launchpad and create looping sequences. AND NO MORE SILLY COMPUTER GLITCHES AND WEB AUDIO FAILURES! :fire:

Will hopefully publish a whole blog post about it once I've got it all working :grinning: #midi #synthesisers #loopdrop #hardware

@mmckegg %Ks/EQ88iFhXtKVhIRc1qBE9I6XeYqLVc6gXWn3d6nhA=.sha256

2018-02-12

Finally getting back into some #patchwork-dev!!

Today I went through a bunch of pull requests/issues and made few little tweaks here and there:

  • added link previews for channels (hover over a channel to subscribe and see see how many of your friends subscribe)
  • dynamically insert your own posts into rollup without requiring a refresh! No more losing your place in the feed when you reply :joy:
  • finally fixed the local peers getting stuck in the sidebar until restarting bug
  • fixed an issue where trying to add the same attachment twice didn't work
  • changed the wording on the onlySubscribed filter setting because the old text was confusing
  • oh and made the onlySubscribed filter actually work... whoops.
  • merged @happy0's PR for enforcing single patchwork instance
  • fixed the bump header showing the same tags/channels multiple times or the wrong ones
  • and a few other bug fixes

Currently pushing to get a new release out with all the fixes from the last month and a bit! Want to get that out tomorrow.

After that I am planning on putting together another grant proposal (for march), and then getting a few big patchwork things done like:

  • patchwork as an sbot plugin (and making it more compatible with other ssb apps)
  • actually finish sameAs
  • private blobs
  • implement latest sbot stuff like out-of-order messages and ebt!

I'm trying not to feel guilty about not getting sameAs all done in my last grant, but I did get a lot of other good things done so that's good. But I think I established from my sameAs prototype that this is possible, and a good idea! Just a lot of fiddly work.

@mmckegg %P+8Rgx01vNx9r/vzIHhx4r70J0ptmXdp4liZv4cWxVQ=.sha256

2018-02-13

Lots more little tweaks and improvements today:

  • channel auto-complete suggestions are now ranked based on most used
  • @-mention autocomplete now shows whether you are following someone or not, and prioritizes participants in the current thread, then people you follow
  • reduced the amount of friend/following/follower profiles that show on the profile sidebar by moving most of them into "view more" sheets and only showing the top 10 (prioritizing most recently updated profiles, and mutual friends)
  • added a filter/search box onto the profile list sheet (used when clicking "x likes", "mutual friends", etc)
  • fixed a bug where most about messages weren't showing (had to change all 3 fields to show up)

Was planning on following all that up by releasing Patchwork 3.8.7, but unfortunately I hit a little snag with some breaking changes pushed as a patch release. Managed to fix the initial issue (thanks @mix for figuring out what the problem was), but then spent the rest of the afternoon trying to solve another.

Ran rm -rf node_modules and install fresh and now patchwork won't load. Something has changed in a scuttlebot dependency that is causing createUserFeed to stall. I tried looking into it and looks like something weird is going on with muxrpc which I think @Dominic has been working on recently. Messed around for many hours trying to figure it out, but couldn't get to the bottom of it. Hopefully it's an easy fix!

As soon as that is sorted, I'll push out the new release!

@Anders %qCzip8VP6I7xb8XGjxbK/7RMiZqZ5iPWD2Pum2NQTkc=.sha256

Oh you've upgraded scuttlebot as well. Thanks! :heart: I've had two people writing me for an onion invite and its been a bit problematic as 3.8.6 wasn't working correctly with that.

@mmckegg %wEEUSbDTSp7uJ2h08lPyULQwI0sDMFxuRnkFiappvjk=.sha256

2018-02-14

Today has been one of those.... frustrating sorts :poop:

Been attempting to repair patchwork (so that I can get Patchwork 3.8.7 released) after a series of breaking changes were published as patch releases to some scuttlebot dependencies .

I discovered the following using whathappened and some experimentation with swapping deps:

  • ssb-client@4.5.4 broke patchcore because it no longer had a default caps key (mostly patchcore's fault here because it shouldn't have assumed)
  • ssb-client@4.5.5 broke a lot of random things in patchwork because it forced an upgrade of muxrpc to version 7, which apparently still has some issues to work through.
  • secret-stack@4.0.2 also force upgraded the muxrpc dep

After pinning ssb-client and secret-stack, patchwork at least loads now.

However for some reason it is not holding connections to pub servers. It connects for about 3 seconds and then drops, rotating around a few pubs.

I'm pretty over this today, so I'm giving up. Might try again next week.

User has not chosen to be hosted publicly
@Dominic %6UiuYpcgDUe6BxaFCWdGbWcFrO/eM2yASQN5bGClOu8=.sha256

@matt btw, I just fixed ssb-client (which needed an upgraded ssb-config) ... I didn't mean to break stuff with muxrpc@7 and I tested it with everything I normally test with (including linking into into the sbot tests. It seems I need more tests, though) I have confirmed that muxrpc@6 seems to hang open when connected to muxrpc@7 (the process doesn't exit) but not sure why yet. If you find other problems I really need reproduce steps.

@mmckegg %5/tGZg0FAOatko4fPTAhwU5V0fuMyOpdYnjOcQGE2yw=.sha256

@Dominic

If you find other problems I really need reproduce steps.

Yep, that's understandable. Sorry for my unhelpful reports, I was just rather annoyed to find everything all broken from underneath me.

Will work on some more detailed reports once I find the strength to carry on :sweat_smile:

@mmckegg %8Kbrmz2GJuRTtH7jYGz3oz5Mo6PmiQmKl7FjLrKIytU=.sha256

2018-02-16

I figured out that my final remaining problem (peers disconnecting after a few seconds) was probably a combination of the latest scuttlebot version and the dependencies I was pinning back. So I rolled back sbot to the old version that patchwork used to use, and now everything is working again.

2018-02-18

Released Patchwork v3.8.7!

@mmckegg %OO38v34lSZeEgdr4wUaVj2EEMZ76i5GpMNH3GCuV58Y=.sha256

2018-04-07

Merged some language related PRs and fixed the Urdu translation crashing patchwork :ghost:

2018-04-10

Started work to help mix get blog posts appearing in patchwork

2018-04-11

Merged in blogs PR. Started working on including support for private blobs. Filed a PR on multiblob-http to get this working.

Tried upgrading to latest sbot but found a bug that needs fixing in scuttlebot first.

Removed old blob serving code and swapped out with ssb-ws. Patchwork now uses the same port for blobs as the other clients. (not yet commited)

@mmckegg %oSnz1UMsHrf3r8LCFVCiX36DYCujXS4z/yXqs5fJdZ8=.sha256

Okay, this is getting rather long. Also, I just received another grant!

Dev diary continues here: %hHI7p1W...

Join Scuttlebutt now