2020 Q3 Hyperledger Transact

Created by Andrea Gunderson, last modified by Dan Middleton on Aug 20, 2020

Project

Hyperledger Transact - https://github.com/hyperledger/transact

Project Health

Health is good. This quarter, the focus is on components that will use Transact. Work is underway to have Hyperledger Sawtooth and libsawtooth make use of Transact’s transaction execution platform, which is a part of the ongoing effort to replace the Python codebase with Rust.  This integration effort will result in changes to Transact, by way of bug fixes and minor API changes as needed.

Questions/Issues for the TSC

No issues currently.

Releases

Since project creation, the project has had 12 releases. The current release is 0.2.4. The releases are available on crates.io

https://crates.io/crates/transact/versions

Release 0.2.5 is planned for updating Sawtooth support to the newest version of the Sawtooth Rust SDK.

Overall Activity in the Past Quarter

Continued incremental improvements to the initial code base. Additional activity shown below. The primary method of discussion continues to be held in RocketChat.

  • Stabilized of the “contract-archive” feature for loading smart contracts from smart contract archive (.scar) files.
  • Update Sawtooth compatibility to the newest version of the Sawtooth Rust SDK

Current Plans

Next steps include:

  • Replace the existing transaction execution platform in the Sawtooth validator with Transact.
  • Stabilize SQLite database support
  • Add a next-generation smart contract API / simplified smart contracts (cross-project with Sawtooth, in progress)
  • Add PostgreSQL database support
  • Further develop the Transact SDK for JavaScript

Maintainer Diversity

The maintainer diversity currently matches that of the initial project sponsor companies.

Contributor Diversity

Due to efforts being geared towards Sawtooth’s adoption of Transact, contributors in the Transact repositories were low, with only 3 contributors.

Additional Information

Reviewed by

Comments:

While I know the intent was for Transact to be used by multiple consumers (and on the Fabric side it just did not work out), it seems that most of the focus is really around Sawtooth.  At this point, does it make sense for Transact to simply become part of the Sawtooth family?  I'm not saying this because of lack of intent, but just because of the reality of how things are playing out.

Posted by mastersingh24 at Aug 11, 2020 20:53

I'de like this to be discussed in the general case before the TSC.  This is one case of a project being folded in when it only applies to one DLT. 

But I am looking down the horizon and could conceivably see projects that may be Ethereum focused that are not strictly speaking part of a Besu node but would be a bad fit for the other DLTs.  EthCluster in Hyperledger Labs is one example, one of the three private ethereum transaction enclaves is another possibility.  If those were to come to the main project area should they become top level projects or sub-repositories as part of Besu?

Posted by shemnon at Aug 12, 2020 03:40