* Ensure the seed phrase reminder is displayed with precedence over the network deprecation message
* Prevent error when attempting to get balance before account info has been fully sete
* Fix implementation of seedphrase-reminder-display-fix
* Prioritize seed phrase reminder notification over portfolio tooltip, and that tooltip over testnet deprecation
* Don't display DetectedTokenSelectionPopover if there are no detected tokens
* adding length greater than 0 check as a 0 is displayed at the end of teh page previously
Co-authored-by: Niranjana Binoy <43930900+NiranjanaBinoy@users.noreply.github.com>
Co-authored-by: ryanml <ryanlanese@gmail.com>
* Ensure New Network Info popup doesn't show when switching to testnets
* Update ui/pages/routes/routes.component.js
Co-authored-by: Alex Donesky <adonesky@gmail.com>
* Fix typo
* Fix isTestNet property name casing
Co-authored-by: Alex Donesky <adonesky@gmail.com>
* Ensure the seed phrase reminder is displayed with precedence over the network deprecation message
* Prevent error when attempting to get balance before account info has been fully sete
* Fix implementation of seedphrase-reminder-display-fix
* Prioritize seed phrase reminder notification over portfolio tooltip, and that tooltip over testnet deprecation
* Don't display DetectedTokenSelectionPopover if there are no detected tokens
* adding length greater than 0 check as a 0 is displayed at the end of teh page previously
Co-authored-by: Niranjana Binoy <43930900+NiranjanaBinoy@users.noreply.github.com>
Co-authored-by: ryanml <ryanlanese@gmail.com>
* Ensure New Network Info popup doesn't show when switching to testnets
* Update ui/pages/routes/routes.component.js
Co-authored-by: Alex Donesky <adonesky@gmail.com>
* Fix typo
* Fix isTestNet property name casing
Co-authored-by: Alex Donesky <adonesky@gmail.com>
* 10.19.0 Changelog - first draft
* Remove non-changelog PRs
* Cleanup by removing uncategorized commits that should not go to the Changelog
* Re-write commit descriptions
* Re-phrasing more descriptions
* Add missing spaces and fix URLs for gridplus
* Flask description updated for snap_getBip44Entropy
Co-authored-by: Frederik Bolding <frederik.bolding@gmail.com>
* Flask description updated for snap_getBip32Entropy
Co-authored-by: Frederik Bolding <frederik.bolding@gmail.com>
* Flask description updated for Dapp triggered Snap updates
Co-authored-by: Frederik Bolding <frederik.bolding@gmail.com>
* Flask description updated for fix permissions
Co-authored-by: Frederik Bolding <frederik.bolding@gmail.com>
* Move to the proper categories Flask PRs
* Remove Snap package update as has no user-facing changes
* Fix Changelog
* Add space after Unreleased
* Add Swaps fix for redirect to Activity tab
* Last PR entries added
Co-authored-by: Frederik Bolding <frederik.bolding@gmail.com>
Environment variables are now considered as higher-precedence than
configuration by our build system. This means that if the same value is
set in `.metamaskrc` and in an environment variable, the environment
variable is what will be used. Previously the reverse was true, the
configuration would take precedence.
It is conventional for CLI tools to consider environment variables as
higher precedence than configuration. This makes our build system less
surprising for most people.
The portfolio URL added in #15407 was meant to be configurable via
environment variable or the `.metamaskrc` file, but that configuration
was broken. Instead the default value was always used.
That configuration has been fixed. The portfolio URL can be set either
by environment variable or configuration file.
We are working on migrating the extension to a unified network
controller, but before we do so we want to extract some of the existing
pieces, specifically `createInfuraClient` and `createJsonRpcClient`,
which provide the majority of the behavior exhibited within the provider
API that the existing NetworkController exposes. This necessitates that
we understand and test that behavior as a whole.
With that in mind, this commit starts with the Infura-specific network
client and adds some initial functional tests for `createInfuraClient`,
specifically covering three pieces of middleware provided by
`eth-json-rpc-middleware`: `createNetworkAndChainIdMiddleware`,
`createBlockCacheMiddleware`, and `createBlockRefMiddleware`.
These tests exercise logic that originate from multiple different places
and combine in sometimes surprising ways, and as a result, understanding
the nature of the tests can be tricky. I've tried to explain the logic
(both of the implementation and the tests) via comments. Additionally,
debugging why a certain test is failing is not the most fun thing in the
world, so to aid with this, I've added some logging to the underlying
packages used when a request passes through the middleware stack.
Because some middleware change the request being made, or make new
requests altogether, this greatly helps to peel back the curtain, as
failures from Nock do not supply much meaningful information on their
own. This logging is disabled by default, but can be activated by
setting `DEBUG=metamask:*,eth-query DEBUG_COLORS=1` alongside the `jest`
command.
We use this logging by bumping `eth-block-tracker`, and
`eth-json-rpc-middleware`.
The portfolio URL added in #15407 was meant to be configurable via
environment variable or the `.metamaskrc` file, but that configuration
was broken. Instead the default value was always used.
That configuration has been fixed. The portfolio URL can be set either
by environment variable or configuration file.
* Update `eth-json-rpc-infura`
The package `eth-json-rpc-infura@5` has been updated to
`@metamask/eth-json-rpc-infura@7`. This update includes TypeScript
support, and it drops support for older node.js versions. The exports
have also been changed from default to named exports.
See here for a full list of changes: https://github.com/MetaMask/eth-json-rpc-infura/blob/main/CHANGELOG.md#700
* Fix LavaMoat policy issue
The `web3` package used by `@metamask/controllers` unintentionally
overwrites the `XMLHttpRequest` global, which breaks things. This was
fixed by revoking `web3`'s write access to that global using a policy
override.
Previously this policy override was applied to `web3`, but for some
unknown reason, this update caused that override to no longer apply.