Releases: keen/keen-js
v5.0.0
Updates:
- dependencies
We strongly recommend you to use standalone packages:
v4.3.0 Module Updates
Automated Event Tracking (browser)
Module Updates:
keen-tracking.js@1.3.0: Automated Event Tracking (browser-only)
This release includes keen-tracking@1.3.0
with automated event tracking (browser-only), along with an important patch that prevents failures when the Event API returns malformed response: keen/keen-tracking.js#88.
v4.1.0 Bug Fixes and Dependency Updates
Module Updates:
keen-tracking.js@1.2.1: Fix Queue Polling
keen-dataviz@1.2.0: Bug Fixes and Dependency Updates
With this release we have also updated the encoding settings for our AWS CDN uploads to ensure JS files are served with UTF-8 encoding, thus fixing the D3-related issue where special characters break without explicitly setting this in the browser.
Hello, Version 4
This release replaces all functionality found in v3 with three standalone modules, listed below, as a bundled distribution. Documentation, bug tracking, and feature development will continue to reside in each module's respective repo. Read about getting started here.
Stream: keen-tracking.js
Documentation | Issues | Upgrade guide
What to expect: One breaking change to a utility method, otherwise a full drop-in replacement.
Compute: keen-analysis.js
Documentation | Issues | Upgrade guide
What to expect: Several breaking changes, significant rework of HTTP methods, and a much better interface for handling requests for all API resources.
Visualize: keen-dataviz.js
Documentation | Issues | Examples | Upgrade guide
What to expect: Several breaking changes, significant rework of internal props.
When keen-js is loaded as a global, these packages will be assigned to a shared Keen
namespace. If you only need select functionality, we recommend using the standalone packages, which can each installed independently, via npm.
v3.5.0 Cancel Requests In-Flight
New features, fixed scoped key generation
This release is dedicated to my friend, Aubrey Howell. Aubrey was in a horrible bicycle accident over the weekend and is currently in critical condition with a severe brain injury. An army of Aubrey's friends and followers launched #codeforaubrey on Tuesday, dedicating their commits to her awesome energy and unstoppable determination to learn, share, and inspire. I'm dedicating this release, and all of the hard work, input, and collaboration that made it possible, to our friend Aubrey. Get well soon, Aubs! <3
There is also a GoFundMe campaign running to pool funds to help her family along in the unknowable weeks and months ahead. If you're able to contribute, please do: https://www.gofundme.com/bhdrw23w
Fixed:
- Scoped key generation support has been restored (#389): Recent improvements to scoped keys validation by the API invalidate keys generated by this and several other SDKs, resulting in an Invalid API Key Error. Newly generated scoped key could be successfully encrypted/decrypted, but cannot be used. This has been fixed.
- C3.js option construction how allows for more control of the
data
object passed in viachartOptions
(#386) - Fix Metric handling of empty results (#372)
- Fixed internal error handling when using unsupported
chartType
values (#382)
New:
- Automatic parsing and visualization of multi-group-by queries (#326)
dateFormat
configuration option/method, which accepts a string or function that is used by the chosen underlying visualization suite (currently only supported by Google Charts and C3.js) (#381)- Improved documentation for RequireJS and JSPM use (#298, #341)
- Removed all
camelCase
API parameters from docs (#387) to avoid common confusion
Want to see our Data Visualization SDK in action? All of our jsFiddles have been updated with this latest release, including dozens of C3.js and Chart.JS examples: https://jsfiddle.net/user/keen/fiddles/
3.3.0 Saved/Cached Queries and fixes
- Add Saved Query support (#345)
- Update c3js (#346)
- Add missing timeframe field to queries (#348)
- Preserve functions passed into chartOptions config (#349)
- Unblock node version (#335)
- include examples of custom date formatting (#327)
- Add node 4.0 to .travis.yml config file
- Fixed syntax error in sample code (#351)
v3.2.7 Improvements and fixes
v3.2.6 Dataset improvements + bug fixes
New:
.appendColumn/Row
,.insertColumn/Row
, and.updateColumn/Row
methods now accept an unbounded number of values. If you insert a new column with 7 values and all other existing columns only have 3 values the write will succeed and all other columns will be extended with cells containing null values- A new
.set
method plots values into the dataset table, creating columns and rows if they don't exist
Fixed:
- Fix
labels
forclient.draw(query, el, cfg)
constructor - disabled in previous release (#299) - Fix
Keen.noConflict()
to explicitly usewindow
when available (ES6/Babel-friendly design re: #288)
Important note about .labels()
(Dataviz): this method must be called after .data()
, .parseRequest()
, or .parseRawData()
, and before .render()
to take effect. This method executes a one-time, permanent modification of the underlying Dataset
instance, and will be overwritten every time the chart consumes new data.