UNPKG

deepmerge-plus

Version:

A library for deep (recursive) merging of Javascript objects

420 lines (269 loc) 32.9 kB
# Change Log All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. ## 3.0.1 (2023-09-25) ### BREAKING CHANGES * update code ### 🔖 Miscellaneous * . ([7372934](https://github.com/bluelovers/deepmerge/commit/7372934b3255cc767ad8c8b6994be84449b54f34)) * update code ([0f529be](https://github.com/bluelovers/deepmerge/commit/0f529be79f7d243859dc384130e184286f72c0f2)) * . ([684a395](https://github.com/bluelovers/deepmerge/commit/684a395ce1310878ffaa6afb7a88dd84b9249da4)) * . ([02e6cf8](https://github.com/bluelovers/deepmerge/commit/02e6cf878a23b5bd5daf9e1dc6ceb324f725ea69)) * update .npmignore ([051ebde](https://github.com/bluelovers/deepmerge/commit/051ebde0059b9cd05157101b852e56bc245ba5c2)) * . ([a2a8e79](https://github.com/bluelovers/deepmerge/commit/a2a8e79b44397c203e4c8017e709abaa5ad38bae)) * 防止 webpack 產生錯誤 ([64267e0](https://github.com/bluelovers/deepmerge/commit/64267e01f6703f2ba39a24b1a4e8cfb6d4392131)) * . ([b112e70](https://github.com/bluelovers/deepmerge/commit/b112e7067183c320fb15022dc18e8f8f6c719f34)) * mocha for idea support ([46bc44a](https://github.com/bluelovers/deepmerge/commit/46bc44a5a0231c120d0158ce9fca7ab8b9d3cc93)) * bugfix ([3167fdd](https://github.com/bluelovers/deepmerge/commit/3167fdde751e5df66e542ee3df0b7ad51153f77e)) * options.keyValueOrMode ([b5383f2](https://github.com/bluelovers/deepmerge/commit/b5383f2c6e3115b06bec3b9c0b79652e7aeac7aa)) * update demo ([86b9e99](https://github.com/bluelovers/deepmerge/commit/86b9e9948edb84572fd87ed32fc0e47261753d16)) * update demo ([442b028](https://github.com/bluelovers/deepmerge/commit/442b0287aa29470e2523a8e4da80faa50deff743)) * add tests ([5dcecee](https://github.com/bluelovers/deepmerge/commit/5dcecee48bad9707cb2ca1792b13bd67a2ffa265)) * customIsMergeableObject(value, isMergeable, optionsArgument?, key?) ([83cca64](https://github.com/bluelovers/deepmerge/commit/83cca647e853f66376337e5eb38cee5184a50d67)) * . ([e9342bd](https://github.com/bluelovers/deepmerge/commit/e9342bd19c638f0ef679a82eb716c3f60169172c)) * . ([bb5b57d](https://github.com/bluelovers/deepmerge/commit/bb5b57dd0722c0f940b89a2ecf6cbe2663995d7d)) * . ([e8ba958](https://github.com/bluelovers/deepmerge/commit/e8ba9587f17838242c106016c6b7ec6de978c9e8)) * . ([16ec25b](https://github.com/bluelovers/deepmerge/commit/16ec25b9be178965bda65edca2a4ed8e23143e03)) * fix ([9c1f0a9](https://github.com/bluelovers/deepmerge/commit/9c1f0a90eaee32069980a8a37baa01d1e76aa10c)) * options.isMergeableObject = function(value, optionsArgument, key) ([b48c24f](https://github.com/bluelovers/deepmerge/commit/b48c24f49bf6182089577bc6a9fd9b0b688d611f)) ## 2.0.1 "🔖 Miscellaneous" (2017-11-01) ### 🔖 Miscellaneous * 2.0.1 ([3ab89f2](https://github.com/bluelovers/deepmerge/commit/3ab89f2d2c938fc2e045c4ba822da0ffb81e4891)) * Adding 2.0.1 to changelog ([40709a1](https://github.com/bluelovers/deepmerge/commit/40709a12151a225d384a7da8de18d81bfeba506b)) * Fixing insignificant whitespace ([6b57cc9](https://github.com/bluelovers/deepmerge/commit/6b57cc9c84fbdb60b061e417acf00e62f11fb060)) * Fix the old array merge algorithm to not try to clone when it shouldn't ([e5ad65f](https://github.com/bluelovers/deepmerge/commit/e5ad65f126ba33c662ed31ec27bca292cf6a49c5)) * Fix the oldArrayMerge example ([a6a41cf](https://github.com/bluelovers/deepmerge/commit/a6a41cf422df9019f525fc3daefc6c9edf84cdcd)), closes [#83](https://github.com/bluelovers/deepmerge/issues/83) * Add an explicit note about array merging change ([a69a151](https://github.com/bluelovers/deepmerge/commit/a69a151ba981b98a2b6a4a00c8152255fa3e2ce5)) * Adding a "check out 2.0.0 changes" link to readme ([d140772](https://github.com/bluelovers/deepmerge/commit/d1407729749158fce54db5f3cba6aa02aed34896)) # 2.0.0 "🔖 Miscellaneous" (2017-10-09) ### 🔖 Miscellaneous * 2.0.0 ([db34d2f](https://github.com/bluelovers/deepmerge/commit/db34d2f781d6385ab77cf3791a43942188d8c582)) * Simplify the arrayMerge example to involve less distracting assertions ([d87eb96](https://github.com/bluelovers/deepmerge/commit/d87eb960cf330ff39bacceb97fd7d2c8623c2a78)) * Update changelog for 2.0.0 ([494d019](https://github.com/bluelovers/deepmerge/commit/494d019fdd46a6c53dee88d9aae72705704c2cb6)) * Update the byte counts thanks to my leet golf skillz ([ea8524b](https://github.com/bluelovers/deepmerge/commit/ea8524ba8b58c885dd798c2f8e17f62618de2463)) * Simplify "was clone specified" logic ([4fdce6a](https://github.com/bluelovers/deepmerge/commit/4fdce6a72fccd4fe196c9b27d3e65ade10fd3932)) * Removing outdated line about how child objects weren't cloned by default ([48dc381](https://github.com/bluelovers/deepmerge/commit/48dc3815d1fc5e74df3db4ca6c855f3488bc6a0f)) * Update the byte sizes ([55c1aa7](https://github.com/bluelovers/deepmerge/commit/55c1aa7eb9eeb7574edc0c69425a50297645ead7)) * Remove arrow function ([635e795](https://github.com/bluelovers/deepmerge/commit/635e795fe8bc3189c3ea32bb4b018106065e592e)) * Update the readme for version 2 ([93688b2](https://github.com/bluelovers/deepmerge/commit/93688b2ec00193ac8d724c193e30231fd6012c41)) * Handle an empty array too, why not ([970a26e](https://github.com/bluelovers/deepmerge/commit/970a26e1dc01f4519b1e6e9554dad099e432be01)), closes [#71](https://github.com/bluelovers/deepmerge/issues/71) * Allow calling merge.all with only one element ([bdc290b](https://github.com/bluelovers/deepmerge/commit/bdc290bae02e2732fa3a0d08098a8dc555a2e960)), closes [#71](https://github.com/bluelovers/deepmerge/issues/71) * Test the new readme filename ([7559f45](https://github.com/bluelovers/deepmerge/commit/7559f45597b20359653565c874fa0137d0fb4ce5)) * README.markdown -> readme.md ([e021528](https://github.com/bluelovers/deepmerge/commit/e0215286163c5ae6b11f387d5f97606891fc0a99)) * Switch the default array to concatenation instead of the complicated thing ([9005f24](https://github.com/bluelovers/deepmerge/commit/9005f24040fed7f79c790e6b7eb954d0771a8984)) * Drop the CJS dist ([1159ffb](https://github.com/bluelovers/deepmerge/commit/1159ffb67696c7fc318b6cbaf5e72d3b49c1ff34)) * Default to cloning ([307b908](https://github.com/bluelovers/deepmerge/commit/307b9086707632d8441a6abf87bc4fd63b81040e)) ## 1.5.2 "🔖 Miscellaneous" (2017-09-21) ### ♻️ Chores * update rollup's config options for v0.49.3 ([f779b7a](https://github.com/bluelovers/deepmerge/commit/f779b7a8d1350c2f4757715b22792fa957721d5d)) * update rollup to v0.49.3 & plugin-commonjs to v8.2.1 ([5710262](https://github.com/bluelovers/deepmerge/commit/57102625667d79ec0c88eb3dca806bf081903ae1)) ### 🔖 Miscellaneous * 1.5.2 ([94a59c4](https://github.com/bluelovers/deepmerge/commit/94a59c4a11e21462a6d281bf8b1b13d2d5512c4f)) * Changelog for 1.5.2 ([a07f7f5](https://github.com/bluelovers/deepmerge/commit/a07f7f59a9b723198981d5306a64991ddb24a9fb)) * Bump is-mergeable-object dependency to 1.1.0 ([6c207fa](https://github.com/bluelovers/deepmerge/commit/6c207fa82c53215da5b67b1313cb28eb750af4d6)), closes [#76](https://github.com/bluelovers/deepmerge/issues/76) * Add a note about the "version 2" issue ([eac7729](https://github.com/bluelovers/deepmerge/commit/eac7729301b64bff9ecb049716b16bff8409b7d4)) * Adding a note about how to avoid merging arrays (#70) ([3ef80c1](https://github.com/bluelovers/deepmerge/commit/3ef80c1994c33bf9549e29e9923f00b951b6bec8)), closes [#70](https://github.com/bluelovers/deepmerge/issues/70) [/github.com/KyleAMathews/deepmerge/issues/24#issuecomment-322996001](https://github.com//github.com/KyleAMathews/deepmerge/issues/24/issues/issuecomment-322996001) ## 1.5.1 "🔖 Miscellaneous" (2017-08-15) ### 🔖 Miscellaneous * 1.5.1 ([e66e9b3](https://github.com/bluelovers/deepmerge/commit/e66e9b3345eb9a94774cbae8105ca5a019a13d91)) * wtf package-lock ([ecef66e](https://github.com/bluelovers/deepmerge/commit/ecef66e3cf6262ba729992095a149991a086d409)) * Noting the bower-dropping in the changelog ([30e42c0](https://github.com/bluelovers/deepmerge/commit/30e42c0f5db4228a0fc65c01b33fa7b72ec50e99)) * Removing bower.json ([18d5239](https://github.com/bluelovers/deepmerge/commit/18d5239855caad046d74528df28c1ff027f54c5b)), closes [#63](https://github.com/bluelovers/deepmerge/issues/63) # 1.5.0 "🔖 Miscellaneous" (2017-07-06) ### 🔖 Miscellaneous * 1.5.0 ([67974d9](https://github.com/bluelovers/deepmerge/commit/67974d9230bdbfe84508d34e2fb369f035cb28ab)) * Changelog for 1.5.0 ([26f4f78](https://github.com/bluelovers/deepmerge/commit/26f4f78bb7d8888ed189cf8e9df012c2d3031d60)) * Drop node 0.10 and 0.12 from Travis tests ([b8881fe](https://github.com/bluelovers/deepmerge/commit/b8881fee400bed9e51d1003869cf194b3f338d5f)), closes [#64](https://github.com/bluelovers/deepmerge/issues/64) * Stop objects from being merged into arrays ([6217e9d](https://github.com/bluelovers/deepmerge/commit/6217e9d5c7b9dbb6c875aa3e8501de3427e7832d)), closes [#65](https://github.com/bluelovers/deepmerge/issues/65) * Autoformatting ([3821aac](https://github.com/bluelovers/deepmerge/commit/3821aac95f2cc11c528cfccbd2a57bf6c6e42a5a)) * Failing test for #65 ([7cb6d67](https://github.com/bluelovers/deepmerge/commit/7cb6d672d786b5b1508e077a133288cce82c99d5)), closes [#65](https://github.com/bluelovers/deepmerge/issues/65) ## 1.4.4 "🔖 Miscellaneous" (2017-06-19) ### 🔖 Miscellaneous * 1.4.4 ([9cf7945](https://github.com/bluelovers/deepmerge/commit/9cf79450e2213a812777fbced357ee6f03b59676)) * Updating "main" in bower.json ([8d19b56](https://github.com/bluelovers/deepmerge/commit/8d19b56e4ad4fbae90d9b73bca4de009b33921fd)), closes [#63](https://github.com/bluelovers/deepmerge/issues/63) * Add node 8 to travis testing ([8c7c4d5](https://github.com/bluelovers/deepmerge/commit/8c7c4d5c9e6926e0656c953e5978c828b056c8a0)) * const -> var in the rollup config file ([a833a18](https://github.com/bluelovers/deepmerge/commit/a833a183da60b8a4095adefc8a2a8f219455ffb1)) ## 1.4.3 "🔖 Miscellaneous" (2017-06-14) ### 🔖 Miscellaneous * 1.4.3 ([9ec020d](https://github.com/bluelovers/deepmerge/commit/9ec020d24237b5fdeb6d5d0e0139df716325d4dd)) * Updating changelog for 1.4.3 ([a488e14](https://github.com/bluelovers/deepmerge/commit/a488e14b03f3934b7f46916f3bc67a95da4b1fca)) * Inline is-mergeable-object in the CJS build, too ([0b34e6e](https://github.com/bluelovers/deepmerge/commit/0b34e6e95f989f2fc8091d25f0d291c08f3d2d24)) ## 1.4.2 "🔖 Miscellaneous" (2017-06-14) ### 🔖 Miscellaneous * 1.4.2 ([1e016af](https://github.com/bluelovers/deepmerge/commit/1e016af897b2f9067fff506130890bbff59a7197)) * Updating changelog with 1.4.0 through 1.4.2 ([399318c](https://github.com/bluelovers/deepmerge/commit/399318c370a59218f7440b8dc73d3325ff3d90da)) * Bump is-mergeable-object dependency ([5906c76](https://github.com/bluelovers/deepmerge/commit/5906c765d691d48e83d76efbb0d4b9ca150dc12c)) ## 1.4.1 "🔖 Miscellaneous" (2017-06-13) ### 🔖 Miscellaneous * 1.4.1 ([ff54d84](https://github.com/bluelovers/deepmerge/commit/ff54d84d80a3947b7dbe439b748663e76592991c)) * Updating the unpkg link to go directly to the umd build ([acc45be](https://github.com/bluelovers/deepmerge/commit/acc45be85519c1df906a72ecb24764b622d18d47)) # 1.4.0 "🔖 Miscellaneous" (2017-06-13) ### 🔖 Miscellaneous * 1.4.0 ([c946f0e](https://github.com/bluelovers/deepmerge/commit/c946f0eed727b20efc545838b8082cb5319ee2aa)) * Adding package-lock.json ([89bc1d9](https://github.com/bluelovers/deepmerge/commit/89bc1d9f4650f238b053fa08675e497bdbecad0f)) * Fixing some test jank ([5cb5782](https://github.com/bluelovers/deepmerge/commit/5cb5782d4c109bcb7b7f0ebae670a992aa05fad4)) * Build ESM/UMD builds with Rollup ([3f9c2fb](https://github.com/bluelovers/deepmerge/commit/3f9c2fb21def87321267b131f7aa1c279632d01e)), closes [#58](https://github.com/bluelovers/deepmerge/issues/58) [#61](https://github.com/bluelovers/deepmerge/issues/61) * Add missing `want` word in documentation ([fae2752](https://github.com/bluelovers/deepmerge/commit/fae2752aeee569b06af3f3ce2218c7f631558d29)) ## 1.3.2 "🔖 Miscellaneous" (2017-01-27) ### 🔖 Miscellaneous * 1.3.2 ([bac0e9f](https://github.com/bluelovers/deepmerge/commit/bac0e9ffe72e3fda82608527a463bda5e2eae4b5)) * Update with releases 1.3.0 - 1.3.2 ([e651e74](https://github.com/bluelovers/deepmerge/commit/e651e74acad2c0aff95eaa2278791891be3b2420)) * MDN-style formatting on JavaScript blocks ([60efb50](https://github.com/bluelovers/deepmerge/commit/60efb50cff1b71e83fde75941c528b109c335a09)) * add info about source code file size ([c49a5c9](https://github.com/bluelovers/deepmerge/commit/c49a5c924e481f5f3630f44d0358f1ebdfce5a85)) ## 1.3.1 "🔖 Miscellaneous" (2016-12-03) ### 🔖 Miscellaneous * 1.3.1 ([bfc85d8](https://github.com/bluelovers/deepmerge/commit/bfc85d8795ef397521353691c0ba23da34710bd0)) * Make jsmd check the arrayMerge arguements ([f6a9584](https://github.com/bluelovers/deepmerge/commit/f6a958443225625a39e5ea44f15ee647b1bff4a6)) * Improve options section of the readme ([3dba5cc](https://github.com/bluelovers/deepmerge/commit/3dba5cc5bdb3d9e53cbdbec0afcfaacb6ca27c2e)) # 1.3.0 "🔖 Miscellaneous" (2016-11-12) ### 🔖 Miscellaneous * 1.3.0 ([ca9c3d9](https://github.com/bluelovers/deepmerge/commit/ca9c3d94d9452de576482ff013da915b706f54a9)) * Adding documentation for merge.all ([3b6a17c](https://github.com/bluelovers/deepmerge/commit/3b6a17c622e5c8590bae588be5c149f6d0d886ad)) * fix incostintent indentation – move to 4 spaces ([e3f4b23](https://github.com/bluelovers/deepmerge/commit/e3f4b236ebbac8d3bf2c96e145d26ed24e317766)) * add deep merge implementation for arrays of values ([2195ebf](https://github.com/bluelovers/deepmerge/commit/2195ebfde8014364e19ff476d8205c3896652e30)) * fix test for clone check ([52f108f](https://github.com/bluelovers/deepmerge/commit/52f108fc221b7eb1040ef1592ecbfe4707225d4e)) * add tests for checking functionality of merge.all ([5792c52](https://github.com/bluelovers/deepmerge/commit/5792c52ad82ceb4774e73963d69b22eadfb2eba0)) * add tests for invoking merge.all ([6082ebf](https://github.com/bluelovers/deepmerge/commit/6082ebf11f2f9560641f7378cc15661c44fbb83b)) * Adding a maintenance pull request I forgot to 1.2.0 ([eae827d](https://github.com/bluelovers/deepmerge/commit/eae827d90e9e07704a750d165623d6d1e0124d2e)) # 1.2.0 "🔖 Miscellaneous" (2016-10-14) ### 🔖 Miscellaneous * 1.2.0 ([65fe6df](https://github.com/bluelovers/deepmerge/commit/65fe6df6118f393315f1b74e9e6acf51c20dd5ad)) * Adding 1.2.0 to the changelog ([c3acc02](https://github.com/bluelovers/deepmerge/commit/c3acc027d4659854990d3921c176413d6cfe1c26)) * Rearranging the "options" section slightly ([a88ddc3](https://github.com/bluelovers/deepmerge/commit/a88ddc320d277331ad49295f84e6c203e368cc2c)) * Fix array clone case ([3014a8c](https://github.com/bluelovers/deepmerge/commit/3014a8c21d95f7149af19936af4ad8477ea92852)), closes [/github.com/KyleAMathews/deepmerge/pull/44#issuecomment-253238515](https://github.com//github.com/KyleAMathews/deepmerge/pull/44/issues/issuecomment-253238515) * Failing test for a clone array case ([c3d4464](https://github.com/bluelovers/deepmerge/commit/c3d4464cd9d9e55fb568b7fbdd963fc70165f14c)) * Refactoring a common cloning pattern out into its own function ([7f6b371](https://github.com/bluelovers/deepmerge/commit/7f6b371843fae733e8c2d094be531c7e0da09d79)) * Dropping defunct testing-related directories from gitignore ([a983bbe](https://github.com/bluelovers/deepmerge/commit/a983bbe4435ea24e8e79765a60b2e5a2cbede2e3)) * Adding an npmignore file that ignores tests ([af00278](https://github.com/bluelovers/deepmerge/commit/af00278c929141ca998f01537a0d1625d2e29195)) * clone option test cases improved ([a4942bb](https://github.com/bluelovers/deepmerge/commit/a4942bbf7546b028bec462ae3558d0cf87bc2f65)) * Clone option rechecked and corrected ([9516eb4](https://github.com/bluelovers/deepmerge/commit/9516eb441ca40d55850531134e4bb25e38556056)) * Add option to clone source and target. Fixes #28 issue. ([50514f8](https://github.com/bluelovers/deepmerge/commit/50514f83065324c840e174fec9a0d8fcf09c1271)), closes [#28](https://github.com/bluelovers/deepmerge/issues/28) ## 1.1.1 "🔖 Miscellaneous" (2016-10-12) ### 🔖 Miscellaneous * 1.1.1 ([a8853cd](https://github.com/bluelovers/deepmerge/commit/a8853cde1651f0500368020411ea63514e11e99c)) * Add 1.1.1 to changelog ([f37b29e](https://github.com/bluelovers/deepmerge/commit/f37b29ef434e731cfc9fb51f64b154c5dcbee59d)) * Few more array-overwrites-everything tests for super-defensiveness ([befc599](https://github.com/bluelovers/deepmerge/commit/befc599d484560fba536c6d9b4d7b59a05efb6cc)) * Make arrays overwrite all non-array objects ([0145d49](https://github.com/bluelovers/deepmerge/commit/0145d49202b7648a7bc01e046479501bf728bb19)), closes [#36](https://github.com/bluelovers/deepmerge/issues/36) * add test for replacing objects with arrays ([f1256dd](https://github.com/bluelovers/deepmerge/commit/f1256dd82df6a1263410f3e23381e504af228bef)) * Assert "property that exists but has undefined value" more explicitly ([104659a](https://github.com/bluelovers/deepmerge/commit/104659acb8eba86df005d10933d38b5462c50555)), closes [/github.com/KyleAMathews/deepmerge/pull/43#issuecomment-250764881](https://github.com//github.com/KyleAMathews/deepmerge/pull/43/issues/issuecomment-250764881) * Added test case for undefined overwriting stuff ([6fa39c5](https://github.com/bluelovers/deepmerge/commit/6fa39c504f8f667f9fb0bb285952580b189c0261)) # 1.1.0 "🔖 Miscellaneous" (2016-09-29) ### 🔖 Miscellaneous * 1.1.0 ([4edd3c7](https://github.com/bluelovers/deepmerge/commit/4edd3c75808ddfb4225a050cdf3e9cb359ee1ace)) * Changelog update for 1.1.0 ([9ff9e6e](https://github.com/bluelovers/deepmerge/commit/9ff9e6eb2a60dae80567c4c887b3fe9f15ec7db3)) * Update supported node engines to 0.10+ ([3fbb524](https://github.com/bluelovers/deepmerge/commit/3fbb524284cd594c0d97ea67e902a69289e06d78)) * Allow custom array merging strategies ([d34ab12](https://github.com/bluelovers/deepmerge/commit/d34ab1236ce00ea4a8d71bfaa025ceee7243ff87)), closes [#14](https://github.com/bluelovers/deepmerge/issues/14) [#20](https://github.com/bluelovers/deepmerge/issues/20) [#21](https://github.com/bluelovers/deepmerge/issues/21) [#22](https://github.com/bluelovers/deepmerge/issues/22) [#24](https://github.com/bluelovers/deepmerge/issues/24) [#32](https://github.com/bluelovers/deepmerge/issues/32) * killing acronyms and simplifying "if" check ([242ea0f](https://github.com/bluelovers/deepmerge/commit/242ea0f184117700c531edcaed7261c1036044f3)) ## 1.0.3 "🔖 Miscellaneous" (2016-09-29) ### 🔖 Miscellaneous * 1.0.3 ([9e8e757](https://github.com/bluelovers/deepmerge/commit/9e8e757d199c8e09963210e70082c9208380721f)) * Updating changelog for 1.0.3 ([d3ead9e](https://github.com/bluelovers/deepmerge/commit/d3ead9e432b5d5e4ad9cca80782dfe926a4ff145)) * Update to the current version of tap ([6eee0cb](https://github.com/bluelovers/deepmerge/commit/6eee0cbad16c35dd8729c7a7dd605f0b80b47602)) * package.json: add keywords, update git references ([bc3898e](https://github.com/bluelovers/deepmerge/commit/bc3898e587a56f74591328f40f656b0152c1d5eb)) * Re-adding bower.json without the version ([f9a149d](https://github.com/bluelovers/deepmerge/commit/f9a149dc2b36f8acb45107d9f193bd984690d64d)), closes [#38](https://github.com/bluelovers/deepmerge/issues/38) ## 1.0.2 "🔖 Miscellaneous" (2016-09-27) ### 🔖 Miscellaneous * 1.0.2 ([6c02da4](https://github.com/bluelovers/deepmerge/commit/6c02da42d894c76fe280ac55817b56f42a33f6f2)) * Updating changelog for 1.0.2 ([f5c79b0](https://github.com/bluelovers/deepmerge/commit/f5c79b0c5ebea4de9c73e470ecbd482aaca22b98)) * Readme maintenance + tests ([7102fcc](https://github.com/bluelovers/deepmerge/commit/7102fcc4ddec11e2d33205866f9f18df14e5aeb5)) * Small refactors for clarity ([4f57a2d](https://github.com/bluelovers/deepmerge/commit/4f57a2d8c10741ab797914dceeb19e1bc33e4f16)) ## 1.0.1 "🔖 Miscellaneous" (2016-09-27) ### 🔖 Miscellaneous * 1.0.1 ([3c6738f](https://github.com/bluelovers/deepmerge/commit/3c6738f916bf7650f6dfa2eab10018faa4cdcb6b)) * Updating changelog for 1.0.1 ([e64d3bc](https://github.com/bluelovers/deepmerge/commit/e64d3bcff324f3795b1e04bba13a1fd69039fc04)) * Adding .travis.yml for CI testing ([137b37b](https://github.com/bluelovers/deepmerge/commit/137b37b26854bb2352cd791c9b1ce54d954ba4f6)) * Fixes some special-object-in-array cases ([ef1c6ba](https://github.com/bluelovers/deepmerge/commit/ef1c6bac8350ba12a24966f0bc7da02560827586)), closes [#18](https://github.com/bluelovers/deepmerge/issues/18) [#23](https://github.com/bluelovers/deepmerge/issues/23) [#31](https://github.com/bluelovers/deepmerge/issues/31) * Adding changelog, bumping version to 1.0.0 ([0989bc4](https://github.com/bluelovers/deepmerge/commit/0989bc45a7b9d9b8976fcdb74c6dd42bd1e6a7e6)), closes [#15](https://github.com/bluelovers/deepmerge/issues/15) * Dropping bower ([0af299a](https://github.com/bluelovers/deepmerge/commit/0af299a2bf9be7e55904c4a7af0b38ce0bc92415)) * Merge date values like primitives ([a2f722b](https://github.com/bluelovers/deepmerge/commit/a2f722b2a6c9880f439c8e45e02526cd81c4a211)), closes [#31](https://github.com/bluelovers/deepmerge/issues/31) * Properly handle regular expression values like primitives ([bac64a6](https://github.com/bluelovers/deepmerge/commit/bac64a6409a83cd013a23dba5c9430dbaa7336a8)), closes [#23](https://github.com/bluelovers/deepmerge/issues/23) * Add license to package.json ([ba270a8](https://github.com/bluelovers/deepmerge/commit/ba270a880c4132ce1763beceb6ebd5cec176882e)) * Resolve an issue when null is in an array ([689504d](https://github.com/bluelovers/deepmerge/commit/689504de41b8ba436c7d9ace3ff6db7fc34e638b)) * Resolve an issue when null is in an array ([228eceb](https://github.com/bluelovers/deepmerge/commit/228eceb33460295aecc05c841a930a04abe4d75c)) * bump version again. last tag failed ([6f64cf6](https://github.com/bluelovers/deepmerge/commit/6f64cf61c0b31d65c1db15b5eb4d8bb1db9c5b9f)) * bumped version number ([d316e4e](https://github.com/bluelovers/deepmerge/commit/d316e4e2616b0326d8953a94ed2220c54941ce67)) * fix for issue #12 ([49cc4ed](https://github.com/bluelovers/deepmerge/commit/49cc4edcaba6749951d7f06f269e594d7bcafa22)), closes [#12](https://github.com/bluelovers/deepmerge/issues/12) * Made license legit ([0a477b3](https://github.com/bluelovers/deepmerge/commit/0a477b3be7c561c9a9accaf72c928c9f082ea79d)) * Add bower.json for browser install. ([7eb740f](https://github.com/bluelovers/deepmerge/commit/7eb740f2de339718a611232188152baea66e0022)) * added version ([3f4e488](https://github.com/bluelovers/deepmerge/commit/3f4e488f00aaebebf8bb8e3d98449c265a03a894)) * added license, bumped version ([caf5372](https://github.com/bluelovers/deepmerge/commit/caf5372dc0e17b091535660f1effe1acd4d9c306)) * bumped version number ([0fa8f3d](https://github.com/bluelovers/deepmerge/commit/0fa8f3d8c4123a0ee77dd984e65178c9834b4a8a)) * merging of arrays of nested objects ([98e8b19](https://github.com/bluelovers/deepmerge/commit/98e8b19640879d5455c7e3a77f7e4bd72f34fb94)) * fixed bug with merging nested objects ([e0e2ff6](https://github.com/bluelovers/deepmerge/commit/e0e2ff61055ee23b5e40efb44041b431841c7320)) * Cleaning ([a143b45](https://github.com/bluelovers/deepmerge/commit/a143b45bdaf342db8c12b2927448bc4f60b1b8a3)) * Fix example ([e01a5b2](https://github.com/bluelovers/deepmerge/commit/e01a5b2015e2b439d3853762b394310c00363ec9)) * Fix output ([48f3773](https://github.com/bluelovers/deepmerge/commit/48f3773cc0fd890edb39ae7a8b1ff56d432bdc9d)) * Bad bad english ([e3ac31d](https://github.com/bluelovers/deepmerge/commit/e3ac31d8d12b16e343e80888e0447b4f872b4f85)) * Bump version 0.2.4 ([bf85c33](https://github.com/bluelovers/deepmerge/commit/bf85c333efa3d58dc3e17807ffbcf0395ad1c0b4)) * Add some doc to array merging, add a more complex example ([5e682f0](https://github.com/bluelovers/deepmerge/commit/5e682f04ffe4a5cf6624ca48582f401464183573)) * Set back indent to 4 spaces as @substack did, remove trailing `;`, `,` .. ([d236097](https://github.com/bluelovers/deepmerge/commit/d2360972718604685639b80f3aaa52e9f5b55f0a)) * Merging array of objects ([9180a6d](https://github.com/bluelovers/deepmerge/commit/9180a6d0116f3189ce7f71e3745bd6bbd48071b9)) * Bump version 0.2.3 ([e9633aa](https://github.com/bluelovers/deepmerge/commit/e9633aad6a18fa6c8751fc7e29529d82c68d1f2e)) * Fix array merge, add tests ([8bfdc39](https://github.com/bluelovers/deepmerge/commit/8bfdc39ad317614f6f7cbe10b2b2ed92e72ba712)) * bump version ([1eb45c8](https://github.com/bluelovers/deepmerge/commit/1eb45c82233acec881c3884ddd8ec879af26f1c6)) * Add array merge ([b9fa2d0](https://github.com/bluelovers/deepmerge/commit/b9fa2d0b075b328238b94467051714ab03fc53a2)) * removed unnecessary Makefile ([787e863](https://github.com/bluelovers/deepmerge/commit/787e8635d47ae873c9815b8f7376ebcb9cf30bcf)) * incremented version # ([0708efd](https://github.com/bluelovers/deepmerge/commit/0708efd41904dcf58c41371bc7c49f93c4624ba9)) * removed spec directory. was not correclty moved in pull request ([f914236](https://github.com/bluelovers/deepmerge/commit/f914236d5a789e84f11026a87eba9056fa1d9f60)) * documentation and an example ([5970d95](https://github.com/bluelovers/deepmerge/commit/5970d95e867fc6a00da5351e9230a9d0d9a7fc54)) * more passing immutability checks ([d0fce9a](https://github.com/bluelovers/deepmerge/commit/d0fce9a2d4f16da7a8964dbe4ffc753936926cee)) * immutable interface tests all pass ([a4583b1](https://github.com/bluelovers/deepmerge/commit/a4583b18e3b6507a1267c698c4216673a84e063d)) * failing test because merge should be immutable ([0e0bb94](https://github.com/bluelovers/deepmerge/commit/0e0bb94eb7f31c2a7d403f8aec418327cb87eeee)) * no more coffee ([72ab7b2](https://github.com/bluelovers/deepmerge/commit/72ab7b2ff24b238eb01e25c3c7ec1284edcb5574)) * using typeof and get rid of cakefile noise ([208997b](https://github.com/bluelovers/deepmerge/commit/208997bc530245d84c61e57c347afc9adf9f9a6b)) * replaced Cakefile with Makefile. replaced jasmine-node with mocha and should ([5c95f13](https://github.com/bluelovers/deepmerge/commit/5c95f137a8de190407332a045b4d326a101a7e83)) * get rid of broken jasmine in favor of tap ([dd54f29](https://github.com/bluelovers/deepmerge/commit/dd54f2943f7e15ea0c0bf4fd25e54f830e098689)) * updated package info ([2ede3f0](https://github.com/bluelovers/deepmerge/commit/2ede3f091359bfbd67321e80df1dea63a7b63309)) * finished tests ([8916dbc](https://github.com/bluelovers/deepmerge/commit/8916dbc516f5c077ca6a555a942211778173a305)) * tests are passing. need 1 more test case ([ae76744](https://github.com/bluelovers/deepmerge/commit/ae767447c5eca24e90f1df0dee047c8e7936ee0f)) * implemented merge. created placeholder test ([589de32](https://github.com/bluelovers/deepmerge/commit/589de32719e1a57a2ca346badc9097dde108aed8)) * initial commit ([828ad22](https://github.com/bluelovers/deepmerge/commit/828ad224bc659f919237a5d5444cb6c880904d5b)) # [2.0.1](https://github.com/KyleAMathews/deepmerge/releases/tag/v2.0.1) - documentation: fix the old array merge algorithm in the readme. [#84](https://github.com/KyleAMathews/deepmerge/pull/84) # [2.0.0](https://github.com/KyleAMathews/deepmerge/releases/tag/v2.0.0) - breaking: the array merge algorithm has changed from a complicated thing to `target.concat(source).map(element => cloneUnlessOtherwiseSpecified(element, optionsArgument))` - breaking: The `clone` option now defaults to `true` - feature: `merge.all` now accepts an array of any size, even 0 or 1 elements See [pull request 77](https://github.com/KyleAMathews/deepmerge/pull/77). # [1.5.2](https://github.com/KyleAMathews/deepmerge/releases/tag/v1.5.2) - fix: no longer attempts to merge React elements [#76](https://github.com/KyleAMathews/deepmerge/issues/76) # [1.5.1](https://github.com/KyleAMathews/deepmerge/releases/tag/v1.5.1) - bower support: officially dropping bower support. If you use bower, please depend on the [unpkg distribution](https://unpkg.com/deepmerge/dist/umd.js). See [#63](https://github.com/KyleAMathews/deepmerge/issues/63) # [1.5.0](https://github.com/KyleAMathews/deepmerge/releases/tag/v1.5.0) - bug fix: merging objects into arrays was allowed, and doesn't make any sense. [#65](https://github.com/KyleAMathews/deepmerge/issues/65) published as a feature release instead of a patch because it is a decent behavior change. # [1.4.4](https://github.com/KyleAMathews/deepmerge/releases/tag/v1.4.4) - bower support: updated `main` in bower.json # [1.4.3](https://github.com/KyleAMathews/deepmerge/releases/tag/v1.4.3) - bower support: inline is-mergeable-object in a new CommonJS build, so that people using both bower and CommonJS can bundle the library [0b34e6](https://github.com/KyleAMathews/deepmerge/commit/0b34e6e95f989f2fc8091d25f0d291c08f3d2d24) # [1.4.2](https://github.com/KyleAMathews/deepmerge/releases/tag/v1.4.2) - performance: bump is-mergeable-object dependency version for a slight performance improvement [5906c7](https://github.com/KyleAMathews/deepmerge/commit/5906c765d691d48e83d76efbb0d4b9ca150dc12c) # [1.4.1](https://github.com/KyleAMathews/deepmerge/releases/tag/v1.4.1) - documentation: fix unpkg link [acc45b](https://github.com/KyleAMathews/deepmerge/commit/acc45be85519c1df906a72ecb24764b622d18d47) # [1.4.0](https://github.com/KyleAMathews/deepmerge/releases/tag/v1.4.0) - api: instead of only exporting a UMD module, expose a UMD module with `pkg.main`, a CJS module with `pkg.browser`, and an ES module with `pkg.module` [#62](https://github.com/KyleAMathews/deepmerge/pull/62) # [1.3.2](https://github.com/KyleAMathews/deepmerge/releases/tag/v1.3.2) - documentation: note the minified/gzipped file sizes [56](https://github.com/KyleAMathews/deepmerge/pull/56) - documentation: make data structures more readable in merge example: pull request [57](https://github.com/KyleAMathews/deepmerge/pull/57) # [1.3.1](https://github.com/KyleAMathews/deepmerge/releases/tag/v1.3.1) - documentation: clarify and test some array merging documentation: pull request [51](https://github.com/KyleAMathews/deepmerge/pull/51) # [1.3.0](https://github.com/KyleAMathews/deepmerge/releases/tag/v1.3.0) - feature: `merge.all`, a merge function that merges any number of objects: pull request [50](https://github.com/KyleAMathews/deepmerge/pull/50) # [1.2.0](https://github.com/KyleAMathews/deepmerge/releases/tag/v1.2.0) - fix: an error that would be thrown when an array would be merged onto a truthy non-array value: pull request [46](https://github.com/KyleAMathews/deepmerge/pull/46) - feature: the ability to clone: Issue [28](https://github.com/KyleAMathews/deepmerge/issues/28), pull requests [44](https://github.com/KyleAMathews/deepmerge/pull/44) and [48](https://github.com/KyleAMathews/deepmerge/pull/48) - maintenance: added tests + travis to `.npmignore`: pull request [47](https://github.com/KyleAMathews/deepmerge/pull/47) # [1.1.1](https://github.com/KyleAMathews/deepmerge/releases/tag/v1.1.1) - fix an issue where an error was thrown when merging an array onto a non-array: [Pull request 46](https://github.com/KyleAMathews/deepmerge/pull/46) # [1.1.0](https://github.com/KyleAMathews/deepmerge/releases/tag/v1.1.0) - allow consumers to specify their own array merging algorithm: [Pull request 37](https://github.com/KyleAMathews/deepmerge/pull/37) # [1.0.3](https://github.com/KyleAMathews/deepmerge/releases/tag/v1.0.3) - adding bower.json back: [Issue 38](https://github.com/KyleAMathews/deepmerge/pull/38) - updating keywords and Github links in package.json [bc3898e](https://github.com/KyleAMathews/deepmerge/commit/bc3898e587a56f74591328f40f656b0152c1d5eb) # [1.0.2](https://github.com/KyleAMathews/deepmerge/releases/tag/v1.0.2) - Updating the readme: dropping bower, testing that the example works: [7102fc](https://github.com/KyleAMathews/deepmerge/commit/7102fcc4ddec11e2d33205866f9f18df14e5aeb5) # [1.0.1](https://github.com/KyleAMathews/deepmerge/releases/tag/v1.0.1) - `null`, dates, and regular expressions are now properly merged in arrays: [Issue 18](https://github.com/KyleAMathews/deepmerge/pull/18), plus commit: [ef1c6b](https://github.com/KyleAMathews/deepmerge/commit/ef1c6bac8350ba12a24966f0bc7da02560827586) # 1.0.0 - Should only be a patch change, because this module is READY. [Issue 15](https://github.com/KyleAMathews/deepmerge/issues/15) - Regular expressions are now treated like primitive values when merging: [Issue 30](https://github.com/KyleAMathews/deepmerge/pull/30) - Dates are now treated like primitives when merging: [Issue 31](https://github.com/KyleAMathews/deepmerge/issues/31)