All Versions
24
Latest Version
Avg Release Cycle
78 days
Latest Release
1200 days ago

Changelog History
Page 1

  • v3.0.0-beta.7 Changes

    December 04, 2020

    Essential Links

    ๐Ÿ’ฅ Breaking Changes

    • 0๏ธโƒฃ #8111 LineElement: no fill by default
    • ๐Ÿ”Œ #8102 Unify signature of plugin hooks
    • ๐Ÿšš #8089 Move title, tooltip and legend to options.plugins
    • โช #8090 Restore datasets namespace (revert 6955)
    • #8066 Align font options with CSS
    • #8074 Rename uppercase types to camel case
    • #8062 Unify cartesian scale tick order
    • ๐Ÿ’ป #8009 Drop legacy browser support

    โœจ Enhancements

    • ๐Ÿ”Œ #8112 Add new scale hooks for plugins
    • ๐Ÿ”Œ #8103 Add new hooks for plugins
    • ๐Ÿ”Œ #8102 Unify signature of plugin hooks
    • 0๏ธโƒฃ #8050 Allow single parameter to Defaults.set
    • #8060 Enable bounds option to all cartesian axes
    • #8053 CategoryScale: automatically add missing labels

    ๐ŸŽ Performance

    • #8049 Events: Only render when needed

    ๐Ÿ› Bugs Fixed

    • #8101 Fix CategoryScale.getValueForPixel with autoSkip
    • #8097 Fix disabling hover
    • #8082 Do not use offsetX/Y in shadow DOM
    • 0๏ธโƒฃ #8052 Chart.register: preserve existing defaults
    • #8024 dataset tooltip now shows correctly

    Types

    • #8118 [v3] Add locale to ChartOptions type
    • #8110 fix color type & add background and border color
    • #8074 Rename uppercase types to camel case
    • ๐Ÿ”Œ #8048 Add plugins to CoreChartOptions
    • #8027 [beta.6][types] fix inconsistency in types for LABEL

    ๐Ÿ“š Documentation

    • #8118 [v3] Add locale to ChartOptions type
    • #8113 Fix/area fill and chart titles
    • ๐ŸŽ #8107 Fix typo in performance.md
    • ๐Ÿ›  #8099 fixed samples: area dataset (line), Radar and Logarithmic scale scatter
    • โšก๏ธ #8093 Update interpolation-modes sample to new defaults
    • #8081 Place scatter chart example options in the correct spot
    • ๐Ÿšš #8080 made scatter chart a lot better readable, removed unnecesarry notes
    • ๐Ÿ’… #8076 Remove classic style extensions from docs/tests
    • ๐Ÿ“„ #8070 fix broken url in docs
    • โšก๏ธ #8071 v2 note not nessecary in v3 docs and update example
    • #8065 Add missing import to styling.mdx
    • ๐Ÿ“š #8061 Update axis documentation
    • โšก๏ธ #8047 Update v3-migration.md
    • #8041 Fix broken link
    • #8039 Fix import names in integration example
    • ๐Ÿ“š #8037 documentation error
    • #8072 Fix url bug

    Development

    • ๐Ÿ”Œ #8104 Title plugin cleanup
    • ๐Ÿ”จ #8057 Refactor/cleanup range option handling
    • #8036 Try and get the version number without a v
    • โœ… #8028 Add tests and clean up resolveObjectKey helper
    • #8128 Bump highlight.js from 10.3.1 to 10.4.1

    Thanks to @IVIosi, @LeeLenaleee, @dependabot, @dependabot[bot], @etimberg, @kurkle, @lab900-marcel-samyn, @lpellegr, @saintmalik, @wenfangdu and @xr0master

  • v3.0.0-beta.6 Changes

    November 08, 2020

    Essential Links

    ๐Ÿ’ฅ Breaking Changes

    • ๐Ÿšš #8017 Remove I prefix from TS types

    โœจ Enhancements

    • #8007 Add type to context objects

    ๐Ÿ› Bugs Fixed

    • ๐Ÿšš #8013 When data is removed, remove from stacks too
    • โšก๏ธ #8006 Use same merging logic for init and update
    • ๐Ÿšš #7996 Remove use of null propagation operator since it's still in a draft state

    Types

    • 0๏ธโƒฃ #8025 Improved types for defaults
    • ๐Ÿšš #8017 Remove I prefix from TS types
    • 0๏ธโƒฃ #8001 [types][beta-5] fixed stacked scale, changed default type for data.labels

    ๐Ÿ“š Documentation

    • #8004 Destroy example charts on unmount

    Development

    • #8018 Bubble: Use point.size() in getMaxOverflow
    • ๐Ÿšš #8014 Remove +-10px limit from bar controller
    • #8015 Normalize rotation and circumference resolution

    Thanks to @emmcbd, @etimberg, @kurkle and @xr0master

  • v3.0.0-beta.5 Changes

    November 01, 2020

    Essential Links

    ๐Ÿ’ฅ Breaking Changes

    • #7989 Delay resize to just before draw when animating
    • 0๏ธโƒฃ #7979 Relocate dataset defaults to defaults.controllers
    • โšก๏ธ #7949 Add args.mode to before/after update plugin hooks
    • #7936 Rename showLines to showLine
    • #7924 Rename elements to mark as elements, i.e. Arc -> ArcElement
    • ๐Ÿšš #7900 Document getElementsAtEventForMode and remove APIs that can be replaced by it

    โœจ Enhancements

    • #7981 Preserve scriptable context
    • ๐Ÿ’… #7972 feat: Draw tooltips with point styles. Closes #7774
    • #7968 feat: Make options.layout.padding scriptable. Closes #7873
    • #7951 feat: add borderRadius to bar charts. Closes #7701
    • ๐Ÿ’… #7959 Enable overriding the legend pointStyle using new pointStyle option
    • #7955 Enable suggestedMin and suggestedMax settings for logarithmic axes
    • โšก๏ธ #7949 Add args.mode to before/after update plugin hooks
    • #7924 Rename elements to mark as elements, i.e. Arc -> ArcElement
    • #7905 Ability to fill a line to a specified value along an axis
    • #7904 Bar chart base value overrides

    ๐Ÿ› Bugs Fixed

    • #7989 Delay resize to just before draw when animating
    • #7986 Check index bounds of datasets for isDatasetVisible
    • #7983 Tooltip: clear cached animations on initialize
    • #7964 Legend item lineWidth is the average of borderWidth when set as object (Bar)
    • ๐Ÿ”€ #7919 Block incorrect keys in merge code to prevent prototype pollution
    • ๐Ÿ”€ #7917 Use Object.create(null) as merge target, to prevent prototype pollution
    • #7910 Render points while animations are active
    • #7908 Reduce tooltip implied padding at top and bottom edges of the canvas
    • ๐Ÿ‘ป #7906 Fix Maximum call stack size exception in _computeLabelSizes
    • #7899 Fix beginAtZero for logarithmic axes
    • #7897 Share min sample size with all bars on the same scale

    Types

    • #7961 fix return type for setActiveElements

    ๐Ÿ“š Documentation

    • #7988 Use TypeScript syntax highlight for TypeScript code
    • โšก๏ธ #7957 Update stacked line sample to remove duplicate dataset names
    • โšก๏ธ #7953 Update category scale labels types to include string[][]
    • ๐Ÿ“š #7914 Documentation Typos
    • โœ๏ธ #7913 Minor Typos
    • ๐Ÿ“„ #7912 Fix broken url in docs
    • ๐Ÿ“„ #7909 Fix version numbers in Developers section of docs
    • ๐Ÿšš #7900 Document getElementsAtEventForMode and remove APIs that can be replaced by it

    Development

    • #7978 Rename lineTension back to tension
    • 0๏ธโƒฃ #7979 Relocate dataset defaults to defaults.controllers
    • ๐Ÿšš #7939 Move config handling to a dedicated script
    • โšก๏ธ #7949 Add args.mode to before/after update plugin hooks
    • #7936 Rename showLines to showLine
    • โšก๏ธ #7915 Update dependencies
    • ๐Ÿš€ #7911 Stop deploying docs / drafting releases from forks
    • ๐Ÿ’ป #7902 Renamed .browserlistrc to .browserslistrc
    • ๐Ÿšš #7898 Remove circular dependencies from helpers

    Thanks to @danmana, @etimberg, @fab313, @indigolain, @kurkle, @paul-cheung, @silentmatt, @stockiNail and @Yash-Singh1

  • v3.0.0-beta.4 Changes

    October 15, 2020

    Essential Links

    ๐Ÿ’ฅ Breaking Changes

    • #7886 Shorten alignment settings for axes
    • #7871 Polar Area elements.arc.angle option now returns degrees
    • #7843 Provide method to lookup a chart from a canvas
    • #7833 Enable per-dataset circumference and rotation for pie/doughnut charts

    โœจ Enhancements

    • #7886 Shorten alignment settings for axes
    • #7870 Ability to toggle individual bar visibility
    • #7874 Cartesian axis label cross alignment
    • #7846 Cartesian axis text alignment
    • ๐Ÿ‘ #7862 beginAtZero support for logarithmic
    • #7852 Add maxWidth/maxHeight options for legend
    • #7849 Add new option, skipNull to bar charts that enables skipping null values
    • #7851 Enable custom sorting of the legend items
    • #7845 Provide APIs to set active (hovered) and tooltip elements.
    • #7843 Provide method to lookup a chart from a canvas
    • #7833 Enable per-dataset circumference and rotation for pie/doughnut charts

    ๐Ÿ› Bugs Fixed

    • #7848 Limit pixel values further to 16bit integer range
    • ๐Ÿ‘ฏ #7837 Clone cached options if enableOptionSharing!=true
    • #7836 Use full height for fullWidth box when left/right

    Types

    • ๐Ÿšš #7841 Remove enum types

    ๐Ÿ“š Documentation

    • ๐Ÿ›  #7875 docs: Grammar fixes for cartesian and radial docs
    • โšก๏ธ #7868 Update custom tooltips to work with multiple charts on a page
    • #7865 Add tooltip positioning sample
    • #7835 Fix tooltip font options in sample

    Development

    • #7882 Ensure scripts are marked as executable in git
    • #7872 Fix typo in const name
    • #7847 Normalize context creation for option resolution
    • ๐Ÿ‘• #7844 JS test files should have tabs to correctly lint

    Thanks to @emmcbd, @etimberg, @kurkle, @mikos and @tonyjmartinez

  • v3.0.0-beta.3 Changes

    October 01, 2020

    Essential Links

    ๐Ÿ› Bugs Fixed

    • #7829 ESM chunks files were not include in the NPM distribution
    • #7828 Allow contextmenu (right click) events to trigger the onClick handler
  • v3.0.0-beta.2 Changes

    October 01, 2020

    Essential Links

    Highlights

    ๐Ÿš€ The main highlight of this 2nd beta release is improvements to the 1st party Typescript types. Feedback on these types is greatly appreciated.

    ๐Ÿ’ฅ Breaking Changes

    ๐Ÿ‘€ The helpers are now exposed in a flat format for both UMD & ESM cases. See #7750 for details.

    โœจ Enhancements

    ๐ŸŽ Performance

    • โšก๏ธ #7793 Update/draw only visible line/points
    • #7755 Cache Intl.NumberFormat instances

    ๐Ÿ› Bug Fixes

    • #7820 Make dataset animations obey chart level disable
    • #7816 Fix: maximum size and mouse position with styling
    • โšก๏ธ #7808 Fix: Update/draw only visible -regression
    • #7800 Limit pixel values to 32bit integer range
    • #7792 Fix: relative position in FF
    • ๐Ÿ‘ #7790 Better error message when importing charts incorrectly. . Thanks @Lautarourtiaga
    • #7785 Fix hover-out regression
    • โšก๏ธ #7758 Fix: update chart when attached
    • #7747 Reduce code duplication and sort generated ticks

    Types

    • ๐Ÿ›  #7812 Minor type fixes. Thanks @emmcbd
    • #7791 Strong typings for scales and datasets in options. Thanks @emmcbd
    • ๐Ÿ”€ #7783 Merge Chart instance with Chart factory. Thanks @xr0master
    • #7782 Strong chart object and properties typing. Thanks @emmcbd
    • ๐Ÿ“œ #7778 parsing is not part of IChartData
    • #7770 fix a wrong Option infer. Thanks @xr0master
    • #7767 Improve generic chart type + allow data changing on existing charts. Thanks @xr0master
    • ๐Ÿ›  #7759 Improve unknown data point types + other type fixes. Thanks @emmcbd
    • #7748 Fix invalid TypeScript type. Thanks @sgratzl

    ๐Ÿ“š Documentation

    • #7806 Flat Helpers. Thanks @sgratzl
    • โšก๏ธ #7765 Update pull request template contributing docs link
    • #7757 Fix the parameter order of before/afterEvent
    • ๐Ÿ”Œ #7753 Chart.register instead of Chart.plugins.register
  • v3.0.0-beta Changes

    September 01, 2020

    Essential Links

    Highlights

    ๐Ÿš€ The main highlight of this first 3.0.0 beta release is the introduction of 1st party Typescript types. Feedback on these types is appreciated.

    โœจ Enhancements

    ๐Ÿ› Bug Fixes

    • #7732 Use offsetX/Y or layerX/Y for events when available
    • #7731 Fix shared option handling
    • #7717 Resize on devicePixelRation changes
    • #7711 Use interpolation in fill: 'stack' (and fix interpolation)
    • โšก๏ธ #7710 Make sure bezier control points are updated
    • #7699 Doughnut controller overrides getLabelAndValue
    • #7650 Export extensible classes in ESM compatible way
    • 0๏ธโƒฃ #7686 Include Chart.defaults always
    • #7674 Resolve fonts through options.font
    • 0๏ธโƒฃ #7649 Do not use line defaults in legend

    ๐Ÿ“š Documentation

    • #7741 Color the scales of multi-axis scatter sample
    • ๐Ÿ“š #7733 Refer to master documentation for Contributing
    • #7718 Document .getElementsAtXAxis(e). Thanks @Ludar-Pavel
    • ๐Ÿ“š #7685 Add some additional info and sections to animation documentation. Thanks @stockiNail
    • 0๏ธโƒฃ #7677 Fixed default of tension property of line element
    • ๐Ÿ“„ #7670 Fix casing of dist files in docs
    • #7659 Live demo in getting-started page
    • #7658 chart should live in own container
    • ๐Ÿ“„ #7653 Fix import statement in docs
  • v3.0.0-alpha.2 Changes

    July 17, 2020

    Essential Links

    Highlights

    ๐Ÿš€ The main highlight of this second 3.0.0 alpha release is the introduction of tree shaking. When using a bundler, such as Rollup or Webpack, the bundler can now remove unused charts, scales, and plugins from your code to result in a smaller bundle being delivered to the end user.

    ๐Ÿ’ฅ Breaking Changes

    ๐Ÿš€ There are many breaking changes in this release of Chart.js in addition to those introduce in the previous 3.0.0-alpha release. Most will not be noticeable to users as they are in the internals of the chart, or at points where plugins & scales interface with the chart. However, there are changes to the config option format in v3 that will affect all users of Chart.js. Most noticeably, in all alpha releases, scales are no longer specified in an array and instead are specified in an object. The migration guide provides more details on all of the changes made so far.

    ๐Ÿš€ Major breaking changes since the last alpha release include:

    • Dist file renamed from Chart.js to chart.js
    • ๐Ÿ”Œ npm users must register the charts, scales, elements, and plugins they wish to use (#7435)
    • Time scale split into time and timeseries scales (#7525)
    • Indexable options will now loop (#7442) rather than holding the last value
    • Horizontal bar tooltip mode is now 'nearest' to match vertical bar charts. #7488
    • 0๏ธโƒฃ Line chart tension now defaults to 0 (#7386)
    • ๐Ÿšš Horizontal bar chart type was removed in favour of new indexAxis concept. #7514
    • Scale ticks are now generated from smallest to largest. #7559
    • TooltipItem model changed to include data point. value renamed to formattedValue. (#7618)

    โœจ Enhancements

    • #7618 Tooltip: add dataPoint and rename value to formattedValue
    • #7603 Align the tooltip callbacks parameters with scriptable options
    • ๐Ÿ”Œ #7590 PluginService using registry
    • #7579 Pass context parameter to custom tooltip
    • #7570 Enable autoSkip for time scale to match others
    • #7559 Generate ticks from small to large
    • #7556 Add parameters to tooltip filter option
    • #7538 Add normalized option
    • #7525 Split time scale into time and timeseries
    • #7520 Consistently resolve element options
    • #7514 Replace horizontalBar with indexAxis: 'y'
    • #7499 Use consistent option context for scales
    • ๐Ÿ“œ #7489 Parse from custom properties in data
    • โšก๏ธ #7487 Update horizontal bar chart default tooltip mode
    • #7471 Radial scale scriptable options
    • #7449 Radial Linear Scale: Compute Value based on distance from center
    • #7442 Make indexable options looping
    • 0๏ธโƒฃ #7414 Default aspectRatio to 1 for square charts
    • 0๏ธโƒฃ #7386 Turns off interpolation per default. Thanks @sebiniemann
    • #7383 Move font* to font.*
    • ๐Ÿ‘ #7335 Better formatting of large tick values

    ๐ŸŽ Performance

    • ๐ŸŽ #7234 Address bar chart performance regression

    ๐Ÿ› Bug Fixes

    • โšก๏ธ #7634 FloatBar: update range only for value scale
    • #7629 Animation events sanity
    • 0๏ธโƒฃ #7628 Leftover defaults
    • ๐Ÿšš #7626 Move register/unregister to core.controller
    • #7625 Fix remaining issues in samples
    • #7622 Fix category scale tick placement with autoSkip
    • ๐Ÿ›  #7617 Registry fixes
    • #7612 Enable removing of line from radar charts
    • ๐Ÿ“š #7609 Update API documentation
    • #7608 Registry bugs
    • #7573 Use all timestamps for calculating offsets
    • #7572 Fix padding for labels
    • #7565 Fix tooltip caret border when caret is on right or bottom
    • โšก๏ธ #7528 Update the legend object during beforeUpdate
    • #7522 Tooltip: Provide argument for custom callback
    • #7511 Fix initial animations
    • #7502 Read Title font options from correct place
    • โšก๏ธ #7469 Update tooltip when the display position changes
    • #7468 Stacked scatter chart
    • ๐Ÿšš #7458 Remove data checks and always re-parse data
    • 0๏ธโƒฃ #7453 Implement routing of defaults
    • 0๏ธโƒฃ #7446 Radar charts should fill to the center by default
    • #7438 Arc: Stop drawing anything when hidden
    • #7421 Consider all timestamps for bar measuring
    • #7411 Only draw the tooltip if it is defined
    • ๐Ÿ‘ #7410 Legend onClick callback supports arrow functions
    • #7398 Correctly determine min/max for Float Bar
    • #7381 Preserve object prototypes when cloning
    • #7380 Use full URL for TypeDocs
    • #7375 Use correct index when resolving bubble options
    • #7370 Delay animations until attached
    • ๐Ÿ”Œ #7360 Use @rollup/plugin-inject for ResizeObserver poly
    • #7350 Detect data modifications with equal values
    • #7349 When the container padding is an empty string, handle it as 0px
    • #7346 Add a scale.init method
    • #7298 Fix chart resizing issue. Thanks @yhvicey
    • #7293 Check for destroyed charts when handling throttled DOM events
    • #7269 Use isoWeekday when rounding
    • ๐ŸŒฒ #7242 Fix overlapping ticks on log scale
    • #7224 Fix event position in shadow DOM
    • #7211 Fix filterBetween
    • โšก๏ธ #7196 Update running animations

    ๐Ÿ“š Documentation

    • #7638 Fix tooltip in financial sample
    • ๐Ÿ“š #7631 Removes the line height property from title documentation. Thanks @stockiNail
    • ๐Ÿ“š #7624 Align axes documentation with the changes
    • #7623 Fix links to fonts.md
    • ๐Ÿšš #7620 Move registration migration guide to user migration section
    • #7595 Fix errors in custom tooltip samples
    • ๐Ÿ“š #7592 Tooltip Model documentation sounds not correct. Thanks @stockiNail
    • #7584 The hover* options of bar chart doc page change as scriptable. Thanks @stockiNail
    • โšก๏ธ #7581 Grammar updates to the description on the homepage. Thanks @JohnMHoyt24
    • ๐Ÿšš #7562 Remove "for bugs" from bug issue template
    • โšก๏ธ #7558 Update time scale docs to be Moment agnostic
    • #7557 Fix typo in sample
    • #7552 Fix financial sample
    • ๐Ÿšš #7536 Move timeseries fixtures to their own directory
    • #7530 Mark parameter as optional
    • ๐Ÿšš #7508 Remove lineHeight property from LegendTitle doc. Thanks @stockiNail
    • ๐Ÿ“„ #7484 Fix link to animations docs
    • ๐Ÿšš #7477 Remove lineHeight property from ScaleTitle. Thanks @stockiNail
    • #7451 Indicate that axis callbacks are at top level of options
    • โšก๏ธ #7447 Update doc samples for changed file name
    • ๐Ÿ“š #7437 Remove missing setDataVisibility for documentation
    • 0๏ธโƒฃ #7405 Docs: fix z-index default
    • ๐Ÿ— #7400 ESM build, with helpers separated
    • #7399 Document the context properties for ticks
    • ๐Ÿ“š #7384 Small update to animation documentation
    • #7377 Add a JSDoc for _dataCheck
    • ๐Ÿ“š #7358 Developer migration documentation
    • #7348 Fix broken links to contributor's guide
    • ๐Ÿ—„ #7334 Document the removal of deprecated properties
    • ๐Ÿ“„ #7329 Add Algolia to docs. Thanks @s-pace
    • โฌ†๏ธ #7327 Upgrade the contributing guide for Docusaurus
    • #7315 Improve Docusaurus URLs
    • #7295 Migrate from GitBook to Docusaurus
    • #7275 Make br tags self-closing
    • ๐Ÿ“„ #7274 Clarify that API docs are generated by TypeDoc
    • #7263 Fix typo, layed -> laid. Thanks @timgates42
    • ๐Ÿ“š #7245 Update introduction documentation. Thanks @eniovalo
    • #7218 Improve migration guide for innerRadius/outerRadius

    Development

    • ๐Ÿšš #7568 Remove duplicate tests
    • ๐Ÿšš #7521 Remove babel from tests
    • #7498 Relocate array utils to helpers.collection
    • ๐Ÿšš #7494 Remove unused _scaleStacked cache
    • #7492 Fix measureText bug in spriting
    • โœ… #7491 Replace ineffective test with a fixture
    • โช #7481 Restore Set to arrayUnique
    • ๐Ÿšš #7480 Remove unused parameter
    • โœ… #7470 Do not show legend in stacked scatter test
    • ๐Ÿ’… #7467 Cleanup Event Handling code to match style of tooltip plugin
    • ๐ŸŽ #7452 Babel loose mode for improved performance
    • ๐Ÿ— #7445 Use verbose build in dev mode
    • ๐Ÿšš #7441 Remove unused dependency
    • ๐Ÿ”จ #7440 Clean lint errors from samples by refactoring
    • #7439 Cleanup resize complexity
    • #7436 Consistency: Use lower case for instances
    • ๐Ÿ”Œ #7435 Generic registry for controllers, scales, elements and plugins
    • โœ… #7426 Alter test to require fewer iterations
    • ๐Ÿšš #7425 Remove proposal and obsolete features
    • #7402 Gulp toolchain ported to npm scripts.
    • #7416 Rename dist/Chart* to dist/chart*
    • โœ… #7392 Run tests in series to avoid timeouts
    • 0๏ธโƒฃ #7391 Rename platform/platform to index removing default
    • #7390 Add index to core
    • ๐Ÿšš #7389 Remove default export from plugins/index
    • ๐Ÿšš #7388 Remove default export from controllers/index
    • #7385 Use direct imports instead of generic helpers import. Thanks @sgratzl
    • ๐Ÿ‘ #7345 Better organize calls in main controller
    • ๐Ÿšš #7333 Remove unused bar property and confusing docs referring to it
    • โฌ†๏ธ #7317, #7463, #7486 Upgrade dependencies
    • ๐Ÿšš #7314 Remove old docs from gitignore
    • #7294 Finish removing bower
    • #7268 Fix couple of small issues
    • ๐Ÿšš #7265 Remove bower. Thanks @nainardev
    • ๐Ÿšš #7264 Remove unused layout.defaults
    • โšก๏ธ #7233 Update dependencies
    • ๐Ÿšš #7229 Remove unused method parameter
    • #7225 getPixelForTick cleanup
    • #7212 Cleaner handling of fitting no ticks
    • ๐Ÿ— #7208 Only polyfill ResizeObserver for UMD builds
  • v3.0.0-alpha Changes

    March 12, 2020

    ๐Ÿ’ฅ Breaking Changes

    ๐Ÿš€ There are many breaking changes in this release of Chart.js. Most will not be noticeable to users as they are in the internals of the chart, or at points where plugins & scales interface with the chart. However, there are changes to the config option format in v3. Most noticeably, scales are no longer specified in an array and instead are specified in an object. The migration guide provides more details on all of the changes made so far.

    โœจ Enhancements

    • #7156 Use global element hidden status for Pie charts
    • ๐Ÿ‘ท #7146 WebWorker support
    • ๐Ÿ”ง #7055 Configurable hide/show animations
    • #7007 Improved formatting of numeric scale labels
    • #7004 Format numbers in tooltip
    • #6995 Add tooltip boxWidth and boxHeight options
    • #6993 Allow specifying spanGaps as number (max distance)
    • #6964 Allow switching platforms
    • #6958 Use binary search for interpolations
    • #6939 Scriptable tick fonts
    • #6908 Title alignment options
    • #6906 Add the ability to add a title to the legend
    • #6883 Enable override settings for the axis border
    • #6818 Allow axes to be centered on chart area
    • #6787 Add optional stroke lines around tick text to improve readability
    • #6739 Floating bar chart data can be specified using objects
    • ๐Ÿ”ง #6700 Functional config options for scale grid line configuration
    • โšก๏ธ #6635 Update tooltip content and styling in onUpdate()
    • #6521 Add label alignment option to axis label title

    ๐ŸŽ Performance

    ๐ŸŽ Numerous performance enhancements have been added including the ones below. This may result in 10x or more faster performance in some use cases. Chart.js is now more than 3x faster on the uPlot benchmark.

    • ๐Ÿšš #7155 remove chartjs-adapater-moment
    • โšก๏ธ #6959 Optimize category parse
    • #6958 Use binary search for interactions
    • โšก๏ธ #6871 Optimize arrayUnique
    • #6845 Rewrite animation logic
    • ๐ŸŽ #6783 Improve autoSkip performance
    • #6775 Assume time series data has been normalized
    • ๐Ÿ“œ #6768 Allow pre-parsed data
    • ๐ŸŽ #6762 Improve stacking performance and footprint
    • ๐Ÿ“œ #6758 Reduce object creation during parsing
    • #6757 Cache sorting order of dataset metas
    • ๐Ÿšš #6745 Remove moment from dependencies
    • #6729 Reduce cloning and duplicate options resolution
    • โšก๏ธ #6722 Change updateElement to updateElements
    • ๐ŸŽ #6710 Performance optimizations when animations are disabled

    ๐Ÿ› Bug Fixes

    • ๐Ÿ’… #7150 Stop leaking fonts (and fillStyle) to ctx
    • #7139 Fill between datasets
    • #7103 Change remaining for of loops to regular ones for IE11 compatibility
    • #7098 Fix transparentize in samples
    • #7097 Fix memory leak
    • 0๏ธโƒฃ #7079 Animate circumference by default
    • โšก๏ธ #7060 Fix legend title drawing & update sample
    • #7047 Fix bug in opacity handling
    • #7044 Generate ticks when source is data
    • #7040 Fix typo in elements.line
    • #7037 Fix isRadial is always false
    • #7023 Fix binarySearch for empty dataset
    • #7014 When gridLines.display is false, the axis border is still drawn
    • โšก๏ธ #6989 Ensure filler works correctly when updating datasets
    • #6988 Proper text alignment for multiline tick labels
    • #6984 Show color box only on the first line of the tooltip body
    • #6975 Fix drawPoint parameters
    • #6974, #6987 Resize on zoom
    • #6973 Fix clipping when zoomed
    • #6972 Fix bar border artifacts
    • โšก๏ธ #6971 Fix updating retinaScale
    • #6966 Linear scale with min/max/stepSize set should use all 3 if the range fits
    • #6962 Fix reference to distanceBetweenPoints
    • #6961 Fix tooltip for 'dataset' mode
    • #6953 Throttle all events (to 1 / frame each)
    • #6947 Detect stack change
    • #6945 Account for hoverRadius in Point.size()
    • #6944 Draw active points last
    • ๐Ÿ“œ #6925 Re-parse existing elements when data is replaced
    • ๐Ÿ“œ #6826 Shrink _parsed to match if dataset shrinks
    • ๐Ÿ“‡ #6778 Better support for react, don't store metadata on dataset
    • #6761 Fix tick spacing calculations
    • #6642 More versatile clipping algorithm
    • ๐Ÿ“œ #6576 Data is parsed only once + support stacking datasets by value using object configs
    • #6227 Limit clicks to chart area

    ๐Ÿ“š Documentation

    • #7147 Ensure all samples use correct scale options
    • ๐Ÿšš #7128 Remove version from docs. Use latest
    • #7124 Create a Tick typedef
    • #7119 Include Typedoc files on GitHub pages
    • #7034 Fix legend.md markdown syntax
    • โšก๏ธ #6948 Update moment to 2.24 in samples
    • #6919 Add multi series pie example
    • โšก๏ธ #6918 Update tooltip docs with working example
    • ๐Ÿ“„ #6901 Link PolarArea chart docs to radial axis docs
    • ๐Ÿ“š #6897 Update documentation of order
    • โšก๏ธ #6736 Update time combo chart sample
    • #6666 Add sample files with gradient fills
    • ๐Ÿ“š #5281 - Generate JSDoc documentation

    Development

  • v2.9.4 Changes

    October 19, 2020

    ๐Ÿš€ This is the last release of v2 and focused on fixing bugs identified in the v2.9.3 release.

    ๐Ÿ› Bugs Fixed

    • #7404 - Preserve prototypes when cloning. Thanks @iddings
    • ๐Ÿ“„ #7587 - Fix docs for external moment.js. Thanks @mojoaxel
    • #7853 - Fix box recursion when dimensions are NaN. Thanks @alessandroasm
    • ๐Ÿ‘ป #7883 - Fix call stack exception when computing label sizes. Thanks @silentmatt
    • ๐Ÿ”€ #7918 - Prevent global prototype pollution via the merge helper
    • ๐Ÿ”€ #7920 - Use Object.create(null) as merge target, to prevent prototype pollution