summaryrefslogtreecommitdiff
path: root/5c/e881285f062b8c3322c90ce638591ac1f53258
blob: 61e0037d2071cb2fe81fe7aafcd29ebd81e08f05 (plain)
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
Return-Path: <jtimon@jtimon.cc>
Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org
	[172.17.192.35])
	by mail.linuxfoundation.org (Postfix) with ESMTPS id 0AFA81A1F
	for <bitcoin-dev@lists.linuxfoundation.org>;
	Tue, 22 Sep 2015 18:36:17 +0000 (UTC)
X-Greylist: whitelisted by SQLgrey-1.7.6
Received: from mail-wi0-f169.google.com (mail-wi0-f169.google.com
	[209.85.212.169])
	by smtp1.linuxfoundation.org (Postfix) with ESMTPS id 5B9172E5
	for <bitcoin-dev@lists.linuxfoundation.org>;
	Tue, 22 Sep 2015 18:36:16 +0000 (UTC)
Received: by wicgb1 with SMTP id gb1so173035924wic.1
	for <bitcoin-dev@lists.linuxfoundation.org>;
	Tue, 22 Sep 2015 11:36:15 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=1e100.net; s=20130820;
	h=x-gm-message-state:mime-version:date:message-id:subject:from:to:cc
	:content-type;
	bh=2JUvmH5grDuGtUKVAqDWtSEp60HBu872s3wQInVzW1Q=;
	b=HmhLhXcs5zufrjh+37U4iSaqpqcWkKyICCtI/DOG+1Fd2fahd1l4oTLkS7s8Q4f6Uy
	hbpZDOcPSttVLoHIBH1133yBQaNNTFS9lga86mBSMTtm7o5JtEm5uoyVDNjxBV0Nz3hm
	WdohpJaeHKxSTdnDI+QAA/J9RQo+V2kjCvFti9wTsX4ZVeavxriXTtxlzsh0V3z3nFQB
	Tzw6fm7a8Kl+Gl+t3yBKvSs0fEZTtik2GIiCMzrmd4c9NffJQ4NtHIoGd6DgPfZQL25F
	dXKS9LHmm81v1DHdJrksraRh8h5lTqjX124uSNe1ex14uA3jzF1k/gGcyxSGtcIxQNcd
	W14A==
X-Gm-Message-State: ALoCoQkr4usTQGe5baajp1qBae+f/3ntMtfghI2v1qs6JUghAhglHwSKubmyMmIdoLXa+sSBi418
MIME-Version: 1.0
X-Received: by 10.180.8.106 with SMTP id q10mr3920162wia.92.1442946974963;
	Tue, 22 Sep 2015 11:36:14 -0700 (PDT)
Received: by 10.194.37.5 with HTTP; Tue, 22 Sep 2015 11:36:14 -0700 (PDT)
Date: Tue, 22 Sep 2015 20:36:14 +0200
Message-ID: <CABm2gDrx4uDVPFL_tWUsvh_cN6qV903WCmgpA_Kj9Deq+Q3yfA@mail.gmail.com>
From: =?UTF-8?B?Sm9yZ2UgVGltw7Nu?= <jtimon@jtimon.cc>
To: "Wladimir J. van der Laan" <laanwj@gmail.com>
Content-Type: text/plain; charset=UTF-8
X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_LOW
	autolearn=ham version=3.3.1
X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on
	smtp1.linux-foundation.org
Cc: Bitcoin development mailing list <bitcoin-dev@lists.linuxfoundation.org>
Subject: [bitcoin-dev] Long-term vision for bitcoind (was libconsensus and
 bitcoin development process)
X-BeenThere: bitcoin-dev@lists.linuxfoundation.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Bitcoin Development Discussion <bitcoin-dev.lists.linuxfoundation.org>
List-Unsubscribe: <https://lists.linuxfoundation.org/mailman/options/bitcoin-dev>,
	<mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=unsubscribe>
List-Archive: <http://lists.linuxfoundation.org/pipermail/bitcoin-dev/>
List-Post: <mailto:bitcoin-dev@lists.linuxfoundation.org>
List-Help: <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=help>
List-Subscribe: <https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev>,
	<mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=subscribe>
X-List-Received-Date: Tue, 22 Sep 2015 18:36:17 -0000

On Fri, Sep 18, 2015 at 2:07 AM, Wladimir J. van der Laan via
bitcoin-dev <bitcoin-dev@lists.linuxfoundation.org> wrote:
> My long-term vision of bitcoind is a P2P node with validation and blockchain store, with a couple of data sources that can be subscribed to or pulled from.

I agree with this long term vision.
Here's how I think it could happen:

1) Libconsensus is completed and moved to a subtree (which has libsecp
as an internal subtree)

2) Bitcoind becomes a subtree of bitcoin-wallet (which has
bitcoin-wallet and bitcoin-qt)

Without aggressively changing it for this purpose, libconsensus should
tend to become C, like libsecp, which is better for proving
correctness.
Hopefully at some point it won't take much to move to C.

Upper layers should move to C++11

Don't focus on the git subtrees, the basic architecture is bitcoin-qt
on top of bitcoin-wallet, bitcoin-wallet on top of bitcoind (and
friends like bitcoin-cli and bitcoin-tx), bitcoind on top of
libconsensus on top of libsecp256k1.

I believe this would maximize the number of people who can safely
contribute to the project.
I also believe this is the architecture most contributors have in mind
for the long term, but I may be wrong about it.

Criticisms to this plan?