Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CHIA-194: CHIP-0026 Mempool Updates #17980

Merged
merged 24 commits into from
Jun 6, 2024
Merged

CHIA-194: CHIP-0026 Mempool Updates #17980

merged 24 commits into from
Jun 6, 2024

Conversation

Rigidity
Copy link
Contributor

@Rigidity Rigidity commented May 7, 2024

Purpose:

Implements mempool updates described in CHIP-0026.

Current Behavior:

There is no way to receive updates on specifically subscribed transactions entering and leaving the mempool.

New Behavior:

Now you can opt in to mempool updates for subscriptions, which makes transaction lists and replace by fee easier in wallets.

Testing Notes:

Not yet tested.

Manually tested on Testet11 and Mainnet, and an extensive suite of unit tests covering all of the different mempool update features.

@Rigidity Rigidity added the Added Required label for PR that categorizes merge commit message as "Added" for changelog label May 7, 2024
@Rigidity Rigidity self-assigned this May 7, 2024
@Rigidity Rigidity changed the title Initial draft of mempool updates CHIP-0026 Mempool Updates Jun 4, 2024
@Rigidity Rigidity changed the title CHIP-0026 Mempool Updates CHIA-194: CHIP-0026 Mempool Updates Jun 4, 2024
Copy link
Contributor

github-actions bot commented Jun 4, 2024

This pull request has conflicts, please resolve those before we can evaluate the pull request.

@github-actions github-actions bot added the merge_conflict Branch has conflicts that prevent merge to main label Jun 4, 2024
Copy link
Contributor

github-actions bot commented Jun 4, 2024

This pull request has conflicts, please resolve those before we can evaluate the pull request.

@github-actions github-actions bot removed the merge_conflict Branch has conflicts that prevent merge to main label Jun 4, 2024
Copy link
Contributor

github-actions bot commented Jun 4, 2024

Conflicts have been resolved. A maintainer will review the pull request shortly.

@Rigidity Rigidity marked this pull request as ready for review June 4, 2024 16:11
@Rigidity Rigidity requested a review from a team as a code owner June 4, 2024 16:11
Copy link

coveralls-official bot commented Jun 5, 2024

Pull Request Test Coverage Report for Build 9370560167

Warning: This coverage report may be inaccurate.

This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.

Details

  • 559 of 574 (97.39%) changed or added relevant lines in 19 files are covered.
  • 9 unchanged lines in 4 files lost coverage.
  • Overall coverage increased (+0.05%) to 90.887%

Changes Missing Coverage Covered Lines Changed/Added Lines %
chia/_tests/wallet/test_new_wallet_protocol.py 172 174 98.85%
chia/full_node/mempool.py 58 60 96.67%
chia/full_node/mempool_manager.py 35 39 89.74%
chia/full_node/full_node.py 66 73 90.41%
Files with Coverage Reduction New Missed Lines %
chia/full_node/full_node_api.py 1 81.58%
chia/daemon/server.py 1 83.22%
chia/introducer/introducer.py 1 78.26%
chia/full_node/full_node.py 6 86.09%
Totals Coverage Status
Change from base Build 9370418657: 0.05%
Covered Lines: 99808
Relevant Lines: 109761

💛 - Coveralls

chia/_tests/wallet/test_new_wallet_protocol.py Outdated Show resolved Hide resolved
chia/_tests/wallet/test_new_wallet_protocol.py Outdated Show resolved Hide resolved
chia/full_node/full_node.py Outdated Show resolved Hide resolved
chia/full_node/full_node.py Outdated Show resolved Hide resolved
chia/full_node/mempool.py Outdated Show resolved Hide resolved
chia/full_node/mempool.py Outdated Show resolved Hide resolved
chia/full_node/mempool.py Outdated Show resolved Hide resolved
chia/full_node/mempool_manager.py Show resolved Hide resolved
chia/full_node/subscriptions.py Show resolved Hide resolved
Copy link

coveralls-official bot commented Jun 5, 2024

Pull Request Test Coverage Report for Build 9388943918

Warning: This coverage report may be inaccurate.

This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.

Details

  • 641 of 657 (97.56%) changed or added relevant lines in 20 files are covered.
  • 141 unchanged lines in 6 files lost coverage.
  • Overall coverage increased (+0.02%) to 90.861%

Changes Missing Coverage Covered Lines Changed/Added Lines %
chia/full_node/full_node_api.py 38 40 95.0%
chia/full_node/mempool.py 54 56 96.43%
chia/full_node/mempool_manager.py 35 39 89.74%
chia/full_node/full_node.py 72 80 90.0%
Files with Coverage Reduction New Missed Lines %
chia/_tests/core/full_node/test_transactions.py 1 99.11%
chia/timelord/timelord.py 2 73.67%
chia/server/ws_connection.py 3 87.96%
chia/full_node/weight_proof.py 35 90.66%
chia/_tests/conftest.py 45 92.41%
chia/_tests/util/misc.py 55 73.4%
Totals Coverage Status
Change from base Build 9370418657: 0.02%
Covered Lines: 99889
Relevant Lines: 109879

💛 - Coveralls

Copy link
Contributor

@arvidn arvidn left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nice!

Copy link
Contributor

github-actions bot commented Jun 5, 2024

File Coverage Missing Lines
chia/full_node/full_node.py 92.3% lines 1581-1582, 1584, 2425, 2480, 2489
chia/full_node/mempool_manager.py 89.7% lines 398, 690, 693, 784
Total Missing Coverage
743 lines 10 lines 98%

Copy link

coveralls-official bot commented Jun 5, 2024

Pull Request Test Coverage Report for Build 9390734505

Warning: This coverage report may be inaccurate.

This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.

Details

  • 733 of 743 (98.65%) changed or added relevant lines in 21 files are covered.
  • 155 unchanged lines in 9 files lost coverage.
  • Overall coverage increased (+0.02%) to 90.861%

Changes Missing Coverage Covered Lines Changed/Added Lines %
chia/full_node/mempool_manager.py 35 39 89.74%
chia/full_node/full_node.py 72 78 92.31%
Files with Coverage Reduction New Missed Lines %
chia/_tests/core/full_node/test_transactions.py 1 99.11%
chia/daemon/server.py 1 83.22%
chia/introducer/introducer.py 1 78.26%
chia/rpc/rpc_server.py 3 87.71%
chia/server/ws_connection.py 3 87.96%
chia/full_node/full_node.py 9 85.55%
chia/full_node/weight_proof.py 37 90.51%
chia/_tests/conftest.py 45 92.41%
chia/_tests/util/misc.py 55 73.4%
Totals Coverage Status
Change from base Build 9370418657: 0.02%
Covered Lines: 99969
Relevant Lines: 109964

💛 - Coveralls

@Rigidity
Copy link
Contributor Author

Rigidity commented Jun 5, 2024

The missing coverage is due to:

  • Edge cases which would be very difficult to test for (peer is None due to a race condition)
  • Code paths which were already uncovered but modified slightly

The mempool updates feature is fully tested

@cmmarslender cmmarslender merged commit de75f05 into main Jun 6, 2024
362 of 363 checks passed
@cmmarslender cmmarslender deleted the mempool-updates branch June 6, 2024 09:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Added Required label for PR that categorizes merge commit message as "Added" for changelog
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants