Commit Graph
7073 Commits
Author SHA1 Message Date
junderw 8767305966 Ran cargo fmt 2023-07-03 10:18:22 -04:00
Mononaut 8cb5d8db3d Use min(feerate,ancestor_feerate) for ancestor score 2023-07-03 10:18:22 -04:00
junderw 832e63ae9a Better initial capacity 2023-07-03 10:18:22 -04:00
Mononaut fe84d6e1ab misc JS-side gbt performance optimizations 2023-07-03 10:18:22 -04:00
Mononaut 1e1bf14692 Pass gbt mempool data directly without serialization 2023-07-03 10:18:21 -04:00
Mononaut 860388d9a4 calculate total block weights inside rust gbt 2023-07-03 10:18:21 -04:00
junderw d86858d0f6 Increased performance 2023-07-03 10:18:21 -04:00
junderw 6a2422ab9b Fix CI for Rust test 2023-07-03 10:18:21 -04:00
Mononaut 23a87ba158 vsize -> sigop_adjusted_vsize 2023-07-03 10:18:21 -04:00
Mononaut ac794d3984 conform to core's gbt quirks 2023-07-03 10:18:21 -04:00
Mononaut 5216fc5f2e Add end-to-end test of rust gbt against results from Core 2023-07-03 10:18:21 -04:00
junderw 7313b7ed8d Added Logging and refactored a bit 2023-07-03 10:18:20 -04:00
Mononaut 4833540b1b remove unnecessary option wrapper from gbt return value 2023-07-03 10:18:20 -04:00
Mononaut a4d4f50f9c fix handling of used txs at top of mempool stack 2023-07-03 10:18:20 -04:00
Mononaut 3d5fb9537a swap mempool_array deque for a mempool_stack vec 2023-07-03 10:18:20 -04:00
Mononaut d883c4fadd protect ancestor data from outside assignments 2023-07-03 10:18:20 -04:00
Mononaut dcb597d58c fix rust gbt cpfp cluster construction 2023-07-03 10:18:20 -04:00
Mononaut ac3d85539d fix rust gbt priority queue handling 2023-07-03 10:18:20 -04:00
Mononaut 088c683dfe Fix mempool-blocks linter issues 2023-07-03 10:18:19 -04:00
junderw a2708c35c2 Fix README and publish = false in Cargo.toml 2023-07-03 10:18:19 -04:00
junderw 008c0629bc Fix: napi macro breaks rust-analyzer
See issue: https://github.com/napi-rs/napi-rs/issues/944#issuecomment-1013002760
This will ignore expanding the napi macro for rust-analyzer, letting auto-complete
work inside the napi impl blocks.
2023-07-03 10:18:19 -04:00
Mononaut d41db05d09 clearer uint32 uid overflow check 2023-07-03 10:18:19 -04:00
junderw d8eb10753f Use U32HasherState for HashSet 2023-07-03 10:18:19 -04:00
Mononaut f94a9c7dcd Add sanity checks for GBT cache de-sync 2023-07-03 10:18:19 -04:00
Mononaut d72960ef0b Add sanity check for uint32 uid overflow 2023-07-03 10:18:19 -04:00
Mononaut 74604b67fd Enforce Rust GBT instance lifecycle 2023-07-03 10:18:18 -04:00
Mononaut e903d3ad1f Add Rust GBT config flag 2023-07-03 10:18:18 -04:00
junderw 711ef6425e calc_new_score can be private 2023-07-03 10:18:18 -04:00
junderw 0c22542dbc Fix Rust version of compiler to prevent breakage 2023-07-03 10:18:18 -04:00
junderw dfcae1dfb6 Fix clippy pedantic and nursery lints as well 2023-07-03 10:18:18 -04:00
junderw b8e1fde737 Add safety comments 2023-07-03 10:18:18 -04:00
junderw b3f67ae150 Protect score from outside assignment and document the requirements 2023-07-03 10:18:17 -04:00
junderw a814933661 Use u32hasher with PriorityQueue as well 2023-07-03 10:18:17 -04:00
junderw 190c16ffd3 Use bytemuck instead of unsafe Rust 2023-07-03 10:18:17 -04:00
junderw 887f42fcac Move u32hasher into its own module, don't expose the Hasher for use. 2023-07-03 10:18:17 -04:00
junderw 83fb2f0663 Optimize audit_pool key hashing as well. Use a const for starting capacity for tx related lists. 2023-07-03 10:18:17 -04:00
junderw 6e3b57d5fc Use a class to hold state for Rust GbtGenerator 2023-07-03 10:18:17 -04:00
junderw 46fb6a68eb Use tokio async/await instead of callbacks 2023-07-03 10:18:17 -04:00
junderw 99101ddc4f Check callback status in thread 2023-07-03 10:18:16 -04:00
junderw b2a7bd6b83 Remove all unwrap() calls 2023-07-03 10:18:16 -04:00
junderw b87bf85e1e Use N-API ThreadsafeFunction 2023-07-03 10:18:16 -04:00
junderw fb603be292 Update TS side 2023-07-03 10:18:16 -04:00
junderw 35764a29a7 Feature: Use napi-rs instead of neon 2023-07-03 10:18:16 -04:00
junderw 20dbcf14c9 Remove empty function 2023-07-03 10:18:16 -04:00
junderw 8dfe74a5a2 Move conversion logic to struct file 2023-07-03 10:18:16 -04:00
junderw 5e1d9d461a Use Cargo workspace
Cargo workspace in the root will help make the IDE experience universal.
Cargo.lock and the target directory for build artifacts will be in the root
of the mempool repository (with ./target ignored by git).
2023-07-03 10:18:15 -04:00
junderw 6580d9dc0e Fix: Some of the clippy pedantic lints 2023-07-03 10:18:15 -04:00
mononautandJonathan Underwood 6a439a24d9 Remove redundant gbt function
Co-authored-by: Jonathan Underwood <jonathan.underwood4649@gmail.com>
2023-07-03 10:18:15 -04:00
Mononaut bda48f1ce4 Fix vscode rust-analyzer config 2023-07-03 10:18:15 -04:00
Mononaut 44487e4e2b Refactor rust code for style 2023-07-03 10:18:15 -04:00