1
0
mirror of https://github.com/kremalicious/metamask-extension.git synced 2024-12-02 06:07:06 +01:00
Commit Graph

9352 Commits

Author SHA1 Message Date
Dan J Miller
009bf802f7 Fix recipient field of approve screen (#7171) 2019-09-16 19:42:14 -03:00
Mark Stacey
94318d8b28 Replace undefined selectedAddress with null (#7161)
* Replace `undefined` selectedAddress with `null`

The `runtime.Port.postMessage` API will drop keys with a value of
`undefined` on Chrome, but not on Firefox. This was a problem for the
`publicConfig` stream, which passed the key `selectedAddress` with the
value of `undefined` to communicate to dapps that the user had logged
out.

Instead a `null` is now passed for `selectedAddress` upon logout, which
is correctly sent by the `runtime.Port.postMessage` API on both Chrome
and Firefox.

closes #7101
closes #7109

* Update `metamask-inpage-provider` to v3.0.0

The v3.0.0 update includes a change to the `accountsChanged` event. The
event will now emit an empty array instead of an array with `undefined`
or `null`.

The previous behavior was to emit `[undefined]`. The previous commit
would have changed that to `[null]` anyway, so we figured if we're
going to make a public-facing change to the event anyway we should
change it to be correct. `[undefined]` was never intended, and it
technically violates EIP-1193, which states that the `accountsChanged`
event should emit an array of strings.
2019-09-13 11:53:08 -03:00
Mark Stacey
c80deaa1b8 Add polyfill for AbortController (#7157)
The AbortController is used in both the background and the UI. Support
for AbortController was added to Chrome in version 66, which is above
our minimum supported version.

I did consider increasing the minimum Chrome version to 66, but we have
a decent number of users still on Chrome 65 unfortunately.
2019-09-13 11:52:57 -03:00
Mark Stacey
da4119339b Set minimum Firefox version to v56.2 to support Waterfox (#7156)
The minimum compatible version of Firefox has been lowered from `60.0`
to `56.2`. It was originally set to `60.0` because that is Firefox ESR,
which currently the minimum Firefox version with security updates.
However Waterfox is based upon Firefox `56.0`, and has backported
security fixes from the ESR release.

This change in minimum version requires no additional transpiling, and
doesn't affect any browser APIs we use.

It does introduce one additional warning in the `addon-linter` about
Firefox for Android `56` lacking support for browser action popups.
However there is no version `56.2` of Firefox for Android, so the
minimum version remains `57` in practice (which does support browser
action popups).
2019-09-13 11:45:33 -03:00
Mark Stacey
da1d506de1 Merge remote-tracking branch 'origin/master' into Version-v7.2.0
* origin/master:
  Allow dismissing privacy mode from popup
  Add changelog
  Version v7.1.1
2019-09-11 12:08:17 -03:00
Mark Stacey
41305b6616 Publish GitHub release from master branch (#7136)
* Publish GitHub release from master branch

This ensures that changes made on `develop` since branching for the
release are not included. It also ensures that the final release
sourcemaps line-up correctly (they were always build on master)`.

* Consolidate publish jobs

The jobs `job-publish-release` and `create_github_release` both handle
different parts of publishing a release. They have been consolidated
into a single `job-publish-release` job.

* Update release script to expect a merge commit

The release script was originally written to be run on `develop`, so it
expected the current commit to be a result of `Squash & Merge`. Now
that it's run on `master`, it will generally be run against a merge
commit.

The version is now extracted from the commit message using a regular
expression that should work on all version of Bash v3+, and should be
tolerant of both merge commits and `Squash & Merge` commits.

* Target `master` with release PR

`master` is now targeted by the release PR instead of `develop`, as
the release has to be created from the master branch.

The update to `develop` is handled after the release by a PR from
`master` to `develop`, which is created automatically after the
release.
2019-09-11 11:50:53 -03:00
Mark Stacey
8524d17d2d Update the changelog for v7.1.1 (#7145)
Due to a mistake in the release scripts, there were a few changes
accidentally included in the v7.1.1 release. This updates the changelog
to include those changes.
2019-09-11 11:50:40 -03:00
kumavis
d10d345e5c build - replace gulp-uglify-es with gulp-terser-js 2019-09-11 11:50:31 -03:00
MetaMask Bot
c1994ccf36 Version v7.2.0 2019-09-10 03:07:14 +00:00
Dan Miller
f9a10c2091 Update changelog with 7.2.0 changes 2019-09-10 00:35:54 -02:30
Sunghee Lee
869c83fd2c Fix network-form block explorer URL validation (#7137) 2019-09-09 23:51:05 -03:00
Dan J Miller
7af902e500
Make chainId available in the metamask-inpage-provider (#7110)
* Make chainId available in the metamask-inpage-provider

* Update metamask-inpage-provider to 2.1.0

* Add e2e tests for ethereum.on events

* Move chainId constants to lib/enums.js

* Don't use new chainId enums in createInfuraClient

* Fix app/scripts/lib/select-chain-id.js
2019-09-09 22:01:34 -02:30
Mark Stacey
0ffee10f19
Prevent invalid inline speed-ups (#7085)
Speeding up anything but the pending transaction with the lowest nonce
is ineffectual, as the transaction with the lowest nonce blocks the
others from completing first. The inline speed-up button in the
transaction activity log has been removed for these invalid cases.

The button will show up in the activity log for the pending transaction
with the lowest nonce, but not for the others.

Closes #6844
2019-09-09 16:59:00 -03:00
dependabot[bot]
0dd273b3e5 Bump mixin-deep from 1.3.1 to 1.3.2 (#7132)
Bumps [mixin-deep](https://github.com/jonschlinkert/mixin-deep) from 1.3.1 to 1.3.2.
- [Release notes](https://github.com/jonschlinkert/mixin-deep/releases)
- [Commits](https://github.com/jonschlinkert/mixin-deep/compare/1.3.1...1.3.2)

Signed-off-by: dependabot[bot] <support@github.com>
2019-09-09 15:42:44 -04:00
dependabot[bot]
a65c546a89 Bump lodash-es from 4.17.4 to 4.17.15 (#7131)
Bumps [lodash-es](https://github.com/lodash/lodash) from 4.17.4 to 4.17.15.
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.17.4...4.17.15)

Signed-off-by: dependabot[bot] <support@github.com>
2019-09-09 15:41:39 -04:00
dependabot[bot]
9c91cb9a7b Bump eslint-utils from 1.3.1 to 1.4.2 (#7130)
Bumps [eslint-utils](https://github.com/mysticatea/eslint-utils) from 1.3.1 to 1.4.2.
- [Release notes](https://github.com/mysticatea/eslint-utils/releases)
- [Commits](https://github.com/mysticatea/eslint-utils/compare/v1.3.1...v1.4.2)

Signed-off-by: dependabot[bot] <support@github.com>
2019-09-09 15:41:14 -04:00
dependabot[bot]
c81b0a9d2e Bump nwmatcher from 1.4.3 to 1.4.4 (#7129)
Bumps [nwmatcher](https://github.com/dperini/nwmatcher) from 1.4.3 to 1.4.4.
- [Release notes](https://github.com/dperini/nwmatcher/releases)
- [Commits](https://github.com/dperini/nwmatcher/commits)

Signed-off-by: dependabot[bot] <support@github.com>
2019-09-09 15:40:59 -04:00
Whymarrh Whitby
0422930575
Bump eth-json-rpc-middleware dependency (#7128)
* Update eth-json-rpc-middleware to @^4.2.0

* Resolve all eth-json-rpc-middleware to 4.2.0
2019-09-09 14:53:13 -04:00
Whymarrh Whitby
67f6857fce
nvm: Update to v10.16.3 (#7127) 2019-09-09 14:19:39 -04:00
kumavis
0dad4db8de build - dont create bundler until task is actually run (#7117) 2019-09-09 10:44:08 -03:00
Mark Stacey
5363d6aa2a
Prevent multiple warnings for the same locale message (#7091)
* Prevent multiple warnings for the same locale message

Our i18n helper issues warnings whenever a requested message is
missing. These warnings are helpful in assisting translation efforts,
but they can be distracting otherwise. They're especially problematic
for locales that are missing many messages. My browser ended up
crashing on more than one occasion due to the sheer volume of warnings.

The warning has been updated to only be issued once per missing key.
This required updating the method to pass in the current locale. The
current locale was added to the warning itself as well, which could be
helpful for cases where a message is missing in both the current locale
and the fallback ('en').

* Change locale and localeMessages as single action

Updating the current locale and the locale messages resulted in two
renders, and during the first the state was inconsistent (it would say
the locale had changed to the new one, but still be using the old set
of locale messages). Instead the locale is now updated with one atomic
action.

This was required after adding the locale to the missing locale message
warning, as otherwise it would say the message was missing from the
wrong locale.
2019-09-06 10:47:07 -03:00
Dan Finlay
8a1887d9df
Merge pull request #7113 from Gudahtt/remove-duplicate-keys
Remove duplicate keys in `ru` locale
2019-09-05 10:54:08 -07:00
Mark Stacey
2672ae7e66 Remove duplicate keys in ru locale
These were accidentally introduced recently as two separate updates to
the `ru` locale were merged. They added these keys in different places,
so they didn't conflict.
2019-09-05 14:24:34 -03:00
Brian R. Bondy
93204a578b Update localization from Transifex Brave order (#7099)
* Add extra locales to index.json

* Fix verify locale script bugs

- All locales didn't work because it was putting an object inside of an object.
- Individual checks didn't work because of how the destructuring was done.
- Extra items were being printed as missing items.

* Sync up string changes w/ Brave wallet

* Add 33 new locales from Brave wallet

* Merge tml into ta code
2019-09-05 14:05:33 -03:00
Mark Stacey
1e7b37d1cc
Combine fetch-with-timeout implementations (#7084)
There were two competing utility functions for calling fetch with a
timeout. They have been combined into one.
2019-09-04 17:00:11 -03:00
Mark Stacey
3e9d247d4b
Fix fetch-with-cache (#7083)
The `fetch-with-cache` utility was failing to actually cache anything.
It would cache an object with cache time and URL, and would return that
instead of a valid response. This resulted in the error:
`TypeError: fourByteResponse.json is not a function`

The utility was updated to call `.json()` within itself, and cache the
JSON response. The function signature was updated as well, to expect an
options object instead of just the `cacheRefreshTime` option. The
timeout was added to this options object, which helped with testing.

The utility method now also handles unsuccessfull responses, and
incompatible `fetch` options.
2019-09-04 16:10:23 -03:00
Denis
622c3e482f Added missed phrases to RU locale (got from en locale) (#7012)
Co-Authored-By: Dmitriy Ryajov <dryajov@gmail.com>
2019-09-04 13:51:03 -04:00
Dan Finlay
09866269bf
Merge pull request #7102 from Gudahtt/fix-persian-locale-indentation
Fix indentation of the Persian locale
2019-09-03 21:11:47 -07:00
Mark Stacey
86602d8b49 Fix indentation of the Persian locale
It was accidentally merged with 4-space indentation.
2019-09-04 00:53:50 -03:00
Dan Finlay
ab59eafeb1
Merge pull request #7098 from MetaMask/Version-v7.1.1
Version v7.1.1
2019-09-03 12:33:32 -07:00
MetaMask Bot
d5b6409034 Version v7.1.1 RC (#7071) 2019-09-03 16:06:27 -03:00
ehsan01
2bab457442 Persian translation @mapmeld (#6878) 2019-09-03 15:49:07 -03:00
Mark Stacey
d2799f40b6 Allow dismissing privacy mode from popup 2019-09-03 15:41:22 -03:00
Nick Doiron
d589d2dec0 Right-to-left CSS (using module for conversion) (#7072)
* Create RTL stylesheets using `gulp-rtl`

* Handle RTL stylesheet special cases

Certain blocks of Sass  were set to bypass "rtlcss" using ignore
comments. Certain icons had to be flipped 180 degrees.

* Switch stylesheets when locale changes

A second stylesheet has been added to each HTML page for use with
right-to-left locales. It is disabled by default. It is enabled on
startup if a RTL locale is set, and when switching to a RTL locale.
Similarly the LTR stylesheet is disabled when a RTL locale is used.

Unfortunately there is an unpleasant flash of unstyled content when
switching between a LTR and a RTL locale. There is also a slightly
longer page load time when using a RTL locale (<1s difference). We
couldn't think of an easy way to avoid these problems.

* Set `dir="auto"` as default on `TextFields`
2019-09-03 14:47:54 -03:00
Dan Finlay
361a19a850
Merge pull request #7093 from MetaMask/allow-dismissing-privacy-mode-from-popup
Allow dismissing privacy mode from popup
2019-09-03 09:59:34 -07:00
Mark Stacey
3a4b3f5510 Add dismiss button to privacy mode notification 2019-09-01 20:05:33 -03:00
Mark Stacey
bbbf68c8df Allow dismissing the privacy mode notification
The privacy mode notification was not able to be dismissed from the
popup UI. It should have been dismissed after clicking "Learn more",
but that button opens a new tab first before dismissing the flag.
Opening the new tab kills the pop UI process before it has a chance
to set that flag, so it never gets set.

Re-ordering the handler to set the flag first avoids this problem.
2019-09-01 19:59:12 -03:00
Mark Stacey
daa20b4b63
Return after rejecting promise in action (#7079)
* Add missing test descriptions

* Fix async tests that expect a rejection

These tests expected the function under test to return a rejected
promise, and had assertions to be run in the `catch` clause. However,
the tests would still pass if the function didn't reject, with
the assertions never being run.

The tests have been updated to fail if the function doesn't throw.

* Handle ignored promise rejection

In the case where `forceUpdateMetamaskState` rejects, the function
`setSeedPhraseBackedUp` would never resolve. It has been updated to
pass along the rejection instead.

* Return after rejecting promise in action

A few actions would continue after encountering an error, resulting in
errors being compounded. Instead all actions will now return after
encountering an error (which it looks like was the intention in these
cases anyway).
2019-08-31 13:34:27 -03:00
Mark Stacey
0f1edce403
Fix BigNumber conversion error (#7088)
In the case where the block gas limit in the MetaMask state is blank,
an exception is sometimes thrown when that blank value is passed to
`multiplyCurrencies` to be parsed as a hex number.

Instead the minimum gas limit is now used instead whenever the block
gas limit is falsy. This was already being done in one case anyway.
2019-08-31 13:29:31 -03:00
Mark Stacey
87cf0ced13
Fix confirm token transaction amount display (#7081)
The token amount displayed when confirming a token transaction was
wrongly being converted to a string in the container. As a result, the
conversion into the user's preferred currency would fail.

A default value of '0' was added for the token amount as well, to
prevent `undefined` from being rendered as the value. Really the value
should never be undefined, but it was rather difficult to handle that
case without a deeper investigation into how it might occur. The 0
default is consistent with existing rendering logic.
2019-08-31 13:26:49 -03:00
ricky
887b2572f5 Add breadcrumb spacing on Contacts page (#7087) 2019-08-31 13:01:53 -03:00
Mark Stacey
76ef33257e Add changelog 2019-08-29 14:16:14 -03:00
Frankie
f6d25357db
transactions:tx-state-manager - optionally take a function as a search param (#7078) 2019-08-29 14:57:28 +02:00
MetaMask Bot
4b905ffe39 Version v7.1.1 2019-08-27 03:37:09 +00:00
Thomas Huang
b8e69369d5
Merge pull request #7068 from MetaMask/Average-Gas-Button
Get and set average gas price button estimation as default
2019-08-26 11:57:44 -07:00
Thomas
302c815309 Get and set average gas price button estimation as default 2019-08-26 10:30:39 -07:00
Dan Finlay
3f1229ce80
Merge pull request #7066 from MetaMask/Version-v7.1.0
Version 7.1.0
2019-08-26 09:16:57 -07:00
Erik Marks
4e29fb97d6
Remove Babel 6 from internal dependencies (#7037)
remove babel@6 from internal deps

update internal deps to latest published versions
2019-08-26 10:07:44 -06:00
Erik Marks
2306dbd75e Fix undefined tx id error (#7053)
Also delete unused function
2019-08-26 09:04:48 -03:00
Dan Finlay
fe2d053435
Merge pull request #7059 from MetaMask/Gas-Estimation-Api
Remove blockscale, replace with ethgasstation
2019-08-22 15:23:22 -07:00