Back to Explore

pvorb/clone

GitHub
1 watchersOpen source

Last release:

clone is a JavaScript utility for deep cloning values like objects, arrays, numbers, strings, maps, sets, promises, dates, and regular expressions, including recursive cloning and support for circular references. It is useful when you need an independent copy of complex data structures so changes to the original do not affect the clone.

Project status

  • Maintenance status (evidence-based): Tagged npm/GitHub releases with detailed notes appear to have last shipped in 2018, while the GitHub upstream shows an upstream push on 2026-06-21, suggesting some activity but not enough evidence of regular release-based maintenance.
  • Update cadence: Documented updates/releases are sporadic and long-dated (2015 to 2018), with an approximately 8+ year gap between the last listed releases and today (2026-08-13). The 2026-06-21 push indicates recent repository changes, but the release cadence remains unclear.

AI summary generated

AI-generated from public sources. May be inaccurate. Report

Recent updates

  • v1.0.4

    Release v1.0.4 contains a small internal change to the Buffer cloning logic in clone.js, plus a package version bump. No functional feature work or API changes are documented, and no release notes were provided.

  • v2.1.2

    v2.1.2 significantly expands the clone library’s deep-cloning capabilities and updates the README and test suite accordingly. The diff shows added support for cloning ES6 Map, Set, Promise, Error, and Symbol-related properties, plus an added option to include non-enumerable properties. No release notes were provided, so the actual behavioral changes are not documented in the release metadata.

    BreakingSecurityFeatures
  • v1.0.3

    Release v1.0.3 was published on 2017-11-08, but the publisher did not provide any release notes. As a result, the changes included in this version, including any potential breaking changes, bug fixes, or security updates, are not documented here.

  • v2.1.1

    v2.1.1 is a small maintenance release with documentation updates and a change to the core clone implementation around Map, Set, and Promise detection. The functional code change mainly affects how the library checks object types before cloning, which can prevent runtime exceptions in older or nonstandard JavaScript environments.

  • v2.1.0

    The provided GitHub release notes for v2.1.0 are empty, so no behavioral changes are documented by the publisher. The code diff shows several additions to the cloning logic, most notably cloning Errors, changes to how symbol-named and non-enumerable properties are handled, and a new includeNonEnumerable option.

  • v2.0.0

    Release v2.0.0 (notes not provided) significantly extends the clone implementation beyond plain objects and arrays. The core clone logic now detects and clones native Map, Set, Promise, and symbol properties, and it also tightens the depth==0 check to depth===0.

    BreakingFeatures
  • v1.0.2

    Release v1.0.2 includes a refactor of the core deep-clone implementation in clone.js plus test and build configuration updates. The release notes are missing (none provided), so behavior and compatibility changes need to be inferred from the code diff.

    Breaking
  • v1.0.1

    Release v1.0.1 contains no publisher-provided release notes. The only code diff is a package.json update that bumps the package version and slightly tightens the devDependency version range for nodeunit.

  • v1.0.0

    The v1.0.0 release has no publisher-provided release notes, but the code diff shows a significant refactor of the cloning implementation and packaging details. The primary runtime-relevant changes are in clone.js, including a new wrapping/export structure and updated handling of the `circular` argument.

    BreakingFeatures
  • v0.2.0

    Release v0.2.0 was published on 2014-11-26, but no release notes were provided by the publisher. As a result, the available information does not describe any new features, fixes, or breaking changes.