Davezuko Redash Versions Save

Tiny functional programming suite for JavaScript.

v0.23.0

6 years ago

Deprecations

  • getEq has been deprecated. Use matches or where for similar functionality.
  • pair has been deprecated.
  • lens has been deprecated.
  • lensProp has been deprecated.
  • set has been deprecated. Use assocIn for similar functionality.
  • over has been deprecated. Use updateIn for similar functionality.
  • view has been deprecated. Use getIn for similar functionality.

Improvements

  • Documentation site has been entirely redesigned.
  • mean no longer throws if the list is empty, returns 0 instead.
  • rangeBy no longer throws for bad ranges, returns an empty list instead.
  • transform no longer throws for invalid transforms, the original value is passed through.

Changes

  • The redash API no longer modifies function names. This will eventually be moved to a separate addon for developer usage.

v0.22.0

6 years ago

Features

  • Added assocIn.
  • Added everyPred.
  • Added matches.

Fixes

  • assoc now respects arrays (does not convert them to array-like objects).

v0.21.1

6 years ago

Ignore, for NPM only.

v0.21.0

6 years ago

Deprecations

  • Removed gt, use > inline instead.
  • Removed gte, use >= inline instead.
  • Removed lt, use < inline instead.
  • Removed lte, use <= inline instead.
  • Removed flip, use arrow functions instead.
  • Removed fmap.
  • Removed of.

Features

  • Added difference.
  • Added interpose.
  • Added invert.

Fixes

  • compose now has a correct toString representation.
  • pipe now has a correct toString representation.

Improvements

  • Miscellaneous TypesScript definition improvements.
  • get no longer throws when the target is nil, now returns undefined.
  • getIn no longer throws when the target is nil, now returns undefined.
  • rangeBy now returns an empty array when start === end.
  • compose no longer performs runtime type checking.
  • pipe no longer performs runtime type checking.
  • Eliminated extra toString calls in equals.

v0.20.0

6 years ago

Deprecation Warnings

  • path will be deprecated in future releases.
  • prop will be deprecated in future releases.
  • propEq will be deprecated in future releases.

Migration Path

  • isEmpty now returns true for falsy values.

Features

  • Added rudimentary TypeScript definitions.
  • Added update.
  • Added updateIn.

Improvements

  • Renamed path to getIn.
  • Renamed prop to get.
  • Renamed propEq to getEq.

v0.19.0

7 years ago

Migration path

  • mapValues has been deprecated because map now supports objects. Replace usage of mapValues with map.
  • identical now implements SameValueZero semantics. The only breaking change here is that NaN is now treated as identical to NaN.

Features

  • Added intersection.
  • Added match.
  • Added pad.
  • Added padLeft.
  • Added padRight.
  • Added unique.

Fixes

  • Functions with an arity > 3 now properly report their arity when partially applied.

Improvements

  • map now supports plain objects.
  • Curried functions now provide better stringified representations for a better debugging experience.
  • identical now implements SameValueZero semantics. This affects any function, such as equals, that performs identity checks.

v0.18.0

7 years ago

Migration path

  • Internal arity function no longer preserves this context. This should not affect the public API, but always be sure that you are not implicitly relying on this when working with redash.

Features

  • Added clamp.
  • Added groupBy.
  • Added takeUntil.
  • Added trace.
  • Added transform.
  • Added flatMap alias for chain.

Improvements

  • concat now dispatches to the first argument's concat method.
  • concat now supports strings.
  • curry now supplies all arguments to the wrapped function. This improves support for functions that do not properly report their arities.
  • filter now works for objects.
  • reject now works for objects.

v0.17.0

7 years ago

Migration path

  • pipe and compose are now unary and require the functions to be wrapped in an array.
pipe(fn1, fn2, fn3)   // old
pipe([fn1, fn2, fn3]) // new

compose(fn3, fn2, fn1)   // old
compose([fn3, fn2, fn1]) // new

Beside making the signature for these functions more sane and in line with the rest of the redash API, this change has an added benefit for fans of the trailing comma:

// Error!
pipe(
  fn1,
  fn2,
  fn3,
)

// OK!
pipe([
  fn1,
  fn2,
  fn3,
])

Features

  • Added init.
  • Added path.
  • Added replace.

Improvements

  • contains now supports strings.
  • pipe and compose are now both unary.

v0.16.0

7 years ago

Features

  • Added F.
  • Added T.
  • Added partition.

Deprecations

  • mapIndexed is now mapi.

v0.15.1

7 years ago

Features

  • pipe and compose now throw early if they receive arguments that are not functions.