forked from bitcoin-abe/bitcoin-abe
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathTODO.txt
More file actions
121 lines (75 loc) · 3.88 KB
/
TODO.txt
File metadata and controls
121 lines (75 loc) · 3.88 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
* Firstbits: nail down the algorithm. "Ties in a block are by tx ID"
--https://bitcointalk.org/index.php?topic=16217.msg288627#msg288627
* Provide address short links in the style of http://firstbits.com/ as
an optional add-on.
* Write a test suite. Include reorgs and upgrades.
* Consider adjusting statistics for duplicate coinbase transactions.
* Avoid duplicate in/out points on block pages by using DISTINCT or
equivalent. This affects blocks common to more than one chain.
* Consider fixing: /block/HASH returns "Block not found" for block not
in any chain.
* Defunct abe.fcgi processes not letting abe.py exit. Unseen in a while.
* Bitcoin 140176 failed to catch up: str(exception) == "1". Should
probably limit the kinds of exceptions that catch_up converts to
warnings.
* Test for a portable "begin transaction" and use it.
* Consider retesting SQL flavour every time on startup.
* Add search by date/time within chain.
* Show auxiliary proof-of-work data.
* Consider porting to libbitcoin.
* Use explicit constraint names.
* Speed up initial load by disabling unneeded constraints temporarily.
* Consider showing amount of time ago along with or instead of
absolute times.
* Perhaps rewrite adopt_orphans iteratively to avoid Python's
recursion limit.
* Separate HTML from data access.
* Consider denormalization for performance: prevout_hash in txin,
pubkey_hash in txout, etc.
* Support PostgreSQL BYTEA and similar binary types for improved space
use and memory footprint.
* Factor the coin-days destroyed feature as an optional add-on.
* Slight variation in CoinDD et al. among sites indicates a bug.
Possibly fixed and due to corrupt data.
* Clean up and document limits on search result size.
* Admin interface to reset blkfile_offset, delete chains, etc.
* Add a tool to upload transactions if bitcoind supports it.
* Perhaps write a validation module to check db data. Begun as verify.py.
* Abstract SQL into the DataStore class.
* Highlight any objects that are not in a main chain as such.
* Report block size, raw blocks, average transactions per block, fees
per block, ...
* Report the Merkle branch of a particular transaction to support SPV.
* Test as multithreaded or forking server.
* Perhaps support searching by hash/address non-initial substring.
* /q functions:
getdifficulty latesthash hextarget
decimaltarget probability hashestowin
nextretarget estimate
avgtxsize avgtxvalue avgblocksize
interval eta avgtxnumber
addressbalance addressfirstseen mytransactions
reorglog
* BTC-specific /q functions:
bcperblock changeparams
totalbc(future block numbers)
* Perhaps create a BlockExplorer.com compatibility mode.
* Perhaps show nethash interval statistics on the chain summary page.
* Perhaps create an "SQL script" DataStore subclass that outputs flat
SQL INSERTs.
* Perhaps compress scriptPubKey by representing as a pubkey_id and
address type.
* Context-sensitive help as on http://blockexplorer.com.
* Simplify the process of adding new chains.
* Present Namecoin name operations as an optional add-on.
* Extract info from MultiCoin config files.
* Import transactions from the pool.
* Perhaps add coin tracking features: allow the administrator to
specify "interesting" (e.g., suspected fraudulent) transactions and
addresses, then add a hyperlink from objects linked to them.
* Perhaps track and report coin difficulty as proposed by casascius:
http://forum.bitcoin.org/index.php?topic=10755.0
* Perhaps track and report collectible transaction bytes: size of
transactions whose outputs are all spent, minus Merkle shrubbery
needed to verify the rest.
* Perhaps support email notification about address activity.