Commit Graph
85 Commits
Author SHA1 Message Date
Evan RusackasandSuperset Dev bd7b739212 chore: remove obsolete pandas/SQLAlchemy version compat shim (#43497)
Co-authored-by: Superset Dev <dev@superset.apache.org>
2026-08-24 20:11:52 -07:00
dependabot[bot]dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>Amin GhadersohiClaude Opus 4.8
42a2aede78 chore(deps): bump pandas from 2.1.4 to 2.3.3 (#42192)
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Amin Ghadersohi <amin.ghadersohi@gmail.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-18 15:42:02 -07:00
Evan RusackasandClaude Code adc03ce525 refactor: make import/expression layer SQLAlchemy 2.0-compatible (#41179)
Co-authored-by: Claude Code <noreply@anthropic.com>
2026-06-29 11:38:59 -07:00
47414e18d4 feat: Use DuckDB for examples data in Docker development environment (#34831)
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Beto Dealmeida <roberto@dealmeida.net>
2025-08-25 12:37:28 -07:00
Maxime BeaucheminandClaude cb27d5fe8d chore: proper current_app.config proxy usage (#34345)
Co-authored-by: Claude <noreply@anthropic.com>
2025-07-31 19:27:42 -07:00
Maxime Beauchemin 531f1b6aa4 chore(gha): bump ubuntu to latest fresh release (#31390) 2024-12-18 23:32:10 -08:00
Maxime Beauchemin a5e36c9aab fix: master docker builds fail because of multi-platform builds can't --load (#31493) 2024-12-17 09:41:13 -08:00
Maxime Beauchemin 3375e65486 feat(gha): various docker / docker-compose build improvements (#31386) 2024-12-16 17:50:15 -08:00
Maxime Beauchemin dd1ba96adf feat: use uv in CI (#31260) 2024-12-02 18:16:56 -08:00
Maxime Beauchemin 8f02eb0a34 fix: Cypress CI process while opening PR from a fork (#29098) 2024-06-05 17:59:11 -07:00
Maxime Beauchemin b5d9ac0690 chore: only use cypress.io when triggered manually (#29077) 2024-06-05 11:10:40 -07:00
Maxime Beauchemin 2d63722150 chore: set up ruff as a new linter/formatter (#28158) 2024-04-24 17:19:53 -07:00
Maxime Beauchemin e80d194b8f fix: improve change detection for GHAs (#27904) 2024-04-08 16:20:25 -07:00
Hugh A. Miles IIandPhillip Kelley-Dotson e3e37cb68f chore: switching out ConnectorRegistry references for DatasourceDAO (#20380)
* rename and move dao file

* Update dao.py

* add cachekey

* Update __init__.py

* change reference in query context test

* add utils ref

* more ref changes

* add helpers

* add todo in dashboard.py

* add cachekey

* circular import error in dar.py

* push rest of refs

* fix linting

* fix more linting

* update enum

* remove references for connector registry

* big reafctor

* take value

* fix

* test to see if removing value works

* delete connectregistry

* address concerns

* address comments

* fix merge conflicts

* address concern II

* address concern II

* fix test

Co-authored-by: Phillip Kelley-Dotson <pkelleydotson@yahoo.com>
2022-06-21 13:22:39 +02:00
Rob DiCiuccio 01d15f5368 feat(templating): Safer Jinja template processing (#11704)
* Enable safer Jinja template processing

* Allow JINJA_CONTEXT_ADDONS with SAFE_JINJA_PROCESSING

* Make template processor initialization less magical, refactor classes

* Consolidat Jinja logic, remove config flag in favor of sane defaults

* Restore previous ENABLE_TEMPLATE_PROCESSING default

* Add recursive type checking, update tests

* remove erroneous config file

* Remove TableColumn models from template context

* pylint refactoring

* Add entry to UPDATING.md

* Resolve botched merge conflict

* Update docs on running single python test

* Refactor template context checking to support engine-specific methods
2020-11-17 11:55:47 -08:00
Jesse Yang 4cfcaebb61 feat: rename TABLE_NAMES_CACHE_CONFIG to DATA_CACHE_CONFIG (#11509)
* feat: rename TABLE_NAMES_CACHE_CONFIG to DATA_CACHE_CONFIG

The corresponding cache will now also cache the query results.

* Slice use DATA_CACHE_CONFIG CACHE_DEFAULT_TIMEOUT

* Add test for default cache timeout

* rename FAR_FUTURE to ONE_YEAR_IN_SECS
2020-11-13 22:35:10 -08:00
Jesse Yang 634676d467 refactor: use contextmanager for event_logger decorators (#11222) 2020-10-14 10:44:06 -07:00
John BodleyandJohn Bodley b48dd4b7d9 chore: Using cache factory method (#10887)
Co-authored-by: John Bodley <john.bodley@airbnb.com>
2020-09-15 12:48:19 -07:00
Daniel Vaz Gaspar d81f720502 [thumbnails] API and celery task for dashboards and charts (#8947) 2020-04-15 09:40:14 +01:00
Jianchao Yang c36a7e3ada chore: allow webpack-dev-server proxy to any destination (#9296)
One of the pain points in developing Superset frontend code is the lack
of testing data. Local installation often do not have enough examples
setup to test all edge cases.

This change allows `webpack-dev-server` to proxy to any remote Superset
service, but the same time replaces frontend asset references in HTML
with links to local development version. This allows developers to test
with production data locally, tackling edge cases all while maintaining
the productivity of editing the code locally.
2020-03-17 15:37:07 -07:00
Daniel Vaz Gaspar 0ed0031412 [jinja_context] Fix, allow for app factory pattern (#8693)
Better app factory pattern on jinja context and introduces tests for building docs
2019-12-03 09:42:57 +00:00
Craig Rueda e490414484 Flask App factory PR #1 (#8418)
* First cut at app factory

* Setting things back to master

* Working with new FLASK_APP

* Still need to refactor Celery

* CLI mostly working

* Working on unit tests

* Moving cli stuff around a bit

* Removing get in config

* Defaulting test config

* Adding flask-testing

* flask-testing casing

* resultsbackend property bug

* Fixing up cli

* Quick fix for KV api

* Working on save slice

* Fixed core_tests

* Fixed utils_tests

* Most tests working - still need to dig into remaining app_context issue in tests

* All tests passing locally - need to update code comments

* Fixing dashboard tests again

* Blacking

* Sorting imports

* linting

* removing envvar mangling

* blacking

* Fixing unit tests

* isorting

* licensing

* fixing mysql tests

* fixing cypress?

* fixing .flaskenv

* fixing test app_ctx

* fixing cypress

* moving manifest processor around

* moving results backend manager around

* Cleaning up __init__ a bit more

* Addressing PR comments

* Addressing PR comments

* Blacking

* Fixes for running celery worker

* Tuning isort

* Blacking
2019-11-20 15:47:06 +00:00
Will Barrett e4ca44e95f Use config[] not config.get() (#8454)
* Typo fix in CONTRIBUTING.md

* Alter references to config.get('FOO') to use preferred config['FOO']

* Set missing configuration constants in superset/config.py

* Misc. CI fixes

* Add type annotation for FEATURE_FLATGS
2019-10-30 16:19:16 -07:00
John Bodley 9fc37ea9f1 [ci] Deprecate flake8 (#8409)
* [ci] Deprecate flake8

* Addressing @villebro's comments
2019-10-18 14:44:27 -07:00
John Bodley edec8745b8 Revert "[init] Setting up cache before registering blueprints (#7992)" (#8005)
This reverts commit c6867d22b9.
2019-10-06 13:31:00 -07:00
John Bodley 762edf430b [talisman] Enforcing HTTP for status checks (#8214) 2019-09-12 15:54:57 -07:00
ericandrewmeadows ae0dc30c0a Fix to Werkzeug ProxyFix; expose ProxyFix configuration items (#8117)
* Fix to werkzeug proxy; expose additional configuration items

* Forced to all x-forwarded configurations ON; black done

* added comments related to x_port after testing

* Updated UPDATING.md

* Removed accidental notebook; added *.ipynb to gitignore

* Delete Untitled-checkpoint.ipynb
2019-09-04 10:21:13 -07:00
Rob DiCiuccio 7595d9e5fd [SQL Lab] Async query results serialization with MessagePack and PyArrow (#8069)
* Add support for msgpack results_backend serialization

* Serialize DataFrame with PyArrow rather than JSON

* Adjust dependencies, de-lint

* Add tests for (de)serialization methods

* Add MessagePack config info to Installation docs

* Enable msgpack/arrow serialization by default

* [Fix] Prevent msgpack serialization on synchronous queries

* Add type annotations
2019-08-27 14:23:40 -07:00
Dave Smith 6dc760a054 Add LogConfigurator, and add logging for CSV export (#8085)
* Add LogConfigurator, and add logging for CSV export

* tweak for PR feedback

* fix linter issue
2019-08-27 13:22:18 -07:00
Dave Smith 9233a63a16 Event logger config takes instance instead of class (#7997)
* allow preconfigured event logger instance; deprecate specifying class

* add func docs and simplify conditions

* modify docs to reflect EVENT_LOGGER cfg change

* commit black formatting fixes and license header

* add type checking, fix other pre-commit failues

* remove superfluous/wordy condition

* fix flake8 failure

* fix new black failure

* dedent warning msg; use f-strings
2019-08-08 13:47:18 -07:00
John Bodley c6867d22b9 [init] Setting up cache before registering blueprints (#7992)
* [init] Setting up cache before registering blueprints

* Update __init__.py
2019-08-06 14:45:39 -07:00
Daniel Vaz Gaspar 1ab04190cd [log] New, make action log configurable and generic (#7705)
* [log] New, make action log configurable and generic

* [log] Fix, missing apache license

* [log] Fix, user_id is a required parameter on event logs

* [log] Fix, Rename Action to Event

* [log] Fix, flake8

* [logger] Change all log_this decorators to new abstract one

* [logger] [docs] Simple docs to show how to override the event log

* [style] Fix, single quote to double quote

* [style] Fix, single quote to double quote
2019-07-08 09:38:12 -07:00
John Bodley 5c58fd1802 [format] Using Black (#7769) 2019-06-25 13:34:48 -07:00
Maxime Beauchemin eb4293654e [FAB] set AppBuilder to update_perms=False (#7561)
* [FAB] set AppBuilder to update_perms=False

Upon start, by default, FAB tries to go and update the permission list
in the database based on the list of views, models and menu items that
exist in the code.

Really this should happen once per deployment/upgrade and
not in module scope, so we have `superset init` for this.

The intent was always to set to False by default, but I think we forgot
to add this flag back in
https://github.com/apache/incubator-superset/pull/7323

* Add superset init to tox
2019-06-01 10:19:49 -07:00
Craig Rueda 21a467094b Talisman config (#7529)
* Making Talisman configurable

* Fixing double quotes

* Fixing flake8

* Removing default
2019-05-16 22:55:59 -05:00
John Bodley a4392c8fcd [security] Adding Flask-Talisman (#7443) 2019-05-13 17:08:24 -07:00
Craig Rueda c8bb7e0fe4 Quick fix to address deadlock issue (#7434) 2019-05-02 12:45:15 -07:00
Daniel Vaz Gaspar 06c4610e8e Bump FAB to 2.0.0 (#7323)
* Bump FAB to 2.0.0

* [tests] whitelist SecurityApi login and refresh endpoints

* [style] Fix, C812 missing trailing commas

* [security] Remove SUPERSET_UPDATE_PERMS flag

Registering sources needs to be performed after the views are
initialized on UPDATE_PERMS=False configuration

* [docs] New, FAB_UPDATE_PERMS and flask fab cli

* [docs] Fix, db upgrade needs to come first, create-admin needs a db

* [cli] New, superset init bootstraps all permissions for FAB and Superset

* [style] Fix, flakes
2019-04-30 09:01:18 -07:00
Maxime Beauchemin 0c3e46f8ae Deprecate npm run backend-sync and related logic (#7211) 2019-04-10 08:46:05 -07:00
John Bodley f13e0a8d58 Update __init__.py (#7166) 2019-04-01 09:50:20 -07:00
Maxime Beauchemin 3ae02d1a54 Allow for dynamic feature flags (#6808)
* Allow for dynamic feature flags

Giving more control over feature flags, allowing administrator to define
custom logic around whether features are enabled for particular users /
roles.

The exposed function can be used for things like:
* progressive rollout of features (1%, 5%, 50%, 100%)
* experimentation
* role-based feature affectation (only admins see a particular feature)

* fix build

* Addressing comments

* Addressing @hughhh's comments
2019-02-27 15:11:38 -08:00
John Bodley e1b907783a [wtforms] Using wtforms-json which supports None (#5445) 2019-02-04 09:35:40 -08:00
Christine Chambers 19b3753d2c Move feature flag utility function into superset/__init__.py 2019-02-01 13:35:50 -08:00
Christine Chambers b70a9ae524 Merge default feature flags and user defined feature flags
- Rename the default feature flags key in `config.py` to DEFAULT_FEATURE_FLAGS
- Merge default feature flags with user defined ones allowing the latter to overwrite the former
- Expose feature_flags for both server and client to use
- Add a utility method for checking whether a feature flag is on on server side
2019-01-30 22:23:27 -08:00
Maxime Beauchemin 1dd4d7a587 Apply ASF licenses throughout the code base (#5800)
* Add license headers

* reabased

* lint

* Removing licenses from vendors folder
2019-01-15 15:53:27 -08:00
Maxime Beauchemin e46ab4db52 Bump Flask, bleach and sync pip-compile (#6239)
* sync pip-compile

* Support Flask >= 1.0.0

* pylint

* Trying something else to fix pylint
2018-10-31 16:58:50 -07:00
Maxime Beauchemin bbfd69a138 [utils.py] gathering/refactoring into a "utils/" folder (#6095)
* [utils] gathering/refactoring into a "utils/" folder

Moving current utils.py into utils/core.py and moving other *util*
modules under this new "utils/" as well.

Following steps include eroding at "utils/core.py" and breaking it down
into smaller modules.

* Improve tests

* Make loading examples in scope for tests

* Remove test class attrs examples_loaded and requires_examples
2018-10-16 17:59:34 -07:00
timifasubaa 46c86672c8 remove utf8 declaration (#6096) 2018-10-15 11:53:24 -07:00
timifasubaa dd9eeda03e remove future (#6065) 2018-10-13 09:39:04 -07:00
Krist Wongsuphasawat 325e7c03b8 [bugfix] De-dup <script> tags. #5883 (#5890)
* Fix adding duplicate script tags.

* add more empty lines

* rename function
2018-09-18 17:50:30 -07:00