diff --git a/CHANGELOG.md b/CHANGELOG.md index 941722802c..9d04f16552 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,12 +4,22 @@ This project adheres to [Semantic Versioning](http://semver.org/). ## Unreleased + +## [6.7.0] - 2026-04-09 + ### Added -- Add `facet_row` support to `px.imshow` for creating subplots along an additional dimension [[#5445](https://github.com/plotly/plotly.py/pull/5445)] +- Add `facet_row` support to `px.imshow` for creating subplots along an additional dimension [[#5445](https://github.com/plotly/plotly.py/pull/5445)], with thanks to @FBumann for the contribution! ### Fixed -- Update `numpy.percentile` syntax to stop using deprecated alias [[5483](https://github.com/plotly/plotly.py/pull/5483)], with thanks to @Mr-Neutr0n for the contribution! +- Update `numpy.percentile` syntax to stop using deprecated alias [[#5483](https://github.com/plotly/plotly.py/pull/5483)], with thanks to @Mr-Neutr0n for the contribution! - `numpy` with a version less than 1.22 is no longer supported. +- Handle empty `px.histogram` by skipping `None` label in hover template [[#5535](https://github.com/plotly/plotly.py/pull/5535)], with thanks to @tysoncung for the contribution! + +### Updated +- Update plotly.js from version 3.4.0 to version 3.5.0. See the plotly.js [release notes](https://github.com/plotly/plotly.js/releases/tag/v3.5.0) for more information. [[#5565](https://github.com/plotly/plotly.py/pull/5565)]. Notable changes include: + - Add `hoveranywhere` and `clickanywhere` layout attributes to enable emitting hover and click events anywhere in the plot area, not just over traces [[#7707](https://github.com/plotly/plotly.js/pull/7707)] + - Add `displayNotifier` configuration property to set the display of notifier in the top right area of the viewport [[#7730](https://github.com/plotly/plotly.js/pull/7730)] + - Update USA location lookup for `scattergeo` and `choropleth` traces to use both location names and abbreviations [[#7731](https://github.com/plotly/plotly.js/pull/7731)] ## [6.6.0] - 2026-03-02 diff --git a/CITATION.cff b/CITATION.cff index 20ece1a375..a64871aee6 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -9,7 +9,7 @@ authors: - family-names: "Parmer" given-names: "Chris" title: "An interactive, open-source, and browser-based graphing library for Python" -version: 6.6.0 +version: 6.7.0 doi: 10.5281/zenodo.14503524 -date-released: 2026-03-02 +date-released: 2026-04-09 url: "https://github.com/plotly/plotly.py" diff --git a/js/package-lock.json b/js/package-lock.json index eee5cc6b23..736832ddc7 100644 --- a/js/package-lock.json +++ b/js/package-lock.json @@ -1,12 +1,12 @@ { "name": "jupyterlab-plotly", - "version": "6.6.0", + "version": "6.7.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "jupyterlab-plotly", - "version": "6.6.0", + "version": "6.7.0", "license": "MIT", "dependencies": { "@lumino/widgets": "~2.4.0", diff --git a/js/package.json b/js/package.json index 3ef7393682..d833ccfe53 100644 --- a/js/package.json +++ b/js/package.json @@ -1,7 +1,7 @@ { "name": "jupyterlab-plotly", "main": "lib/mimeExtension.js", - "version": "6.6.0", + "version": "6.7.0", "repository": { "type": "git", "url": "https://github.com/plotly/plotly.py" diff --git a/plotly/labextension/package.json b/plotly/labextension/package.json index 64dc0a1042..cde085e907 100644 --- a/plotly/labextension/package.json +++ b/plotly/labextension/package.json @@ -1,7 +1,7 @@ { "name": "jupyterlab-plotly", "main": "lib/mimeExtension.js", - "version": "6.6.0", + "version": "6.7.0", "repository": { "type": "git", "url": "https://github.com/plotly/plotly.py" @@ -33,7 +33,7 @@ "outputDir": "../plotly/labextension", "webpackConfig": "./webpack.config.js", "_build": { - "load": "static/remoteEntry.44d7a4ff90fee4a9d4bc.js", + "load": "static/remoteEntry.b2077f01f9b03ba2c63d.js", "mimeExtension": "./mimeExtension" } } diff --git a/plotly/labextension/static/remoteEntry.44d7a4ff90fee4a9d4bc.js b/plotly/labextension/static/remoteEntry.b2077f01f9b03ba2c63d.js similarity index 98% rename from plotly/labextension/static/remoteEntry.44d7a4ff90fee4a9d4bc.js rename to plotly/labextension/static/remoteEntry.b2077f01f9b03ba2c63d.js index 2ecfc617a3..53445f79b3 100644 --- a/plotly/labextension/static/remoteEntry.44d7a4ff90fee4a9d4bc.js +++ b/plotly/labextension/static/remoteEntry.b2077f01f9b03ba2c63d.js @@ -1 +1 @@ -var _JUPYTERLAB;(()=>{"use strict";var e,r,t=[(e,r,t)=>{var o={"./index":()=>t.e(1).then((()=>()=>t(2))),"./mimeExtension":()=>t.e(1).then((()=>()=>t(2)))},a=(e,r)=>(t.R=r,r=t.o(o,e)?o[e]():Promise.resolve().then((()=>{throw new Error('Module "'+e+'" does not exist in container.')})),t.R=void 0,r),n=(e,r)=>{if(t.S){var o="default",a=t.S[o];if(a&&a!==e)throw new Error("Container initialization failed as it has already been initialized with a different share scope");return t.S[o]=e,t.I(o,r)}};t.d(r,{get:()=>a,init:()=>n})}],o={};function a(e){var r=o[e];if(void 0!==r)return r.exports;var n=o[e]={exports:{}};return t[e](n,n.exports,a),n.exports}a.m=t,a.c=o,a.amdO={},a.d=(e,r)=>{for(var t in r)a.o(r,t)&&!a.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:r[t]})},a.f={},a.e=e=>Promise.all(Object.keys(a.f).reduce(((r,t)=>(a.f[t](e,r),r)),[])),a.u=e=>e+".9daa5160b7fc741623bf.js?v=9daa5160b7fc741623bf",a.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),a.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),e={},r="jupyterlab-plotly:",a.l=(t,o,n,i)=>{if(e[t])e[t].push(o);else{var l,u;if(void 0!==n)for(var p=document.getElementsByTagName("script"),s=0;s