Summary

On the heels of the recent Holochain Core releases, which have removed obstacles to running apps over the public internet, in release 0.0.41-alpha3, we’ve turned our attention back to improving performance, enhancing the developer experience, and supporting our automated testing infrastructure. We’re highlighting two significant changes that come with this release—the integration of hApp bundles and offline full chain validation. Holoscape release 0.0.5-alpha has also had some performance gains, thanks to the new conductor, as well as many UI fixes and improvements. Developers will enjoy some nice features, in particular, a much more robust debug view.

Highlights

  1. Holochain Core 0.0.41-alpha3: New development features for hc run
  2. Holochain Core 0.0.41-alpha3: Offline full chain validation
  3. Holoscape 0.0.5-alpha: Improvements to developer and user experience
  4. Holoscape 0.0.5-alpha Demo featuring the Communities hApp!

Details

Holochain Core 0.0.41-alpha3: New development features for hc run

In Dev Pulse 58, we discussed hApp bundles and promised that they would be coming to the development conductor, hc run. They are now available in Holochain Core Release 0.0.41-alpha3, enabling you to start a collection of bridged DNAs and a UI in development mode with one command, without having to write or maintain a conductor config file. This makes manual testing easier, as well as more consistent with the actual user experience—you can replicate the same setup that users will have when they download, install, and run your app.

As we've written before, it is best to use hApp bundles from the start so you don't have to worry about writing conductor configs down the line. However, in order to make this development workflow really work, we needed this feature to be included in hc run. We're glad that this release will enable you to begin incorporating hApp bundles in your development process.

To give you a sense of what working with hApp bundles will look in practice, check out this video that uses bundles for a hApp. You can see why this feature is needed—for rather complex hApps like Peer Chat.

There are also two new parameters in hc run that might be of use to you:

Here are some additional changes included in this release:

Holochain Core 0.0.41-alpha3: Offline full chain validation

In addition to the changes mentioned in the last section, Holochain Core 0.0.41-alpha3 also enables the validation of full chains when working offline. When your node publishes an entry to the DHT, validators expect you to provide a “validation package.” This package can contain the public entries from your source chain, the headers, both, or neither, according to how that entry type is validated. Previously, your node would have had to supply the package to every validator at validation time, meaning they could only do their work if you were online. This is fine if you’ve just published an entry, because you’re likely to subsequently remain online for at least a little while. However, if a few hours have passed and one of the validators has disappeared, the newly elected validator can’t do anything until you return.

Every public entry has a corresponding header that gets published to the DHT as a separate entry. If an entry’s author is offline, a validator should be able to gather all the pieces of the validation package right from the DHT. This is now implemented as a fallback if the faster, more direct communication method fails.

Holoscape 0.0.5-alpha: Improvements to developer and user experience

This release represents a big leap forward in terms of user experience. This can be seen in three main areas:

  • Splash screen and other UI improvements—When you start Holoscape, you'll now automatically see a splash screen, with hApp UIs shown in a tab drawer. There are also tweaks to the system tray menu and other styling changes that make the overall experience more visually attractive.
  • Revamped hApp Store—Though still a prototype, it is much more responsive and informative, showing the download/installation progress and status. You can now install a hApp bundle from a zip without unzipping it first. We've also fixed a few rendering bugs.
  • More powerful debug view—The state dump is now much faster, showing changes in real time and only reloading portions of the state that have actually changed. Even better, all tables are searchable; for example, you can now find out which nodes hold which entries. You can also filter your instances’ source chain and DHT entries by type or hash, making it easier to get insights quickly into the current state of data consistency.

In addition, each instance now shows you an at-a-glance summary, beyond the information on held entries and running zome functions (introduced in Holoscape 0.0.4-alpha).

Holoscape 0.0.5-alpha Demo featuring Communities hApp!

Be sure to watch the Holoscape 0.0.5-alpha Demo and app walk-through! We would love for you to test the Holoscape 0.0.5-alpha and share your experiences and feedback on the Holochain Forum!

Holochain Core Concepts and Tutorials

We want to hear from you! Help us create documentation that would benefit your understanding of Holochain and aid you in building apps. If you have already read, explored, or completed the Holochain Core Concepts and Tutorials, we would appreciate your input through this quick survey! Please take a moment to tell us about your experience and how we might help you further!

Development Status: