Skip to content
This repository was archived by the owner on Sep 5, 2020. It is now read-only.

Commit 5aa42e6

Browse files
authored
Merge develop into master for v0.8.9 (#1632)
* updated solc again * updated solc to 0.4.6 * Update geth to 1.5.5 (#1520) * Update geth to 1.5.5 * corrected windows zip's internal paths * changed sanity check * made node starting better * also log path from which to fetch * show fetching origin URL * fix ESLint errors * removed -stable * fixes the immediate startup issue (#1540) * fixes #1532 (#1534) * [ESLint] autofix 'modules' (#1536) * [ESLint] update customProtocols.js (#1538) * added postinstall step for interface dir (#1546) * [ESLint] update 'scripts' (#1539) * [ESLint] update 'scripts' * add comments to .eslintrc * update paths * update comments * Adding badges for (up|out)dated dependencies (#1525) * Changes to splash screen and onboarding (#1545) * change fast to light * light client * remove '--cache' flag * remove cache * text changes` * changes to onboarding screen * changes to onboarding * ropstein in eth * experimental label` * checking network label position * Theres no I in Ropsten * changes algotithm for displaying * allows app to be ready if no sync is happening * bring changes to splash screen * remove changes from ethereumNode * remove changes from menuItems * speed changes * clean up and add comments * fixes onboarding shapeshift window loading * simplify code * add comments * shows ready to launch when there are less than a 100 blocks * Error pages (#1559) * added not found and crash error page * add source sans * [readme] minor typo * [mistAPI] add 'mist.solidity.version' (#1586) * add 'mist.solidity.version' to mistAPI * Adding tests for in Mist API * fixes (#1600) * add hash and queries to breadcrumb (#1596) * fix offline-startup edge-case (#1571) * NSIS installer (#1499) * Update travis config to new format * fixes * install gulp * fixes * tweaks * use same install & script tasks for all builds * Expand build matrix * tweaks * fixes * try to fix wine installation * Enable mac build * Extend run time to 30 minutes * see if extra dependencies resolves build issue for linwin * Install yarn with npm on osx * linux and windows in one * Add gulp to Mac * Bump timeout to 60 minutes * remove download-signatures from processing / travis tweaks * cleanup * enable gitter notifications * fix bash double ampersand * try to build nsis script * fix nsis verbosity flag * Customized NSIS installer * Fix order of commands * Improve uninstaller * Add logic and movefile plugins * Enable separate DATADIR location * Remove INSTDIR and replace with FILEDIR * Fix compiler warnings about unknown variables * Enforce UAC admin requirement * Move NSI to scripts directory and add plugins * Include version in output filename * Remove duplicate execution level command * Move files from nested folder into main folder * Update shortcut names and params * initial architecture detection + various cleanup * More flexible environment vars * Cleanup * User-selectable location for Mist's data files * Include icon in installation directory * Cleanup * Improve/fix registry entries * Show shortcuts after successful installation * Estimate installation size * Fix removal of start menu shortcuts * Open DATADIR and NODEDATADIR on uninstallation * Handle firewall rules * Disable firewall updates * Include multiple architectures into single installer * Don't allow user to select Mist data directory * Integrate NSIS build into Gulp * Cleanup lint suggestions * Cleanup more lint suggestions * One more linter fix * Remove testnet startmenu entry * Double the estimated installed size * Create desktop shortcut * Delete temporary zips * Store user settings in HKCU for uninstallation * Remove user registry settings on uninstallation * Improved uninstallation to not rely on stack variables * Compute actual program directory size * Cleanup * [travis] various fixes (#1601) * various fixes * disable code-signing on 'develop' * fix yarn on xcode8 image * rectify if statement * comments * improvement * Adjust formatter for addPeer #1543 (#1599) * recreate PR * add fixes * fix [null] * [gulp] new task 'upload-binaries' (to github) (#1578) * add gulp-task 'upload-binaries' * fix ESLint errors * improvements and fixes * switch URLs to ethereum/mist repo * also build wallet if on master branch * make sure all sendTransaction is valid HEX (#1606) * Adding a develop menu option to open Remix IDE (#1608) * Adding browser solidity menu item * Adding i18n keys for Remix menu item * Moving Remix menu option UP * Opening Remix on a separated popup * Changing display name * minor refactor * reverting travis change * Update app.nl.i18n.json (#1609) Dutch translation * adjust content order, feather and window size (#1585) * fix mention-bot (#1587) * Improve importer (#1598) * rename 'presaleFile' IPC actions to generic 'walletFile' * update the import-screen depending on wallet type * leverage ethereum-keyfile-recognizer * update yarn.lock * fix merge relic * [ESLint] * polish * update dependency and fix ESLint * improvements * update menu-label * Dutch translation improved (#1610) * Update mist.nl.i18n.json Dutch translations * Corrected proposed changes for Dutch translations. Capital "E"ther and changed from formal to informal throughout the file. * change window height (#1612) * Allow for operators while parsing 'mist.solidity.version' (#1613) * Allow for operators while parsing 'mist.solidity.version' * minor improvement in regex * Sync Dutch translation file to English + corrections (#1616) * Sync Dutch translations to English + corrections Mostly rearranged the lines to get equal to the English translation file for easier future maintenance. Also did some small spelling corrections and improved a few translations when I matched the Dutch and English files. * Fixed JSON syntax Fixed JSON syntax * Processed suggestions, many thanks! * update i18n files according to english base files (#1618) * [travis] don't wait for mac build on PR check (#1611) * 36 * 37 * [gulp] don't build NSIS installer on 'wallet' task (#1614) * don't build NSIS installer in 'wallet' task * [readme] add 'makensis' to brew install * Bump version string to 0.8.9 (#1626) * Spectron testing suite (#1553) * Spectron iteration * Updating spectron * Creating switch for mist.lokidb for automated tests * Adding chai-as-expected * Changing IPC flag * Pairing spectron and electron versions * [ESLint] Minor fixes * Adding chai-string * Couple of tests passing * update .eslintrc.yml * Simplifying code * Removing delay in favor of better window management * Adding tests for URL bar * Focusing window before each test * Minor fixes * Improving mist setup and teardown * Fixing wallet test * adding html fixture * Improving test helpers * Tests for ETH-01-002 * Updating tests * Starting local HTTP server to deal with html fixtures * Updating tests setup * Adding more tests * Updating travis file to run spectron tests * Refactoring tests * Tests for ETH-01-007 * Downloading geth on the fly * Fine-tuning geth download during tests * Changing linux binary dir * Fixing binary path on linux * Travis debug * Travis debug * Changing fixtures * Fixing tests * Fixing travis file * More tests * Adjusting timeouts * Adjusting GULP_PLATFORM test env variable * Adjusting timeouts * Disabling some tests for now * Disabling a test * Fix raw data display ('0x') in data-less TXs (#1625) * Update dependencies (#1623) * Update dependencies * Updating yarn lock * udpate (#1622) * Cleaner mocha-in-browser test results (#1630) * Removing DavidDM broken badges (#1631) * Update geth to 1.5.5 (#1520) (#1522) (#1633) * updated solc again * updated solc to 0.4.6 * Update geth to 1.5.5 (#1520) * Update geth to 1.5.5 * corrected windows zip's internal paths * changed sanity check * made node starting better * also log path from which to fetch * show fetching origin URL * fix ESLint errors * removed -stable
1 parent 9bf5396 commit 5aa42e6

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

75 files changed

+3038
-1323
lines changed

.eslintrc.yml

+7-2
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ settings:
77
import/core-modules: ## don't lint for these missing packages in package.json
88
- electron ## 'electron' is only needed as devDependency / global installation
99

10-
1110
rules:
1211
# "off" or 0 - turn the rule off
1312
# "warn" or 1 - turn the rule on as a warning (doesn’t affect exit code)
@@ -22,7 +21,13 @@ rules:
2221
no-underscore-dangle: off
2322
comma-dangle:
2423
- error
25-
- only-multiline
24+
- only-multiline ## no comma after last item if one line, though allow comma if multiline
25+
import/no-extraneous-dependencies: ## checks if required modules are missing in packages.json
26+
- error
27+
- devDependencies: ## declares files, whose imports belong to devDependencies
28+
- "**/scripts/build-dist.js"
29+
- "**/tests/_base.js"
30+
- "**/*.test.js"
2631

2732
globals: # don't warn about missing declarations
2833
i18n: true

.mention-bot

+1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
{
2+
"actions": ["labeled"],
23
"withLabel": "please review",
34
"maxReviewers": 3,
45
"numFilesToCheck": 5,

.travis.yml

+75-26
Original file line numberDiff line numberDiff line change
@@ -1,40 +1,89 @@
1-
sudo: required
2-
dist: trusty
3-
41
language: node_js
5-
node_js: 6
6-
7-
cache:
8-
yarn: true
2+
sudo: required
93

104
branches:
115
only:
126
- develop
7+
- master
8+
9+
matrix:
10+
include:
11+
12+
# WINDOWS cross-built from linux
13+
- os: linux
14+
dist: trusty
15+
node_js: 6
16+
env:
17+
- GULP_PLATFORM=win
18+
addons:
19+
apt:
20+
packages:
21+
- icnsutils
22+
- graphicsmagick
23+
- xz-utils
24+
- nsis
25+
sources:
26+
- mono
27+
before_install:
28+
- sudo dpkg --add-architecture i386 && sudo add-apt-repository ppa:ubuntu-wine/ppa -y
29+
- sudo apt-get update -q
30+
- sudo apt-get install --no-install-recommends -y mono-devel ca-certificates-mono wine1.8
31+
after_script:
32+
- makensis -V2 scripts/windows-installer.nsi
33+
1334

14-
addons:
15-
apt:
16-
packages:
17-
- icnsutils
18-
- graphicsmagick
19-
- xz-utils
20-
- gcc-multilib
21-
- g++-multilib
22-
23-
before_script:
24-
- export DISPLAY=:99.0
25-
- sh -e /etc/init.d/xvfb start
26-
- curl https://install.meteor.com/ | sh
27-
- npm install -g meteor-build-client
35+
# LINUX
36+
- os: linux
37+
dist: trusty
38+
node_js: 6
39+
env:
40+
- GULP_PLATFORM=linux
41+
addons:
42+
apt:
43+
packages:
44+
- icnsutils
45+
- graphicsmagick
46+
- xz-utils
47+
- gcc-multilib
48+
- g++-multilib
49+
50+
# MAC
51+
- os: osx
52+
osx_image: xcode8 # currently xcode8.1+ doesn't support electron-builder macOS code-signing (https://github.com/electron-userland/electron-builder/issues/820#issuecomment-267777060)
53+
node_js: 6
54+
env:
55+
- GULP_PLATFORM=mac
56+
before_install:
57+
- npm install -g yarn # macOS xcode8 image doesn't natively support yarn yet
58+
59+
allow_failures:
60+
- os: osx
61+
62+
fast_finish: true
63+
64+
cache:
65+
yarn: true
66+
67+
install:
68+
- PATH=$PATH:$HOME/.meteor && curl -L https://raw.githubusercontent.com/arunoda/travis-ci-meteor-packages/master/configure.sh | /bin/sh
69+
- yarn global add gulp-cli meteor-build-client
70+
- yarn
2871

2972
script:
30-
- npm run ci
73+
- if [[ $TRAVIS_BRANCH != "master" ]]; then unset CSC_LINK CSC_KEY_PASSWORD; fi # disable macOS code-signing (production certificate) on develop branch
74+
- travis_wait 60 gulp mist --platform $GULP_PLATFORM
75+
- if [[ $TRAVIS_BRANCH == "master" ]]; then travis_wait 60 gulp wallet --platform $GULP_PLATFORM; fi # also build wallet if on master branch
76+
- if [[ $TRAVIS_OS_NAME == "linux" ]]; then export DISPLAY=:99.0; sh -e /etc/init.d/xvfb start; sleep 3; fi
77+
- if [[ $GULP_PLATFORM != "win" ]]; then gulp test-mist; fi
78+
79+
after_success:
80+
- gulp mist-checksums --platform $GULP_PLATFORM
81+
- if [[ $TRAVIS_BRANCH == "master" ]]; then gulp wallet-checksums --platform $GULP_PLATFORM; fi
3182

3283
notifications:
33-
email:
34-
- EMAIL
3584
webhooks:
3685
urls:
37-
- YOUR_WEBHOOK_URL
38-
on_success: change # options: [always|never|change] default: always
86+
- https://webhooks.gitter.im/e/33972d9e627a142c57a6
87+
on_success: change
3988
on_failure: always
4089
on_start: never

README.md

+10-2
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ To run mist in development you need [Node.js NPM](https://nodejs.org) and [Meteo
4242
$ npm install -g [email protected]
4343
$ npm install -g gulp
4444

45-
And some futher tools to help with downloading and unzipping client nodes:
45+
And some further tools to help with downloading and unzipping client nodes:
4646

4747
_Linux:_
4848

@@ -154,7 +154,7 @@ Mist normally.
154154
To create a binaries you need to install [`electron-builder` dependencies](https://github.com/electron-userland/electron-builder/wiki/Multi-Platform-Build#macos):
155155

156156
// tools for the windows binaries
157-
$ brew install wine --without-x11 mono
157+
$ brew install wine --without-x11 mono makensis
158158
// tools for the Linux binaries
159159
$ brew install gnu-tar libicns graphicsmagick xz
160160
// general dependencies
@@ -223,3 +223,11 @@ It expects installer/zip files to be in the generated folders e.g. `dist_mist/re
223223
### Code signing for production
224224

225225
**As of [#972](https://github.com/ethereum/mist/pull/972) we've updated the build process and thus need to redo code-signing.**
226+
227+
228+
## Testing
229+
230+
First make sure to build Mist with:
231+
`gulp mist --platform [mac,linux]` or `gulp wallet --platform [mac,linux]`.
232+
233+
Then run `gulp test-mist` or `gulp test-wallet`, accordingly.

customProtocols.js

+4-5
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
1-
const electron = require('electron');
2-
const protocol = electron.protocol;
3-
const path = require('path');
1+
const { protocol } = require('electron');
42

53

64
protocol.registerHttpProtocol('mist', (request, callback) => {
@@ -19,8 +17,9 @@ protocol.registerHttpProtocol('mist', (request, callback) => {
1917

2018
callback(call);
2119
}, (error) => {
22-
if (error)
23-
{ console.error('Failed to register protocol'); }
20+
if (error) {
21+
console.error('Failed to register protocol');
22+
}
2423
});
2524

2625

errorPages/400.html

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
background-color: #f0f0f0;
88
color: #ACACAC;
99
text-shadow: 0 -1px #fff;
10-
font: 20px Helvetica Neue, Arial;
10+
font: 20px Source Sans Pro, Helvetica Neue, Arial;
1111
font-weight: 200;
1212
text-align: center;
1313
padding: 10px;

errorPages/404.html

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
<html>
2+
<head>
3+
<title>Error 404</title>
4+
<meta charset="utf-8">
5+
</head>
6+
<body style="
7+
background-color: #f0f0f0;
8+
color: #ACACAC;
9+
text-shadow: 0 -1px #fff;
10+
font: 20px Source Sans Pro, Helvetica Neue, Arial;
11+
font-weight: 200;
12+
text-align: center;
13+
padding: 10px;
14+
padding-top: 100px;
15+
">
16+
<span style="font-size: 80px; font-family: 'Courier New', monospace;">﴾๏๏﴿</span><br><br>
17+
URL not found.
18+
</body>
19+
</html>

errorPages/500.html

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
<html>
2+
<head>
3+
<title>Error 500</title>
4+
<meta charset="utf-8">
5+
</head>
6+
<body style="
7+
background-color: #f0f0f0;
8+
color: #ACACAC;
9+
text-shadow: 0 -1px #fff;
10+
font: 20px Source Sans Pro, Helvetica Neue, Arial;
11+
font-weight: 200;
12+
text-align: center;
13+
padding: 10px;
14+
padding-top: 100px;
15+
">
16+
<span style="font-size: 80px; font-family: 'Courier New', monospace;">(ノಠ益ಠ)ノ</span><br><br>
17+
Oops.. Something went wrong!
18+
</body>
19+
</html>

0 commit comments

Comments
 (0)