Unverified Commit 040d1e03 authored by Amaury Martiny's avatar Amaury Martiny Committed by GitHub
Browse files

Merge pull request #125 from paritytech/am-kovan

Run kovan by default
parents bb9449cd 1997434f
......@@ -22,6 +22,10 @@ if (process.defaultApp !== true) {
cli
.version(version)
.allowUnknownOption()
.option(
'--chain',
'The network to connect to, can be one of "foundation", "kovan" or "ropsten". (default: "kovan")'
)
.option(
'--no-run-parity',
`${productName} will not attempt to run the locally installed parity.`
......
......@@ -59,7 +59,9 @@ function createWindow () {
)
.then(() =>
// Run parity when installed
runParity(err => handleError(err, 'An error occured with Parity.'))
runParity(['--light', '--chain', cli.chain || 'kovan'], err =>
handleError(err, 'An error occured with Parity.')
)
)
.then(() => {
// Notify the renderers
......
......@@ -11,10 +11,8 @@ import App from './App';
import rootStore from './stores';
import './index.css';
// Show debug logs in dev environment
if (process.env.NODE_ENV === 'development') {
window.localStorage.debug = 'fether*'; // https://github.com/visionmedia/debug#browser-support
}
// Show debug logs
window.localStorage.debug = 'fether*'; // https://github.com/visionmedia/debug#browser-support
ReactDOM.render(
<Provider {...rootStore}>
......
......@@ -5,8 +5,11 @@
import { action, observable } from 'mobx';
import Debug from '../utils/debug';
import parityStore from './parityStore';
const debug = Debug('createAccountStore');
export class CreateAccountStore {
@observable address = null;
@observable isImport = false; // Are we creating a new account, or importing via phrase?
......@@ -22,10 +25,12 @@ export class CreateAccountStore {
}
generateNewAccount = () => {
debug('Generating new account.');
return parityStore.api.parity.generateSecretPhrase().then(this.setPhrase);
};
saveAccountToParity = password => {
debug('Saving account to Parity.');
return parityStore.api.parity
.newAccountFromPhrase(this.phrase, password)
.then(() =>
......
......@@ -12,7 +12,7 @@ import store from 'store';
import Debug from '../utils/debug';
import LS_PREFIX from './utils/lsPrefix';
const debug = Debug('sendStore');
const debug = Debug('parityStore');
const electron = isElectron() ? window.require('electron') : null;
const LS_KEY = `${LS_PREFIX}::secureToken`;
......@@ -64,6 +64,7 @@ export class ParityStore {
defaultPort}`;
}
debug(`Connecting to ${provider}.`);
const api = new Api(
new Api.Provider.Ws(
provider,
......@@ -78,8 +79,8 @@ export class ParityStore {
this.api = api;
// TODO This is not working
// api.on('connected', () => ...);
// api.on('disconnected', () => ...);
// api.on('connected', () => this.setIsApiConnected(true));
// api.on('disconnected', () => this.setIsApiConnected(false));
// So instead, we poll every 1s
setInterval(() => {
this.setIsApiConnected(api.isConnected);
......@@ -90,6 +91,7 @@ export class ParityStore {
const { ipcRenderer } = electron;
// Request new token from Electron
debug('Requesting new token.');
ipcRenderer.send('asynchronous-message', 'signer-new-token');
ipcRenderer.once('asynchronous-reply', (_, token) => {
if (!token) {
......@@ -111,7 +113,7 @@ export class ParityStore {
if (isApiConnected === this.isApiConnected) {
return;
}
debug(`Api is now ${isApiConnected ? 'connected' : 'disconnected'}.`);
this.isApiConnected = isApiConnected;
};
......@@ -135,6 +137,7 @@ export class ParityStore {
return;
}
debug(`Setting token in localStorage.`);
this.token = token;
// If we receive a new token, then we try to connect to the Api with this
......
......@@ -57,13 +57,14 @@ Returns the path to the Parity path inside Electron's `userData` folder, even if
Resolves to `true` if Parity is currently running, or to `false` if not.
#### `runParity(onParityError: Function): Promise<Null>`
#### `runParity(additionalFlags: Array<String>, onParityError: Function): Promise<Null>`
Spawns a child process to run Parity. If some `cli` flags are passed into the options in `parityElectron`, then those flags will be passed down to Parity itself.
| Option | Type | Description |
| --------------- | ---------- | ------------------------------------------------------------------ |
| `onParityError` | `Function` | Callback with `error` as argument when Parity encounters an error. |
| Option | Type | Description |
| ----------------- | --------------- | --------------------------------------------------------------------------------------------- |
| `additionalFlasg` | `Array<String>` | Addtional flags to pass to Parity, listed as an array, to be passed to `child_process.spawn`. |
| `onParityError` | `Function` | Callback with `error` as argument when Parity encounters an error. |
#### `killParity(): Promise<Null>`
......
......@@ -26,7 +26,7 @@ const catchableErrors = [
'IO error: While lock file:'
];
export const runParity = async onParityError => {
export const runParity = async (additionalFlags, onParityError) => {
// Do not run parity with --no-run-parity
if (cli.runParity === false) {
return;
......@@ -50,7 +50,7 @@ export const runParity = async onParityError => {
let logLastLine; // Always contains last line of the Parity logs
// Run an instance of parity with the correct args
const args = [...parityArgv(), '--light'];
const args = [...parityArgv(), ...additionalFlags];
parity = spawn(parityPath, args);
logger()('@parity/electron:main')(logCommand(parityPath, args));
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment