Skip to content
Permalink
Browse files

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
  • Loading branch information
evertonfraga committed Feb 1, 2017
1 parent 9bf5396 commit 5aa42e69cd5560a2caef3b503171872a35a9180b
Showing with 3,038 additions and 1,323 deletions.
  1. +7 −2 .eslintrc.yml
  2. +1 −0 .mention-bot
  3. +75 −26 .travis.yml
  4. +10 −2 README.md
  5. +4 −5 customProtocols.js
  6. +1 −1 errorPages/400.html
  7. +19 −0 errorPages/404.html
  8. +19 −0 errorPages/500.html
  9. +94 −28 gulpfile.js
  10. +0 −1 interface/client/collections.js
  11. +6 −1 interface/client/lib/helpers/helperFunctions.js
  12. +172 −1 interface/client/lib/signatures.js
  13. +5 −3 interface/client/styles/networkIndicator.import.less
  14. +8 −8 interface/client/styles/popupWindows.import.less
  15. +35 −38 interface/client/templates/popupWindows/onboardingScreen.html
  16. +89 −48 interface/client/templates/popupWindows/onboardingScreen.js
  17. +40 −41 interface/client/templates/popupWindows/sendTransactionConfirmation.html
  18. +8 −9 interface/client/templates/popupWindows/sendTransactionConfirmation.js
  19. +5 −4 interface/client/templates/popupWindows/splashScreen.js
  20. +9 −1 interface/client/templates/views/webview.js
  21. +27 −0 interface/client/templates/webviewEvents.js
  22. +2 −2 interface/i18n/app.nl.i18n.json
  23. +11 −6 interface/i18n/mist.de.i18n.json
  24. +10 −4 interface/i18n/mist.en.i18n.json
  25. +10 −5 interface/i18n/mist.es.i18n.json
  26. +10 −5 interface/i18n/mist.fa.i18n.json
  27. +10 −5 interface/i18n/mist.fr.i18n.json
  28. +10 −5 interface/i18n/mist.it.i18n.json
  29. +10 −5 interface/i18n/mist.ja.i18n.json
  30. +10 −5 interface/i18n/mist.ko.i18n.json
  31. +9 −4 interface/i18n/mist.kr.i18n.json
  32. +10 −5 interface/i18n/mist.nb.i18n.json
  33. +134 −111 interface/i18n/mist.nl.i18n.json
  34. +10 −5 interface/i18n/mist.pt.i18n.json
  35. +20 −11 interface/i18n/mist.ru.i18n.json
  36. +9 −4 interface/i18n/mist.sq.i18n.json
  37. +10 −5 interface/i18n/mist.zh-TW.i18n.json
  38. +10 −5 interface/i18n/mist.zh.i18n.json
  39. +1 −6 main.js
  40. +5 −1 modules/clientBinaryManager.js
  41. +1 −2 modules/db.js
  42. +19 −17 modules/dbSync.js
  43. +5 −4 modules/ethereumNode.js
  44. +3 −2 modules/ipc/dechunker.js
  45. +9 −7 modules/ipc/ipcProviderBackend.js
  46. +8 −3 modules/ipc/methods/eth_sendTransaction.js
  47. +76 −21 modules/ipcCommunicator.js
  48. +31 −9 modules/menuItems.js
  49. +1 −1 modules/nodeSync.js
  50. +1 −1 modules/preloader/browser.js
  51. +5 −4 modules/preloader/include/getFavicon.js
  52. +6 −5 modules/preloader/include/getMetaTags.js
  53. +4 −1 modules/preloader/include/mistAPI.js
  54. +5 −4 modules/preloader/include/openExternal.js
  55. +6 −5 modules/preloader/include/openPopup.js
  56. +28 −22 modules/preloader/mistUI.js
  57. +3 −2 modules/preloader/walletMain.js
  58. +5 −0 modules/settings.js
  59. +3 −4 modules/web3Admin.js
  60. +33 −26 package.json
  61. +51 −0 scripts/Locate.nsh
  62. +256 −0 scripts/MoveFileFolder.nsh
  63. BIN scripts/SimpleFC.dll
  64. BIN scripts/ZipDLL.dll
  65. BIN scripts/locate.dll
  66. +269 −0 scripts/windows-installer.nsi
  67. +417 −0 scripts/zipdll.nsh
  68. +208 −69 tests/_base.js
  69. +10 −0 tests/fixtures/fixture-popup.html
  70. +11 −0 tests/fixtures/index.html
  71. +8 −0 tests/fixtures/page-01.html
  72. +230 −0 tests/mist/basic.test.js
  73. +10 −1 tests/mocha-in-browser/spec/general-spec.js
  74. +7 −6 tests/wallet/basic.test.js
  75. +374 −689 yarn.lock
@@ -7,7 +7,6 @@ settings:
import/core-modules: ## don't lint for these missing packages in package.json
- electron ## 'electron' is only needed as devDependency / global installation


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

globals: # don't warn about missing declarations
i18n: true
@@ -1,4 +1,5 @@
{
"actions": ["labeled"],
"withLabel": "please review",
"maxReviewers": 3,
"numFilesToCheck": 5,
@@ -1,40 +1,89 @@
sudo: required
dist: trusty

language: node_js
node_js: 6

cache:
yarn: true
sudo: required

branches:
only:
- develop
- master

matrix:
include:

# WINDOWS cross-built from linux
- os: linux
dist: trusty
node_js: 6
env:
- GULP_PLATFORM=win
addons:
apt:
packages:
- icnsutils
- graphicsmagick
- xz-utils
- nsis
sources:
- mono
before_install:
- sudo dpkg --add-architecture i386 && sudo add-apt-repository ppa:ubuntu-wine/ppa -y
- sudo apt-get update -q
- sudo apt-get install --no-install-recommends -y mono-devel ca-certificates-mono wine1.8
after_script:
- makensis -V2 scripts/windows-installer.nsi


addons:
apt:
packages:
- icnsutils
- graphicsmagick
- xz-utils
- gcc-multilib
- g++-multilib

before_script:
- export DISPLAY=:99.0
- sh -e /etc/init.d/xvfb start
- curl https://install.meteor.com/ | sh
- npm install -g meteor-build-client
# LINUX
- os: linux
dist: trusty
node_js: 6
env:
- GULP_PLATFORM=linux
addons:
apt:
packages:
- icnsutils
- graphicsmagick
- xz-utils
- gcc-multilib
- g++-multilib

# MAC
- os: osx
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)
node_js: 6
env:
- GULP_PLATFORM=mac
before_install:
- npm install -g yarn # macOS xcode8 image doesn't natively support yarn yet

allow_failures:
- os: osx

fast_finish: true

cache:
yarn: true

install:
- PATH=$PATH:$HOME/.meteor && curl -L https://raw.githubusercontent.com/arunoda/travis-ci-meteor-packages/master/configure.sh | /bin/sh
- yarn global add gulp-cli meteor-build-client
- yarn

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

after_success:
- gulp mist-checksums --platform $GULP_PLATFORM
- if [[ $TRAVIS_BRANCH == "master" ]]; then gulp wallet-checksums --platform $GULP_PLATFORM; fi

notifications:
email:
- EMAIL
webhooks:
urls:
- YOUR_WEBHOOK_URL
on_success: change # options: [always|never|change] default: always
- https://webhooks.gitter.im/e/33972d9e627a142c57a6
on_success: change
on_failure: always
on_start: never
@@ -42,7 +42,7 @@ To run mist in development you need [Node.js NPM](https://nodejs.org) and [Meteo
$ npm install -g electron@1.3.13
$ npm install -g gulp

And some futher tools to help with downloading and unzipping client nodes:
And some further tools to help with downloading and unzipping client nodes:

_Linux:_

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

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

**As of [#972](https://github.com/ethereum/mist/pull/972) we've updated the build process and thus need to redo code-signing.**


## Testing

First make sure to build Mist with:
`gulp mist --platform [mac,linux]` or `gulp wallet --platform [mac,linux]`.

Then run `gulp test-mist` or `gulp test-wallet`, accordingly.
@@ -1,6 +1,4 @@
const electron = require('electron');
const protocol = electron.protocol;
const path = require('path');
const { protocol } = require('electron');


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

callback(call);
}, (error) => {
if (error)
{ console.error('Failed to register protocol'); }
if (error) {
console.error('Failed to register protocol');
}
});


@@ -7,7 +7,7 @@
background-color: #f0f0f0;
color: #ACACAC;
text-shadow: 0 -1px #fff;
font: 20px Helvetica Neue, Arial;
font: 20px Source Sans Pro, Helvetica Neue, Arial;
font-weight: 200;
text-align: center;
padding: 10px;
@@ -0,0 +1,19 @@
<html>
<head>
<title>Error 404</title>
<meta charset="utf-8">
</head>
<body style="
background-color: #f0f0f0;
color: #ACACAC;
text-shadow: 0 -1px #fff;
font: 20px Source Sans Pro, Helvetica Neue, Arial;
font-weight: 200;
text-align: center;
padding: 10px;
padding-top: 100px;
">
<span style="font-size: 80px; font-family: 'Courier New', monospace;">﴾๏๏﴿</span><br><br>
URL not found.
</body>
</html>
@@ -0,0 +1,19 @@
<html>
<head>
<title>Error 500</title>
<meta charset="utf-8">
</head>
<body style="
background-color: #f0f0f0;
color: #ACACAC;
text-shadow: 0 -1px #fff;
font: 20px Source Sans Pro, Helvetica Neue, Arial;
font-weight: 200;
text-align: center;
padding: 10px;
padding-top: 100px;
">
<span style="font-size: 80px; font-family: 'Courier New', monospace;">(ノಠ益ಠ)ノ</span><br><br>
Oops.. Something went wrong!
</body>
</html>

0 comments on commit 5aa42e6

Please sign in to comment.
You can’t perform that action at this time.