diff --git a/.gitignore b/.gitignore index 35bd458f88..68f8dbe9a6 100644 --- a/.gitignore +++ b/.gitignore @@ -7,4 +7,5 @@ test-browser/reports/* babelify-src docs/_build package-lock.json -.DS_Store \ No newline at end of file +.DS_Store +.tern-port diff --git a/remix-core/test/tests.js b/remix-core/test/tests.js deleted file mode 100644 index 28f85278c9..0000000000 --- a/remix-core/test/tests.js +++ /dev/null @@ -1,3 +0,0 @@ -require('./traceManager.js') -require('./codeManager.js') -require('./disassembler.js') diff --git a/remix-debug/index.js b/remix-debug/index.js index b1286590a5..f2cb78301f 100644 --- a/remix-debug/index.js +++ b/remix-debug/index.js @@ -2,6 +2,12 @@ var remixCore = require('remix-core') var EthDebugger = require('./src/Ethdebugger') +var CodeManager = require('./src/code/codeManager') +var BreakpointManager = require('./src/code/breakpointManager') +var StorageViewer = require('./src/storage/storageViewer') +var StorageResolver = require('./src/storage/storageResolver') +var TraceManager = require('./src/trace/traceManager') + /* Use of breakPointManager : @@ -12,11 +18,23 @@ var EthDebugger = require('./src/Ethdebugger') */ module.exports = { EthDebugger: EthDebugger, - /** - * constructor - * - * @param {Object} _debugger - type of EthDebugger - * @return {Function} _locationToRowConverter - function implemented by editor which return a column/line position for a char source location - */ - BreakpointManager: remixCore.code.BreakpointManager + /** + * constructor + * + * @param {Object} _debugger - type of EthDebugger + * @return {Function} _locationToRowConverter - function implemented by editor which return a column/line position for a char source location + */ + BreakpointManager: remixCore.code.BreakpointManager, + code: { + CodeManager: CodeManager, + BreakpointManager: BreakpointManager + }, + storage: { + StorageViewer: StorageViewer, + StorageResolver: StorageResolver + }, + trace: { + TraceManager: TraceManager + } } + diff --git a/remix-debug/package.json b/remix-debug/package.json index 4aece79db8..45f15c71c7 100644 --- a/remix-debug/package.json +++ b/remix-debug/package.json @@ -26,7 +26,7 @@ "ethereumjs-vm": "^2.3.3", "notify-error": "^1.2.0", "npm-run-all": "^4.1.2", - "remix-core": "^0.0.15", + "fast-async": "^6.1.2", "remix-lib": "^0.2.9", "remix-solidity": "^0.1.11", "solc": "https://github.com/ethereum/solc-js" @@ -57,7 +57,8 @@ "node_modules/*", "build/*", "test/resources/*" - ] + ], + "parser": "babel-eslint" }, "babel": { "plugins": [ @@ -91,6 +92,18 @@ "sourceMaps": true, "plugins": [ [ + [ + "fast-async", + { + "runtimePatten": null, + "compiler": { + "promises": true, + "es7": true, + "noRuntime": true, + "wrapAwait": true + } + } + ], "transform-object-assign" ] ], diff --git a/remix-debug/src/Ethdebugger.js b/remix-debug/src/Ethdebugger.js index 6f63c9e8ee..7b60ed750f 100644 --- a/remix-debug/src/Ethdebugger.js +++ b/remix-debug/src/Ethdebugger.js @@ -1,7 +1,10 @@ 'use strict' -var remixCore = require('remix-core') -var TraceManager = remixCore.trace.TraceManager -var StorageViewer = remixCore.storage.StorageViewer + +var CodeManager = require('./code/codeManager') +var StorageViewer = require('./storage/storageViewer') +var StorageResolver = require('./storage/storageResolver') +var TraceManager = require('./trace/traceManager') + var remixLib = require('remix-lib') var traceHelper = remixLib.helpers.trace var init = remixLib.init @@ -9,13 +12,11 @@ var executionContext = remixLib.execution.executionContext var EventManager = remixLib.EventManager var Web3Providers = remixLib.vm.Web3Providers var DummyProvider = remixLib.vm.DummyProvider -var CodeManager = remixCore.code.CodeManager var remixSolidity = require('remix-solidity') var SolidityProxy = remixSolidity.SolidityProxy var stateDecoder = remixSolidity.stateDecoder var localDecoder = remixSolidity.localDecoder var InternalCallTree = remixSolidity.InternalCallTree -var StorageResolver = remixCore.storage.StorageResolver /** * Ethdebugger is a wrapper around a few classes that helps debugging a transaction diff --git a/remix-core/src/code/breakpointManager.js b/remix-debug/src/code/breakpointManager.js similarity index 100% rename from remix-core/src/code/breakpointManager.js rename to remix-debug/src/code/breakpointManager.js diff --git a/remix-core/src/code/codeManager.js b/remix-debug/src/code/codeManager.js similarity index 100% rename from remix-core/src/code/codeManager.js rename to remix-debug/src/code/codeManager.js diff --git a/remix-core/src/code/codeResolver.js b/remix-debug/src/code/codeResolver.js similarity index 100% rename from remix-core/src/code/codeResolver.js rename to remix-debug/src/code/codeResolver.js diff --git a/remix-core/src/code/codeUtils.js b/remix-debug/src/code/codeUtils.js similarity index 100% rename from remix-core/src/code/codeUtils.js rename to remix-debug/src/code/codeUtils.js diff --git a/remix-core/src/code/disassembler.js b/remix-debug/src/code/disassembler.js similarity index 100% rename from remix-core/src/code/disassembler.js rename to remix-debug/src/code/disassembler.js diff --git a/remix-core/src/code/opcodes.js b/remix-debug/src/code/opcodes.js similarity index 100% rename from remix-core/src/code/opcodes.js rename to remix-debug/src/code/opcodes.js diff --git a/remix-core/src/storage/mappingPreimages.js b/remix-debug/src/storage/mappingPreimages.js similarity index 100% rename from remix-core/src/storage/mappingPreimages.js rename to remix-debug/src/storage/mappingPreimages.js diff --git a/remix-core/src/storage/storageResolver.js b/remix-debug/src/storage/storageResolver.js similarity index 100% rename from remix-core/src/storage/storageResolver.js rename to remix-debug/src/storage/storageResolver.js diff --git a/remix-core/src/storage/storageViewer.js b/remix-debug/src/storage/storageViewer.js similarity index 100% rename from remix-core/src/storage/storageViewer.js rename to remix-debug/src/storage/storageViewer.js diff --git a/remix-core/src/trace/traceAnalyser.js b/remix-debug/src/trace/traceAnalyser.js similarity index 100% rename from remix-core/src/trace/traceAnalyser.js rename to remix-debug/src/trace/traceAnalyser.js diff --git a/remix-core/src/trace/traceCache.js b/remix-debug/src/trace/traceCache.js similarity index 100% rename from remix-core/src/trace/traceCache.js rename to remix-debug/src/trace/traceCache.js diff --git a/remix-core/src/trace/traceManager.js b/remix-debug/src/trace/traceManager.js similarity index 100% rename from remix-core/src/trace/traceManager.js rename to remix-debug/src/trace/traceManager.js diff --git a/remix-core/src/trace/traceRetriever.js b/remix-debug/src/trace/traceRetriever.js similarity index 100% rename from remix-core/src/trace/traceRetriever.js rename to remix-debug/src/trace/traceRetriever.js diff --git a/remix-core/src/trace/traceStepManager.js b/remix-debug/src/trace/traceStepManager.js similarity index 100% rename from remix-core/src/trace/traceStepManager.js rename to remix-debug/src/trace/traceStepManager.js diff --git a/remix-core/test/codeManager.js b/remix-debug/test/codeManager.js similarity index 100% rename from remix-core/test/codeManager.js rename to remix-debug/test/codeManager.js diff --git a/remix-core/test/disassembler.js b/remix-debug/test/disassembler.js similarity index 100% rename from remix-core/test/disassembler.js rename to remix-debug/test/disassembler.js diff --git a/remix-core/test/init.js b/remix-debug/test/init.js similarity index 100% rename from remix-core/test/init.js rename to remix-debug/test/init.js diff --git a/remix-core/test/resources/testWeb3.js b/remix-debug/test/resources/testWeb3.js similarity index 100% rename from remix-core/test/resources/testWeb3.js rename to remix-debug/test/resources/testWeb3.js diff --git a/remix-core/test/resources/testWeb3.json b/remix-debug/test/resources/testWeb3.json similarity index 100% rename from remix-core/test/resources/testWeb3.json rename to remix-debug/test/resources/testWeb3.json diff --git a/remix-debug/test/tests.js b/remix-debug/test/tests.js index 065fbe53a3..bff1e42b81 100644 --- a/remix-debug/test/tests.js +++ b/remix-debug/test/tests.js @@ -1,12 +1,17 @@ 'use strict' var tape = require('tape') var remixLib = require('remix-lib') -var remixCore = require('remix-core') var compilerInput = remixLib.helpers.compiler.compilerInput var vmCall = require('./vmCall') var Debugger = require('../src/Ethdebugger') var compiler = require('solc') +require('./traceManager.js') +require('./codeManager.js') +require('./disassembler.js') + +var BreakpointManager = require('../src/code/breakpointManager') + tape('debug contract', function (t) { t.plan(12) var privateKey = new Buffer('dae9801649ba2d95a21e688b56f77905e5667c44ce868ec83f82e838712a2c7a', 'hex') @@ -95,7 +100,7 @@ function testDebugging (t, debugManager) { }) var sourceMappingDecoder = new remixLib.SourceMappingDecoder() - var breakPointManager = new remixCore.code.BreakpointManager(debugManager, (rawLocation) => { + var breakPointManager = new BreakpointManager(debugManager, (rawLocation) => { return sourceMappingDecoder.convertOffsetToLineColumn(rawLocation, sourceMappingDecoder.getLinebreakPositions(ballot)) }) diff --git a/remix-core/test/traceManager.js b/remix-debug/test/traceManager.js similarity index 100% rename from remix-core/test/traceManager.js rename to remix-debug/test/traceManager.js