From 0fb45318cda52a6b8dd6c828e4b4df6aebd95e4e Mon Sep 17 00:00:00 2001 From: Ville Brofeldt <33317356+villebro@users.noreply.github.com> Date: Thu, 24 Sep 2020 13:11:10 +0300 Subject: [PATCH] chore: bump pandas to latest stable version (#11018) * chore: bump pandas to latest stable version * fix nest_values --- requirements/base.in | 2 ++ requirements/base.txt | 22 +++++++++++----------- requirements/development.txt | 7 +++---- requirements/docker.txt | 6 +++--- requirements/integration.txt | 4 ++-- requirements/testing.txt | 10 +++++----- setup.py | 2 +- superset/viz.py | 10 ++++++---- 8 files changed, 33 insertions(+), 30 deletions(-) diff --git a/requirements/base.in b/requirements/base.in index 3a801db6ef590..5639f7e8f6d66 100644 --- a/requirements/base.in +++ b/requirements/base.in @@ -16,3 +16,5 @@ # specific language governing permissions and limitations # under the License. -e file:. +pyrsistent>=0.16.1,<0.17 +importlib-metadata>=1.7.0, <2 diff --git a/requirements/base.txt b/requirements/base.txt index 1b87a67f3e015..08851d7901899 100644 --- a/requirements/base.txt +++ b/requirements/base.txt @@ -1,4 +1,4 @@ -# SHA1:6d5583095e299af7f7e1c4fdf953577bc873a8a6 +# SHA1:1b5e15727cda5c8d6f711f02629430e1560618eb # # This file is autogenerated by pip-compile-multi # To update, run: @@ -7,7 +7,7 @@ # -e file:. # via -r requirements/base.in aiohttp==3.6.2 # via slackclient -alembic==1.4.2 # via flask-migrate +alembic==1.4.3 # via flask-migrate amqp==2.6.1 # via kombu apispec[yaml]==3.3.2 # via flask-appbuilder async-timeout==3.0.1 # via aiohttp @@ -15,17 +15,17 @@ attrs==20.2.0 # via aiohttp, jsonschema babel==2.8.0 # via flask-babel backoff==1.10.0 # via apache-superset billiard==3.6.3.0 # via celery -bleach==3.1.5 # via apache-superset +bleach==3.2.1 # via apache-superset brotli==1.0.9 # via flask-compress cachelib==0.1.1 # via apache-superset celery==4.4.7 # via apache-superset -cffi==1.14.2 # via cryptography +cffi==1.14.3 # via cryptography chardet==3.0.4 # via aiohttp click==7.1.2 # via apache-superset, flask, flask-appbuilder colorama==0.4.3 # via apache-superset, flask-appbuilder contextlib2==0.6.0.post1 # via apache-superset croniter==0.3.34 # via apache-superset -cryptography==3.1 # via apache-superset +cryptography==3.1.1 # via apache-superset decorator==4.4.2 # via retry defusedxml==0.6.0 # via python3-openid dnspython==2.0.0 # via email-validator @@ -47,7 +47,7 @@ geopy==2.0.0 # via apache-superset gunicorn==20.0.4 # via apache-superset humanize==2.6.0 # via apache-superset idna==2.10 # via email-validator, yarl -importlib-metadata==1.7.0 # via jsonschema, kombu, markdown +importlib-metadata==1.7.0 # via -r requirements/base.in, jsonschema, kombu, markdown isodate==0.6.0 # via apache-superset itsdangerous==1.1.0 # via flask, flask-wtf jinja2==2.11.2 # via flask, flask-babel @@ -58,13 +58,13 @@ markdown==3.2.2 # via apache-superset markupsafe==1.1.1 # via jinja2, mako, wtforms marshmallow-enum==1.5.1 # via flask-appbuilder marshmallow-sqlalchemy==0.23.1 # via flask-appbuilder -marshmallow==3.7.1 # via flask-appbuilder, marshmallow-enum, marshmallow-sqlalchemy +marshmallow==3.8.0 # via flask-appbuilder, marshmallow-enum, marshmallow-sqlalchemy msgpack==1.0.0 # via apache-superset multidict==4.7.6 # via aiohttp, yarl natsort==7.0.1 # via croniter -numpy==1.19.1 # via pandas, pyarrow +numpy==1.19.2 # via pandas, pyarrow packaging==20.4 # via bleach -pandas==1.0.5 # via apache-superset +pandas==1.1.2 # via apache-superset parsedatetime==2.6 # via apache-superset pathlib2==2.3.5 # via apache-superset polyline==1.4.0 # via apache-superset @@ -74,7 +74,7 @@ pyarrow==1.0.1 # via apache-superset pycparser==2.20 # via cffi pyjwt==1.7.1 # via flask-appbuilder, flask-jwt-extended pyparsing==2.4.7 # via packaging -pyrsistent==0.16.0 # via jsonschema +pyrsistent==0.16.1 # via -r requirements/base.in, jsonschema python-dateutil==2.8.1 # via alembic, apache-superset, croniter, flask-appbuilder, pandas python-dotenv==0.14.0 # via apache-superset python-editor==1.0.4 # via alembic @@ -98,7 +98,7 @@ werkzeug==1.0.1 # via flask, flask-jwt-extended wtforms-json==0.3.3 # via apache-superset wtforms==2.3.3 # via flask-wtf, wtforms-json yarl==1.5.1 # via aiohttp -zipp==3.1.0 # via importlib-metadata +zipp==3.2.0 # via importlib-metadata # The following packages are considered to be unsafe in a requirements file: # setuptools diff --git a/requirements/development.txt b/requirements/development.txt index c91b91b547162..fcb0a97b066c0 100644 --- a/requirements/development.txt +++ b/requirements/development.txt @@ -7,11 +7,10 @@ # -r base.txt -e file:. # via -r requirements/base.in -boto3==1.14.62 # via tabulator -botocore==1.17.62 # via boto3, s3transfer -cached-property==1.5.1 # via tableschema +boto3==1.15.3 # via tabulator +botocore==1.18.3 # via boto3, s3transfer +cached-property==1.5.2 # via tableschema certifi==2020.6.20 # via requests -docutils==0.15.2 # via botocore et-xmlfile==1.0.1 # via openpyxl flask-cors==3.0.9 # via -r requirements/development.in future==0.18.2 # via pyhive diff --git a/requirements/docker.txt b/requirements/docker.txt index dd2ff5164ead7..be7d68b6ff1ae 100644 --- a/requirements/docker.txt +++ b/requirements/docker.txt @@ -7,11 +7,11 @@ # -r base.txt -e file:. # via -r requirements/base.in -gevent==20.6.2 # via -r requirements/docker.in -greenlet==0.4.16 # via gevent +gevent==20.9.0 # via -r requirements/docker.in +greenlet==0.4.17 # via gevent psycopg2-binary==2.8.6 # via -r requirements/docker.in redis==3.5.3 # via -r requirements/docker.in -zope.event==4.4 # via gevent +zope.event==4.5.0 # via gevent zope.interface==5.1.0 # via gevent # The following packages are considered to be unsafe in a requirements file: diff --git a/requirements/integration.txt b/requirements/integration.txt index 5920079d735d6..b6576af0b84b0 100644 --- a/requirements/integration.txt +++ b/requirements/integration.txt @@ -10,7 +10,7 @@ cfgv==3.2.0 # via pre-commit click==7.1.2 # via pip-compile-multi, pip-tools distlib==0.3.1 # via virtualenv filelock==3.0.12 # via tox, virtualenv -identify==1.5.0 # via pre-commit +identify==1.5.4 # via pre-commit importlib-metadata==1.7.0 # via pluggy, pre-commit, tox, virtualenv nodeenv==1.5.0 # via pre-commit packaging==20.4 # via tox @@ -26,7 +26,7 @@ toml==0.10.1 # via pre-commit, tox toposort==1.5 # via pip-compile-multi tox==3.20.0 # via -r requirements/integration.in virtualenv==20.0.31 # via pre-commit, tox -zipp==3.1.0 # via importlib-metadata +zipp==3.2.0 # via importlib-metadata # The following packages are considered to be unsafe in a requirements file: # pip diff --git a/requirements/testing.txt b/requirements/testing.txt index b3b3bc186d020..0d496c808befc 100644 --- a/requirements/testing.txt +++ b/requirements/testing.txt @@ -11,14 +11,14 @@ appnope==0.1.0 # via ipython astroid==2.4.2 # via pylint backcall==0.2.0 # via ipython -coverage==5.2.1 # via pytest-cov +coverage==5.3 # via pytest-cov docker==4.3.1 # via -r requirements/testing.in flask-testing==0.8.0 # via -r requirements/testing.in iniconfig==1.0.1 # via pytest ipdb==0.13.3 # via -r requirements/testing.in ipython-genutils==0.2.0 # via traitlets ipython==7.16.1 # via -r requirements/testing.in, ipdb -isort==5.5.1 # via pylint +isort==5.5.3 # via pylint jedi==0.17.2 # via ipython lazy-object-proxy==1.4.3 # via astroid mccabe==0.6.1 # via pylint @@ -30,14 +30,14 @@ pexpect==4.8.0 # via ipython pickleshare==0.7.5 # via ipython prompt-toolkit==3.0.7 # via ipython ptyprocess==0.6.0 # via pexpect -pygments==2.6.1 # via ipython +pygments==2.7.1 # via ipython pyhive[hive,presto]==0.6.3 # via -r requirements/development.in, -r requirements/testing.in pylint==2.6.0 # via -r requirements/testing.in pytest-cov==2.10.1 # via -r requirements/testing.in -pytest==6.0.1 # via -r requirements/testing.in, pytest-cov +pytest==6.0.2 # via -r requirements/testing.in, pytest-cov redis==3.5.3 # via -r requirements/testing.in statsd==3.3.0 # via -r requirements/testing.in -traitlets==5.0.3 # via ipython +traitlets==5.0.4 # via ipython typed-ast==1.4.1 # via astroid wcwidth==0.2.5 # via prompt-toolkit websocket-client==0.57.0 # via docker diff --git a/setup.py b/setup.py index 54c2c72b45125..43cf39716a6a8 100644 --- a/setup.py +++ b/setup.py @@ -89,7 +89,7 @@ def get_git_sha(): "isodate", "markdown>=3.0", "msgpack>=1.0.0, <1.1", - "pandas>=1.0.5, <1.1", + "pandas>=1.1.2, <1.2", "parsedatetime", "pathlib2", "polyline", diff --git a/superset/viz.py b/superset/viz.py index fb6543c5ef1ac..9378f3867f21c 100644 --- a/superset/viz.py +++ b/superset/viz.py @@ -2963,23 +2963,25 @@ def nest_values( for m in levels[0].index ] if level == 1: + metric_level = levels[1][metric] return [ { "name": i, - "val": levels[1][metric][i], + "val": metric_level[i], "children": self.nest_values(levels, 2, metric, [i]), } - for i in levels[1][metric].index + for i in metric_level.index ] if level >= len(levels): return [] + dim_level = levels[level][metric][[dims[0]]] return [ { "name": i, - "val": levels[level][metric][dims][i], + "val": dim_level[i], "children": self.nest_values(levels, level + 1, metric, dims + [i]), } - for i in levels[level][metric][dims].index + for i in dim_level.index ] def nest_procs(