materialsintelligence / propnet

A knowledge graph for Materials Science.
Other
72 stars 23 forks source link

Update dash to 2.15.0 #325

Closed pyup-bot closed 4 months ago

pyup-bot commented 5 months ago

This PR updates dash from 1.1.1 to 2.15.0.

Changelog ### 2.15.0 ``` Added - [2695](https://github.com/plotly/dash/pull/2695) Adds `triggered_id` to `dash_clientside.callback_context`. Fixes [#2692](https://github.com/plotly/dash/issues/2692) - [2723](https://github.com/plotly/dash/pull/2723) Improve dcc Slider/RangeSlider tooltips. Fixes [#1846](https://github.com/plotly/dash/issues/1846) - Add `tooltip.template` a string for the format template, {value} will be formatted with the actual value. - Add `tooltip.style` a style object to give to the div of the tooltip. - Add `tooltip.transform` a reference to a function in the `window.dccFunctions` namespace. - [2732](https://github.com/plotly/dash/pull/2732) Add special key `_dash_error` to `setProps`, allowing component developers to send error without throwing in render. Usage `props.setProps({_dash_error: new Error("custom error")})` Fixed - [2732](https://github.com/plotly/dash/pull/2732) Sanitize html props that are vulnerable to xss vulnerability if user data is inserted. Fix Validate url to prevent XSS attacks [#2729](https://github.com/plotly/dash/issues/2729) Changed - [2652](https://github.com/plotly/dash/pull/2652) dcc.Clipboard supports htm_content and triggers a copy to clipboard when n_clicks are changed - [2721](https://github.com/plotly/dash/pull/2721) Remove ansi2html, fixes [#2613](https://github.com/plotly/dash/issues/2713) ``` ### 2.14.2 ``` Fixed - [2700](https://github.com/plotly/dash/pull/2700) Fix `_allow_dynamic_callbacks` for newly-added components. ``` ### 2.14.1 ``` Fixed - [2672](https://github.com/plotly/dash/pull/2672) Fix `get_caller_name` in case the source is not available. Changed - [2674](https://github.com/plotly/dash/pull/2674) Raise flask & werkzeug limits to <3.1 ``` ### 2.14.0 ``` Fixed - [2634](https://github.com/plotly/dash/pull/2634) Fix deprecation warning on pkg_resources, fix [#2631](https://github.com/plotly/dash/issues/2631) Changed - [2635](https://github.com/plotly/dash/pull/2635) Get proper app module name, remove need to give `__name__` to Dash constructor. Added - [2647](https://github.com/plotly/dash/pull/2647) `routing_callback_inputs` allowing to pass more Input and/or State arguments to the pages routing callback - [2649](https://github.com/plotly/dash/pull/2649) Add `_allow_dynamic_callbacks`, register new callbacks inside other callbacks. **WARNING: dynamic callback creation can be dangerous, use at you own risk. It is not intended for use in a production app, multi-user or multiprocess use as it only works for a single user.** ``` ### 2.13.1 ``` - Add persistent selections via layout attributes `selections`, `newselection`, and `activeselection`, along with an updated UI allowing you to modify a selection you created. - Add unselected line styling to `parcoords` traces. - Add more quartile algorithms to `violin` traces. - More flexible axis `automargin` behavior. - And several other enhancements and bug fixes. ``` ### 2.13.0 ``` Changed - [2610](https://github.com/plotly/dash/pull/2610) Load plotly.js bundle/version from plotly.py Added - [2630](https://github.com/plotly/dash/pull/2630) New layout hooks in the renderer ``` ### 2.12.1 ``` Fixed - [2625](https://github.com/plotly/dash/pull/2625) Fix background callbacks without cancel arguments failing setup, fix [#2624](https://github.com/plotly/dash/issues/2624) ``` ### 2.12.0 ``` Fixed - [2619](https://github.com/plotly/dash/pull/2619) Fix for dash-table column IDs containing special characters - [2616](https://github.com/plotly/dash/pull/2616) Add mapping of tsconfig compiler option `moduleResolution`, fixes [#2618](https://github.com/plotly/dash/issues/2618) - [2596](https://github.com/plotly/dash/pull/2596) Fix react-dom throwing unique key prop error for markdown table, fix [#1433](https://github.com/plotly/dash/issues/1433) - [2589](https://github.com/plotly/dash/pull/2589) CSS for input elements not scoped to Dash application - [2599](https://github.com/plotly/dash/pull/2599) Fix background callback cancel inputs used in multiple callbacks and mixed cancel inputs across pages. Changed - [2593](https://github.com/plotly/dash/pull/2593) dcc.Input accepts a number for its debounce argument Updated - [2621](https://github.com/plotly/dash/pull/2621) Update plotly.js to 2.25.2 from 2.24.2 - Feature release [2.25.0](https://github.com/plotly/plotly.js/releases/tag/v2.25.0), Add "Equal Earth" project, options to include legends for shapes, Plotly.deleteActivateShape. - Patch release [2.24.3](https://github.com/plotly/plotly.js/releases/tag/v2.24.3) Fix for doubles clicks and legend group. - Patch release [2.25.1](https://github.com/plotly/plotly.js/releases/tag/v2.25.1) Fix clearing legend using react. - Patch release [2.25.2](https://github.com/plotly/plotly.js/releases/tag/v2.25.2) Fix potential prototype pollution in plot API calls. ``` ### 2.11.1 ``` Fixed - [2573](https://github.com/plotly/dash/pull/2578) Disable jupyter dash in Databricks, as the implementation here does not work in a Databricks notebook. Dash Enterprise customers can use the separate databricks-dash package for this purpose. Changed - [2573](https://github.com/plotly/dash/pull/2573) Use `julia --project` command inside `JuliaRunner`. - [2579](https://github.com/plotly/dash/pull/2579) Add warning if using `JupyterDash` ``` ### 2.11.0 ``` - Every trace type can now be rendered in a stricter CSP environment, specifically avoiding `unsafe-eval`. Please note: the `regl`-based traces (`scattergl`, `scatterpolargl`, `parcoords`, and `splom`) are only strict in the `strict` bundle, which is NOT served by default in Dash. To use this bundle with Dash, you must either download it and put it in your `assets/` folder, or include it as an `external_script` from the CDN: https://cdn.plot.ly/plotly-strict-2.11.0.min.js. All other trace types are strict in the normal bundle. - Patch release [2.10.1](https://github.com/plotly/plotly.js/releases/tag/v2.5.1) containing a bugfix for `mesh3d` traces. Fixed - [1915](https://github.com/plotly/dash/pull/1915) Fix bug [#1474](https://github.com/plotly/dash/issues/1474) when both dcc.Graph and go.Figure have animation, and when the second animation in Figure is executed, the Frames from the first animation are played instead of the second one. - [1953](https://github.com/plotly/dash/pull/1953) Fix bug [#1783](https://github.com/plotly/dash/issues/1783) in which a failed hot reloader blocks the UI with alerts. - [1942](https://github.com/plotly/dash/pull/1942) Fix bug [#1663](https://github.com/plotly/dash/issues/1663) preventing pie traces from sending `customdata` with `clickData` and other events. ``` ### 2.10.2 ``` Changed - Set Flask and Werkzeug version upper bound to `<2.3`. ``` ### 2.10.1 ``` Fixed - [2545](https://github.com/plotly/dash/pull/2545) Fix typescript objectOf generation. - [2548](https://github.com/plotly/dash/pull/2548) Fix component as props callback triggering other callbacks not in response, fix [#2487](https://github.com/plotly/dash/issues/2487). ``` ### 2.10.0 ``` - Support for MathJax v3 - `fillpattern` for `scatter` traces with filled area ``` ### 2.9.3 ``` Fixed - [2489](https://github.com/plotly/dash/pull/2489) Fix location change event handling when `Location` objects are removed from the layout. Event handlers would not be removed and eventually change props of a random DOM element, fix [#1346](https://github.com/plotly/dash/issues/1346) - [2498](https://github.com/plotly/dash/pull/2498) Fix error when caching callbacks which return `Patch` objects by making `Patch` objects picklable - [2491](https://github.com/plotly/dash/pull/2491) Fix clientside inline function name not found, fix [#2488](https://github.com/plotly/dash/issues/2488) ``` ### 2.9.2 ``` Fixed - [2479](https://github.com/plotly/dash/pull/2479) Fix `KeyError` "Callback function not found for output [...], , perhaps you forgot to prepend the ''?" issue when using duplicate callbacks targeting the same output. This issue would occur when the app is restarted or when running with multiple `gunicorn` workers. - [2471](https://github.com/plotly/dash/pull/2471) Fix `allow_duplicate` output with clientside callback, fix [#2467](https://github.com/plotly/dash/issues/2467) - [2473](https://github.com/plotly/dash/pull/2473) Fix background callbacks with different outputs but same function, fix [#2221](https://github.com/plotly/dash/issues/2221) ``` ### 2.9.1 ``` Fixed - [2461](https://github.com/plotly/dash/pull/2461) Fix pytest plugin make report when testing not installed, fix [#2420](https://github.com/plotly/dash/issues/2420) ``` ### 2.9.0 ``` Breaking - [2450](https://github.com/plotly/dash/pull/2450) Set label style `display: block` if `inline` is false in RadioItems & Checklist components. To keep previous behavior, set `inline=True`. This is already how it was described and worked in our documentation and other places with CSS stylesheets that set the default orientation of RadioItems and Checklist options to vertical (including Dash Design Kit), but for unstyled pages it is a breaking change. Added - [2392](https://github.com/plotly/dash/pull/2392) Improved pages feature: - Accept an absolute path or a `pathlib.path` for `pages_folder`, to match `assets_folder` - Fix inferring `use_pages=True` when you supply a custom `pages_folder` - Fix for `pages_folder` that includes special characters - New test fixture `clear_pages_state` - Make imported pages act more like regular Python modules - [2068](https://github.com/plotly/dash/pull/2068) Added `refresh="callback-nav"` in `dcc.Location`. This allows for navigation without refreshing the page when url is updated in a callback. - [2417](https://github.com/plotly/dash/pull/2417) Add wait_timeout property to customize the behavior of the default wait timeout used for by wait_for_page, fix [#1595](https://github.com/plotly/dash/issues/1595) - [2417](https://github.com/plotly/dash/pull/2417) Add the element target text for wait_for_text* error message, fix [#945](https://github.com/plotly/dash/issues/945) - [2425](https://github.com/plotly/dash/pull/2425) Add `add_log_handler=True` to Dash init, if you don't want a log stream handler at all. - [2260](https://github.com/plotly/dash/pull/2260) Experimental support for React 18. The default is still React v16.14.0, but to use React 18 you can either set the environment variable `REACT_VERSION=18.2.0` before running your app, or inside the app call `dash._dash_renderer._set_react_version("18.2.0")`. THIS FEATURE IS EXPERIMENTAL. It has not been tested with component suites outside the Dash core, and we may add or remove available React versions in any future release. - [2414](https://github.com/plotly/dash/pull/2414) Add `dash.Patch`for partial update Output props without transferring the previous value in a State. - [2414](https://github.com/plotly/dash/pull/2414) Add `allow_duplicate` to `Output` arguments allowing duplicate callbacks to target the same prop. Fixed - [2429](https://github.com/plotly/dash/pull/2429) Fix side effect on updating possible array children triggering callbacks, fix [#2411](https://github.com/plotly/dash/issues/2411). - [2417](https://github.com/plotly/dash/pull/2417) Disable the pytest plugin if `dash[testing]` not installed, fix [#946](https://github.com/plotly/dash/issues/946). - [2417](https://github.com/plotly/dash/pull/2417) Do not swallow the original error to get the webdriver, easier to know what is wrong after updating the browser but the driver. - [2425](https://github.com/plotly/dash/pull/2425) Fix multiple log handler added unconditionally to the logger, resulting in duplicate log message. - [2415](https://github.com/plotly/dash/pull/2415) Fix background callbacks progress not deleted after fetch. - [2426](https://github.com/plotly/dash/pull/2426) Set default interval to 1 second for app.long_callback, restoring the behavior it had before v2.6.0 when we introduced `backround=True` callbacks. Changed - [2425](https://github.com/plotly/dash/pull/2425) Moved the logger namespace to `dash.dash`, as library logger it should be on that namespace instead of the user app. Updated - [2241](https://github.com/plotly/dash/pull/2441) Update Plotly.js to v2.20.0 from v2.18.0. - Feature release [2.20.0](https://github.com/plotly/plotly.js/releases/tag/v2.20.0) adds `automargin` to the main plot title. - Feature release [2.19.0](https://github.com/plotly/plotly.js/releases/tag/v2.19.0) adds text labels to `layout.shapes`, and adds a `labelalias` property to replace specific axis tick labels. ``` ### 2.8.1 ``` Fixed - [2400](https://github.com/plotly/dash/pull/2400) Added `disable_n_clicks=True` to the `html.Div` components in `page_container`. ``` ### 2.8.0 ``` Added - [2389](https://github.com/plotly/dash/pull/2389) Added `disable_n_clicks` prop to all html components to make it possible to remove onclick event listeners Fixed - [2388](https://github.com/plotly/dash/pull/2388) Fix [#2368](https://github.com/plotly/dash/issues/2368) ordering or Pattern Matching ALL after update to the subtree. Updated - [2367](https://github.com/plotly/dash/pull/2367) Updated the default `favicon.ico` to the current Plotly logo - [2394](https://github.com/plotly/dash/pull/2394) Update Plotly.js to v2.18.0 from v2.16.4. - Feature release [2.18.0](https://github.com/plotly/plotly.js/releases/tag/v2.18.0) adds `sync` tickmode, so several axes can share ticks and gridlines - Feature release [2.17.0](https://github.com/plotly/plotly.js/releases/tag/v2.17.0) adds automargin for multiple Y axes, a grouped mode for `scatter` traces, and rounded corners on `treemap` traces - Patch releases [2.17.1](https://github.com/plotly/plotly.js/releases/tag/v2.17.1) and [2.16.5](https://github.com/plotly/plotly.js/releases/tag/v2.16.5) fix various bugs ``` ### 2.7.1 ``` Fixed - [2344](https://github.com/plotly/dash/pull/2344) Fix [#1519](https://github.com/plotly/dash/issues/1519), a case where dependent callbacks can be called too many times and with inconsistent inputs - [2332](https://github.com/plotly/dash/pull/2332) Add key to wrapped children props in list. - [2336](https://github.com/plotly/dash/pull/2336) Fix inserted dynamic ids in component as props. Updated - [2361](https://github.com/plotly/dash/pull/2361) Dependencies upgrade. - Update Plotly.js to v2.16.4 (from v2.16.1): fix several bugs, particularly related to updating mapbox graphs. ``` ### 2.7.0 ``` Removed - [2282](https://github.com/plotly/dash/pull/2282) Dropped support for Internet Explorer. Our build process now targets vendor-supported browsers released in the last 7 years. Currently this means ES2015 but over time this will natually advance as older browser versions pass the 7-year threshold. Added - [2261](https://github.com/plotly/dash/pull/2261) Added new `placeholder_text` property to `filterOptions` for DataTable which allows overriding the default filter field placeholder. Updated - [2282](https://github.com/plotly/dash/pull/2282) Widespread dependency upgrades - Update Plotly.js to v2.16.1 (from v2.13.3) - Feature release [2.14.0](https://github.com/plotly/plotly.js/releases/tag/v2.14.0) adds arrows to `sankey` links, and `editSelection` option to config. - Feature release [2.15.0](https://github.com/plotly/plotly.js/releases/tag/v2.15.0) adds directed arrowheads and markers to `scatter` and scatter-like traces and increased control of automargin and legend sizing - Feature release [2.16.0](https://github.com/plotly/plotly.js/releases/tag/v2.16.0) adds clustering to `scattermapbox` traces and restricted bounds to `mapbox` plots. - Patch releases [2.15.1](https://github.com/plotly/plotly.js/releases/tag/v2.15.1) and [2.16.1](https://github.com/plotly/plotly.js/releases/tag/v2.16.1) fix several bugs. Fixed - [2292](https://github.com/plotly/dash/pull/2292) Pages: find the 404 page even if `pages_folder` is nested, or the 404 page is nested inside `pages_folder`. - [2265](https://github.com/plotly/dash/pull/2265) Removed deprecated `before_first_request` as reported in [#2177](https://github.com/plotly/dash/issues/2177). - [2257](https://github.com/plotly/dash/pull/2257) Fix tuple types in the TypeScript component generator. - [2293](https://github.com/plotly/dash/pull/2293) Fix Dropdown useMemo not detecting equal objects - [2277](https://github.com/plotly/dash/pull/2277) Use dropdown styles from node_modules, instead of from stored css file - [2105](https://github.com/plotly/dash/pull/2105) Fix order of dash component libraries imports. Changed - [2291](https://github.com/plotly/dash/pull/2291) Move `flask-compress` dependency to new extras requires `dash[compress]` ``` ### 2.6.2 ``` Fixed - [2237](https://github.com/plotly/dash/pull/2237) Ensure calls to `plotly.js` from `dcc.Graph` are properly sequenced even if React initiates multiple render cycles in quick succession. - [2218](https://github.com/plotly/dash/pull/2218) Fix bug [#1348](https://github.com/plotly/dash/issues/1348) Validate children prop (required or not). - [2223](https://github.com/plotly/dash/pull/2223) Exclude hidden folders when building `dash.page_registry`. - [2182](https://github.com/plotly/dash/pull/2182) Fix [#2172](https://github.com/plotly/dash/issues/2172) Make it so that when using pages, if `suppress_callback_exceptions=True` the `validation_layout` is not set. - [2152](https://github.com/plotly/dash/pull/2152) Fix bug [#2128](https://github.com/plotly/dash/issues/2128) preventing rendering of multiple components inside a dictionary. - [2187](https://github.com/plotly/dash/pull/2187) Fix confusing error message when trying to use pytest fixtures but `dash[testing]` is not installed. - [2202](https://github.com/plotly/dash/pull/2202) Fix bug [#2185](https://github.com/plotly/dash/issues/2185) when you copy text with multiple quotes into a table - [2226](https://github.com/plotly/dash/pull/2226) Fix [#2219](https://github.com/plotly/dash/issues/2219) pages register & background callbacks. ``` ### 2.6.1 ``` Fixed - [2175](https://github.com/plotly/dash/pull/2175) Fix [#2173](https://github.com/plotly/dash/issues/2173) callback output of ndarray and no_update check. - [2146](https://github.com/plotly/dash/pull/2146) Remove leftover debug console.log statement. - [2168](https://github.com/plotly/dash/pull/2168) Reverts [#2126](https://github.com/plotly/dash/pull/2126) (supporting redirect from root when using pages) until the new bugs introduced by that PR are fixed. Updated - [2167](https://github.com/plotly/dash/pull/2167) Update Plotly.js to v2.13.3 (from v2.13.1) including [patch release v2.13.2](https://github.com/plotly/plotly.js/releases/tag/v2.13.2) and [patch release v2.13.3](https://github.com/plotly/plotly.js/releases/tag/v2.13.3). - Emit `plotly_selected` event on plot API calls and GUI edits. - Fix `sankey` select error (regression introduced in 2.13.0). - Handle missing drag layer of invisible `sankey` traces to fix select error. - Emit selection event in shape drawing `dragmode`s when an existing selection is modified. ``` ### 2.6.0 ``` Added - [2109](https://github.com/plotly/dash/pull/2109) Add `maxHeight` to Dropdown options menu. - [2039](https://github.com/plotly/dash/pull/2039) Long callback changes: - Add `background=False` to `dash.callback` to use instead of `app.long_callback`. - Add previous `app.long_callback` arguments to `dash.callback` (`interval`, `running`, `cancel`, `progress`, `progress_default`, `cache_args_to_ignore`, `manager`) - [2110](https://github.com/plotly/dash/pull/2110) Add `search` prop to `dcc.Dropdown` options, allowing to search the dropdown options with something other than the label or value. Fixed - [2126](https://github.com/plotly/dash/pull/2126) Fix bug where it was not possible to redirect from root when using pages. - [2114](https://github.com/plotly/dash/pull/2114) Fix bug [#1978](https://github.com/plotly/dash/issues/1978) where text could not be copied from cells in tables with `cell_selectable=False`. - [2102](https://github.com/plotly/dash/pull/2102) Fix bug as reported in [dash-labs #113](https://github.com/plotly/dash-labs/issues/113) where files starting with `.` were not excluded when building `dash.page_registry`. - [2100](https://github.com/plotly/dash/pull/2100) Fixes bug where module name in for a custom `not_found_404` page is incorrect in the `dash.page_registry` when not using the `pages` folder. - [2098](https://github.com/plotly/dash/pull/2098) Accept HTTP code 400 as well as 401 for JWT expiry - [2097](https://github.com/plotly/dash/pull/2097) Fix bug [#2095](https://github.com/plotly/dash/issues/2095) with TypeScript compiler and `React.FC` empty valueDeclaration error & support empty props components. - [2104](https://github.com/plotly/dash/pull/2104) Fix bug [#2099](https://github.com/plotly/dash/issues/2099) with Dropdown clearing search value when a value is selected. - [2039](https://github.com/plotly/dash/pull/2039) Fix bugs in long callbacks: - Fix [1769](https://github.com/plotly/dash/issues/1769) and [#1852](https://github.com/plotly/dash/issues/1852) short interval makes job run in loop. - Fix [1974](https://github.com/plotly/dash/issues/1974) returning `no_update` or raising `PreventUpdate` not supported with celery. - Fix use of the callback context in celery long callbacks. - Fix support of pattern matching for long callbacks. - [2110](https://github.com/plotly/dash/pull/2110) Fix `dcc.Dropdown` search with component as prop for option label. - [2131](https://github.com/plotly/dash/pull/2131) Add encoding to file open calls. Fix bug [#2127](https://github.com/plotly/dash/issues/2127). Changed - [2116](https://github.com/plotly/dash/pull/2116) Rename long callbacks to background callbacks - Deprecated `dash.long_callback.managers.CeleryLongCallbackManager`, use `dash.CeleryManager` instead. - Deprecated `dash.long_callback.managers.DiskcacheLongCallbackManager`, use `dash.DiskcacheManager` instead. - Deprecated dash constructor argument `long_callback_manager` in favor of `background_callback_manager`. Updated ``` ### 2.5.1 ``` Fixed - [2087](https://github.com/plotly/dash/pull/2087) Fix bug [#2086](https://github.com/plotly/dash/issues/2086) in which using id as a key within a component's id breaks the new callback context's `args_grouping` function. - [2084](https://github.com/plotly/dash/pull/2084) In dash 2.5.0, a default viewport meta tag was added as recommended for mobile-optimized sites by [mdn](https://developer.mozilla.org/en-US/docs/Web/HTML/Viewport_meta_tag) This feature can be disabled by providing an empty viewport meta tag. e.g. `app = Dash(meta_tags=[{"name": "viewport"}])` - [2090](https://github.com/plotly/dash/pull/2090), [#2092](https://github.com/plotly/dash/pull/2092). Fixed bug where the `path` to the `pages_folder` was incorrect on Windows. Removed - [2087](https://github.com/plotly/dash/pull/2087) Removed the undocumented callback context `args_grouping_values` property which was incompatible with pattern-matching callbacks. ``` ### 2.5.0 ``` - Add horizontal colorbars. - Add text data on `heatmap` and related trace types. - Control legend group title fonts. - Patch releases [2.5.1](https://github.com/plotly/plotly.js/releases/tag/v2.5.1), [2.6.1](https://github.com/plotly/plotly.js/releases/tag/v2.6.1), [2.6.2](https://github.com/plotly/plotly.js/releases/tag/v2.6.2), [2.6.3](https://github.com/plotly/plotly.js/releases/tag/v2.6.3), [2.6.4](https://github.com/plotly/plotly.js/releases/tag/v2.6.4), [2.8.1](https://github.com/plotly/plotly.js/releases/tag/v2.8.1), [2.8.2](https://github.com/plotly/plotly.js/releases/tag/v2.8.2), and [2.8.3](https://github.com/plotly/plotly.js/releases/tag/v2.8.3) containing bugfixes. - This PR also upgrades various other dependencies of dash renderer and component suites. - [1745](https://github.com/plotly/dash/pull/1745): Improve our `extras_require`: there are now five options here, each with a well-defined role: - `dash[dev]`: for developing and building dash components. - `dash[testing]`: for using the `pytest` plugins in the `dash.testing` module - `dash[diskcache]`: required if you use `DiskcacheLongCallbackManager` - `dash[celery]`: required if you use `CeleryLongCallbackManager` - `dash[ci]`: mainly for internal use, these are additional requirements for the Dash CI tests, exposed for other component libraries to use a matching configuration. Added - [1883](https://github.com/plotly/dash/pull/1883) in DataTable added `page_current` to `persisted_props` as requested in [#1860](https://github.com/plotly/dash/issues/1860) - [1763](https://github.com/plotly/dash/pull/1763): Dash and Dash Renderer - `Input`, `State`, and `Output` now accept components instead of ID strings and Dash `callback` will auto-generate the component's ID under-the-hood if not supplied. This allows usage like: python my_input = dcc.Input() my_output = html.Div() app.layout = html.Div([my_input, my_output]) dash.callback(Output(my_output, 'children'), Input(my_input, 'value')) def update(value): return f'You have entered {value}' Or, if using Python >=3.8 you can use the `:=` walrus operator: python app.layout = html.Div([ my_input := dcc.Input(), my_output := html.Div() ]) dash.callback(Output(my_output, 'children'), Input(my_input, 'value')) def update(value): return f'You have entered {value}' [1894](https://github.com/plotly/dash/pull/1894) restricted this feature so auto-generated IDs are not allowed if the app uses `dash_snapshots` (a Dash Enterprise package) or if the component uses `persistence`, as this can create confusing errors. Callback definitions can still reference components in these cases, but those components must have explicit IDs. Dash Core Components Rearranged Keyword Arguments & Flexible Types **`Dropdown`, `RadioItem`, and `Checklist`** - Rearranged Keyword Arguments - `options` & `value` are now the first two keywords which means they can be supplied as positional arguments without the keyword. Supplying the keywords (`options=` and `value=`) is still supported. - Flexible Types - `options` can be supplied in two new forms: 1. An array of `string|number|bool` where `label` and `value` are equal to the items in the list. 2. A dictionary where the keys and values set as `value` and `label` respectively. Before: python dcc.Dropdown( options=[ {'label': 'New York', 'value': 'New York'}, {'label': 'Montreal', 'value': 'Montreal'}, ], value='New York' ) or python dcc.Dropdown( options=[ {'label': 'New York', 'value': 'NYC'}, {'label': 'Montreal', 'value': 'MTL'}, ], value='New York' ) After: python dcc.Dropdown(['New York', 'Montreal'], 'New York') Or python dcc.Dropdown({'NYC': 'New York', 'MTL': 'Montreal'}, 'New York') **`RangeSlider` & `Slider`** - Rearranged Keyword Arugments - `min`, `max`, and `step` are now the first three keyword arguments which means they can be supplied as positional arguments without the keyword. - Flexible Types - `step` will be calculated implicitly if not given. - `marks` will be auto generated if not given. It will use `min` and `max` and will respect `step` if supplied. Auto generated marks labels are SI unit formatted. Around 5 human-readable marks will be created. - To remove the Slider's marks, set `marks=None`. Before: python dcc.Slider(marks={1: 2, 2: 2, 3: 3}) After: python dcc.Slider(min=1, max=3, step=1) Or equivalently: python dcc.Slider(1, 3, 1) Step can also be omitted and the `Slider` will attempt to create a nice, human readable step with SI units and around 5 marks: python dcc.Slider(0, 100) The SI units and ranges supported in `marks` are: * `µ` - micro, 10⁻⁶ * `m` - milli, 10⁻³ * `​` (none) - 10⁰ * `k` - kilo, 10³ * `M` - mega, 10⁶ * `G` - giga, 10⁹ * `T` - tera, 10¹² * `P` - peta, 10¹⁵ * `E` - exa, 10¹⁸ _Ranges below 10µ are not supported by the Slider. This is a bug: https://github.com/plotly/dash/issues/1766_ **`DataTable`** - Rearranged Keyword Arguments - `data` and `columns` the first twokeyword arguments which means they can be supplied as positional arguments without the keyword. - Inferred Properties - If `columns` isn't supplied then it is extracted from the the first row in `data` Before: python dash_table.DataTable(data=df.to_dict('records'), columns=[{'name': i, 'id': i} for i in df.columns]) After: python dash_table.DataTable(data=df.to_dict('records')) New Component Properties **`Checklist` & `RadioItems`** - A new property `inline` appends `display: inline-block` to `labelStyle`. python dcc.Checklist(inline=True) Fixed - [1879](https://github.com/plotly/dash/pull/1879) Delete redundancy in pattern-matching callback implementation, specifically when `ALL` and `MATCH` wildcards are used together. This patch was submitted by an anonymous Dash Enterprise customer. Many thanks! - [1858](https://github.com/plotly/dash/pull/1858) Support `mini-css-extract-plugin` Webpack plugin with `plotly/webpack-dash-dynamic-import` node package - used by components to support dash async chunks. Updated dependencies of other `plotly` node packages. - [1836](https://github.com/plotly/dash/pull/1836) Fix `__all__` in dcc and table for extras: dcc download helpers and table format helpers. This also restores this functionality to the obsolete top-level packages `dash_core_components` and `dash_table`. - [1822](https://github.com/plotly/dash/pull/1822) Remove Radium from renderer dependencies, as part of investigating React 17 support. - [1779](https://github.com/plotly/dash/pull/1779): - Clean up our handling of serialization problems, including fixing `orjson` for Python 3.6 - Added the ability for `dash.testing` `percy_snapshot` methods to choose widths to generate. - [1778](https://github.com/plotly/dash/pull/1778) DataTable: Fix React warnings stating that each child in a list should have a unique "key" prop - [1895](https://github.com/plotly/dash/pull/1895) Support debug=True if native namespace-packages are present ``` ### 2.4.1 ``` Fixed - Fix [2045](https://github.com/plotly/dash/issues/2045) import error when using pytest but `dash[testing]` is not installed. ``` ### 2.4.0 ``` - `legend.groupclick` - `bbox` of hover items in event data, to support custom dash-driven hover effects - Patch releases [2.3.1](https://github.com/plotly/plotly.js/releases/tag/v2.3.1), [2.4.1](https://github.com/plotly/plotly.js/releases/tag/v2.4.1), and [2.4.2](https://github.com/plotly/plotly.js/releases/tag/v2.4.2) containing various bug fixes. - [1735](https://github.com/plotly/dash/pull/1735) New `dcc.Tooltip` component. This is particularly useful for rich hover information on `dcc.Graph` charts, using the `bbox` information included in the event data in plotly.js v2.4.0 Dash Table Added - [1729](https://github.com/plotly/dash/pull/1729) Include F#, C, and MATLAB in markdown code highlighting, for the upcoming .NET and MATLAB flavors of dash. Dash HTML Components Removed - [1734](https://github.com/plotly/dash/pull/1734) Removed the following obsolete `html` elements - `<command>`, `<element>`, `<isindex>`, `<listing>`, `<multicol>`, `<nextid>`. These are obsolete and had been previously removed from the reference table. ``` ### 2.3.1 ``` Fixed - [1963](https://github.com/plotly/dash/pull/1963) Fix [#1780](https://github.com/plotly/dash/issues/1780) flask shutdown deprecation warning when running dashduo threaded tests. - [1995](https://github.com/plotly/dash/pull/1995) Fix [#1992](https://github.com/plotly/dash/issues/1992) ImportError: cannot import name 'get_current_traceback' from 'werkzeug.debug.tbtools'. ``` ### 2.3.0 ``` - More number formatting options due to `d3-format` upgrade. - Many new `geo` projections. - Improved rendering and performance of `scattergl`, `splom` and `parcoords` traces. ``` ### 2.2.0 ``` - Legend group titles - Half-year directive (`%h`) for date formatting - Several other bug fixes and performance improvements - [Patch release 2.2.1](https://github.com/plotly/plotly.js/releases/tag/v2.2.1) containing a security fix. Added - [932](https://github.com/plotly/dash-core-components/pull/932) Adds a new copy to clipboard component. - [948](https://github.com/plotly/dash-core-components/pull/948)] Adds `disabled_days` prop to `DatePickerRange` and `DatePickerSingle` components. With this prop you can specify days that should be made unselectable in the date picker, in addition to those that fall outside of the range specified by `min_date_allowed` and `max_date_allowed`. Changed - [972](https://github.com/plotly/dash-core-components/pull/972) Updated R package vignettes and `dash-info.yaml` to regenerate examples without attaching now-deprecated core component packages (`dashHtmlComponents`, `dashCoreComponents`, or `dashTable`). Dash HTML Components Changed - [194](https://github.com/plotly/dash-html-components/pull/194) Updated dependencies and build process - [190](https://github.com/plotly/dash-core-components/pull/190) Updated R package vignettes and `dash-info.yaml` to regenerate examples without attaching now-deprecated core component packages (`dashHtmlComponents`, `dashCoreComponents`, or `dashTable`). Dash Table Fixed - [907](https://github.com/plotly/dash-table/pull/907) - Fix a bug where pagination did not work or was not visible. [834](https://github.com/plotly/dash-table/issues/834) - Fix a bug where if you are on a page that no longer exists after the data is updated, no data is displayed. [892](https://github.com/plotly/dash-table/issues/892) Added - [916](https://github.com/plotly/dash-table/pull/916) - Added `html` option to `markdown_options` prop. This enables the use of html tags in markdown text. - [545](https://github.com/plotly/dash-table/issues/545) - Case insensitive filtering - New props: `filter_options` - to control case of all filters, `columns.filter_options` - to control filter case for each column - New operators: `i=`, `ieq`, `i>=`, `ige`, `i>`, `igt`, `i<=`, `ile`, `i<`, `ilt`, `i!=`, `ine`, `icontains` - for case-insensitive filtering, `s=`, `seq`, `s>=`, `sge`, `s>`, `sgt`, `s<=`, `sle`, `s<`, `slt`, `s!=`, `sne`, `scontains` - to force case-sensitive filtering on case-insensitive columns Changed - [918](https://github.com/plotly/dash-core-components/pull/918) Updated all dependencies. In particular the `highlight.js` upgrade changes code highlighting in markdown: we have long used their "github" style, this has been updated to more closely match current github styles. - [901](https://github.com/plotly/dash-core-components/pull/901) Updated R package `dash-info.yaml` to regenerate example without attaching now-deprecated core component packages (`dashHtmlComponents`, `dashCoreComponents`, or `dashTable`). ``` ### 2.1.0 ``` - New `icicle` trace type. - New `legendrank` trace attribute. - Several other additions and bug fixes. ``` ### 2.0.0 ``` - Stop exporting d3 as `Plotly.d3`, and remove many other deep pieces of the public API. This does not affect the `dcc.Graph` component, but if you make use of `Plotly` from the global scope in some other way you may be affected. - Drop the deprecated trace types `contourgl` and `area`, as well as legacy pre-`scatterpolar` polar attributes `bar.r`, `bar.t`, `scatter.r`, `scatter.t`, `layout.radialaxis`, `layout.angularaxis`. Use `scatterpolar`, `barpolar`, and `polar` subplots instead. - `heatmapgl` and `pointcloud` trace types, and the `transform` attribute are deprecated, and will be removed in a future release. - Increase CSP safety by removing function constructors. 3D plots still use function constructors, but if you place one of the non-3D bundles (including the new `strict` bundle) in your `assets` folder you will have no function constructors. - Remove "Aa" text in legends. - Default `hovermode` to "closest". - Default `textposition` to "auto" in `bar` traces. If you previously used the `bar.text` attribute for hover only, you will need to explicitly set `textposition="none"`. - Add `bar.marker.pattern`, `image.zsmooth`, and various other features and bugfixes. ``` ### 1.58.3 ``` Added - [888](https://github.com/plotly/dash-core-components/pull/888) Adds a `drag_value` prop to `dcc.Slider`to be able to fire callbacks from dragging and releasing the slider. Dash HTML Components Fixed - [169](https://github.com/plotly/dash-html-components/pull/169) - part of fixing dash import bug https://github.com/plotly/dash/issues/1143 Dash Table Fixed - [854](https://github.com/plotly/dash-table/pull/854) - part of fixing dash import bug https://github.com/plotly/dash/issues/1143 ``` ### 1.58.1 ``` - [Feature release of Plotly.js 1.58.0](https://github.com/plotly/plotly.js/releases/tag/v1.58.0) which: - Add `ticklabelposition` attribute to cartesian axes and colorbars [5275](https://github.com/plotly/plotly.js/pull/5275) - Add "strict" `autotypenumbers` to axes and `layout` [5240](https://github.com/plotly/plotly.js/pull/5240) - Add `itemwidth` to legends [5212](https://github.com/plotly/plotly.js/pull/5212) - Add `root.color` attribute to `sunburst` and `treemap` traces [5232](https://github.com/plotly/plotly.js/pull/5232), [#5245](https://github.com/plotly/plotly.js/pull/5245) - Enable fast image rendering for all linear axes [5307](https://github.com/plotly/plotly.js/pull/5307) - Rework matches and scaleanchor so they work together [5287](https://github.com/plotly/plotly.js/pull/5287) ``` ### 1.57.1 ``` - [Feature release of Plotly.js 1.57.0](https://github.com/plotly/plotly.js/releases/tag/v1.57.0) which: - Add "domain" axis references in layout `images`, `shapes` and `annotations` [5014](https://github.com/plotly/plotly.js/pull/5014) - Add `rotation` attribute to `sunburst` traces [5171](https://github.com/plotly/plotly.js/pull/5171), [#5201](https://github.com/plotly/plotly.js/pull/5201) - Add computed margins in "full-json" export [5203](https://github.com/plotly/plotly.js/pull/5203) - [Feature release of Plotly.js 1.56.0](https://github.com/plotly/plotly.js/releases/tag/v1.56.0) which: - Introduce period positioning attributes on date axes in various cartesian traces [5074](https://github.com/plotly/plotly.js/pull/5074), [#5175](https://github.com/plotly/plotly.js/pull/5175) - Add minexponent attribute to improve control over SI prefixes in axis tick labels [5121](https://github.com/plotly/plotly.js/pull/5121), - Add sort attribute to sunburst and treemap traces to disable automatic sort [5164](https://github.com/plotly/plotly.js/pull/5164) - Handle rgba colors in colorscale of surface traces [5166](https://github.com/plotly/plotly.js/pull/5166) ``` ### 1.55.1 ``` - [Feature release of Plotly.js 1.55.0](https://github.com/plotly/plotly.js/releases/tag/v1.55.0) which: - Introduce "period" `ticklabelmode` on cartesian date axes [4993](https://github.com/plotly/plotly.js/pull/4993), [#5055](https://github.com/plotly/plotly.js/pull/5055), [#5060](https://github.com/plotly/plotly.js/pull/5060), [#5065](https://github.com/plotly/plotly.js/pull/5065), [#5088](https://github.com/plotly/plotly.js/pull/5088), [#5089](https://github.com/plotly/plotly.js/pull/5089) - Add new formatting options for weeks and quarters [5026](https://github.com/plotly/plotly.js/pull/5026) - Add `source` attribute to `image` traces for fast rendering [5075](https://github.com/plotly/plotly.js/pull/5075) - Add `zsmooth` attribute for discrete `heatmapgl` traces [4953](https://github.com/plotly/plotly.js/pull/4953) - Add horizontal and vertical markers for arrow charts [5010](https://github.com/plotly/plotly.js/pull/5010) - Add touch support to `rangeslider` [5025](https://github.com/plotly/plotly.js/pull/5025) ``` ### 1.54.4 ``` Dash-Table Added - [808](https://github.com/plotly/dash-table/pull/808)Fix a regression introduced with [#787](https://github.com/plotly/dash-table/pull/787) making it impossible to open markdown links in the current tab. - Adds a new `markdown_options` property that supports: - `link_target` nested prop with values `_blank`, `_parent`, `_self`, `_top` or an arbitrary string (default: `_blank`) ``` ### 1.54.1 ``` - [Feature release of Plotly.js 1.54.0](https://github.com/plotly/plotly.js/releases/tag/v1.54.0) which: - Introduces new drag modes "drawline", "drawrect", "drawcircle", "drawopenpath", "drawclosedpath", adds optional modebar buttons for drawing & removing new shapes inside cartesian subplots, adds newshape and activeshape attributes to layout, and adds editable and fillrule attributes to layout.shapes[4775](https://github.com/plotly/plotly.js/pull/4775) - Add angle and allowoverlap attributes to marker of scattermapbox traces[4575](https://github.com/plotly/plotly.js/pull/4575), [#4794](https://github.com/plotly/plotly.js/pull/4794) - Also contains various other fixes Dash-Table Added - [729](https://github.com/plotly/dash-table/pull/729) Improve conditional styling - `style_data_conditional`: Add support for `row_index` and `column_id` array of values - `style_header_conditional`: Add support for `header_index` and `column_id` array of values - `style_filter_conditional`: Add support for `column_id` array of values - `style_cell_conditional`: Add support for `column_id` array of values - `style_data_conditional`: Add new conditions `state: 'active'|'selected'` to customize selected and active cell styles Fixed - [722](https://github.com/plotly/dash-table/pull/722) Fix a bug where row height is misaligned when using fixed_columns and/or fixed_rows - [728](https://github.com/plotly/dash-table/pull/728) Fix copy/paste on readonly cells - [724](https://github.com/plotly/dash-table/pull/724) Fix `active_cell` docstring: clarify optional nature of the `row_id` nested prop - [732](https://github.com/plotly/dash-table/pull/732) Fix a bug where opening a dropdown scrolled the table down its last row - [731](https://github.com/plotly/dash-table/pull/731) Fix a bug where `data=None` and `columns=None` caused the table to throw an error - [766](https://github.com/plotly/dash-table/pull/766) Sanitize table `id` for stylesheet injection (fixes usage with Pattern-Matching callbacks) Changed - [758](https://github.com/plotly/dash-table/pull/758) Improve error message for invalid filter queries ``` ### 1.52.1 ``` - [Feature release 1.52.0](https://github.com/plotly/plotly.js/releases/tag/v1.52.0) which contains: - Enable loading locale bundles before plotly.js bundles [4453](https://github.com/plotly/plotly.js/pull/4453) - `ko` localization [4315](https://github.com/plotly/plotly.js/pull/4315) - Patch release [1.52.1](https://github.com/plotly/plotly.js/releases/tag/v1.52.1) containing several bug fixes. - [706](https://github.com/plotly/dash-core-components/pull/706) ``` ### 1.51.3 ``` Dash-Table Added - [606](https://github.com/plotly/dash-table/pull/606) Add markdown support for table cells. Cells will be rendered as markdown if the column `presentation` is specified as `markdown`. - Add highlight.js for syntax highlighting. If `window.hljs` is specified, that will be used for highlighting instead. Fixed - [670](https://github.com/plotly/dash-table/pull/670) Fix a bug where `derived_filter_query_structure` was not getting updated properly - [677](https://github.com/plotly/dash-table/pull/677) Fix a bug where the table fails to load when used inside an iframe with a sandbox attribute that only has allow-scripts - [665](https://github.com/plotly/dash-table/pull/665) Fix a bug in Firefox where the dropdown cells height is incorrect ``` ### 1.49.2 ``` dash-html-components Updated - Generated documentation dash-renderer Changed - Clean all the binary assets in dash-renderer repo, add tool to build all the required bundles from fresh source code to avoid confusion of the assets and improve the release process. [874](https://github.com/plotly/dash/pull/874) dash-table Added [317](https://github.com/plotly/dash-table/issues/317) - New `column.selectable` nested prop that displays a selection checkbox or radio button in the column. - New `column_selectable` prop to choose whether columns can be selected or not, and whether a single or multiple selections can be in effect at the same time. - New `selected_columns` prop that contains the list of visible and hidden columns that are currently selected - New `derived_viewport_selected_columns` that contains the list of visible columns that are currently selected This prop is read-only. Use `selected_columns` in callbacks instead. Fixed [533](https://github.com/plotly/dash-table/issues/533) - Fixed problem clearing one column shifting everything to the left and leaving the last column blank - Add merge_duplicate_headers prop to correct `export_format: display` behavior. [549](https://github.com/plotly/dash-table/issues/549) - Fixed renaming of single-row headers in the GUI ``` ### 1.21.0 ``` Dash and Dash Renderer Added - [1675](https://github.com/plotly/dash/pull/1675) Add new `Dash` constructor argument `extra_hot_reload_paths`. This allows you to re-initialize the Python code of the app when non-Python files change, if you know that these files impact the app. Changed - [1675](https://github.com/plotly/dash/pull/1675) Remove the constraint that `requests_pathname_prefix` ends with `routes_pathname_prefix`. When you are serving your app behind a reverse proxy that rewrites URLs that constraint needs to be violated. - [1611](https://github.com/plotly/dash/pull/1611) and [#1685](https://github.com/plotly/dash/pull/1685) Package dash-renderer artifacts and dependencies with Dash, and source renderer resources from within Dash. - [1567](https://github.com/plotly/dash/pull/1567) Julia component generator puts components into `src/jl` - fixes an issue on case-insensitive filesystems when the component name and module name match (modulo case) and no prefix is used. Also reduces JS/Julia clutter in the overloaded `src` directory. Fixed - [1664](https://github.com/plotly/dash/pull/1664) Fix [#1649](https://github.com/plotly/dash/issues/1649), makes the devtools readable with a dark theme. - [1640](https://github.com/plotly/dash/pull/1640) Fix [#1475](https://github.com/plotly/dash/issues/1475), missing `timing_information` after certain modifications to Flask behavior Dash Core Components Fixed - [963](https://github.com/plotly/dash-core-components/pull/963) Fixes [#885](https://github.com/plotly/dash-core-components/issues/885) This applies the fix from [878](https://github.com/plotly/dash-core-components/pull/878) to the RangeSlider. It not only fixes the bug where the tooltips were visible when slider was not, but it also reduces the lag in the tooltip when the slider handles are moved. Updated - [939](https://github.com/plotly/dash-core-components/pull/939) Upgrade Plotly.js to v2.2.1. Note that this is a major version upgrade to Plotly.js, however we are not treating this as a breaking change for DCC as the majority of breaking changes in Plotly.js do not affect the Dash API. The one exception is that several trace types that have long been deprecated are removed entirely. ``` ### 1.20.0 ``` Dash and Dash Renderer Changed - [1531](https://github.com/plotly/dash/pull/1531) Update the format of the docstrings to make them easier to read in the reference pages of Dash Docs and in the console. This also addresses [#1205](https://github.com/plotly/dash/issues/1205) - [1553](https://github.com/plotly/dash/pull/1553) Increase the z-index of the Dash error menu from 1001 to 1100 in order to make sure it appears above Bootstrap components. Fixed - [1546](https://github.com/plotly/dash/pull/1546) Validate callback request `outputs` vs `output` to avoid a perceived security issue. Dash Core Components Added - [863](https://github.com/plotly/dash-core-components/pull/863) Adds a new `Download` component. Along with this several utility functions are added to help construct the appropriate data format: - `dcc.send_file` - send a file from disk - `dcc.send_data_frame` - send a `DataFrame`, using one of its writer methods - `dcc.send_bytes` - send a bytestring or the result of a bytestring writer - `dcc.send_string` - send a string or the result of a string writer Changed - [923](https://github.com/plotly/dash-core-components/pull/923) Set `autoComplete` to off in `dcc.Dropdown`. This fixes [808](https://github.com/plotly/dash-core-components/issues/808) Fixed - [930](https://github.com/plotly/dash-core-components/pull/930) Fixed a bug [#867](https://github.com/plotly/dash-core-components/issues/867) with `DatePickerRange` that would sometimes shift the allowed dates by one day. - [934](https://github.com/plotly/dash-core-components/pull/934) Fixed a bug in `EnhancedTab` component that ignored `disabled_className` property Dash HTML Components Fixed - [179](https://github.com/plotly/dash-html-components/pull/179) - Fixes [#77](https://github.com/plotly/dash-html-components/issues/77) Added `allow` and `referrerPolicy` properties to `html.Iframe` - [178](https://github.com/plotly/dash-html-components/pull/178) - Fix [#161](https://github.com/plotly/dash-html-components/issues/161) <object> `data` property, and fix [#129](https://github.com/plotly/dash-html-components/issues/129) obsolete, deprecated, and discouraged elements. No elements were removed, but comments were added to the documentation about these elements detailing their limitations. Dash Table Changed - [862](https://github.com/plotly/dash-table/pull/862) - update docstrings per https://github.com/plotly/dash/issues/1205 - [878](https://github.com/plotly/dash-table/pull/878) - update build process to use Webpack 5 and other latest dependencies ``` ### 1.19.0 ``` Dash and Dash Renderer Added - [1508](https://github.com/plotly/dash/pull/1508) Fix [#1403](https://github.com/plotly/dash/issues/1403): Adds an x button to close the error messages box. - [1525](https://github.com/plotly/dash/pull/1525) Adds support for callbacks which have overlapping inputs and outputs. Combined with `dash.callback_context` this addresses many use cases which require circular callbacks. Changed - [1503](https://github.com/plotly/dash/pull/1506) Fix [#1466](https://github.com/plotly/dash/issues/1466): loosen `dash[testing]` requirements for easier integration in external projects. This PR also bumps many `dash[dev]` requirements. Fixed - [1530](https://github.com/plotly/dash/pull/1530) Dedent error messages more carefully. - [1527](https://github.com/plotly/dash/issues/1527)🐛 `get_asset_url` now pulls from an external source if `assets_external_path` is set. - updated `_add_assets_resource` to build asset urls the same way as `get_asset_url`. - updated doc string for `assets_external_path` Dash argument to be more clear that it will allways be joined with the `assets_url_path` argument when determining the url to an external asset. - [1493](https://github.com/plotly/dash/pull/1493) Fix [#1143](https://github.com/plotly/dash/issues/1143), a bug where having a file with one of several common names (test.py, code.py, org.py, etc) that imports a dash component package would make `import dash` fail with a cryptic error message asking whether you have a file named "dash.py" Dash Core Components Fixed - [905](https://github.com/plotly/dash-core-components/pull/905) Make sure the `figure` prop of `dcc.Graph` receives updates from user interactions in the graph, by using the same `layout` object as provided in the prop rather than cloning it. Fixes [#879](https://github.com/plotly/dash-core-components/issues/879). - [903](https://github.com/plotly/dash-core-components/pull/903) Part of fixing dash import bug https://github.com/plotly/dash/issues/1143 Updated - [911](https://github.com/plotly/dash-core-components/pull/911), [#906](https://github.com/plotly/dash-core-components/pull/906) ``` ### 1.18.1 ``` Dash-Core-Components Updated - [898](https://github.com/plotly/dash-core-components/pull/898) ``` ### 1.18.0 ``` Dash-Table Fixed - [844](https://github.com/plotly/dash-table/pull/844) Fix a bug where the table is using classes that are styled by Bootstrap Dash-Core-Components Updated - [889](https://github.com/plotly/dash-core-components/pull/889) & [#893](https://github.com/plotly/dash-core-components/pull/893) ``` ### 1.17.0 ``` Dash and Dash-Renderer Changed - [1442](https://github.com/plotly/dash/pull/1442) Update from React 16.13.0 to 16.14.0 Fixed - [1434](https://github.com/plotly/dash/pull/1434) Fix [#1432](https://github.com/plotly/dash/issues/1432) for Julia to import non-core component packages without possible errors. Changed - [1448](https://github.com/plotly/dash/pull/1448) Provide a hint in the callback error when the user forgot to make `app.callback(...)` a decorator. Dash-Core-Components Added - [871](https://github.com/plotly/dash-core-components/pull/871) Add Julia syntax highlighting support for dcc.Markdown Fixed - [878](https://github.com/plotly/dash-core-components/pull/878) - Fixed [751](https://github.com/plotly/dash-core-components/issues/751), a bug that causes `dcc.Slider` and `dcc.RangerSlider` tooltips to be visible even if the slider component isn't visible (e.g. overflow), Updated - [875](https://github.com/plotly/dash-core-components/pull/875) ``` ### 1.16.3 ``` Dash and Dash-Renderer Fixed - [1426](https://github.com/plotly/dash/pull/1426) Fix a regression caused by `flask-compress==1.6.0` causing performance degradation on server requests ``` ### 1.16.2 ``` Dash and Dash-Renderer Fixed - [1415](https://github.com/plotly/dash/pull/1415) Fix a regression with some layouts callbacks involving dcc.Tabs, not yet loaded dash_table.DataTable and dcc.Graph to not be called - [1416](https://github.com/plotly/dash/pull/1416) Make callback graph more robust for complex apps and some specific props (`width` in particular) that previously caused errors. ``` ### 1.16.1 ``` Dash and Dash-Renderer Changed - [1376](https://github.com/plotly/dash/pull/1376) Extends the `getTransform` logic in the renderer to handle `persistenceTransforms` for both nested and non-nested persisted props. This was used to to fix [dcc#700](https://github.com/plotly/dash-core-components/issues/700) in conjunction with [dcc#854](https://github.com/plotly/dash-core-components/pull/854) by using persistenceTransforms to strip the time part of the datetime so that datepickers can persist when defined in callbacks. Fixed - [1408](https://github.com/plotly/dash/pull/1408) Fixes a bug where the callback graph layout would reset whenever a callback fired, losing user-initiated layout changes ([#1402](https://github.com/plotly/dash/issues/1402)) or creating a new force layout ([#1401](https://github.com/plotly/dash/issues/1401)) Dash-Core-Components Fixed - [854](https://github.com/plotly/dash-core-components/pull/854) Used `persistenceTransforms` to strip the time part of the datetime in the persited props of DatePickerSingle (date) and DatePickerRange (end_date, start_date), fixing [dcc#700](https://github.com/plotly/dash-core-components/issues/700). Added - [850](https://github.com/plotly/dash-core-components/pull/850) Add property `prependData` to `Graph` to support `Plotly.prependTraces` + refactored the existing `extendTraces` API to be a single `mergeTraces` API that can handle both `prepend` as well as `extend`. Updated ``` ### 1.16.0 ``` Dash and Dash-Renderer Added - [1371](https://github.com/plotly/dash/pull/1371) You can now get [CSP `script-src` hashes](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/script-src) of all added inline scripts by calling `app.csp_hashes()` (both Dash internal inline scripts, and those added with `app.clientside_callback`) . Changed - [1385](https://github.com/plotly/dash/pull/1385) Closes [#1350](https://github.com/plotly/dash/issues/1350) and fixes a previously undefined callback behavior when multiple elements are stacked on top of one another and their `n_clicks` props are used as inputs of the same callback. The callback will now trigger once with all the triggered `n_clicks` props changes. - [1179](https://github.com/plotly/dash/pull/1179) New and improved callback graph in the debug menu. Now based on Cytoscape for much more interactivity, plus callback profiling including number of calls, fine-grained time information, bytes sent and received, and more. You can even add custom timing information on the server with `callback_context.record_timing(name, seconds)` Fixed - [1384](https://github.com/plotly/dash/pull/1384) Fixed a bug introduced by [#1180](https://github.com/plotly/dash/pull/1180) breaking use of `prevent_initial_call` as a positional arg in callback definitions Dash-Core-Components Updated - [858](https://github.com/plotly/dash-core-components/pull/858) ``` ### 1.15.0 ``` Dash and Dash Renderer Added - [1355](https://github.com/plotly/dash/pull/1355) Removed redundant log message and consolidated logger initialization. You can now control the log level - for example suppress informational messages from Dash with `app.logger.setLevel(logging.WARNING)`. - [1253](https://github.com/plotly/dash/pull/1253), [#1377](https://github.com/plotly/dash/pull/1377) Added experimental `--jl-prefix` option to `dash-generate-components`, optionally generates Julia version of components and corresponding Julia package Changed - [1180](https://github.com/plotly/dash/pull/1180) and [#1375](https://github.com/plotly/dash/pull/1375) `Input`, `Output`, and `State` in callback definitions don't need to be in lists. You still need to provide `Output` items first, then `Input` items, then `State`, and the list form is still supported. In particular, if you want to return a single output item wrapped in a length-1 list, you should still wrap the `Output` in a list. This can be useful for procedurally-generated callbacks. - [1368](https://github.com/plotly/dash/pull/1368) Updated pytest to v6.0.1. To avoid deprecation warnings, this also updated pytest-sugar to 0.9.4 and pytest-mock to 3.2.0. The pytest-mock update only effects python >= 3.0. Pytest-mock remains pinned at 2.0.0 for python == 2.7. Dash Core Components Added - [851](https://github.com/plotly/dash-core-components/pull/851) Add support for Dash.jl Julia built components - [840](https://github.com/plotly/dash-core-components/pull/840) Add styling properties to `dcc.Loading` component + `parent_className`: Add CSS class for the outermost `dcc.Loading` parent div DOM node + `parent_style`: Add CSS style property for the outermost `dcc.Loading` parent div DOM node + provides a workaround for the previous behaviour the of `className` property, which changed in [740](https://github.com/plotly/dash-core-components/pull/740). `parent_className` (or inline styles in `parent_style`) now allow CSS rules to be applied to the outermost `dcc.Loading` div, which is no longer covered by `className` on loading completion as of Dash Core Components `>= 1.9.1` (Dash `>= 1.11.0`). Dash HTML Components Added - [165](https://github.com/plotly/dash-html-components/pull/165) Add support for Dash.jl Julia component generation. Dash Table Added - [820](https://github.com/plotly/dash-table/pull/820) Add support for Dash.jl Julia built components Fixed - [817](https://github.com/plotly/dash-table/pull/817) Fix a regression introduced with [#722](https://github.com/plotly/dash-table/pull/722) causing the tooltips to be misaligned with respect to their parent cell - [818](https://github.com/plotly/dash-table/pull/818) Fix a regression causing copy/paste not to work when selecting a range of cells with Shift + mouse click - [819](https://github.com/plotly/dash-table/pull/819) Fix pagination `page_current` and `page_count` fields to accommodate larger numbers ``` ### 1.14.0 ``` Dash and Dash-Renderer Added - [1343](https://github.com/plotly/dash/pull/1343) Add `title` parameter to set the document title. This is the recommended alternative to setting app.title or overriding the index HTML. - [1315](https://github.com/plotly/dash/pull/1315) Add `update_title` parameter to set or disable the "Updating...." document title during updates. Closes [#856](https://github.com/plotly/dash/issues/856) and [#732](https://github.com/plotly/dash/issues/732) Dash-Core-Components - [835](https://github.com/plotly/dash-core-components/pull/835) ``` ### 1.13.4 ``` Fixed - [1310](https://github.com/plotly/dash/pull/1310) Fix a regression since 1.13.0 preventing more than one loading state from being shown at a time. ``` ### 1.13.3 ``` Dash-Table Fixed - [798](https://github.com/plotly/dash-table/pull/798) Fix a bug where headers are not aligned with columns after an update [#797](https://github.com/plotly/dash-table/issues/797) ``` ### 1.13.2 ``` Dash and Dash-Renderer Fixed - [1305](https://github.com/plotly/dash/issues/1305) - Fix regression that causes crash when `FLASK_ENV` is modified during app execution - Fix regression that caused tests using `_wait_for_callbacks` to fail ``` ### 1.13.1 ``` Dash-Core-Components Updated - [824](https://github.com/plotly/dash-core-components/pull/824) ``` ### 1.13 ``` Dash and Dash-Renderer Added - [1289](https://github.com/plotly/dash/pull/1289) Supports `DASH_PROXY` env var to tell `app.run_server` to report the correct URL to view your app, when it's being proxied. Throws an error if the proxy is incompatible with the host and port you've given the server. - [1240](https://github.com/plotly/dash/pull/1240) Adds `callback_context` to clientside callbacks (e.g. `dash_clientside.callback_context.triggered`). Supports `triggered`, `inputs`, `inputs_list`, `states`, and `states_list`, all of which closely resemble their serverside cousins. Changed - [1237](https://github.com/plotly/dash/pull/1237) Closes [#920](https://github.com/plotly/dash/issues/920): Converts hot reload fetch failures into a server status indicator showing whether the latest fetch succeeded or failed. Callback fetch failures still appear as errors but have a clearer message. - [1254](https://github.com/plotly/dash/pull/1254) Modifies the callback chain implementation and improves performance for apps with a lot of components Fixed - [1255](https
pyup-bot commented 4 months ago

Closing this in favor of #327