Skip to content

Commit 0e84b4a

Browse files
authored
Merge branch 'main' into codeflash/optimize-validate_gantt-mhcxyu68
2 parents ef98a70 + 043ff90 commit 0e84b4a

File tree

127 files changed

+16532
-9055
lines changed

Some content is hidden

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

127 files changed

+16532
-9055
lines changed

CHANGELOG.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,25 @@ This project adheres to [Semantic Versioning](http://semver.org/).
44

55
## Unreleased
66

7+
## [6.5.0] - 2025-11-17
8+
9+
### Updated
10+
- Update plotly.js from version 3.2.0 to version 3.3.0. See the plotly.js [release notes](https://github.com/plotly/plotly.js/releases/tag/v3.3.0) for more information. [[#5421](https://github.com/plotly/plotly.py/pull/5421)]. Notable changes include:
11+
- Add `hovertemplate` for `candlestick` and `ohlc` traces [[#7619](https://github.com/plotly/plotly.js/pull/7619)]
12+
13+
### Fixed
14+
- Fix bug where numpy datetime contained in Python list was converted to integer [[#5415](https://github.com/plotly/plotly.py/pull/5415)]
15+
16+
## [6.4.0] - 2025-11-02
17+
18+
### Updated
19+
- Update plotly.js from version 3.1.1 to version 3.2.0. See the plotly.js [release notes](https://github.com/plotly/plotly.js/releases) for more information. [[#5357](https://github.com/plotly/plotly.py/pull/5388)]. Notable changes include:
20+
- Add `hovertemplatefallback` and `texttemplatefallback` attributes [[#7577](https://github.com/plotly/plotly.js/pull/7577)]
21+
- Add "SI extended" formatting rule for tick exponents on axis labels, allowing values to be displayed with extended SI prefixes (e.g., femto, pico, atto) [[#7249](https://github.com/plotly/plotly.js/pull/7249)]
22+
23+
### Deprecated
24+
- Deprecate `create_hexbin_mapbox` in favor of `create_hexbin_map`, update related function calls [[5358](https://github.com/plotly/plotly.py/pull/5358)], with thanks to @ajlien for the contribution!
25+
726
## [6.3.1] - 2025-10-02
827

928
### Updated

CITATION.cff

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,7 @@ authors:
99
- family-names: "Parmer"
1010
given-names: "Chris"
1111
title: "An interactive, open-source, and browser-based graphing library for Python"
12-
version: 6.3.1
12+
version: 6.5.0
1313
doi: 10.5281/zenodo.14503524
14-
date-released: 2025-10-02
14+
date-released: 2025-11-17
1515
url: "https://github.com/plotly/plotly.py"
16-

_plotly_utils/basevalidators.py

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,20 @@ def fullmatch(regex, string, flags=0):
2222
return re.match("(?:" + regex_string + r")\Z", string, flags=flags)
2323

2424

25+
def to_non_numpy_type(np, v):
26+
"""
27+
Convert a numpy scalar value to a native Python type.
28+
Calling .item() on a datetime64[ns] value returns an integer, since
29+
Python datetimes only support microsecond precision. So we cast
30+
datetime64[ns] to datetime64[us] to ensure it remains a datetime.
31+
32+
Should only be used in contexts where we already know `np` is defined.
33+
"""
34+
if hasattr(v, "dtype") and v.dtype == np.dtype("datetime64[ns]"):
35+
return v.astype("datetime64[us]").item()
36+
return v.item()
37+
38+
2539
# Utility functions
2640
# -----------------
2741
def to_scalar_or_list(v):
@@ -35,12 +49,12 @@ def to_scalar_or_list(v):
3549
np = get_module("numpy", should_load=False)
3650
pd = get_module("pandas", should_load=False)
3751
if np and np.isscalar(v) and hasattr(v, "item"):
38-
return v.item()
52+
return to_non_numpy_type(np, v)
3953
if isinstance(v, (list, tuple)):
4054
return [to_scalar_or_list(e) for e in v]
4155
elif np and isinstance(v, np.ndarray):
4256
if v.ndim == 0:
43-
return v.item()
57+
return to_non_numpy_type(np, v)
4458
return [to_scalar_or_list(e) for e in v]
4559
elif pd and isinstance(v, (pd.Series, pd.Index)):
4660
return [to_scalar_or_list(e) for e in v]

codegen/resources/plot-schema.json

Lines changed: 688 additions & 180 deletions
Large diffs are not rendered by default.

doc/apidoc/conf.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
# The short X.Y version
2525
version = ""
2626
# The full version, including alpha/beta/rc tags
27-
release = "6.3.0"
27+
release = "6.5.0"
2828

2929

3030
# -- General configuration ---------------------------------------------------

doc/requirements.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
plotly==6.3.0
1+
plotly==6.5.0
22
anywidget
33
cufflinks==0.17.3
44
dash-bio

js/lib/mimeExtension.js

Lines changed: 810 additions & 810 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)