Make Your Company Data Driven. Connect to any data source, easily visualize, dashboard and share your data.
963 matches across 12 categories. Click a row to expand file-level details.
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | bin/release_manager.py | 130 | def update_release_commit_sha(release, commit_sha): |
| LOW | viz-lib/README.md | 139 | function wrapComponentWithSettings(WrappedComponent) { |
| LOW | viz-lib/src/visualizations/visualizationsSettings.tsx | 53 | export function updateVisualizationsSettings(options: any) { |
| LOW | viz-lib/src/visualizations/registeredVisualizations.ts | 56 | function validateVisualizationConfig(config: any) { |
| LOW | viz-lib/src/visualizations/chart/plotly/updateData.ts | 23 | function defaultFormatSeriesTextForPie(item: any) { |
| LOW | …ib/src/visualizations/chart/plotly/customChartUtils.ts | 22 | export function createCustomChartRenderer(code: any, logErrorsToConsole = false) { |
| LOW | …ib/src/visualizations/chart/Editor/GeneralSettings.tsx | 11 | function getAvailableColumnMappingTypes(options: any) { |
| LOW | …ib/src/visualizations/chart/Editor/GeneralSettings.tsx | 65 | function mappedColumnsToColumnMappings(mappedColumns: any) { |
| LOW | …ib/src/visualizations/chart/Editor/GeneralSettings.tsx | 89 | function handleGlobalSeriesTypeChange(globalSeriesType: any) { |
| LOW | …ib/src/visualizations/chart/Editor/GeneralSettings.tsx | 101 | function handleColumnMappingChange(column: any, type: any) { |
| LOW | …ib/src/visualizations/chart/Editor/GeneralSettings.tsx | 109 | function handleLegendPlacementChange(value: any) { |
| LOW | viz-lib/src/visualizations/shared/columnUtils.ts | 28 | export function getColumnContentAlignment(type: any) { |
| LOW | viz-lib/src/visualizations/map/Editor/StyleSettings.tsx | 64 | function getCustomIconOptionFields(iconShape: any) { |
| LOW | viz-lib/src/visualizations/sunburst/initSunburst.ts | 29 | function buildNodesFromHierarchyData(data: any) { |
| LOW | viz-lib/src/lib/referenceCountingCache.ts | 3 | export default function createReferenceCountingCache({ cleanupDelay = 2000 } = {}) { |
| LOW | viz-lib/src/lib/chooseTextColorForBackground.ts | 4 | export default function chooseTextColorForBackground(backgroundColor: any, textColors = ["#ffffff", "#333333"]) { |
| LOW | tests/test_monitor.py | 7 | def test_rq_job_ids_uses_rq_redis_connection(): |
| LOW | tests/test_utils.py | 43 | def test_uses_current_request_port(self): |
| LOW | tests/test_utils.py | 49 | def test_uses_current_request_schema(self): |
| LOW | tests/test_utils.py | 55 | def test_skips_port_for_default_ports(self): |
| LOW | tests/test_utils.py | 75 | def test_ignores_non_prefixed_values(self): |
| LOW | tests/test_utils.py | 78 | def test_takes_prefixed_values(self): |
| LOW | tests/test_utils.py | 141 | def test_get_column_types_from_dataframe(mock_dataframe): |
| LOW | tests/test_handlers.py | 15 | def test_returns_content_when_authenticated(self): |
| LOW | tests/test_handlers.py | 22 | def test_responds_with_success_for_signed_in_user(self): |
| LOW | tests/test_handlers.py | 30 | def test_redirects_for_nonsigned_in_user(self): |
| LOW | tests/test_handlers.py | 34 | def test_redirects_for_invalid_session_identifier(self): |
| LOW | tests/test_handlers.py | 60 | def test_redirect_to_login_when_not_authenticated(self): |
| LOW | tests/test_handlers.py | 65 | def test_returns_content_when_authenticated(self): |
| LOW | tests/test_handlers.py | 72 | def test_returns_data_for_super_admin(self): |
| LOW | tests/test_handlers.py | 82 | def test_redirects_non_authenticated_user(self): |
| LOW | tests/test_handlers.py | 203 | def test_submit_empty_password(self): |
| LOW | tests/test_handlers.py | 211 | def test_user_already_loggedin(self): |
| LOW | tests/test_handlers.py | 217 | def test_correct_user_and_password_when_password_login_disabled(self): |
| LOW | tests/test_handlers.py | 102 | def test_get_login_form_remote_auth(self): |
| LOW | tests/test_handlers.py | 118 | def test_submit_non_existing_user(self): |
| LOW | tests/test_handlers.py | 124 | def test_submit_correct_user_and_password(self): |
| LOW | tests/test_handlers.py | 136 | def test_submit_case_insensitive_user_and_password(self): |
| LOW | tests/test_handlers.py | 151 | def test_submit_correct_user_and_password_and_remember_me(self): |
| LOW | tests/test_handlers.py | 166 | def test_submit_correct_user_and_password_with_next(self): |
| LOW | tests/test_handlers.py | 182 | def test_submit_incorrect_user(self): |
| LOW | tests/test_handlers.py | 188 | def test_submit_incorrect_password(self): |
| LOW | tests/test_handlers.py | 233 | def test_logout_when_not_loggedin(self): |
| LOW | tests/test_handlers.py | 239 | def test_logout_when_loggedin(self): |
| LOW | tests/test_configuration.py | 27 | def test_raises_exception_when_no_schema_set(self): |
| LOW | tests/test_configuration.py | 31 | def test_returns_dict_with_masked_secrets(self): |
| LOW | tests/test_configuration.py | 45 | def test_rejects_invalid_new_config(self): |
| LOW | tests/test_configuration.py | 48 | def test_fails_if_no_schema_set(self): |
| LOW | tests/test_configuration.py | 52 | def test_ignores_secret_placehodler(self): |
| LOW | tests/test_configuration.py | 61 | def test_doesnt_leave_leftovers(self): |
| LOW | tests/test_configuration.py | 71 | def test_works_for_schema_without_secret(self): |
| LOW | tests/test_migrations.py | 7 | def test_only_single_head_revision_in_migrations(): |
| LOW | tests/factories.py | 248 | def create_alert_subscription(self, **kwargs): |
| LOW | tests/factories.py | 307 | def create_visualization_with_params(self, **kwargs): |
| LOW | tests/test_authentication.py | 208 | def test_no_domain_allowed_for_org(self): |
| LOW | tests/test_authentication.py | 212 | def test_domain_not_in_org_domains_list(self): |
| LOW | tests/test_authentication.py | 217 | def test_domain_in_org_domains_list(self): |
| LOW | tests/test_authentication.py | 228 | def test_org_in_public_mode_accepts_any_domain(self): |
| LOW | tests/test_authentication.py | 234 | def test_user_not_in_domain_but_account_exists(self): |
| LOW | tests/test_authentication.py | 242 | def test_when_multi_org_enabled_and_org_exists(self): |
| 627 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | bin/release_manager.py | 120 | except Exception: |
| LOW | bin/release_manager.py | 162 | except Exception as ex: |
| MEDIUM | bin/release_manager.py | 143 | def update_release(version, build_filepath, commit_sha): |
| LOW | bin/get_changes.py | 31 | except Exception: |
| LOW | tests/query_runner/test_google_spreadsheets.py | 189 | except Exception: |
| MEDIUM | tests/query_runner/test_google_spreadsheets.py | 183 | def test_connect_succuess(self, mock_client, _mock_auth_default): |
| LOW | tests/handlers/test_query_results.py | 44 | except Exception as e: |
| LOW | redash/metrics/database.py | 41 | except Exception: |
| LOW | redash/tasks/alerts.py | 16 | except Exception: |
| LOW | redash/tasks/databricks.py | 17 | except Exception: |
| LOW | redash/tasks/databricks.py | 34 | except Exception: |
| LOW | redash/tasks/databricks.py | 44 | except Exception: |
| LOW | redash/tasks/databricks.py | 53 | except Exception: |
| MEDIUM | redash/tasks/databricks.py | 10 | def get_databricks_databases(data_source_id, redis_key): |
| MEDIUM | redash/tasks/databricks.py | 22 | def get_database_tables_with_columns(data_source_id, database_name, redis_key): |
| MEDIUM | redash/tasks/databricks.py | 39 | def get_databricks_tables(data_source_id, database_name): |
| MEDIUM | redash/tasks/databricks.py | 49 | def get_databricks_table_columns(data_source_id, database_name, table_name): |
| LOW | redash/tasks/general.py | 29 | except Exception: |
| LOW | redash/tasks/general.py | 60 | except Exception: |
| LOW | redash/tasks/general.py | 69 | except Exception as e: |
| LOW | redash/tasks/general.py | 87 | except Exception as e: |
| MEDIUM | redash/tasks/general.py | 55 | def send_mail(to, subject, html, text): |
| MEDIUM | redash/tasks/general.py | 65 | def test_connection(data_source_id): |
| MEDIUM | redash/tasks/general.py | 76 | def get_schema(data_source_id, refresh): |
| LOW | redash/tasks/queries/execution.py | 209 | except Exception as e: |
| LOW | redash/tasks/queries/maintenance.py | 103 | except Exception as e: |
| LOW | redash/tasks/queries/maintenance.py | 183 | except Exception: |
| LOW | redash/destinations/microsoft_teams_webhook.py | 110 | except Exception: |
| LOW | redash/destinations/hangoutschat.py | 92 | except Exception: |
| MEDIUM | redash/destinations/hangoutschat.py | 40 | def notify(self, alert, query, user, new_state, app, host, metadata, options): |
| LOW | redash/destinations/asana.py | 60 | except Exception as e: |
| LOW | redash/destinations/webhook.py | 52 | except Exception: |
| MEDIUM | redash/destinations/webhook.py | 29 | def notify(self, alert, query, user, new_state, app, host, metadata, options): |
| LOW | redash/destinations/discord.py | 66 | except Exception as e: |
| LOW | redash/destinations/mattermost.py | 52 | except Exception: |
| LOW | redash/destinations/chatwork.py | 60 | except Exception: |
| MEDIUM | redash/destinations/chatwork.py | 32 | def notify(self, alert, query, user, new_state, app, host, metadata, options): |
| LOW | redash/destinations/email.py | 53 | except Exception: |
| LOW | redash/destinations/webex.py | 226 | except Exception as e: |
| MEDIUM | redash/destinations/webex.py | 215 | def post_message(self, payload, headers): |
| LOW | redash/destinations/pagerduty.py | 78 | except Exception: |
| LOW | redash/destinations/slack.py | 57 | except Exception: |
| LOW | redash/destinations/datadog.py | 89 | except Exception as e: |
| LOW | redash/models/__init__.py | 221 | except Exception: |
| LOW | redash/models/__init__.py | 635 | except Exception as e: |
| LOW | redash/models/parameterized_query.py | 181 | except Exception: |
| LOW | redash/cli/users.py | 115 | except Exception as e: |
| LOW | redash/cli/users.py | 187 | except Exception as e: |
| LOW | redash/cli/organization.py | 43 | except Exception as e: |
| LOW | redash/cli/groups.py | 41 | except Exception as e: |
| LOW | redash/cli/groups.py | 74 | except Exception as e: |
| LOW | redash/cli/data_sources.py | 78 | except Exception as e: |
| MEDIUM | redash/cli/data_sources.py | 159 | print("Error: invalid configuration.") |
| LOW | redash/query_runner/d1.py | 116 | except Exception as e: |
| LOW | redash/query_runner/d1.py | 140 | except Exception as e: |
| MEDIUM | redash/query_runner/d1.py | 91 | def run_query(self, query, user): |
| LOW | redash/query_runner/corporate_memory.py | 163 | except Exception as error: |
| LOW | redash/query_runner/corporate_memory.py | 174 | except Exception: |
| LOW | redash/query_runner/influx_db_v2.py | 139 | except Exception: |
| LOW | redash/query_runner/influx_db_v2.py | 206 | except Exception as ex: |
| 42 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | redash/__init__.py | 13 | |
| LOW | redash/settings/__init__.py | 3 | |
| LOW | redash/settings/__init__.py | 8 | |
| LOW | redash/settings/__init__.py | 17 | |
| LOW | redash/settings/__init__.py | 17 | |
| LOW | redash/tasks/__init__.py | 4 | |
| LOW | redash/tasks/__init__.py | 5 | |
| LOW | redash/tasks/__init__.py | 6 | |
| LOW | redash/tasks/__init__.py | 6 | |
| LOW | redash/tasks/__init__.py | 6 | |
| LOW | redash/tasks/__init__.py | 6 | |
| LOW | redash/tasks/__init__.py | 12 | |
| LOW | redash/tasks/__init__.py | 12 | |
| LOW | redash/tasks/__init__.py | 12 | |
| LOW | redash/tasks/__init__.py | 12 | |
| LOW | redash/tasks/__init__.py | 12 | |
| LOW | redash/tasks/__init__.py | 12 | |
| LOW | redash/tasks/__init__.py | 12 | |
| LOW | redash/tasks/__init__.py | 21 | |
| LOW | redash/tasks/__init__.py | 21 | |
| LOW | redash/tasks/__init__.py | 21 | |
| LOW | redash/tasks/__init__.py | 26 | |
| LOW | redash/tasks/__init__.py | 26 | |
| LOW | redash/tasks/__init__.py | 26 | |
| LOW | redash/tasks/queries/__init__.py | 1 | |
| LOW | redash/tasks/queries/__init__.py | 1 | |
| LOW | redash/tasks/queries/__init__.py | 2 | |
| LOW | redash/tasks/queries/__init__.py | 2 | |
| LOW | redash/tasks/queries/__init__.py | 2 | |
| LOW | redash/tasks/queries/__init__.py | 2 | |
| LOW | redash/tasks/queries/__init__.py | 2 | |
| LOW | redash/utils/__init__.py | 13 | |
| LOW | redash/utils/__init__.py | 18 | |
| LOW | redash/utils/__init__.py | 25 | |
| LOW | redash/utils/requests_session.py | 11 | |
| LOW | redash/models/__init__.py | 13 | |
| LOW | redash/models/__init__.py | 20 | |
| LOW | redash/models/__init__.py | 31 | |
| LOW | redash/models/__init__.py | 41 | |
| LOW | redash/models/__init__.py | 49 | |
| LOW | redash/models/__init__.py | 57 | |
| LOW | redash/models/__init__.py | 57 | |
| LOW | redash/models/__init__.py | 57 | |
| LOW | redash/models/__init__.py | 64 | |
| LOW | redash/models/__init__.py | 64 | |
| LOW | redash/models/__init__.py | 64 | |
| LOW | redash/models/__init__.py | 73 | |
| LOW | redash/cli/__init__.py | 86 | |
| LOW | redash/query_runner/corporate_memory.py | 17 | |
| LOW | redash/query_runner/corporate_memory.py | 17 | |
| LOW | redash/query_runner/yandex_disk.py | 13 | |
| LOW | redash/query_runner/sparql_endpoint.py | 17 | |
| LOW | redash/query_runner/__init__.py | 8 | |
| LOW | redash/query_runner/excel.py | 15 | |
| LOW | redash/query_runner/excel.py | 17 | |
| LOW | redash/query_runner/db2.py | 68 | |
| LOW | redash/query_runner/cloudwatch_insights.py | 11 | |
| LOW | redash/query_runner/couchbase.py | 16 | |
| LOW | redash/query_runner/arango.py | 57 | |
| LOW | redash/serializers/__init__.py | 10 | |
| 12 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| HIGH | tests/test_utils.py | 162 | assert mock_dataframe.equals(pd.DataFrame(result["rows"])) |
| HIGH | tests/__init__.py | 53 | self.app_ctx.push() |
| HIGH | tests/query_runner/test_yandex_disk.py | 227 | assert test_df.equals(EXTENSIONS_READERS["xlsx"](output)) |
| HIGH | tests/query_runner/test_yandex_disk.py | 236 | assert test_df.equals(EXTENSIONS_READERS["csv"](output)) |
| HIGH | tests/query_runner/test_yandex_disk.py | 245 | assert test_df.equals(EXTENSIONS_READERS["tsv"](output)) |
| HIGH | redash/authentication/remote_user_auth.py | 30 | # Some Apache auth configurations will, stupidly, set (null) instead of a |
| HIGH | redash/authentication/remote_user_auth.py | 32 | # '(null)' should never really be a value that anyone wants to legitimately |
| HIGH | redash/authentication/remote_user_auth.py | 34 | if email == "(null)": |
| HIGH | redash/handlers/queries.py | 218 | :>json string retrieved_at: Time when query results were last retrieved, in ISO format (may be null) |
| HIGH | redash/handlers/queries.py | 219 | :>json number runtime: Runtime of last query execution, in seconds (may be null) |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | tests/query_runner/test_json_ds.py | 11 | |
| LOW | redash/tasks/worker.py | 116 | |
| LOW | redash/tasks/queries/execution.py | 32 | |
| LOW | redash/tasks/queries/execution.py | 150 | |
| LOW | redash/tasks/queries/maintenance.py | 33 | |
| LOW | redash/tasks/queries/maintenance.py | 193 | |
| LOW | redash/utils/query_order.py | 172 | |
| LOW | redash/utils/query_order.py | 199 | |
| LOW | redash/utils/pandas.py | 21 | |
| LOW | redash/utils/__init__.py | 83 | |
| LOW | redash/models/__init__.py | 593 | |
| LOW | redash/models/__init__.py | 649 | |
| LOW | redash/models/__init__.py | 1015 | |
| LOW | redash/query_runner/elasticsearch2.py | 75 | |
| LOW | redash/query_runner/elasticsearch2.py | 113 | |
| LOW | redash/query_runner/elasticsearch2.py | 78 | |
| LOW | redash/query_runner/elasticsearch2.py | 143 | |
| LOW | redash/query_runner/elasticsearch.py | 123 | |
| LOW | redash/query_runner/elasticsearch.py | 180 | |
| LOW | redash/query_runner/elasticsearch.py | 356 | |
| LOW | redash/query_runner/elasticsearch.py | 206 | |
| LOW | redash/query_runner/pg.py | 58 | |
| LOW | redash/query_runner/clickhouse.py | 149 | |
| LOW | redash/query_runner/databend.py | 54 | |
| LOW | redash/query_runner/big_query.py | 46 | |
| LOW | redash/query_runner/treasuredata.py | 75 | |
| LOW | redash/query_runner/mongodb.py | 85 | |
| LOW | redash/query_runner/mongodb.py | 293 | |
| LOW | redash/query_runner/excel.py | 45 | |
| LOW | redash/query_runner/query_results.py | 168 | |
| LOW | redash/query_runner/google_search_console.py | 38 | |
| LOW | redash/query_runner/google_search_console.py | 78 | |
| LOW | redash/query_runner/csv.py | 48 | |
| LOW | redash/query_runner/google_spreadsheets.py | 60 | |
| LOW | redash/query_runner/google_analytics4.py | 41 | |
| LOW | redash/query_runner/json_ds.py | 101 | |
| LOW | redash/query_runner/exasol.py | 14 | |
| LOW | redash/query_runner/duckdb.py | 83 | |
| LOW | redash/query_runner/athena.py | 190 | |
| LOW | redash/query_runner/jql.py | 35 | |
| LOW | redash/query_runner/google_analytics.py | 39 | |
| LOW | redash/query_runner/google_analytics.py | 128 | |
| LOW | redash/query_runner/rockset.py | 13 | |
| LOW | redash/query_runner/influx_db.py | 33 | |
| LOW | redash/query_runner/couchbase.py | 40 | |
| LOW | redash/serializers/__init__.py | 209 | |
| LOW | redash/serializers/__init__.py | 77 | |
| LOW | redash/serializers/__init__.py | 268 | |
| LOW | redash/authentication/__init__.py | 108 | |
| LOW | redash/handlers/authentication.py | 31 |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | viz-lib/src/visualizations/details/Renderer.test.tsx | 24 | name: "John Doe", |
| LOW | viz-lib/src/visualizations/details/Renderer.test.tsx | 46 | expect(el.text()).toContain("John Doe"); // name value |
| LOW | viz-lib/src/visualizations/details/Renderer.test.tsx | 166 | expect(el.text()).toContain("John Doe"); |
| LOW | tests/factories.py | 46 | name="John Doe", |
| LOW | tests/models/test_parameterized_query.py | 274 | "rows": [{"id": 5, "Name": "John", "Value": "John Doe"}], |
| LOW | tests/models/test_parameterized_query.py | 279 | self.assertEqual(values, [{"name": "John", "value": "John Doe"}]) |
| LOW | tests/handlers/test_users.py | 43 | test_user = {"name": "User", "email": "user@example.com", "password": "test"} |
| LOW | tests/handlers/test_users.py | 54 | test_user = {"name": "User", "email": "user@example.com"} |
| LOW | tests/handlers/test_users.py | 64 | test_user = {"name": "User", "email": "user@example.com"} |
| LOW | tests/handlers/test_users.py | 78 | self.assertEqual(rv.json["email"], "user@example.com") |
| LOW | tests/handlers/test_users.py | 91 | test_user1 = {"name": "User", "email": "user@example.com", "password": "test"} |
| LOW | tests/handlers/test_users.py | 95 | self.assertEqual(rv.json["email"], "user@example.com") |
| LOW | client/cypress/integration/dashboard/widget_spec.js | 187 | query: "select 'lorem ipsum' FROM generate_series(1,50)", |
| LOW | …/cypress/integration/visualizations/word_cloud_spec.js | 6 | SELECT 'Lorem ipsum dolor' AS a, 'ipsum' AS b, 2 AS c UNION ALL |
| LOW | …egration/visualizations/table/.mocks/all-cell-types.js | 10 | '[{"a": 3.14, "b": "test", "c": [], "d": {}}, false, [null, 123], "Lorem ipsum dolor sit amet, consectetur adipiscin |
| LOW | …egration/visualizations/table/.mocks/all-cell-types.js | 10 | '[{"a": 3.14, "b": "test", "c": [], "d": {}}, false, [null, 123], "Lorem ipsum dolor sit amet, consectetur adipiscin |
| LOW | …tegration/visualizations/table/.mocks/large-dataset.js | 2 | "Lorem ipsum dolor sit amet consectetur adipiscing elit" + |
| LOW | …tegration/visualizations/table/.mocks/large-dataset.js | 2 | "Lorem ipsum dolor sit amet consectetur adipiscing elit" + |
| LOW | …egration/visualizations/table/.mocks/search-in-data.js | 4 | SELECT 'lorem ipsum' AS a, 'but TEST is here' AS b, 'none' AS c UNION ALL |
| LOW | …app/pages/users/components/ReadOnlyUserProfile.test.js | 13 | name: "John Doe", |
| Severity | File | Line | Snippet |
|---|---|---|---|
| MEDIUM | tests/destinations/test_webhook.py | 9 | # Create a mock alert with all the properties needed by serialize_alert |
| MEDIUM | redash/destinations/webex.py | 60 | # Create a table for the Adaptive Card |
| MEDIUM | redash/destinations/webex.py | 73 | # Create the body of the card with the table |
| MEDIUM | redash/handlers/query_results.py | 305 | # This method handles two cases: retrieving result by id & retrieving result by query id. |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | .restyled.yaml | 21 | # |
| LOW | redash/settings/__init__.py | 161 | # Enables the use of an externally-provided and trusted remote user via an HTTP |
| LOW | redash/settings/__init__.py | 181 | # If you also set the organization setting auth_password_login_enabled to false, |
| LOW | redash/utils/query_order.py | 1 | # Copyright (c) 2012, Konsta Vesterinen |
| LOW | redash/query_runner/memsql_ds.py | 101 | cursor = None |
| LOW | client/app/assets/less/inc/font.less | 1 | ///* -------------------------------------------------------- |
| LOW | client/app/assets/less/inc/font.less | 21 | //-----------------------------------------------------------*/ |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | tests/query_runner/test_yandex_metrica.py | 85 | # before/after we get to the Nth call, just return success |
| MEDIUM | redash/settings/__init__.py | 182 | # then your authentication will be seamless. Otherwise a link will be presented |
| LOW | redash/settings/dynamic_settings.py | 64 | # To do so, simply add the name of the extension you'd like to load to this list. |
| LOW | redash/query_runner/ignite.py | 101 | # if it's a datetime, just return the milliseconds |
| Severity | File | Line | Snippet |
|---|---|---|---|
| MEDIUM | redash/query_runner/memsql_ds.py | 121 | # ==================================================================================================== |
| MEDIUM | redash/query_runner/memsql_ds.py | 123 | # ==================================================================================================== |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | redash/destinations/webex.py | 58 | # Check if it's a 2D array |
| LOW | redash/destinations/webex.py | 208 | if not destination_id: # Check if the destination_id is empty or blank |
| LOW | redash/models/mixins.py | 13 | # Check if we really want to update the updated_at value |
| LOW | .github/workflows/periodic-snapshot.yml | 51 | # Check if both bump and specific version are provided |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | client/app/components/DialogWrapper.jsx | 83 | If you want to override behavior of `onOk`/`onCancel` - don't forget to close dialog: |