Releases: plotly/dash
Releases · plotly/dash
Dash v2.9.0
Breaking
- #2450 Set label style
display: blockifinlineis false in RadioItems & Checklist components. To keep previous behavior, setinline=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 Improved pages feature:
- Accept an absolute path or a
pathlib.pathforpages_folder, to matchassets_folder - Fix inferring
use_pages=Truewhen you supply a custompages_folder - Fix for
pages_folderthat includes special characters - New test fixture
clear_pages_state - Make imported pages act more like regular Python modules
- Accept an absolute path or a
- #2068 Added
refresh="callback-nav"indcc.Location. This allows for navigation without refreshing the page when url is updated in a callback. - #2417 Add wait_timeout property to customize the behavior of the default wait timeout used for by wait_for_page, fix #1595
- #2417 Add the element target text for wait_for_text* error message, fix #945
- #2425 Add
add_log_handler=Trueto Dash init, if you don't want a log stream handler at all. - #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.0before running your app, or inside the app calldash._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 Add
dash.Patchfor partial update Output props without transferring the previous value in a State. - #2414 Add
allow_duplicatetoOutputarguments allowing duplicate callbacks to target the same prop.
Fixed
- #2429 Fix side effect on updating possible array children triggering callbacks, fix #2411.
- #2417 Disable the pytest plugin if
dash[testing]not installed, fix #946. - #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 Fix multiple log handler added unconditionally to the logger, resulting in duplicate log message.
- #2415 Fix background callbacks progress not deleted after fetch.
- #2426 Set default interval to 1 second for app.long_callback, restoring the behavior it had before v2.6.0 when we introduced
backround=Truecallbacks.
Changed
- #2425 Moved the logger namespace to
dash.dash, as library logger it should be on that namespace instead of the user app.
Updated
Dash v2.8.1
Fixed
- #2400 Added
disable_n_clicks=Trueto thehtml.Divcomponents inpage_container.
Dash v2.8.0
Dash v2.7.1
Dash v2.7.0
Removed
- #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 Added new
placeholder_textproperty tofilterOptionsfor DataTable which allows overriding the default filter field placeholder.
Updated
- #2282 Widespread dependency upgrades
- Update Plotly.js to v2.16.1 (from v2.13.3)
- Feature release 2.14.0 adds arrows to
sankeylinks, andeditSelectionoption to config. - Feature release 2.15.0 adds directed arrowheads and markers to
scatterand scatter-like traces and increased control of automargin and legend sizing - Feature release 2.16.0 adds clustering to
scattermapboxtraces and restricted bounds tomapboxplots. - Patch releases 2.15.1 and 2.16.1 fix several bugs.
- Feature release 2.14.0 adds arrows to
- Update Plotly.js to v2.16.1 (from v2.13.3)
Fixed
- #2292 Pages: find the 404 page even if
pages_folderis nested, or the 404 page is nested insidepages_folder. - #2265 Removed deprecated
before_first_requestas reported in #2177. - #2257 Fix tuple types in the TypeScript component generator.
- #2293 Fix Dropdown useMemo not detecting equal objects
- #2277 Use dropdown styles from node_modules, instead of from stored css file
- #2105 Fix order of dash component libraries imports.
Changed
- #2291 Move
flask-compressdependency to new extras requiresdash[compress]
Dash v2.6.2
Fixed
- #2237 Ensure calls to
plotly.jsfromdcc.Graphare properly sequenced even if React initiates multiple render cycles in quick succession. - #2218 Fix bug #1348 Validate children prop (required or not).
- #2223 Exclude hidden folders when building
dash.page_registry. - #2182 Fix #2172 Make it so that when using pages, if
suppress_callback_exceptions=Truethevalidation_layoutis not set. - #2152 Fix bug #2128 preventing rendering of multiple components inside a dictionary.
- #2187 Fix confusing error message when trying to use pytest fixtures but
dash[testing]is not installed. - #2202 Fix bug #2185 when you copy text with multiple quotes into a table
- #2226 Fix #2219 pages register & background callbacks.
Dash v2.6.1
Fixed
- #2175 Fix #2173 callback output of ndarray and no_update check.
- #2146 Remove leftover debug console.log statement.
- #2168 Reverts #2126 (supporting redirect from root when using pages) until the new bugs introduced by that PR are fixed.
Updated
- #2167 Update Plotly.js to v2.13.3 (from v2.13.1) including patch release v2.13.2 and patch release v2.13.3.
- Emit
plotly_selectedevent on plot API calls and GUI edits. - Fix
sankeyselect error (regression introduced in 2.13.0). - Handle missing drag layer of invisible
sankeytraces to fix select error. - Emit selection event in shape drawing
dragmodes when an existing selection is modified.
- Emit
Dash v2.6.0
Added
- #2109 Add
maxHeightto Dropdown options menu. - #2039 Long callback changes:
- Add
background=Falsetodash.callbackto use instead ofapp.long_callback. - Add previous
app.long_callbackarguments todash.callback(interval,running,cancel,progress,progress_default,cache_args_to_ignore,manager)
- Add
- #2110 Add
searchprop todcc.Dropdownoptions, allowing to search the dropdown options with something other than the label or value.
Fixed
- #2126 Fix bug where it was not possible to redirect from root when using pages.
- #2114 Fix bug #1978 where text could not be copied from cells in tables with
cell_selectable=False. - #2102 Fix bug as reported in dash-labs #113 where files starting with
.were not excluded when buildingdash.page_registry. - #2100 Fixes bug where module name in for a custom
not_found_404page is incorrect in thedash.page_registrywhen not using thepagesfolder. - #2098 Accept HTTP code 400 as well as 401 for JWT expiry
- #2097 Fix bug #2095 with TypeScript compiler and
React.FCempty valueDeclaration error & support empty props components. - #2104 Fix bug #2099 with Dropdown clearing search value when a value is selected.
- #2039 Fix bugs in long callbacks:
- #2110 Fix
dcc.Dropdownsearch with component as prop for option label. - #2131 Add encoding to file open calls. Fix bug #2127.
Changed
- #2116 Rename long callbacks to background callbacks
- Deprecated
dash.long_callback.managers.CeleryLongCallbackManager, usedash.CeleryManagerinstead. - Deprecated
dash.long_callback.managers.DiskcacheLongCallbackManager, usedash.DiskcacheManagerinstead. - Deprecated dash constructor argument
long_callback_managerin favor ofbackground_callback_manager.
- Deprecated
Updated
- #2134 Upgrade Plotly.js to v2.13.1 (from v2.12.1) including feature release 2.13.0 and patch release 2.13.1
- Add persistent selections via layout attributes
selections,newselection, andactiveselection, along with an updated UI allowing you to modify a selection you created. - Add unselected line styling to
parcoordstraces. - Add more quartile algorithms to
violintraces. - More flexible axis
automarginbehavior. - And several other enhancements and bug fixes.
- Add persistent selections via layout attributes
Dash v2.5.1
Fixed
- #2087 Fix bug #2086 in which using id as a key within a component's id breaks the new callback context's
args_groupingfunction. - #2084 In dash 2.5.0, a default viewport meta tag was added as recommended for mobile-optimized sites by mdn
This feature can be disabled by providing an empty viewport meta tag. e.g.app = Dash(meta_tags=[{"name": "viewport"}]) - #2090, #2092. Fixed bug where the
pathto thepages_folderwas incorrect on Windows.
Removed
- #2087 Removed the undocumented callback context
args_grouping_valuesproperty which was incompatible with pattern-matching callbacks.
Dash v2.5.0
Added
- #1947 Added
pages- a better way to build multi-page apps. For more information see the forum post. - #1965 Add component as props.
- #2049 Added
wait_for_class_to_equalandwait_for_contains_classmethods todash.testing
Changed
- #2050 Changed
find_elementandfind_elementsto accept anattributeargument that aligns with Selenium'sByclass, allowing you to search elements by other attributes. Default value isCSS_SELECTORto maintain backwards compatibility with previousfind_elements.
Fixed
- #2043 Fix bug
#2003 in which
dangerously_allow_html=True+mathjax=Trueworks in some cases, and in some cases not. - #2065 Fix bug #2064 rendering of
dcc.Dropdownwith a value but no options. - #2047 Fix bug #1979 in which
DASH_DEBUGas environment variable gets ignored. - #2070 Fix bug #2066 nested types triggering maximum call stack error when building typescript components.