The Aleo Network trait defines a set of constants and functions that define the configuration of an Aleo network. As of 05/15/2024, the SDK is currently based on SnarkVM version 2.2.7 which uses the Testnet3 trait as the primary concrete implementation of the Network trait.
In preparation for the launch of the updated Aleo Testnet, the SDK should support the latest concrete implementations of the Network trait.
Proposal
The SDK should be able to support all concrete implementations of the Network trait supported in the latest version of SnarkVM. As of 5/15/2024 SnarkVM implements the Network trait on the TestnetV0 trait and the MainnetV0 structs.
The implementation of the Network trait on the TestnetV0 struct will be used as the basis of the Aleo TestNet and the implementation of the Network trait on the MainnetV0 struct will be used as the basis of Aleo MainNet. The SDK should support both concrete implementation of these traits.
Also, as of 05/15/2024 the SDK should support the latest git rev on the mainnet-staging branch of SnarkVM . In the near future, when new versions of SnarkVM are published to crates.io, the SDK will reference should reference those versions (which will include all concrete implementations of the Network trait).
There may be a non-trivial amount of changes required to update the SDK to the latest version of SnarkVM, but it should be possible to keep the interfaces of most functions within the SDK the same.
💥 Proposal
Background
The Aleo
Network
trait defines a set of constants and functions that define the configuration of an Aleo network. As of 05/15/2024, the SDK is currently based on SnarkVM version2.2.7
which uses theTestnet3
trait as the primary concrete implementation of theNetwork
trait.In preparation for the launch of the updated Aleo Testnet, the SDK should support the latest concrete implementations of the
Network
trait.Proposal
The SDK should be able to support all concrete implementations of the
Network
trait supported in the latest version of SnarkVM. As of5/15/2024
SnarkVM implements the Network trait on theTestnetV0
trait and theMainnetV0
structs.The implementation of the
Network
trait on theTestnetV0
struct will be used as the basis of the Aleo TestNet and the implementation of theNetwork
trait on theMainnetV0
struct will be used as the basis of Aleo MainNet. The SDK should support both concrete implementation of these traits.Also, as of
05/15/2024
the SDK should support the latest git rev on themainnet-staging
branch of SnarkVM . In the near future, when new versions of SnarkVM are published to crates.io, the SDK will reference should reference those versions (which will include all concrete implementations of theNetwork
trait).There may be a non-trivial amount of changes required to update the SDK to the latest version of SnarkVM, but it should be possible to keep the interfaces of most functions within the SDK the same.