What is Oxen?
Why buy $OXEN?
How do I stake $OXEN?
Who uses Oxen?
What can be built?
Session & Lokinet
Get involved
Weekly Dev Update #57

Weekly Dev Update #57

16 July 2019Admin

Hey Y’all, 

This week was particularly busy as we worked towards the final binaries release for the mandatory upgrade period. Thank you to everyone who jumped on testnet and set up nodes – with your help we were able to identify a host of bugs which were fixed in our final 4.0.3 release. 

If you are a Service Node operator you should upgrade your node to version 4.0.3. Instructions on how to do this can be found here: https://lokidocs.com/ServiceNodes/SNFullGuide/#updating-your-binaries 

Loki Core

Loki Launcher

The Loki Launcher is a node JS package that will allow for the independent management of all the components required to run a full Service Node. This includes managing Lokinet, lokid, the Loki Storage Server and any other future applications we require. When Loki Service Nodes begin to route data and store messages for Lokinet and Loki Messenger, we’ll recommend that every single Service Node run the Loki Launcher.

What’s going on this week with Loki Launcher:

We released two versions of the Launcher this week for the 4.0.3 release. There were a lot of fixes for various crashes, but also support to be able to run versions 3 and up of lokid on mainnet. We also added extra startup checks to improve our status accuracy and made some minor user experience improvements.


  • Prequal additional configuration system for Storage Server

  • Update prequal ports to test

  • Rename port names, adjust prequal output

  • Abort launcher start up if Storage Server port is not open to the public

  • Handle “port is in use” error handling better

  • Store stdout/stderr for launcher when backgrounding

  • Add *-server-port-check args

  • Wait for blockchain-rpc port to be open before considering start up a success

  • Temporarily collect Storage Server startup info for 10s in case of problems with output

  • Report if the launcher was already stopped when stopping internally

  • Make sure certain modes are only run with root

  • Activate Storage Server based on blockchain binary version

  • Only pass version 4  parameters when blockchain binary version 4 or above

  • Reminders to restart loki-launcher if mode has stopped it

  • Strip out launcher arguments from passing all the way to blockchain startup

  • Remove duplicate Storage Server port check when backgrounding

  • Put try/catch guard around process check to prevent intermittent launcher crashes

  • When running port test submit a disconnect message when done

  • Add unhandled exception logger

  • Improve HUP information format

  • Process blockchain stderr

  • Make sure blockchain rpc server is up before starting network/storage

  • Change Storage Server default port from 8080 to 23023

  • Up retries for getPublicIPv4

  • Untangle retry counter with various repos in download-binaries

Github Pulse: Excluding merges, 2 authors have pushed 41 commits to master and 41 commits to all branches. On master, 14 files have changed and there have been 590 additions and 196 deletions


If you’re on our Discord you might catch Jeff or Ryan, the developers of LLARP, live streaming as they code: https://www.twitch.tv/uguu25519, https://www.twitch.tv/neuroscr

What’s going on this week with Lokinet:

The configuration refactor finally reached a state close to stable. There were lots of MacOS and FreeBSD fixes, and a huge internal change to using IPv6 on tunnel adapters to allow more connections to a hidden service or client.


Pull Requests:

Loki Messenger Desktop 

Storage Server

Loki Blocks Onion Explorer 

The Loki block explorer has been expanded to show a number of new things, including checkpoints and their votes and decommissioned or inactive nodes. 

  • Updated RPC changes around quorum state calls in 4.0.2 (replaced batch quorum calls with new quorum states call). 

  • Add checkpoint quorum display to quorum states page and to main index. 

  • Add display of a single obligations or checkpoint quorum, linked where appropriate.

  • Cut off quorum display after 20 nodes with a “+ 7 more ↪” that links to the full obligations quorum details.

  • Add a list of last three checkpoints to the main page (and a link to a page with up to 50 fully displayed).


Messenger Mobile (iOS and Android)



You've got mail!

Sign up to our newsletter to keep up to date with everything Oxen.