Update README.md for version bump.

Former-commit-id: dceae7cfcfade966145032cbf1d787e309e529c2
This commit is contained in:
John-David Dalton
2012-05-21 15:34:09 -04:00
parent 9cf1424d8f
commit eaaef83ace

134
README.md
View File

@@ -1,8 +1,16 @@
# Lo-Dash <sup>v0.1.0</sup>
# Lo-Dash <sup>v0.2.0</sup>
Lo-Dash, from the devs behind [jsPerf.com](http://jsperf.com), is a drop-in replacement for Underscore.js that delivers [performance improvements](http://jsperf.com/lodash-underscore#filterby=family), bug fixes, and additional features.
Lo-Dash's performance is gained by avoiding slower native methods, instead opting for simplified non-ES5 compliant methods optimized for common usage, and by leveraging function compilation to reduce the number of overall function calls.
Lo-Dash<EFBFBD>s performance is gained by avoiding slower native methods, instead opting for simplified non-ES5 compliant methods optimized for common usage, and by leveraging function compilation to reduce the number of overall function calls.
## Dive in
We<EFBFBD>ve got [API docs](http://lodash.com/docs) and [unit tests](http://lodash.com/tests).
Underscore<EFBFBD>s [documentation](http://documentcloud.github.com/underscore/) may also be used.
For a list of upcoming features, check out our [roadmap](https://github.com/bestiejs/lodash/wiki/Roadmap).
## Screencasts
@@ -11,19 +19,19 @@ For more information check out these screencasts over Lo-Dash:
* [Introducing Lo-Dash](http://dl.dropbox.com/u/513327/allyoucanleet/post/20/file/screencast.mp4)
* [Compiling and custom builds](http://dl.dropbox.com/u/513327/allyoucanleet/post/21/file/screencast.mp4)
## Documentation
The documentation for Lo-Dash can be viewed here: <http://lodash.com/docs>
Underscore's [documentation](http://documentcloud.github.com/underscore/) may also be used.
For a list of upcoming features, check out our [roadmap](https://github.com/bestiejs/lodash/wiki/Roadmap).
For a summary of bug fixes, changes, features, and optimizations, check out [/wiki/The-Low-Down](https://github.com/bestiejs/lodash/wiki/The-Low-Down).
## Features
Lo-Dash comes with AMD loader support, chainable [_.forEach](http://lodash.com/docs#_foreachcollection-callback--thisarg), lazy [_.bind](http://lodash.com/docs#_bindfunc--arg1-arg2-), [and more](https://github.com/bestiejs/lodash/wiki/The-Low-Down#wiki-features)...
* AMD loader support
* [_.bind](http://lodash.com/docs#_bindfunc--arg1-arg2-) supports *"lazy"* binding
* [_.debounce](http://lodash.com/docs#_debouncefunc-wait-immediate)<29>ed functions match [_.throttle](http://lodash.com/docs#_throttlefunc-wait)<29>ed functions<6E> return value behavior
* [_.forEach](http://lodash.com/docs#_foreachcollection-callback--thisarg) is chainable
* [_.groupBy](http://lodash.com/docs#_groupbycollection-callback--thisarg) accepts a third `thisArg` argument
* [_.partial](http://lodash.com/docs#_partialfunc--arg1-arg2-) for more functional fun
* [_.size](http://lodash.com/docs#_sizecollection) returns the `length` of a string value
## Support
Lo-Dash has been tested in at least Chrome 5-19, Firefox 1.5-12, IE 6-9, Opera 9.25-11.64, Safari 3.0.4-5.1.3, Node.js 0.4.8-0.6.18, Narwhal 0.3.2, RingoJS 0.8, and Rhino 1.7RC3.
## Custom builds
@@ -48,13 +56,13 @@ Custom builds are saved to `lodash.custom.js` and `lodash.custom.min.js`.
## Installation and usage
In a browser:
In browsers:
~~~ html
<script src="lodash.js"></script>
~~~
Via [npm](http://npmjs.org/):
Using [npm](http://npmjs.org/):
~~~ bash
npm install lodash
@@ -110,13 +118,101 @@ cd lodash
git submodule update --init
~~~
Feel free to fork and send pull requests if you see improvements!
## Closed Underscore issues
## Footnotes
* Fix Firefox, IE, Opera, and Safari object iteration bugs [#376](https://github.com/documentcloud/underscore/issues/376)
* Handle arrays with `undefined` values correctly in IE < 9 [#601](https://github.com/documentcloud/underscore/issues/601)
* Methods should work on pages with incorrectly shimmed native methods [#7](https://github.com/documentcloud/underscore/issues/7)
* Register as AMD module, but still export to global [#431](https://github.com/documentcloud/underscore/pull/431)
* `_.forEach` should be chainable [#142](https://github.com/documentcloud/underscore/issues/142)
* `_isNaN(new Number(NaN))` should return `true`
* `_.reduceRight` should pass correct callback arguments when iterating objects
* `_.size` should return the `length` of a string value
* Lo-Dash has been tested in at least Chrome 5-19, Firefox 1.5-12, IE 6-9, Opera 9.25-11.64, Safari 3.0.4-5.1.3, Node.js 0.4.8-0.6.18, Narwhal 0.3.2, RingoJS 0.8, and Rhino 1.7RC3.
## Optimized methods <sup>(50+)</sup>
* Lo-Dash is part of the BestieJS *"Best in Class"* module collection. This means we promote solid browser/environment support, ES5 precedents, unit testing, and plenty of documentation.
* `_.bind`
* `_.bindAll`
* `_.clone`
* `_.compact`
* `_.contains`, `_.include`
* `_.defaults`
* `_.defer`
* `_.difference`
* `_.each`
* `_.escape`
* `_.every`, `_.all`
* `_.extend`
* `_.filter`, `_.select`
* `_.find`, `_.detect`
* `_.flatten`
* `_.forEach`, `_.each`
* `_.functions`, `_.methods`
* `_.groupBy`
* `_.indexOf`
* `_.intersection`, `_.intersect`
* `_.invoke`
* `_.isEmpty`
* `_.isEqual`
* `_.isFinite`
* `_.isObject`
* `_.isString`
* `_.keys`
* `_.lastIndexOf`
* `_.map`, `_.collect`
* `_.max`
* `_.memoize`
* `_.min`
* `_.mixin`
* `_.pick`
* `_.pluck`
* `_.reduce`, `_.foldl`, `_.inject`
* `_.reject`
* `_.result`
* `_.shuffle`
* `_.some`, `_.any`
* `_.sortBy`
* `_.sortedIndex`
* `_.template`
* `_.throttle`
* `_.toArray`
* `_.union`
* `_.uniq`, `_.unique`
* `_.values`
* `_.without`
* `_.wrap`
* `_.zip`
* plus all `_(...)` method wrappers
## Changelog
### <sup>v0.2.0</sup>
* Added custom build options
* Added default `_.templateSettings.variable` value
* Added *"lazy bind"* support to `_.bind`
* Added native method overwrite detection to avoid bad native shims
* Added support for more AMD build optimizers and aliasing as the *"underscore"* module
* Added `thisArg` to `_.groupBy`
* Added whitespace to compiled strings
* Added `_.partial`
* Commented the `iterationFactory` options object
* Ensured `_.max` and `_.min` support extremely large arrays
* Fixed IE < 9 `[DontEnum]` bug and Firefox < 3.6, Opera > 9.50 - Opera < 11.60, and Safari < 5.1<EFBFBD>s prototype property iteration bug
* Inlined `_.isFunction` calls.
* Made `_.debounce`<EFBFBD>ed functions match `_.throttle`<EFBFBD>ed functions<6E> return value behavior
* Made `_.escape` no longer translate the *">"* character
* Fixed `clearTimeout` typo
* Simplified all methods in the *"Arrays"* category
* Optimized `_.debounce`, `_.escape`, `_.flatten`, `_.forEach`, `_.groupBy`, `_.intersection`, `_.invoke`, `_.isObject`, `_.max`, `_.min`, `_.pick`, `_.shuffle`, `_.sortedIndex`, `_.template`, `_.throttle`, `_.union`, `_.uniq`
### <sup>v0.1.0</sup>
* Initial release
## BestieJS
Lo-Dash is part of the BestieJS *"Best in Class"* module collection. This means we promote solid browser/environment support, ES5 precedents, unit testing, and plenty of documentation.
## Author