Skip to content
This repository was archived by the owner on Jun 3, 2024. It is now read-only.

Commit 5c20c14

Browse files
authored
Merge pull request #939 from plotly/update-toolchain-20210322
Update toolchain
2 parents 72875fc + 98d617e commit 5c20c14

File tree

96 files changed

+21719
-17638
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

96 files changed

+21719
-17638
lines changed

Diff for: .Rbuildignore

-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ lib/
1212
.prettierrc
1313
.circleci
1414
.github
15-
.build_cache
1615

1716
# demo folder has special meaning in R
1817
# this should hopefully make it still

Diff for: .builderrc

-3
This file was deleted.

Diff for: .circleci/config.yml

+21-92
Original file line numberDiff line numberDiff line change
@@ -9,15 +9,15 @@ jobs:
99
steps:
1010
- run: percy finalize --all
1111

12-
lint-unit-37: &lint-unit
12+
lint-unit-39: &lint-unit
1313
working_directory: ~/project
1414
docker:
15-
- image: circleci/python:3.7.9-stretch-node-browsers
15+
- image: circleci/python:3.9.2-buster-node-browsers
1616
auth:
1717
username: dashautomation
1818
password: $DASH_PAT_DOCKERHUB
1919
environment:
20-
PYTHON_VERSION: py37
20+
PYTHON_VERSION: py39
2121
steps:
2222
- checkout
2323
- run: echo $PYTHON_VERSION > ver.txt
@@ -28,7 +28,7 @@ jobs:
2828
command: |
2929
sudo pip install virtualenv --upgrade
3030
python -m venv venv || virtualenv venv && . venv/bin/activate
31-
pip install --progress-bar off -e git+https://github.com/plotly/dash.git@dev#egg=dash[dev,testing]
31+
pip install --progress-bar off -e git+https://github.com/plotly/dash.git@deps-update-20210628#egg=dash[dev,testing]
3232
pip install --progress-bar off --no-cache-dir -r dev-requirements.txt
3333
- save_cache:
3434
key: dep-{{ checksum ".circleci/config.yml" }}-{{ checksum "ver.txt" }}-{{ checksum "dev-requirements.txt" }}
@@ -41,16 +41,11 @@ jobs:
4141
set -eo pipefail
4242
npm ci
4343
npm run lint
44-
- run:
45-
name: 🔎 Unit Tests
46-
command: |
47-
set -eo pipefail
48-
npm run test-unit
4944
5045
lint-unit-36:
5146
<<: *lint-unit
5247
docker:
53-
- image: circleci/python:3.6.12-stretch-node-browsers
48+
- image: circleci/python:3.6.13-stretch-node-browsers
5449
auth:
5550
username: dashautomation
5651
password: $DASH_PAT_DOCKERHUB
@@ -67,15 +62,15 @@ jobs:
6762
environment:
6863
PYTHON_VERSION: py27
6964

70-
build-dash-37: &build-dash
65+
build-dash-39: &build-dash
7166
working_directory: ~/project
7267
docker:
73-
- image: circleci/python:3.7.9-stretch-node-browsers
68+
- image: circleci/python:3.9.2-buster-node-browsers
7469
auth:
7570
username: dashautomation
7671
password: $DASH_PAT_DOCKERHUB
7772
environment:
78-
PYTHON_VERSION: py37
73+
PYTHON_VERSION: py39
7974
steps:
8075
- checkout
8176
- run: echo $PYTHON_VERSION > ver.txt
@@ -115,7 +110,7 @@ jobs:
115110
build-dash-36:
116111
<<: *build-dash
117112
docker:
118-
- image: circleci/python:3.6.12-stretch-node-browsers
113+
- image: circleci/python:3.6.13-stretch-node-browsers
119114
auth:
120115
username: dashautomation
121116
password: $DASH_PAT_DOCKERHUB
@@ -132,16 +127,17 @@ jobs:
132127
environment:
133128
PYTHON_VERSION: py27
134129

135-
test-37: &test
130+
test-39: &test
136131
working_directory: ~/project
137132
docker:
138-
- image: circleci/python:3.7.9-stretch-node-browsers
133+
- image: circleci/python:3.9.2-buster-node-browsers
139134
auth:
140135
username: dashautomation
141136
password: $DASH_PAT_DOCKERHUB
142137
environment:
143-
PYTHON_VERSION: py37
138+
PYTHON_VERSION: py39
144139
PERCY_PARALLEL_TOTAL: -1
140+
PERCY_ENABLE: 1
145141
parallelism: 3
146142
steps:
147143
- checkout
@@ -159,6 +155,7 @@ jobs:
159155
find . -name "dash_*.gz" | xargs pip install -I --progress-bar off --no-cache-dir
160156
pip install --no-cache-dir --progress-bar off main.tar.gz[dev,testing]
161157
pip list | grep dash | xargs pip show && cd ..
158+
echo $(python -V 2>&1) | grep 3. && python -m unittest tests/test_dash_import.py
162159
TESTFILES=$(circleci tests glob "tests/integration/**/test_*.py" | circleci tests split --split-by=timings)
163160
pytest --headless --nopercyfinalize --junitxml=test-reports/junit_intg.xml ${TESTFILES}
164161
- store_artifacts:
@@ -171,7 +168,7 @@ jobs:
171168
test-36:
172169
<<: *test
173170
docker:
174-
- image: circleci/python:3.6.12-stretch-node-browsers
171+
- image: circleci/python:3.6.13-stretch-node-browsers
175172
auth:
176173
username: dashautomation
177174
password: $DASH_PAT_DOCKERHUB
@@ -190,80 +187,18 @@ jobs:
190187
PYTHON_VERSION: py27
191188
PERCY_ENABLE: 0
192189

193-
test-legacy-37: &test-legacy
194-
working_directory: ~/project
195-
docker:
196-
- image: circleci/python:3.7.9-stretch-node-browsers
197-
auth:
198-
username: dashautomation
199-
password: $DASH_PAT_DOCKERHUB
200-
environment:
201-
PYTHON_VERSION: py37
202-
PERCY_PARALLEL_TOTAL: -1
203-
parallelism: 2
204-
steps:
205-
- checkout
206-
- run: echo $PYTHON_VERSION > ver.txt
207-
- restore_cache:
208-
key: dep-{{ checksum ".circleci/config.yml" }}-{{ checksum "ver.txt" }}-{{ checksum "dev-requirements.txt" }}
209-
- attach_workspace:
210-
at: ~/project
211-
- run:
212-
name: 🧪 Run Legacy Integration Tests
213-
command: |
214-
. venv/bin/activate && rm -rf dash_core_components && ls -la
215-
set -eo pipefail
216-
cd packages && mv dash-*.tar.gz main.tar.gz && ls -la
217-
find . -name "dash_*.gz" | xargs pip install -I --progress-bar off --no-cache-dir
218-
pip install --no-cache-dir --progress-bar off main.tar.gz[dev,testing]
219-
pip list | grep dash | xargs pip show && cd ..
220-
echo $(python -V 2>&1) | grep 3. && python -m unittest tests/test_dash_import.py
221-
TESTFILES=$(circleci tests glob "tests/test_integration_*.py" | circleci tests split --split-by=timings)
222-
pytest --durations=10 --junitxml=test-reports/junit_legacy.xml ${TESTFILES}
223-
- store_artifacts:
224-
path: test-reports
225-
- store_test_results:
226-
path: test-reports
227-
- store_artifacts:
228-
path: /tmp/dash_artifacts
229-
230-
test-legacy-36:
231-
<<: *test-legacy
232-
docker:
233-
- image: circleci/python:3.6.12-stretch-node-browsers
234-
auth:
235-
username: dashautomation
236-
password: $DASH_PAT_DOCKERHUB
237-
environment:
238-
PYTHON_VERSION: py36
239-
PERCY_ENABLE: 0
240-
test-legacy-27:
241-
<<: *test-legacy
242-
docker:
243-
- image: circleci/python:2.7.18-stretch-node-browsers
244-
auth:
245-
username: dashautomation
246-
password: $DASH_PAT_DOCKERHUB
247-
environment:
248-
PYTHON_VERSION: py27
249-
PERCY_ENABLE: 0
250-
251190
workflows:
252191
version: 2
253-
python3.7:
192+
python3.9:
254193
jobs:
255-
- lint-unit-37
256-
- build-dash-37
257-
- test-37:
258-
requires:
259-
- build-dash-37
260-
- test-legacy-37:
194+
- lint-unit-39
195+
- build-dash-39
196+
- test-39:
261197
requires:
262-
- build-dash-37
198+
- build-dash-39
263199
- percy-finalize:
264200
requires:
265-
- test-37
266-
- test-legacy-37
201+
- test-39
267202

268203
python3.6:
269204
jobs:
@@ -272,9 +207,6 @@ workflows:
272207
- test-36:
273208
requires:
274209
- build-dash-36
275-
- test-legacy-36:
276-
requires:
277-
- build-dash-36
278210

279211
python2.7:
280212
jobs:
@@ -283,6 +215,3 @@ workflows:
283215
- test-27:
284216
requires:
285217
- build-dash-27
286-
- test-legacy-27:
287-
requires:
288-
- build-dash-27

Diff for: .eslintrc

+1-4
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,8 @@
2121
"browser": true,
2222
"es6": true,
2323
"jasmine": true,
24-
"jest": true,
2524
"node": true
2625
},
27-
"globals": {
28-
"jest": true
29-
},
3026
"plugins": [
3127
"react",
3228
"import"
@@ -80,6 +76,7 @@
8076
"no-param-reassign": ["off"],
8177
"no-process-env": ["warn"],
8278
"no-proto": ["error"],
79+
"no-prototype-builtins": ["off"],
8380
"no-redeclare": ["error"],
8481
"no-return-assign": ["error"],
8582
"no-script-url": ["error"],

Diff for: .flake8

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
[flake8]
2-
ignore = C901, E203, E266, E501, E731, W503
2+
ignore = C901, E203, E231, E266, E501, E731, W503
33
select = B,C,E,F,W,T4
44
per-file-ignores =
55
tests/*: E722, F811

Diff for: .gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -24,5 +24,6 @@ dash_core_components_base/plotly.min.js
2424
/man
2525
/R
2626
/src/*.jl
27+
/src/jl/
2728
DESCRIPTION
2829
NAMESPACE

Diff for: .husky/pre-commit

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
npm run lint

Diff for: .huskyrc

-5
This file was deleted.

Diff for: .prettierrc

+1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
{
2+
"arrowParens": "avoid",
23
"tabWidth": 4,
34
"singleQuote": true,
45
"bracketSpacing": false,

Diff for: CHANGELOG.md

+22-1
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,29 @@ This project adheres to [Semantic Versioning](http://semver.org/).
1313
It not only fixes the bug where the tooltips were visible when slider was not, but it also reduces the lag in the
1414
tooltip when the slider handles are moved.
1515

16+
### Updated
17+
- [#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.
18+
- [Major release 2.0.0](https://github.com/plotly/plotly.js/releases/tag/v2.0.0):
19+
- 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.
20+
- 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.
21+
- `heatmapgl` and `pointcloud` trace types, and the `transform` attribute are deprecated, and will be removed in a future release.
22+
- 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.
23+
- Remove "Aa" text in legends.
24+
- Default `hovermode` to "closest".
25+
- 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"`.
26+
- Add `bar.marker.pattern`, `image.zsmooth`, and various other features and bugfixes.
27+
- [Feature release 2.1.0](https://github.com/plotly/plotly.js/releases/tag/v2.1.0):
28+
- New `icicle` trace type.
29+
- New `legendrank` trace attribute.
30+
- Several other additions and bug fixes.
31+
- [Feature release 2.2.0](https://github.com/plotly/plotly.js/releases/tag/v2.2.0):
32+
- Legend group titles
33+
- Half-year directive (`%h`) for date formatting
34+
- Several other bug fixes and performance improvements
35+
- [Patch release 2.2.1](https://github.com/plotly/plotly.js/releases/tag/v2.2.1) containing a security fix.
36+
1637
### Added
17-
- [#932](https://github.com/plotly/dash-core-components/pull/932). Adds a new copy to clipboard component.
38+
- [#932](https://github.com/plotly/dash-core-components/pull/932) Adds a new copy to clipboard component.
1839
- [#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`.
1940

2041
### Changed

Diff for: MANIFEST.in

+2-7
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,7 @@
1-
include dash_core_components/dash_core_components.min.js
2-
include dash_core_components/dash_core_components.min.js.map
3-
include dash_core_components/dash_core_components-shared.js
4-
include dash_core_components/dash_core_components-shared.js.map
5-
include dash_core_components/async-*.js
6-
include dash_core_components/async-*.js.map
1+
include dash_core_components/*.js
2+
include dash_core_components/*.js.map
73
include dash_core_components/metadata.json
84
include dash_core_components/package-info.json
9-
include dash_core_components/plotly.min.js
105
include README.md
116
include LICENSE.txt
127
include package.json

Diff for: README.md

+1-16
Original file line numberDiff line numberDiff line change
@@ -29,28 +29,13 @@ $ npm i --ignore-scripts && npm run build
2929
$ pip install -e .
3030
```
3131

32-
### Demo server
33-
34-
You can start up a demo development server to see a demo of the rendered
35-
components:
36-
37-
```sh
38-
$ npm start
39-
```
40-
41-
You have to maintain the list of components in `demo/Demo.react.js`.
42-
4332
### Code quality and tests
4433

4534
### To run integration tests (test_integration.py)
4635
You can run the Selenium integration tests with the
4736
```sh
4837
npm test
4938
```
50-
command, and the Jest unit tests with the
51-
```sh
52-
npm run test-unit
53-
```
5439

5540
### Testing your components in Dash
5641
1. Run the build watcher by running
@@ -88,4 +73,4 @@ See the [dash-component-boilerplate](https://github.com/plotly/dash-component-bo
8873

8974

9075
## Big Thanks
91-
Cross-browser Testing Powered by [![image](https://user-images.githubusercontent.com/1394467/64290307-e4c66600-cf33-11e9-85a1-12c82230a597.png)](https://saucelabs.com)
76+
Cross-browser Testing Powered by [![image](https://user-images.githubusercontent.com/1394467/64290307-e4c66600-cf33-11e9-85a1-12c82230a597.png)](https://saucelabs.com)

Diff for: babel.config.js

-2
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,6 @@ const presets = [
44
];
55

66
const plugins = [
7-
'@babel/plugin-proposal-nullish-coalescing-operator',
8-
'@babel/plugin-proposal-optional-chaining',
97
'@babel/plugin-syntax-dynamic-import'
108
];
119

0 commit comments

Comments
 (0)