From 6bd76f45cfd903af14b6457fa820e7210bd1e2e0b163d77ca82e204398517d60 Mon Sep 17 00:00:00 2001 From: Matej Cepl Date: Wed, 1 Sep 2021 18:57:33 +0000 Subject: [PATCH] Accepting request 915453 from home:bnavigator:branches:devel:languages:python:numeric - Update to version 5.3.0 * Added legend.groupclick options * Provide bbox of hover items in event data - Release 5.0.0 * Updated/Changed: Items in this section may be considered backwards-incompatible changes for the purposes of Semantic Versioning but we expect the vast majority of users to be able to upgrade to version 5.0 without encountering any issues. * Dropped support for Python older than 3.6 #3160 * Updated Plotly.js to from version 1.58.4 to version 2.1.0. See the plotly.js CHANGELOG for more information. These changes are reflected in the auto-generated plotly.graph_objects module. Notable changes include: * dropped support for IE9 and IE10 * dropped support for long-deprecated graph_objects like area traces and scatter.(t|r) and layout.(radial|angular)axis attributes * modebar no longer has hovermode or spikeline buttons by default (can be added back with fig.update_layout(modebar_add= ["v1hovermode", "toggleSpikeLines"])) * "Aa" text no longer appears on legend items unless mode="text" * In bar traces, textposition now defaults to "auto" * Font size for legend and colorbar titles now matches axis title font size (slightly bigger) * deprecated heatmapgl, pointcloud traces as well as all transform attributes * Combined plotlywidget into jupyterlab-plotly and packaged them as a federated extension #3142 with massive thanks to @fcollonval for the contribution * In addition to this change, large Plotly.js bundles are now lazily loaded on-demand by JupyterLab * Plotly.js CDN url will now be versioned by default for HTML exports using include_plotlyjs='cdn' and for "connected" renderers. #2961 with thanks to @adehad for the contribution * Recommending Kaleido by default over Orca #3094 * Replaced retrying dependency with tenacity #2911 with thanks to @jmsmdy for the contribution * Plotly Express now always takes into account every value in c category_orders when computing discrete mappings (color, symbol, line-dash, pattern-shapes) as well as facets, even those values which are absent in the data #3247 - Fix rpmlint errors: touch __init__.py mtime before deduplicating the compile cache files - Enable tests: * core test suite for all flavores * optional requirements test suite for all except python36 flavor -- many optional requirements are not available OBS-URL: https://build.opensuse.org/request/show/915453 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:numeric/python-plotly?expand=0&rev=43 --- plotly-4.14.3.tar.gz | 3 -- plotly-5.3.0.tar.gz | 3 ++ plotly.py-5.3.0-gh.tar.gz | 3 ++ python-plotly.changes | 53 ++++++++++++++++++++++ python-plotly.spec | 93 ++++++++++++++++++++++++++------------- 5 files changed, 121 insertions(+), 34 deletions(-) delete mode 100644 plotly-4.14.3.tar.gz create mode 100644 plotly-5.3.0.tar.gz create mode 100644 plotly.py-5.3.0-gh.tar.gz diff --git a/plotly-4.14.3.tar.gz b/plotly-4.14.3.tar.gz deleted file mode 100644 index 5c2eeaa..0000000 --- a/plotly-4.14.3.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7d8aaeed392e82fb8e0e48899f2d3d957b12327f9d38cdd5802bc574a8a39d91 -size 6374650 diff --git a/plotly-5.3.0.tar.gz b/plotly-5.3.0.tar.gz new file mode 100644 index 0000000..8dc75c7 --- /dev/null +++ b/plotly-5.3.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b6dc306c56e7d5fa7d017718894099b27290b427abf4acad8e5b77fdc3bd32ec +size 7296482 diff --git a/plotly.py-5.3.0-gh.tar.gz b/plotly.py-5.3.0-gh.tar.gz new file mode 100644 index 0000000..58dfdd0 --- /dev/null +++ b/plotly.py-5.3.0-gh.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:381638019a281d95aefd3b5d613412afd16cc6ca43001f18b5eee5c65f46c8af +size 30248187 diff --git a/python-plotly.changes b/python-plotly.changes index f20ecd2..01dc0b2 100644 --- a/python-plotly.changes +++ b/python-plotly.changes @@ -1,3 +1,56 @@ +------------------------------------------------------------------- +Tue Aug 31 20:33:41 UTC 2021 - Ben Greiner + +- Update to version 5.3.0 + * Added legend.groupclick options + * Provide bbox of hover items in event data +- Release 5.0.0 + * Updated/Changed: + Items in this section may be considered backwards-incompatible + changes for the purposes of Semantic Versioning but we expect + the vast majority of users to be able to upgrade to version + 5.0 without encountering any issues. + * Dropped support for Python older than 3.6 #3160 + * Updated Plotly.js to from version 1.58.4 to version 2.1.0. See + the plotly.js CHANGELOG for more information. These changes + are reflected in the auto-generated plotly.graph_objects + module. Notable changes include: + * dropped support for IE9 and IE10 + * dropped support for long-deprecated graph_objects like area + traces and scatter.(t|r) and layout.(radial|angular)axis + attributes + * modebar no longer has hovermode or spikeline buttons by + default (can be added back with fig.update_layout(modebar_add= + ["v1hovermode", "toggleSpikeLines"])) + * "Aa" text no longer appears on legend items unless mode="text" + * In bar traces, textposition now defaults to "auto" + * Font size for legend and colorbar titles now matches axis + title font size (slightly bigger) + * deprecated heatmapgl, pointcloud traces as well as all + transform attributes + * Combined plotlywidget into jupyterlab-plotly and packaged them + as a federated extension #3142 with massive thanks to + @fcollonval for the contribution + * In addition to this change, large Plotly.js bundles are now + lazily loaded on-demand by JupyterLab + * Plotly.js CDN url will now be versioned by default for HTML + exports using include_plotlyjs='cdn' and for "connected" + renderers. #2961 with thanks to @adehad for the contribution + * Recommending Kaleido by default over Orca #3094 + * Replaced retrying dependency with tenacity #2911 with thanks + to @jmsmdy for the contribution + * Plotly Express now always takes into account every value in c + category_orders when computing discrete mappings (color, + symbol, line-dash, pattern-shapes) as well as facets, even + those values which are absent in the data #3247 +- Fix rpmlint errors: touch __init__.py mtime before deduplicating + the compile cache files +- Enable tests: + * core test suite for all flavores + * optional requirements test suite for all except python36 flavor + -- many optional requirements are not available + +------------------------------------------------------------------- Sat Mar 6 18:25:33 UTC 2021 - Arun Persaud - update to version 4.14.3: diff --git a/python-plotly.spec b/python-plotly.spec index ca83872..86e0942 100644 --- a/python-plotly.spec +++ b/python-plotly.spec @@ -19,34 +19,50 @@ %{?!python_module:%define python_module() python-%{**} python3-%{**}} %define skip_python2 1 Name: python-plotly -Version: 4.14.3 +Version: 5.3.0 Release: 0 Summary: Library for collaborative, interactive, publication-quality graphs License: MIT URL: https://github.com/plotly/plotly.py +# Get the PyPI archive for the bundles JS files Source: https://files.pythonhosted.org/packages/source/p/plotly/plotly-%{version}.tar.gz +# Additionally use the GitHub archive for the test suite +Source1: https://github.com/plotly/plotly.py/archive/refs/tags/v%{version}.tar.gz#/plotly.py-%{version}-gh.tar.gz Source100: python-plotly-rpmlintrc -BuildRequires: %{python_module decorator >= 4.0.6} -BuildRequires: %{python_module ipython} -BuildRequires: %{python_module ipywidgets} -BuildRequires: %{python_module nbformat >= 4.2} -BuildRequires: %{python_module notebook} -BuildRequires: %{python_module pytz} -BuildRequires: %{python_module requests} -BuildRequires: %{python_module retrying >= 1.3.3} BuildRequires: %{python_module setuptools} -BuildRequires: %{python_module six} +BuildRequires: %{python_module six >= 1.15.0} +BuildRequires: %{python_module tenacity >= 6.2.0} BuildRequires: fdupes +BuildRequires: jupyter-jupyter_core-filesystem BuildRequires: python-rpm-macros -Requires: python-decorator >= 4.0.6 -Requires: python-pytz -Requires: python-requests -Requires: python-retrying >= 1.3.3 -Requires: python-six -Recommends: python-matplotlib >= 1.3.1 +Requires: python-six >= 1.15.0 +Requires: python-tenacity >= 6.2.0 +Recommends: python-ipython +Recommends: python-matplotlib >= 2.2.2 Recommends: python-numpy Recommends: python-pandas +Recommends: python-scipy BuildArch: noarch +# SECTION test requirements +BuildRequires: %{python_module pytest} +BuildRequires: %{python_module requests} +BuildRequires: %{python_module Pillow if (%python-base without python36-base)} +BuildRequires: %{python_module Shapely if (%python-base without python36-base)} +BuildRequires: %{python_module ipykernel if (%python-base without python36-base)} +BuildRequires: %{python_module ipython if (%python-base without python36-base)} +BuildRequires: %{python_module ipywidgets if (%python-base without python36-base)} +BuildRequires: %{python_module jupyter if (%python-base without python36-base)} +BuildRequires: %{python_module matplotlib if (%python-base without python36-base)} +BuildRequires: %{python_module numpy if (%python-base without python36-base)} +BuildRequires: %{python_module pandas if (%python-base without python36-base)} +BuildRequires: %{python_module psutil if (%python-base without python36-base)} +BuildRequires: %{python_module pyshp if (%python-base without python36-base)} +BuildRequires: %{python_module pytz if (%python-base without python36-base)} +BuildRequires: %{python_module scikit-image if (%python-base without python36-base)} +BuildRequires: %{python_module scipy if (%python-base without python36-base)} +BuildRequires: %{python_module statsmodels if (%python-base without python36-base)} +BuildRequires: %{python_module xarray if (%python-base without python36-base)} +# /SECTION %python_subpackages %description @@ -60,12 +76,11 @@ always accessible from the graph. %package jupyter Summary: Jupyter notebook integration for %{name} +Provides: python-jupyterlab-plotly = %{version}-%{release} Requires: %{name} = %{version} Requires: jupyter-plotly = %{version} -Requires: python-ipython -Requires: python-ipywidgets -Requires: python-nbformat >= 4.2 -Requires: python-notebook +Requires: python-ipywidgets >= 7.6 +Requires: (python-jupyterlab or python-notebook) %description jupyter Use this package to make collaborative, interactive, @@ -76,14 +91,11 @@ Python API allows you to access all of Plotly's functionality from Python. Plotly figures are shared, tracked, and edited all online and the data is always accessible from the graph. -This package provides Jupyter Notebook integration and widgets. +This package provides Jupyterlab and Notebook integration and widgets. %package -n jupyter-plotly Summary: Jupyter notebook integration for %{name} -Requires: jupyter-ipython -Requires: jupyter-ipywidgets -Requires: jupyter-nbformat >= 4.2 -Requires: jupyter-notebook +Provides: jupyterlab-plotly = %{version}-%{release} Requires: python3-plotly-jupyter = %{version} %description -n jupyter-plotly @@ -95,10 +107,15 @@ Python API allows you to access all of Plotly's functionality from Python. Plotly figures are shared, tracked, and edited all online and the data is always accessible from the graph. -This package provides Jupyter Notebook integration and widgets. +This package provides the flavorless configuration for the +Jupyterlab and Notebook integration and widgets. %prep -%setup -q -n plotly-%{version} +%setup -q -n plotly-%{version} -b 1 +# remove script interpreter line in non-executable script +sed -i '1{/env python/ d}' _plotly_utils/png.py +# homogenize mtime of all __init__.py files for deduplicated compile cache consistency +find . -name __init__.py -exec touch -m -r plotly/__init__.py '{}' ';' %build %python_build @@ -107,7 +124,22 @@ This package provides Jupyter Notebook integration and widgets. %python_install %jupyter_move_config %python_expand %fdupes %{buildroot}%{$python_sitelib} -%fdupes %{buildroot}%{jupyter_prefix} +%fdupes %{buildroot}%{_jupyter_prefix} + +%check +# No test suite in the PyPI package, which is required for the bundled JS files, go to the GitHub repo tree now. +cd ../plotly.py-%{version}/packages/python/plotly +%{pytest plotly/tests/test_core +# cleanup between flavor runs +rm plotly/tests/test_core/test_offline/plotly.min.js +} +# most of the optional packages are not available on python36: skip entire test suite +python36_skip="-V" +# not available +donttest="test_kaleido" +# API parameter mismatches and precision errors +donttest+=" or test_matplotlylib" +%pytest ${$python_skip} plotly/tests/test_optional -k "not ($donttest)" %files %{python_files} %license LICENSE.txt @@ -118,11 +150,10 @@ This package provides Jupyter Notebook integration and widgets. %files %{python_files jupyter} %license LICENSE.txt -%{python_sitelib}/plotlywidget/ +%{python_sitelib}/jupyterlab_plotly %files -n jupyter-plotly %license LICENSE.txt -%{_jupyter_nbextension_dir}/plotlywidget/ -%config %{_jupyter_nb_notebook_confdir}/plotlywidget.json +%config %{_jupyter_nb_notebook_confdir}/jupyterlab-plotly.json %changelog