Commit Graph

989 Commits

Author SHA1 Message Date
VoR0220 35cad02b71
catch errors and handle gracefully in ENS 2018-10-23 10:03:03 +02:00
emizzle 86480440b1
Updated online/offline event checks so they are run during initialisation.
Changed the online event to `once` and set it to be bound every time the node goes offline.

The above changes handle the case where:
1) `embark run` runs and starts geth.
2) geth is killed manually
3) `embark blockchain` is run in separate process to restart geth
4) the `embark run` process detects this change and restarts the web3 provider and recompiles/deploys/builds

Every time `embark blochain` is restarted, an error is appended and all are emitted from the `eth-block-tracker`. This is a bug but can't figure out where it originates. The downside is that if, for example, `embark blockchain` is restarted 4 times, there will be 4 errors emitted from the `eth-block-tracker`. Because of this, errors emitted from `eth-block-tracker` have been reduced to trace to avoid clogging the logs.
2018-10-23 10:03:03 +02:00
emizzle 80e323bdd3
Handle geth process exit via crash/kill and also via killing `embark blockchain`
First case - run `embark run` which starts a blockchain node, then manually kill the `geth` process. Would throw `{ [Error: connect ECONNREFUSED 127.0.0.1:8543] message: 'connect ECONNREFUSED 127.0.0.1:8543', code: -32603 }` error and ruins the dashboard.

Second case, 1) run `embark blockchain` 2) run `embark run` 3) kill `embark blockchain` throws the error `{ [Error: connect ECONNREFUSED 127.0.0.1:8543] message: 'connect ECONNREFUSED 127.0.0.1:8543', code: -32603 }` and ruins the dashboard.

The first case was solved by having the child blockchain process that spawns geth listen for geth exit, then kill itself.

The second case required updating of `eth-block-tracker` to v4.0.1 inside of the `embark-web3-provider-engine`. v4.0.1 was a major version update and introduced breaking changes. Those changes were handled inside of `embark-web3-provider-engine`, covered in **blocker** PR https://github.com/jrainville/provider-engine/pull/1.
2018-10-23 10:03:03 +02:00
Jonathan Rainville bab0b71831
fix tests using new dependencies 2018-10-23 10:01:55 +02:00
Jonathan Rainville 38f32804f9
make groups of dependencyCount to do async by group 2018-10-23 10:01:55 +02:00
VoR0220 f2feff597f
callback fixes and get rid of resolver interface
Signed-off-by: VoR0220 <catalanor0220@gmail.com>
2018-10-23 10:01:54 +02:00
VoR0220 592e4db762
more unnecessary contracts gotten rid of, and fixes made to Embarkjs file
Signed-off-by: VoR0220 <catalanor0220@gmail.com>
2018-10-23 10:01:54 +02:00
VoR0220 ac6c741a15
get rid of unnecessary contracts for this iteration
Signed-off-by: VoR0220 <catalanor0220@gmail.com>
2018-10-23 10:01:54 +02:00
VoR0220 6efb5eee9d
add ens contracts
Signed-off-by: VoR0220 <catalanor0220@gmail.com>
2018-10-23 10:00:30 +02:00
Iuri Matias 31a3fbef66
fixes due to bad rebase 2018-10-23 10:00:30 +02:00
Richard Ramos 94eca4751a
Addid basic templating to start building UI from here 2018-10-23 09:57:16 +02:00
Richard Ramos 8861588726
Adding base command logic for scaffolding generation 2018-10-23 09:57:16 +02:00
Anthony Laibe 1800f506b1
Add IPNS demo 2018-10-23 09:57:16 +02:00
Iuri Matias 43448f62ef
move blockchain connection code to its own module 2018-10-23 09:56:18 +02:00
Iuri Matias db7f3d39d3
first stab at refactor blockchain launcher 2018-10-23 09:55:10 +02:00
Jonathan Rainville d5b224eee7
only enabble register in dev 2018-10-23 09:53:47 +02:00
Jonathan Rainville e95efbfc54
small cleanups 2018-10-23 09:53:47 +02:00
Jonathan Rainville 5a842c9b70
if no register config, dont register anything 2018-10-23 09:53:26 +02:00
Anthony Laibe 9fe14a0790
Remove code dependencies to underscore 2018-10-23 09:52:57 +02:00
emizzle 90be6125db
Removed p-iteration from embark altogether.
Replaced usage in storage module (on dapp side) with async.js `detectSeries`
2018-10-23 09:51:58 +02:00
Iuri Matias 4e881cd291
rebase fixes 2018-10-23 09:51:58 +02:00
Iuri Matias 8ed808a101
fixes due to bad rebase 2018-10-23 09:47:41 +02:00
Iuri Matias 95df68e67c
fixes due to bad rebase 2018-10-23 09:46:40 +02:00
Richard Ramos fdb2d4aed3
Changes based on code review
- Style changes for not requiring "else" in handlebar helpers
- Changed build to async
2018-10-23 09:42:10 +02:00
Richard Ramos 2c18caf481
Fixing template 2018-10-23 09:42:10 +02:00
Richard Ramos 04ad83aee3
Reorganizing template 2018-10-23 09:42:10 +02:00
Richard Ramos 995b067f63
Uncommented error throwing 2018-10-23 09:42:10 +02:00
Richard Ramos 6f249df4bf
Fixed plugin loading logic 2018-10-23 09:42:09 +02:00
Richard Ramos 435b18d074
Added payable functionality 2018-10-23 09:42:09 +02:00
Richard Ramos c562128365
Disabling button while loading 2018-10-23 09:42:09 +02:00
Richard Ramos d19bcdcbf9
Base logic for invoking send functions and showin results 2018-10-23 09:42:09 +02:00
Richard Ramos 10c5b64b1c
Alert for error invoking functions 2018-10-23 09:42:09 +02:00
Richard Ramos e7d435f03d
Handling boolean parameters 2018-10-23 09:42:08 +02:00
Richard Ramos d80d16f4ca
Form generation for view/constant/pure functions 2018-10-23 09:42:08 +02:00
Richard Ramos 8acf136c01
Importing contract and bootstrap css 2018-10-23 09:42:08 +02:00
Richard Ramos c4961d69b6
JS generation + embark.json configuration update 2018-10-23 09:42:08 +02:00
Richard Ramos d1dd890407
Addid basic templating to start building UI from here 2018-10-23 09:42:08 +02:00
Richard Ramos 0eaafb77f1
Adding base command logic for scaffolding generation 2018-10-23 09:42:08 +02:00
Iuri Matias b8cbee460b
move blockchain connection code to its own module 2018-10-23 09:41:26 +02:00
Iuri Matias 8136759bbb
refactor blockchain check 2018-10-23 09:39:03 +02:00
Iuri Matias 91cc554978
cleanup 2018-10-23 09:39:03 +02:00
Iuri Matias 4406dddf1e
first stab at refactor blockchain launcher 2018-10-23 09:39:02 +02:00
Michael Bradley, Jr fc27e710fc
blockchain -- defaultHost, dockerHostSwap 2018-10-23 09:37:24 +02:00
Jonathan Rainville 931f56db7d
only enabble register in dev 2018-10-23 09:37:24 +02:00
Jonathan Rainville 5488961a1e
small cleanups 2018-10-23 09:37:06 +02:00
Jonathan Rainville 81557258ce
pre-dploy using the same function as register 2018-10-23 09:07:19 +02:00
Jonathan Rainville 2cd11715bb
if no register config, dont register anything 2018-10-23 09:05:00 +02:00
Anthony Laibe 424d375f87
Remove code dependencies to underscore 2018-10-23 09:03:32 +02:00
Jonathan Rainville 3dcee19002
fix the indexOf instead by simulating what solc does 2018-10-23 09:03:31 +02:00
Jonathan Rainville 31162882c7
fix duplicate dependencies and warn correctly for length 2018-10-23 09:03:31 +02:00
emizzle 3a145d4204
Removed p-iteration from embark altogether.
Replaced usage in storage module (on dapp side) with async.js `detectSeries`
2018-10-23 09:01:13 +02:00
emizzle c83b6dde60
Handle geth process exit via crash/kill and also via killing `embark blockchain`
First case - run `embark run` which starts a blockchain node, then manually kill the `geth` process. Would throw `{ [Error: connect ECONNREFUSED 127.0.0.1:8543] message: 'connect ECONNREFUSED 127.0.0.1:8543', code: -32603 }` error and ruins the dashboard.

Second case, 1) run `embark blockchain` 2) run `embark run` 3) kill `embark blockchain` throws the error `{ [Error: connect ECONNREFUSED 127.0.0.1:8543] message: 'connect ECONNREFUSED 127.0.0.1:8543', code: -32603 }` and ruins the dashboard.

The first case was solved by having the child blockchain process that spawns geth listen for geth exit, then kill itself.

The second case required updating of `eth-block-tracker` to v4.0.1 inside of the `embark-web3-provider-engine`. v4.0.1 was a major version update and introduced breaking changes. Those changes were handled inside of `embark-web3-provider-engine`, covered in **blocker** PR https://github.com/jrainville/provider-engine/pull/1.
2018-10-23 09:01:13 +02:00
Jonathan Rainville 8db33705c2
hotfix: rename event to blockchain:ready 2018-10-22 20:50:58 +02:00
emizzle 559c7152f7
Return early when error 2018-10-22 19:54:50 +02:00
emizzle 178115de18
Removed `mineWhenNeeded` condition
Removed a condition that detects if `mineWhenNeeded === true`. While reaslistically, the `defaultAccount` will only be populated when `mineWhenNeeded` is set, there is no need to check for this when falling back to the blockchain account.
2018-10-22 19:54:50 +02:00
emizzle 294e14446f
Auto set swarm account to account controlled by the node
When there is no account/password specified for swarm, there was an error shown in the logs (asking for address/password), and the swarm process would quit.

This PR changes the behaviour so that if a swarm address/password are not specified in the config, it attempts to use the blockchain address/password specified in `config/blockchain > account`. If `config/blockchain > account > address` doesn’t exist, the first account controlled by the node is used (provided by `web3.eth.getAccounts`, along with the password from `config/blockchain > account > password`.
2018-10-22 19:54:50 +02:00
emizzle 3437f80a89
Return early if no modified assets 2018-10-22 19:54:50 +02:00
Jonathan Rainville 5b1a226885
Update null check for `modifiedAssets` array.
Co-Authored-By: emizzle <ericmastro@status.im>
2018-10-22 19:54:49 +02:00
emizzle 7c9d90090a
Replaced async.queue with async.cargo
Cargo in fact, bundles up subsequent tasks in to an array, so any tasks that are not immediately run get bundled in to another run later. This helps when lots of changes have been made in a short period of time.
2018-10-22 19:54:49 +02:00
Michael Bradley, Jr 6eae7a9a31
use a customized require/.resolve instead of relying on NODE_PATH
# Conflicts:
#	cmd/cmd.js
2018-10-22 19:54:49 +02:00
emizzle 64fdc691c4
Clean up 2018-10-22 19:54:49 +02:00
emizzle 91e5e9c990
Do not run webpack for file changes that do not need webpack
For file changes that do not require a webpack run, ie HTML, the assets will still be copied to the output directory, but webpack will not run (as it’s too slow).
2018-10-22 19:54:48 +02:00
emizzle 2d19d12e39
Support for embark-status plugin
Added request to update cors from a plugin (affects blockchain client and storage client).
2018-10-22 19:54:48 +02:00
hodlbank 870d9a814a
[f] Fixes #965 - "Console doesnt have contract objects for contracts with pre-defined addresses configured".
[f] Fix for sometimes incorrect empty code detection in contract_deployer.js ("0x" vs "0x0").
2018-10-22 19:54:48 +02:00
Jonathan Rainville 985358b088
fix web3 being reseted every test and fix ens failing on web3 reset 2018-10-22 19:54:48 +02:00
Jonathan Rainville ce3f9bdf25
fix a couple of bugs caused by bounties 2018-10-22 19:54:48 +02:00
Jonathan Rainville 7a70f5df26
use constants instead of magic numbers 2018-10-22 19:54:47 +02:00
Jonathan Rainville 75d9998c57
refactor to not use the blockchain_connector directly 2018-10-22 19:54:47 +02:00
Jonathan Rainville e450c0484a
fix error in solc-tests 2018-10-22 19:54:46 +02:00
Jonathan Rainville c6aa19a772
use this instead of self 2018-10-22 19:54:46 +02:00
Jonathan Rainville ac9dbdd1d6
conflict in test 2018-10-22 19:54:46 +02:00
Jonathan Rainville ac155ddb86
conflict in specialconfigs 2018-10-22 19:54:46 +02:00
Jonathan Rainville f4d7636b7a
make code coverage work with refactored tests 2018-10-22 19:54:45 +02:00
Jonathan Rainville 7516bad619
use blockchain_connector's provider for nodes 2018-10-22 19:54:45 +02:00
Jonathan Rainville 5a5485d447
get rid of dependency on web3 2018-10-22 19:54:45 +02:00
Jonathan Rainville ddc8b36329
make tests work by using events 2018-10-22 19:54:45 +02:00
Jonathan Rainville ca3aea7923
BROKEN: solc doesnt load 2018-10-22 19:54:45 +02:00
Jonathan Rainville 3c0bcb18b8
rename events to use a tests prefix 2018-10-22 19:54:44 +02:00
Jonathan Rainville e8574f33eb
conflict in run_tests 2018-10-22 19:54:44 +02:00
Jonathan Rainville e6cad1675a
move test files to a module folder 2018-10-22 19:54:44 +02:00
Anthony Laibe 27973461b1
In case of ws, use the connected attribute
Instead of relying on non reliable source, directly
check the ws status
2018-10-22 19:54:44 +02:00
Cryptomental 47dcb1552c
console, dashboard: Add persistent, automatically loaded history.
Add persistent automatically loaded history file for repl console
and Embark dashboard.

Default location of the history file is stored in DEFAULT_CMD_HISTORY_PATH
pointing to DAPP_PATH/.embark/cmd_history.

The history is automatically saved and loaded on startup.

test/console: Pass Embark object to constructor.

Update console test to pass Embark object to constructor.

Refs: https://github.com/embark-framework/embark/issues/939
2018-10-22 19:54:43 +02:00
emizzle 5fe746df51
Add message warning user a password is needed to unlock
When `mineWhenNeeded` is true (occurs in zero-config) and an account on the node exists, a password is required to be specified `config/blockchain.js > account > password` so that the existing account can be unlocked by geth (the `—unlock` cli option).
2018-10-22 19:54:43 +02:00
Dan Lipert 898ecfe293
Accept standard Ether units and update/add tests 2018-10-22 19:54:43 +02:00
Subramanian Venkatesan f686fec74a
ens resolve 2018-10-22 19:53:50 +02:00
Giuseppe Bertone 81e798c89c
Add support for Parity
Addons
 - New chain initialization and genesis management
 - Option to choose client to use
 - Option to "ping forever" for Geth
 - Creation and unlock of accounts at client's start
 - Utility to fund accounts with ethers
 - Miner settings inside the ethereum client
 - Workaround to CORS problem: origin is now http://embark
 - Several double callback's checks

Updates
 - Boilerplate, templates, configuration files and demo stuff
 - Messages and i18n strings
 - Tests

Fixes
 - Geth client now uses miner.gastarget instead of the deprecated targetGasLimit
 - Workaround for shh_version with Parity

Reworks of other PRs into the new code
 - Included delayed proxy
 - Send ready only when the proxy is started
 - Start HTTP and WS proxies individually
 - Async setupProxy
 - Fixed datadir for GethMiner
2018-10-22 19:53:49 +02:00
Jonathan Rainville d7cd3a72c9
add message at the end of the first ouput 2018-10-22 19:43:15 +02:00
Jonathan Rainville 9c0bff4515
remove console dir that I forgot to remove 2018-10-22 19:40:52 +02:00
Moksh Jain 08c140b035
added webserver logging 2018-10-22 19:39:25 +02:00
Moksh Jain 51b2cce0ea
adds dashboard logging for: geth, ipfs, swarm 2018-10-22 19:39:25 +02:00
Jonathan Rainville f71c158164
change 70000 for a constant 2018-10-22 19:35:59 +02:00
Pascal Precht d34428a129
refactor(modules/pipeline/webpackProcess): load pipeline config in Config class
to configure pipeline specific options like TypeScript support.

At the time this has been added, `core/config` didn't handle the loading
of configuration files for pipeline related tasks yet.

This commit ensures a dapp's `pipeline.json` will be loaded and used to
configure Embark's webpack process as part of Embark's `Config` initialization.
2018-10-22 19:35:59 +02:00
Pascal Precht 71e92358a8
feat(modules/watcher): introduce watcher plugin module
As part of a bigger refactoring to make Embark's build pipeline pluggable,
this commit moves the watcher into its own plugin module so it can be
consumed via Embark's event bus.

It also introduces new command handlers for all watcher related APIs respectively:

- watcher:start
- watcher:stop
- watcher:restart
2018-10-22 19:35:58 +02:00
Pascal Precht 081b7eee89
chore(blockchainProcess): improve error message when blockchain client exits early
In cases a blockchain client exits before Embark is done doing its work,
the current error message doesn't provide any pointers to why this
happened.

Running `$ embark blockchain` separately could yield more information by
the underlying process.
2018-10-22 19:35:58 +02:00
Jonathan Rainville 5f8ad923c7
use an event to get web3 instead of global 2018-10-22 19:35:58 +02:00
Pascal Precht a0ef234fea
feat(modules/pipeline): move pipeline into its own module plugin
This is the first step of refactoring Embark's pipeline abstraction into
dedicated plugin modules that take advantage of Embark's event system.

With this commit we're moving `Pipeline` into `lib/modules/pipeline` and
introduce a new command handler `pipeline:build`. Embark's engine now
requests builds via this command handler.

Notice that `Watch` still lives in `lib/pipeline` as this is a step-by-step
refactoring to reduce chances of introducing regressions.
2018-10-22 19:35:58 +02:00
Jonathan Rainville 6b4321874b
add helpful messages when ens register is rejected 2018-10-22 19:35:58 +02:00
Jonathan Rainville 623bdc50ae
make on deploy manual 2018-10-22 19:35:57 +02:00
Cryptomental bcc1711061
contract_deployer: Redeploy if track field is set to false.
Always deploy the contract regardless if already deployed
when 'track' field in the contract configuration is specified
and set to false.

In line with #938 requirements:

* If a contract has the track field set to false, that contract
  will always deploy.
* If the track field is set to true, then the existing deployment
  tracking mechanism will be active for that contract.
* If the field is not set, it should be assumed to true by default

Refs: https://github.com/embark-framework/embark/issues/938
2018-10-22 19:35:57 +02:00
Jonathan Rainville eaafa9bed2
add default account if set in config 2018-10-22 19:35:04 +02:00
Jonathan Rainville 0fb0fa0648
remove process.exits 2018-10-22 19:35:03 +02:00
Jonathan Rainville eae7784a87
fix rebase problems and now works 2018-10-22 19:35:03 +02:00
Jonathan Rainville c0d32e3581
use known addresses for ENSRegistrery 2018-10-22 19:35:03 +02:00
Jonathan Rainville 3245a65100
conflict in ens index 2018-10-22 19:35:03 +02:00
Jonathan Rainville 0c0624e463
conflict in ens index 2018-10-22 19:35:03 +02:00
Jonathan Rainville 302da3f263
conflict in ens index 2018-10-22 19:35:03 +02:00
emizzle 3e9abdcdd2
fix rebase 2018-10-22 19:33:40 +02:00
emizzle 9aa3217331
After upload message regarding CORS and public gateways 2018-10-22 19:30:13 +02:00
Iuri Matias 967703a333
restore ws functionality to webserver 2018-10-22 19:30:12 +02:00
StevenJNPearce 5917e0cb5a
Add browser reload on file change/rebuild
Add browser reload on file change/rebuild
2018-10-22 19:30:12 +02:00
emizzle f378ea55da
fix rebase #2 2018-10-22 19:30:12 +02:00
emizzle 58ba0549c4
Fix rebase 2018-10-22 19:30:12 +02:00
Iuri Matias 58a75f5080
restore ws functionality to webserver 2018-10-22 19:25:19 +02:00
StevenJNPearce 3dbf0d3742
Add browser reload on file change/rebuild
Add browser reload on file change/rebuild
2018-10-22 19:25:19 +02:00
Anthony Laibe bdd5852b6c
Fix git merging badly 2018-10-22 19:25:19 +02:00
hodlbank e13c0b3724
[a] Added applyArgumentPlugins before _determineArguments in ContractDeployer for plugins that calculate arguments dynamically.
[m] Made possible for deploy:contract:beforeDeploy plugin to modify arguments list.
2018-10-22 19:25:18 +02:00
Cryptomental 10bf3e4412
cmd, cmd_controller, graph: Add --output option to graph.
Add optional --output argument to graph generator. The argument allows
to specify a filepath for graph output. Default filepath is ./diagram.svg
if the argument is not specified.

Refs: https://github.com/embark-framework/embark/issues/944
2018-10-22 19:25:18 +02:00
Andre Medeiros 3d089a7a53
Fix linting 2018-10-22 19:25:18 +02:00
Andre Medeiros bf7f4db179
Account for empty initialization in loops 2018-10-22 19:25:18 +02:00
Cryptomental 34cafc77e8
webserver: Emit websocket outputError and show error on the landing page.
Whenever outputError is emitted by Ember, display error message on the landing page
and stop the page from refreshing every four seconds.

Refs: https://github.com/embark-framework/embark/issues/946
2018-10-22 19:25:17 +02:00
Cryptomental 78c5055902
contracts_manager, deployment: Emit outputError whenever build error or deployment error happens.
Emit outputError when:
 * contracts cannot be built
 * contracts cannot be deployed

Refs: https://github.com/embark-framework/embark/issues/946
2018-10-22 19:25:17 +02:00
StevenJNPearce 64c6f58497
add ENS console commands 2018-10-22 19:25:17 +02:00
Anthony Laibe 7e12f80eda
Address PR feedback 2018-10-22 19:25:16 +02:00
Anthony Laibe dd8c6b9a35
Add missing config
The configuration for test is not passed via the engine
2018-10-22 19:25:16 +02:00
Anthony Laibe 850a80c90c
ENS config use the actual network ID
Instead of relying on the name of network.
Fetch the real network id and configure ENS
based on that value
2018-10-22 19:25:16 +02:00
Anthony Laibe 684839b5aa
Use broadcast to avoid useless send 2018-10-22 19:25:16 +02:00
Michael Bradley, Jr 5d4ac32a2a
Boolean() -> !! 2018-10-22 19:25:14 +02:00
emizzle 1c27c3465b
Handle case when socket not opened
If the socket is not already opened, listen for ‘open’ event before sending the `outputDone` data.
2018-10-22 19:24:41 +02:00
Anthony Laibe 91d1e5a85e
Fix websocket not open
Make sure the connection is open before
sending the event
2018-10-22 19:24:41 +02:00
Iuri Matias 4b81968482
restore ws functionality to webserver 2018-10-22 19:24:41 +02:00
StevenJNPearce 3aad35209a
Add browser reload on file change/rebuild
Add browser reload on file change/rebuild
2018-10-22 19:13:50 +02:00
Iuri Matias a7a6a03bfe make linter happy 2018-09-28 16:38:42 -04:00
Iuri Matias 24d661a65e fix blockchain defaults for config-less dapps 2018-09-28 16:32:37 -04:00
Iuri Matias 69894d2e06
Merge pull request #916 from embark-framework/infura_fix
Infura fix
2018-09-26 19:04:26 -04:00
Iuri Matias 05962a288d lint is mother; lint is father 2018-09-26 18:57:55 -04:00
Iuri Matias 44dad44ef4 increase estimated gas slightly & randomly 2018-09-26 18:45:06 -04:00
Iuri Matias 2374cb1641 limit deployment to 1 for now 2018-09-26 18:44:36 -04:00
Andre Medeiros c81deb9a2d Don't log that we don't know how to handle node 2018-09-26 18:36:56 -04:00
Iuri Matias 3ae5157e47 Revert "Delay contract deploiement if share bytecode"
This reverts commit 527dbcca8b.
2018-09-26 17:39:11 -04:00
Iuri Matias 8d13cd8e9d
Merge pull request #905 from embark-framework/bugfix/infura-simultaneous-tx
Bugfix/infura simultaneous tx
2018-09-26 14:21:30 -04:00
Andre Medeiros 767687b297 Simplify concat 2018-09-26 11:47:02 -04:00
Andre Medeiros b1f9097824 Update function complexity 2018-09-26 11:23:52 -04:00
Andre Medeiros fa8f4b4e41 Support if statements without a list of statements 2018-09-26 11:13:14 -04:00
Iuri Matias 0848d81b3e
Merge pull request #906 from embark-framework/bugfix/ens-require-default-account
Warning if no default account for ens
2018-09-26 09:28:41 -04:00
Iuri Matias 06c0171c39
Merge pull request #908 from embark-framework/bugfix/warn-about-ethereum-node-going-away
Warn about Ethereum node going away
2018-09-26 09:25:35 -04:00
Iuri Matias b4dc48dc32
Merge pull request #904 from embark-framework/bug_fix/ipfs-own-cors
add CORS URL for local ipfs' own server
2018-09-26 08:58:07 -04:00
Andre Medeiros ad2eb9ad9f Warn, don't trace 2018-09-25 12:41:22 -04:00
Anthony Laibe 23d6b07467 Warning if no default account for ens 2018-09-25 15:30:46 +01:00
Anthony Laibe b8d3f3cd11 Fix warning 2018-09-25 14:59:08 +01:00
Anthony Laibe 527dbcca8b Delay contract deploiement if share bytecode 2018-09-25 14:58:19 +01:00
Michael Bradley, Jr 16246b1d43 rm unneeded param/arg 2018-09-24 21:07:02 -05:00
Michael Bradley, Jr cad7843c78 add CORS URL for local ipfs' own server (default: localhost:8080) 2018-09-24 20:51:31 -05:00
Michael Bradley, Jr 999d65bda0 whitespace 2018-09-24 20:50:27 -05:00
Andre Medeiros 099e398bf4 Filter out interfaces from the coverage report 2018-09-23 19:08:06 -04:00
Andre Medeiros e952bbc41a Fix contract matching 2018-09-23 18:40:51 -04:00
Iuri Matias 9ed08f234d
Merge pull request #895 from embark-framework/bugfix/race-condition-deploy-tracker
Fix race condition on deploy tracker
2018-09-22 10:36:15 -04:00
Anthony Laibe 8d506971e8 BN.js udpated need toString 2018-09-22 15:34:54 +01:00
Anthony Laibe 1dfd2e980f Reduce coupling by using action for event 2018-09-22 15:08:50 +01:00
Anthony Laibe e20d7bfc6a Fix race condition on deploy tracker 2018-09-22 14:43:10 +01:00
Iuri Matias c569dc9d21 add missing semi-colon 2018-09-22 09:21:30 -04:00
Anthony Laibe fe3e4690f6 Remove useless try on ws connect 2018-09-22 13:59:19 +01:00
Iuri Matias 7e710745ce always add ens contracts source so abi definition is always available in environments the contract is already deployed 2018-09-21 19:02:44 -04:00
Iuri Matias 681dddbbf2
Merge pull request #889 from embark-framework/bugfix/ipfs-hash-fetch
Fetch IPFS dir hash deterministically
2018-09-21 18:29:24 -04:00
Iuri Matias 50effc0a6c revert change made on ens module 2018-09-21 18:26:18 -04:00
Iuri Matias cafe472727 add missing space 2018-09-21 18:16:47 -04:00
Iuri Matias 78814dc9d6 only add & deploy fifs register if it's actually a non live env 2018-09-21 17:53:42 -04:00
Iuri Matias 3b6251eeb1 improve some deployment error messages 2018-09-21 17:52:32 -04:00
Iuri Matias 4af9114681 fix blockchain node not found msg so it actually shows red 2018-09-21 17:51:53 -04:00
Andre Medeiros 0bdafc273f Fetch IPFS dir hash deterministically 2018-09-21 16:52:39 -04:00
Anthony Laibe 1b649d0e3a
Merge pull request #885 from embark-framework/bugfix/blockchain-not-done
Bugfix/blockchain not done
2018-09-21 15:11:20 +01:00
Iuri Matias 71cbb07ad8
Merge pull request #878 from embark-framework/bug_fix/minewhenneeded-fixes-3
Fix datadir for miner (PR for next branch)
2018-09-21 09:36:06 -04:00
Iuri Matias 9a914d0b5a
Merge pull request #877 from embark-framework/bug_fix/proxy-setup-awaits-blockchain
proxy should try to wait on target endpoint
2018-09-21 09:31:48 -04:00
Anthony Laibe d5d0aa1600 EmbarkJS blockchain must be done 2018-09-20 11:15:48 +01:00
Anthony Laibe 907b486531 Send ready only when the proxy is started 2018-09-20 10:16:48 +01:00
Iuri Matias 4a321e3c0c coerce boolean value using more commmon !! 2018-09-20 15:33:33 +10:00
emizzle ab7784c1e9 Fix datadir for miner
The datadir path was not being passed to the miner, was resolving as `undefined`, and therefore, was not setting up an ipc connection correctly and no communication was happening.

The fix passes the `datadir` from the blockchain config to the miner in the constructor.
2018-09-20 15:30:06 +10:00
emizzle c477445896 Start HTTP and WS proxies individually
As geth is starting up, the output is monitored for endpoint info. Once the HTTP or WS endpoints are opened, the corresponding proxies are started.

This is more maintainable in the long run in case the geth process being started does not allow for rpc or websockets, or geth modifies the order in which endpoint are opened.
2018-09-20 15:08:02 +10:00
Michael Bradley, Jr eba9ce361e setupProxy should not be conditional on isDev 2018-09-19 22:31:54 -05:00
Michael Bradley, Jr 917757b04c outer function doesn't need to be async 2018-09-19 21:13:19 -05:00
Michael Bradley, Jr e19b3b2f51 simplify syntax 2018-09-19 21:13:06 -05:00
Michael Bradley, Jr 2b816af9a8 eslint doesn't like `void 0` here 2018-09-19 21:12:37 -05:00
Michael Bradley, Jr 1408abf8d9 supply radix 2018-09-19 21:12:20 -05:00
Michael Bradley, Jr 4fc9827080 need parent contract's realRuntimeBytecode 2018-09-19 20:55:00 -05:00
Michael Bradley, Jr aae7954020 await proxy just before createFundAndUnlockAccounts 2018-09-19 20:11:36 -05:00
Michael Bradley, Jr 35c772d727 async setupProxy 2018-09-19 20:10:46 -05:00
Michael Bradley, Jr b9975668b8 proxy should attempt to wait on target 2018-09-19 20:10:15 -05:00
Michael Bradley, Jr 3846db79f7 make sure port is an integer, port var should hold offset port value 2018-09-19 20:10:15 -05:00
Andre Medeiros c6d7bec9d7 Do not request legacyAST from solc to speed up compilation 2018-09-19 15:51:11 -04:00
Andre Medeiros 9151466a75 Simplify code 2018-09-18 16:36:21 -04:00
Andre Medeiros f54d572b3d Handle cases where deploy address isn't set 2018-09-18 16:30:32 -04:00
Iuri Matias 904c716d89
Merge pull request #856 from embark-framework/features/config-browser-open
cli and config options for browser auto-open
2018-09-18 13:11:55 -04:00
Iuri Matias 7f66e24b2f
Merge pull request #863 from embark-framework/bug_fix/minewhenneeded-fixes-2
Geth creates new account - add password warning
2018-09-18 13:02:01 -04:00
Iuri Matias ce8f5f7dc0
Merge pull request #861 from embark-framework/feature/webserver-coverage
Add coverage to webserver
2018-09-18 12:45:01 -04:00
Anthony Laibe bdcefbe269 Add coverage to webserver 2018-09-18 14:28:17 +01:00
Anthony Laibe 4c0b4c2410 Delay the start of the proxy 2018-09-18 12:12:17 +01:00
emizzle d965ba6db9 Geth creates new account - add password warning
When `isDev` is false, and `mineWhenNeeded` is true, embark attempts to create a new account using `geth account new`, and uses the password file specified in `blockchain/config > accounts > password`. This warning informs the user that the create account command may fail if the password is missing.
2018-09-18 16:28:23 +10:00
Michael Bradley, Jr 8acab6ef5b disable browser auto-open when webserver first starts, not the `open browser` console cmd 2018-09-17 18:47:19 -05:00
Michael Bradley, Jr d03cfebbdf supply radix -- make the linter happy 2018-09-17 18:13:21 -05:00
Michael Bradley, Jr ebcbc1efe6 if port === 0 (per cli or config), auto-assign a port 2018-09-17 17:59:52 -05:00
Michael Bradley, Jr c6232de878 host from config (config has been merge w/ cli by core/config) 2018-09-17 17:59:52 -05:00
Michael Bradley, Jr c685432ea2 pass port number through parseInt 2018-09-17 17:59:52 -05:00
Michael Bradley, Jr 1b7aed8b80 openBrowser config option 2018-09-17 17:59:52 -05:00
Michael Bradley, Jr c360975e8f webServer svc doesn't need to handle cli opts (handled in core/config) 2018-09-17 17:59:52 -05:00
Iuri Matias 7ce92211f9
Merge pull request #842 from embark-framework/fix_cb_issue
take into account when event does not trigger a callback
2018-09-17 14:56:40 -04:00
Iuri Matias cc8649aa95
Merge pull request #850 from embark-framework/bug_fix/re-add-dev_funds-calling-code
Adding back calling code block for dev_funds
2018-09-17 14:12:25 -04:00
Iuri Matias c02bd6c444 make linter happy 2018-09-17 13:58:13 -04:00
Iuri Matias 1296545fa3 make function defaul arg instead 2018-09-17 13:36:20 -04:00
emizzle 472b87f4cd Adding back calling code block for dev_funds
This may have been removed in the rebase, adding it back in.
2018-09-17 22:48:24 +10:00
Iuri Matias 7d6809b57f take into account when event does not trigger a cb 2018-09-15 12:52:11 -04:00
Iuri Matias 32a1ba0f32 fix dashboard state so it doesn't show pending for contracts that were not deployed due to deployIf directive 2018-09-15 12:20:20 -04:00
Iuri Matias e3273b7867
Merge pull request #835 from embark-framework/fix-coverage-timing
Update coverage report after suite
2018-09-14 18:18:24 -04:00
Iuri Matias 9b2fa9402b
Merge pull request #822 from embark-framework/bugfix/circular-json
Fix circular JSON and swarm api require
2018-09-14 18:11:34 -04:00
Iuri Matias 286e1d2c95
Merge pull request #824 from embark-framework/feature/swarm-use-local-datadir
Swarm use local data dir
2018-09-14 18:07:54 -04:00
Andre Medeiros 103262f435 Write coverage report asynchronously 2018-09-14 16:43:58 -04:00
Andre Medeiros a8a9f3e9a8 Setup coverage to listen to the test embark events
This allows us to catch an event to know when the tests are done running. In turn, this will tell us when to save the coverage file and run the report.
2018-09-14 16:31:40 -04:00
Andre Medeiros d8becfe54f Lint lyfe 2018-09-14 13:21:47 -04:00
Andre Medeiros cd8980151b Update coverage report after each step 2018-09-14 13:16:02 -04:00
Jonathan Rainville 3e1db81d5b preprend embark to plugin name 2018-09-13 10:29:03 -04:00
Jonathan Rainville 70763fc717 restructure plugin_cmd 2018-09-13 10:08:15 -04:00
Anthony Laibe 8ffc9b89e2 Swarm use local data dir 2018-09-13 13:37:44 +01:00
Anthony Laibe 583318169a Fix loading swarm-api in node or browser 2018-09-13 12:29:44 +01:00
Anthony Laibe c22901ab95 Fix circular JSON and swarm api require 2018-09-13 11:21:17 +01:00
Iuri Matias edd9ece585
Merge pull request #820 from embark-framework/bug_fix/error-deploy-pending
Don't stop everything on contract deploy fail
2018-09-12 18:50:56 -04:00
Iuri Matias e7ae3fbc76
Merge pull request #809 from embark-framework/bug_fix/bad-redeploy
fix redeploy of contracts on spaces
2018-09-12 18:37:29 -04:00
Iuri Matias dfe49291be
Merge pull request #797 from subramanianv/pluginCmd
Plugin cmd
2018-09-12 17:57:18 -04:00
Jonathan Rainville 4c912b8ecf stop on error 2018-09-12 12:04:33 -04:00
Jonathan Rainville 9f7a932252 don't stop on contract fail 2018-09-12 11:55:29 -04:00
Jonathan Rainville 52a99ee4ef
Merge pull request #815 from embark-framework/fix-invalid-account-param-error
Show an error message on account parameters
2018-09-12 10:01:55 -04:00
Jonathan Rainville 4e3e27df6c
Merge pull request #810 from embark-framework/bug_fix/fix-log-ipns
Make sure the string is an IPFS hash and some linting
2018-09-12 09:59:38 -04:00
Subramanian Venkatesan c8eec064b1 log the error 2018-09-12 19:27:19 +05:30
Jonathan Rainville 1bbd8beef8
Merge pull request #802 from embark-framework/swarm-support-latest
Switch to SwarmJS which supports latest version of Swarm
2018-09-12 09:57:19 -04:00
Andre Medeiros 4a947d4783 Show an error message on account parameters 2018-09-12 09:00:20 -04:00
Subramanian Venkatesan 1a756e8a05 Added better error logging, dashboard doesnt break in run mode 2018-09-12 11:27:28 +05:30
emizzle 5021d39cae Add console help for swarm command 2018-09-12 12:57:46 +10:00
emizzle 680db4d575 Change over to published swarm-api library 2018-09-12 12:43:10 +10:00
Jonathan Rainville 742936efc3 make sure the string is an IPFS hash and some linting 2018-09-11 16:09:46 -04:00
Jonathan Rainville 47ec2f2d8a fix redeploy of contracts on spaces 2018-09-11 15:20:57 -04:00
Subramanian Venkatesan b3eedc4ba2 embark config 2018-09-10 23:12:04 +05:30
Subramanian Venkatesan fe0bbc3559 changes from the code review 2018-09-10 22:38:17 +05:30
Anthony Laibe 6ad9c0dc5a Update error with or 2018-09-10 17:08:09 +01:00
Subramanian Venkatesan 2782acf438 fix plugin command 2018-09-10 18:25:17 +05:30
emizzle 1d03f01531 Update warnings in embark after upload
warn user that they need to run a blockchain node and swarm for the dapp to work correctly.
2018-09-10 22:47:31 +10:00
emizzle b759e9eed7 Add ‘defaultpath’ for upload
Hardcode to ‘index.html’
2018-09-10 22:42:10 +10:00
emizzle 9d39fa39ac Swarm updates for embark
Change __embarkSwarm to use new SwarmJS and change over from promises.

Add note after upload that blockchain nodes needs to be running to access the swarm uploaded dapp.

Fix typo with swarm “on” available.

Linting / cleanup
2018-09-10 22:42:10 +10:00
emizzle e44b62d550 SwarmJS browser support 2018-09-10 22:42:10 +10:00
emizzle 3f5fe21b90 change to ‘uploadDirectory’ 2018-09-10 22:42:10 +10:00
emizzle 2dc8d8c276 Fix issue with swarm isAvailable 2018-09-10 22:42:10 +10:00
emizzle fcb75dee11 Move to swarmjs and await geth ready
Move to swarmjs library (in embark-framework).

Wait for geth to start before start of swarm check.
2018-09-10 22:42:10 +10:00
emizzle b5e8546ebd Converted upload procedure to local SwarmGW lib
# Conflicts:
#	package-lock.json
2018-09-10 22:42:00 +10:00
Subramanian Venkatesan 53de6dcb19 Fixes to npm command parsing 2018-09-10 16:19:37 +05:30
Anthony Laibe 613921169a Better trace register ens 2018-09-10 10:12:02 +01:00
Subramanian Venkatesan cb751b5213 install npm package using shell.js 2018-09-10 14:01:36 +05:30
Subramanian Venkatesan c8e812e638 Plugin Command Module 2018-09-09 23:22:57 +05:30
Subramanian Venkatesan 74f0d05ca0 Plugin Command 2018-09-09 23:07:55 +05:30
Iuri Matias 833fcef22a
Merge pull request #795 from embark-framework/bug_fix/webserver-config-change
Watch webserver config and restart it
2018-09-07 19:04:17 -04:00
Iuri Matias 4128a96997
Merge pull request #796 from embark-framework/bug_fix/web3-location
getWeb3Location should use require.resolve()
2018-09-07 19:03:59 -04:00
Michael Bradley, Jr 7549c1f8e6 require.resolve() should start by looking in embark's own node_modules 2018-09-07 16:28:03 -05:00
Michael Bradley, Jr 13e21702d2 getWeb3Location should use require.resolve() for "version:get:web3" event 2018-09-07 15:52:30 -05:00
Jonathan Rainville 3d37fe6362 catch webserver config and restart it 2018-09-07 14:54:15 -04:00
Anthony Laibe 4c580dd54d Pr feedback using once 2018-09-07 14:57:49 +01:00
Anthony Laibe 4481e6eb99 Ens config is run only once 2018-09-07 11:18:43 +01:00
Anthony Laibe 5957be9571 Avoid Solc to die because of compilation 2018-09-06 11:24:29 +01:00
Iuri Matias 0f1f3a782a
Merge pull request #779 from embark-framework/chore/add-embarkjs-to-help
Add embarkJS to help
2018-09-04 15:26:31 -04:00
Jonathan Rainville 9351a12444 add embarkJS to help 2018-09-04 14:12:12 -04:00
Iuri Matias bf8183cf76
Merge pull request #778 from embark-framework/fix_deploy
Fix issue with changes in config file not causing a proper reload
2018-09-04 14:02:54 -04:00
Iuri Matias 7ee02525a7
Merge pull request #770 from embark-framework/features/open-browser
open browser when Embark's webserver starts
2018-09-04 13:51:57 -04:00
Michael Bradley, Jr d4be16ba3c move reporting to final callback 2018-09-04 08:20:58 -05:00
Michael Bradley, Jr b67aa8cc2d best practice re: early return w/ callback invocation 2018-09-04 08:20:27 -05:00
Michael Bradley, Jr c02199db0f rev comment 2018-09-04 07:36:21 -05:00
Michael Bradley, Jr 7d65c2b0cd rename placeholder event: 'build-placeholder' 2018-09-04 07:35:53 -05:00
Michael Bradley, Jr 57b2c5c4e4 'browser open' console command 2018-09-04 07:35:02 -05:00
Michael Bradley, Jr 68c6d1549a 'open-browser' event 2018-09-04 07:34:37 -05:00
Michael Bradley, Jr 103bb43a05 consistent naming, quotes-style 2018-09-04 07:32:31 -05:00
Anthony Laibe 5ad17be140 Fix Gas Price 2018-09-04 08:21:31 +01:00
Iuri Matias 0314fb77c9 return if contract deploy is false 2018-09-03 14:01:26 -04:00
Michael Bradley, Jr 9cd96ddd29 formatting -- webserver/server.js 2018-09-03 10:17:45 -05:00
Michael Bradley, Jr 52ed0e2856 webserver uses event and waterfall for triggering placeholder build, opening browser 2018-09-03 10:17:45 -05:00
Michael Bradley, Jr 6ee195aba9 make webserver module responsible for building placeholder 2018-09-03 10:17:45 -05:00
Michael Bradley, Jr 1d38af1f58 expose buildDir to webserver in same manner as its done for pipeline 2018-09-03 10:17:45 -05:00
Michael Bradley, Jr 1d9237820a make isFirstStart, opened props of Server instance 2018-09-03 10:17:45 -05:00
Michael Bradley, Jr 4f8107bf17 fail silently if opn doesn't work 2018-09-03 10:17:45 -05:00
Michael Bradley, Jr 72943dc0e5 open default browser when webserver has started 2018-09-03 10:17:45 -05:00
Michael Bradley, Jr f778dad589 write placeholder page when webserver is first starting 2018-09-03 10:17:45 -05:00
Iuri Matias 15467e6f49 use es string templates 2018-09-01 09:35:14 -04:00
Iuri Matias 1be58863e7 cleanup 2018-09-01 09:35:14 -04:00
Iuri Matias af947910c4 re-add context code 2018-09-01 09:35:14 -04:00
Iuri Matias 262a6d3aef move older code to embarkjs & refactor 2018-09-01 09:35:13 -04:00
Iuri Matias e42c4f94d8 remove utils; use EmbarkJS.connect method 2018-09-01 09:30:37 -04:00
Anthony Laibe 98e63ad424 Fix message events already declared 2018-08-31 18:55:38 +01:00
Iuri Matias 43945f6a49
Merge pull request #759 from embark-framework/bug_fix/ens-crash
Don't crash if ENS contracts don't deploy
2018-08-31 09:05:43 -04:00
Jonathan Rainville f1e5aff3fb dont crash if ens contracts don't deploy 2018-08-31 08:50:15 -04:00
Anthony Laibe a325abe1c2 profile always return 2018-08-31 13:41:41 +01:00
Iuri Matias f0221bbb10
Merge pull request #755 from embark-framework/chores/es-lint-no-else
Enable no-else-return
2018-08-31 07:49:25 -04:00
Iuri Matias 46076c8d4e
Merge pull request #751 from embark-framework/feature/embarkjs-console
Feature/embarkjs console
2018-08-31 07:46:54 -04:00
Anthony Laibe e0f73c7d22 Make console a module 2018-08-31 09:36:50 +01:00
Andre Medeiros bb92582c0a Fix passing compiler options 2018-08-30 16:11:42 -04:00
André Medeiros 026da48e74
Merge pull request #749 from embark-framework/features/coverage-loops-declarations-events
Improve code coverage
2018-08-30 14:46:34 -04:00
Andre Medeiros 34f6a130d8 Update complexity 2018-08-30 13:50:36 -04:00
Andre Medeiros f3857e4084 Import directives and struct definitions don't really count as executed code 2018-08-30 13:46:26 -04:00
Andre Medeiros 05dea5844a Fix the way we pass compiler options instead of assuming via the environment 2018-08-30 13:27:18 -04:00