object-keys is a JavaScript shim for Object.keys, providing an Object.keys function when it is unavailable. It exports a callable function, and you can use its shim method to install the shim so Object.keys behaves consistently.
Project status
- Maintenance/active work: The source shows a recent GitHub upstream push (2026-03-17), but the published package updates shown in the provided history are from 2019-04-07 or earlier, so ongoing maintenance for consumers appears limited (at least via npm updates).
- Update cadence: After 2019-04-07 (v1.1.1), there are no further documented updates up to today (2026-06-09), indicating a long, quiet period for release/packaged changes.
AI summary generated
Recent updates
v1.1.1
Release v1.1.1 makes a small targeted fix related to Firefox window property handling. It updates the Object.keys shim logic so that specific deprecated Firefox properties related to moz fullscreen are excluded, and aligns the test suite accordingly.
v1.1.0
v1.1.0 refactors the package by moving the full Object.keys polyfill implementation into a new implementation.js entry point and simplifying index.js. It also updates the repository tooling (linting and security checks), and expands CI coverage for additional Node versions. No release notes content was provided by the publisher.
v1.0.12
Version v1.0.12 was released on 2018-06-18, but no release notes were provided by the publisher. As a result, no developer-facing changes, fixes, or migration guidance can be extracted from the provided information.
v1.0.11
v1.0.11 changes the behavior of how this library enumerates keys on `window` (and related host objects) by adjusting an internal `excludedKeys` map. The only code change appears aimed at avoiding reflow side effects, but the release notes provided are empty, so this behavioral change is not explicitly documented there.
v1.0.10
v1.0.10 makes changes to how the library detects “automation equality” issues when iterating over `window` host objects, expanding the set of excluded `window` keys. It also updates dev tooling (lint/security/test scripts, eslint/jscs rules, and CI node matrix) and bumps several dev dependencies.
v1.0.9
v1.0.9 updates the object-keys implementation to treat the $frame property as blacklisted, and adjusts development tooling dependencies. No release notes were provided in the release metadata, so the actual behavioral change relative to v1.0.8 is not documented there.
v1.0.8
v1.0.8 is a patch release that updates the Object.keys polyfill logic to better handle browser automation equality edge cases and to blacklist window.frameElement during host-object inspection. It also updates development tooling (eslint, jscs, tape) and CI matrix coverage.
v1.0.7
v1.0.7 updates the object-keys implementation to better handle browser-specific host object edge cases, particularly around constructor prototype equality checks used to work around IE dontEnum behavior. The repo also updates tests and CI/linting configuration, including a newer eslint version and an expanded Travis matrix.
v1.0.6
v1.0.6 is a small patch release that changes the internal way the library blacklists certain window properties when checking for an automation equality bug. It also includes test adjustments and an ESLint rule configuration tweak. No API surface changes are present in the runtime code.
v1.0.5
Release v1.0.5 was published on 2015-07-03, but no release notes were provided by the publisher. As a result, this release cannot be assessed for API changes, bug fixes, security updates, or migration requirements from the provided information.