Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: jashkenas/underscore
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: f6957318980da6c9fdb39edf2e6ea76688992b06
Choose a base ref
...
head repository: jashkenas/underscore
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: bf5a0ed27599f99ea59a0839c5bc2fb27a46c1cf
Choose a head ref
Loading
Showing with 14,830 additions and 3,157 deletions.
  1. +6 −7 .travis.yml
  2. +37 −2 docs/modules/_baseCreate.html
  3. +42 −7 docs/modules/_baseIteratee.html
  4. +38 −3 docs/modules/_cb.html
  5. +36 −1 docs/modules/_chainResult.html
  6. +39 −4 docs/modules/_collectNonEnumProps.html
  7. +35 −0 docs/modules/_createAssigner.html
  8. +39 −4 docs/modules/_createEscaper.html
  9. +40 −5 docs/modules/_createIndexFinder.html
  10. +40 −5 docs/modules/_createPredicateIndexFinder.html
  11. +38 −3 docs/modules/_createReduce.html
  12. +38 −3 docs/modules/_createSizePropertyCheck.html
  13. +35 −0 docs/modules/_deepGet.html
  14. +41 −6 docs/modules/_escapeMap.html
  15. +37 −2 docs/modules/_executeBound.html
  16. +40 −5 docs/modules/_flatten.html
  17. +37 −2 docs/modules/_getByteLength.html
  18. +37 −2 docs/modules/_getLength.html
  19. +37 −2 docs/modules/_group.html
  20. +36 −1 docs/modules/_has.html
  21. +904 −0 docs/modules/_hasObjectTag.html
  22. +37 −2 docs/modules/_isArrayLike.html
  23. +37 −2 docs/modules/_isBufferLike.html
  24. +35 −0 docs/modules/_keyInObj.html
  25. +1,000 −0 docs/modules/_methodFingerprint.html
  26. +35 −0 docs/modules/_optimizeCb.html
  27. +45 −9 docs/modules/_setup.html
  28. +35 −0 docs/modules/_shallowProperty.html
  29. +923 −0 docs/modules/_stringTagBug.html
  30. +38 −2 docs/modules/_tagTester.html
  31. +924 −0 docs/modules/_toBufferView.html
  32. +921 −0 docs/modules/_toPath.html
  33. +37 −2 docs/modules/_unescapeMap.html
  34. +36 −1 docs/modules/after.html
  35. +38 −3 docs/modules/allKeys.html
  36. +36 −1 docs/modules/before.html
  37. +40 −5 docs/modules/bind.html
  38. +39 −4 docs/modules/bindAll.html
  39. +36 −1 docs/modules/chain.html
  40. +36 −1 docs/modules/chunk.html
  41. +38 −3 docs/modules/clone.html
  42. +36 −1 docs/modules/compact.html
  43. +37 −2 docs/modules/compose.html
  44. +35 −0 docs/modules/constant.html
  45. +39 −4 docs/modules/contains.html
  46. +37 −2 docs/modules/countBy.html
  47. +37 −2 docs/modules/create.html
  48. +72 −19 docs/modules/debounce.html
  49. +37 −2 docs/modules/defaults.html
  50. +38 −3 docs/modules/defer.html
  51. +37 −2 docs/modules/delay.html
  52. +39 −4 docs/modules/difference.html
  53. +38 −3 docs/modules/each.html
  54. +37 −2 docs/modules/escape.html
  55. +38 −3 docs/modules/every.html
  56. +37 −2 docs/modules/extend.html
  57. +37 −2 docs/modules/extendOwn.html
  58. +37 −2 docs/modules/filter.html
  59. +38 −3 docs/modules/find.html
  60. +36 −1 docs/modules/findIndex.html
  61. +37 −2 docs/modules/findKey.html
  62. +36 −1 docs/modules/findLastIndex.html
  63. +37 −2 docs/modules/findWhere.html
  64. +36 −1 docs/modules/first.html
  65. +36 −1 docs/modules/flatten.html
  66. +36 −1 docs/modules/functions.html
  67. +925 −0 docs/modules/get.html
  68. +37 −2 docs/modules/groupBy.html
  69. +39 −9 docs/modules/has.html
  70. +35 −0 docs/modules/identity.html
  71. +38 −3 docs/modules/index-all.html
  72. +39 −4 docs/modules/index-default.html
  73. +162 −126 docs/modules/index.html
  74. +36 −1 docs/modules/indexBy.html
  75. +38 −3 docs/modules/indexOf.html
  76. +36 −1 docs/modules/initial.html
  77. +38 −3 docs/modules/intersection.html
  78. +36 −1 docs/modules/invert.html
  79. +42 −6 docs/modules/invoke.html
  80. +39 −4 docs/modules/isArguments.html
  81. +38 −3 docs/modules/isArray.html
  82. +37 −2 docs/modules/isArrayBuffer.html
  83. +37 −2 docs/modules/isBoolean.html
  84. +60 −2 docs/modules/isDataView.html
  85. +37 −2 docs/modules/isDate.html
  86. +35 −0 docs/modules/isElement.html
  87. +45 −7 docs/modules/isEmpty.html
  88. +149 −100 docs/modules/isEqual.html
  89. +37 −2 docs/modules/isError.html
  90. +37 −2 docs/modules/isFinite.html
  91. +40 −5 docs/modules/isFunction.html
  92. +39 −2 docs/modules/isMap.html
  93. +36 −1 docs/modules/isMatch.html
  94. +37 −2 docs/modules/isNaN.html
  95. +35 −0 docs/modules/isNull.html
  96. +37 −2 docs/modules/isNumber.html
  97. +36 −1 docs/modules/isObject.html
  98. +37 −2 docs/modules/isRegExp.html
  99. +39 −2 docs/modules/isSet.html
  100. +37 −2 docs/modules/isString.html
  101. +37 −2 docs/modules/isSymbol.html
  102. +39 −4 docs/modules/isTypedArray.html
  103. +35 −0 docs/modules/isUndefined.html
  104. +39 −2 docs/modules/isWeakMap.html
  105. +37 −2 docs/modules/isWeakSet.html
  106. +37 −2 docs/modules/iteratee.html
  107. +39 −4 docs/modules/keys.html
  108. +36 −1 docs/modules/last.html
  109. +37 −2 docs/modules/lastIndexOf.html
  110. +38 −3 docs/modules/map.html
  111. +37 −2 docs/modules/mapObject.html
  112. +37 −2 docs/modules/matcher.html
  113. +40 −5 docs/modules/max.html
  114. +38 −3 docs/modules/memoize.html
  115. +40 −5 docs/modules/min.html
  116. +42 −7 docs/modules/mixin.html
  117. +36 −1 docs/modules/negate.html
  118. +35 −0 docs/modules/noop.html
  119. +35 −0 docs/modules/now.html
  120. +37 −2 docs/modules/object.html
  121. +42 −7 docs/modules/omit.html
  122. +37 −2 docs/modules/once.html
  123. +36 −1 docs/modules/pairs.html
  124. +39 −4 docs/modules/partial.html
  125. +36 −1 docs/modules/partition.html
  126. +41 −6 docs/modules/pick.html
  127. +37 −2 docs/modules/pluck.html
  128. +38 −6 docs/modules/property.html
  129. +39 −6 docs/modules/propertyOf.html
  130. +35 −0 docs/modules/random.html
  131. +35 −0 docs/modules/range.html
  132. +36 −1 docs/modules/reduce.html
  133. +36 −1 docs/modules/reduceRight.html
  134. +38 −3 docs/modules/reject.html
  135. +36 −1 docs/modules/rest.html
  136. +39 −4 docs/modules/restArguments.html
  137. +39 −4 docs/modules/result.html
  138. +44 −9 docs/modules/sample.html
  139. +36 −1 docs/modules/shuffle.html
  140. +37 −2 docs/modules/size.html
  141. +38 −3 docs/modules/some.html
  142. +39 −4 docs/modules/sortBy.html
  143. +39 −4 docs/modules/sortedIndex.html
  144. +35 −0 docs/modules/tap.html
  145. +69 −26 docs/modules/template.html
  146. +36 −1 docs/modules/templateSettings.html
  147. +42 −7 docs/modules/throttle.html
  148. +36 −1 docs/modules/times.html
  149. +42 −7 docs/modules/toArray.html
  150. +922 −0 docs/modules/toPath.html
  151. +46 −11 docs/modules/underscore-array-methods.html
  152. +40 −5 docs/modules/underscore.html
  153. +37 −2 docs/modules/unescape.html
  154. +38 −3 docs/modules/union.html
  155. +40 −5 docs/modules/uniq.html
  156. +36 −1 docs/modules/uniqueId.html
  157. +38 −3 docs/modules/unzip.html
  158. +36 −1 docs/modules/values.html
  159. +37 −2 docs/modules/where.html
  160. +37 −2 docs/modules/without.html
  161. +36 −1 docs/modules/wrap.html
  162. +37 −2 docs/modules/zip.html
  163. +896 −642 docs/underscore-esm.html
  164. +251 −83 index.html
  165. +19 −17 karma.conf-sauce.js
  166. +0 −1 karma.conf.js
  167. +3 −0 modules/_hasObjectTag.js
  168. +37 −0 modules/_methodFingerprint.js
  169. +3 −2 modules/_setup.js
  170. +10 −0 modules/_stringTagBug.js
  171. +2 −1 modules/_tagTester.js
  172. +11 −0 modules/_toBufferView.js
  173. +8 −0 modules/_toPath.js
  174. +19 −14 modules/debounce.js
  175. +12 −0 modules/get.js
  176. +3 −8 modules/has.js
  177. +7 −5 modules/index.js
  178. +3 −2 modules/invoke.js
  179. +12 −1 modules/isDataView.js
  180. +6 −3 modules/isEmpty.js
  181. +20 −18 modules/isEqual.js
  182. +3 −1 modules/isMap.js
  183. +3 −1 modules/isSet.js
  184. +3 −1 modules/isWeakMap.js
  185. +2 −5 modules/property.js
  186. +4 −6 modules/propertyOf.js
  187. +2 −2 modules/result.js
  188. +11 −4 modules/template.js
  189. +9 −0 modules/toPath.js
  190. +71 −1,403 package-lock.json
  191. +3 −4 package.json
  192. +110 −19 test/functions.js
  193. +1 −1 test/index.html
  194. +48 −14 test/objects.js
  195. +30 −0 test/utility.js
  196. +176 −31 test/vendor/qunit.css
  197. +3 −3 test/vendor/qunit.js
  198. +2 −2 underscore-esm-min.js
  199. +1 −1 underscore-esm-min.js.map
  200. +188 −93 underscore-esm.js
  201. +1 −1 underscore-esm.js.map
  202. +2 −2 underscore-min.js
  203. +1 −1 underscore-min.js.map
  204. +187 −92 underscore.js
  205. +1 −1 underscore.js.map
13 changes: 6 additions & 7 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -5,25 +5,24 @@ sudo: false
jobs:
include:
- node_js: 8
env: BROWSER=false
env: EXTRA=false
- node_js: 10
env: BROWSER=true
env: EXTRA=true
- node_js: 14
env: BROWSER=false
env: EXTRA=false
before_install:
- npm install -g karma-cli
before_script:
- npm install karma-sauce-launcher
script:
- npm test
- "[ $BROWSER = false ] || npm run test-browser"
- "[ $BROWSER = false ] || karma start karma.conf-sauce.js"
- "[ $EXTRA = false ] || npm run test-browser"
- "[ $EXTRA = false ] || karma start karma.conf-sauce.js"
- "[ $EXTRA = false ] || npm run coveralls"
notifications:
email: false
env:
global:
- NPM_CONFIG_PROGRESS="false"
- secure: bDZSBQfqr21hCayjcZ20IxrV6+XGhxQPFIfwWqEKLrF93Gu8LLVjZRxXE/mE8I8N4Z5WtDNb4ZHrm/TTzmcPa5MuHgIxEdknQCncobH8oimwc83SHwEPk6okeNKl39VlCjvvnmoe/V/KpnknuYn3Rqghtl/Uv9KLpCwskwjTtcw=
- secure: SRECgXuwcZTcD3GVxTS2bYNgRyye4vq6BLrV2PH9FyNenowsKQR2EwlC/dppc1Q8NWMgv79J/R96q9JOFh+mEH9L5dlBb2yhnGH8amVeM/ChAJHT/F8YktKM453uVpz5fR00QcCQDDUOx6Pvx374ID0OKNpWKAkQBWA9mPTsLnE=
# matrix: BROWSER=false
after_success: npm run coveralls
39 changes: 37 additions & 2 deletions docs/modules/_baseCreate.html
Original file line number Diff line number Diff line change
@@ -116,6 +116,11 @@
</a>


<a class="source" href="_hasObjectTag.html">
modules/_hasObjectTag.js
</a>


<a class="source" href="_isArrayLike.html">
modules/_isArrayLike.js
</a>
@@ -131,6 +136,11 @@
</a>


<a class="source" href="_methodFingerprint.html">
modules/_methodFingerprint.js
</a>


<a class="source" href="_optimizeCb.html">
modules/_optimizeCb.js
</a>
@@ -146,11 +156,26 @@
</a>


<a class="source" href="_stringTagBug.html">
modules/_stringTagBug.js
</a>


<a class="source" href="_tagTester.html">
modules/_tagTester.js
</a>


<a class="source" href="_toBufferView.html">
modules/_toBufferView.js
</a>


<a class="source" href="_toPath.html">
modules/_toPath.js
</a>


<a class="source" href="_unescapeMap.html">
modules/_unescapeMap.js
</a>
@@ -321,6 +346,11 @@
</a>


<a class="source" href="get.html">
modules/get.js
</a>


<a class="source" href="groupBy.html">
modules/groupBy.js
</a>
@@ -731,6 +761,11 @@
</a>


<a class="source" href="toPath.html">
modules/toPath.js
</a>


<a class="source" href="underscore-array-methods.html">
modules/underscore-array-methods.js
</a>
@@ -814,8 +849,8 @@ <h1>_baseCreate.js</h1>

</div>

<div class="content"><div class='highlight'><pre><span class="hljs-keyword">import</span> isObject <span class="hljs-keyword">from</span> <span class="hljs-string">&#x27;./isObject.js&#x27;</span>;
<span class="hljs-keyword">import</span> { nativeCreate } <span class="hljs-keyword">from</span> <span class="hljs-string">&#x27;./_setup.js&#x27;</span>;</pre></div></div>
<div class="content"><div class='highlight'><pre><span class="hljs-keyword">import</span> isObject <span class="hljs-keyword">from</span> <span class="hljs-string">'./isObject.js'</span>;
<span class="hljs-keyword">import</span> { nativeCreate } <span class="hljs-keyword">from</span> <span class="hljs-string">'./_setup.js'</span>;</pre></div></div>

</li>

49 changes: 42 additions & 7 deletions docs/modules/_baseIteratee.html
Original file line number Diff line number Diff line change
@@ -116,6 +116,11 @@
</a>


<a class="source" href="_hasObjectTag.html">
modules/_hasObjectTag.js
</a>


<a class="source" href="_isArrayLike.html">
modules/_isArrayLike.js
</a>
@@ -131,6 +136,11 @@
</a>


<a class="source" href="_methodFingerprint.html">
modules/_methodFingerprint.js
</a>


<a class="source" href="_optimizeCb.html">
modules/_optimizeCb.js
</a>
@@ -146,11 +156,26 @@
</a>


<a class="source" href="_stringTagBug.html">
modules/_stringTagBug.js
</a>


<a class="source" href="_tagTester.html">
modules/_tagTester.js
</a>


<a class="source" href="_toBufferView.html">
modules/_toBufferView.js
</a>


<a class="source" href="_toPath.html">
modules/_toPath.js
</a>


<a class="source" href="_unescapeMap.html">
modules/_unescapeMap.js
</a>
@@ -321,6 +346,11 @@
</a>


<a class="source" href="get.html">
modules/get.js
</a>


<a class="source" href="groupBy.html">
modules/groupBy.js
</a>
@@ -731,6 +761,11 @@
</a>


<a class="source" href="toPath.html">
modules/toPath.js
</a>


<a class="source" href="underscore-array-methods.html">
modules/underscore-array-methods.js
</a>
@@ -814,13 +849,13 @@ <h1>_baseIteratee.js</h1>

</div>

<div class="content"><div class='highlight'><pre><span class="hljs-keyword">import</span> identity <span class="hljs-keyword">from</span> <span class="hljs-string">&#x27;./identity.js&#x27;</span>;
<span class="hljs-keyword">import</span> isFunction <span class="hljs-keyword">from</span> <span class="hljs-string">&#x27;./isFunction.js&#x27;</span>;
<span class="hljs-keyword">import</span> isObject <span class="hljs-keyword">from</span> <span class="hljs-string">&#x27;./isObject.js&#x27;</span>;
<span class="hljs-keyword">import</span> isArray <span class="hljs-keyword">from</span> <span class="hljs-string">&#x27;./isArray.js&#x27;</span>;
<span class="hljs-keyword">import</span> matcher <span class="hljs-keyword">from</span> <span class="hljs-string">&#x27;./matcher.js&#x27;</span>;
<span class="hljs-keyword">import</span> property <span class="hljs-keyword">from</span> <span class="hljs-string">&#x27;./property.js&#x27;</span>;
<span class="hljs-keyword">import</span> optimizeCb <span class="hljs-keyword">from</span> <span class="hljs-string">&#x27;./_optimizeCb.js&#x27;</span>;</pre></div></div>
<div class="content"><div class='highlight'><pre><span class="hljs-keyword">import</span> identity <span class="hljs-keyword">from</span> <span class="hljs-string">'./identity.js'</span>;
<span class="hljs-keyword">import</span> isFunction <span class="hljs-keyword">from</span> <span class="hljs-string">'./isFunction.js'</span>;
<span class="hljs-keyword">import</span> isObject <span class="hljs-keyword">from</span> <span class="hljs-string">'./isObject.js'</span>;
<span class="hljs-keyword">import</span> isArray <span class="hljs-keyword">from</span> <span class="hljs-string">'./isArray.js'</span>;
<span class="hljs-keyword">import</span> matcher <span class="hljs-keyword">from</span> <span class="hljs-string">'./matcher.js'</span>;
<span class="hljs-keyword">import</span> property <span class="hljs-keyword">from</span> <span class="hljs-string">'./property.js'</span>;
<span class="hljs-keyword">import</span> optimizeCb <span class="hljs-keyword">from</span> <span class="hljs-string">'./_optimizeCb.js'</span>;</pre></div></div>

</li>

41 changes: 38 additions & 3 deletions docs/modules/_cb.html
Original file line number Diff line number Diff line change
@@ -116,6 +116,11 @@
</a>


<a class="source" href="_hasObjectTag.html">
modules/_hasObjectTag.js
</a>


<a class="source" href="_isArrayLike.html">
modules/_isArrayLike.js
</a>
@@ -131,6 +136,11 @@
</a>


<a class="source" href="_methodFingerprint.html">
modules/_methodFingerprint.js
</a>


<a class="source" href="_optimizeCb.html">
modules/_optimizeCb.js
</a>
@@ -146,11 +156,26 @@
</a>


<a class="source" href="_stringTagBug.html">
modules/_stringTagBug.js
</a>


<a class="source" href="_tagTester.html">
modules/_tagTester.js
</a>


<a class="source" href="_toBufferView.html">
modules/_toBufferView.js
</a>


<a class="source" href="_toPath.html">
modules/_toPath.js
</a>


<a class="source" href="_unescapeMap.html">
modules/_unescapeMap.js
</a>
@@ -321,6 +346,11 @@
</a>


<a class="source" href="get.html">
modules/get.js
</a>


<a class="source" href="groupBy.html">
modules/groupBy.js
</a>
@@ -731,6 +761,11 @@
</a>


<a class="source" href="toPath.html">
modules/toPath.js
</a>


<a class="source" href="underscore-array-methods.html">
modules/underscore-array-methods.js
</a>
@@ -814,9 +849,9 @@ <h1>_cb.js</h1>

</div>

<div class="content"><div class='highlight'><pre><span class="hljs-keyword">import</span> _ <span class="hljs-keyword">from</span> <span class="hljs-string">&#x27;./underscore.js&#x27;</span>;
<span class="hljs-keyword">import</span> baseIteratee <span class="hljs-keyword">from</span> <span class="hljs-string">&#x27;./_baseIteratee.js&#x27;</span>;
<span class="hljs-keyword">import</span> iteratee <span class="hljs-keyword">from</span> <span class="hljs-string">&#x27;./iteratee.js&#x27;</span>;</pre></div></div>
<div class="content"><div class='highlight'><pre><span class="hljs-keyword">import</span> _ <span class="hljs-keyword">from</span> <span class="hljs-string">'./underscore.js'</span>;
<span class="hljs-keyword">import</span> baseIteratee <span class="hljs-keyword">from</span> <span class="hljs-string">'./_baseIteratee.js'</span>;
<span class="hljs-keyword">import</span> iteratee <span class="hljs-keyword">from</span> <span class="hljs-string">'./iteratee.js'</span>;</pre></div></div>

</li>

37 changes: 36 additions & 1 deletion docs/modules/_chainResult.html
Original file line number Diff line number Diff line change
@@ -116,6 +116,11 @@
</a>


<a class="source" href="_hasObjectTag.html">
modules/_hasObjectTag.js
</a>


<a class="source" href="_isArrayLike.html">
modules/_isArrayLike.js
</a>
@@ -131,6 +136,11 @@
</a>


<a class="source" href="_methodFingerprint.html">
modules/_methodFingerprint.js
</a>


<a class="source" href="_optimizeCb.html">
modules/_optimizeCb.js
</a>
@@ -146,11 +156,26 @@
</a>


<a class="source" href="_stringTagBug.html">
modules/_stringTagBug.js
</a>


<a class="source" href="_tagTester.html">
modules/_tagTester.js
</a>


<a class="source" href="_toBufferView.html">
modules/_toBufferView.js
</a>


<a class="source" href="_toPath.html">
modules/_toPath.js
</a>


<a class="source" href="_unescapeMap.html">
modules/_unescapeMap.js
</a>
@@ -321,6 +346,11 @@
</a>


<a class="source" href="get.html">
modules/get.js
</a>


<a class="source" href="groupBy.html">
modules/groupBy.js
</a>
@@ -731,6 +761,11 @@
</a>


<a class="source" href="toPath.html">
modules/toPath.js
</a>


<a class="source" href="underscore-array-methods.html">
modules/underscore-array-methods.js
</a>
@@ -814,7 +849,7 @@ <h1>_chainResult.js</h1>

</div>

<div class="content"><div class='highlight'><pre><span class="hljs-keyword">import</span> _ <span class="hljs-keyword">from</span> <span class="hljs-string">&#x27;./underscore.js&#x27;</span>;</pre></div></div>
<div class="content"><div class='highlight'><pre><span class="hljs-keyword">import</span> _ <span class="hljs-keyword">from</span> <span class="hljs-string">'./underscore.js'</span>;</pre></div></div>

</li>

Loading