Community Update - November 2020

Update: 1.7.0 has been released and you can read the full release notes here.

Block8 published part two AND part three of their DAML vs. Corda series. Part 2 covers ease of learning and documentation while Part 3 dives into functionality. A must-read series.

Luciano wants to know the community's thoughts on how to expand DAML functionality and reduce code duplication via additional libraries and contributions.

What's New in the Ecosystem

We'll be holding two community open door sessions for the 1.7.0 RC, one for US-based timezones and one for APAC.

Shoutouts!

Emil submitted a PR for improving the functionality of CI within a DAML project. While the dev team may have some follow-ups we're excited to see contributions coming to DAML from outside Digital Asset!!

Thanks to Bart for reporting a problem with HTTP proxying in DAZL and to Davin for adding a flag to disable it. Bart has received the requisite Squidly Devourer of Bugs badge for this.

IMG_4642
Bart showing off his new DAML hoodie that he won during our last community reward ceremony. If you want your own you can win the next one, or pick one up here.

Odyssey starts on November 13th and György, the DAML'r-extraordinaire, responded to our call and decided to take up hacking on the Sovereign Nature track where participants will build systems that improve the collection and distribution of environmental data. They're looking for more members so reach out if you're interested in spending a weekend improving the world.

DA is also sponsoring the Outcompeting Destructive Systems track

YHack starts on Saturday and runs until November 14th where students will be using DAML to create their vision of a social network

Corporate News

GFT added support for DAML on Corda! 

Blogs and Posts

Brian pondered what a distributed (and daml-powered) Twitter would look like

György published the latest article in his Masterclass series where he reverse-engineered one of our refapps and showed us how to represent bonds and equity options in DAML. Have thoughts? You can chat about his latest post here.

Stephen shared several Scala tips and tricks, showing us the importance of typing our variables in Scala, how <- really desugars when destructuring, and possibly undesired outcomes of using extends AnyVal.

Emil implemented a doodle.com backend in 95 lines of DAML (+ tests). And he even wrote an article about it.

Ed showed us how to secure and test your DAML APIs.

Martin made a build system in 140 lines of TypeScript. Not exactly DAML but definitely cool 

Other Fun

A fun little story about DAML’s portability from Yuval.

Ayan Works (based out of Pune, India) are looking for DAML developers that can deploy to Fabric and Sawtooth. If you think this sounds like you check out the listing here!

If you didn't know Richard has weekly updates on security and privacy news, you can check them out here.

Release Candidate for DAML SDK 1.7.0

Highlights

  • DAML Connect has been introduced as a logical grouping for all those components a developer needs to connect to a DAML network.
  • JSON API, DAML Script, and the JavaScript Client Libraries now support reading as multiple parties.
  • daml start can now perform code generation, and has a quick-reload feature for fast iterative app development
  • Support for multi-key/query streaming queries in React Hooks
    • New query functions accepting multiple keys supersede the old single-key/query versions, which are now deprecated.
  • DAML Triggers (Early Access) have an overhauled API that is more aligned with DAML Script
    • This change requires a migration detailed below.

The full preliminary release notes and installation instructions for DAML SDK 1.7.0 RC can be found here.

Impact and Migration

  • The compiler now emits warnings if you use advanced and undocumented language features which are not supported by data-dependencies. This only affects you if you use language extensions not documented on docs.daml.com or import DA.Generics. If you receive such warnings, it is recommended that you move off them. If you are getting unexpected warnings, or don’t know how to migrate, please get in touch with us via the public forum or support.digitalasset.com (for registered users).
  • If you are using stream queries in the React Hooks, we recommend you migrate to the new multi-key versions. The migration is detailed below. The old functions are now deprecated, meaning they may be removed with a major release 12 months from now.
  • If you are using DAML Triggers, you’ll need to migrate them to the new API.

What’s Coming

We are continuing to work on performance of the DAML integration components and improving production readiness of DAML Ledgers, but there are exciting features and improvements in the pipeline for the next few releases as well.

  • The Trigger Service will reach feature completion and move into Beta
  • The authentication framework for DAML client applications (like the Trigger Service) is being revisited to make it more flexible (and secure!)
  • The build process for DAML client applications using the JavaScript/TypeScript tooling is being improved to remove the most common error scenarios
  • DAML's error and execution semantics are being tidied up with a view towards improving exception handling in DAML
  • DAML will get a generic Map type as part of DAML-LF 1.9