-
Notifications
You must be signed in to change notification settings - Fork 33
Changelog Utility
user_name edited this page Feb 7, 2023
·
22 revisions
All notable changes to this module will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Documentation update
- Address legacy linter errors from
golangci-lint
- Changed readme to remove $ sign from code blocks
- Changed log lines to utilize new logger module.
- Introduced
txFIFOMempool
which extends the newGenericFIFOSet
in order to replace the legacy logic - Added tests for
txFIFOMempool
- Accessing
TxMempool
via thebus
inutilityContext
- Updated
TestUtilityContext_SetPoolAmount
,TestUtilityContext_GetMessageEditStakeSignerCandidates
,TestUtilityContext_GetMessageUnpauseSignerCandidates
,TestUtilityContext_GetMessageUnstakeSignerCandidates
, andTestUtilityContext_UnstakePausedBefore
to correct misplaced expected and actual values in require.Equal.
- Remove
address []byte
argument fromInsertPool
function
- Rewrite
interface{}
toany
- Updated "test/module_test.go" to encorporate MaxConnsCount, MinConnsCount, MaxConnLifetime, MaxConnIdleTime, and HealthCheckPeriod in persistence config.
- Deprecated
GetBlocksPerSession()
in favour of the more general parameter getter functionGetParameter()
- Update unit test for
GetBlocksPerSession()
to use theGetParameter()
function
- Updated module constructor to accept a
bus
and not aruntimeMgr
anymore - Registering module with the
bus
viaRegisterModule
method
- Renamed enum names as per code-review
- Using defaults from
test_artifacts
for tests - Updated tests to reflect the above changes
- Updated to use the new centralized config and genesis handling
- Updated to use the new
Actor
struct undercoreTypes
- Updated tests and mocks
- Introduce
SetProposalBlock
and local vars to keep proposal state - Maintaining proposal block state (proposer, hash, transactions) in local context
- Introduce a general purpose
HandleMessage
method at the utility level - Move the scope of
CheckTransaction
from the context to the module level - Add an
IsEmpty
function to theMempool
- Rename
DeleteTransaction
toRemoveTransaction
in the mempool - Rename
LatestHeight
toHeight
in theutilityContext
- Add comments inside
CheckTransaction
so its functionality is clearer - Add comments and cleanup the code in
mempool.go
- Minor lifecycle changes needed to supported the implementation of
ComputeAppHash
as a replacement forGetAppHash
in #285
- Propagating the
quorumCertificate
appropriately on block commit - Removed
Latest
from getters related to retrieving the context of the proposed block
- Remove
TxResult
from the utility module interface (added in TxIndexer integration of transaction indexer (issue-#168) #302) - Combined creation and application of block in proposer lifecycle
- Added Relay Protocol interfaces and diagrams
- Added session interfaces and diagrams
- Moved
TxIndexer
package to persistence module - Added new proto structure
DefaultTxResult
- Integrated the
TxIndexer
into the lifecycle- Captured
TxResult
from each played transaction - Moved the storage of transactions to the Consensus Module
- Returned the
TxResults
in theApplyBlock()
andGetProposalTransactions()
-
AnteHandleMessage()
now returnssigner
-
ApplyTransaction()
returnsTxResult
- Captured
#235 Config and genesis handling
- Updated to use
RuntimeMgr
- Made
UtilityModule
struct unexported - Updated tests and mocks
- Removed some cross-module dependencies
- Don't ignore the exit code of
m.Run()
in the unit tests - Fixed several broken unit tests related to type casting
- Removed some unit tests (e.g.
TestUtilityContext_UnstakesPausedBefore
) that were legacy and replaced by more general ones (e.g.TestUtilityContext_UnstakePausedBefore
) - Avoid exporting unnecessary test helpers
- Remove unused
StoreBlock
function from the utility module interface
- Created
UtilityConfig
- Added
max_mempool_transaction_bytes
andmax_mempool_transactions
to the utility config to allow dynamic configuration of the mempool - Matched configuration unmarshalling pattern of other modules
- Added V0 mempool default configurations
- Regenerated build files with new mempool config
- Consolidated
UtilActorType
inutility
andutility/types
totypesUtil.ActorType
- Deprecated all code in
actor.go
and replaced with test helpers - Converted stake status to proto.enum (int32)
- Added DISCUSS items around shared code and
StakeStatus
- Removed no-op
DeleteActor
code - Improved unit test for
UnstakeActorsThatAreReady()
- Removed all usages of
fmt.Sprintf()
from the testing package - Replaced all usages of
requre.True/require.False
withrequire.Equal
unless checking a boolean - Added helper function for getting height and store for a readable and consistent
typesUtil.Error
value - Added testing.M argument to
newTestingPersistenceModule
- Moved in-function literal arguments for
newTestingPersistenceModule
to private constants - Added the address parameter to
ErrInsufficientFunds
function for easier debugging - Added unit test for
LegacyVote.ValidateBasic()
- Added
ErrUnknownActorType
to all switch statements onactorType
- Removed
import
ofconsTypes
(consensus module)
- Consolidated
TransactionHash
to call a single implementation inshared/crypto/sha3
- Extracted function calls from places where we were using the same logic
Encapsulate structures previously in shared #163
- Ensured proto structures implement shared interfaces
-
UtilityConfig
uses shared interfaces in order to acceptMockUtilityConfig
in test_artifacts - Moved all utilty tests from shared to tests package
- Left
TODO
for tests package still importing persistence forNewTestPersistenceModule
- This is one of the last places where cross-module importing exists
- Removed transaction fees from the transaction structure as fees will be enforced at the state level
- Removed actor specific messages (besides DoubleSign) and added actorType field to the struct
- Removed pause messages and functionality as it is out of scope for the current POS iteration
- Removed session and test-scoring as it's out of scope for the current POS iteration
- Consolidated unit test functionality for actors
- Modified pre-persistence to match persistence for Update(actor), 'amountToAdd' is now just 'amount'
- Added minimal 'proof of stake' implementation with few Pocket Specific terminologies and actors
- Structures
- Accounts
- Validators
- Fishermen
- Applications
- Service Nodes
- Pools
- Messages
- Stake
- Unstake
- EditStake
- Pause
- Unpause
- Send
- Structures
- Added initial governance params
Contents
- Home
- Persistence
- Changelog
-
Persistence
- Indexer
- Rpc
- Runtime
- State_Machine
-
Guides
- Roadmap
-
Guides
- Learning
- Guides
-
Guides
- Contributing
- Devlog
-
Guides
- Dependencies
-
Guides
- Releases
- Guides
- P2P
-
Shared
- Crypto
- Shared
-
Shared
- Modules
-
Build
- Config
- Consensus
-
Guides
- Telemetry
- Utility
- Logger