This file includes at least a partial list of the major changes in each version.
v0.4.0 (in progress)
- now
Lazy.AsyncHandle
implements the Promises/A+ specification! (see #71)
- fixed
Sequence#groupBy
to work for async sequences (see #72) - fixed
StreamLikeSequence#split
to split properly across chunks (see #70) - changed
Sequence#filter
so it passes a simple incrementing index with each element (like Underscore/Lo-Dash) - added
Lazy.clone
to create a shallow copy of an object or array - added
Sequence#sort
, which can accept a 2-arity function for more customized sorting (see #65) - both
Sequence#sort
andSequence#sortBy
now accept adescending
argument - added
Sequence#indexBy
- added
Sequence.createWrapper
(see http://stackoverflow.com/questions/20959394) - added
Sequence#memoize
andSequence#none
- fixed
Sequence#reject
to accept a string or object (like other methods involving predicates) - fixed bug in
Sequence#all
AsyncSequence#getIterator
now throws an error (see #63)
- added
Sequence#apply
(see #61) andSequence#size
(see #56) - added
ObjectLikeSequence#merge
(see #55) - added
Sequence#toStream
to create an actualstream.Readable
in Node, to interact w/ stream-based libraries (see #53)
- now these methods on
AsyncSequence
return a promise-likeAsyncHandle
, allowing you to do something w/ the result once iteration is complete (usingonComplete
, which is aliased asthen
):reduce
min
max
sum
find
indexOf
contains
toArray
toObject
join
/toString
- added
Lazy(object).watch
to monitor changes to a property as a sequence (see #49) - added
Sequence#chunk
,Sequence#tap
, andSequence#ofType
- deprecated
Lazy.events
in favor ofNodeSequence#on
(note: I should probably renameNodeSequence
toDOMSequence
)
- reverted change to
Lazy()
helper function, addedLazy.strict()
to provide the stricter form (see #44) - added
Lazy.parseJSON
method along with demo (see experimental/ folder) - added
onComplete
to handle returned byAsyncSequence#each
- updated
Lazy()
helper function to throw an error onnull
orundefined
- changed behavior of
Sequence.define
--init
no longer must acceptparent
as a first parameter (see #45) - added
ArrayLikeSequence.define
,ObjectLikeSequence.define
, andStringLikeSequence.define
- added
takeWhile
,dropWhile
, andconsecutive
- implemented many string-specific methods for
StringLikeSequence
:indexOf
,lastIndexOf
, andcontains
(all accept a substring)startsWith
andendsWith
reverse
(returns aStringLikeSequence
)toUpperCase
andtoLowerCase
charCodeAt
substring
- implemented array-specific methods for
ArrayLikeSequence
:pop
shift
slice
- added support for supplying
pluck
-style callbacks (strings) tomap
,filter
,sortBy
,groupBy
,countBy
,any
, andall
- now
groupBy
andcountBy
both return anObjectLikeSequence
- added value selector callbacks to
min
,max
, andsum
- fixed some cases where
each
did not pass along an index with each element - fixed
map().async()
- fixed handling of
NaN
in some cases - added
Lazy.noop
andLazy.identity
convenience methods
flatten
can now flatten inner sequences (not just arrays)- added
Sequence#toString
- significant perf improvements for
uniq
,union
,intersection
,concat
,zip
- removed
Lazy.async
in favor ofSequence#async
- added Bower and Component support
- added
Lazy.readFile
andLazy.makeHttpRequest
(for Node)
Initial release.