Skip to content

Commit 7882708

Browse files
committed
feat: incorporating feedback from @emilykl
- Add caveat to the top of every machine-generated file to warn people not to edit them. - Make name of initial value property setter more readable. - Run black formatting with multiple Python versions.
1 parent c3dbd41 commit 7882708

File tree

13,335 files changed

+52261
-12267
lines changed

Some content is hidden

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

13,335 files changed

+52261
-12267
lines changed

Diff for: codegen/__init__.py

+5-5
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828

2929
# Target Python version for code formatting with Black.
3030
# Must be one of the values listed in pyproject.toml.
31-
BLACK_TARGET_VERSION = "py311"
31+
BLACK_TARGET_VERSIONS = "py38 py39 py310 py311 py312"
3232

3333

3434
# Import notes
@@ -330,10 +330,10 @@ def __getattr__(import_name):
330330

331331
# ### Run black code formatter on output directories ###
332332
if reformat:
333-
target_version = f"--target-version={BLACK_TARGET_VERSION}"
334-
subprocess.call(["black", target_version, validators_pkgdir])
335-
subprocess.call(["black", target_version, graph_objs_pkgdir])
336-
subprocess.call(["black", target_version, graph_objects_path])
333+
target_version = [f"--target-version={v}" for v in BLACK_TARGET_VERSIONS.split()]
334+
subprocess.call(["black", *target_version, validators_pkgdir])
335+
subprocess.call(["black", *target_version, graph_objs_pkgdir])
336+
subprocess.call(["black", *target_version, graph_objects_path])
337337
else:
338338
print("skipping reformatting")
339339

Diff for: codegen/datatypes.py

+4-3
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
import textwrap
33
from io import StringIO
44

5-
from codegen.utils import PlotlyNode, write_source_py
5+
from codegen.utils import CAVEAT, PlotlyNode, write_source_py
66

77

88
deprecated_mapbox_traces = [
@@ -90,6 +90,7 @@ def build_datatype_py(node):
9090

9191
# Initialze source code buffer
9292
buffer = StringIO()
93+
buffer.write(CAVEAT)
9394

9495
# Imports
9596
buffer.write(
@@ -362,12 +363,12 @@ def __init__(self"""
362363
# we suppress deprecation warnings for this line only.
363364
with warnings.catch_warnings():
364365
warnings.filterwarnings("ignore", category=DeprecationWarning)
365-
self._init_provided('{name_prop}', arg, {name_prop})"""
366+
self._set_property('{name_prop}', arg, {name_prop})"""
366367
)
367368
else:
368369
buffer.write(
369370
f"""
370-
self._init_provided('{name_prop}', arg, {name_prop})"""
371+
self._set_property('{name_prop}', arg, {name_prop})"""
371372
)
372373

373374
### Literals

Diff for: codegen/figure.py

+2-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
add_constructor_params,
77
add_docstring,
88
)
9-
from codegen.utils import write_source_py
9+
from codegen.utils import CAVEAT, write_source_py
1010

1111
import inflect
1212
from plotly.basedatatypes import BaseFigure
@@ -55,6 +55,7 @@ def build_figure_py(
5555
# Initialize source code buffer
5656
# -----------------------------
5757
buffer = StringIO()
58+
buffer.write(CAVEAT)
5859

5960
# Get list of trace type nodes
6061
# ----------------------------

Diff for: codegen/utils.py

+7
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,13 @@
88
import re
99
import errno
1010

11+
CAVEAT = """
12+
13+
# --- THIS FILE IS AUTO-GENERATED ---
14+
# Modifications will be overwitten the next time code generation run.
15+
16+
"""
17+
1118

1219
# Source code utilities
1320
# =====================

Diff for: codegen/validators.py

+3-2
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
from io import StringIO
33

44
import _plotly_utils.basevalidators
5-
from codegen.utils import PlotlyNode, TraceNode, write_source_py
5+
from codegen.utils import CAVEAT, PlotlyNode, TraceNode, write_source_py
66

77

88
def build_validator_py(node: PlotlyNode):
@@ -25,8 +25,9 @@ def build_validator_py(node: PlotlyNode):
2525
assert node.is_datatype
2626

2727
# Initialize
28-
buffer = StringIO()
2928
import_alias = "_bv"
29+
buffer = StringIO()
30+
buffer.write(CAVEAT)
3031

3132
# Imports
3233
# -------

Diff for: plotly/basedatatypes.py

+5-5
Original file line numberDiff line numberDiff line change
@@ -386,7 +386,7 @@ def _generator(i):
386386
yield x
387387

388388

389-
def _initialize_provided(obj, name, arg, provided):
389+
def _set_property_provided_value(obj, name, arg, provided):
390390
"""
391391
Initialize a property of this object using the provided value
392392
or a value popped from the arguments dictionary. If neither
@@ -847,13 +847,13 @@ def _ipython_display_(self):
847847
else:
848848
print(repr(self))
849849

850-
def _init_provided(self, name, arg, provided):
850+
def _set_property(self, name, arg, provided):
851851
"""
852852
Initialize a property of this object using the provided value
853853
or a value popped from the arguments dictionary. If neither
854854
is available, do not set the property.
855855
"""
856-
_initialize_provided(self, name, arg, provided)
856+
_set_property_provided_value(self, name, arg, provided)
857857

858858
def update(self, dict1=None, overwrite=False, **kwargs):
859859
"""
@@ -4351,13 +4351,13 @@ def _get_validator(self, prop):
43514351

43524352
return ValidatorCache.get_validator(self._path_str, prop)
43534353

4354-
def _init_provided(self, name, arg, provided):
4354+
def _set_property(self, name, arg, provided):
43554355
"""
43564356
Initialize a property of this object using the provided value
43574357
or a value popped from the arguments dictionary. If neither
43584358
is available, do not set the property.
43594359
"""
4360-
_initialize_provided(self, name, arg, provided)
4360+
_set_property_provided_value(self, name, arg, provided)
43614361

43624362
@property
43634363
def _validators(self):

Diff for: plotly/graph_objs/_bar.py

+77-74
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
# --- THIS FILE IS AUTO-GENERATED ---
2+
# Modifications will be overwitten the next time code generation run.
3+
14
from plotly.basedatatypes import BaseTraceType as _BaseTraceType
25
import copy as _copy
36

@@ -2517,80 +2520,80 @@ def __init__(
25172520
self._skip_invalid = kwargs.pop("skip_invalid", False)
25182521
self._validate = kwargs.pop("_validate", True)
25192522

2520-
self._init_provided("alignmentgroup", arg, alignmentgroup)
2521-
self._init_provided("base", arg, base)
2522-
self._init_provided("basesrc", arg, basesrc)
2523-
self._init_provided("cliponaxis", arg, cliponaxis)
2524-
self._init_provided("constraintext", arg, constraintext)
2525-
self._init_provided("customdata", arg, customdata)
2526-
self._init_provided("customdatasrc", arg, customdatasrc)
2527-
self._init_provided("dx", arg, dx)
2528-
self._init_provided("dy", arg, dy)
2529-
self._init_provided("error_x", arg, error_x)
2530-
self._init_provided("error_y", arg, error_y)
2531-
self._init_provided("hoverinfo", arg, hoverinfo)
2532-
self._init_provided("hoverinfosrc", arg, hoverinfosrc)
2533-
self._init_provided("hoverlabel", arg, hoverlabel)
2534-
self._init_provided("hovertemplate", arg, hovertemplate)
2535-
self._init_provided("hovertemplatesrc", arg, hovertemplatesrc)
2536-
self._init_provided("hovertext", arg, hovertext)
2537-
self._init_provided("hovertextsrc", arg, hovertextsrc)
2538-
self._init_provided("ids", arg, ids)
2539-
self._init_provided("idssrc", arg, idssrc)
2540-
self._init_provided("insidetextanchor", arg, insidetextanchor)
2541-
self._init_provided("insidetextfont", arg, insidetextfont)
2542-
self._init_provided("legend", arg, legend)
2543-
self._init_provided("legendgroup", arg, legendgroup)
2544-
self._init_provided("legendgrouptitle", arg, legendgrouptitle)
2545-
self._init_provided("legendrank", arg, legendrank)
2546-
self._init_provided("legendwidth", arg, legendwidth)
2547-
self._init_provided("marker", arg, marker)
2548-
self._init_provided("meta", arg, meta)
2549-
self._init_provided("metasrc", arg, metasrc)
2550-
self._init_provided("name", arg, name)
2551-
self._init_provided("offset", arg, offset)
2552-
self._init_provided("offsetgroup", arg, offsetgroup)
2553-
self._init_provided("offsetsrc", arg, offsetsrc)
2554-
self._init_provided("opacity", arg, opacity)
2555-
self._init_provided("orientation", arg, orientation)
2556-
self._init_provided("outsidetextfont", arg, outsidetextfont)
2557-
self._init_provided("selected", arg, selected)
2558-
self._init_provided("selectedpoints", arg, selectedpoints)
2559-
self._init_provided("showlegend", arg, showlegend)
2560-
self._init_provided("stream", arg, stream)
2561-
self._init_provided("text", arg, text)
2562-
self._init_provided("textangle", arg, textangle)
2563-
self._init_provided("textfont", arg, textfont)
2564-
self._init_provided("textposition", arg, textposition)
2565-
self._init_provided("textpositionsrc", arg, textpositionsrc)
2566-
self._init_provided("textsrc", arg, textsrc)
2567-
self._init_provided("texttemplate", arg, texttemplate)
2568-
self._init_provided("texttemplatesrc", arg, texttemplatesrc)
2569-
self._init_provided("uid", arg, uid)
2570-
self._init_provided("uirevision", arg, uirevision)
2571-
self._init_provided("unselected", arg, unselected)
2572-
self._init_provided("visible", arg, visible)
2573-
self._init_provided("width", arg, width)
2574-
self._init_provided("widthsrc", arg, widthsrc)
2575-
self._init_provided("x", arg, x)
2576-
self._init_provided("x0", arg, x0)
2577-
self._init_provided("xaxis", arg, xaxis)
2578-
self._init_provided("xcalendar", arg, xcalendar)
2579-
self._init_provided("xhoverformat", arg, xhoverformat)
2580-
self._init_provided("xperiod", arg, xperiod)
2581-
self._init_provided("xperiod0", arg, xperiod0)
2582-
self._init_provided("xperiodalignment", arg, xperiodalignment)
2583-
self._init_provided("xsrc", arg, xsrc)
2584-
self._init_provided("y", arg, y)
2585-
self._init_provided("y0", arg, y0)
2586-
self._init_provided("yaxis", arg, yaxis)
2587-
self._init_provided("ycalendar", arg, ycalendar)
2588-
self._init_provided("yhoverformat", arg, yhoverformat)
2589-
self._init_provided("yperiod", arg, yperiod)
2590-
self._init_provided("yperiod0", arg, yperiod0)
2591-
self._init_provided("yperiodalignment", arg, yperiodalignment)
2592-
self._init_provided("ysrc", arg, ysrc)
2593-
self._init_provided("zorder", arg, zorder)
2523+
self._set_property("alignmentgroup", arg, alignmentgroup)
2524+
self._set_property("base", arg, base)
2525+
self._set_property("basesrc", arg, basesrc)
2526+
self._set_property("cliponaxis", arg, cliponaxis)
2527+
self._set_property("constraintext", arg, constraintext)
2528+
self._set_property("customdata", arg, customdata)
2529+
self._set_property("customdatasrc", arg, customdatasrc)
2530+
self._set_property("dx", arg, dx)
2531+
self._set_property("dy", arg, dy)
2532+
self._set_property("error_x", arg, error_x)
2533+
self._set_property("error_y", arg, error_y)
2534+
self._set_property("hoverinfo", arg, hoverinfo)
2535+
self._set_property("hoverinfosrc", arg, hoverinfosrc)
2536+
self._set_property("hoverlabel", arg, hoverlabel)
2537+
self._set_property("hovertemplate", arg, hovertemplate)
2538+
self._set_property("hovertemplatesrc", arg, hovertemplatesrc)
2539+
self._set_property("hovertext", arg, hovertext)
2540+
self._set_property("hovertextsrc", arg, hovertextsrc)
2541+
self._set_property("ids", arg, ids)
2542+
self._set_property("idssrc", arg, idssrc)
2543+
self._set_property("insidetextanchor", arg, insidetextanchor)
2544+
self._set_property("insidetextfont", arg, insidetextfont)
2545+
self._set_property("legend", arg, legend)
2546+
self._set_property("legendgroup", arg, legendgroup)
2547+
self._set_property("legendgrouptitle", arg, legendgrouptitle)
2548+
self._set_property("legendrank", arg, legendrank)
2549+
self._set_property("legendwidth", arg, legendwidth)
2550+
self._set_property("marker", arg, marker)
2551+
self._set_property("meta", arg, meta)
2552+
self._set_property("metasrc", arg, metasrc)
2553+
self._set_property("name", arg, name)
2554+
self._set_property("offset", arg, offset)
2555+
self._set_property("offsetgroup", arg, offsetgroup)
2556+
self._set_property("offsetsrc", arg, offsetsrc)
2557+
self._set_property("opacity", arg, opacity)
2558+
self._set_property("orientation", arg, orientation)
2559+
self._set_property("outsidetextfont", arg, outsidetextfont)
2560+
self._set_property("selected", arg, selected)
2561+
self._set_property("selectedpoints", arg, selectedpoints)
2562+
self._set_property("showlegend", arg, showlegend)
2563+
self._set_property("stream", arg, stream)
2564+
self._set_property("text", arg, text)
2565+
self._set_property("textangle", arg, textangle)
2566+
self._set_property("textfont", arg, textfont)
2567+
self._set_property("textposition", arg, textposition)
2568+
self._set_property("textpositionsrc", arg, textpositionsrc)
2569+
self._set_property("textsrc", arg, textsrc)
2570+
self._set_property("texttemplate", arg, texttemplate)
2571+
self._set_property("texttemplatesrc", arg, texttemplatesrc)
2572+
self._set_property("uid", arg, uid)
2573+
self._set_property("uirevision", arg, uirevision)
2574+
self._set_property("unselected", arg, unselected)
2575+
self._set_property("visible", arg, visible)
2576+
self._set_property("width", arg, width)
2577+
self._set_property("widthsrc", arg, widthsrc)
2578+
self._set_property("x", arg, x)
2579+
self._set_property("x0", arg, x0)
2580+
self._set_property("xaxis", arg, xaxis)
2581+
self._set_property("xcalendar", arg, xcalendar)
2582+
self._set_property("xhoverformat", arg, xhoverformat)
2583+
self._set_property("xperiod", arg, xperiod)
2584+
self._set_property("xperiod0", arg, xperiod0)
2585+
self._set_property("xperiodalignment", arg, xperiodalignment)
2586+
self._set_property("xsrc", arg, xsrc)
2587+
self._set_property("y", arg, y)
2588+
self._set_property("y0", arg, y0)
2589+
self._set_property("yaxis", arg, yaxis)
2590+
self._set_property("ycalendar", arg, ycalendar)
2591+
self._set_property("yhoverformat", arg, yhoverformat)
2592+
self._set_property("yperiod", arg, yperiod)
2593+
self._set_property("yperiod0", arg, yperiod0)
2594+
self._set_property("yperiodalignment", arg, yperiodalignment)
2595+
self._set_property("ysrc", arg, ysrc)
2596+
self._set_property("zorder", arg, zorder)
25942597

25952598
self._props["type"] = "bar"
25962599
arg.pop("type", None)

0 commit comments

Comments
 (0)