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(normalizeRefinement): remove boolean values passed to _objectSpread in normalizeRefinement #3672

Merged
merged 2 commits into from
Apr 11, 2019

Conversation

tkrugg
Copy link
Contributor

@tkrugg tkrugg commented Apr 9, 2019

Summary

_objectSpread polyfill calls Object.keys() under the hood which on IE11
does not support anything other than objects.

Reason: change in spec

ES5: https://www.ecma-international.org/ecma-262/5.1/#sec-15.2.3.14

If the Type(O) is not Object, throw a TypeError exception.

ES6: https://www.ecma-international.org/ecma-262/6.0/#sec-object.keys

Uses ToObject, which supports booleans

Return a new Boolean object whose [[BooleanData]] internal slot is set to the value of argument. See 19.3 for a description of Boolean objects

Result
No we are avoiding booleans altogether.
Nothing should change. I'll test this out in IE once it's deployed

@algobot
Copy link
Contributor

algobot commented Apr 9, 2019

Deploy preview for instantsearchjs ready!

Built with commit 2beeadb

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

@tkrugg tkrugg force-pushed the fix/normalize-refinements branch from 705887f to b397af8 Compare April 9, 2019 17:01
@tkrugg tkrugg changed the title feat(normalizeRefinement): remove boolean values passed to _objectSpread in normalizeRefinement fix(normalizeRefinement): remove boolean values passed to _objectSpread in normalizeRefinement Apr 9, 2019
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.

Let's merge this if the tests with IE are conclusive.

@algolia algolia deleted a comment from algobot Apr 10, 2019
@Haroenv Haroenv marked this pull request as ready for review April 10, 2019 08:04
…ad in normalizeRefinement

_objectSpread polyfill calls Object.keys() under the hood which on IE11
does not support anything other than objects.

Reason: change in spec

ES5: https://www.ecma-international.org/ecma-262/5.1/#sec-15.2.3.14

> If the Type(O) is not Object, throw a TypeError exception.

ES6: https://www.ecma-international.org/ecma-262/6.0/#sec-object.keys

Uses ToObject, which supports booleans

> Return a new Boolean object whose [[BooleanData]] internal slot is set to the value of argument. See 19.3 for a description of Boolean objects
@francoischalifour francoischalifour merged commit cd64bcf into algolia:develop Apr 11, 2019
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.

6 participants