Skip to content

Commit 4cdab8f

Browse files
committed
Merge remote-tracking branch 'origin/master' into unifiedhovertemplate
2 parents 4890881 + bf6909b commit 4cdab8f

File tree

199 files changed

+41319
-3723
lines changed

Some content is hidden

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

199 files changed

+41319
-3723
lines changed

.circleci/config.yml

Lines changed: 35 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -217,11 +217,12 @@ jobs:
217217
make-baselines-virtual-webgl:
218218
parallelism: 8
219219
docker:
220-
- image: circleci/python:3.8.9
220+
- image: cimg/python:3.12.11
221221
working_directory: ~/plotly.js
222222
steps:
223223
- attach_workspace:
224224
at: ~/
225+
- run: sudo apt-get update
225226
- run:
226227
name: Install kaleido, plotly.io and required fonts
227228
command: .circleci/env_image.sh
@@ -235,11 +236,12 @@ jobs:
235236

236237
make-baselines-mathjax3:
237238
docker:
238-
- image: circleci/python:3.8.9
239+
- image: cimg/python:3.12.11
239240
working_directory: ~/plotly.js
240241
steps:
241242
- attach_workspace:
242243
at: ~/
244+
- run: sudo apt-get update
243245
- run:
244246
name: Install kaleido, plotly.io and required fonts
245247
command: .circleci/env_image.sh
@@ -254,11 +256,12 @@ jobs:
254256
make-baselines:
255257
parallelism: 12
256258
docker:
257-
- image: circleci/python:3.8.9
259+
- image: cimg/python:3.12.11
258260
working_directory: ~/plotly.js
259261
steps:
260262
- attach_workspace:
261263
at: ~/
264+
- run: sudo apt-get update
262265
- run:
263266
name: Install kaleido, plotly.io and required fonts
264267
command: .circleci/env_image.sh
@@ -273,11 +276,12 @@ jobs:
273276
make-baselines-b64:
274277
parallelism: 12
275278
docker:
276-
- image: circleci/python:3.8.9
279+
- image: cimg/python:3.12.11
277280
working_directory: ~/plotly.js
278281
steps:
279282
- attach_workspace:
280283
at: ~/
284+
- run: sudo apt-get update
281285
- run:
282286
name: Install kaleido, plotly.io and required fonts
283287
command: .circleci/env_image.sh
@@ -347,11 +351,12 @@ jobs:
347351

348352
make-exports:
349353
docker:
350-
- image: circleci/python:3.8.9
354+
- image: cimg/python:3.12.11
351355
working_directory: ~/plotly.js
352356
steps:
353357
- attach_workspace:
354358
at: ~/
359+
- run: sudo apt-get update
355360
- run:
356361
name: Install kaleido, plotly.io and required fonts
357362
command: .circleci/env_image.sh
@@ -362,7 +367,7 @@ jobs:
362367
sudo apt-get install poppler-utils
363368
- run:
364369
name: Create svg, jpg, jpeg, webp, pdf and eps files
365-
command: python3 test/image/make_exports.py
370+
command: sudo python3 test/image/make_exports.py
366371
- persist_to_workspace:
367372
root: ~/
368373
paths:
@@ -483,12 +488,33 @@ jobs:
483488
name: Bundle bundle-stackgl/index.js
484489
command: cd stackgl_modules && cp index.js INDEX.js && npm run bundle-stackgl
485490
- run:
486-
name: Test stackgl_modules/index.js diff - If failed please remember this file in auto generated and you should not modify it directly until a dependeny change. To suggest changes please submit pull request to the relevant dependency.
491+
name: Test stackgl_modules/index.js diff - If failed please remember this file in auto generated and you should not modify it directly until a dependency change. To suggest changes please submit pull request to the relevant dependency.
487492
command: diff --unified --color stackgl_modules/INDEX.js stackgl_modules/index.js
488493
- store_artifacts:
489494
path: stackgl_modules/index.js
490495
destination: stackgl_modules/index.js
491496

497+
test-topojson-build:
498+
docker:
499+
- image: cimg/node:18.20.4
500+
working_directory: ~/plotly.js
501+
steps:
502+
- checkout
503+
- run:
504+
name: Set up build environment
505+
command: cd topojson && npm ci
506+
- run:
507+
name: Build topojson
508+
command: cd topojson && mv dist dist_backup && npm run build
509+
- run:
510+
name: Compare existing files with newly built files. Any difference is a failure. A failure might mean that the source data changed.
511+
command: diff -qr topojson/dist topojson/dist_backup
512+
- run:
513+
name: Compress artifacts
514+
command: tar -cvzf topojson.tar topojson/dist
515+
- store_artifacts:
516+
path: topojson.tar
517+
492518
workflows:
493519
version: 2
494520
build-and-test:
@@ -560,3 +586,5 @@ workflows:
560586
- publish-dist-node-v22
561587

562588
- test-stackgl-bundle
589+
590+
- test-topojson-build

.circleci/env_image.sh

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,20 @@
22
set -e
33
# install required fonts
44
sudo apt-get install fonts-liberation2 fonts-open-sans fonts-noto-cjk fonts-noto-color-emoji
5+
6+
# install pip
7+
sudo curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
8+
sudo python3 get-pip.py
9+
10+
# install additional fonts
11+
sudo python3 -m pip install requests
512
sudo python3 .circleci/download_google_fonts.py
613
sudo cp -r .circleci/fonts/ /usr/share/
14+
sudo apt install fontconfig
715
sudo fc-cache -f
16+
817
# install kaleido & plotly
9-
sudo python3 -m pip install kaleido==0.2.1 plotly==5.5.0 --progress-bar off
18+
sudo python3 -m pip install kaleido==0.2.1 plotly==6.2.0 --progress-bar off
19+
1020
# install numpy i.e. to convert arrays to typed arrays
1121
sudo python3 -m pip install numpy==1.24.2

.circleci/test.sh

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -97,24 +97,24 @@ case $1 in
9797
find $ROOT/test/image/mocks/gl* -type f -printf "%f\n"; \
9898
find $ROOT/test/image/mocks/map* -type f -printf "%f\n"; \
9999
} | sed 's/\.json$//1' | circleci tests split)
100-
python3 test/image/make_baseline.py virtual-webgl $SUITE || EXIT_STATE=$?
100+
sudo python3 test/image/make_baseline.py virtual-webgl $SUITE || EXIT_STATE=$?
101101
exit $EXIT_STATE
102102
;;
103103

104104
make-baselines-mathjax3)
105-
python3 test/image/make_baseline.py mathjax3 legend_mathjax_title_and_items mathjax parcats_grid_subplots table_latex_multitrace_scatter table_plain_birds table_wrapped_birds ternary-mathjax ternary-mathjax-title-place-subtitle || EXIT_STATE=$?
105+
sudo python3 test/image/make_baseline.py mathjax3 legend_mathjax_title_and_items mathjax parcats_grid_subplots table_latex_multitrace_scatter table_plain_birds table_wrapped_birds ternary-mathjax ternary-mathjax-title-place-subtitle || EXIT_STATE=$?
106106
exit $EXIT_STATE
107107
;;
108108

109109
make-baselines-b64)
110110
SUITE=$(find $ROOT/test/image/mocks/ -type f -printf "%f\n" | sed 's/\.json$//1' | circleci tests split)
111-
python3 test/image/make_baseline.py b64 $SUITE || EXIT_STATE=$?
111+
sudo python3 test/image/make_baseline.py b64 $SUITE || EXIT_STATE=$?
112112
exit $EXIT_STATE
113113
;;
114114

115115
make-baselines)
116116
SUITE=$(find $ROOT/test/image/mocks/ -type f -printf "%f\n" | sed 's/\.json$//1' | circleci tests split)
117-
python3 test/image/make_baseline.py $SUITE || EXIT_STATE=$?
117+
sudo python3 test/image/make_baseline.py $SUITE || EXIT_STATE=$?
118118
exit $EXIT_STATE
119119
;;
120120

CHANGELOG.md

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,26 @@ To see all merged commits on the master branch that will be part of the next plo
99

1010
where X.Y.Z is the semver of most recent plotly.js release.
1111

12+
## [3.1.0-rc.0] -- 2025-07-15
13+
14+
### Added
15+
- Add property `zerolinelayer` to cartesian axes to allow drawing zeroline above traces [[#7269](https://github.com/plotly/plotly.js/pull/7269)]
16+
- Add `pattern.path` attribute as an alternative to the preset `pattern.shape` values, so you can use any SVG path string as a pattern fill. [[#7280](https://github.com/plotly/plotly.js/pull/7280)]
17+
- Allow configuration of horizontal legend max height [[#7359](https://github.com/plotly/plotly.js/pull/7359)]
18+
- Add support for ticklabelposition "inside"/"outside" for category axes with `tickson` set to "boundaries" [[#7420](https://github.com/plotly/plotly.js/pull/7420)],
19+
with thanks to @my-tien for the contribution!
20+
21+
### Changed
22+
- Switch to United Nations (coastlines, countries, land, ocean) + Natural Earth (lakes, rivers, subunits) geodata for building topojson used in geo plot
23+
- Make 'png' all caps [[#7400](https://github.com/plotly/plotly.js/pull/7400)]
24+
25+
### Fixed
26+
- Fix installing dependencies in node v22 [[#7381](https://github.com/plotly/plotly.js/pull/7381)], with thanks to @chaigh-uk for the contribution!
27+
- Fix performance warning in scattergl traces, [[#7390](https://github.com/plotly/plotly.js/pull/7390)], with thanks to @MzyzzG for the contribution!
28+
- Move css-loader and other dependencies into devDependencies section [[#7407](https://github.com/plotly/plotly.js/pull/7407)]
29+
- Fix Persian calendar leap year [[#7456](https://github.com/plotly/plotly.js/pull/7456)]
30+
31+
1232
## [3.0.1] -- 2025-02-18
1333

1434
### Changed

CITATION.cff

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ authors:
99
- family-names: "Samimi"
1010
given-names: "Mojtaba"
1111
title: "Open source Plotly charting library"
12-
version: 3.0.1
12+
version: 3.1.0-rc.0
1313
doi: 10.5281/zenodo.13964707
14-
date-released: 2025-01-27
14+
date-released: 2025-07-15
1515
url: "https://github.com/plotly/plotly.js"

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ You may also consider using [`plotly.js-dist`](https://www.npmjs.com/package/plo
6262
6363
```html
6464
<head>
65-
<script src="https://cdn.plot.ly/plotly-3.0.1.min.js" charset="utf-8"></script>
65+
<script src="https://cdn.plot.ly/plotly-3.1.0-rc.0.min.js" charset="utf-8"></script>
6666
</head>
6767
<body>
6868
<div id="gd"></div>
@@ -79,7 +79,7 @@ You may also consider using [`plotly.js-dist`](https://www.npmjs.com/package/plo
7979
Alternatively you may consider using [native ES6 import](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Modules) in the script tag.
8080
```html
8181
<script type="module">
82-
import "https://cdn.plot.ly/plotly-3.0.1.min.js"
82+
import "https://cdn.plot.ly/plotly-3.1.0-rc.0.min.js"
8383
Plotly.newPlot("gd", [{ y: [1, 2, 3] }])
8484
</script>
8585
```
@@ -89,7 +89,7 @@ Fastly supports Plotly.js with free CDN service. Read more at <https://www.fastl
8989
### Un-minified versions are also available on CDN
9090
While non-minified source files may contain characters outside UTF-8, it is recommended that you specify the `charset` when loading those bundles.
9191
```html
92-
<script src="https://cdn.plot.ly/plotly-3.0.1.js" charset="utf-8"></script>
92+
<script src="https://cdn.plot.ly/plotly-3.1.0-rc.0.js" charset="utf-8"></script>
9393
```
9494

9595
> Please note that as of v2 the "plotly-latest" outputs (e.g. https://cdn.plot.ly/plotly-latest.min.js) will no longer be updated on the CDN, and will stay at the last v1 patch v1.58.5. Therefore, to use the CDN with plotly.js v2 and higher, you must specify an exact plotly.js version.

devtools/test_dashboard/devtools.js

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,7 @@ var Tabs = {
1717
Plotly.setPlotConfig({
1818

1919
// use local topojson files
20-
topojsonURL: '../../node_modules/sane-topojson/dist/',
21-
20+
topojsonURL: "../../topojson/dist",
2221
// register mapbox access token
2322
// run `npm run preset` if you haven't yet
2423
mapboxAccessToken: credentials.MAPBOX_ACCESS_TOKEN,
@@ -268,4 +267,3 @@ function handleOnLoad() {
268267
Tabs.setPlotConfig();
269268
plotFromHash();
270269
}
271-

dist/README.md

Lines changed: 27 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -43,12 +43,12 @@ The main plotly.js bundles weight in at:
4343

4444
| plotly.js | plotly.min.js | plotly.min.js + gzip | plotly-with-meta.js |
4545
|-----------|---------------|----------------------|---------------------|
46-
| 10.3 MB | 4.4 MB | 1.4 MB | 10.6 MB |
46+
| 10.6 MB | 4.5 MB | 1.4 MB | 10.9 MB |
4747

4848
#### CDN links
49-
> https://cdn.plot.ly/plotly-3.0.1.js
49+
> https://cdn.plot.ly/plotly-3.1.0-rc.0.js
5050
51-
> https://cdn.plot.ly/plotly-3.0.1.min.js
51+
> https://cdn.plot.ly/plotly-3.1.0-rc.0.min.js
5252
5353

5454
#### npm packages
@@ -91,12 +91,12 @@ The `basic` partial bundle contains trace modules `bar`, `pie` and `scatter`.
9191

9292
| Raw size | Minified size | Minified + gzip size |
9393
|------|-----------------|------------------------|
94-
| 2.6 MB | 1008.3 kB | 349.2 kB |
94+
| 2.6 MB | 1009 kB | 349.4 kB |
9595

9696
#### CDN links
97-
> https://cdn.plot.ly/plotly-basic-3.0.1.js
97+
> https://cdn.plot.ly/plotly-basic-3.1.0-rc.0.js
9898
99-
> https://cdn.plot.ly/plotly-basic-3.0.1.min.js
99+
> https://cdn.plot.ly/plotly-basic-3.1.0-rc.0.min.js
100100
101101

102102
#### npm packages
@@ -114,12 +114,12 @@ The `cartesian` partial bundle contains trace modules `bar`, `box`, `contour`, `
114114

115115
| Raw size | Minified size | Minified + gzip size |
116116
|------|-----------------|------------------------|
117-
| 3.3 MB | 1.3 MB | 446.4 kB |
117+
| 3.3 MB | 1.3 MB | 447.3 kB |
118118

119119
#### CDN links
120-
> https://cdn.plot.ly/plotly-cartesian-3.0.1.js
120+
> https://cdn.plot.ly/plotly-cartesian-3.1.0-rc.0.js
121121
122-
> https://cdn.plot.ly/plotly-cartesian-3.0.1.min.js
122+
> https://cdn.plot.ly/plotly-cartesian-3.1.0-rc.0.min.js
123123
124124

125125
#### npm packages
@@ -137,12 +137,12 @@ The `geo` partial bundle contains trace modules `choropleth`, `scatter` and `sca
137137

138138
| Raw size | Minified size | Minified + gzip size |
139139
|------|-----------------|------------------------|
140-
| 2.9 MB | 1.1 MB | 398.7 kB |
140+
| 2.9 MB | 1.1 MB | 398.9 kB |
141141

142142
#### CDN links
143-
> https://cdn.plot.ly/plotly-geo-3.0.1.js
143+
> https://cdn.plot.ly/plotly-geo-3.1.0-rc.0.js
144144
145-
> https://cdn.plot.ly/plotly-geo-3.0.1.min.js
145+
> https://cdn.plot.ly/plotly-geo-3.1.0-rc.0.min.js
146146
147147

148148
#### npm packages
@@ -160,12 +160,12 @@ The `gl3d` partial bundle contains trace modules `cone`, `isosurface`, `mesh3d`,
160160

161161
| Raw size | Minified size | Minified + gzip size |
162162
|------|-----------------|------------------------|
163-
| 4.1 MB | 1.5 MB | 513.5 kB |
163+
| 4.1 MB | 1.5 MB | 513.8 kB |
164164

165165
#### CDN links
166-
> https://cdn.plot.ly/plotly-gl3d-3.0.1.js
166+
> https://cdn.plot.ly/plotly-gl3d-3.1.0-rc.0.js
167167
168-
> https://cdn.plot.ly/plotly-gl3d-3.0.1.min.js
168+
> https://cdn.plot.ly/plotly-gl3d-3.1.0-rc.0.min.js
169169
170170

171171
#### npm packages
@@ -183,12 +183,12 @@ The `gl2d` partial bundle contains trace modules `parcoords`, `scatter`, `scatte
183183

184184
| Raw size | Minified size | Minified + gzip size |
185185
|------|-----------------|------------------------|
186-
| 3.4 MB | 1.3 MB | 470.3 kB |
186+
| 3.7 MB | 1.4 MB | 506 kB |
187187

188188
#### CDN links
189-
> https://cdn.plot.ly/plotly-gl2d-3.0.1.js
189+
> https://cdn.plot.ly/plotly-gl2d-3.1.0-rc.0.js
190190
191-
> https://cdn.plot.ly/plotly-gl2d-3.0.1.min.js
191+
> https://cdn.plot.ly/plotly-gl2d-3.1.0-rc.0.min.js
192192
193193

194194
#### npm packages
@@ -206,12 +206,12 @@ The `mapbox` partial bundle contains trace modules `choroplethmapbox`, `densitym
206206

207207
| Raw size | Minified size | Minified + gzip size |
208208
|------|-----------------|------------------------|
209-
| 4.4 MB | 1.8 MB | 564.4 kB |
209+
| 4.4 MB | 1.8 MB | 564.6 kB |
210210

211211
#### CDN links
212-
> https://cdn.plot.ly/plotly-mapbox-3.0.1.js
212+
> https://cdn.plot.ly/plotly-mapbox-3.1.0-rc.0.js
213213
214-
> https://cdn.plot.ly/plotly-mapbox-3.0.1.min.js
214+
> https://cdn.plot.ly/plotly-mapbox-3.1.0-rc.0.min.js
215215
216216

217217
#### npm packages
@@ -229,12 +229,12 @@ The `finance` partial bundle contains trace modules `bar`, `candlestick`, `funne
229229

230230
| Raw size | Minified size | Minified + gzip size |
231231
|------|-----------------|------------------------|
232-
| 2.8 MB | 1.1 MB | 382.9 kB |
232+
| 2.8 MB | 1.1 MB | 383.1 kB |
233233

234234
#### CDN links
235-
> https://cdn.plot.ly/plotly-finance-3.0.1.js
235+
> https://cdn.plot.ly/plotly-finance-3.1.0-rc.0.js
236236
237-
> https://cdn.plot.ly/plotly-finance-3.0.1.min.js
237+
> https://cdn.plot.ly/plotly-finance-3.1.0-rc.0.min.js
238238
239239

240240
#### npm packages
@@ -252,12 +252,12 @@ The `strict` partial bundle contains trace modules `bar`, `barpolar`, `box`, `ca
252252

253253
| Raw size | Minified size | Minified + gzip size |
254254
|------|-----------------|------------------------|
255-
| 11.1 MB | 4.8 MB | 1.5 MB |
255+
| 11.4 MB | 4.9 MB | 1.5 MB |
256256

257257
#### CDN links
258-
> https://cdn.plot.ly/plotly-strict-3.0.1.js
258+
> https://cdn.plot.ly/plotly-strict-3.1.0-rc.0.js
259259
260-
> https://cdn.plot.ly/plotly-strict-3.0.1.min.js
260+
> https://cdn.plot.ly/plotly-strict-3.1.0-rc.0.min.js
261261
262262

263263
#### npm packages

0 commit comments

Comments
 (0)