Skip to content

Commit

Permalink
version 0.1.2 -- louder errors
Browse files Browse the repository at this point in the history
  • Loading branch information
SilentCicero committed Jan 22, 2017
1 parent b70d71c commit 73cdcee
Show file tree
Hide file tree
Showing 6 changed files with 21 additions and 11 deletions.
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# 0.1.2 -- louder errors

1. Louder errors

# 0.1.1 -- handle errors better

1. Better error handling
Expand Down
11 changes: 7 additions & 4 deletions dist/ethjs-rpc.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion dist/ethjs-rpc.js.map

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion dist/ethjs-rpc.min.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "ethjs-rpc",
"version": "0.1.1",
"version": "0.1.2",
"description": "A super simple module for querying the Ethereum RPC layer without formatting.",
"main": "lib/index.js",
"files": [
Expand Down
11 changes: 7 additions & 4 deletions src/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -38,12 +38,15 @@ function EthRPC(cprovider, options) {
EthRPC.prototype.sendAsync = function sendAsync(payload, cb) {
const self = this;
self.idCounter = self.idCounter % self.options.max;
self.currentProvider.sendAsync(createPayload(payload, self.idCounter++), (err, response) => {
const parsedPayload = createPayload(payload, self.idCounter++);
self.currentProvider.sendAsync(parsedPayload, (err, response) => {
const responseObject = response || {};

if (err || responseObject.error) {
const payloadErrorMessage = `[ethjs-rpc] ${(responseObject.error && 'rpc' || '')} error with payload ${JSON.stringify(payload, null, self.options.jsonSpace)} ${err || (JSON.stringify(responseObject.error, null, self.options.jsonSpace))}`;
return cb(new Error(payloadErrorMessage), null);
const payloadErrorMessage = `[ethjs-rpc] ${(responseObject.error && 'rpc' || '')} error with payload ${JSON.stringify(parsedPayload, null, self.options.jsonSpace)} ${String(err) || (JSON.stringify(responseObject.error, null, self.options.jsonSpace))}`;
const payloadError = new Error(payloadErrorMessage);
payloadError.value = (err || responseObject.error);
return cb(payloadError, null);
}

return cb(null, responseObject.result);
Expand All @@ -59,7 +62,7 @@ EthRPC.prototype.sendAsync = function sendAsync(payload, cb) {
* @returns {Object} payload the completed payload object
*/
function createPayload(data, id) {
return Object.assign({
return Object.assign({}, {
id,
jsonrpc: '2.0',
params: [],
Expand Down

0 comments on commit 73cdcee

Please sign in to comment.