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

Regression: Object.keys() no longer works on List objects in Chrome #80

Closed
appden opened this issue Oct 21, 2015 · 1 comment
Closed
Assignees
Labels

Comments

@appden
Copy link
Contributor

appden commented Oct 21, 2015

This was broken by f2c4e78. It's important to have working because React Native ListViewDataSource relies on Object.keys, and therefore our example app no longer works when debugging it in Chrome. Unfortunately, I can't figure out a way to continue to use Object.preventExtensions (so that we throw exceptions on setting out-of-bounds indices) and have Object.keys work properly with List.

Until a eureka moment strikes me, I propose that we back out that commit and helpfully throw an exception when setting to list[-1] and list[list.length] in Chrome.

@appden appden self-assigned this Oct 21, 2015
@appden appden added the P1 label Oct 21, 2015
@alazier
Copy link
Contributor

alazier commented Oct 21, 2015

We should definitely add a test for Object.keys since we seem to rely on it.

Backing out for the time being seems fine.

appden added a commit that referenced this issue Oct 21, 2015
Rather than using Object.preventExtensions to throw exceptions when setting any out-of-bounds index, we must instead compromise by only throwing for the common cases, which are -1 and list.length. Having Object.keys() support is essential for List to work with React Native ListViewDataSource.

Resolves #80
@appden appden removed the P1 label Oct 21, 2015
alazier pushed a commit that referenced this issue Jun 14, 2016
Add backlink property support functionality
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Mar 17, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

2 participants