IxJS

The Interactive Extensions for JavaScript

MIT License

Downloads
93.1K
Stars
1.3K
Committers
29

Bot releases are visible (Hide)

IxJS - v5.0.0 Latest Release

Published by trxcllnt about 2 years ago

chore

Documentation

  • CHANGELOG: 5.0.0 (184d615)

  • [FIX] Ensure return is called on AsyncIterators (#348) (72c37ec), closes #348

  • Default to flatMap concurrent (#347) (32137a7), closes #347

Bug Fixes

  • flatMap: default flatMap concurrent parameter to 1 (#346) (bcfab5a)
IxJS - v4.6.1

Published by trxcllnt about 2 years ago

chore

Documentation

IxJS - v4.6.0

Published by trxcllnt about 2 years ago

chore

Continuous Integration

  • use github actions instead of travis-ci (#344) (d357a19)

Documentation

BREAKING CHANGES

  • flatMap enumerates inner sequences in parallel

  • flat enumerates inner sequences in parallel

  • feat(concatmap.ts): add concatMap implementation

IxJS - v4.5.2

Published by trxcllnt about 3 years ago

Bug Fixes

  • pipethrough: fix Iterable/AsyncIterable pipeThrough signature (#338) (58dea12)

chore

Documentation

IxJS - v4.5.1

Published by trxcllnt about 3 years ago

Bug Fixes

  • add static Iterable.as and AsyncIterable.as (#336) (b911d1a)

chore

Documentation

IxJS - v4.5.0

Published by trxcllnt about 3 years ago

chore

Documentation

Features

  • from: support AbortSignal in from(observable) (#333) (7897e85)

    • chore(readme.md): update travis-ci badge url (#334) (370ae91), closes #334
  • Update to TypeScript v4.3.5 (#332) (0637a25), closes #332 #331

IxJS - v4.4.1

Published by trxcllnt over 3 years ago

Bug Fixes

  • package.json: use ^ for allowed tslib versions (#330) (02b1a22)

chore

Documentation

IxJS - v4.4.0

Published by trxcllnt over 3 years ago

Bug Fixes

  • src/asynciterable/operators/batch.ts: create rejected Promise on demand (#328) (aa40ab1), closes #320
  • src/asynciterable/operators/timeout.ts: ensure AsyncIterable timeout operator passes its values (#327) (f5a213a), closes #325

chore

Documentation

  • CHANGELOG: 4.4.0 (f158951)
  • docs/asynciterable/creating.md: Fix async iterable docs typo s/source/sink (#317) (084658f)

fea

  • asynciterable-operators: Add bufferCountOrTime operator (#324) (ee7c43e)
IxJS - v4.3.1

Published by trxcllnt over 3 years ago

Bug Fixes

  • Promise.race: Fix Promise.race memory leaks (#323) (75ef616)

chore

  • npm-release.sh: set concurrency to 1 to work around npm publish rate limits (825bdd8)
  • release: 4.3.1 (0bdb6c3)
  • saferace.ts: add unlicense to safeRace.ts (c9c0a83)

Documentation

IxJS - v4.3.0

Published by trxcllnt over 3 years ago

Bug Fixes

  • Abort: Ensure removal of event listeners from AbortSignal (#321) (d4de33b)

chore

Documentation

IxJS - v4.2.0

Published by trxcllnt over 3 years ago

Bug Fixes

  • umd: fix the UMD bundle export names so they don't conflict and overwrite each other (#318) (c45eaa8)

chore

Documentation

IxJS - v4.1.0

Published by trxcllnt over 3 years ago

Bug Fixes

  • operators: export withLatestFrom and withAbort AsyncIterable operators (#313) (19915b5)
  • operators: support Array.prototype.reduce signature in Iterable scan and reduce operators again. Fixes #311 (#312) (1d98746)
  • repeat-spec.ts: fix unhandled-rejection error in node v15 (7d84c87)
  • takeUntil: complete iterable immediately (#315) (#316) (97b2ca2)

chore

  • npm-release.sh: add prompt to enter npm OTP before release (f0c111e)
  • npm-release.sh: use npm run-script instead of npx run-s in release script (b03597d)
  • release: 4.1.0 (8893e2c)

Documentation

  • CHANGELOG: 4.1.0 (9bb3013)
  • readme: fix wrong result of samples and typo (16fe9b0)
IxJS - v4.0.0

Published by trxcllnt about 4 years ago

Bug Fixes

  • aborterror: add Symbol.hasInstance method to AbortSignal (c9d9f1e)
  • closure: fixing indexing (8692d0c)
  • debounce: fix AsyncIterable debounce and reenable tests (480996e)
  • extremaBy: fixing extrema/minBy (297d6e4)
  • maxby-spec: fix maxby test (2699e40)
  • minification: fix test failures breaking due to aggressive closure-compiler minification (a888ce8)
  • specs: fixing tests for single (2793801)
  • tests: Fix bad max test (3a853ee)
  • tests: Fixing tests (0affef1)
  • tests: Fixing tests (c0a3e68)
  • tests: Get closure working on tests (4c0705f)

Build System

  • jest: disable jest test caching (92a1978)
  • typescript: update typescript, tslib, and google-closure-compiler versions (37d66b3)

chore

Code Refactoring

  • abortsignal: remove AbortSignal interface (8ed7fca)

Continuous Integration

  • travis: update to the latest npm (d53de73)

Documentation

  • AsyncIterable: Add basic async-iterable docs (11c2037)
  • CHANGELOG: 4.0.0 (4cedaa8)
  • creation: split creation/converting (e8dfa97)
  • IxJS: Adding basic overview (10abfdc)

Features

  • Abort: Add basic abortsignal support (a66a7c8)

  • Abort: Add basic abortsignal support (07ba58c)

  • Abort: Add more aborts (b7832a6)

  • Abort: add more throws if aborted (2a489e1)

  • Abort: fix debounce (954ce58)

  • Abort: Fix most operators (08a4c08)

  • Abort: fix reduce (6e848f1)

  • Abort: Formatting (d9e75ef)

  • Abort: Update all JSDocs (313a1b4)

  • asasynciterable: add AsyncIterableTransform stream (e3d12a1)

  • min/max: Fix min and max (37e7c0a)

  • never: Adds never (64a9c31)

  • Adding converting docs and links (6c493ae)

  • Updating through withLatestFrom (79be89c)

  • Adding docs through map (cf6a509)

Styles

  • specs: reorder expected vs. actual comparisons for error-throwing tests (3cc1d8d)

Tests

  • umd: import test utils to fix missing window global when testing webpack-minified UMD bundles (111f854)
IxJS - v3.0.2

Published by trxcllnt over 4 years ago

chore

  • changelog: fix conventional-changelog-angular changelog generation (e499b92)
  • lerna: update package version in lerna.json (73349f3)
  • npm-release.sh: require semantic-version bump in npm-release.sh (0b917fd)
  • package.json: bump @types/node version (6d85dad)
  • package.json: bump async-done dependency (9ed76aa)
  • package.json: bump command-line-args version (05d2cbe)
  • package.json: bump coveralls version (e053a82)
  • package.json: bump del version (bce533d)
  • package.json: bump glob version (38d0e48)
  • package.json: bump google-closure-compiler version (007e847)
  • package.json: bump gulp-json-transform version (8d64d4f)
  • package.json: bump gulp-rename version (e67c408)
  • package.json: bump husky version (3cb2b11)
  • package.json: bump jest and ts-jest versions (2e68e49)
  • package.json: bump jest-silent-reporter version (297a782)
  • package.json: bump lerna version (5e1a8c7)
  • package.json: bump lint-staged version (595d066)
  • package.json: bump mkdirp and rimraf versions (abfdfaa)
  • package.json: bump rxjs version (4ab4418)
  • package.json: bump typescript and ts-node versions (9b6e403)
  • package.json: bump typescript-eslint versions (3cb11e3)
  • package.json: bump web-streams-polyfill version (d5436a0)
  • package.json: bump webpack and terser versions (f1f18c0)
  • package.json: remove unused jest-codemods dependency (50641c5)
  • package.json: update conventional-commits dependencies (22d86eb)
  • release: 3.0.2 (3218613)

Documentation

  • CHANGELOG: 3.0.2 (48996e9)
  • typedoc: use typedoc instead of esdoc (67c9062)
  • fix commonjs iterable require example (#298) (5520fcf)
IxJS - v3.0.1

Published by trxcllnt over 4 years ago

IxJS - IxJS version 3.0

Published by mattpodwysocki over 4 years ago

At long last, IxJS v3.0 is here! There are a lot of changes with this release to be more in line with RxJS 6+ with piped operators. We have still kept the "add to prototype" methods as well which can be used to augment operators directly onto the AsyncIterable and Iterable objects.

Importing operators

Much like RxJS, IxJS operators can now be imported using the following for AsyncIterable. The same applies to Iterable much as we are doing with AsyncIterable down below.

import { from } from 'ix/asynciterable';
import { map, filter } from 'ix/asynciterable/operators';

async function* getData() {
  yield 1;
  yield 2;
  yield 3;
}

const results = from(getData()).pipe(
  map(async (item, index) => item * index),
  filter(async (item, index) => index % 2 === 0)
);

for await (let result of results) {
  console.log(`Next ${result}`);
}

Adding Operators to the prototype

Much like earlier versions of IxJS and RxJS, you can still add onto the prototype for chaining purposes.

import { AsyncIterableX as AsyncIterable } from 'ix/asynciterable';
import 'ix/add/asynciterable/from';
import 'ix/add/asynciterable-operators/map';
import 'ix/add/asynciterable-operators/filter';

async function* getData() {
  yield 1;
  yield 2;
  yield 3;
}

const results = Iterable.from(getData())
  .map(async (item, index) => item * index)
  .filter(async (item, index) => index % 2 === 0);

for await (let result of results) {
  console.log(`Next ${result}`);
}

The forEach operator is already added just in case you wanted to use lambdas all the way through such as the following which has also as a catch method as the result from .forEach is a promise.

const results = Iterable.from(getData())
  .map(async (item, index) => item * index)
  .filter(async (item, index) => index % 2 === 0)
  .forEach(result => console.log(`Next ${result}`))
  .catch(err => console.log(`Error ${err}`));
IxJS - v2.5.3

Published by trxcllnt over 5 years ago

The IxJS v2.5.3 release is now available. This updates the following:

New Features

  • Add Iterator support for the from method for both AsyncIterable and Iterable
  • Add callback overload to tap to support tap(nextCb, errorCb, doneCb) in addition to tap(observer)
  • Adds Iterable#pipe(writable), Iterable#toDOMStream(), Iterable#pipeTo/pipeThrough/tee to match AsyncIterable

Changes

  • Change callbacks for PartialObserver and finally to return any instead of void

Bug Fixes

  • #269 pipe broken for two operators
  • Fixes combineLatest and zip to handle zero length arguments
  • #273 Fixes issues with memoize and adds additional tests
IxJS - v2.5.2

Published by trxcllnt over 5 years ago

IxJS - v2.5.1

Published by trxcllnt almost 6 years ago

IxJS - v2.5.0

Published by trxcllnt almost 6 years ago