Skip to content

Commit 5ead982

Browse files
committed
Merge branch 'dev' into single_input
2 parents 474b837 + d5452c0 commit 5ead982

24 files changed

+2191
-1128
lines changed

CHANGELOG.md

Lines changed: 25 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,14 @@
11
# Change Log for Dash
22
All notable changes to `dash` will be documented in this file.
3-
This project adheres to [Semantic Versioning](http://semver.org/).
3+
This project adheres to [Semantic Versioning](https://semver.org/).
4+
5+
## Unreleased
6+
### Added
7+
- [#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)
8+
9+
## [1.13.4] - 2020-06-25
10+
### Fixed
11+
- [#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.
412

513
## [UNRELEASED]
614
### Changed
@@ -70,7 +78,7 @@ This project adheres to [Semantic Versioning](http://semver.org/).
7078

7179
## [1.9.1] - 2020-02-27
7280
### Added
73-
- [#1133](github.com/plotly/dash/pull/1133) Allow the `compress` config variable to be set with an environment variable with DASH_COMPRESS=FALSE
81+
- [#1133](https://github.com/plotly/dash/pull/1133) Allow the `compress` config variable to be set with an environment variable with DASH_COMPRESS=FALSE
7482

7583
## [1.9.0] - 2020-02-04
7684
### Fixed
@@ -116,7 +124,7 @@ These functions are particularly useful for apps deployed on Dash Enterprise whe
116124
### Added
117125
- [#967](https://github.com/plotly/dash/pull/967) Add support for defining
118126
clientside JavaScript callbacks via inline strings.
119-
- [#1020](https://github.com/plotly/dash/pull/1020) Allow `visit_and_snapshot` API in `dash.testing.browser` to stay on the page so you can run other checks.
127+
- [#1020](https://github.com/plotly/dash/pull/1020) Allow `visit_and_snapshot` API in `dash.testing.browser` to stay on the page so you can run other checks.
120128

121129
### Changed
122130
- [#1026](https://github.com/plotly/dash/pull/1026) Better error message when you forget to wrap multiple `children` in an array, and they get passed to other props.
@@ -242,7 +250,7 @@ clientside JavaScript callbacks via inline strings.
242250
- Change `hot_reload_interval` from msec to seconds, for consistency with `hot_reload_watch_interval`
243251
- When called from `enable_dev_tools`, `debug=True` by default. It's still `False` by default from `run_server`.
244252

245-
-[#744](https://github.com/plotly/dash/pull/744) Introducing Dash Testing (`dash.testing`) - read the full tutorial at http://dash.plotly.com/testing.
253+
-[#744](https://github.com/plotly/dash/pull/744) Introducing Dash Testing (`dash.testing`) - read the full tutorial at <https://dash.plotly.com/testing>.
246254

247255
- [#753](https://github.com/plotly/dash/pull/753) `Component` no longer inherits `MutableMapping`, so `values`, `keys`, and more are no longer methods. Fixes an issue reported in [dcc#440](https://github.com/plotly/dash-core-components/issues/440) where components with certain prop names defined but not provided would cause a failure to render. During component generation we now disallow all props with leading underscores or matching a few remaining reserved words: `UNDEFINED`, `REQUIRED`, `to_plotly_json`, `available_properties`, and `available_wildcard_properties`.
248256

@@ -296,7 +304,7 @@ clientside JavaScript callbacks via inline strings.
296304
## [0.39.0] - 2019-03-04
297305
### Added
298306
- [#436](https://github.com/plotly/dash/pull/436) Allow multiple outputs from a single callback.
299-
- [#367](https://github.com/plotly/dash/pull/367) Support custom javascript hooks to modify callback payloads and responses.
307+
- [#367](https://github.com/plotly/dash/pull/367) Support custom JavaScript hooks to modify callback payloads and responses.
300308
- [#623](https://github.com/plotly/dash/pull/623) Modify the flask response with custom cookies or headers, using `dash.callback_context.response`.
301309
- [renderer#93](https://github.com/plotly/dash-renderer/pull/93) Loading states API
302310

@@ -333,7 +341,7 @@ clientside JavaScript callbacks via inline strings.
333341
- Bump dash-core-components version from 0.43.0 to [0.43.1](https://github.com/plotly/dash-core-components/blob/master/CHANGELOG.md#0431---2019-02-11)
334342

335343
### Fixed
336-
- [#563](https://github.com/plotly/dash/pull/563) Fix collections.abc deprecation warning for python 3.8
344+
- [#563](https://github.com/plotly/dash/pull/563) Fix collections.abc deprecation warning for Python 3.8
337345

338346
## [0.36.0] - 2019-01-25
339347
### Removed
@@ -505,21 +513,19 @@ clientside JavaScript callbacks via inline strings.
505513
- `requests_pathname_prefix` must end with `routes_pathname_prefix`. If you supplied both `requests` and `routes` pathname before this update, make sure `requests_pathname_prefix` ends with the same value as `routes_pathname_prefix`.
506514
- `url_base_pathname` sets both `requests/routes` pathname, cannot supply it with either `requests` or `routes` pathname prefixes.
507515

508-
509516
## 0.24.2 - 2018-08-13
510517
### Fixed
511518
- [#320](https://github.com/plotly/dash/pull/320) Disallow duplicate component ids in the initial layout.
512519

513520
## 0.24.1 - 2018-08-10
514521
### Fixed
515522
- Fix bug [#321](https://github.com/plotly/dash/issues/321) where importing Dash components with no props would result in an error.
516-
- Fix a bug in 0.23.1 where importing components with arguments that are python keywords could cause an error. In particular, this fixes `dash-html-components` with Python 3.7.
523+
- Fix a bug in 0.23.1 where importing components with arguments that are Python keywords could cause an error. In particular, this fixes `dash-html-components` with Python 3.7.
517524

518525
## 0.24.0 - 2018-08-10
519526
### Added
520527
- [#319](https://github.com/plotly/dash/pull/309) Add a modified time query string to assets included in the index in order to bust the cache.
521528

522-
523529
## 0.23.1 - 2018-08-02
524530
### Added
525531
- [#316](https://github.com/plotly/dash/pull/316) Add `ie-compat` meta tag to the index by default.
@@ -570,7 +576,7 @@ app = dash.Dash(...)
570576

571577
## 0.20.0 - 2018-01-19
572578
### Added
573-
- [#190](https://github.com/plotly/dash/pull/190) `exceptions.PreventUpdate` can be raised inside a callback to prevent the callback from updating the app. See https://community.plotly.com/t/improving-handling-of-aborted-callbacks/7536/2.
579+
- [#190](https://github.com/plotly/dash/pull/190) `exceptions.PreventUpdate` can be raised inside a callback to prevent the callback from updating the app. See <https://community.plotly.com/t/improving-handling-of-aborted-callbacks/7536/2>.
574580

575581
### Removed
576582
- Removes logging from redux middleware from production build based on process.env.NODE_ENV.
@@ -582,8 +588,8 @@ app = dash.Dash(...)
582588

583589
## 0.19.0 - 2017-10-16
584590
### Changed
585-
- 🔒 Remove CSRF protection measures. CSRF-style attacks are not relevant to Dash apps. Dash's API uses `POST` requests with content type `application/json` which are not susceptible to unwanted requests from 3rd party sites. See [#141](https://github.com/plotly/dash/issues/141).
586-
- 🔒 `app.server.secret_key` is no longer required since CSRF protection was removed. Setting `app.server.secret_key` was difficult to document and a very common source of confusion, so it's great that users won't get bitten by this anymore :tada:
591+
- 🔒 Remove CSRF protection measures. CSRF-style attacks are not relevant to Dash apps. Dash's API uses `POST` requests with content type `application/json` which are not susceptible to unwanted requests from 3rd party sites. See [#141](https://github.com/plotly/dash/issues/141).
592+
- 🔒 `app.server.secret_key` is no longer required since CSRF protection was removed. Setting `app.server.secret_key` was difficult to document and a very common source of confusion, so it's great that users won't get bitten by this anymore :tada:
587593
- 🐞 [renderer#22](https://github.com/plotly/dash-renderer/pull/22), [renderer#28](https://github.com/plotly/dash-renderer/pull/28) Previously, old requests could override new requests if their response was longer than the new one. This caused subtle bugs when apps are deployed on multiple processes or threads with component callbacks that update at varying rates like urls. Originally reported in [#133](https://github.com/plotly/dash/issues/133). This fix should also improve performance when many updates happen at once as outdated requests will get dropped instead of updating the UI. Performance issue with the first PR reported in [renderer#27](https://github.com/plotly/dash-renderer/issues/27) and fixed in the second PR.
588594
- [renderer#21](https://github.com/plotly/dash-renderer/pull/21) Fix an issue where a callback would be fired excessively. Previously, the callback would be called as many times as it had inputs. Now, it is called less.
589595

@@ -594,9 +600,9 @@ app = dash.Dash(...)
594600

595601
### Fixed
596602
- Fix a bug from 0.18.2 that removed the ability for dash to serve the app on any route besides `/`.
597-
- Fix a bug from 0.18.0 with the new config variables when used in a multi-app setting, causing config to be shared across apps. Originally reported in https://community.plotly.com/t/flask-endpoint-error/5691/7
603+
- Fix a bug from 0.18.0 with the new config variables when used in a multi-app setting, causing config to be shared across apps. Originally reported in <https://community.plotly.com/t/flask-endpoint-error/5691/7>
598604
- Rename config setting `supress_callback_exceptions` to `suppress_callback_exceptions`. The original spelling is kept for backward compatibility.
599-
- 🐞 (renderer) Fix a bug where Dash would fire updates for each parent of a grandchild node that shared the same grandparent. Originally reported in https://community.plotly.com/t/specifying-dependency-tree-traversal/5080/5
605+
- 🐞 (renderer) Fix a bug where Dash would fire updates for each parent of a grandchild node that shared the same grandparent. Originally reported in <https://community.plotly.com/t/specifying-dependency-tree-traversal/5080/5>
600606
- 🐞 (renderer) Fix a bug where the document title that displays "Updating..." wouldn't change if the callback raised an Exception. Now it will be removed on any response, even a failure.
601607

602608
## 0.18.2 - 2017-09-07
@@ -609,22 +615,21 @@ app = dash.Dash(...)
609615

610616
## 0.18.0 - 2017-09-07
611617
### Changed
612-
- 🔒 Remove the `/static/` folder and endpoint that is implicitly initialized by flask. This is too implicit for my comfort level: I worry that users will not be aware that their files in their `static` folder are accessible
613-
- ⚡️ Remove all API calls to the Plotly API (https://api.plotly.com/), the authentication endpoints and decorators, and the associated `filename`, `sharing` and `app_url` arguments. This was never documented or officially supported. Authentication has been moved to the [`dash-auth` package](https://github.com/plotly/dash-auth).
618+
- 🔒 Remove the `/static/` folder and endpoint that is implicitly initialized by flask. This is too implicit for my comfort level: I worry that users will not be aware that their files in their `static` folder are accessible
619+
- ⚡️ Remove all API calls to the Plotly API (<https://api.plotly.com/>), the authentication endpoints and decorators, and the associated `filename`, `sharing` and `app_url` arguments. This was never documented or officially supported. Authentication has been moved to the [`dash-auth` package](https://github.com/plotly/dash-auth).
614620
- [#107](https://github.com/plotly/dash/pull/107) ✏️ Sort prop names in exception messages.
615621

616622
### Added
617623
- 🔧 Add two new `config` variables: `routes_pathname_prefix` and `requests_pathname_prefix` to provide more flexibility for API routing when Dash apps are run behind proxy servers. `routes_pathname_prefix` is a prefix applied to the backend routes and `requests_pathname_prefix` prefixed in requests made by Dash's front-end. `dash-renderer==0.8.0rc3` uses these endpoints.
618624
- [#112](https://github.com/plotly/dash/pull/112) 🔧 Add `id` to `KeyError` exceptions in components.
619625

620-
621626
### Fixed
622-
- ✏️ Fix a typo in an exception.
627+
- ✏️ Fix a typo in an exception.
623628
- 🔧 Replaced all illegal characters in environment variables.
624629

625630
### 🔧 Maintenance
626-
- 📝 Update README.md
627-
- Fix CircleCI tests. Note that the [`dash-renderer`](https://github.com/plotly/dash-renderer) contains the bulk of the integration tests.
631+
- 📝 Update README.md
632+
- ✅ Fix CircleCI tests. Note that the [`dash-renderer`](https://github.com/plotly/dash-renderer) contains the bulk of the integration tests.
628633
- 💄 Flake8 fixes and tests (fixes [#99](https://github.com/plotly/dash/issues/99))
629634
- ✨ Add this CHANGELOG.md.
630635

CODE_OF_CONDUCT.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ Project maintainers who do not follow or enforce the Code of Conduct in good fai
4040

4141
## Attribution
4242

43-
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, available at [http://contributor-covenant.org/version/1/4][version]
43+
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, available at [https://contributor-covenant.org/version/1/4][version]
4444

45-
[homepage]: http://contributor-covenant.org
46-
[version]: http://contributor-covenant.org/version/1/4/
45+
[homepage]: https://contributor-covenant.org
46+
[version]: https://contributor-covenant.org/version/1/4/

CONTRIBUTING.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -45,13 +45,13 @@ As of Dash 1.2, the renderer bundle and its peer dependencies can be packed and
4545
5. `renderer build` runs 1, 2, 3, 4 in sequence as a complete build process from scratch.
4646
6. `renderer build local` runs the same order as in 5 and also generates source maps for debugging purposes. You also need to install dash-renderer with editable mode: `pip install -e .`.
4747

48-
When a change in renderer code doesn't reflect in your browser as expected, this could be: confused bundle generation, caching issue in a browser, python package not in `editable` mode, etc. The new tool reduces the risk of bundle assets by adding the digest to help compare asset changes.
48+
When a change in renderer code doesn't reflect in your browser as expected, this could be: confused bundle generation, caching issue in a browser, Python package not in `editable` mode, etc. The new tool reduces the risk of bundle assets by adding the digest to help compare asset changes.
4949

5050
## Python 2 And 3 Compatibility
5151

5252
Writing Python 2/3 compatible code might be a challenging task for contributors used to working on one particular version, especially new learners who start directly with Python 3.
5353

54-
We use `python-future` as our tool to mainly write Python 3 code and make it back-compatible to Python 2.7 (the only Python 2 version Dash supports). Please refer to [this list of idioms](https://python-future.org/compatible_idioms.html "https://python-future.org/compatible_idioms.html") for more details on working with `python-future`.
54+
We use `python-future` as our tool to mainly write Python 3 code and make it back-compatible to Python 2.7 (the only Python 2 version Dash supports). Please refer to [this list of idioms](https://python-future.org/compatible_idioms.html "https://python-future.org/compatible_idioms.html") for more details on working with `python-future`.
5555

5656
## Git
5757

@@ -70,8 +70,8 @@ For pull request with notable file changes or a big feature development, we high
7070

7171
Git command veterans might argue that a simple terminal and a cherry switch keyboard is the most elegant solution. But in general, a desktop tool makes the task easier.
7272

73-
1. https://www.gitkraken.com/git-client
74-
2. https://desktop.github.com/
73+
1. <https://www.gitkraken.com/git-client>
74+
2. <https://desktop.github.com/>
7575

7676
### Emoji
7777

@@ -103,7 +103,7 @@ We use `flake8`, `pylint`, and [`black`](https://black.readthedocs.io/en/stable/
103103

104104
## Tests
105105

106-
Our tests use Google Chrome via Selenium. You will need to install [ChromeDriver](http://chromedriver.chromium.org/getting-started) matching the version of Chrome installed on your system. Here are some helpful tips for [Mac](https://www.kenst.com/2015/03/installing-chromedriver-on-mac-osx/) and [Windows](http://jonathansoma.com/lede/foundations-2018/classes/selenium/selenium-windows-install/).
106+
Our tests use Google Chrome via Selenium. You will need to install [ChromeDriver](https://chromedriver.chromium.org/getting-started) matching the version of Chrome installed on your system. Here are some helpful tips for [Mac](https://www.kenst.com/2015/03/installing-chromedriver-on-mac-osx/) and [Windows](http://jonathansoma.com/lede/foundations-2018/classes/selenium/selenium-windows-install/).
107107

108108
We use [pytest](https://docs.pytest.org/en/latest/) as our test automation framework, plus [jest](https://jestjs.io/) for a few renderer unit tests. You can `npm run test` to run them all, but this command simply runs `pytest` with no arguments, then `cd dash-renderer && npm run test` for the renderer unit tests.
109109

@@ -117,7 +117,7 @@ Note: *You might find out that we have more integration tests than unit tests in
117117

118118
### Integration Tests
119119

120-
We introduced the `dash.testing` feature in [Dash 1.0](https://community.plotly.com/t/announcing-dash-testing/24868). It makes writing a Dash integration test much easier. Please read the [tutorial](http://dash.plotly.com/testing) and add relevant integration tests with any new features or bug fixes.
120+
We introduced the `dash.testing` feature in [Dash 1.0](https://community.plotly.com/t/announcing-dash-testing/24868). It makes writing a Dash integration test much easier. Please read the [tutorial](https://dash.plotly.com/testing) and add relevant integration tests with any new features or bug fixes.
121121

122122
## Financial Contributions
123123

0 commit comments

Comments
 (0)