Ecosyste.ms: OpenCollective

An open API service for software projects hosted on Open Collective.

github.com/firoorg/electrumx-archived

Alternative implementation of spesmilo/electrum-server
https://github.com/firoorg/electrumx-archived

Make mempool histogram refresh frequency coin-specific

7a3938be239f47a114207989209666cb1e45f118 authored over 6 years ago by Neil Booth <[email protected]>
Prepare 1.7

9b23fbc7476ca915b23a41cb6d3f9fc0b18507b7 authored over 6 years ago by Neil Booth <[email protected]>
Create a task to start_servers()

That way we start waiting on the shutdown event no matter what
so we can always be shut down

5e4586ce542d8c415fc96f6d86021fbac58a61fe authored over 6 years ago by Neil Booth <[email protected]>
header_mc might be None

365c217031d9c990445b297c269a357a26e04b81 authored over 6 years ago by Neil Booth <[email protected]>
Tweak task handling so all errors are logged

68dbf9fad22e04fa7935f35813f7f7c006c3d5fd authored over 6 years ago by Neil Booth <[email protected]>
Rework prefetch logic

This also fixes a recent reorg bug...

3fbd4992ce451829f68a7d5e6348ed2bcdeb47f6 authored over 6 years ago by Neil Booth <[email protected]>
Fix bug recently introduced in reorgs

Fixes #532

d008707330982bc22e6726c3a6eda57fbf828363 authored over 6 years ago by Neil Booth <[email protected]>
Require an exact aiorpcX version

The interface is changing; best to target a single codebase

5a42f79bb863c9cb1a73ed5a69f3c2f21d7d0162 authored over 6 years ago by Neil Booth <[email protected]>
Travis: test Python 3.7

ae143703aec1cb9a0b7a12901d86883abd821ac2 authored over 6 years ago by Neil Booth <[email protected]>
await on send_request directly

db8ee48c2e2537ff75e78d679bdfda851cf2eec1 authored over 6 years ago by Neil Booth <[email protected]>
Don't check task exceptions ourselves

8d3f98d3fd96fd416364a55d74226a2d7d5616e3 authored over 6 years ago by Neil Booth <[email protected]>
Use asyncio.gather to propogate exceptions

fa84b0f54bbd92a85dae2e8b598b02ba0b37f15b authored over 6 years ago by Neil Booth <[email protected]>
Remove RequestError; clean up a bit

918592fbffcd95606806f13a7826ef37ccd014d1 authored over 6 years ago by Neil Booth <[email protected]>
Fix typo in prior

e1309836ca6ddc56ae654ec987807f3a442c7193 authored over 6 years ago by Neil Booth <[email protected]>
Rework peer discovery

Make it more naturally async

eac214e508748ee3fb1c8107109e0300ebdb4175 authored over 6 years ago by Neil Booth <[email protected]>
Avoid callback in peer manager

Spawn separate tasks for each peer we test

ba607544b991708646270d1337b2709c8a5a03b9 authored over 6 years ago by Neil Booth <[email protected]>
Log proxy detection failure

12c024f3ac5baa072dd017f069e9b204d654abd8 authored over 6 years ago by Neil Booth <[email protected]>
Distinguish private and public methods of peer mgr

Give private methods a leading _
Remove dead code

79b98b2b544a98a35d8bd94f824a45267a393021 authored over 6 years ago by Neil Booth <[email protected]>
Update various comments

92ddb52f633b0541ebdc20b48c05974690d62553 authored over 6 years ago by Neil Booth <[email protected]>
Support for Minexcoin (#529)

83732af4fe2ffc6a5c57b1cfef2217a199d2c32d authored over 6 years ago by joesixpack <[email protected]>
Defer peer discovery

221f1222a6362e76e2212ac3f041d37f53f3d90e authored over 6 years ago by Neil Booth <[email protected]>
Reduce memory footprint

- Use tuples in preference to lists
They are always at least 11% smaller memory
footprint, r...

316f642a0820fabe4d2a70efa0d3d138e01ecb48 authored over 6 years ago by Neil Booth <[email protected]>
Retain the prevouts with each MemPoolTx

7485d0aaf0eca39b75760e83d493ed33005e2a57 authored over 6 years ago by Neil Booth <[email protected]>
fix mempool tx fee calculation typo (#531)

45ccf8a64ec43de8d124daee2426108520bdc309 authored over 6 years ago by ghost43 <[email protected]>
Remove comment

7c01acdbf232c4a0252902ef4abb4c22a94b442a authored over 6 years ago by Neil Booth <[email protected]>
Clean up fee histogram implementation

Much more efficient to just calculate it outright than try
and maintain datastructures

b05cc4e78bba4db39e7629f1ad20e82fd1ca86ff authored over 6 years ago by Neil Booth <[email protected]>
Start peer discovery whilst syncing the mempool

3e535e47f4d915a4fc0c2ccd8834025c3ec983f1 authored over 6 years ago by Neil Booth <[email protected]>
Completely overhaul mempool sync logic

- highly concurrent and a lot more efficient than previously
- initial mempool sync should be mu...

0963ce5230cd51840f586eac744fcb1fdea41c37 authored over 6 years ago by Neil Booth <[email protected]>
Create a MemPoolTx object and use it

21604cad1582c40d9dc8f8858230c28a221899e6 authored over 6 years ago by Neil Booth <[email protected]>
Deserialize mempool txs in a thread

4b3ceff0d28bc81037858a11a1531b931a130374 authored over 6 years ago by Neil Booth <[email protected]>
Make mempool processing more properly asynchronous

9bd9476a5419d592d2e9b489626d338a97d660cc authored over 6 years ago by Neil Booth <[email protected]>
Simplify refresh hashes loop

4da95dd8533c349721a8ea178bfb700fe07ca4f5 authored over 6 years ago by Neil Booth <[email protected]>
Put stats logging into its own task

821f9079713bf63d7b101d385e79113e084f9c87 authored over 6 years ago by Neil Booth <[email protected]>
Clarify mempool's exported interface

2c51b127de3a0e77b0074a1631b4523b10b6d80c authored over 6 years ago by Neil Booth <[email protected]>
Pass the daemon not chain_state to mempool constructor

The mempool as its own process would maintain its own daemon

a9a69acaf3b9bb8270958153e30b6ea0ce6014b3 authored over 6 years ago by Neil Booth <[email protected]>
Make notifications properly async

35506f60546cf81434f84b943a11e15745662d93 authored over 6 years ago by Neil Booth <[email protected]>
Fix the package versions in setup.py

277e2447c0f3c990cde6dc5d79689578c1b87a2d authored over 6 years ago by Neil Booth <[email protected]>
Improve comments

e568ee2488e03b7c5d0e7196a4ba0dd51ce4fe71 authored over 6 years ago by Neil Booth <[email protected]>
Rework mempool and notification code

Clarifies the mempool interface to look more like what it
would in its own process

c715ae624966641bce847ccedd5dff19f86b3b57 authored over 6 years ago by Neil Booth <[email protected]>
In ChainState prepend private members with an underscore

3e8c413b7732cc5d4e82d3a08b03004b8a765b76 authored over 6 years ago by Neil Booth <[email protected]>
Require aiohttp >= 2.0

6cf7b049fa3ab6e18ba561b43d0e85c5912d3235 authored over 6 years ago by Neil Booth <[email protected]>
Don't accept onion peers if we have no proxy

74c5c3f81704ca5fdc81531bb15853606315c022 authored over 6 years ago by Neil Booth <[email protected]>
Fix failing test

f7c95986bf5c10185f8e0bb8e8313b9e93d9173f authored over 6 years ago by Neil Booth <[email protected]>
Remove dead code

0c281367396c14fe7f8c9625864584de4b78c734 authored over 6 years ago by Neil Booth <[email protected]>
Logging tweaks

8e99d076b618132fa99ae4613035bee974dbaa37 authored over 6 years ago by Neil Booth <[email protected]>
Rework mempool and BP<->prefretcher communication

ca3ba2b2d834c94f8e3f6dbc0513a83e95fc7fd5 authored over 6 years ago by Neil Booth <[email protected]>
Label 1.6a

431989f0ea07695ed7fcc7a291601a9305e54090 authored over 6 years ago by Neil Booth <[email protected]>
Clean up shutdown process of the block processor

- enables removal of executor code
- clarify flush guarantees

530c7cac6f0af153ad0340d4fe3907042f4a9c21 authored over 6 years ago by Neil Booth <[email protected]>
Clean up controller interface with other parts

41e734caeb56f663dc8aaff271a8faedf9552ebc authored over 6 years ago by Neil Booth <[email protected]>
Clean up the process of opening the DBs, make asynchronous

bd636a75adda009af5526b501864d5f70c7579f1 authored over 6 years ago by Neil Booth <[email protected]>
Make it clear where BlockProcessor is instantiated

a019656a5ebe003a4f7cbcca0dd265c28ae6fc19 authored over 6 years ago by Neil Booth <[email protected]>
Added Motion Coin mainnet (#528)

* Motion added

227696636d98842b8347d0e3c24a352a8809c629 authored over 6 years ago by Omar Cruz <[email protected]>
Prepare 1.6

023e463748eeb0ccde87b0315cea7818a479a5a5 authored over 6 years ago by Neil Booth <[email protected]>
Fix doc linkage

049017aa8c0b1e95eb09ce5fc76c16877a57b54d authored over 6 years ago by Neil Booth <[email protected]>
Save raw blocks to disk for reorg purposes

We used to rely on the daemon being able to return the
orphaned blocks, but some old daemon code...

94d1f7a651102fa9690cb42ea9f81f0f2a6834a5 authored over 6 years ago by Neil Booth <[email protected]>
Use JSON RPC terms in docs, not Python

813fc09d6434ba927a2c8be76e247eb636b2d363 authored over 6 years ago by Neil Booth <[email protected]>
Minor tweaks

7ce91b1a4303f5a374e1abfe8bae933e36b282ef authored over 6 years ago by Neil Booth <[email protected]>
Label as 1.6pre3

f5926cf865356d47b21be01a1dca82dacbcf9989 authored over 6 years ago by Neil Booth <[email protected]>
Introduce ChainState object

- reduces the tangle of object dependencies
- rationalizes responsibilities

391e69b66c86040619f1e6adcb2ba54682284654 authored over 6 years ago by Neil Booth <[email protected]>
Move task logic to Tasks object

This helps to rationalize the inter-object
dependencies.

53425ce585c6ce58cb12ac408ecfc38e05a3954c authored over 6 years ago by Neil Booth <[email protected]>
Move raw_header to session manager

Ultimately this stuff belongs in a ChainState object.

9cf3b5358f41febf4c06647609b7a78a893de92e authored over 6 years ago by Neil Booth <[email protected]>
Move masternode cache.

It was mistakenly made a pylru cache...
Don't force non-Dash coins to carry the cache.

22b01d4dfb04a2f7ce96be5ba866304aa410031f authored over 6 years ago by Neil Booth <[email protected]>
More refactoring of controller

- remove the header cache - not needed for higher protocol versions
- simplify session notificat...

b7572ce9c0c5cc53ab345af1d36aa6eacebbcf0a authored over 6 years ago by Neil Booth <[email protected]>
Minor tweaks.

c8c896a14cc67ba536c76e99a50a06a9bfb35dd3 authored over 6 years ago by Neil Booth <[email protected]>
new protocol method: blockchain.transaction.id_from_pos (#524)

c7f3f7ac6d576d6283b28f242a431f528fd561d9 authored over 6 years ago by ghost43 <[email protected]>
Fix peer discovery for protocol >= 1.4

60435c0c067694632daf1ea178cac9b275ff1422 authored over 6 years ago by Neil Booth <[email protected]>
Move get_utxos to session

c7f6f3ede6ec32639683c55f7ea61fb2b8c0857b authored over 6 years ago by Neil Booth <[email protected]>
Fix session_count invocation

(thanks to nijel)

c712d4be32a05c3fc0671c8e3b9115a10fe6b207 authored over 6 years ago by Neil Booth <[email protected]>
Move more code out of controller to sessions

Disable a test that will require significant work

a3d3bbe9a7a654bf97c3ab9e35a13c2f72e444aa authored over 6 years ago by Neil Booth <[email protected]>
Mark as pre2

0b55a3f7f20cc8a234b2152c71b5925fe93491ee authored over 6 years ago by Neil Booth <[email protected]>
Create SessionManager class

Break out controller functionality for session management.

e41d1db25c9ddc5d9562c2dabf5ba19243922a21 authored over 6 years ago by Neil Booth <[email protected]>
Move more code to session class from controller

c35c062780d4aa3a80b7e36d528b7a8d16f7b6b4 authored over 6 years ago by Neil Booth <[email protected]>
Move block_get_header and estimate_fee to session

063f1b2eff3da33e23e3bc8aa00a0d1cef5aab11 authored over 6 years ago by Neil Booth <[email protected]>
Move three more methods from the controller to session

ca777ed427fe5852132ce428729968973284334a authored over 6 years ago by Neil Booth <[email protected]>
Move address handlers from controller to session

3dbc10bca0d2292c366d6ef547d816332e43ea3c authored over 6 years ago by Neil Booth <[email protected]>
Move scripthash handlers from controller to session

4f99f254eae03843e222ed259522001c3cb815f3 authored over 6 years ago by Neil Booth <[email protected]>
Convert PROTOCOL_MIN, PROTOCOL_MAX to tuples

739bb687fca6dd0f865118dbdd5d95186f66e6b4 authored over 6 years ago by Neil Booth <[email protected]>
Move things from Controller to session class

which better belong there:

- PROTOCOL_MIN, PROTOCOL_MAX
- server_features()
- server_version_ar...

c790fd567c5eddc13f8543641ea31268c5b7bfd2 authored over 6 years ago by Neil Booth <[email protected]>
Store session's protocol version as a tuple, not string

fdb34e7d25837902a38cea6b149d00f1f1dec30d authored over 6 years ago by Neil Booth <[email protected]>
Protocol 1.4: only accept a single server.version message

- remove unused self.client_version
- coerce client_name to a str

5ba5d05add9279d8e9613b6919ca39e0913f4017 authored over 6 years ago by Neil Booth <[email protected]>
Improve logging of client version requests

382fc5ed4472f1dc9eff5791c5d5ead88090b0f7 authored over 6 years ago by Neil Booth <[email protected]>
Have the header merkle cache handle reorgs

Cleanest to move the mc_cache to the block processor

8630c9136cc7f4a1b0c43ca94c11924e2e0a1f43 authored over 6 years ago by Neil Booth <[email protected]>
Update docs for raw headers.

e5ea1c10e26f4d819599a5e842c70b438320a986 authored over 6 years ago by Neil Booth <[email protected]>
Prepare 1.6pre1

362499778ae6b30135336fa943d798219c113917 authored over 6 years ago by Neil Booth <[email protected]>
Implement merkle proof for blockchain.block.headers

061cac51a8bd69791946eb61319a55084b820524 authored over 6 years ago by Neil Booth <[email protected]>
Implement merkle proofs for blockchain.block.header

46d8e0c6086f87787fbc35eb329d10ba74e7cc58 authored over 6 years ago by Neil Booth <[email protected]>
Remove raw argument to blockchain.headers.subscribe

20884170e62d98ac93f00a68f634228770263b38 authored over 6 years ago by Neil Booth <[email protected]>
Update documentation for protocol 1.4

0ee27970af73d6b28d9834a2ac5106cb6c6c469c authored over 6 years ago by Neil Booth <[email protected]>
Add cache truncation and tests

d390b38acfeaf9ce24b473f3c5cce92fd6763603 authored over 6 years ago by Neil Booth <[email protected]>
Increase merkle cache test coverage to 100%

26d8026938aabeb112961e74a9f5693e0a03c75d authored over 6 years ago by Neil Booth <[email protected]>
Implement a markle cache with tests

416834185700483136b3ea1ef9895d04c86eac33 authored over 6 years ago by Neil Booth <[email protected]>
Prepare 1.5.2

997a1be37793bf395cdcd3205e4a0caedac44cff authored over 6 years ago by Neil Booth <[email protected]>
Remove hash_to_str

73a46df17f4f2f57ef0ee5a9b0f66f6b5453eb14 authored over 6 years ago by Neil Booth <[email protected]>
Fix thinko in prior

Rename function to prevent similar mistakes in future

Also hash_to_str -> hash_to_hex_str

3c3a1b701750fcb2f86a4f49a95852331ba4cc65 authored over 6 years ago by Neil Booth <[email protected]>
Have server code use merkle library

c22b7d455cf70f7a350468736b5dae71aec47ead authored over 6 years ago by Neil Booth <[email protected]>
Add merkle library with tests

af45363eeb9c4aaf3e640621eb65aef592a23f2a authored over 6 years ago by Neil Booth <[email protected]>
Partial reversion of 2cb89814b6c8df2d2e19f0a2192c2c7216964140

Fixes #523

BU, XT and other coins based on older Core code require integers
not booleans

70f8d7c4b95011d02628bba0d0773c362824b1f4 authored over 6 years ago by Neil Booth <[email protected]>
Prepare 1.5.1

e1e4129e17f6b9fe9d2b833f9f9d08edebf31c0f authored over 6 years ago by Neil Booth <[email protected]>
Update BCH peers

27f1c2480d2016592cdce32446eb5a3996bdb9ac authored over 6 years ago by Neil Booth <[email protected]>
Update peer discovery code for protocol 1.3

d2e8fe7fa1f76faf783414bf6092823dc501a3f9 authored over 6 years ago by Neil Booth <[email protected]>