xtend is a small JavaScript utility library for shallowly extending one object with properties from a list of objects, where later properties override earlier ones. It returns a new object without mutating the inputs, and it is useful as a helper for combining objects. The project is marked DEPRECATED and has a stability status of Locked.
Project status
- The upstream repo (Raynos/xtend) is marked as archived, with the last upstream push dated 2020-08-10, indicating it is not actively maintained in the usual sense.
- Update cadence is very infrequent, with the most recent tagged update being v4.0.2 in 2019, and earlier updates spanning years (v4.0.1 in 2015, v4.0.0 in 2014).
AI summary generated Today
Recent updates
v4.0.2
7/8/2019v4.0.2 contains largely non-functional changes: the package version is bumped, license/docs housekeeping is performed, and the build Makefile is removed. The only code-adjacent change is additional unit test coverage specifically targeting prototype pollution behavior for both `extend` and `mutableExtend`.
v4.0.1
11/2/2015Release v4.0.1 contains small internal changes to the xtend implementation and updates tests. The release notes section is empty, so the behavioral impact needs to be inferred from the code diff.
v4.0.0
7/31/2014Release v4.0.0 is published, but no release notes were provided by the publisher. Without documented changes, there is no direct information available to assess new features, breaking changes, bug fixes, security, performance, or migration steps.
v3.0.0
4/14/2014Release v3.0.0 has no accompanying release notes. The code diff shows a small refactor removing an internal null/undefined guard (hasKeys) from both the main extend implementation and the mutable variant, which changes runtime behavior for invalid inputs.
v2.2.0
3/26/2014Release v2.2.0 updates xtend with a small internal refactor and dependency change. It removes the runtime dependency on object-keys and replaces key enumeration logic in both main entry points.
Breakingv2.1.2
1/1/2014Release v2.1.2 updates the package metadata for xtend. The provided code diff shows only changes to package.json (version and keywords), with no functional source code modifications.
v2.1.1
9/4/2013Release v2.1.1 appears to include no functional code changes. The only detected change is an update to the package version in package.json from 2.1.0 to 2.1.1.
v2.1.0
9/4/2013Release v2.1.0 has no published release notes. The code diff shows a small internal refactor in mutable.js that changes how object keys are enumerated, along with dependency version bumps in package.json.
v2.0.6
6/20/2013Release v2.0.6 makes a small internal change to how xtend decides whether a given source argument should be merged into the target. It replaces the external is-object check with a new local predicate in has-keys.js, and updates both index.js and mutable.js to use it.
v2.0.5
6/1/2013Release v2.0.5 was published, but no release notes were provided by the publisher. As a result, this analysis cannot reliably identify new features, breaking changes, bug fixes, or dependency updates from the release documentation alone.