[LEGACY] Monorepo containing everything related to the core Connext protocols and network.
Minor release with some general bug fixes including:
nodeIdentifier
prefix.@connext/{types,utils,cf-core,apps,messaging,store,channel-provider,client,watcher}@7.0.0-alpha.6
Major version pre-release includes:
ChannelSigners
can be instantiated with a JsonRpcProvider
getHashlockTransfer
would not return preimage for uninstalled apps.ConditionalTransferTypes.HashLockTransfer
transfers for separate assetIds. Good for cross-chain swaps.This might be the largest release we have made yet! Tons of new features, stability improvements, optimizations, and breaking changes. Keep reading for a thorough breakdown.
Rationale: Old adjudication system had a lot of complexity and had edge cases that were hard to reason about for long-lived apps. With this update, we have moved to a simpler new system that splits disputes into two distinct phases which consolidate into one commitment type in one seamless flow.
Highlights:
cancelDispute
function.appIdentityHash
to use all parts of the app's identity for better replay protection.Rationale: Legacy deposit/withdraw were brittle and contained vulnerabilities. Deposit/withdraw were blocking ops, doing them concurrently would break channels. Were implemented using custom code rather than the core protocol methods, increasing surface area. With this update, we moved to new protocols that are built into the existing counterfactual application-based lifecycle.
Highlights:
totalAmountWithdrawn
in multisig and interpreters.totalAmountWithdrawn
and multisig balance to calculate deposit within a period.Rationale: Building applications was time-consuming and highly custom. With this update, we modularized the applications and simplified the process by minimizing the touchpoints with the core system.
Highlights:
appInstance
participants by initiator/responder to correctly retain that context in disputes.meta
in appInstances in store.Rationale: Dealing with xpubs and mnmonics was one of the big headaches for integrations. At the same time, we want Connext-specific addressing to avoid confusion about sending funds to an Ethereum address instead of a channel. With this update, we have moved to a new signing and addressing scheme that maintains the security needed to keep Connext transactions separate from Ethereum transactions but makes Connext compatible with existing signing best practices.
HIghlights:
indra + base58(publicKey)
\x15Indra Signed Message:\n
Highlights:
Rationale:
Legacy store was oversimplified to a simple get
and set
. This was unsustainable for certain store implementations like the node, which needed to do complex things like query across all channels. With this update, we broke up the store into more context-specific methods that are used within the protocols. This allows store implementations to optimize based on their specific storage medium.
Highlights:
Highlights:
@connext/contracts
package version to get updated testnet contract addresses.