Vessel 0.2.6 - Server selection + disconnected status message

The reoccurring theme lately with Vessel updates seems to be just staying connected :)

This minor release (0.2.6) is primarily that, with one potential security vulnerability also patched, and a few minor bug fixes.

Before going too much further:

What is Vessel?

Vessel is a desktop wallet for the Steem blockchain, which can be downloaded and run on your computer. Vessel is free to use and open source, and is designed to be a way to help secure your account on the Steem blockchain. While using Vessel, your keys/password never leave the app, transactions are signed locally, and then broadcast to the network much like any other downloadable cryptocurrency wallet.

Here's a few of the other most recent updates, as well as the original announcement:

Download Vessel

Vessel is still beta software and it's recommended that you treat it as such. Before committing irreversible actions on your account (such as large outgoing transfers), please test with smaller amounts to ensure it's working properly on your computer.

Download available on github for macOS (.dmg file), Windows (.exe file) and Linux (.snap and .deb files).

  • Releases:
  • chainBB Forums:
  • Bug Reports:
  • Source Code:

What's new in 0.2.6

  • Vessel now actively monitors it's connection and notifies you if you're disconnected.
  • When Vessel is not connected to a server, a red status message will appear at the top indicating it's attempts to reconnect.
  • From within this status message, users can choose to force an attempt to reconnect or choose a different server.
  • When choosing a new server, a pre-populated list of servers are checked against to see which are operational, and reports a UTC datetime of the last block that server has processed.
  • Security Fix: removed an external dependency (semantic-ui.min.css) from loading externally.
  • Fixed bugs involving the dsteem library and it's incorrect server usage (preventing account creation).
  • Fixed a display issue for both VESTS and SP when estimating the account creation cost.

Maintaining connectivity

There has been a flurry of support requests over the past couple days surrounding Vessel and users being unable to do one thing or another. The vast majority of support requests have been because a number of RPC servers have recently experienced downtime, and users were simply disconnected. Last week's quick fix to allow users to specify which node they'd like to connect to from the welcome screen - but this has only highlighted another UX issue:

Users don't really care or know what server they should be using.

To this end, I've changed the behavior of Vessel and it will now provide a list of currently available servers for users to choose from and highlighted the fact that you're disconnected when it occurs.

This red status message will appear at the top of any Vessel window should the connection drop for more than 30 seconds. You have 3 options from here:

  • Wait, as Vessel still automatically attempts to retrieve it's connection every 15-30 seconds.
  • Click Reconnect, which forces an API call immediately in an attempt to restablish it's connection.
  • Click Change Server, which lets you choose a new, available server, from a prepopulated list.

You're also free to visit the Settings page and specify whatever server you'd like.

Selecting an available server

When choosing a new server to connect to, Vessel will attempt a simple query against every predefined server within the application and display those it's able to connect to.

The "Last Block" column in the center will display when the last block on that server was processed in UTC time.

Clicking the blue Connect button will change your preferred node to this server and attempt to connect.

Security Fix

A couple days ago, @sneak pointed out in this github issue that Vessel could potentially have a security vulnerability by including an external resource. I sat down that day to figure out how to bundle that resource directly in the app and have included it in this release. Vessel now has no external dependencies (besides the RPC nodes it needs to connect to) and all the required code (CSS included) is now bundled directly with the application itself. Thanks to @sneak for identifying the issue!

Also thanks to everyone else for the bug reports - I'll be making the rounds on all outstanding connection related issues and addressing them soon.

$ 440.586 SBD