package
4.0.2-stable+incompatible
Repository: https://github.com/algorand/go-algorand.git
Documentation: pkg.go.dev

# Packages

No description provided by the author

# Functions

AccountNameFromPartKeyFilename returns the account name given a participation key filename.
AccountNameFromRootKeyFilename returns the account name given a root key filename.
ApplyShorterUpgradeRoundsForDevNetworks applies a shorter upgrade round time for the Devnet and Betanet networks.
FormatVersionAndLicense prints current version and license information.
GetAlgorandVersion retrieves the current version formatted as a simple version string (Major.Minor.BuildNumber).
GetConfigFilePath retrieves the full path to a configuration file These are global configurations - not specific to data-directory / network.
GetCurrentVersion retrieves a copy of the current global Version structure (for the application).
GetDefaultConfigFilePath retrieves the default directory for global (not per-instance) config files By default we store in ~/.algorand/.
GetDefaultLocal returns a copy of the current defaultLocal config.
GetGlobalConfigFileRoot returns the current root folder for global configuration files.
GetLicenseInfo retrieves the current license information.
GetNonDefaultConfigValues takes a provided cfg and list of field names, and returns a map of all values in cfg that are not set to the default for the latest version.
GetVersionedDefaultLocalConfig returns the default config for the given version.
IsPartKeyFilename returns true if the given filename is a valid participation key filename.
IsRootKeyFilename returns true if the given filename is a valid root key filename.
LoadConfigFromDisk returns a Local config structure based on merging the defaults with settings loaded from the config file from the custom dir.
LoadConfigurableConsensusProtocols loads the configurable protocols from the data directory.
LoadPhonebook returns a phonebook loaded from the provided directory, if it exists.
MatchesPartKeyFilename returns true if the given filename is the participation key file of the given account name.
MatchesRootKeyFilename returns true if the given filename is the root key file of the given account name.
PartKeyFilename gives the participation key filename that corresponds to the given account name and validity period.
PreloadConfigurableConsensusProtocols loads the configurable protocols from the data directory and merge it with a copy of the Consensus map.
RootKeyFilename gives the root key filename that corresponds to the given account name.
SaveConfigurableConsensus saves the configurable protocols file to the provided data directory.
SavePhonebookToDisk writes the phonebook into a root/PhonebookFilename file.
SetConfigurableConsensusProtocols sets the configurable protocols.
SetCurrentVersion allows replacing the current global Version structure (for the application).
SetGlobalConfigFileRoot allows overriding the root folder for global configuration files.
UpdateVersionDataDir is a convenience method for setting the data dir on the global Version struct Used by algod and algoh to set built-time ephemeral version component e.g.

# Constants

Alphanet identifies the 'alpha network' use for performance releases of feature/alphanet to the public prior to releasing these to mainnet/testnet.
Betanet identifies the 'beta network' use for early releases of feature to the public prior to releasing these to mainnet/testnet.
CatchpointTrackingModeAutomatic defines the CatchpointTracking mode that automatically determines catchpoint tracking and storage based on the Archival property and CatchpointInterval.
CatchpointTrackingModeStored defines the CatchpointTracking mode that tracks and stores catchpoints as long as CatchpointInterval > 0.
CatchpointTrackingModeTracked defines the CatchpointTracking mode that tracks catchpoint as long as CatchpointInterval > 0.
CatchpointTrackingModeUntracked defines the CatchpointTracking mode that does _not_ track catchpoints.
ConfigFilename is the name of the config.json file where we store per-algod-instance settings.
ConfigurableConsensusProtocolsFilename defines a set of consensus protocols that are to be loaded from the data directory ( if present ), to override the built-in supported consensus protocols.
CrashFilename is the name of the agreement database file.
Devnet identifies the 'development network' use for development and not generally accessible publicly.
Devtestnet identifies the 'development network for tests' use for running tests against development and not generally accessible publicly.
GenesisJSONFile is the name of the genesis.json file.
LedgerFilenamePrefix is the prefix of the name of the ledger database files.
Mainnet identifies the publicly-available real-money network.
MaxEvalDeltaTotalLogSize is the maximum size of the sum of all log sizes in a single eval delta.
MaxGenesisIDLen is the maximum length of the genesis ID set for purpose of setting allocbounds on structs containing GenesisID and for purposes of calculating MaxSize functions on those types.
ParticipationRegistryFilename is the name of the participation registry database file.
PaysetCommitFlat hashes the entire payset array.
PaysetCommitMerkle uses merkle array to commit to the payset.
PaysetCommitUnsupported is the zero value, reflecting the fact that some early protocols used a Merkle tree to commit to the transactions in a way that we no longer support.
No longer used in product - still in tests.
PlaceholderPublicAddress is a placeholder for the public address generated in certain profiles.
StateProofFileName is the name of the state proof database file.
Testnet identifies the publicly-available test network.
VersionMajor is the Major semantic version number (#.y.z) - changed when first public release (0.y.z -> 1.y.z) and when backwards compatibility is broken.
VersionMinor is the Minor semantic version number (x.#.z) - changed when backwards-compatible features are introduced.

# Variables

AutogenLocal - this variable is the "input" for the config default generator which automatically updates the above defaultLocal variable.
Branch is the git branch in effect when the build was created.
BuildNumber is the monotonic build number, currently based on the date and hour-of-day.
Channel is the computed release channel based on the Branch in effect when the build was created.
CommitHash is the git commit id in effect when the build was created.
Consensus tracks the protocol-level settings for different versions of the consensus protocol.
DefaultDeadlock is the default setting to use for EnableDeadlockDetection.
MaxAppBytesKeyLen is the maximum length of a key used in an application's global or local key/value store.
MaxAppBytesValueLen is the maximum length of a bytes value used in an application's global or local key/value store.
MaxAppProgramLen is the largest supported app program size supported by any of the consensus protocols.
MaxAppTotalArgLen is the maximum number of bytes across all arguments of an application max sum([len(arg) for arg in txn.ApplicationArgs]).
MaxAppTxnForeignApps is the max number of foreign apps per txn across all consensus versions.
MaxAssetNameBytes is the maximum asset name length in bytes.
MaxAssetUnitNameBytes is the maximum asset unit name length in bytes.
MaxAssetURLBytes is the maximum asset URL length in bytes.
MaxAvailableAppProgramLen is the largest supported app program size include the extra pages supported supported by any of the consensus protocols.
MaxBytesKeyValueLen is a maximum length of key or value across all protocols.
MaxEvalDeltaAccounts is the largest number of accounts that may appear in an eval delta, used for decoding purposes.
MaxExtraAppProgramLen is the maximum extra app program length supported by any of the consensus protocols.
MaxInnerTransactionsPerDelta is the maximum number of inner transactions in one EvalDelta.
MaxLogCalls is the highest allowable log messages that may appear in any version, used only for decoding purposes.
MaxLogicSigMaxSize is the largest logical signature appear in any of the supported protocols, used for decoding purposes.
MaxMarkAbsent is the maximum number of online accounts that a proposer can suspend for not proposing "lately".
MaxProposedExpiredOnlineAccounts is the maximum number of online accounts that a proposer can take offline for having expired voting keys.
MaxStateDeltaKeys is the largest number of key/value pairs that may appear in a StateDelta, used for decoding purposes.
MaxTxGroupSize is the largest supported number of transactions per transaction group supported by any of the consensus protocols.
MaxTxnBytesPerBlock determines the maximum number of bytes that transactions can take up in a block.
MaxTxnNoteBytes is the largest supported nodes field array size supported by any of the consensus protocols.
MaxVoteThreshold is the largest threshold for a bundle over all supported consensus protocols, used for decoding purposes.
Protocol holds the global configuration settings for the agreement protocol, initialized with our current defaults.
StateProofTopVoters is a bound on how many online accounts get to participate in forming the state proof, by including the top StateProofTopVoters accounts (by normalized balance) into the vector commitment.

# Structs

BonusPlan describes how the "extra" proposer payouts are to be made.
ConsensusParams specifies settings that might vary based on the particular version of the consensus protocol.
DNSBootstrap represents parsed / validated components derived from a DNSBootstrapID.
Global defines global Algorand protocol parameters which should not be overridden.
Local holds the per-node-instance configuration settings for the protocol.
ProposerPayoutRules puts several related consensus parameters in one place.
ResolvedGenesisDirs is a collection of directories including Genesis ID Subdirectories for execution of a node.
Version is the type holding our full version information.

# Type aliases

ConsensusProtocols defines a set of supported protocol versions and their corresponding parameters.
PaysetCommitType enumerates possible ways for the block header to commit to the set of transactions in the block.