You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@superset.apache.org by be...@apache.org on 2025/06/05 14:38:10 UTC

(superset) branch sql-parse-pylint-rule updated (4af63d07f9 -> ce90730a29)

This is an automated email from the ASF dual-hosted git repository.

beto pushed a change to branch sql-parse-pylint-rule
in repository https://gitbox.apache.org/repos/asf/superset.git


    omit 4af63d07f9 chore: add pylint rule for SQL importing (SIP-117)
     add fdea4e21b0 feat: current_user_rls_rules Jinja macro (#33614)
     add 235c9d2ebf chore(deps-dev): bump fastify from 4.29.0 to 4.29.1 in /superset-frontend (#33622)
     add ed20d2a917 fix(Security): Apply permissions to the AllEntities list/get_objects API endpoint (#33577)
     add f219dc1794 chore: make DB syntax errors 400 (#33619)
     add cf315388f2 feat(sqllab): use sqlglot instead of sqlparse (#33542)
     add 401ce56fa1 feat: use sqlglot to validate adhoc subquery (#33560)
     add c09f8f6f76 fix(sqllab): save datasets with template parameters (#33195)
     add b033406387 docs: CVE-2025-48912 added to 4.1.2 (#33662)
     add 2d26af25c1 feat: Python 3.12 support (#33434)
     add ade85daee2 feat(database): add SingleStore engine specification (#32887)
     add fc13a0fde5 docs: add HPE to users list (#33665)
     add fa0c5891bf feat(List Groups): Migrate List Groups FAB to React (#33301)
     add cacf1e06d6 fix: Update dataset's last modified date from column/metric update (#33626)
     add 20519158d2 feat(UserInfo): Migrate User Info FAB to React (#33620)
     add ff34e3c81e fix: optimize catalog permission sync when importing dashboards (#33679)
     add a7aa8f7cef feat(Dataset): editor improvements - run in sqllab (#33443)
     add a26e1d822a chore: remove sqlparse (#33564)
     add c9518485ba fix: Do not convert dataset changed_on to UTC (#33693)
     add edc60914f6 chore: 100% test coverage for SQL parsing (#33568)
     add ce90730a29 chore: add pylint rule for SQL importing (SIP-117)

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (4af63d07f9)
            \
             N -- N -- N   refs/heads/sql-parse-pylint-rule (ce90730a29)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

No new revisions were added by this update.

Summary of changes:
 .coveragerc                                        |   36 +
 .github/workflows/pre-commit.yml                   |    2 +-
 .../workflows/superset-python-integrationtest.yml  |    2 +-
 .github/workflows/superset-python-unittest.yml     |    9 +-
 .pre-commit-config.yaml                            |   15 +
 .pylintrc                                          |  380 ++++
 RESOURCES/INTHEWILD.md                             |    1 +
 docs/docs/configuration/databases.mdx              |   13 +-
 docs/docs/configuration/sql-templating.mdx         |    8 +
 docs/docs/security/cves.mdx                        |    1 +
 pyproject.toml                                     |   10 +-
 requirements/base.in                               |    3 +
 requirements/base.txt                              |   30 +-
 requirements/development.txt                       |   32 +-
 superset-frontend/package-lock.json                |    6 +-
 superset-frontend/src/SqlLab/actions/sqlLab.js     |    4 +-
 .../SaveDatasetModal/SaveDatasetModal.test.tsx     |   85 +
 .../SqlLab/components/SaveDatasetModal/index.tsx   |   48 +-
 .../src/SqlLab/components/SqlEditor/index.tsx      |   73 +-
 .../SqlLab/components/TabbedSqlEditors/index.tsx   |    1 +
 superset-frontend/src/SqlLab/types.ts              |    1 +
 .../src/components/Datasource/DatasourceEditor.jsx |  213 ++-
 .../Datasource/DatasourceEditor.test.jsx           |    9 +-
 .../components/Datasource/DatasourceModal.test.jsx |   10 +-
 .../src/components/Datasource/Field.tsx            |    2 +-
 .../src/components/Datasource/utils.js             |    4 +-
 .../components/{Tags => Descriptions}/index.tsx    |    4 +-
 .../src/components/Icons/AntdEnhanced.tsx          |    4 +
 .../src/components/Modal/FormModal.tsx             |    2 +-
 superset-frontend/src/constants.ts                 |    5 +
 .../features/allEntities/AllEntitiesTable.test.tsx |    4 +-
 .../src/features/allEntities/AllEntitiesTable.tsx  |    5 +-
 .../src/features/groups/GroupListModal.tsx         |  164 ++
 .../src/features/roles/RoleFormItems.tsx           |   35 +-
 .../src/features/roles/RoleListAddModal.tsx        |    6 +-
 .../features/roles/RoleListDuplicateModal.test.tsx |    1 +
 .../src/features/roles/RoleListDuplicateModal.tsx  |    6 +-
 .../src/features/roles/RoleListEditModal.test.tsx  |   55 +
 .../src/features/roles/RoleListEditModal.tsx       |  144 +-
 superset-frontend/src/features/roles/types.ts      |    8 +-
 superset-frontend/src/features/roles/utils.ts      |    6 +
 superset-frontend/src/features/tags/tags.ts        |   14 -
 .../src/features/userInfo/UserInfoModal.tsx        |  150 ++
 .../src/features/users/UserListModal.tsx           |   57 +-
 superset-frontend/src/features/users/utils.ts      |   22 +-
 .../src/pages/GroupsList/GroupsList.test.tsx       |  165 ++
 superset-frontend/src/pages/GroupsList/index.tsx   |  459 +++++
 .../src/pages/RolesList/RolesList.test.tsx         |    6 +-
 superset-frontend/src/pages/RolesList/index.tsx    |  165 +-
 .../src/pages/SqlLab/LocationContext.tsx           |   22 +-
 .../src/pages/UserInfo/UserInfo.test.tsx           |  126 ++
 superset-frontend/src/pages/UserInfo/index.tsx     |  238 +++
 superset-frontend/src/pages/UsersList/index.tsx    |  147 +-
 superset-frontend/src/types/bootstrapTypes.ts      |    1 +
 superset-frontend/src/utils/datasourceUtils.js     |    1 +
 superset-frontend/src/utils/fetchOptions.ts        |  113 ++
 superset-frontend/src/views/routes.tsx             |   12 +
 superset/commands/database/test_connection.py      |    6 +-
 superset/commands/database/uploaders/base.py       |    2 +-
 superset/commands/database/utils.py                |   19 +-
 superset/commands/database/validate.py             |    2 +-
 superset/commands/dataset/create.py                |    2 +-
 superset/commands/dataset/duplicate.py             |    2 +-
 superset/commands/dataset/exceptions.py            |    2 +-
 superset/commands/dataset/importers/v1/utils.py    |    2 +-
 superset/commands/dataset/update.py                |    2 +-
 superset/common/query_object.py                    |   29 +-
 superset/connectors/sqla/models.py                 |   23 +-
 superset/connectors/sqla/utils.py                  |    3 +-
 superset/daos/dataset.py                           |    8 +-
 superset/daos/tag.py                               |  192 +-
 superset/databases/api.py                          |    2 +-
 superset/databases/decorators.py                   |    2 +-
 superset/databases/utils.py                        |    2 +-
 superset/datasets/schemas.py                       |    1 +
 superset/db_engine_specs/base.py                   |   28 +-
 superset/db_engine_specs/bigquery.py               |    3 +-
 superset/db_engine_specs/gsheets.py                |    2 +-
 superset/db_engine_specs/hive.py                   |    3 +-
 superset/db_engine_specs/presto.py                 |    2 +-
 superset/db_engine_specs/redshift.py               |    2 +-
 superset/db_engine_specs/singlestore.py            |  549 ++++++
 superset/db_engine_specs/trino.py                  |    2 +-
 superset/examples/bart_lines.py                    |    2 +-
 superset/examples/birth_names.py                   |    2 +-
 superset/examples/country_map.py                   |    2 +-
 superset/examples/energy.py                        |    2 +-
 superset/examples/flights.py                       |    2 +-
 superset/examples/long_lat.py                      |    2 +-
 superset/examples/multiformat_time_series.py       |    2 +-
 superset/examples/paris.py                         |    2 +-
 superset/examples/random_time_series.py            |    2 +-
 superset/examples/sf_population_polygons.py        |    2 +-
 superset/examples/supported_charts_dashboard.py    |    2 +-
 superset/examples/world_bank.py                    |    2 +-
 superset/exceptions.py                             |   56 +-
 superset/extensions/metadb.py                      |    9 +-
 superset/extensions/pylint.py                      |   41 +-
 superset/initialization/__init__.py                |   11 +
 superset/jinja_context.py                          |   95 +-
 ...14-38_a9422eeaae74_new_dataset_models_take_2.py |   83 +-
 superset/models/core.py                            |    3 +-
 superset/models/helpers.py                         |  112 +-
 superset/models/sql_lab.py                         |    4 +-
 superset/queries/schemas.py                        |    2 +-
 superset/security/api.py                           |    4 +
 superset/security/manager.py                       |    8 +-
 superset/sql/dialects/firebolt.py                  |   37 +-
 superset/sql/parse.py                              |  248 ++-
 superset/sql_lab.py                                |  315 ++--
 superset/sql_parse.py                              |  950 ----------
 superset/sqllab/sqllab_execution_context.py        |   15 +-
 superset/tags/api.py                               |    4 +-
 superset/utils/core.py                             |    5 +-
 superset/utils/mock_data.py                        |    2 +-
 superset/utils/rls.py                              |  115 ++
 superset/views/base.py                             |    4 +-
 superset/views/datasource/views.py                 |    2 +-
 superset/views/{users_list.py => groups.py}        |    4 +-
 superset/views/{users_list.py => user_info.py}     |    6 +-
 superset/views/users/api.py                        |   86 +-
 superset/views/users/schemas.py                    |   32 +-
 superset/views/utils.py                            |    1 +
 superset/viz.py                                    |    8 +-
 tests/integration_tests/base_tests.py              |    6 +-
 tests/integration_tests/celery_tests.py            |  214 ++-
 tests/integration_tests/charts/data/api_tests.py   |   12 +-
 tests/integration_tests/core_tests.py              |    2 +-
 tests/integration_tests/databases/api_tests.py     |    4 +-
 tests/integration_tests/datasets/api_tests.py      |   25 +-
 tests/integration_tests/datasource_tests.py        |    5 +-
 .../db_engine_specs/base_engine_spec_tests.py      |    2 +-
 .../db_engine_specs/bigquery_tests.py              |    2 +-
 .../db_engine_specs/hive_tests.py                  |    2 +-
 .../db_engine_specs/presto_tests.py                |    2 +-
 .../db_engine_specs/redshift_tests.py              |    2 +-
 tests/integration_tests/model_tests.py             |    8 +-
 tests/integration_tests/query_context_tests.py     |   43 +-
 tests/integration_tests/reports/commands_tests.py  |    2 +-
 .../security/guest_token_security_tests.py         |    3 +-
 tests/integration_tests/security_tests.py          |    3 +-
 tests/integration_tests/sqla_models_tests.py       |    2 +-
 tests/integration_tests/sqllab_tests.py            |  128 +-
 tests/integration_tests/tags/api_tests.py          |  137 +-
 tests/integration_tests/tags/dao_tests.py          |   40 +-
 tests/integration_tests/users/api_tests.py         |   31 +
 tests/unit_tests/commands/dataset/update_test.py   |    2 +-
 tests/unit_tests/connectors/sqla/models_test.py    |    2 +-
 tests/unit_tests/dao/dataset_test.py               |  101 +-
 tests/unit_tests/databases/api_test.py             |    2 +-
 tests/unit_tests/databases/commands/utils_test.py  |   31 +
 tests/unit_tests/db_engine_specs/test_base.py      |    2 +-
 tests/unit_tests/db_engine_specs/test_bigquery.py  |    2 +-
 tests/unit_tests/db_engine_specs/test_db2.py       |    2 +-
 .../db_engine_specs/test_elasticsearch.py          |   19 -
 tests/unit_tests/db_engine_specs/test_gsheets.py   |    2 +-
 tests/unit_tests/db_engine_specs/test_presto.py    |    2 +-
 .../unit_tests/db_engine_specs/test_singlestore.py |  216 +++
 tests/unit_tests/db_engine_specs/test_trino.py     |    2 +-
 tests/unit_tests/jinja_context_test.py             |   97 +-
 tests/unit_tests/models/core_test.py               |    3 +-
 tests/unit_tests/models/helpers_test.py            |    2 +-
 tests/unit_tests/security/manager_test.py          |    2 +-
 .../unit_tests/sql/dialects}/__init__.py           |    0
 tests/unit_tests/sql/dialects/firebolt_tests.py    |  433 +++++
 tests/unit_tests/sql/parse_tests.py                |  438 ++++-
 tests/unit_tests/sql_lab_test.py                   |  268 +--
 tests/unit_tests/sql_parse_tests.py                | 1911 --------------------
 168 files changed, 6152 insertions(+), 4385 deletions(-)
 create mode 100644 .coveragerc
 create mode 100644 .pylintrc
 copy superset-frontend/src/components/{Tags => Descriptions}/index.tsx (88%)
 create mode 100644 superset-frontend/src/features/groups/GroupListModal.tsx
 create mode 100644 superset-frontend/src/features/userInfo/UserInfoModal.tsx
 create mode 100644 superset-frontend/src/pages/GroupsList/GroupsList.test.tsx
 create mode 100644 superset-frontend/src/pages/GroupsList/index.tsx
 create mode 100644 superset-frontend/src/pages/UserInfo/UserInfo.test.tsx
 create mode 100644 superset-frontend/src/pages/UserInfo/index.tsx
 create mode 100644 superset-frontend/src/utils/fetchOptions.ts
 create mode 100644 superset/db_engine_specs/singlestore.py
 delete mode 100644 superset/sql_parse.py
 create mode 100644 superset/utils/rls.py
 copy superset/views/{users_list.py => groups.py} (94%)
 copy superset/views/{users_list.py => user_info.py} (92%)
 create mode 100644 tests/unit_tests/db_engine_specs/test_singlestore.py
 copy {superset/advanced_data_type => tests/unit_tests/sql/dialects}/__init__.py (100%)
 create mode 100644 tests/unit_tests/sql/dialects/firebolt_tests.py
 delete mode 100644 tests/unit_tests/sql_parse_tests.py