From 0267e85d412859575d4c9931f6c0003bce2aeb5a Mon Sep 17 00:00:00 2001 From: dchambers Date: Mon, 16 Mar 2015 08:08:29 +0000 Subject: [PATCH 1/2] Use browserify's 'browser' field instead of 'envify' & 'unreachable-branch-transform to', plus always include 'bignumber.js' since it is needed in the browser. --- karma.conf.js | 3 +-- lib/solidity/formatters.js | 5 +---- lib/utils/browser-xhr.js | 3 +++ lib/utils/config.js | 4 +--- lib/utils/utils.js | 4 +--- lib/web3/httpprovider.js | 4 +--- package.json | 18 +++--------------- 7 files changed, 11 insertions(+), 30 deletions(-) create mode 100644 lib/utils/browser-xhr.js diff --git a/karma.conf.js b/karma.conf.js index 92e390c..9375315 100644 --- a/karma.conf.js +++ b/karma.conf.js @@ -22,8 +22,7 @@ module.exports = function (config) { // list of files / patterns to load in the browser files: [ - 'node_modules/bignumber.js/bignumber.js', - 'test/*.js', + 'test/*.js' ], diff --git a/lib/solidity/formatters.js b/lib/solidity/formatters.js index 11b3160..3f6766b 100644 --- a/lib/solidity/formatters.js +++ b/lib/solidity/formatters.js @@ -20,10 +20,7 @@ * @date 2015 */ -if (process.env.NODE_ENV !== 'build') { - var BigNumber = require('bignumber.js'); // jshint ignore:line -} - +var BigNumber = require('bignumber.js'); var utils = require('../utils/utils'); var c = require('../utils/config'); diff --git a/lib/utils/browser-xhr.js b/lib/utils/browser-xhr.js new file mode 100644 index 0000000..4c92000 --- /dev/null +++ b/lib/utils/browser-xhr.js @@ -0,0 +1,3 @@ +'use strict'; + +exports.XMLHttpRequest = window.XMLHttpRequest; diff --git a/lib/utils/config.js b/lib/utils/config.js index f5b1068..8a1d473 100644 --- a/lib/utils/config.js +++ b/lib/utils/config.js @@ -34,9 +34,7 @@ */ /// required to define ETH_BIGNUMBER_ROUNDING_MODE -if (process.env.NODE_ENV !== 'build') { - var BigNumber = require('bignumber.js'); // jshint ignore:line -} +var BigNumber = require('bignumber.js'); var ETH_UNITS = [ 'wei', diff --git a/lib/utils/utils.js b/lib/utils/utils.js index 680ea9b..28da8d1 100644 --- a/lib/utils/utils.js +++ b/lib/utils/utils.js @@ -33,9 +33,7 @@ * @constructor */ -if (process.env.NODE_ENV !== 'build') { - var BigNumber = require('bignumber.js'); // jshint ignore:line -} +var BigNumber = require('bignumber.js'); var unitMap = { 'wei': '1', diff --git a/lib/web3/httpprovider.js b/lib/web3/httpprovider.js index 8e1daa5..00828e1 100644 --- a/lib/web3/httpprovider.js +++ b/lib/web3/httpprovider.js @@ -22,9 +22,7 @@ * @date 2014 */ -if (process.env.NODE_ENV !== 'build') { - var XMLHttpRequest = require('xmlhttprequest').XMLHttpRequest; // jshint ignore:line -} +var XMLHttpRequest = require('xmlhttprequest').XMLHttpRequest; // jshint ignore:line var HttpProvider = function (host) { this.name = 'HTTP'; diff --git a/package.json b/package.json index 258eb5d..6ea7322 100644 --- a/package.json +++ b/package.json @@ -9,10 +9,11 @@ }, "dependencies": { "bignumber.js": ">=2.0.0", - "envify": "^3.0.0", - "unreachable-branch-transform": "^0.1.0", "xmlhttprequest": "*" }, + "browser": { + "xmlhttprequest": "./lib/utils/browser-xhr.js" + }, "devDependencies": { "bower": ">=1.3.0", "browserify": ">=6.0", @@ -53,19 +54,6 @@ "bugs": { "url": "https://github.com/ethereum/ethereum.js/issues" }, - "browserify": { - "transform": [ - [ - "envify", - { - "NODE_ENV": "build" - } - ], - [ - "unreachable-branch-transform" - ] - ] - }, "keywords": [ "ethereum", "javascript", From 768d4bf28cab9d7814df738440025870d9fa82f2 Mon Sep 17 00:00:00 2001 From: dchambers Date: Mon, 16 Mar 2015 08:14:13 +0000 Subject: [PATCH 2/2] Make changes to 'gulpfile.js' reccomended by @debris. --- gulpfile.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gulpfile.js b/gulpfile.js index 5738241..2d67bb5 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -25,7 +25,7 @@ var browserifyOptions = { debug: true, insert_global_vars: false, // jshint ignore:line detectGlobals: false, - bundleExternal: false + bundleExternal: true }; gulp.task('versionReplace', function(){ @@ -58,6 +58,7 @@ gulp.task('build', ['clean'], function () { return browserify(browserifyOptions) .require('./' + src + '.js', {expose: 'web3'}) .add('./' + src + '.js') + .ignore('crypto') .bundle() .pipe(exorcist(path.join( DEST, dst + '.js.map'))) .pipe(source(dst + '.js'))