Releases: crossfilter/crossfilter
Release 1.5.4 - fix filtering on 32nd dimension
Release 1.5.3 - fix for removing/adding records with tag dimension
- #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
Change to readonly syntax in types to accommodate Typescript <= 3.2.
Release 1.5.1 - fixes CommonJS entry point
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
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.jsis 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 fordimension.top()and.bottom(), when there are different valid sorts.
Release 1.4.8 - bug fixes
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
TypeErrorbecause 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:
Release 1.4.7 - typescript fixes
Release 1.4.6 - unpkg support
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
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
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.