Commit Graph

51 Commits

Author SHA1 Message Date
Vlad
bc00fee109 Allow Number type in updateIn function (#67) 2016-10-06 20:14:03 -07:00
David Golightly
cea10920cd Don't freeze regexps (#65) 2016-07-06 18:20:59 -07:00
Anson Kao
a887d5f929 u.reject should return same instance if no changes. (#62)
* Added failing test - u.reject should return same instance if no changes.

* `u.reject` now returns the same instance if nothing rejected
2016-06-06 20:51:11 -07:00
Gil Birman
8894f26ce2 Add dangerously_never_freeze option (#59)
process.env.UPDEEP_MODE
2016-05-30 14:37:41 -07:00
Shaun Dern
fce13afbf6 Add omitBy (#60) 2016-05-30 14:11:21 -07:00
Thai Pangsakulyanont
b20135c356 Allow updeep to be require()’d from CommonJS 2016-03-17 18:30:58 +07:00
Aaron Jensen
d823fb0186 Upgrade to lodash4 2016-02-04 06:19:27 -08:00
Aaron Jensen
a9418b6f00 Upgrade eslint and friends 2016-01-13 08:19:56 -08:00
Aaron Jensen
a0a4e04f30 Upgrade to babel 6 2016-01-13 08:19:56 -08:00
Aaron Jensen
485bde7b9b Revert "Merge pull request #34 from substantial/default-to-array"
This reverts commit 12bf952d64, reversing
changes made to 7a35404ae1.
2015-11-16 08:13:01 -08:00
Aaron Jensen
d2d0703ef1 Add support for non-plain objects
Fixes #36
2015-09-15 07:50:36 -07:00
Aaron Jensen
2dfa674124 Add support for wildcards to u.updateIn
Fixes #27
2015-09-11 22:48:10 -07:00
Aaron Jensen
b8ca7f5407 Use identity with u.if's false condition
Fixes #35
2015-09-11 11:57:39 -07:00
Andy Brown
0b0f6dc376 default to array when update keys are integers 2015-08-30 16:54:22 -07:00
Andy Brown
932da9f7d5 report correct arity for curried functions
fixes #31
2015-08-21 09:11:16 -07:00
Aaron Jensen
dea78333ff Add some jsdoc 2015-08-19 07:29:06 -07:00
Aaron Jensen
c083f4a330 Allow update to preserve empty objects
fixes #29
2015-08-18 04:28:19 -07:00
Aaron Jensen
287c4fefad Add u.constant for replacing an object outright
Fixes #10
2015-08-12 22:19:32 -07:00
Aaron Jensen
5b58b8cfc8 Fix handling null differently than undefined.
`u` and friends will now coerce null to an object if there are updates for it.

Fixes #20
2015-08-12 22:04:31 -07:00
Aaron Jensen
571102d947 Add u._ 2015-08-12 08:35:10 -07:00
Aaron Jensen
324b165e2a Use lodash's map, it's faster 2015-08-12 00:23:51 -07:00
Aaron Jensen
3ce001a4f6 Replace lodash curry with our own
lodash's curry is great and does a lot, but we don't need it all. This
is quite a bit faster.

Currently, it does away with placeholder support.

updeep curry partial call x 9,951,410 ops/sec ±1.61% (62 runs sampled)
lodash curry partial call x 988,949 ops/sec ±1.36% (62 runs sampled)
2015-08-11 23:58:54 -07:00
Aaron Jensen
ff195645cd Add curry 2015-08-11 23:55:23 -07:00
Aaron Jensen
efb669f017 Use lodash's forEach
It's a lot faster
2015-08-10 00:02:49 -07:00
Aaron Jensen
167760fb24 Do not use update in map if iteratee is a function
Performance bump, especially while curry is slow.
2015-08-10 00:02:49 -07:00
Aaron Jensen
92ae098659 Make u.map return same instance if nothing changes 2015-08-09 00:21:24 -07:00
Aaron Jensen
8e82692be2 Refactor update.js and remove some lodash 2015-08-08 23:35:53 -07:00
Aaron Jensen
b6b2daf824 Add u.update as alias to u 2015-08-06 21:40:57 -07:00
Aaron Jensen
333ca47cfd Rename u.in to u.updateIn
With u.if and u.is, it was too confusing. Originally I thought that because
u stood for update, it would make sense, but as I add more functions,
I think that was wrong.
2015-08-06 20:52:06 -07:00
Aaron Jensen
5c0855b9df Add u.is 2015-08-06 20:48:04 -07:00
Aaron Jensen
ddd5c84d49 Add u.ifElse
Fixes #12
2015-08-05 23:10:16 -07:00
Aaron Jensen
a7156e29a1 Fix lint 2015-08-05 08:39:42 -07:00
Aaron Jensen
b1e000b06d Freeze objects returned by helper methods 2015-08-05 04:44:14 -07:00
Aaron Jensen
cc42bbb2a4 Replace object outright when updates are constant 2015-08-05 04:28:32 -07:00
Aaron Jensen
78c30e038a Rename obj to object 2015-08-05 00:31:10 -07:00
Aaron Jensen
1a1e2b313a Add u.map 2015-08-05 00:25:34 -07:00
Aaron Jensen
750200df76 Add u.if 2015-08-04 23:57:01 -07:00
Aaron Jensen
8013605e7b Actually expose u.in 2015-08-04 22:34:06 -07:00
Aaron Jensen
2ae6f0a113 Add u.in and rework readme 2015-08-04 22:28:31 -07:00
Aaron Jensen
7a84944f99 Add u.freeze
Fixes #7
2015-08-04 21:56:01 -07:00
Aaron Jensen
08ebbf5c89 Allow updating to null
Fixes #8
2015-08-04 21:34:05 -07:00
Matthew Findley
2f110e5a23 Handle freezing with null values 2015-08-03 10:37:26 -07:00
Aaron Jensen
2dd272e429 Do not call isFrozen on non-freezables
fixes #1
2015-08-02 07:06:35 -07:00
Aaron Jensen
772e92789b Freeze results by default 2015-08-02 00:32:32 -07:00
Aaron Jensen
3ef66e17e4 Add freeze 2015-08-02 00:17:22 -07:00
Aaron Jensen
f199cd335a Add some javadoc to update 2015-08-01 23:38:27 -07:00
Aaron Jensen
54137398ea use airbnb's eslint 2015-08-01 23:25:08 -07:00
Aaron Jensen
0e48adc468 Use lodash assign instead 2015-08-01 09:09:52 -07:00
Aaron Jensen
743b603216 Convert to es6 modules 2015-08-01 08:13:25 -07:00
Aaron Jensen
35fe73e080 Add initial code, tests don't work yet. 2015-07-31 09:16:19 -07:00