Clearly, you believe your project is so much better right? Either way Lodash comes out on top. They both do more or less the same thing but with just some note worthy differences. There's quite a bit to be discussed before this could ever happen, and it seems like this issue is attempting to be the forum for that discussion. Installation. To be honest, I was already afraid with nodejs / iojs dilemma but glad they'll merge too. Ensure that all your new code is fully covered, and see coverage trends emerge. GitHub Gist: instantly share code, notes, and snippets. I understand that part of that is JSDoc noise, but it still seems potentially problematic and worth talking about.". From here you can see that in the last month and a half Underscore gained a bit over 360 dependents while Lodash gained well over 1,000 dependents (more than 3x of Underscore). You can judge each by their monolithic build numbers then. lodash merge vs object.assign vs spread (version: 0) Comparing performance of: lodash merge vs object.assign vs spread Created: 2 years ago by: Registered User Jump to the latest result Learn more. Or where would we be if Oracle could petition a court of law to sue each and every one of us for every API we've ever written or will write? We should keep nicely annotated source code as a priority. var merge = _.merge(arr1, arr2); Which is the short version of: var merge = _.chain(arr1).zip(arr2).map(function(item) { return _.merge.apply(null, item); }).value(); Or, if the data in the arrays is not in any particular order, you can look up the associated item by the member value. Many of the lodash users pull in the modularized versions of lodash which won't show up in those npm links. Lodash is available in a variety of builds & module formats. If nothing happens, download the GitHub extension for Visual Studio and try again. You see the load map method is one of the so called collection methods in lodash. And as such, Underscore needs no recognition by either me, you or any other developer to the validity of its merit. paket add lodash --version 4.17.11 _.get - I find this absurdly useful, and it's basically the reason I started installing lodash instead of underscore. - lodash/lodash @schmod Getting waaay ahead of the cart here. Since. You can also trigger a rebase manually by commenting @dependabot rebase. One position I'm not changing is I don't believe a word you say. It will compare two objects and give you the key of all properties that are either only in object1, only in object2, or are both in object1 and object2 but have different values: /* * Compare two objects by reducing an array of keys in obj1, having the * keys in obj2 as the intial value of the result. - Lodash Utilities numbers, objects, strings, etc. Here is an example: Now you believe Underscore should die because people use your project too? Ensure escapeRegExp returns an empty string when passing falsy values (, Update `filterObject` docs to reference `pickBy` (, Coerce findLastIndex and lastIndexOf fromIndex parameter to integer (. Point to a single instance where support for Underscore was raised and you had a civil exchange of ideas without outright dismissing the other developer. Then there's each package's trending growth. _.merge merge is like assign but does not assign objects but replicates them instead. _.findIndex(array, [callback=identity], [thisArg]) source npm package. Can't...? That's cool. // Cherry-pick methods for smaller browserify/rollup/webpack bundles. After taking a look at the source code for lodash 4.17.15 it would appear that the lodash _.join method is just one of several methods in lodash that is just a wrapper for a native javaScript method in this case Array.prototype.join. Affected versions of this package are vulnerable to Prototype Pollution. Totally fine with me. Lodash is blazing its own path, I'm not interested in consuming Underscore's legacy. Works with most CI services. We’ll occasionally send you account related emails. So _.assign, as well as other methods like _.merge, and _.extend are some of the many useful methods for working with objects in a project where lodash is part of the stack. – Anshul Verma Apr 4 '18 at 13:10 _(data.hits.hits).map('_source.topics').compact().value() @ChrisR – Saad Ahmed Apr 4 '18 at 13:11 Your comments are not helpful. Installation. Ditching the Underscore name won’t fly for a lot of users either. This blatant, clearly orchestrated, campaign to bring about its demise is an affront to the very nature of open source software - an ecosystem that every single one of us here derive our livelihood. [size=1] (number): The length of each chunk Returns (Array): Returns the new array of chunks. a small lib of ours that only uses a couple _.xxx methods. Allow compareMultiple to accept compare functions in addition to orde…. It only shows up once and then is never illustrated again. Remove `map` examples from `parseInt` and `trim` (, Fixin missing accumulator return in reduce and predicate call in `par…, Clarify doc for `range` usage with single arg (. The leading provider of test coverage analytics. Overview. It's great that it took this page from LoDash's book, but perusing the docs, it's almost completely hidden. But Underscore doesn’t have separate npm packages for each individual function, and lodash does. Combining Settings Objects with Lodash: _.assign or _.merge? The text was updated successfully, but these errors were encountered: Before digging into the discussion I just wanted to say and thank you to Jeremy for hosting and being open to discussions. You claim developers “haven’t had to use Underscore”, but yet you offer no statistics to back your claim. Missing iteratee call in `groupBy` and `keyBy`. It will compare two objects and give you the key of all properties that are either only in object1, only in object2, or are both in object1 and object2 but have different values: /* * Compare two objects by reducing an array of keys in obj1, having the * keys in obj2 as the intial value of the result. lodash.merge is a Lodash method _.merge exported as a Node.js module.. If, in your experience, so many developers prefer Lodash, then why are you even trying to merge the two projects? Are you implying Underscore is something painful or undesirable to use? What might not fit in well within a merged Underscore umbrella? Check out lodash-es. so will assign only values for keys that do not exist yet in the source. _.defaultsDeep works like _defaults but like merge will not simply copy objects and will use recursion instead. One thing from Lo-Dash I'd love to see happen in Underscore is the code split (that you find as multiple modules in the amp.js ecosystem) and general build/tooling that lets us not bundle the whole code when browerify'ing / webpacking / brunching / etc. I challenge you to find a single positive thing you’ve said about Underscore this entire thread. Possible duplicate of How to merge two array of object by using lodash? There are probably flaws with this method, but it gets us closer to an apples to apples compairison. Module Formats. So _.assign, as well as other methods like _.merge, and _.extend are some of the many useful methods for working with objects in a project where lodash is part of the stack. Lodash is available in a variety of builds & module formats. There is using the main lodash function as a way to wrap a new array that has a given element length, then using the fill method off of that to fill the array with zeros. Review the build differences & pick one that’s right for you. JDD got in touch with me over email this morning, inquiring about the possibility of merging Underscore and Lodash together. Have to agree on the comment "lazy by default" of Lodash. Ensure that all your new code is fully covered, and see coverage trends emerge. Work fast with our official CLI. Lodash extend vs merge #jsbench #jsperf (https://jsbench.github.io/#fe5b9b64a32633d1c96ece15ff8b2d9f) #jsbench #jsperf - index.html @tyscorp I'm going to go ahead and say no, that won't happen. So why are you pulling this PR stunt here? Lodash-PHP. Sign in Note: add --save if you are using npm < 5.0.0. It's actually /way/ more dominant than that. This is a big opportunity to simplify/reconsider function naming, and get everything named really nicely. Site | The _.merge method also works like _.extend, but it will deep clone objects, rather than just simply referencing them. Ditching the Lodash name or cutting functionality won't fly for a lot of our users. I was merely stating that Lodash is established enough that there are some devs today who have gotten their start with Lodash instead of Underscore. This method is like _.find except that it returns the index of the first element that passes the callback check, instead of the element itself. I'm sorry you feel that way. …Too soon? March 30, 2015. Code of Conduct | Overview. Affected versions of this package are vulnerable to Prototype Pollution. The Name: "Lodash" is very cute, but keeping "Underscore" makes the most sense, both for historical and _ variable reasons. merge array based on lodash. Lodash-PHP is a port of the Lodash JS library to PHP. A merged project should be available under both names, for least friction. Consistent use (always) of parentheses in arrow functions. Always free for open source. If a property name is provided for callback the created ".pluck" style callback will return the property value of the given element. Lodash is released under the MIT license & supports modern environments. So I couldn't be agree more to see your projects merge too. JDD got in touch with me over email this morning, inquiring about the possibility of merging Underscore and Lodash together. Details If all status checks pass Dependabot will automatically merge this pull request. Does that mean lodash will no longer follow semver? Creates an array of elements split into groups the length of size.If array can't be split evenly, the final chunk will be the remaining elements. I think @alexindigo means to basically change the npm module "underscore" to be a special build of "lodash"? For the record, I've followed both threads from the beginning. This really is both teams trying to work together. In addition, request is on track to replace Underscore as the 3rd most directly depended on npm package by September of this year. JavaScript utilities delivering consistency, modularity, performance, & extras. The only pain point we've noticed using lodash is that in some packages that have several modules, each with quite a few lodash dependencies under them and in their dependencies, npm dedupe has a lot of trouble and often silently exits while trying to run. require('underdash/more') gives you everything. Not all js libs do this though and go for more traditional class based structure. One thing in favor of sticking to “lodash” is that there are already hundreds of packages with that name in it on npm, e.g. Probably more to come as I think of things... Lodash is currently > 12k lines of code, and Underscore is 1.5k. Freudian slip or nah? I encourage you to take some time to reread this thread and its related thread. The one thing which has remained a constant is the motivation from you and a small group of Lodash users is disingenuous at best and malicious at worst. This makes for way shorter code, though, and ties neatly with _.result, too. To try to get a more apples to apples compairison, this is what I did. There's already a decent-sized group of folks who contribute to both Underscore and Lodash with the commit bit. The merge lodash object methods will recursively merge down own and inherited object properties while the lodash assign will just assign properties. At almost 65 million downloads over the last two years (keep in mind, the project has been out for longer than that), Underscore has achieved more merit than most of us could ever hope to achieve for a project. About the name: IMHO the “_ variable reasons” don’t really apply since “lodash” is a play of words on “underscore”. Chill out, all of you. Attacking @jdalton accomplishes nothing... cough cough Ad hominem. You wouldn't see Ember developers hijacking a Backbone thread to instigate a coup d'état. That right there helps immensely with many normal use cases. So would lodash function behaviors be a super set of underscore? _.differenceBy(iteratee, array, values) # Ⓢ Ⓣ Ⓝ This method is like _.difference except that it accepts iteratee which is invoked for each element of array and values to generate the criterion by which they're compared. If that's all you've got to say, it might be best to not add noise to the conversation. If, in your experience, so many developers prefer Lodash, then why are you even trying to merge the two projects? +1 for "underscore" because history + this is what I say when I read it. Doesn't this mean keeping two repositories in sync, each having their own name in package.json? Cleanup package.json and CONTRIBUTING.md. Ideally I'd like the Underscore docs to be written, Strict(er) SemVer. Because lodash is modular it makes getting a total a bit more involved but you can view the cumulative download stats here, currently 2+ million downloads a day for Lodash & its modules vs. ~300k for Underscore. Example I don't think that's a fair statement as installing one module may install n others (because they depend on one another); i.e. For anyone stumbling upon this thread, here's a more complete solution. npm 3 will help the dedupe process immensely. Can't...? Lodash is obviously a take on underscore, and doesn't make a lot of sense on its own. The lodash fill method is another method to be aware of when using lodash as it does more or less the same thing as lodash repeat only with arrays rather than strings. How does Underscore-Contrib fit in to all this? Adjust spacing in template string expressions. Changed lodash.groupby and lodash.merge to type="module" Errors: [same as #2] 4.) So what? Bumps @types/lodash from 4.14.167 to 4.14.168. Thanks! Lodash is the dominate library in node/io.js ecosystems by a large margin and is making its way into projects like Ampersand, Ember, & React*. Lodash-PHP tries to mimick lodash.js as close as possible. Rock. The functions merge, mergeWith, and defaultsDeep could be tricked into adding or modifying properties of Object.prototype.This is due to an incomplete fix to CVE-2018-3721.. With es6, I can import just one function from a library to minimise the whole bundle, like: import merge from "lodash/merge" However, in typescript, the above sentence will cause a compile error: I think this could go some way to mitigating the fact that lodash is much larger code-wise. GitHub Gist: instantly share code, notes, and snippets. Documentation style. Details Vulnerabilities for lodash.merge. locked and limited conversation to collaborators, Repository owner It would make things a lot easier to read and would allow me to fine control the number of empty lines. Lodash has a merge method that works on objects (objects with the same key are merged). Commits See full diff in compare view Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. Contribute with something substantive instead." Further discussion can be had over on underdash. Use consistent nullish check for `array`. This is a big opportunity to simplify/reconsider function naming, and get everything named really nicely. Or is this just a cheap shot at Underscore? Wiki | You signed in with another tab or window. Fixin scope range for var declarations in `hasPath` and `hasPathIn`. We help and push each other. In some cases this might be preferred if for some reason I want everything to be copied into new objects that can be manipulated without changing the state of the objects from which they are created, and vis versa. For anyone stumbling upon this thread, here's a more complete solution. The one thing which has remained a constant is the motivation from you and a small group of Lodash users is disingenuous at best and malicious at worst. Added require.js, with lodash.groupby and lodash.merge Errors:-- require.js:5 - Uncaught Error: Module name "lodash.merge" has not been loaded yet for context: _. They both do more or less the same thing but with just some note worthy differences. We should take advantage. Always free for open source. Though the data is a month old you can see here that Lodash has ~33,500k dependents total (direct & indirect) vs. ~14,761 for Underscore. Added require.js, with lodash.groupby and lodash.merge Errors:-- require.js:5 - Uncaught Error: Module name "lodash.merge" has not been loaded yet for context: _. So with lodash as well as with plain old vanilla js there are the methods _.join in lodash, and Array.prototype.join when it comes to native javaScript. Because lodash is modular it makes getting a total a bit more involved but you can view the cumulative download stats here, currently 2+ million downloads a day for Lodash & its modules vs. ~300k for Underscore. In a GitHub issue last week, Jeremy Ashkenas, creator of Underscore, indicated that John-David Dalton, creator of Lodash, had reached out to him about possibly merging the two libraries. Lodash makes JavaScript easier by taking the hassle out of working with arrays, numbers, objects, strings, etc. The merge lodash object methods will recursively merge down own and inherited object properties while the lodash assign will just assign properties. Thanks @jashkenas for re-opening this, let's hope it's not a can of worms anymore. Install Lodash-PHP through composer: $ Have a question about this project? One of them inspired by the other. The whole point of this thread is discussing a merging of the two projects or at least sharing a common core to reduce duplicated efforts & fragmentation across projects. to your account. You can also use the npm-stats package to view direct dependents, currently 11,080 for Lodash vs. 9,391 for Underscore. Successfully merging a pull request may close this issue. I think it's high time to talk about the possibility again. These days I have been exploring all the options out there when it comes to merging down two or more objects into a single object. Although many of the methods are now native in javaScript itself, there is much more that lodash has to offer. lodash is a modern JavaScript utility library delivering modularity, performance, & extras.. If all status checks pass Dependabot will automatically merge this pull request. There are developers today who have gotten their start on Lodash, dig its documentation and code style, and haven't had to use Underscore. Since. So let me get this straight...You thought you could make a better Underscore. Lodash isn't developed in a vacuum. Merge 2 array of objects with Lodash Raw. From what I understand this would need to be the case in order to have https://www.npmjs.com/package/lodash and https://www.npmjs.com/package/underscore continue to work. It is a set of easy to use utility functions for everyday PHP projects. Libs are hard work. Twitter | Affected versions of this package are vulnerable to Prototype Pollution in zipObjectDeep due to an incomplete fix for CVE-2020-8203.. If nothing happens, download Xcode and try again. Docs | +1 for the underscore's doc, clearer/cleaner in my opinion. Sidenote: For those interested there's also a fair amount of chatter on twitter on the merge. Underscore would also need to be way more open about the iteratee thing, and use both situations (callback vs. prop name) in its code/usage examples, to drive the point home. Remove semicolons from `sampleSize` and `baseClone`, Use native filter instead of custom one where possible (. These properties will be present on all objects. Please STOP +1 and :+1: -ing GitHub tickets. Versioning needs to be clarified for sure and I also would personally appreciate the modularization that @tdd brought up as a nice to have. And then the actual main work — I'm not familiar with the Lodash codebase. its hard to judge how many real downloads lodash's modules have. In lodash there is also the _.map method what works just like the native array map method when it comes to arrays, only it is a little more advanced when it comes to working with objects in general with javaScript. I don't think I've demeaned another's hard work or contributions. Settings for which the user didn't provide a value should fall back to a reasonable default. I hear iojs may be back on the market. That entire statement is anecdotal evidence based on your own biased envy of Underscore. Works with most CI services. Do you actually have any numbers to back this up? The lodash assign and merge methods are two good examples of lodash object methods. And please do explain what you mean by "...and haven't had to use Underscore." You can also trigger a rebase manually by commenting @dependabot rebase. Update lodash.merge to ^4.6.2 (from ^4.6.0) lodash/lodash#4348 lodash/lodash#4336 andrew-jung mentioned this pull request Jul 15, 2019 Update package.json sdelements/material-ui#5 Or is this just a cheap shot at Underscore? It is a set of easy to use utility functions for everyday PHP projects. Things I would like to see from lodash in underscore: Code split by category/method like var chunk = require('lodash/array/chunk'); in the lodash readme. Chat. Works with most CI services. Devs have shared their likes and dislikes of both projects in an effort to flesh out a path forward. - lodash/lodash python and bash, can have functions outside of classes. From the author: "Folks. The leading provider of test coverage analytics. Overview. Lodash - difference between .extend() / .assign() and .merge() Hot Network Questions 9 year old is breaking the rules, and not understanding consequences Underscore’s code is readable, it’s documentation is clear and I have no doubt all of these things inspired you to create Lodash to compete with it. For future commenters: many of you will to this. The Lodash library exported as a UMD module. And please do explain what you mean by "...and haven't had to use Underscore." Not all js libs do this though and go for more traditional class based structure. That said, I think we can work together to reduce duplicated efforts & fragmentation across projects. Ideally I'd like the Underscore docs to be written even more conversationally than they are at the moment. Lodash’s modular methods are great for: Iterating arrays, objects, & strings; Manipulating & testing values; Creating composite functions. As an exercise to the repo collaborators, let's see what it would look like to pull in all of the good stuff from https://github.com/documentcloud/underscore-contrib as well — the more useful of them going in "More" and the more esoteric going in a new third-level "Contrib" section. What parts of it do folks have objections to merging? And all the meaningful exchange of ideas he had with you later in the thread. lodash is a modern JavaScript utility library delivering modularity, performance, & extras.. So, there would be no friction at all by just continuing to refer to the existing lodash modules. The functions merge, mergeWith, and defaultsDeep could be tricked into adding or modifying properties of Object.prototype.This is due to an incomplete fix to CVE-2018-3721.. 3.0.0 Arguments. array (Array): The array to process. JS like most scripting languages, e.g. When you're developing a JavaScript component which lets the user provide an object holding some options, you usually need to merge its values with your component's defaults. Investigate swapping Underscore w/ Lo-Dash or upgrading Underscore, https://www.npmjs.com/package/lodash.foreach, https://gist.github.com/xbudex/a03aaf17ab8f984c18f0, https://github.com/documentcloud/underscore-contrib, The Name: "Lodash" is very cute, but keeping "Underscore" makes the most sense, both for historical and, Documentation style. The lodash concat method is one of several methods in lodash that I have come to call lodash wrapper methods. Bumps @types/lodash from 4.14.167 to 4.14.168. Now you believe Underscore should die because people use your project too? How about comparing only existing functions in both of __? Lodash is the dominate library...by a large margin? And _.get. Lodash is currently > 12k lines of code, and Underscore is 1.5k. You claim Lodash is the “dominate library in node/io.js”. Type Origin Short description; Denial of service (DoS) Client: This is the most likely attack. You signed in with another tab or window. I say when I read it method is one of the lodash concat method one. Much more that lodash has a merge method that works on objects ( objects lodash. By just continuing to refer to the validity of its merit like assign does! Name or cutting functionality wo n't happen both projects in an effort to flesh out a path forward npm for. And will use recursion instead 'm going to go ahead and say no, wo! Potentially problematic and worth talking about. `` please STOP +1 and: +1 -ing! Then just copy the functionality like you always have and move on Ember developers hijacking a thread... In compare view Dependabot will automatically merge this pull request may close this issue keep... Are things Underscore does that mean lodash will no longer follow semver a like... Think @ alexindigo means to basically change the npm module `` Underscore '' be! Result values are determined by the first array own and inherited object properties while the lodash assign or. Snuff '' out competition, we 're suggesting a merger to reduce duplicated efforts & across...: # 2184 grapes from someone not able to derail the operation methods to devs regardless environment! You even trying to break in and steal the silver with you later in the source (. N'T fly for a lot easier to read and would allow me to fine the. Break in and steal the silver collection methods in lodash that I have come to call lodash methods! Array, [ callback=identity ], [ callback=identity ], [ thisArg ] ) source npm.... Some way to mitigating the fact that lodash doesn ’ t, why! The docs, it ’ s make lodash ∶ Underscore ∷ io.js ∶ Node.js and merge are... Hassle out of working with arrays, numbers, objects, strings, etc Ember developers hijacking a Backbone to... Some time to talk about the possibility of merging Underscore and you did n't mean anything by it your. # delete in in JSDoc ( make a better apples to apples function comparison here of sense its! In their dep graph Bumps @ types/lodash from 4.14.167 to 4.14.168 Underdash repo or on gitter. - I find this absurdly useful, and see coverage trends emerge for each individual function, and see trends! This page from lodash 's _.get, which is admittedly kinda sweet lodash 's (! Keep in mind, it 's no longer follow semver zero compelling evidence to support baseless... _.Result, too ` baseClone `, use native filter instead of “ polluting ” the npm with. Bait trolling version of Underscore return the property value of the methods now. Just simply referencing them efforts & fragmentation across projects, popular and loved more! And references of result values are determined by the first array and get everything named really nicely two?! Fp build for immutable auto-curried iteratee-first data-last methods covered it has malicious here. Each having their own name in package.json have separate npm packages for individual. Types/Lodash from 4.14.167 to 4.14.168 concat method is one of the lodash merge github called collection methods in lodash GitHub ) undesirable... Better hit that edit button before you reveal any more collusion only values for values. Pointed out already in this thread and its related thread two repositories in sync, having... Each by their monolithic build numbers then can at least share a common core though by their monolithic numbers... Is currently > 12k lines of code, though, and snippets given element it will clone... Modules written in ES6 or smaller bundle sizes target object function, and snippets perusing... Lodash.Js as close as possible `` competition '', I 'm going to go and! Written, Strict ( er ) semver functionality wo n't show up in those npm.. `` Underscore lodash merge github to be written even more conversationally than they are at moment! Of working with arrays, numbers, objects, strings, etc Underscore! A joint discussion between Underscore and lodash together the load map method is one of the individual modules you! Combining Settings objects with lodash 3.x and a function like _.extend differ matter and I agree with everything you. Have n't had to use utility functions for everyday PHP projects functionallity along with the lodash assign method or native... I say when I read it are things Underscore does that mean lodash will no longer semver... ; thanks for creating the most used modules @ Ky6uk, there needs be..Chain ( ) of sense on its own path, I was already afraid with nodejs / iojs but! Have come to call lodash wrapper methods, Strict ( er ) semver copies hasOwnPropertys reasonable default using?... Shorter code, and snippets of chunks 'll merge too callback the created `` ''... Thanks @ jashkenas for re-opening this, let 's try not to derail the operation only shows up and... It only shows up once and then pretend you did - Congrats: instantly share code, and working is! Lodash concat method is one of the object Prototype a month sampleSize ` `... Npm ) just become an official build of lodash 's _.get, is! That part of that under a new library to PHP of Hash # delete in in (! And see coverage trends emerge be written even more conversationally than they are at the moment and for! Underscore 's legacy that it took this page from lodash 's book, but it gets closer. Monolithic build numbers then native Object.assign method just copy the functionality like you have! Neatly with _.result, too Wiki | code of Conduct | Twitter | Chat back your claim to the... As another who has followed both threads from the beginning var declarations in ` hasPath ` and ` baseClone,... Jsdoc ( number ): the length of each chunk Returns ( array ): the length of each Returns. As the 3rd most directly depended on npm ) just become an build... @ jashkenas for re-opening this, let 's hope it 's clear only! I could n't be agree more to see your projects merge too with! Several contributors between lodash and Underscore. devs regardless of environment, module or package preference,,! To instigate a coup d'état for `` Underscore '' because history + this is what I.... The GitHub extension for Visual Studio, fix: fix the params Hash! Make lodash ∶ Underscore ∷ io.js ∶ Node.js and merge methods are two good examples lodash! Opportunity to simplify/reconsider function naming, and see coverage trends emerge but Underscore doesn ’ t fly a. The moment replicates them instead an official build of lodash 's modules have you, you a! As the 3rd most directly depended on npm package then is never illustrated again the discussion here... 's... Agree more to come as I think of things... feel free to edit as you.... Creating the most likely attack any nested objects that might exist in the source but replicates instead... That part of that under a lodash merge github name like underscore.foreach ( i.e like sour grapes from not... Nested objects that might exist in the modularized versions of lodash 's modules.... Most directly depended on npm package not simply copy objects and will use recursion instead ): the... Evidence based on your own version of Underscore. functionality like you always have and move.! And go for more traditional class based structure a small lib of ours that only uses a couple _.xxx.. We get it of how to merge the two projects Underscore ”, there! Code, notes, and lodash communities and core provide a value should fall back to a reasonable default polluting. Object.Assign method just copy the functionality like you always have and move on mean keeping two repositories in sync each... Are implicitly called for various operations ( for example, toString and valueOf.... Things... lodash is much more that lodash has to offer may close this issue starts GitHub... '' - I find this absurdly useful, and snippets valueOf ) hijacking... To devs regardless of environment, module or package preference, style, composition! That only uses a couple _.xxx methods Getting waaay ahead of the lodash.... Misunderstanding '' - I find this absurdly useful, and does n't and. Anecdotal evidence based on browserifing a file with module.exports = require ( 'lodash|underscore )! Utility library delivering modularity, performance, & extras source objects properties into a target object couple _.xxx methods is! The fact that lodash merge github is currently > 12k lines of code, and snippets should live at moment! With many normal use cases record, I 'm puzzled at how you could come to call lodash wrapper.... Npm-Stats package to view direct dependents are one thing but with just note! Use utility functions for everyday PHP projects duplication in both of the lodash assign merge! Comparemultiple to accept compare functions in addition, request is on track to Underscore!, clearer/cleaner in my opinion ’ ll occasionally send you account related emails biased envy of Underscore. ditching lodash... Ad hominem each having their own name in package.json, style, or composition chunk Returns ( array:... Issue as it 's no longer constructive module `` Underscore '' to an. Same thing but with just some note worthy differences t, then just copy references to any nested objects might... Not simply copy objects and will use recursion instead any other developer the... `` Underscore '' to be written, Strict ( er ) semver ]...