Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add funnel visualization #2334

Merged
merged 8 commits into from Feb 28, 2018

Conversation

@tonyjiangh
Copy link
Contributor

commented Feb 21, 2018

Issue

#2139

Implementation

  • Table + Containers
  • D3 for DOM manipulation
  • Bootstrap for formatting mostly
  • Code structure based on sunburst

Possible alternatives: svg with d3

Task lists

  • Add basic funnel visualization
  • Fix color styles
  • Optimize edit page
  • Test some corner cases
    • Long list of steps
    • Long step names
    • Big values
    • Small ratio for the last step
    • Extreme resizing
  • Maybe some hover handling if necessary (for long step names?)
  • Documentation
    • Different repository

Screenshot

Auto sorted setting
image

Order specified setting
image

Updates

  • Initial commit
    • Add basic funnel visualization
    • QueryResult has to have steps and values column
    • Auto sort records using value column in decreasing order
    • Auto calculate % of max and % of previous
  • Added @ 2018/2/23(JP)
    • Allow choosing column to use for step names and for value
    • Allow setting display name for the funnel chart(table) header for the step columna and the value column
    • Allow choosing column to use for ordering
    • Use chart color Cyan
    • Normalize date column for steps display
    • Stop rendering when 1. value column is NaN or not number, 2. selected column name is invalid
  • Added @ 2018/2/26~27
    • Silece top 100 rows for display
    • Handled long step name with ellipsis text-overflow and hovered full step name.
    • Some styling adjustment
@kocsmy

This comment has been minimized.

Copy link
Collaborator

commented Feb 21, 2018

Thanks for this @tonyjiangh — RRegarding visualization colors: Can we use the built-in visualization colors instead of introducing new colors? (see merged PR: #2282)

@kravets-levko

This comment has been minimized.

Copy link
Collaborator

commented Feb 21, 2018

Hi @tonyjiangh! Looks really cool! How about adding some options for this viz? It would be nice to choose table columns to display (I mean middle column with bars, "Total" and "Previous" columns). Also it would be great (but not necessary at this stage) to map result columns (to replace hard-coded steps and values ones).

@tonyjiangh

This comment has been minimized.

Copy link
Contributor Author

commented Feb 21, 2018

@kocsmy Thanks for reminding me. That's one thing I forgot. I'll fix that.

@kravets-levko Yes, I do have plans for that. I'll add some explanation and screenshot after adding a commit.

@arikfr
Copy link
Member

left a comment

Thanks, @tonyjiangh, this looks great!

I agree with @kravets-levko that we should have some configuration options here to make using this visualization easier. But other than that 👌

As for Long step names edge case: you can use text-overflow: ellipsis CSS property along with a title attribute on the container element (example).


function prepareData(queryData, stepCol, valCol) {
// Column validity
const sortedData = sortBy(queryData, valCol).reverse();

This comment has been minimized.

Copy link
@arikfr

arikfr Feb 22, 2018

Member

This assumes that each step will have a decreasing %?

I'm not sure we want to do that, while it makes sense I can imagine cases where it will mess things up a bit. Maybe make it optional (with default being on)?

This comment has been minimized.

Copy link
@tonyjiangh

tonyjiangh Feb 22, 2018

Author Contributor

Thanks for the advices.
Yeah, an option sounds better. I'll add that.

@tonyjiangh tonyjiangh changed the title [WIP] Add funnel visualization Add funnel visualization Feb 27, 2018

@tonyjiangh

This comment has been minimized.

Copy link
Contributor Author

commented Feb 27, 2018

@arikfr
Hi, I think I'm ready for review.
Something I'm not quite sure here and want some opinions:

  • the codeclimate is reporting long method, high cognitive complexity, and similar code block which happends for many existed code as well. Should I fix them?
  • No pagination here for the funnel table now, so I'm limiting the max-rows to be 100. We could also set no-limitation or add an option for it. (Are there really use-case for funnel data of more than 100 steps?)
@arikfr
Copy link
Member

left a comment

This is really great! Thank you for the thorough work on collaboration on this feature.

There is one small thing to update and then it's good to go :)

const editTemplate = '<funnel-editor></funnel-editor>';
const defaultOptions = {
stepCol: { colName: '', dispAs: 'Steps' },
valueCol: { colName: '', dispAs: 'Value' },

This comment has been minimized.

Copy link
@arikfr

arikfr Feb 28, 2018

Member

One small thing, let's rename dispAs to displayAs.

@arikfr

This comment has been minimized.

Copy link
Member

commented Feb 28, 2018

I missed your question about CodeClimate -- no, it's safe to ignore those.

Also I think capping steps at 100 is reasonable, as probably no one will have more than 10 or so.

@arikfr arikfr merged commit 2c95231 into getredash:master Feb 28, 2018

1 of 2 checks passed

codeclimate 7 issues to fix
Details
ci/circleci Your tests passed on CircleCI!
Details
@arikfr

This comment has been minimized.

Copy link
Member

commented Feb 28, 2018

💃

@rob-01

This comment has been minimized.

Copy link

commented Mar 29, 2018

Just a quick spelling note: "Dispaly" should be "Display" in "Step Column Dispaly Name" and "Funnel Value Column Dispaly Name."

@tonyjiangh

This comment has been minimized.

Copy link
Contributor Author

commented Mar 30, 2018

@rob-01 Thanks a lot. I'll fix it!

shinsuke-nara added a commit to KiiCorp/redash that referenced this pull request Mar 1, 2019

Squashed 'redash/' changes from 6fadcc4..7df9cd5
7df9cd5 Merge pull request #14 from KiiCorp/merge-v4.0.1
ca1c3bf Merge tag 'tags/v4.0.1' into merge-v4.0.1
d43bfa9 Version bump to 4.0.1
b4d7a25 Update CHANGELOG.md
c8a3985 Merge pull request getredash#2506 from kocsmy/fixes/overflowing-data-source-box
3274a5d Add data source name to box title
8037c21 Merge pull request getredash#2496 from akiray03/sorted-redshift-schema-info
ee8f6c1 Merge pull request getredash#2472 from tonyjiangh/fix/disable_view_only_fork
bce0e8e Merge pull request getredash#2507 from getredash/resolution
cddf398 Log user's screen resolution
bdb8682 Merge pull request getredash#2501 from getredash/fix-dashboard-filters
54bef2c Remove console.log call
d326f2b A nicer way of hiding overflowing text
06a7a7e Merge pull request getredash#2505 from kocsmy/fixes/overflowing-data-source-box
fc0a074 Hide overflowing content
44a330a Merge pull request getredash#2499 from kocsmy/design/design-improvements
ab284ef Fix contianer width
9d4fd75 Fix: update tests.
4a9b93a Improve dashboard refresh UX: show previous data while refreshing.
31a48cf Subtle background change
9df98b1 Fix login screen on smaller viewport
d1bc2fb Fixes the order of columns in the schema browser when Redshift is used as a DataSource.
df774b0 Merge pull request getredash#2492 from kravets-levko/bug/cohort-js-error
7ac0ba5 Cohort bug: JS error (value not wrapped with moment instance)
b2decc8 Merge pull request getredash#2487 from getredash/fix-dashboard-filters
b12f3fb Merge pull request getredash#2469 from PublicI/fix/null-number-format
fc30f14 Merge pull request getredash#2489 from dbravender/2488-alert-date-column
277eb35 Fixes getredash#2488
10bc940 Fix: dashboard filters setting wasn't persisting.
16a07e1 Merge pull request getredash#2485 from kocsmy/fixes/new-readme-gif
479b34f Make gif bigger
19eed15 Refine content
d312dff Update readme
90677b2 Merge pull request getredash#2475 from ariarijp/fix-pip-version
df9bd38 To avoid "cannot import name main" error
be86d65 Add $scope.canForkQuery() to data only view
66a4315 Move dropdown disabled a tag color change code to disable class
b896dd4 Disable fork for view_only user
615aea7 Merge remote-tracking branch 'upstream/master' into fix-null-number-format
10a9978 Fix style in PR branch
3f3a86e Update CHANGELOG.md
43a66fa Merge branch 'master' of github.com:getredash/redash
ed739e1 Update version
212c7ee Merge pull request getredash#2457 from kyoshidajp/fix_td_syntax_error
ce50042 Fix syntax error
e17e36f Update CHANGELOG.md
0bc570d Merge pull request getredash#2407 from alon710/master
7465c74 Merge pull request getredash#2428 from toru-takahashi/master
a8a9110 Merge pull request getredash#2452 from kravets-levko/bug/firefox-widget-height-continuously-increases
add60c2 Merge pull request getredash#2451 from kravets-levko/bug/page-layout-lost
f055e67 Displays nulls and blanks in numeric fields as empty strings
4dc8826 Firefox, dashboard, auto-height feature: in some cases (loader shown and widget has params, but possibly other cases) widget start continuously growing
d35bbdb getredash#2401 Wrong page layout if route change cancelled
8636c33 Merge pull request getredash#2449 from getredash/botocore-update
eddd941 Merge pull request getredash#2450 from getredash/map-names
2d08314 Update Choropleth visualization name.
28d69b0 Update map visualizations names.
7f76400 Update botocore version.
f551b34 Merge pull request getredash#2447 from getredash/patches
b1567f4 Add safe guarding with .get()
d18c94a Merge pull request getredash#2420 from fmy/patch-1
f75c142 Merge pull request getredash#2434 from tonyjiangh/fix/funnel_typo
0959281 Merge pull request getredash#2443 from deecay/choropleth-fullscreen
96a0a51 Merge pull request getredash#2446 from getredash/patches
9899abf Fix: some legacy dashboards got their widgets misplaced when using auto height.
d023864 Fix: dashboard refresh was broken due to introduction of track by to ng-repeat.
5f25bc4 Update pymongo version to support newer MongoDB versions
07b5003 Map: Add fullscreen control
8aba5db Merge pull request getredash#2441 from tnetennba3/pronoun-fix
b3ee250 Choropleth: Add fullscreen control
85179fd Changed "his" to "their"
390360c Fix funnel setting page typo
7edd5b9 Improve a query failure message for Treasure Data Runner
c681a50 use MongoClient for ReplicaSet
8df2391 Merge pull request getredash#2376 from valentin2105/master
0982e56 fix entrypoint create_table() func.
0cb995b Merge pull request getredash#2413 from getredash/fix-bq
d34d58b Merge pull request getredash#2374 from kravets-levko/feature/choropleth
c19ff41 Merge pull request getredash#2406 from kravets-levko/feature/dashboard-gridstack
abb6e56 Fix: UDF URI was used even if empty
a7bba81 Merge pull request getredash#2412 from deecay/box-hover-fix
6356a75 Fix: Box plot hover
61ef5f9 gridstack: add comments, exclude lodash and moment locales from bundle
2fbf892 gridstack: optimizations and bugfixes
ce9e3fc Replace dashboard engine with gridstack
ffab6d5 Merge pull request getredash#2411 from getredash/patches
be9bcae Multiple fixes:
d140e04 Fix: dashboard was reloading when clicking on refresh.
6685cb9 Load dashboard refresh rate from URL.
2f24cff Plotly: increase Y value accuracy.
193a6cc Fix: only try merging query object if it exists.
1795150 Change: apply time limit to alert status checking task.
ccffe70 MSSQL Fix: UUID fields were detected as booleans.
503d6ce DynamoDB fix: always return counter as a number rather than string.
6fbe06d Report Celery queue size.
2394f3f Add events property to Organization model.
cb815f3 Render safe HTML by default in tables to remain backward compatible.
e6f6c02 Fix: saving widget was sending too much data to the server, sometimes making saving fail.
565e667 Fix: Fork button was shown in data only view, but wasn't working.
549de13 Change: show friendly names in dynamic forms labels.
d892ed4 Merge pull request getredash#2387 from idalin/fix_ldap_login
b962046 adds mattermost dest
3c75c2b Update CONTRIBUTING.md
db02057 Merge pull request getredash#2385 from kocsmy/fixex/cassandra-scylla-images
5a93da3 fix no login form in ldap login page getredash#2386
d16285d Add missing images
0410d83 Merge pull request getredash#2382 from deecay/webpack-ignore
b79abf5 Webpack: ignore vim swap files
6a61057 getredash#2317 CR1 - cache GeoJSON to avoid multiple HTTP requests; - allow to edit map bounds; - optimize update map calls (do not re-render it every time); - UI/X imporvements.
1a75d49 Merge pull request getredash#2379 from getredash/fix_empty_states
c054731 Change: close metadata database connection early in the execute query Celery task. This to prevent the task holding an idle connection for a long period of time, while waiting for the query to finish.
a824bd5 Merge pull request getredash#2378 from getredash/fix_empty_states
e1ff317 fix circle.yml
797b558 Fix: show connect data source link only to admins
4529043 Fix docker-entrypoint broke for Other name than "postgres"
517f95f Better resize handling
d5ee9cd Use data from current record for tooltip and popup contents
5918253 Add option to align legend text Remove Leaflet attribution
2f30dbf getredash#2317 Choropleth visualization
88deb5f Merge pull request getredash#2372 from kravets-levko/fix/dancing-widgets
27c7e86 Fix: dashboard "dancing" widgets (when auto-height enabled)
051f12c Fix tags regex in circle.yml
f9ab83e Merge pull request getredash#2369 from getredash/query-refresh
c24bfe8 Update changelog.
4f27de3 Add: configuration for query refresh intervals.
bf86d17 Stop spamming Docker Hub
54e23a7 Update CHANGELOG and update version.
6049e2d Merge pull request getredash#2356 from kravets-levko/fix/dashboard-auto-height
025af41 Merge pull request getredash#2260 from Top20Talent/master
d80f93a Merge pull request getredash#2355 from jezdez/glue-table-paginator-upstream
5aa4b28 Merge pull request getredash#2354 from jezdez/redash-extensions
6a072dd Merge pull request getredash#2363 from kravets-levko/bug/query-page-unscrollable
6799508 getredash#2361
9295a9d Dashboard: save only changed widgets
43cd249 gridsterAutoHeight: disable auto-height when widget resized by user
6b41644 Add a Redash extension system based on Python entrypoints.
dceb58c Use a paginator when iterating over glue tables
570187f Merge pull request getredash#2353 from kocsmy/fixes/filter-spacing-on-dashboards
ca4663e fix small spacing glitch on dashboard widgets
6e097d5 Merge pull request getredash#2352 from kravets-levko/bug/query-result-column-names
2c95231 Merge pull request getredash#2334 from tonyjiangh/feat/funnel_visualization
0d80156 Rename visualization options for review
08c709c getredash#1960 Cast column names to string; code style fixes
bb28b2f Merge pull request getredash#2350 from getredash/auth
0e4313d Merge pull request getredash#2349 from kravets-levko/fix/dashboard-issues
e76e29d Merge pull request getredash#2348 from kocsmy/fixes/prometheus-logo
d1062ce Properly generate login URLs.
9ddf374 Configuration for Google Apps.
0eefc7b join array filter.
bea0350 Callout sections css.
33aa7b7 Enable debug mode for Flask.
ca54d23 Remove unused LESS code.
7d6244a Revisit default options; set auto-height for Table viz by default
f61a74b Fix: 'Cannot read property of null' JS error when going away from dashboard page
7d25890 getredash#2108 Fix: length limit increased
0e53356 add missing prometheus and snowflake logos
aa43dcd Add hover text for full step name
093c485 Merge pull request getredash#2347 from kravets-levko/fix/download-dataset-dropup
c19ef63 Fix: download dataset dropup is being cut off
bb1455e Merge pull request getredash#2346 from getredash/auth
09af43c remove unnecessary test.
35594ec Always show login page and generate URLs with url_for.
3044c77 Make SAML work in MULTI_ORG mode.
0632044 Handle corner cases
e6551e9 remove the type
11d09b2 Fix empty-state logic for MULTI_ORG mode
8676b84 Add support for symlinks in webpack config
d4f98aa Merge pull request getredash#2337 from ariarijp/upgrade-sqlparse
35458e8 Merge pull request getredash#2338 from kravets-levko/fix/table-columns-nowrap
49e9133 style adjustment
5dd7667 getredash#2215 Custom CSS based on column type
8bdd5ff Fix sort order
9e68b36 Add support for selecting column to sort
e78bfb2 Add support for column mapping
f5d4ca8 Upgrade sqlparse to 0.2.4 Add test case for /api/queries/format
c65b637 Merge pull request getredash#2336 from kravets-levko/fix/settings-tabs-order
062efe3 Explicitly set order of tabs on Settings page
696f46d Merge pull request getredash#2252 from kocsmy/design/empty-states
42b88d9 Ignore archived objects.
3a840fc Implement empty states logic.
a333abc Use ColorPalette instead
d583f6f Add funnel visualization
a1aeb1d Merge pull request getredash#2330 from getredash/arikfr-patch-1
bd13b78 Merge pull request getredash#2320 from kravets-levko/bug/few-bugfixes
4d44be7 Create <empty-state> component.
8cd758c Update 'absoluteUrl' function
9a1077d Merge branch 'master' into design/empty-states
bc4f174 Sort widgets by col/row to make sure they are placed correctly
0465958 Rename: fullUrl -> absoluteUrl
e0c5eab Merge pull request getredash#2324 from kravets-levko/bug/type-of-first-table
06e9d19 Merge pull request getredash#2325 from benmanns/patch-1
906c8fc Merge pull request getredash#2282 from kocsmy/design/improve-default-visualisation-colors
6149e00 Reduce restart to unless-stopped for Redis and Postgres
b053770 less vivid colors fo charts
45b380c Merge branch 'master' into design/improve-default-visualisation-colors
631dad1 Merge pull request getredash#2319 from kravets-levko/feature/server-pages-redesign
9647c37 getredash#2312
9e5f749 Change default visualization colors
c69795c Merge branch 'master' into design/improve-default-visualisation-colors
339f553 Remove code related to hidden text widgets + UI improvements
d2c5be5 Replace  with window.location
21b753f Bug fixed: empty page when trying to open public dashboard
a28a6ea Bug: Invite user / Reset password links should be full (include shema and host)
38da3e9 Add SSO login buttons to invite user page; UI fixes
f1aad25 redesign of all pages that are rendered by backend code
927599c Mark current version as v4-beta
eae3b1d Update changelog for v4
d6cc748 Merge pull request getredash#2311 from kravets-levko/feature/add-widget-dialog-update
1b6aaeb Merge pull request getredash#2314 from kocsmy/design/add-csv-image
5e72e6b add CSV image
fa03e12 getredash#2214 CR1
adb6a1a Merge pull request getredash#2313 from kravets-levko/bug/cannot-remove-widgets
8ec0cda Fix: widget is not removed from dashboard, only after page refresh
41789fa getredash#2214 Add Widget Dialog UX Update
17f3b1e Merge pull request getredash#1692 from kakakakakku/fix-redis-metrics
aa06e44 Merge pull request getredash#2099 from ariarijp/fix/create_db
9429578 Merge pull request getredash#2248 from sjakthol/multiorg-header-login
5aa620d Merge pull request getredash#2309 from getredash/fix_params
2560d88 Fix import call
f14388f Require admin for events GET call.
7e4cb4c Add: API to return events
953efc4 Merge pull request getredash#2308 from getredash/fix_params
5343dd9 Fix: parameters list was resetting when adding a new parameter
29c675b Update RDS CA bundle
e328b78 Make the S3 staging path label mention query results
e183b51 Merge pull request getredash#2307 from getredash/mognodb_nested_fields
a82239d Add an option to set a common prefix to the backend logs.
12f9c1a Merge pull request getredash#2306 from getredash/mognodb_nested_fields
037f8b7 Add Prometheus to the default query runners list.
ce69d30 Merge pull request getredash#2305 from getredash/mognodb_nested_fields
66a8941 Update botocore version to support Glue
94a770a Merge pull request getredash#2304 from getredash/mognodb_nested_fields
0bbfa8b remove whitespaces
5ad893a Close getredash#1199: support for nested fields in MongoDB results
790ac2e Merge pull request getredash#2303 from kravets-levko/fix/webpack-config-3
ceb1c62 Fix webpack config (server-rendered pages); fix assets URLs
e460c18 Merge pull request getredash#2301 from kravets-levko/fix/webpack-config-2
182d2d0 Fix config; fix assets URLs
878908c Fix webpack config and some assets URLs
f703a60 Merge pull request getredash#2266 from javier-sanz/quotedPasswords
07d8bab Merge pull request getredash#2296 from getredash/webpack
5e97834 Fix upgrade script to support CI builds
943dcf1 Merge pull request getredash#2281 from kravets-levko/feature/cohort-improvements
4090875 Merge pull request getredash#2257 from kocsmy/design/error-pages
e69f8fa Show standard error messages.
d6eb8f4 Handle unknown routes in Angular by showing Page Not Found error
69b3ea4 Rearrange the error-state box and place it middle
8f52f51 Fix content to center
a668416 Nicer error message and box with icon
96ad3aa Use jQuery from npm packages
4e5c425 Merge pull request getredash#2297 from kravets-levko/bug/filter-dropdown
5494166 Fix: login_required decorator was misplaced
9532540 getredash#2295
a6cf764 Fix webpack-dev-server setup
568b3e3 Switch back to single assets path.
40ffa34 Load all assets from a single directory (Webpack's output path). Also make sure all assets URLs are prefixed with /static/ and remove our custom assets serving handler.
95f4d99 Added webpack-manifest plugin
f303bc7 getredash#2163 CR1
d81af63 Merge pull request getredash#2291 from kravets-levko/fix/query-refresh-schedule
722678f Merge pull request getredash#2278 from getredash/dashboards_migrations
c077880 Merge pull request getredash#2288 from kocsmy/design/new-user-layout
8679cfe Merge pull request getredash#2289 from kocsmy/design/visualisation-editor-improvements
5064744 getredash#2279
ce15f56 Merge pull request getredash#2290 from kravets-levko/bug/table-html-escape
8d973d8 getredash#1731 Don't escape values in non-html mode
fd030e4 Further improve design details
6d12794 better layout for the visualisation editor
af4ecb5 Nicer layout for add user + typoe fix
a5904a6 Merge pull request getredash#2287 from kravets-levko/feature/table-link-column
361b68d Table viz: Link column CR1
55d47ed Table viz: Link column type
d97b8d0 Cast totalBytesProcessed to int.
2ed446b less neon green
178f46e Merge pull request getredash#2284 from getredash/bigquery
d01dfe4 BigQuery: show amout of data scanned.
2f8db25 BigQuery: properly handle RECORD fields (show nested fields).
4a719fc followup: coding style fixes to tests
a96b0b6 feat: make trusted header authentication compatible with multiorg mode
daea333 Merge pull request getredash#2283 from kravets-levko/feature/table-image-column
868944b getredash#2138 Table viz: Image column type
caf0070 Merge branch 'master' into design/improve-default-visualisation-colors
c9b2878 Improve visualisation colors
af7fb27 Cohort viz: add Mode option and two rendering modes; options to map columns; UI tweaks
34d22ee Merge pull request getredash#2245 from kocsmy/design/query-round-3
33b4c7c Move widget position logic migration to the backend and remove some unused code.
a6f3873 Merge pull request getredash#2247 from sjakthol/saml-groups-fix
aa60554 Merge pull request getredash#2249 from sjakthol/saml-settings-form-fix
6f7e95d Merge pull request getredash#2267 from alexdrans/es_source_content_type_fix
4c7a0cd Merge pull request getredash#2270 from jezdez/celery-3.1.25
bbfad16 Merge pull request getredash#2277 from kocsmy/fixes/widget-parameter-padding
94d47ab Remove code duplicate
75c94c2 Fix parameter bottom spacing on widgets
44c2526 Fixing style
c05e4b7 Adapting code to redish style plus added the field to the helper
77eeba2 Merge pull request getredash#2276 from kravets-levko/fix/insert-shema-node-by-click
bbe11f5 Insert only column name; save cursor position
3950c9e Move scrollbars from right-side area to visualization area
6839976 Fix bug: query editor did not restore its size after toggle
7fa7659 Remove unused styles
d5acf48 getredash#2234 Toggle resizable blocks
dfc9c5d getredash#2234 CR1
d2c80e9 getredash#2234 Improve query page markup + add scrollbars for each region
34a2d5f Move publish button the visible area
936144f attach people data to the bottom too
bacddea smaller padding fix
5404cc6 fix schema editor on smaller screens
9c28948 make schema browser fill up the space
7973937 Attach refresh tot he bottom
2655dbe Merge pull request getredash#2275 from kravets-levko/bug/insert-node-update-model
c2de59c Query editor insert node from schema browser - update ng-model
a5c954a Merge pull request getredash#2273 from kravets-levko/bug/dashboard-dropdown
b6827bb getredash#2272 Open dropdown to the left
5dde17e Merge pull request getredash#2269 from kravets-levko/fix/remove-progress-when-query-param-changes
06b5b09 getredash#2161 Remove loading indicator when query params changed
7b82203 Upgrade to Celery 3.1.25 in preparation to Celery 4.
e2042b1 Merge pull request getredash#2268 from getredash/dashboard-refresh-interval
a557d9f Make dashboard refresh intervals configurable
21d14c5 Setting source_content_type on ES queries
e605176 Fixing style issue.
4a8a237 Fixing build and some style issues.
11d4fb4 Password can be None
a948544 Removing unused import.
cf7d043 Reverting unquote helper change.
c614ff4 Url password can have quoted special characters.
817f2ba Merge pull request getredash#2156 from kravets-levko/feature/revisit-chart
862bc94 getredash#2117 CR7
d38a443 Merge pull request getredash#2246 from kyoshidajp/enable_list_query
c7284d6 Merge pull request getredash#2264 from kocsmy/design/pivot-table
76d8613 Merge pull request getredash#2219 from kocsmy/design/new-dashboard-creation
3aee4e9 remove second add-widget-container
4029821 Properly handle dashbaords filters toggle.
5a9b86f make button texts consistent with queries
c7dbe07 Single dashboard editing mode.
a98eff8 improve widget description
b090b6b Only render parameters div if we have parameters
dd39166 Wider add widget section for dashboards
f7512f1 Fix schema hover on sub-items
cfb4a1c Simplify markup and add more styling for add new widget box
4b74ab3 Styling improvements + show buttons in the right context
9776081 position: sticke for dashboard-header
7b62ee8 Add extra header class and fixed styling
80e07c6 add ng-if to hide and show sections accordingly
043a1ee Add missing class for consistency
d95c956 plenty of dashboard, filter and parameter fixes (still not the best, it's very messy here)
84532f8 Improve dashboard widget creation and publish process with multiple design improvements
d9892f8 add new widget to the bottom of the dashboard
d684720 Optimise and remove unnecessary code
b6ac96e various styling improvements for pivot table to match current design direction
135af39 support the range query of until now
8a26767 extend the prometheus query runner to support the range query
060fe1d Merge pull request getredash#2259 from shinji19/master
01a7b4e Fix google_auth login for organization
ba0b9da Fix syntax errors.
e97fd7d add spacing between empty state window and content
3477a55 add icons and fix smaller screen layout
61a0aaa Merge pull request getredash#2250 from getredash/ds_ui_select
1b03785 Merge pull request getredash#2253 from kocsmy/fixes/queries-search-page-fixed-layout
2c3052e Fix width for queries/search page as well
490c8f3 Make section full width, remove double titles and minor styling improvements
5c5c08a Add empty states for home, dashboards, queries and alerts
1ac9e6e Merge pull request getredash#2251 from yoavbls/master
1f99cd9 Add mapd, oracle and qubole images
b977526 Use ui-select for data source picker for consistent style across browsers
6dacfaf fix: update correct settings in saml settings form
fe2772e fix: commit saml user group assignment to the database
55c4bb1 Enable list query by one character
92091bf Resolve conflicts with master
18b30d6 getredash#2117 CR6
084a2f8 getredash#2117 CR5
c5acf65 getredash#2117 CR4
4f4411a getredash#2117 CR3
2eaec69 getredash#2117 CR2
30836e7 getredash#2117 CR1
4547b8b getredash#2117 Annotations
0cefed7 getredash#2117 Fix line/area stacking; UI improvements
878dc91 getredash#2117 Optimize code, add more stacking options, fix percent stacking bugs
249b78c getredash#2117 Revisit Plotly integration
a4d9ed5 Merge pull request getredash#2231 from kravets-levko/feature/wide-table
0207449 Merge pull request getredash#2244 from kocsmy/fixes/python-logo
2e7b1b4 Add missing python logo
7ef94c8 Update ISSUE_TEMPLATE.md
4f1d46c Update ISSUE_TEMPLATE.md
a1473d6 Make it clearer people should use the forum.
0efdd47 Merge pull request getredash#2225 from kravets-levko/feature/insert-schema-doubleclick
c2e28b2 Merge pull request getredash#2185 from kocsmy/design/new-data-source+query-editor
7d5bcb8 getredash#2215 100%-wide results table
c0d86c2 Rename event to be more generic
dcf867e Merge pull request getredash#2226 from kravets-levko/feature/dashboard-remove-embed-related-code
5dc01f7 Replace double-click with icon+single click
11cfc66 Add Redash styling to editor
f5ed122 getredash#1940 Remove ?embed-related code in public dashboards
612710f Fix Firefox issue
ca69a24 cleanup css
45c75a8 Smaller fixes for smaller screens
e04729a Plenty of improvements based on getredash#2185 comments
7ba5cc5 move updated at time to the right
c65597b Fix code style
6c40232 Insert schema path into editor by double click
ee2acc8 Fixed monitoring metrics for Redis
3aa3f7f Merge pull request getredash#2221 from mozilla/search-result-sort
a6e05e0 Merge pull request getredash#2222 from kakakakakku/rename-elasticsearch
7e2a14e Merge pull request getredash#2223 from shigemk2/license-2018
30cc0cc It's 2018 now ! 🎉
cf436e4 Renamed to "Elasticsearch"
3b2b27a correctly sort search result columns
691dc6a Merge pull request getredash#2041 from jezdez/fulltext-search
75d0d2d Show data scanned property when available
bc29c12 Properly handle 1row
ceb966a Merge branch 'master' into design/new-data-source+query-editor
44770b3 Merge pull request getredash#2101 from ariarijp/fix/script_query_runner
98d0f05 Merge branch 'design/new-data-source+query-editor' of https://github.com/kocsmy/redash into design/new-data-source+query-editor
f3014f5 Further styling fixes
3a413b5 Fix: embed/edit buttons were not working
6ce8883 More descriptive button text for edit visualisation
ffbf245 Fix minor styling issues
28cc7ea Attach result controls to the bottom of the query page
5189e6d Overwrite instead of writing new code
d24a5bd Smaller screen improvements for new data source flow
192ddd2 Better required * indication without red color
7c4b66b Rename show / hide source
cbe76f6 Merge pull request getredash#2204 from mozilla/data-scanned
3359ab2 Mark required fields in dynamic forms
5b938f2 Add layouts support.
9f6b4fb Add full text search for queries based on the Postgres tsvector type.
55b852f Hide query metadata for unsaved queries
efede57 Update org settings layout
2859c46 Merge pull request getredash#2205 from sjakthol/redshift-sslmode
c0fb51f Multiple styling fixes
c120898 Refine logos + the header of 2nd step for adding new data source
46061a0 Merge branch 'master' into design/new-data-source+query-editor
a3dec53 Replacing icons
ef202e7 Close getredash#2159: special tab for your own user profile
1d18887 make Redshift sslmode configurable
09d4605 Report amount of data scanned for Athena queries
d1de26b Small screen fixes
eb9b313 Better aligned and spaced cards
9850908 Fixing empty query resize issues
f231365 Remove duplicate datasource selector
f6ac9c4 Multiple new data source and alert refinements for layout and styling
0c05102 Merge pull request getredash#2171 from mayconbordin/salesforce_api_version
75af80c Merge pull request getredash#2196 from kravets-levko/fix/error-handling
2231d15 Update bootstrap script to use v3.
7d16cd2 Remove unnecessary classes
e29e4bf Make org settings layout better
f91bc2a add athena logo
ea1334e Make results mode hide query editing parts
bae4016 Remove ng-app directive in query page
56ffb1f Update alert destination to use new design
3b14958 Working data source setup pages
59af40f Switch to dev.redashapp.com as the dev server
9afd23a Use actual data source types + filtering
ca893a0 Rename db logos to their correct names
20c3ad2 Merge branch 'master' into design/new-data-source+query-editor
6f76aec Merge pull request getredash#2201 from kocsmy/fixes/fix-unsaved-query-alignment
57aa05f simplifying the code and fixing alignment issues
a6b9044 Merge pull request getredash#2200 from kocsmy/fixes/filter-headers
91d29cb Fix to error handling: CR3
33a2271 Smaller styling improvements
2a3c759 Refine styling and fixes
d8594e7 Fix misplaced div closing tags
7605032 Fix filters so it'll nicely list 2+ filters
7ce815c Better alignment
4c055c6 fix filter headers and filters on unsaved query alignment
6a4267a Merge pull request getredash#2199 from kocsmy/fixes/unpublished-query-result-table
bea3934 Merge pull request getredash#2198 from washort/change-data-source-query-version
694115e Fix unsaved query table visualisation
dc84876 Fix fullscreen table to fixed width for unpublished query
07628da Update query version when saving new data source
aa970a0 Fix to error handling: CR2
effb212 Fix to error handling: CR1
f687cac Revert "Add page-specific class to body for each app page"
a26dbab Merge branch 'master' of https://github.com/getredash/redash into design/new-data-source+query-editor
84e65f7 Merge branch 'master' of https://github.com/getredash/redash
dd0ffe3 Fix to error handling mechanism: fail only on promise rejections
bb36ec8 Merge pull request getredash#2195 from getredash/feature/settings
2f51df3 Allow passing options to tests Docker command.
3846cf3 Added default version for salesforce query runner
a66ac82 Merge pull request getredash#2194 from getredash/feature/settings
eb85fc9 Merge pull request getredash#2179 from kyoshidajp/add_root_user_command
8d2571c Merge pull request getredash#2187 from kravets-levko/feature/error-handling
93aeae6 CodeClimate issue fixes.
7602599 Update pysaml2 version to latest release.
153c013 Dynamic organization settings support.
a6faebb Make settings menu dynamic.
1e15673 Turn settings into a package
c5e5bb7 Merge pull request getredash#2189 from getredash/feature/settings
6c4989d Replace Makefile with scripts
4d0a6ac More css for better collapse and expand
ecc6200 Refining styling so resize works nicely
3b232d3 Fixing resizing issues
f258d80 Add border for editor
c9ac9d8 getredash#2162 CR2
fec92b3 getredash#2162 CR1
9323a93 Merge pull request getredash#2188 from rgjodekerken/master
f75833e Merge pull request getredash#2166 from kravets-levko/bug/query-page-small-counter
6307cfb Fix upgrade script for ci channel
651d56a Merge pull request getredash#2184 from cloudron-io/ldap_search_dn
055b8ef Merge pull request getredash#2175 from bamboo-yujiro/fix_user_form
c59e7ea rename REDASH_SEARCH_DN to REDASH_LDAP_SEARCH_DN
1bfea8b Improve error handling mechanism (related to getredash#2162)
c9d5347 mobile and spacing fixes
58eb08e Refine format and other smaller elements
52bae5c Rearrange elements for better UX
f2585d1 Better edit in place and other refinements for rearranged layout
635aeb3 Remove classes
e6ec50a Dynamic forms back live again, extra classes added for better form design
3bc5c60 better data source cars + list view has cards now, too
a698cb0 Pluralize database
6441c4b Merge pull request getredash#2174 from tonyjiangh/feature/add_redshift_view_support
ff07848 Merge pull request getredash#2165 from tonyjiangh/feature/query_result_exception
e925568 Further improve smaller screen design
db6c876 Further refining code and removing junk
3c9f59b Adjust button size size so it's consistent
0a15986 Code and styling improvements focusing on xs and sm screen sizes
696eefa Further cleaning up code
708cc26 Cleaning up code and properly fall back design on narrower screen for query-metadata
da1f99d Add create root user command
4f81440 Retry codeclimate
87ce1db Add redshift late binding view data to schema browser
71e6bf1 Fix : User Form displays a incorrect error appearance.
24188ab Perfectly calculated schema-container size, finally
e6f8b2c Flexible query editor
e913974 Add page-specific class to body for each app page
3cfd34a Added API version to salesforce query runner and fixed issue when row column value does not exist
404000e Add missing elements for new data source screen
5441ef4 Fix card sizes
1110e65 Load all images from images folder
9ac5d58 flexible layout v0.1 (WIP)
0810c2b Change to narrow layout
68f0c36 getredash#2129 Counter too small on query page
64c69ee Foundation for New Data Source layout added
e2df12e Merge branch 'design/query-page-improvements' into design/new-data-source-flow
0f31de3 General styling improvements
d37948f Merge branch 'master' into design/new-data-source-flow
6e2e2e2 Fix: unicode handling at query result
439cc45 Merge branch 'master' into design/query-page-improvements
816c619 Recreate new 2 column layout
5ba15ef Remove trailing spaces
30136c4 Merge pull request getredash#2148 from kyoshidajp/replace_datetime_strings
1a4d747 Stored parsed moment value.
1d3c214 Merge pull request getredash#2154 from crooy/master
fdf3532 Merge pull request getredash#2152 from bamboo-yujiro/fix_appearance_collapse_of_outdated-queries
c147d30 Separate Data source panel, freely expanding schema browser, freely expandable query editor, better smaller screen layout
80a7493 fixing issue getredash#2150
a36cc68 Fix: Appearance collapse of outdated-queries.
073db37 Merge pull request getredash#2136 from doddjc21/patch-1
b7b8e56 Consider value is string case
8a11183 Add data source logos
c045cca Replace invalid date time strings
c3cb2cc Merge pull request getredash#2126 from getredash/layout_fixes
990d32c Remove unneeded code
1573e06 Merge pull request getredash#2134 from getredash/fix_query_results_download
6bb0510 Hide shcema browser when it's not relevant
c1d7e04 Explict response when schema is not supported (vs just some error loading it)
6045402 Merge pull request getredash#2135 from kocsmy/fixes/query-tables
4954d1c Update oracle.py
45b828e Update oracle.py
96e2991 Update oracle.py
54b1f42 Update oracle.py
3a0ffa5 Fix filters spacing on Dashboards
7381bd1 Fix margin on pagination
19bd150 Fix pagination
e65b023 Make embed query tables width: auto too and apply css flexbox
69badf6 Merge branch 'master' into fixes/query-tables
68177d3 Fix wide tables on queries and related elements like pagination
808a4c5 Update oracle.py
8e668d2 Fix getredash#68: user can't download query results of a new query
868f334 Merge pull request getredash#2127 from getredash/gravatar
3f37c34 Change default gravatar type
271e6a5 Merge branch 'kyoshidajp-add_user_image'
0988e81 Rebase with latest master
62e5e38 Rename profile image url column and method
dce8653 Set default parameter None as picture
7f398a7 Allow None as image_url in User model
56c364f Change style name of profile image
0b9b6a6 Change size of profile immage in User
ea5788f Display user image before name to each page
4a58b9e Add image url as a User field
18b8573 Handle cases when schema is empty
f02c0e0 Fix: table pagination overlap
6fc6c67 Revert accidental changes to query.html
2c36563 View query link in widget should link to source view
c9a680b Consistent size of query editor
b8543eb Change: query should be first in create menu
b17794f Merge pull request getredash#2124 from kocsmy/fixes/merge-fixes-2017-12-05
63e7662 Fix showing refresh time on public dashboard
2567c73 Add Redash logo to the public dashboard footer
9c81b86 Fix alert spacing
ed7a7d4 Fix query editor size when schema is there but empty
bc9bcee Merge pull request getredash#2123 from kravets-levko/fix/chart-x-axis-height
96a73b0 getredash#2107 Fix: chart x-axis height setting
004f550 Merge pull request getredash#2113 from kocsmy/design/refinements-2
2ef9403 Merge branch 'master' into design/refinements-2
7ac88f9 Fix height for schema browser
3d0080a Merge pull request getredash#2120 from negibouze/prevent-remove-self
2c39028 Merge pull request getredash#2118 from deecay/pie-styling
06cab14 Fix layout
4dd8f8c prevent remove self
2be0670 Change: Pie chart font style
ccb2064 Remove half-baked unit test
9d7f079 Merge pull request getredash#2089 from msumit/Qbol_Support
91a2b49 Merge pull request getredash#2110 from kravets-levko/feature/table-v2
6d11e8f Table viz: CR3
1ca0ac6 Table viz: CR2
4cd3525 Add v4 to CHANGELOG.
4798361 Merge branch 'master' into design/refinements-2
08b97d0 Hide "Data" text from data source
a0d9b94 Table viz: small fixes
7272b99 Improve visualisation embed design (iframe) so it looks better
3083310 Table viz: search; CR1
7974c90 Merge pull request getredash#2111 from kyoshidajp/upgrade_psycopg2
f4c4e18 Upgrade psycopg2 latest version
ca75eb6 Separate Query styling and fix a small issue
2745859 Turn off link when editing a dashboard + show move cursor so it suggests you can drag the widget with its header and move around
1d90f2a Fix line-height
60becaf Nicer highlights fro query dropdown
73af140 Move view/show query to bottom of its section
dc4902a Minor fixes
ccb440c Add ref so we know how many people get to know about Redash through shared dashboards
f3633b1 Move format back to visible place
2b43bd7 Fix up fullscreen
1beeda6 Fix filter spacing and remove inline css
ed70002 Table viz: code improvements
83e1ded Merge branch 'master' into design/refinements-2
015d0c6 Table viz: custom cell rendering; JSON cell renderer
e17a1a1 Upgrade psycopg2 for support PostgreSQL 10.0 as a library
8fc3af7 Table viz: editor UI
3df9d48 Change footer for public dashboards
127b45a Table viz: editor
e7d0856 Table viz: show/hide column, reorder columns, content alignment
fb44d32 Table viz: multi-column sort, align data, allow html
736c014 Return False from annotate_query instead of strip annotation with regex
3f30693 Merge pull request getredash#2102 from ariarijp/fix/typo_in_settings
4a06e62 Merge pull request getredash#2105 from kravets-levko/fix/visualization-filters
0d1ad21 getredash/issues/2103 Fix: unnecessary horizontal scroll; fix: viz overlaps filters panel
8e8a63a Fix table styling which sits inside a container and not going full width. Apply this to multiple screens.
edbec3f Fix last-child padding bottom
f2eb225 Fix cell padding to fit header padding
d0ec1ca Further adjust table settings
51e6087 Circle profile pictures on user list
50fcd8d Adjust table header background color
37f27fc Adjust table styling
690ce52 Fix spacing for all kind of table (normal, condensed)
7cbed96 Fix pagination margin below dynamic-table
baa36c9 Add to readme
6bbd1bf Add styling readme
12ecd23 Add Cantarell to the default font-family
b9078a2 Refine table styling and improve less organisation
8e3c62d Fix refreash button size to btn-sm
9492ff9 Fix button margins
b0177de Move fork query under dropdown, too and remove redundant text information
89592d3 Fix padding at no schema sources
0a6fc27 Rearrange query elements
a7ca236 Change source editor and schema browser
b716e5c Fix typo
063066d Tighten up schema browser
5bdb34e Fix spacing in filters
f4d0609 Strip annotation from query when path is specified in Script Query Runner
cb62c10 Fix create_db command of docker-entrypoint
05cc170 Better organised query editor
4540256 Add proper styling for parameters
3d33ebc Tightening up Query editor
decc0b8 Fix merge conflicts
a488de2 Merge branch 'master' into design/refinements-2
f835aec Adjust top margin
5893b68 Public dashboards: remove navbar and add missing footer
660c72e Add Qubole query runner
01cf6de Merge pull request getredash#2098 from kravets-levko/fix/sankey-sunburst
fa46022 CR1
39aeef5 Merge pull request getredash#2097 from ariarijp/fix/query_results
4006d72 getredash#2095 Fixed sunburst/sankey issue with rendering; minor UI fixes
93aa28c Handling whitespace characters in Query Results data source
8e8278d Merge pull request getredash#2081 from kocsmy/design/refinement
3d9d658 Merge pull request getredash#2087 from yershalom/add_cockraochdb_ds
9ae1bc3 Merge branch 'master' into design/refinement
a9384d3 Merge branch 'master' into design/refinement
9bbce6b Merge pull request getredash#2053 from cdessanti/patch-1
b96ab5e Merge pull request getredash#2048 from arjan/elasticsearch-doc-count-aggregation
5b91d97 Merge pull request getredash#2043 from jezdez/pytest
9de3e97 Merge pull request getredash#1985 from miketheman/miketheman/user-email-case-insensitive
1b7cc37 Merge pull request getredash#2092 from jasonsmithj/fix/mysql_query_cancel
e7fdbee Merge pull request getredash#2083 from kravets-levko/feature/responsive-visualizations
1e12f70 mysql query cancel
0ef04e2 Rebase CSS changes to LESS
24ebd8d CR3
4af56bd Small CSS fix
5faf41a CR2: fit counter by height (not by width)
485f0e3 CR1
21150ad Counter: fix auto-size
059da21 Chart: fit to container on resize
24e7ee5 Fix: Counter flickering; Map, Counter: disappears in mobile mode
584cbea Better fix for Map viz
1d210c7 Fix visualization previews
289aa85 Some fixes for Map viz
d765f6e Some fixes for Table and Pivot viz
5f5b95b Map viz: constraints and position
e57d9f4 Counter viz: fit text to width
b262849 Allow to specify default size for each visualization type
825157a Friendlier next and prev arrows
961144c Remove Roboto
0abfe19 Add newstyle to the soup
3c1a756 Merge branch 'master' of https://github.com/getredash/redash
7f2328d Adjust bg-ace and table headers
457b8d9 Merge pull request getredash#2091 from kravets-levko/less2
773e5e6 Convert styles to LESS
dfd2d9e Remove uppercase and capitalize table and tab headers
a1fdaa9 Revert hiding refresh button, still keep refresh functionality on last refreshed date
7955a83 Add paginator only when there are more than 1 pages
3af1176 Fix: two nav bars on my queries page
ab77f00 Move refresh button under latest refresh time
835d417 Styling improvements on Query screen
895d743 Fix description hover
68404b8 Styling refinement
5b19efd Layout fix for System Status
86fc099 Clean up admin page markup
819b109 Remove uppercase from tab header so it looks friendlier
334289b Add system fonts as default and simplify the code
e648328 Better organised stylesheet for easier maintainability + an IE fix
c3ca2e2 Small improvement on widget styling
1115f2a Add missing tiled class
0b0762f Improved pagination
f423e0c Remove fancy input hover animation
8da4007 Added one line for pep8 convention
dbf7c90 Added new CockroachDB DS to redash
ff0f5a0 Merge pull request getredash#2082 from deecay/pie-subplot-title
b702299 Version bump.
a751c03 Fixing Firefox issues and fine-tuning smaller details
1c92683 Styling refinements
dc8e8b7 Hide username on smaller screens + move Query Snippets and hide divider for users
315e77b Cleanup settings/user and remove unnecessary tabs
c510b35 Add tiled class and adjust layout
2c2c626 Smaller layout, grid and styling fixes
fa7eaae remove redundant buttons from home
4ed9e01 Smaller improvements
40a83f3 Fancy caret is only for nav
af90928 Better styling for navigation
bf66873 Unify headers
dce64cf Fix settings container
a261958 Further refine navbar markup and styling
43bf4b1 Major navigation refinement
9420d26 Drop 'Updated:' prefix
c67e9e3 Further simplify navigation
3e7e06d Add time icon next to updated time
539cbf4 Add: Pie chart subplot title
3000329 Refine positions for nav new button and logo
f9e416a Massive styling refinement
7276746 Make Edit/New dashboard modal more obvious
b57f781 Add container for Settings to resolve vertical scroll issue
e9b05ad Massive navigation refinement
ea7b09d Add extra classes for widget elements for easier styling
30dc3d7 consistent footer templates
0d638cb Better page title so you know where you are and what you're doing
9282087 Add missing container + remove container from the middle so the layout works better
590b7d6 Remove unnecessary row class that messes up the layout
dfef594 Add extra class for easier styling + remove unnecessary h3 around the top right area (bc it messes up everything with h3's margins)
4dad07e Change order, so All queries comes first on the tabs
90fbb3d Move global style out from local file
3079917 Collapse section for profile
e84e866 Collapse change password section by default
dd4db4b Re-align footer so it feels simpler
3f60998 Re-organise individual user setting screens into one page
6eca14e Merge pull request getredash#2062 from kravets-levko/feature/dashboard-editor
54ade33 CR3
627dc26 In editing mode hide menu button and show remove button instead
1bb7cc0 Fix: widget menu not visible on small widgets
18b4c3e Fix widget auto-height behaviour
43bf051 Cleanup CSS
bbcbb3e CR2
8bb9a1a CR1
6a7d229 getredash#335 Better dashboard editor
87c705e Make the `doc_count` column integer
825fff5 Update mapd.py
abda683 Update mapd.py
886a5ef added python driver of Mapd database
c3e1985 added mapd.py to default query runners
b9d9bcc Create mapd.py
45a6651 Rename class, guard against calling lower() on None
4b9e459 Elasticsearch: Collect doc_count field from aggregation
45aad4b Move to pytest since nose is unmaintained.
be23254 Use a custom EmailType/CaseInsensitiveComparator
9076715 Ensure email is case-insensitive

git-subtree-dir: redash
git-subtree-split: 7df9cd5
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
6 participants
You can’t perform that action at this time.