SAFE Network Dev Update - May 9, 2019


Here are some of the main things to highlight this week:

Project Plan / Roadmap

Today, we’re releasing a number of documents in order to give further visibility to the Community around the road ahead for the SAFE Network. You’ll find this information contained across three GitHub project boards (Backend Road to Beta, Frontend Road to Beta, Task Level Board). In the coming weeks, we’ll also be releasing a new Roadmap page on the website which will contain a higher level view of the milestones towards the release of the SAFE Network. In order to pull all of the conversations together about this topic, you’ll find further explanations on this new forum post.


This week, @dirvine was interviewed about the Network by BBC Scotland for the new national news programme, The Nine. This is going out at 9pm this evening (and will be available on the BBC iPlayer for 24 hours afterwards). There was also a very successful SAFE Network: Glasgow Meetup earlier this week - thanks to @DavidMc0 for pulling things together on the day and to everyone else who turned up for a blether over a beer.

Still on the theme of meetups, we have both @ustulation and @nbaksalyar speaking at the SAFE Network: Brighton Meetup whilst Nikita is also speaking at the inaugural SOLID London Meetup the night before. It’s worth noting that Inrupt (TBL’s company) should also be sending a speaker to present at the meetup as well so it’ll be a good night. @pierrechevalier83 is then heading out to the Ukraine to talk all things PARSEC at the IT NonStop Blockchain and Machine Learning Conference on 18th May in case anyone’s around the Ukraine.

We’ve been working through different content ideas this week - including around the PARSEC v2 campaign, an A to Z of the SAFE Network, a reboot of the website and brand imagery guidelines, amongst a range of other ideas that will be coming to fruition over the coming weeks.


As a minor thing, but probably good to keep you updated as some of you are actively using these tools, we just updated the published safe://api.playground and safe://toolbox.dapp on the Alpha 2 network. The playground received some fixes, and the toolbox now has a new tool which allows the user to generate the XOR-URL of ImmutableData (even with a provided MIME type) in a similar fashion to how it already allowed to generate them for MutableData.

It’s worth briefly mentioning that we’ve been investing quite a lot of time in reviewing some of the RFCs, and other ideas brought up recently like the safe CLI, to make sure they are up to date with discussions that were happening around them in the last few months. As an example, there were some discussions about the XOR-URL RFC, internally and also externally on our dedicated forum thread, which already highlighted the need of adding more details about the actual implementation of the XOR-URL “resolver” functionality in SAFE Client Libs. Also, some really good news resulting from a lot of effort put by @riddim as he was able to implement the XOR-URLs in the Python language binding he is actively working on. Our kudos to you @riddim for this, and thanks for your help in reviewing all this!

For the browser, now that we’ve got @manav back in action after his exam season, we’re working on merging the updated browser tab data structures into the dev branch and adding more tests there. We’ve also been testing out our auto-update functionality and further whittling away at the outstanding issues regarding the codebase quality.

SAFE Client Libs

The work on RDF support continues as @lionel.faber and @yogesh look into the Redland libraries to see how the API can fit in with the existing Mutable and Immutable data types to store RDF data and perform SPARQL queries. There have been some interesting findings so far. We will be sharing them along with the initial set of experimental APIs that the team has started to put together. We are also keeping in mind the changes that are being planned for the data types and how they will affect the RFC and our implementation. Following the front-end team, we’re also investing some time to update our RFCs and address comments left by the community and some of our team members.


This week, we continued implementing the steps toward Fleming in parallel with effort to complete the design work in progress.

The bulk of the Routing’s state machine refactoring is now complete with PR 1616 just now merged. This leaves our code in better shape to work on different parts simultaneously. Keeping things tidy is an ongoing process. No single work will fix everything, and changes continue to occur requiring more effort to keep things in shape. So with this big item now out of the way, smaller issues will be fixed on an ongoing basis.

The very first item on the road to implementing Node Ageing is now complete with PR 1622. This replaces our RPC mechanism to decide which candidate to accept with PARSEC consensus and so provides a consistent result. We will need all the steps in the relocation process to be consistent to support Node Ageing. We need to avoid dropping old nodes accidentally as they are relocated.

In parallel, finalizing design work is on-going: Partly writing RFCs for Safecoin and various aspects of Message Relay, partly filling out the gaps in the Routing model that is guiding the Node Ageing implementation and its tests.

Finally, @jonhaggblad wrote a new post on our Road to Fleming series describing Disjoint Section. Check it out! It’s got pretty drawings :wink:


Today, we’re releasing the first version of the quic-p2p crate, v0.1.1. It includes all components we’ve been developing for the last month: the basic P2P connection logic, the bootstrap cache, and Client/Node differentiation among other things.

It also includes some bug fixes and improvements we’ve made this week: we added more test cases for the bootstrap logic which helped us to find and fix some minor bugs. We’ll be continuing to expand the test suite and stress-test the library in different scenarios in the future, but so far we are pleased with the result and we are confident it works as intended.


Had to be first one this time! Now time to read!

Thanks for everybody’s hard work and ongoing commitment to making the SAFE Network a reality!


@dugcampbell I think you’re off the hook.


Third! Had to stay up late! A lot to parse and I’m too tired. Will read through again with more focus in my morning. Hope to hear that BBC interview though … will there be a link after it’s posted?

Thanks for the update!

cheers :wink:


Keep up the good work guys! I’m looking forward to the Fleming tasks being ticked off the plan!


Thanks to all the people that work so hard to make this happen.


Wow, fantastic updates! A lot of presentations happening which is great to hear.

Any news on the academic review of PARSEC v2? Looking forward to the v2 campaign mentioned :smiley:

Keep plugging away @maidsafe you’re on a roll!


Are the references to ‘New Data Types’ related to Appendable Data, RDF, both or?


Great see the road map. :slight_smile:


No update from the journal yet @Nigel - you’ll know (almost) as soon as we will!


Cool, thanks for the reply @nicklambert! I’m looking forward to it and hoping for positive news in the peer review process :slightly_smiling_face:


It’s related to the AppendableData


that’s what I am talking about! Go GET interviewed. Put yourself out there and take those risks of not controlling the conversation. That has much higher rewards then staying in the safety of your own base.

1 Like

Great update and good news on the road map release


Thanks for delivering the Roadmap. No pressure everyone. Looking forward to D.Irvine’s appearance on the BBC. Keep it up guys and gals


tried to watch the BBC interview first thing this morning at

However, even after creating an account I cannot watch it using the iPlayer
because I’m outside the UK. And the download button doesn’t work either :frowning:


Someone needs to put a copy in the alpha2 net.


I’ve put up a file of the audio here. If you listen carefully you can hear @dirvine’s leather jacket creaking :slightly_smiling_face:


I hope it was my jacket :slight_smile: The sound guy did say my jacket was a bit loud, he was right :wink:


Unlike Max (#86) who refused to take his socks off after taking off his shoes just in case its was not his socks causing the leather creak.


David is on from 48:06 for anyone who is willing/able to watch the iplayer link