Skip to content

Commit 3b8ab40

Browse files
committed
Release 1.2.0
1 parent f2eca4c commit 3b8ab40

File tree

9 files changed

+389
-183
lines changed

9 files changed

+389
-183
lines changed

CHANGELOG.md

+10-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,15 @@
11
# Changelog
22

3-
## [1.1.0](https://github.com/seegno/bitcoin-core/tree/1.1.0) (2016-09-19)
4-
[Full Changelog](https://github.com/seegno/bitcoin-core/compare/v1.0.0...1.1.0)
3+
## [1.2.0](https://github.com/seegno/bitcoin-core/tree/1.2.0) (2017-02-12)
4+
[Full Changelog](https://github.com/seegno/bitcoin-core/compare/v1.1.0...1.2.0)
5+
6+
**Merged pull requests:**
7+
8+
- Pin docker image to 0.13.0 to avoid failing tests on newer versions [\#21](https://github.com/seegno/bitcoin-core/pull/21) ([pedrobranco](https://github.com/pedrobranco))
9+
- Add logging to all requests [\#19](https://github.com/seegno/bitcoin-core/pull/19) ([pedrobranco](https://github.com/pedrobranco))
10+
11+
## [v1.1.0](https://github.com/seegno/bitcoin-core/tree/v1.1.0) (2016-09-19)
12+
[Full Changelog](https://github.com/seegno/bitcoin-core/compare/v1.0.0...v1.1.0)
513

614
**Merged pull requests:**
715

dist/src/errors/rpc-error.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ class RpcError extends _standardError2.default {
5050
}
5151

5252
toString() {
53-
return `${ this.name }: ${ this.code } ${ this.message }`;
53+
return `${this.name}: ${this.code} ${this.message}`;
5454
}
5555
}
5656
exports.default = RpcError;

dist/src/index.js

+55-58
Original file line numberDiff line numberDiff line change
@@ -25,13 +25,17 @@ var _lodash = require('lodash');
2525

2626
var _lodash2 = _interopRequireDefault(_lodash);
2727

28+
var _debugnyan = require('debugnyan');
29+
30+
var _debugnyan2 = _interopRequireDefault(_debugnyan);
31+
2832
var _methods = require('./methods');
2933

3034
var _methods2 = _interopRequireDefault(_methods);
3135

32-
var _request = require('request');
36+
var _requestLogger = require('./logging/request-logger');
3337

34-
var _request2 = _interopRequireDefault(_request);
38+
var _requestLogger2 = _interopRequireDefault(_requestLogger);
3539

3640
var _semver = require('semver');
3741

@@ -76,26 +80,28 @@ const networks = {
7680

7781
class Client {
7882
constructor() {
79-
var _ref = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];
83+
var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
8084

8185
let agentOptions = _ref.agentOptions;
8286
var _ref$headers = _ref.headers;
8387
let headers = _ref$headers === undefined ? false : _ref$headers;
8488
var _ref$host = _ref.host;
8589
let host = _ref$host === undefined ? 'localhost' : _ref$host;
90+
var _ref$logger = _ref.logger;
91+
let logger = _ref$logger === undefined ? (0, _debugnyan2.default)('bitcoin-core') : _ref$logger;
8692
var _ref$network = _ref.network;
87-
let network = _ref$network === undefined ? 'mainnet' : _ref$network;
88-
let password = _ref.password;
89-
let port = _ref.port;
93+
let network = _ref$network === undefined ? 'mainnet' : _ref$network,
94+
password = _ref.password,
95+
port = _ref.port;
9096
var _ref$ssl = _ref.ssl;
9197
let ssl = _ref$ssl === undefined ? false : _ref$ssl;
9298
var _ref$timeout = _ref.timeout;
93-
let timeout = _ref$timeout === undefined ? 30000 : _ref$timeout;
94-
let username = _ref.username;
95-
let version = _ref.version;
99+
let timeout = _ref$timeout === undefined ? 30000 : _ref$timeout,
100+
username = _ref.username,
101+
version = _ref.version;
96102

97103
if (!_lodash2.default.has(networks, network)) {
98-
throw new Error(`Invalid network name "${ network }"`, { network: network });
104+
throw new Error(`Invalid network name "${network}"`, { network: network });
99105
}
100106

101107
this.agentOptions = agentOptions;
@@ -114,12 +120,14 @@ class Client {
114120
let unsupported = [];
115121

116122
if (version) {
117-
unsupported = _lodash2.default.chain(_methods2.default).pickBy(range => !_semver2.default.satisfies(version, range)).keys().invokeMap(String.prototype.toLowerCase).value();
123+
unsupported = _lodash2.default.chain(_methods2.default).pickBy(method => !_semver2.default.satisfies(version, method.version)).keys().invokeMap(String.prototype.toLowerCase).value();
118124
}
119125

120-
this.request = _bluebird2.default.promisifyAll(_request2.default.defaults({
126+
const request = (0, _requestLogger2.default)(logger);
127+
128+
this.request = _bluebird2.default.promisifyAll(request.defaults({
121129
agentOptions: this.agentOptions,
122-
baseUrl: `${ this.ssl.enabled ? 'https' : 'http' }://${ this.host }:${ this.port }`,
130+
baseUrl: `${this.ssl.enabled ? 'https' : 'http'}://${this.host}:${this.port}`,
123131
json: true,
124132
strictSSL: this.ssl.strict,
125133
timeout: this.timeout
@@ -169,22 +177,20 @@ class Client {
169177
*/
170178

171179
getTransactionByHash() {
172-
var _source = source.apply(undefined, arguments);
173-
174-
var _source2 = _slicedToArray(_source, 2);
175-
176-
var _source2$ = _slicedToArray(_source2[0], 2);
180+
var _source = source.apply(undefined, arguments),
181+
_source2 = _slicedToArray(_source, 2),
182+
_source2$ = _slicedToArray(_source2[0], 2);
177183

178184
const hash = _source2$[0];
179185
var _source2$$ = _source2$[1];
180186
_source2$$ = _source2$$ === undefined ? {} : _source2$$;
181187
var _source2$$$extension = _source2$$.extension;
182-
const extension = _source2$$$extension === undefined ? 'json' : _source2$$$extension;
183-
const callback = _source2[1];
188+
const extension = _source2$$$extension === undefined ? 'json' : _source2$$$extension,
189+
callback = _source2[1];
184190

185191

186192
return _bluebird2.default.try(() => {
187-
return this.request.getAsync(`/rest/tx/${ hash }.${ extension }`).bind(this).then(this.parser.rest);
193+
return this.request.getAsync(`/rest/tx/${hash}.${extension}`).bind(this).then(this.parser.rest);
188194
}).asCallback(callback);
189195
}
190196

@@ -195,24 +201,22 @@ class Client {
195201
*/
196202

197203
getBlockByHash() {
198-
var _source3 = source.apply(undefined, arguments);
199-
200-
var _source4 = _slicedToArray(_source3, 2);
201-
202-
var _source4$ = _slicedToArray(_source4[0], 2);
204+
var _source3 = source.apply(undefined, arguments),
205+
_source4 = _slicedToArray(_source3, 2),
206+
_source4$ = _slicedToArray(_source4[0], 2);
203207

204208
const hash = _source4$[0];
205209
var _source4$$ = _source4$[1];
206210
_source4$$ = _source4$$ === undefined ? {} : _source4$$;
207211
var _source4$$$summary = _source4$$.summary;
208212
const summary = _source4$$$summary === undefined ? false : _source4$$$summary;
209213
var _source4$$$extension = _source4$$.extension;
210-
const extension = _source4$$$extension === undefined ? 'json' : _source4$$$extension;
211-
const callback = _source4[1];
214+
const extension = _source4$$$extension === undefined ? 'json' : _source4$$$extension,
215+
callback = _source4[1];
212216

213217

214218
return _bluebird2.default.try(() => {
215-
return this.request.getAsync(`/rest/block${ summary ? '/notxdetails/' : '/' }${ hash }.${ extension }`).bind(this).then(this.parser.rest);
219+
return this.request.getAsync(`/rest/block${summary ? '/notxdetails/' : '/'}${hash}.${extension}`).bind(this).then(this.parser.rest);
216220
}).asCallback(callback);
217221
}
218222

@@ -221,27 +225,25 @@ class Client {
221225
*/
222226

223227
getBlockHeadersByHash() {
224-
var _source5 = source.apply(undefined, arguments);
228+
var _source5 = source.apply(undefined, arguments),
229+
_source6 = _slicedToArray(_source5, 2),
230+
_source6$ = _slicedToArray(_source6[0], 3);
225231

226-
var _source6 = _slicedToArray(_source5, 2);
227-
228-
var _source6$ = _slicedToArray(_source6[0], 3);
229-
230-
const hash = _source6$[0];
231-
const count = _source6$[1];
232+
const hash = _source6$[0],
233+
count = _source6$[1];
232234
var _source6$$ = _source6$[2];
233235
_source6$$ = _source6$$ === undefined ? {} : _source6$$;
234236
var _source6$$$extension = _source6$$.extension;
235-
const extension = _source6$$$extension === undefined ? 'json' : _source6$$$extension;
236-
const callback = _source6[1];
237+
const extension = _source6$$$extension === undefined ? 'json' : _source6$$$extension,
238+
callback = _source6[1];
237239

238240

239241
return _bluebird2.default.try(() => {
240242
if (!_lodash2.default.includes(['bin', 'hex'], extension)) {
241-
throw new Error(`Extension "${ extension }" is not supported`);
243+
throw new Error(`Extension "${extension}" is not supported`);
242244
}
243245

244-
return this.request.getAsync(`/rest/headers/${ count }/${ hash }.${ extension }`).bind(this).then(this.parser.rest);
246+
return this.request.getAsync(`/rest/headers/${count}/${hash}.${extension}`).bind(this).then(this.parser.rest);
245247
}).asCallback(callback);
246248
}
247249

@@ -251,9 +253,8 @@ class Client {
251253
*/
252254

253255
getBlockchainInformation() {
254-
var _source7 = source.apply(undefined, arguments);
255-
256-
var _source8 = _slicedToArray(_source7, 2);
256+
var _source7 = source.apply(undefined, arguments),
257+
_source8 = _slicedToArray(_source7, 2);
257258

258259
const callback = _source8[1];
259260

@@ -268,25 +269,23 @@ class Client {
268269
*/
269270

270271
getUnspentTransactionOutputs() {
271-
var _source9 = source.apply(undefined, arguments);
272-
273-
var _source10 = _slicedToArray(_source9, 2);
274-
275-
var _source10$ = _slicedToArray(_source10[0], 2);
272+
var _source9 = source.apply(undefined, arguments),
273+
_source10 = _slicedToArray(_source9, 2),
274+
_source10$ = _slicedToArray(_source10[0], 2);
276275

277276
const outpoints = _source10$[0];
278277
var _source10$$ = _source10$[1];
279278
_source10$$ = _source10$$ === undefined ? {} : _source10$$;
280279
var _source10$$$extension = _source10$$.extension;
281-
const extension = _source10$$$extension === undefined ? 'json' : _source10$$$extension;
282-
const callback = _source10[1];
280+
const extension = _source10$$$extension === undefined ? 'json' : _source10$$$extension,
281+
callback = _source10[1];
283282

284283

285284
const sets = _lodash2.default.flatten([outpoints]).map(outpoint => {
286-
return `${ outpoint.id }-${ outpoint.index }`;
285+
return `${outpoint.id}-${outpoint.index}`;
287286
}).join('/');
288287

289-
return this.request.getAsync(`/rest/getutxos/checkmempool/${ sets }.${ extension }`).bind(this).then(this.parser.rest).asCallback(callback);
288+
return this.request.getAsync(`/rest/getutxos/checkmempool/${sets}.${extension}`).bind(this).then(this.parser.rest).asCallback(callback);
290289
}
291290

292291
/**
@@ -295,9 +294,8 @@ class Client {
295294
*/
296295

297296
getMemoryPoolContent() {
298-
var _source11 = source.apply(undefined, arguments);
299-
300-
var _source12 = _slicedToArray(_source11, 2);
297+
var _source11 = source.apply(undefined, arguments),
298+
_source12 = _slicedToArray(_source11, 2);
301299

302300
const callback = _source12[1];
303301

@@ -315,9 +313,8 @@ class Client {
315313
*/
316314

317315
getMemoryPoolInformation() {
318-
var _source13 = source.apply(undefined, arguments);
319-
320-
var _source14 = _slicedToArray(_source13, 2);
316+
var _source13 = source.apply(undefined, arguments),
317+
_source14 = _slicedToArray(_source13, 2);
321318

322319
const callback = _source14[1];
323320

dist/src/logging/request-logger.js

+36
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
'use strict';
2+
3+
Object.defineProperty(exports, "__esModule", {
4+
value: true
5+
});
6+
7+
var _requestObfuscator = require('./request-obfuscator');
8+
9+
var _request = require('request');
10+
11+
var _request2 = _interopRequireDefault(_request);
12+
13+
var _requestLogger = require('@uphold/request-logger');
14+
15+
var _requestLogger2 = _interopRequireDefault(_requestLogger);
16+
17+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
18+
19+
/**
20+
* Exports.
21+
*/
22+
23+
exports.default = logger => (0, _requestLogger2.default)(_request2.default, (request, instance) => {
24+
(0, _requestObfuscator.obfuscate)(request, instance);
25+
26+
if (request.type === 'response') {
27+
return logger.debug({ request: request }, `Received response for request ${request.id}`);
28+
}
29+
30+
return logger.debug({ request: request }, `Making request ${request.id} to ${request.method} ${request.uri}`);
31+
});
32+
/**
33+
* Module dependencies.
34+
*/
35+
36+
module.exports = exports['default'];

0 commit comments

Comments
 (0)