Skip to content
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

fix(RoutingManager): avoid stale uiState #3630

Merged
merged 8 commits into from
Apr 1, 2019

Conversation

samouss
Copy link
Contributor

@samouss samouss commented Mar 28, 2019

Summary

Closes #3497

This PR aims to fix the issue related to the stale uiState inside the RoutingManager (see the issue for more information). Previously the state was only captured at the creation of the manager and never updated. Now we update it each time an update occurs (state change, router update). It means that now once a widget is added/removed the lifecycle read the up to date uiState.

Before

before

After

after

@samouss samouss requested a review from a team March 28, 2019 11:09
@algobot
Copy link
Contributor

algobot commented Mar 28, 2019

Deploy preview for instantsearchjs ready!

Built with commit f55cf1c

https://deploy-preview-3630--instantsearchjs.netlify.com

Copy link
Contributor

@Haroenv Haroenv left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This seems valid to me (fixes a bug, and nothing to remark on the code, fully tested)

Copy link
Member

@francoischalifour francoischalifour left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it's safe enough not to consider this as a breaking change.

src/lib/__tests__/RoutingManager-test.js Outdated Show resolved Hide resolved
@samouss samouss force-pushed the fix/routing-staled-ui-state branch from 149f50f to f55cf1c Compare April 1, 2019 12:34
@samouss samouss merged commit e1588aa into develop Apr 1, 2019
@samouss samouss deleted the fix/routing-staled-ui-state branch April 1, 2019 12:38
francoischalifour added a commit that referenced this pull request Apr 11, 2019
# [3.3.0](v3.2.1...v3.3.0) (2019-04-11)

### Bug Fixes

* **connectQueryRules:** improve tracked refinement type ([#3648](#3648)) ([e16ad57](e16ad57))
* **currentRefinements:** don't rely on  ([#3672](#3672)) ([cd64bcf](cd64bcf))
* **queryRuleCustomData:** add default template ([#3650](#3650)) ([83e9eaa](83e9eaa))
* **QueryRuleCustomData:** pass data as object to templates ([#3647](#3647)) ([b8f8b4e](b8f8b4e))
* **queryRules:** fix types and stories ([#3670](#3670)) ([ba6e2e6](ba6e2e6))
* **routing:** apply windowTitle on first load ([#3669](#3669)) ([d553502](d553502)), closes [#3667](#3667)
* **routing:** support parsing URLs with up to 100 refinements ([#3671](#3671)) ([6ddcfb6](6ddcfb6))
* **RoutingManager:** avoid stale uiState ([#3630](#3630)) ([e1588aa](e1588aa))
* **types:** improve InstantSearch types ([#3651](#3651)) ([db9b91e](db9b91e))
* **ua:** Update the User-Agent to use the new format ([#3616](#3616)) ([ab84c57](ab84c57))

### Features

* **infiniteHits:** add previous button ([#3645](#3645)) ([2c9e38d](2c9e38d))
* **queryRules:** add connectQueryRules connector ([#3597](#3597)) ([924cd99](924cd99)), closes [#3599](#3599) [#3600](#3600)
* **queryRules:** add context features to Query Rules ([#3617](#3617)) ([922879e](922879e)), closes [#3602](#3602)

### Reverts

* feat(infiniteHits): add previous button ([214c0fc](214c0fc))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[RoutingManager]: getConfiguration uses a staled uiState
4 participants