Skip to content

Releases: crossfilter/crossfilter

Release 1.5.4 - fix filtering on 32nd dimension

25 Sep 03:49

Choose a tag to compare

  • #158 filtering on the 32nd, 64th, ... dimension would not correctly remove values from dimensions 1-31. Thanks @aarontjl!

Release 1.5.3 - fix for removing/adding records with tag dimension

20 Aug 16:11

Choose a tag to compare

  • #156 groupIndex was not truncated when records were removed, resulting in bad tag group values and possible crashes. Thanks @namannehra!
  • test added for crash from #155

Release 1.5.2 - relaxes Typescript compatibility

02 Jan 13:42

Choose a tag to compare

Change to readonly syntax in types to accommodate Typescript <= 3.2.

Release 1.5.1 - fixes CommonJS entry point

20 Dec 00:53

Choose a tag to compare

Using crossfilter in Node was failing because you can't import ES6 modules using CommonJS require('crossfilter2').

Now that the crossfilter source is ES6, the CommonJS entry point (main: in package.json) is the UMD module crossfilter.js

Release 1.5.0 - ES6 compatible

09 Nov 21:23

Choose a tag to compare

This version removes support for Internet Explorer. Please use version 1.4.* if you still need IE support.

  • ported to ES6 module, thanks @christophe-g! As before, crossfilter.js is a UMD module, now bundled with Rollup.
  • uses built-in Array.sort() instead of custom quicksort and insertion sort. Smaller library, sometimes faster. Thanks @monfera! Results may be slightly different for dimension.top() and .bottom(), when there are different valid sorts.

Release 1.4.8 - bug fixes

09 Nov 06:01

Choose a tag to compare

Bugs:

  • items were not being removed correctly from dimension 32, 64, 96, ... #138. This was a bug that went back to version 0. Thanks @TijmenW!
  • typed arrays were accidentally disabled #134. Doesn't make a performance difference on V8 but it could make a difference on older browsers. Thanks @monfera for spotting this!
  • adding records while a tag dimension was filtered would cause an inconsistent state #127. Thanks @scorchiowned for the report!
  • rows with an empty tags array would be returned by .top() if the filtered tag in the dimension is the only tag in the dataset #141. Thanks Alan for raising this on Stack Overflow.
  • removing data could throw a TypeError because you can't truncate a typed array by setting its length #124. Thanks @christophe-g!
  • some tests had invalid mixed string and number data #135. Thanks @monfera for the heads up!

Typescript:

  • add readonly for .all() methods that return internal arrays #136, thanks @TijmenW!

Release 1.4.7 - typescript fixes

25 Oct 20:31

Choose a tag to compare

onChange return type was wrong (#108)

const enum was incorrect (#117)

Types for reduce() function were too restrictive (#119 / #123)

Fix typing of arrays for tag/array dimension accessor (#126)

Release 1.4.6 - unpkg support

26 Apr 17:35

Choose a tag to compare

Allow ignoring of dimension filters in crossfilter.allFiltered (#101)

Adds the unpkg field to package.json for unpkg.com support, supporting d3-require and Observable. Previously unpkg would default to the main field, which references our CommonJS support, index.js. But unpkg expects browser-compatible JavaScript. (See #106.)

Updated TypeScript definitions. (#98 / #102)

Fixed broken link in package.json (#100)

Release 1.4.5 - Typescript support, new filter API, fix memory leak

16 Feb 19:37

Choose a tag to compare

Typescript types support now provided via an index.d.ts file in the main distribution. This was a team effort led by @fnberta with initial work by @paulsjv. Thanks to both for all your work on this in #86, #95, and #97.

Dimensions now have currentFilter and hasCurrentFilter methods, which return the value that was passed to dimension.filter and a boolean indicator of whether the dimension has a filter applied, respectively. Thanks to @thomasgillet for this improvement to the API in #93.

Fixes a memory leak when disposing groups. Thanks to @betalb for this fix in #88.

1.4.3

22 Sep 15:59

Choose a tag to compare

Note: This release changes the behavior of dimension.groupAll on array dimensions to count records one time for each iter-able value of the record rather than counting each record once. This behavior was erroneous and inconsistent with the dimension.group behavior. If you want the old behavior, define your groupAll on a non-array dimension.

Fixes numerous issues with array dimensions regarding removing data, adding data with limited values to empty dimensions, and problems with the unit tests. Thanks to @alexcampana for these extensive fixes in #83.

Adds the ability to use a predicate function with crossfilter.remove to remove records based on a function rather than the current filters. Thanks to @tehsenaus for implementing this feature in #81.