Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* deps: clean dependendies and add check script (#450) * Ignore eslint in scripts * Use async calls * Ignore tests * Show testonly dependencies * Calculate deps * Add docs * Implement methods on Package * Cleanup * Rename deps to imports * Fix exceptions * Pass method * Go trough all packages * Improve logs * Rename file * Remove old scripts * Exit with 1 if failing * Fix validator-set-vote-weighted * Validator set static * Fix validator * Fix utils * Fix transaction pool * Fix test-framework * Fix packages * Add deps check * style: resolve style guide violations * Fix ci * Fix api * style: resolve style guide violations --------- Co-authored-by: sebastijankuzner <[email protected]> * feat(bootstrap): compare stored genesis block with config (#451) * Check stored commit * Empty commit * refactor(processor): log verification errors (#452) * Remove console logs * Remove forger errors * Remove UnexpectedError * Remove extra exceptions * Add ValidatorExceptions * Handler throws errors * Improve logs * style: resolve style guide violations --------- Co-authored-by: sebastijankuzner <[email protected]> * chore: change banner format to jpeg (#453) * Add banner jpeg * Remove png version * Update readme * release: 0.0.1-alpha.8 (#454) * release: 0.0.1-alpha.8 * style: resolve style guide violations --------- Co-authored-by: sebastijankuzner <[email protected]> * fix(validator-set-vote-weighted): active validators is subset of registered validators (#466) * Mak method private * Build validators * Local variable * Use for of loop * Check active validators * Fix tests * fix(processor): `validatorVoteBalance` calculation (#467) * Add pg:reset * Decrease vote balance * Include fee * Remove unused line * style: resolve style guide violations --------- Co-authored-by: sebastijankuzner <[email protected]> * chore: docker validator support (#468) * release: 0.0.1-alpha.9 (#469) * release: 0.0.1-alpha.9 * style: resolve style guide violations --------- Co-authored-by: sebastijankuzner <[email protected]> * chore: fix publish GitHub workflow (#470) * Run on pull request * No git checks * set token * Revert to original build conditions --------- Co-authored-by: oXtxNt9U <[email protected]> * refactor(transactions): move amount deduction into transaction handlers (#472) * refactor transfer amount deduction * cleanup * update schema tests * feat: add `env:paths:clear` commands (#473) * Clear plugins & exports * Clear data * Remove variables * Add paths to contracts * Remove config paths * Cache cache, log, temp * Cleanup * Add command to api * Add clear all * Fix case * release: 0.0.1-alpha.10 (#474) * release: 0.0.1-alpha.10 * style: resolve style guide violations --------- Co-authored-by: sebastijankuzner <[email protected]> * feat(crypto-transaction-username-registration): limit one transaction by sender in pool (#475) * Rename variable * Fix text * Check transaction already in the pool * feat(validator): log loaded validators (#477) * Inject * Print method * Print on bootstrap * Rename method * Execute after state check * Improve text * Log 0 validators * Determine activa & standby * Wallet to string * chore: fix typo in transaction fee errors (#476) * feat(state): implements `sizeOfIndex` on WalletRepository (#479) * Add sizeOfIndex * Add initial implementation * Wallet repository clone * Implement on wallet repo clone * Add missing attribute * FIx validator resignation * release: 0.0.1-alpha.11 (#480) * release: 0.0.1-alpha.11 * style: resolve style guide violations --------- Co-authored-by: sebastijankuzner <[email protected]> * feat: port to ES modules (#478) * initial browser support * add package link script * port api-common * port api-database * port api-development * port api-http * port api-sync * port api-transaction-pool * port api * port bootstrap * port cli * port configuration-generator * port consensus * port webhooks * port validator * port validator-set-vote-weighted * port validator-set-static * port validation * port utils * port transactions * port transaction-pool * port test-framework * port state * port serializer * port proposer * port processor * port p2p * port networking-ntp * port networking-dns * port logger-winston * port logger-pino * port kernel * port fees * port fees-static * port fees-managed * port fees-burn * port database * port crypto-worker * port crypto-wif * port crypto-validation * port crypto-transaction * port crypto-transaction-vote * port crypto-transaction-validator-resignation * port crypto-transaction-validator-registration * port crypto-transaction-username-resignation * port crypto-transaction-username-registration * port crypto-transaction-transfer * port crypto-transaction-multi-signature-registration * port crypto-transaction-multi-payment * port crypto-signature-schnorr * port crypto-signature-schnorr-secp256k1 * port crypto-signature-ed25519 * port crypto-signature-ecdsa * port crypto-signature-bls12-381 * port crypto-messages * port crypto-key-pair-schnorr * port crypto-key-pair-ed25519 * port crypto-key-pair-ecdsa * port crypto-key-pair-bls12-381 * port crypto-hash-wasm * port crypto-hash-noble * port crypto-hash-bcrypto * port crypto-consensus-bls12-381 * port crypto-config * port crypto-commit * port crypto-block * port crypto-address-ss58 * port crypto-address-keccak256 * port crypto-address-bech32m * port crypto-address-bech32 * port crypto-address-base58 * port core * port contracts * port container * update tsconfig to nodenext * fix kleur/color * update core/bin/run.js * command fixes * lmdb import fixes * p2p fixes * ajv fix * get __dirname * update pnpm-lock.yaml * remove unused @pm2/io dependency * replace fileURLToPath * use filesystem service inside kernel * cleanup * update TypeScript to 5.4.2 * move __dirname into local scope * replace fast-memoize with memoizee * test-runner packacge * re-export test-runner * tests: utils * tests: validation * tests: crypto-config * tests: container * tests: kernel * tests: transactions * style: resolve style guide violations * fix more tests * fix transaction dependency lookup * fix p2p tests * more fixes * fix cli and configuration-generator * cli fixes * kernel fixes * transaction-pool * all pass * commit dirty * style: resolve style guide violations * fix api-http integration tests * fix deps:check * runtime fixes --------- Co-authored-by: oXtxNt9U <[email protected]> Co-authored-by: sebastijankuzner <[email protected]> * fix(api): broken entrypoint (#481) * fix api entrypoint * fix more commands * refactor(transaction-pool): return tx indexes as integers (#483) * return tx indexes as integers * fix compile error * chore: update dependencies (#482) * update dependencies * Empyt commit --------- Co-authored-by: sebastijankuzner <[email protected]> * fix wallet response (#485) * fix(configuration-generator): create genesis block script (#484) * fix create genesis block script * Empty commit --------- Co-authored-by: sebastijankuzner <[email protected]> * resolve conflicts * refactor(core): rename run script to have explicit file extension (#486) * ensure run script has explicit file extension fixes ERR_UNKNOWN_FILE_EXTENSION * empty commit * fix: use .js extension in `start` commands (#487) * Fix start commands * Fix package.json * Fix tests * release: 0.0.1-alpha.12 (#488) * release: 0.0.1-alpha.12 * style: resolve style guide violations --------- Co-authored-by: sebastijankuzner <[email protected]> * fix(core): resolve correct plugin `package.json` path (#489) * Fix package manifest * Skip tests * release: 0.0.1-alpha.13 (#490) * release: 0.0.1-alpha.13 * style: resolve style guide violations --------- Co-authored-by: sebastijankuzner <[email protected]> * feat(cli): determine correct entrypoint paths (#491) * Add setup class * Fix setup * Bind * Fixes * Use setup paths * Use in api * Remove logs * Fix tests * Cleanup tests * fix(test-framework): list project packages in dependencies (#492) * Use direct dependencies * Empty commit * Fix dependencies * Fix dependencies * style: resolve style guide violations --------- Co-authored-by: sebastijankuzner <[email protected]> * exclude genesis transactions from fee statistics calculation (#494) * fix(crypto): manage static fees via milestones (#493) * add static fees to milestones * update tests * style: resolve style guide violations * initialize static fees only in a single place --------- Co-authored-by: oXtxNt9U <[email protected]> * fix(api): sync active milestones on change (#495) * sync active milestones on change * fix test * fix(api-http): add missing fields to transaction resource (#496) * improve error logging * populate all transaction fields * review * remove type cast * add comment * simplify more * rename block model too and add assert * fix paths according to the latest paths naming convention (#497) * refactor(p2p): replace ip with `url` in api nodes (#498) * api node urls * update protobuf definitions * update test fixtures * cleanup * style: resolve style guide violations --------- Co-authored-by: oXtxNt9U <[email protected]> * fix(transaction-pool): invalid tx error reporting (#500) * fix tx pool error reporting * empty commit * test: use `tsx` TypeScript loader (#499) * Add tsx * Fix runner * Fix test-runner scripts * Update tsconfig * Fix tests * Use test config * Fix api tests * api-common * Api-database * api-development * api-http * api-sync * api-transaction-pool * bootstrap * cli partial * Fix cli tests * Runner extends contracts * Configuration generator * Consensus * Container * Contracts * Core * Crypto address * Crypto block * Cypto commit * Crypto config * Crypto * Crypto messages * Crypto signature * Crypto transaction * Crypto * Database * Fees * Kernel * Logger pino * Logger winston * Networking * Server * Processor, proposer, serializer * State * Transaction pool * Transactions * Utils * Validation * Validator * Validator set * Webhooks * Remove tsm * Fix integration tests * Update lint CI * Fix dependencies * Prettier * Lint * Perttier * style: resolve style guide violations * refactor: remove `__dirname` usage (#501) * Remove __dirname * Fix tests * Factory require config * test(functional/consensus): add skeleton for functional tests (#503) * Prepare base structure * Add test runner * Base test * Add base packages * Register base packages * Add config * Add pacakges * Export bootstrap * Export individual bootstrappers * Register bootstrappers * Extract bootstrapper itnerface * Test * Use tsm * Pass url to PluginManifest * Register service provider * Setup up to validator package * Register all necessary packages * Add missing packages * Boot * Register transactions * Process genesis * Run consensus * Add worker * Fix worker * Fix broadcaster * refactor(consensus-storage): extract storage logic into package (#502) * Add consensus storage package * Prepare service provider * Remove storage from consensus * Add dependencies * Move root into consensus storage * Rename identifier * Fix identifiers * Edit contracts * Fix deps * Update packages/consensus-storage/README.md Co-authored-by: oXtxNt9U <[email protected]> --------- Co-authored-by: oXtxNt9U <[email protected]> * milestone generator add static fees (#504) * test(functional/transaction-pool-api): initial boilerplate and tests (#505) * update gitignore * add tx pool api boilerplate and basic broadcast * add signWithKeyPair to tx builder * update functional consensus milestones * wait for block and assert committed transaction * invalid transfer test * assert invalid transactions are not committed * test with invalid / malformed signature * fix(test-runner): rethrow error in runHook (#506) * bubble up error thrown in runHook * Empty --------- Co-authored-by: sebastijankuzner <[email protected]> * refactor(database): return commits instead blocks (#507) * getBlock to getCommit * Fix tests * getLastBlock -> getLastCommit * Fix tests * Implement isEmpty * Fix tests * feat(transaction-pool): support `in-memory` database (#510) * Support im memory database * Deps * Test * style: resolve style guide violations --------- Co-authored-by: sebastijankuzner <[email protected]> * test(functional/consensus): prepare package replacements, asserts and p2p layer (#508) * Bind consensus storage * Mock database * Add contracts * Use relative paths * Prepare 2 setups * Run 2 nodes * Make log protected * Make MemoryLogger fields protected * Prepare custom logger * Prepare p2p layer * Fix p2p * MemoryDatabase * Load crypto * Read validators * Prepare validators * Use common config * Add snooze for one block * Stop node * Snooze for block * Prepare smaller config * Asserts * Fix and check TS code * Add script for check & test * Use strict true * Support plugin options * Assert validators * refactor(kernel): create bootstraper for shutdown signals (#511) * Register error handler first * Move listen to shutdown signals into bootstrapper * test(functional/transaction-pool-api): test all transaction types (#509) * missing dependency * transfer * vote * username-registration * username-resignation * validator-registration * validator-resignation * multipayment * fix default payload * update utils * multi signature test plus fixes * fix compile error * test transfer with multisig * rename tests for clarity * add wallets to context * tsc strict * add snapshot based balance checks * reduce block time * review * test(functional/transaction-pool): increase vote coverage (#512) * votes * empty commit * test switch vote and unvote for non voted validator * test(functional/transaction-pool): increase validator registration coverage (#513) * votes * empty commit * validator registration * empty commit * test(functional/transaction-pool): increase validator resignation coverage (#514) * votes * empty commit * validator resignation * empty commit * test(functional/transaction-pool): increase username registration coverage (#515) * votes * empty commit * username registration * empty commit * test(functional/transaction-pool): increase username resignation coverage (#516) * votes * empty commit * username resignation * empty commit * fix(kernel): minority and majority calculation (#520) * Fix majority, minority * Tests * Add extra tests * fix(api-http): allow 0 nonce in schema (#521) * Allow nonce 0 * Empty commit * fix(api-http): implement missing `/transaction/fees` route (#523) * implement missing route /transaction/fees * add test * style: resolve style guide violations * remove unused query param --------- Co-authored-by: oXtxNt9U <[email protected]> * test(functional/transaction-pool): increase multi sig registration coverage (#517) * more multi signature tests * empty commit * update min participants * test missing participant signature * test(functional/transaction-pool): add more misc coverage (#518) * more multi signature tests * empty commit * add misc tests * empty commit * release: 0.0.1-alpha.14 (#522) * release: 0.0.1-alpha.14 * style: resolve style guide violations --------- Co-authored-by: sebastijankuzner <[email protected]> * feat(consensus): emit events (#524) * Add bootstrapped * New round * Add events * Dispatch events * Fix tests * test(functional/transaction-pool): extract transaction builders into separate package (#525) * introduce test-transaction-builders package * use test transactions package * include type when logging rejected tx * style: resolve style guide violations * fix deps:check * style: resolve style guide violations --------- Co-authored-by: oXtxNt9U <[email protected]> * test(functional/consensus): test proposal scenarios (#526) * Add initial test * Rename base test * Optional blockId * Full test * Bind custom proposer selector * Check generatorPublic key * Make consensus methods protected * Expose boot and bootstrap methods * Skip error handler registration * Make consensus methods public * Assert blockRound * Implement *Many helpers * Fix base test * Force async to p2p * Test missing propose * Simulate double propose * Simulate 50:50 split * Remove assertCommitValidators * Record messages * Asserts * majority minority split * SnozeForBlock with height * Assert next block is fine * Check multiple rounds * Check invalid proposer * Add CI for functional * Rename tests to proposal * Rename tests * fix(api-http): delegate search (#527) * Fix delegate search in API * Initial support for sorting on jsonb fields * Update tests * style: resolve style guide violations --------- Co-authored-by: oXtxNt9U <[email protected]> * refactor(p2p): log route on codec error (#528) * Log error * Allow empty * test(functional/transaction-pool): add .gitkeep (#530) * add .gitkeep * empty commit * test(functional/consensus): test prevote & precommit scenarios (#529) * Check minority not prevoting * Test null prevotes * Extract methods to utils * Check random block * Check with multiple prevotes * Lint * Fix ts errors * Disable unicorn/no-useless-undefined * Check missing precommits * Test precommits * Check multiple messages * fix(configuration-generator): update export paths (#531) * Update paths * Empty * feat(api-development): add `peers/banned` endpoint (#532) * Disposer returns list of banned peers * Add endpoint * Add pagiantion * Format timeout * style: resolve style guide violations --------- Co-authored-by: sebastijankuzner <[email protected]> * test(functional): update ci workflow (#534) * run all functional tests in ci * test * style: resolve style guide violations * test * revert me * style: resolve style guide violations * include matrix name * revert trigger --------- Co-authored-by: oXtxNt9U <[email protected]> * test(functional/consensus): test rejection of invalid block proposals (#533) * custom funded wallet provider * REVERT ME: debug logs * export Proposer * custom block proposal * emit event on invalid block * add assertInvalidBlock * extract custom proposal function * ensure wallet exists on each node * invalid proposals * seed with randomBytes * log error instance on mismatch * lint * Revert "REVERT ME: debug logs" This reverts commit defdf7e. * deps: update lmdb (#535) * Update lmdb * Log if commit cannot be read * Await transaction flushed * Await flush * test(functional): fix `MaxListenersExceeded` warning (#537) * fix MaxListenersExceededWarning * empty commit * feat(api-http): support sorting on jsonb attributes (#538) * support sort on wallet attributes * NULLS LAST * tests * style: resolve style guide violations --------- Co-authored-by: oXtxNt9U <[email protected]> * fix(p2p): peer ban and validate ip plugin (#539) * Skip header check if peer is not in repo * Validate peer ip * Remove repo check * Validate ip and data separately * Fix test * Update default peer ban time * feat(cli): add --overwrite flag to `config:publish:custom` (#536) * expose `skip` callback * update publish:custom command * style: resolve style guide violations * Make fields optional * Require flags error --------- Co-authored-by: oXtxNt9U <[email protected]> Co-authored-by: sebastijankuzner <[email protected]> * conflict fixes * style: resolve style guide violations * fix tests --------- Co-authored-by: Sebastijan K <[email protected]> Co-authored-by: sebastijankuzner <[email protected]> Co-authored-by: Adrian Kerchev <[email protected]> Co-authored-by: Edgar Goetzendorff <[email protected]> Co-authored-by: oXtxNt9U <[email protected]> Co-authored-by: sebastijankuzner <[email protected]>
- Loading branch information