-
-
Notifications
You must be signed in to change notification settings - Fork 196
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DetectedTokens getting reloaded from allDetectedTokens even after the tokens are imported for a chain and selectedAddress #1015
Conversation
…etNewAllTokensState while updating newAllDetectedTokens
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is it possible to add tests for this?
Code changes look good but +1 to @mcmire point about tests. |
…g sure empty lists are not added just because used switched to an account or network
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
b602a13
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm!
Changelogs: # `announcement-controller` ## [2.0.0] ### Changed - **BREAKING:** Migrate to BaseControllerV2 ([#959](#959)) - The announcement controller now extends `BaseControllerV2` rather than `BaseController`, which includes the following changes: - The constructor now accepts a single "args" object rather than positional parameters. - A restricted controller messenger instance must be passed into the constructor. - The controller configuration has been replaced by an `allAnnouncements` constructor parameter. - The following properties previously inherited from `BaseController` are no longer present: - `defaultConfig` - `defaultState` - `disabled` - `config` - `state` - The following methods previously inherited from `BaseController` are no longer present: - `configure` - `notify` - `subscribe` - `unsubscribe` - `update` - The `name` property is now readonly. # `assets-controllers` ## [3.0.1] ### Changed - Export `isTokenDetectionSupportedForNetwork` function ([#1034](#1034)) - Update `@metamask/contract-metadata` from 1.35.0 to 2.1.0 ([#1013](#1013)) ### Fixed - Fix token controller state updates ([#1015](#1015)) - Attempts to empty the list of "added", "ignored", or "detected" tokens were not saved in state correctly, resulting in that operation being undone after switching account or network.
… tokens are imported for a chain and selectedAddress (#1015)
Changelogs: # `announcement-controller` ## [2.0.0] ### Changed - **BREAKING:** Migrate to BaseControllerV2 ([#959](#959)) - The announcement controller now extends `BaseControllerV2` rather than `BaseController`, which includes the following changes: - The constructor now accepts a single "args" object rather than positional parameters. - A restricted controller messenger instance must be passed into the constructor. - The controller configuration has been replaced by an `allAnnouncements` constructor parameter. - The following properties previously inherited from `BaseController` are no longer present: - `defaultConfig` - `defaultState` - `disabled` - `config` - `state` - The following methods previously inherited from `BaseController` are no longer present: - `configure` - `notify` - `subscribe` - `unsubscribe` - `update` - The `name` property is now readonly. # `assets-controllers` ## [3.0.1] ### Changed - Export `isTokenDetectionSupportedForNetwork` function ([#1034](#1034)) - Update `@metamask/contract-metadata` from 1.35.0 to 2.1.0 ([#1013](#1013)) ### Fixed - Fix token controller state updates ([#1015](#1015)) - Attempts to empty the list of "added", "ignored", or "detected" tokens were not saved in state correctly, resulting in that operation being undone after switching account or network.
… tokens are imported for a chain and selectedAddress (#1015)
Changelogs: # `announcement-controller` ## [2.0.0] ### Changed - **BREAKING:** Migrate to BaseControllerV2 ([#959](#959)) - The announcement controller now extends `BaseControllerV2` rather than `BaseController`, which includes the following changes: - The constructor now accepts a single "args" object rather than positional parameters. - A restricted controller messenger instance must be passed into the constructor. - The controller configuration has been replaced by an `allAnnouncements` constructor parameter. - The following properties previously inherited from `BaseController` are no longer present: - `defaultConfig` - `defaultState` - `disabled` - `config` - `state` - The following methods previously inherited from `BaseController` are no longer present: - `configure` - `notify` - `subscribe` - `unsubscribe` - `update` - The `name` property is now readonly. # `assets-controllers` ## [3.0.1] ### Changed - Export `isTokenDetectionSupportedForNetwork` function ([#1034](#1034)) - Update `@metamask/contract-metadata` from 1.35.0 to 2.1.0 ([#1013](#1013)) ### Fixed - Fix token controller state updates ([#1015](#1015)) - Attempts to empty the list of "added", "ignored", or "detected" tokens were not saved in state correctly, resulting in that operation being undone after switching account or network.
Fixes 16854
When used to import the detectedTokens by calling
addTokens
we should clear thedetectedTokens
andallDetectedTokens[chainId][selectedAddress]
ie entry inallDetectedTokens
for that particular chainId and selectedAddress, otherwise the data from allDetectedTokens getting repopulated/reloaded into thedetectedtokens
when the networkState or preferenceState changes.Edit: upon further inspection, we had to do the same clearing for allTokens and allIgnoredtokens as well.