Added
- Allow constraints by domain on cartesian axes using new axis attributes:
`contrain: 'domain'` and `contraintoward` [[1767](https://github.com/plotly/plotly.js/pull/1767)]
- Add gl3d annotations [[1638](https://github.com/plotly/plotly.js/pull/1638), [#1786](https://github.com/plotly/plotly.js/pull/1786)]
- Add support for lasso and select `dragmode` on `scattergl` traces [[1657](https://github.com/plotly/plotly.js/pull/1657)]
- Add 48 new `scattergl` marker symbols (for total of 56) [[1781](https://github.com/plotly/plotly.js/pull/1781)]
- Add array support for `hoverinfo` [[1761](https://github.com/plotly/plotly.js/pull/1761)]
- Add animation support for `fillcolor` attribute [[1722](https://github.com/plotly/plotly.js/pull/1722)]
- Add `colorscale` attributes to `mesh3d` traces [[1719](https://github.com/plotly/plotly.js/pull/1719)]
- Add support for target and popup attributes pseudo-html text links [[1726](https://github.com/plotly/plotly.js/pull/1726)]
- Add per-`direction` updatemenu dropdown arrows [[1792](https://github.com/plotly/plotly.js/pull/1792)]
- Add `execute` attribute to sliders and updatemenus to skip method calls while
still triggering associated events [[1700](https://github.com/plotly/plotly.js/pull/1700)]
- Add `skip` value to the `method` attribute for sliders and updatemenus which
acts as a no-op [[1699](https://github.com/plotly/plotly.js/pull/1699)]
Changed
- Include values of all array attributes in hover/click/select event data
including `ids` and `customdata` [[1770](https://github.com/plotly/plotly.js/pull/1770)]
- Make gl2d axis tick labels on-par with SVG versions [[1766](https://github.com/plotly/plotly.js/pull/1766)]
- Build SVG text nodes directly instead of using `DOMParser` [[1783](https://github.com/plotly/plotly.js/pull/1783)]
- Rework transform style into array syntax [[1794](https://github.com/plotly/plotly.js/pull/1794)]
- Recompute hover on click to increase click robustness [[1646](https://github.com/plotly/plotly.js/pull/1646)]
- Miscellaneous performance improvements including improved bounding box caching
and adding a few short-circuit [[1772](https://github.com/plotly/plotly.js/pull/1772), [#1792](https://github.com/plotly/plotly.js/pull/1792)]
Fixed
- Fix pan/zoom for layout component linked to `category` axes [[1748](https://github.com/plotly/plotly.js/pull/1748), [#1791](https://github.com/plotly/plotly.js/pull/1791)]
- Fix non-`linear` gl3d axis range settings [[1730](https://github.com/plotly/plotly.js/pull/1730)]
- Fix `ohlc` and `candlestick` when open value equals close value [[1655](https://github.com/plotly/plotly.js/pull/1655)]
- Fix annotations positioning when MathJax symbols are present [[1788](https://github.com/plotly/plotly.js/pull/1788)]
- Fix array values in event data for transformed traces [[1717](https://github.com/plotly/plotly.js/pull/1717), [#1727](https://github.com/plotly/plotly.js/pull/1727), [#1737](https://github.com/plotly/plotly.js/pull/1737)]
- Fix relayout event data for gl3d camera interactions [[1732](https://github.com/plotly/plotly.js/pull/1732)]
- Fix scatter markers and text nodes linked to `ids` ordering on updates [[1709](https://github.com/plotly/plotly.js/pull/1709)]
- Fix `Plotly.validate` for dynamic enumerated attribute
(e.g. axis `anchor`, `overlaying`) [[1769](https://github.com/plotly/plotly.js/pull/1769)]
- Fix pseudo-html handling in sliders, updatemenus, range-sliders,
range-selectors and carpet traces [[1792](https://github.com/plotly/plotly.js/pull/1792)]
- Fix annotation bounding box and arrow heads in IE [[1782](https://github.com/plotly/plotly.js/pull/1782)]
- Fix svg exports in IE for graphs with multiple clip paths [[1740](https://github.com/plotly/plotly.js/pull/1740)]
- Fix `sankey` positioning in IE [[1723](https://github.com/plotly/plotly.js/pull/1723), [#1731](https://github.com/plotly/plotly.js/pull/1731), [#1729](https://github.com/plotly/plotly.js/pull/1729), [#1735](https://github.com/plotly/plotly.js/pull/1735)]
- Fix relative links in IE [[1715](https://github.com/plotly/plotly.js/pull/1715)]
- Suppress render warning in gl3d graphs with error bars [[1718](https://github.com/plotly/plotly.js/pull/1718)]