summaryrefslogtreecommitdiff
path: root/0a/e39a5fd0a6ffb735040c8dae3fbb17207e22a2
blob: 2d04af7266d8f81f8c89411c4b2ed768c7151978 (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
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
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
Received: from sog-mx-2.v43.ch3.sourceforge.com ([172.29.43.192]
	helo=mx.sourceforge.net)
	by sfs-ml-4.v29.ch3.sourceforge.com with esmtp (Exim 4.76)
	(envelope-from <mh.in.england@gmail.com>) id 1TG8pH-0002cO-2H
	for bitcoin-development@lists.sourceforge.net;
	Mon, 24 Sep 2012 13:35:55 +0000
Received-SPF: pass (sog-mx-2.v43.ch3.sourceforge.com: domain of gmail.com
	designates 74.125.82.175 as permitted sender)
	client-ip=74.125.82.175; envelope-from=mh.in.england@gmail.com;
	helo=mail-we0-f175.google.com; 
Received: from mail-we0-f175.google.com ([74.125.82.175])
	by sog-mx-2.v43.ch3.sourceforge.com with esmtps (TLSv1:RC4-SHA:128)
	(Exim 4.76) id 1TG8pB-0000i9-8g
	for bitcoin-development@lists.sourceforge.net;
	Mon, 24 Sep 2012 13:35:55 +0000
Received: by weyt44 with SMTP id t44so2288586wey.34
	for <bitcoin-development@lists.sourceforge.net>;
	Mon, 24 Sep 2012 06:35:43 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.180.81.38 with SMTP id w6mr14481852wix.10.1348493743015; Mon,
	24 Sep 2012 06:35:43 -0700 (PDT)
Sender: mh.in.england@gmail.com
Received: by 10.216.139.134 with HTTP; Mon, 24 Sep 2012 06:35:42 -0700 (PDT)
Date: Mon, 24 Sep 2012 15:35:42 +0200
X-Google-Sender-Auth: tMGORoMCDWUzmTo60f1DYwasr4o
Message-ID: <CANEZrP3-1yvpac+OevQp8U1jO2eAzE3tMp3pzjxCyYA2p56Jdw@mail.gmail.com>
From: Mike Hearn <mike@plan99.net>
To: Bitcoin Dev <bitcoin-development@lists.sourceforge.net>
Content-Type: multipart/alternative; boundary=f46d044288c088c65404ca72aa2e
X-Spam-Score: -0.8 (/)
X-Spam-Report: Spam Filtering performed by mx.sourceforge.net.
	See http://spamassassin.org/tag/ for more details.
	-1.5 SPF_CHECK_PASS SPF reports sender host as permitted sender for
	sender-domain
	0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider
	(mh.in.england[at]gmail.com)
	-0.0 SPF_PASS               SPF: sender matches SPF record
	0.0 HTML_OBFUSCATE_05_10 BODY: Message is 5% to 10% HTML obfuscation
	1.0 HTML_MESSAGE           BODY: HTML included in message
	0.1 DKIM_SIGNED            Message has a DKIM or DK signature,
	not necessarily valid
	-0.1 DKIM_VALID Message has at least one valid DKIM or DK signature
	-0.3 AWL AWL: From: address is in the auto white-list
X-Headers-End: 1TG8pB-0000i9-8g
Subject: [Bitcoin-development] bitcoinj 0.6 now available
X-BeenThere: bitcoin-development@lists.sourceforge.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: <bitcoin-development.lists.sourceforge.net>
List-Unsubscribe: <https://lists.sourceforge.net/lists/listinfo/bitcoin-development>,
	<mailto:bitcoin-development-request@lists.sourceforge.net?subject=unsubscribe>
List-Archive: <http://sourceforge.net/mailarchive/forum.php?forum_name=bitcoin-development>
List-Post: <mailto:bitcoin-development@lists.sourceforge.net>
List-Help: <mailto:bitcoin-development-request@lists.sourceforge.net?subject=help>
List-Subscribe: <https://lists.sourceforge.net/lists/listinfo/bitcoin-development>,
	<mailto:bitcoin-development-request@lists.sourceforge.net?subject=subscribe>
X-List-Received-Date: Mon, 24 Sep 2012 13:35:55 -0000

--f46d044288c088c65404ca72aa2e
Content-Type: text/plain; charset=UTF-8

I'm pleased to announce the release of version 0.6 of bitcoinj, the leading
Java implementation of Bitcoin. You can download the source from Google
Code, or use the release-0.6 branch from git. Our Nexus repository will be
updated soon.

This release focuses on improved compliance with the protocol, improved and
more scalable network handling, a more flexible send API, other misc API
improvements and of course, a large pile of bug fixes. You should upgrade
your software to use bitcoinj 0.6 as soon as possible, if only to benefit
from the fixes - the API changes are minimal so it should be easy.

In more detail:

   - Thanks to Jim Burton, the wallet now stores the depth and work done
   for all transactions, and coinbase transactions are now processed
   correctly. The ability to handle pubkey-only outputs was added, so these
   are now spendable. Migration from 0.5 wallets that don't store this is
   supported, but only for depth, by using
   WalletProtobufSerializer.setChainHeight().
   - Made some more APIs documented and public.
   - Improved block chain download handling.
   - Added compatibility with the broken URIs generated by blockchain.info,
   meaning that the iPhone app and Android apps can now read each others
   QRcodes.
   - Wallets can now auto-save themselves, taking the hassle of managing
   wallet persistence away from your app. See the javadocs for
   Wallet.autoSaveToFile() for information on this.
   - The network layer was rewritten on top of Netty to be more robust,
   more scalable and to remove flakyness in the unit tests. Thanks to Miron
   Cuperman for this work.
   - Thanks to Matt Corallo the ping/pong protocol is now supported. Also
   various protocol conformance issues and other misc bugs were resolved.
   - WalletTool now has a RAW_DUMP option that prints the raw protocol
   buffer form as text.
   - You can now explicitly set fees on a created transaction using the fee
   member of SendRequest. Please note that the correct fees for a
   transaction are still not auto-calculated or minimized. This will come in a
   future release.
   - Many bug fixes.

API changes:

   - TransactionConfidence.OVERRIDDEN_BY_DOUBLE_SPEND is now called DEAD
   - PeerGroup.broadcastTransaction now returns a Guava ListenableFuture (which
   is a subclass of Future, so it's compatible). The future completes when the
   transaction has been heard back from the network, instead of just being
   written out.
   - Wallet.sendCoins() now returns a SendResult that contains both the
   transaction, and the future returned by PeerGroup.broadcastTransaction(),
   so it will no longer block. As a result sendCoinsAsync() has been
   removed.
   - Various send methods on Wallet now take a SendRequest object that lets
   you customize the created transactions. The methods that let you explicitly
   set the change address are removed, you should set the changeAddress member
   of the SendRequest instead.

--f46d044288c088c65404ca72aa2e
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div style=3D"color:rgb(34,34,34);background-color:rgb(255,255,255)"><font =
color=3D"#000000" face=3D"arial, sans-serif">I&#39;m pleased to announce th=
e release of version 0.6 of bitcoinj, the leading Java implementation of Bi=
tcoin. You can download the source from Google Code, or use the release-0.6=
 branch from git. Our Nexus repository will be updated soon.</font></div>
<div style=3D"color:rgb(34,34,34);background-color:rgb(255,255,255)"><font =
color=3D"#000000" face=3D"arial, sans-serif"><br></font></div><div style=3D=
"color:rgb(34,34,34);background-color:rgb(255,255,255)"><font color=3D"#000=
000" face=3D"arial, sans-serif">This release focuses on improved compliance=
 with the protocol, improved and more scalable network handling, a more fle=
xible send API, other misc API improvements and of course, a large pile of =
bug fixes. You should upgrade your software to use bitcoinj 0.6 as soon as =
possible, if only to benefit from the fixes - the API changes are minimal s=
o it should be easy.</font></div>
<div style=3D"color:rgb(34,34,34);background-color:rgb(255,255,255)"><font =
color=3D"#000000" face=3D"arial, sans-serif"><br></font></div><div style=3D=
"color:rgb(34,34,34);background-color:rgb(255,255,255)"><font color=3D"#000=
000" face=3D"arial, sans-serif">In more detail:</font></div>
<ul style=3D"font-size:13px;background-color:rgb(255,255,255);padding-left:=
25px;max-width:62em;font-family:arial,sans-serif"><li style=3D"margin-botto=
m:0.3em">Thanks to Jim Burton, the wallet now stores the depth and work don=
e for all transactions, and=C2=A0coinbase transactions=C2=A0are now process=
ed correctly. The ability to handle=C2=A0pubkey-only outputs=C2=A0was added=
, so these are now spendable. Migration from 0.5 wallets that don&#39;t sto=
re this is supported, but only for depth, by using=C2=A0<tt style=3D"font-f=
amily:Monaco,&#39;DejaVu Sans Mono&#39;,&#39;Bitstream Vera Sans Mono&#39;,=
&#39;Lucida Console&#39;,monospace;font-size:12px;max-width:66em">WalletPro=
tobufSerializer.setChainHeight()</tt>.</li>
<li style=3D"margin-bottom:0.3em">Made some more APIs documented and public=
.</li><li style=3D"margin-bottom:0.3em">Improved block chain download=C2=A0=
handling.</li><li style=3D"margin-bottom:0.3em">Added compatibility with th=
e broken URIs generated by <a href=3D"http://blockchain.info">blockchain.in=
fo</a>, meaning that the iPhone app and Android apps can now read each othe=
rs QRcodes.</li>
<li style=3D"margin-bottom:0.3em">Wallets can now auto-save themselves, tak=
ing the hassle of managing wallet persistence away from your app. See the j=
avadocs for Wallet.autoSaveToFile() for information on this.</li><li style=
=3D"margin-bottom:0.3em">
The network layer was rewritten on top of Netty to be more robust, more sca=
lable and to remove flakyness in the unit tests. Thanks to Miron Cuperman f=
or this work.</li><li style=3D"margin-bottom:0.3em">Thanks to Matt Corallo =
the ping/pong protocol is now supported. Also various protocol conformance =
issues and other misc bugs were resolved.</li>
<li style=3D"margin-bottom:0.3em"><tt style=3D"font-family:Monaco,&#39;Deja=
Vu Sans Mono&#39;,&#39;Bitstream Vera Sans Mono&#39;,&#39;Lucida Console&#3=
9;,monospace;font-size:12px;max-width:66em">WalletTool</tt>=C2=A0now has a =
RAW_DUMP option that prints the raw protocol buffer form as text.</li>
<li style=3D"margin-bottom:0.3em">You can now explicitly set fees on a crea=
ted transaction using the fee member of=C2=A0<tt style=3D"font-family:Monac=
o,&#39;DejaVu Sans Mono&#39;,&#39;Bitstream Vera Sans Mono&#39;,&#39;Lucida=
 Console&#39;,monospace;font-size:12px;max-width:66em">SendRequest</tt>. Pl=
ease note that the correct fees for a transaction are still not auto-calcul=
ated or minimized. This will come in a future release.</li>
<li style=3D"margin-bottom:0.3em">Many bug fixes.</li></ul><p style=3D"font=
-size:13px;background-color:rgb(255,255,255);line-height:1.25em;max-width:6=
4em;font-family:arial,sans-serif">API changes:</p><ul style=3D"font-size:13=
px;background-color:rgb(255,255,255);padding-left:25px;max-width:62em;font-=
family:arial,sans-serif">
<li style=3D"margin-bottom:0.3em"><tt style=3D"font-family:Monaco,&#39;Deja=
Vu Sans Mono&#39;,&#39;Bitstream Vera Sans Mono&#39;,&#39;Lucida Console&#3=
9;,monospace;font-size:12px;max-width:66em">TransactionConfidence.OVERRIDDE=
N_BY_DOUBLE_SPEND</tt>=C2=A0is now called=C2=A0<tt style=3D"font-family:Mon=
aco,&#39;DejaVu Sans Mono&#39;,&#39;Bitstream Vera Sans Mono&#39;,&#39;Luci=
da Console&#39;,monospace;font-size:12px;max-width:66em">DEAD</tt></li>
<li style=3D"margin-bottom:0.3em"><tt style=3D"font-family:Monaco,&#39;Deja=
Vu Sans Mono&#39;,&#39;Bitstream Vera Sans Mono&#39;,&#39;Lucida Console&#3=
9;,monospace;font-size:12px;max-width:66em">PeerGroup.broadcastTransaction<=
/tt>=C2=A0now returns a Guava=C2=A0<tt style=3D"font-family:Monaco,&#39;Dej=
aVu Sans Mono&#39;,&#39;Bitstream Vera Sans Mono&#39;,&#39;Lucida Console&#=
39;,monospace;font-size:12px;max-width:66em">ListenableFuture</tt>=C2=A0(wh=
ich is a subclass of Future, so it&#39;s compatible). The future completes =
when the transaction has been heard back from the network, instead of just =
being written out.</li>
<li style=3D"margin-bottom:0.3em"><tt style=3D"font-family:Monaco,&#39;Deja=
Vu Sans Mono&#39;,&#39;Bitstream Vera Sans Mono&#39;,&#39;Lucida Console&#3=
9;,monospace;font-size:12px;max-width:66em">Wallet.sendCoins()</tt>=C2=A0no=
w returns a=C2=A0<tt style=3D"font-family:Monaco,&#39;DejaVu Sans Mono&#39;=
,&#39;Bitstream Vera Sans Mono&#39;,&#39;Lucida Console&#39;,monospace;font=
-size:12px;max-width:66em">SendResult</tt>=C2=A0that contains both the tran=
saction, and the future returned by=C2=A0<tt style=3D"font-family:Monaco,&#=
39;DejaVu Sans Mono&#39;,&#39;Bitstream Vera Sans Mono&#39;,&#39;Lucida Con=
sole&#39;,monospace;font-size:12px;max-width:66em">PeerGroup.broadcastTrans=
action()</tt>, so it will no longer block. As a result=C2=A0<tt style=3D"fo=
nt-family:Monaco,&#39;DejaVu Sans Mono&#39;,&#39;Bitstream Vera Sans Mono&#=
39;,&#39;Lucida Console&#39;,monospace;font-size:12px;max-width:66em">sendC=
oinsAsync()</tt>=C2=A0has been removed.</li>
<li style=3D"margin-bottom:0.3em">Various send methods on Wallet now take a=
=C2=A0<tt style=3D"font-family:Monaco,&#39;DejaVu Sans Mono&#39;,&#39;Bitst=
ream Vera Sans Mono&#39;,&#39;Lucida Console&#39;,monospace;font-size:12px;=
max-width:66em">SendRequest</tt>=C2=A0object that lets you customize the cr=
eated transactions. The methods that let you explicitly set the change addr=
ess are removed, you should set the=C2=A0<tt style=3D"font-family:Monaco,&#=
39;DejaVu Sans Mono&#39;,&#39;Bitstream Vera Sans Mono&#39;,&#39;Lucida Con=
sole&#39;,monospace;font-size:12px;max-width:66em">changeAddress</tt>=C2=A0=
member of the=C2=A0<tt style=3D"font-family:Monaco,&#39;DejaVu Sans Mono&#3=
9;,&#39;Bitstream Vera Sans Mono&#39;,&#39;Lucida Console&#39;,monospace;fo=
nt-size:12px;max-width:66em">SendRequest</tt>=C2=A0instead.</li>
</ul>

--f46d044288c088c65404ca72aa2e--