Commit Graph

636 Commits

Author SHA1 Message Date
Daniel Vaz Gaspar
e048c07fb5 fix: deprecate approve and request_access endpoint (#22022)
Co-authored-by: Michael S. Molina <70410625+michael-s-molina@users.noreply.github.com>
2022-11-09 10:36:26 -05:00
Daniel Vaz Gaspar
dd919bc176 fix: disallow users from viewing other user's profile on config (#21302) 2022-10-06 14:45:06 -04:00
Hugh A. Miles II
9432c62ec1 fix: move columns to datasource object for bootstrap data (#20203)
* move columns to datasource

* address concerns
2022-05-31 23:37:49 +02:00
Hugh A. Miles II
7a2eb8b602 add columns for bootstrap_data (#20134) 2022-05-26 11:26:11 -04:00
Hugh A. Miles II
660af409a4 feat: Save column data into json_metadata for all Query executions (#20059)
* add save_metadata function to QueryDAO

* use set_extra_json_key

* added test

* Update queries_test.py

* fix pylint

* add to session

* add to session

* refactor

* forgot the return
2022-05-18 13:11:14 -04:00
John Bodley
449d08b25e fix: Refactor SQL username logic (#19914)
Co-authored-by: John Bodley <john.bodley@airbnb.com>
2022-05-12 21:03:05 -07:00
Beto Dealmeida
f2881e5bbd feat: RLS for SQL Lab (#19999)
* feat: RLS for SQL Lab

* Small fixes

* Pass username to security manager

* Update docstrings

* Add tests

* Remove type from docstring
2022-05-12 11:03:01 -07:00
Zef Lin
7b7de9592b feat: deprecate /superset/testconn and migrate to api v1 (#20002)
* feat: deprecate /superset/testconn and migrate to api v1

* bring back core_tests
2022-05-10 21:26:25 +01:00
Daniel Vaz Gaspar
87a4379d0a feat: deprecate /superset/validate_sql_json migrate to api v1 (#19935)
* feat: deprecate /superset/validate_sql_json migrate to api v1

* use new error handling

* migrate SQLLAb frontend and add tests

* debug test

* debug test

* fix frontend test on sqllab

* fix tests

* fix frontend test on sqllab

* fix tests

* fix tests

* fix tests

* fix tests
2022-05-10 21:25:39 +01:00
Elizabeth Thompson
060b5c0e17 chore: remove druid datasource from the config (#19770)
* remove druid datasource from the config

* remove config related references to DruidDatasource

* Update __init__.py

* Update __init__.py

* Update manager.py

* remove config related references to DruidDatasource

* raise if instance type is not valid
2022-05-04 12:48:48 -07:00
Daniel Vaz Gaspar
4fdf230a56 feat: deprecate /superset/extra_table_metadata migrate to api v1 (#19921)
* feat: deprecate /superset/extra_table_metadata migrate to api v1

* use can_read to table_extra_metadata

* troubleshoot sqlite

* fix test

* fix test

* fix test

* fix frontend test on sqllab
2022-05-04 14:55:52 +01:00
Beto Dealmeida
1ebdaac487 fix: memoize primitives (#19930) 2022-05-02 14:50:56 -07:00
Daniel Vaz Gaspar
85b0ef8526 feat: deprecate old API on core superset fave_dashboards (#19754)
* feat: deprecate old API on core superset fave_dashboards

* fix js lint

* remove unused type
2022-05-02 16:24:48 +01:00
Daniel Vaz Gaspar
f06db796b5 fix: small cleanup for created by me dashboards API (#19755) 2022-04-20 12:11:38 +01:00
Cedric Gampert
5134c63ae2 fix: dashboard standalone class not added when parameter set (#16619)
Co-authored-by: Ville Brofeldt <ville.v.brofeldt@gmail.com>
2022-04-20 10:03:59 +03:00
smileydev
5fc0651aab fix(data-upload): make to change err message (#19430) 2022-04-13 12:24:13 -07:00
Daniel Vaz Gaspar
d6d2777ada feat: deprecate old API and create new API for dashes created by me (#19434)
* feat: deprecate old API and create new API for dashes created by me

* add tests

* fix previous test

* fix test and lint

* fix sqlite test

* fix lint

* fix lint

* lint

* fix tests

* fix tests

* use dashboards get list instead

* clean unnecessary marshmallow schema

* Update superset/views/core.py

Co-authored-by: Ville Brofeldt <33317356+villebro@users.noreply.github.com>

* lint

Co-authored-by: Ville Brofeldt <33317356+villebro@users.noreply.github.com>
2022-04-08 09:05:22 +01:00
Craig Rueda
f64d654de3 chore(database): Creating helper make_url_safe to wrap potential errors (#19526)
* Creating helper make_url_safe to wrap potential errors

* Fixing imports

* Fixing imports again

* Adding comment

* Linting

* Fixing test

* Fixing test again...

* Fixing import
2022-04-05 11:17:30 -07:00
Yongjie Zhao
d954c3df86 fix: can't sync temporal flag on virtual table (#19366) 2022-04-01 16:40:50 +08:00
Phillip Kelley-Dotson
0968f86584 chore: remove deprecated config keys and endpoints code 2.0 (#19361)
* remove depracted keys and associated methods

* remove api methods and tablemodel views

* remove deprecated api and unsued vars

* reremove schedules

* readd code

* fix pylint

* run black

* remove test

* core select start test

* add suggested changes
2022-03-29 13:23:05 -07:00
Ville Brofeldt
a619cb4ea9 chore: upgrade black (#19410) 2022-03-29 20:03:09 +03:00
Ville Brofeldt
f4b71abb22 feat: introduce hashids permalink keys (#19324)
* feat: introduce hashids permalink keys

* implement dashboard permalinks

* remove shorturl notice from UPDATING.md

* lint

* fix test

* introduce KeyValueResource

* make filterState optional

* fix test

* fix resource names
2022-03-24 21:53:09 +02:00
Daniel Vaz Gaspar
f37fc1a7f0 chore: bump majors on celery and Flask (#19168)
* chore: bump celery, Flask, flask-jwt-extended, pyJWT

* fix pyJWT breaking change

* fix pyJWT breaking change 2

* test

* fixed test

* fixed test

* fixed test

* revert since mypy won't pick the correct signature

* lint 1

* fix test

* fix test

* docs and celery config migration

* bump FAB to 4.0.0rc3, remove AUTH_STRICT_RESPONSE_CODES

* update docs for new celery config keys

* downgrade celery to 5.2.2

* ref FAB to final 4.0.0 release

* remove conflict left over
2022-03-24 09:16:53 +00:00
Daniel Vaz Gaspar
af91a13670 chore: remove PUBLIC_ROLE_LIKE_GAMMA deprecated config key (#19274) 2022-03-21 14:57:38 +00:00
David Aaron Suddjian
97abc28a1f chore!: remove ENABLE_REACT_CRUD_VIEWS feature flag (permanently enable) (#19231)
* remove ENABLE_REACT_CRUD_VIEWS feature flag

* docs

* deal with problematic tests

* empty test suite

* skip test

* test conditions changed

* removing the tests instead of skipping
2022-03-18 14:00:23 -07:00
Jesse Yang
92cd0a18e6 chore: upgrade mypy (#19227) 2022-03-17 10:35:53 -07:00
Craig Rueda
4b34817b19 feat(ui): Adding manifest prefix config (#19141)
* Adding manifest prefix config

* Fixing broken tests

* Fixing import

* Adding prefix for remaining assets

* Changing static prefix strategy

* Fixing DST test

* Fixing up formatting

* Fixing up async_query_manager.py types
2022-03-17 08:58:48 -07:00
cccs-Dustin
02ef9ca4cd feat(sqllab): Add a configuration option to disable data preview (#19104) 2022-03-17 15:22:57 +02:00
Ville Brofeldt
b7a0559aaf feat: add permalink to dashboard and explore (#19078)
* rename key_value to temporary_cache

* add migration

* create new key_value package

* add commands

* lots of new stuff

* fix schema reference

* remove redundant filter state from bootstrap data

* add missing license headers

* fix pylint

* fix dashboard permalink access

* use valid json mocks for filter state tests

* fix temporary cache tests

* add anchors to dashboard state

* lint

* fix util test

* fix url shortlink button tests

* remove legacy shortner

* remove unused imports

* fix js tests

* fix test

* add native filter state to anchor link

* add UPDATING.md section

* address comments

* address comments

* lint

* fix test

* add utils tests + other test stubs

* add key_value integration tests

* add filter box state to permalink state

* fully support persisting url parameters

* lint, add redirects and a few integration tests

* fix test + clean up trailing comma

* fix anchor bug

* change value to LargeBinary to support persisting binary values

* fix urlParams type and simplify urlencode

* lint

* add optional entry expiration

* fix incorrect chart id + add test
2022-03-17 01:15:52 +02:00
John Bodley
26486d01c1 chore: Remove legacy SIP-15 interim logic/flags (#18936)
* chore: Remove legacy SIP-15 logic

* Update ab9a9d86e695_deprecate_time_range_endpoints.py

* Update UPDATING.md

* Update UPDATING.md

* Update UPDATING.md

Co-authored-by: John Bodley <john.bodley@airbnb.com>
2022-03-04 09:15:36 +13:00
Ville Brofeldt
bd63a1bd98 fix(chart): deprecate persisting url_params (#18960)
* fix(chart): deprecate peristing url_params

* remove duplicated backend logic

* use omitBy

* simplify omit
2022-03-02 07:44:36 +02:00
Yongjie Zhao
4c16586067 fix(key-value): lost url_params after long-url feature (#18846) 2022-02-22 21:50:50 +08:00
Michael S. Molina
f03b4dbedb feat: Improves key expiration handling in Explore (#18624)
* feat: Improves key expiration handling in Explore

* Sets use_slice_data equals true

* Shows toast when recovering
2022-02-09 13:20:21 -03:00
Kamil Gabryjelski
830f2e71d3 feat(explore): Allow using time formatter on temporal columns in data table (#18569)
* feat(explore): Allow using time formatter on temporal columns in data table

* Fix data table loading

* Return colnames and coltypes from results request

* Fix types

* Fix tests

* Fix copy button

* Fix df is none

* Fix test

* Address comments

* Move useTimeFormattedColumns out of useTableColumns

* Make reducer more readable
2022-02-09 10:29:11 +01:00
Michael S. Molina
4b61c76742 fix: Explore long URL problem (#18181)
* fix: Explore long URL problem

* Fixes lint problems

* Fixes default value

* Removes duplicated test

* Fixes share menu items

* Fixes tests

* Debounces form_data updates

* Rewrites debounce function

* Moves history update outside the functional component

* Mocks lodash function in tests

* Fixes Cypress test

* Fixes Cypress test #2
2022-01-28 17:42:16 -03:00
Yongjie Zhao
20b4ae1ef9 fix: null value and empty string in filter (#18171) 2022-01-27 22:58:06 +08:00
David Aaron Suddjian
4ad5ad045a feat: embedded dashboard core (#17530)
* feat(dashboard): embedded dashboard UI configuration (#17175) (#17450)

* setup embedded provider

* update ui configuration

* fix test

* feat: Guest token (for embedded dashboard auth) (#17517)

* generate an embed token

* improve existing tests

* add some auth setup, and rename token

* fix the stuff for compatibility with external request loaders

* docs, standard jwt claims, tweaks

* black

* lint

* tests, and safer token decoding

* linting

* type annotation

* prettier

* add feature flag

* quiet pylint

* apparently typing is a problem again

* Make guest role name configurable

* fake being a non-anonymous user

* just one log entry

* customizable algo

* lint

* lint again

* 403 works now!

* get guest token from header instead of cookie

* Revert "403 works now!"

This reverts commit df2f49a6d4.

* fix tests

* Revert "Revert "403 works now!""

This reverts commit 883dff38f1.

* rename method

* correct import

* feat: entry for embedded dashboard (#17529)

* create entry for embedded dashboard in webpack

* add cookies

* lint

* token message handshake

* guestTokenHeaderName

* use setupClient instead of calling configure

* rename the webpack chunk

* simplified handshake

* embedded entrypoint: render a proper app

* make the embedded page accept anonymous connections

* format

* lint

* fix test
# Conflicts:
#	superset-frontend/src/embedded/index.tsx
#	superset/views/core.py

* lint

* Update superset-frontend/src/embedded/index.tsx

Co-authored-by: David Aaron Suddjian <1858430+suddjian@users.noreply.github.com>

* comment out origins checks

* move embedded for core to dashboard

* pylint

* isort

Co-authored-by: David Aaron Suddjian <aasuddjian@gmail.com>
Co-authored-by: David Aaron Suddjian <1858430+suddjian@users.noreply.github.com>

* feat: Authorizing guest access to embedded dashboards (#17757)

* helper methods and dashboard access

* guest token dashboard authz

* adjust csrf exempt list

* eums don't work that way

* Remove unnecessary import

* move row level security tests to their own file

* a bit of refactoring

* add guest token security tests

* refactor tests

* clean imports

* variable names can be too long apparently

* missing argument to get_user_roles

* don't redefine builtins

* remove unused imports

* fix test import

* default to global user when getting roles

* missing import

* mock it

* test get_user_roles

* infer g.user for ease of tests

* remove redundant check

* tests for guest user security manager fns

* use algo to get rid of warning messages

* tweaking access checks

* fix guest token security tests

* missing imports

* more tests

* more testing and also some small refactoring

* move validation out of parsing

* fix dashboard access check again

* add more test

Co-authored-by: Lily Kuang <lily@preset.io>

* feat: Row Level Security rules for guest tokens (#17836)

* helper methods and dashboard access

* guest token dashboard authz

* adjust csrf exempt list

* eums don't work that way

* Remove unnecessary import

* move row level security tests to their own file

* a bit of refactoring

* add guest token security tests

* refactor tests

* clean imports

* variable names can be too long apparently

* missing argument to get_user_roles

* don't redefine builtins

* remove unused imports

* fix test import

* default to global user when getting roles

* missing import

* mock it

* test get_user_roles

* infer g.user for ease of tests

* remove redundant check

* tests for guest user security manager fns

* use algo to get rid of warning messages

* tweaking access checks

* fix guest token security tests

* missing imports

* more tests

* more testing and also some small refactoring

* move validation out of parsing

* fix dashboard access check again

* rls rules for guest tokens

* test guest token rls rules

* more flexible rls rules

* lint

* fix tests

* fix test

* defaults

* fix some tests

* fix some tests

* lint

Co-authored-by: Lily Kuang <lily@preset.io>

* SupersetClient guest token test

* Apply suggestions from code review

Co-authored-by: Lily Kuang <lily@preset.io>

Co-authored-by: Lily Kuang <lily@preset.io>
2022-01-25 16:41:32 -08:00
Kamil Gabryjelski
e632193eb0 feat(explore): more toast feedback on user actions in Explore (#18108)
* feat(explore): add toasts feedback when user copies chart url

* Show toast message when updating chart properties

* Change toast type to success when saving chart

* Use success toast from props

* Fix tests

* Use withToasts instead of dispatch

* Use PropertiesModalProps instead of any
2022-01-24 11:42:24 +01:00
Daniel Vaz Gaspar
3a58424e62 fix: API logger output (#17981)
* fix: Improve logger messages on core API

* revert package.json change

* fix

* black

* improve log message

* improve message
2022-01-11 09:30:20 +00:00
Beto Dealmeida
b7707e8ff7 feat: bypass cache on screenshots for alerts (#17695)
* feat: bypass cache on screenshots for alerts

* Update existing tests

* Add backend test

* Add frontend test
2021-12-22 08:26:38 -08:00
Elizabeth Thompson
b82da5c016 accept null params for validation (#17788) 2021-12-17 10:52:00 -08:00
Ville Brofeldt
c4b04952d0 feat: customize recent activity access (#17589)
* feat: customize recent activity access

* address comments

* fix and add tests

* add alert assertion and UPDATING.md entry

* replace .get_id() with .id

* fix updating comment

* update config name
2021-12-08 11:30:23 +02:00
Craig Rueda
ac76defc05 chore(datasets): Sanitizing /save response (#17579) 2021-11-29 20:07:06 -08:00
Daniel Vaz Gaspar
69f9ee8f5e fix: feature flags typing (#15254)
* fix: feature flags typing

* fix tests

* add note in UPDATING.md

* fix frontend

* also move SCHEDULED_QUERIES to top level

* fix test

Co-authored-by: Ville Brofeldt <ville.v.brofeldt@gmail.com>
2021-11-19 15:56:16 +00:00
Bruno FERNANDO
c54027a0f9 fix(views/core): iteration over None type (#14305)
* fix(views/core): iteration over None type

* fix(views/core): apply suggestion
2021-11-17 12:44:36 +02:00
ofekisr
45480f7ae5 refactor move ChartDataResult enums to common (#17399) 2021-11-11 11:41:37 +02:00
AAfghahi
8a27c6760d change to 422 for stop query (#17292) 2021-10-29 16:34:41 -07:00
Shiva Raisinghani
ef3afbde82 refactor: Repeated boilerplate code between upload to database forms (#16756)
* abstract boilerplate code into class and rename csv to file

* add db migration

* fix some stuff

* more renaming of csv to file

* rename in translations

* update down revision

* update down revision

* bump chart version

* switch to alter column name approach in db migration

* fix db migration for MySQL

* db migration conflict
2021-10-25 13:53:06 +03:00
Yongjie Zhao
4c708af710 fix: avoid filters containing null value (#17168) 2021-10-21 18:20:38 +08:00
Hugh A. Miles II
959fd763a8 fix: Owners selection in dataset edit UX (#17063)
* boilerplate

* update owner select component

* this is working

* update onchange

* refactorig

* you need to useMemo or things break

* update test

* prettier

* move logic into bootstrap data endpoint

* address concerns

* oops

* oops

* fix test
2021-10-12 20:27:56 -04:00