* Allow touch action on dashboard grid
* Deactivate touch when resizing widgets
* Disable touch interactions on Plotly
* Update Plotly and use dragmode: false
* Remove autoFocus from ItemsList search
* Fix spacing for queries and dashboard favorites
* Make sure admin pages don't go over 100% width
* Fix: when default value is false make sure it's still stringified.
* Fix: when extra field is of type boolean make sure it's different from default value to decide if it's open.
* Use isNil to check the default value
* Restyled by prettier (#4704)
Co-authored-by: restyled-io[bot] <32688539+restyled-io[bot]@users.noreply.github.com>
* Realign Data Source and Refresh Schedule
* Adjust execution status height
* Rewrite Query Page Header flexibility
* Remove margin from QuerySource parameters
* Cypress: Visit visualization instead of click in tab
* Fix wrong css class name in dashboard-grid
* add meta information to executing queries
* add a table for running queries
* add pagination to queues table
* sort the queues table
* add pagination to all tables
* remove legacy session identifier support
* remove redundant test
* redirect to login to support any invalid session identifiers
* be more specific with caught errors
* reject empty values in DynamicForm
* don't submit form values if they are empty (unless they are
intentionally set to empty string)
* set empty values to null to clear out data source option in the model
* check explicitly for null
* Move each hook to own file; move hooks and components to own folders
* Update URL and timer only when refresh rate changes
* Skip dashboard refresh if previous refresh is still running
* Fix test
* Add redshift role use option
* Update requirements for SSL socket wrap issue fixes
* Split Redshift class into User and IAM logins
* Update incorrect register
* Change type names
* Correct class name to inherit
* Render IAM redshift image and field order correct
* Update redash/query_runner/pg.py
Co-Authored-By: Arik Fraimovich <arik@arikfr.com>
* Update redash/query_runner/pg.py
Co-Authored-By: Arik Fraimovich <arik@arikfr.com>
* Remove need for specified urllib - specify pyopenssl is enough
* Pyopenssl back down to 19.0.0
Co-authored-by: Arik Fraimovich <arik@arikfr.com>
* Migrate router and <app-view> to React: skeleton
* Update layout on route change
* Start moving page routes from angular to react
* Move page routes to react except of public dashboard and visualization embed)
* Move public dashboard and visualization embed routes to React
* Replace $route/$routeParams usages
* Some cleanup
* Replace AngularJS $location service with implementation based on history library
* Minor fix to how ApplicationView handles route change
* Explicitly use global layout for each page instead of handling related stuff in ApplicationArea component
* Error handling
* Remove AngularJS and related dependencies
* Move Parameter factory method to a separate file
* Fix CSS (replace custom components with classes)
* Fix: keep other url parts when updating location partially; refine code
* Fix tests
* Make router work in multi-org mode (respect <base> tag)
* Optimzation: don't resolve route if path didn't change
* Fix search input in header; error handling improvement (handle more errors in pages; global error handler for unhandled errors; dialog dismiss 'unhandled rejection' errors)
* Fix page keys; fix navigateTo calls (third parameter not available)
* Use relative links
* Router: ignore location REPLACE events, resolve only on PUSH/POP
* Fix tests
* Remove unused jQuery reference
* Show error from backend when creating Destination
* Remove route.resolve where not necessary (used constant values)
* New Query page: keep state on saving, reload when creating another new query
* Use currentRoute.key instead of hard-coded keys for page components
* Tidy up Router
* Tidy up location service
* Fix tests
* Don't add parameters changes to browser's history
* Fix test (improved fix)
Co-authored-by: Gabriel Dutra <nesk.frz@gmail.com>
* enforce hard limits on non-responsive work horses by workers
* move differences from Worker to helper methods to help make the specialization clearer
* move HardLimitingWorker to redash/tasks
* move schedule.py to /tasks
* explain the motivation for HardLimitingWorker
* pleasing CodeClimate
* pleasing CodeClimate
* port query execution to RQ
* get rid of argsrepr
* avoid star imports
* allow queries to be cancelled in RQ
* return QueryExecutionErrors as job results
* fix TestTaskEnqueue and QueryExecutorTests
* remove Celery monitoring
* get rid of QueryTask and use RQ jobs directly (with a job serializer)
* Revert "remove Celery monitoring"
This reverts commit 37a74ea403.
* reduce occurences of the word 'task'
* use Worker, Queue and Job instead of spreading names that share behavior details
* remove locks for failed jobs as well
* did I not commit that colon? oh my
* push the redis connection to RQ's stack on every request to avoid verbose connection setting
* use a connection context for tests
* remove Celery monitoring
* 👋 Celery
* remove Celery from Cypress
* black it up
* some more black
* return all started/queued job ids (for future monitoring
* Restyled by prettier (#4522)
* remove celery.py
* remove some frontend residuals that reappeared after a merge
Co-authored-by: restyled-io[bot] <32688539+restyled-io[bot]@users.noreply.github.com>
* Allow executing query with either view_query or execute_query permissions.
* Render AuthHeader according to permissions.
* Don't return dashboards where you only have access to textbox widget.
Closes#4099.