Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
249 commits
Select commit Hold shift + click to select a range
38a06c7
Autoformat hyperlinks in Slack alerts (#6845)
eradman Apr 3, 2024
702a550
Handle timedelta in query results (#6846)
wlach Apr 3, 2024
a0f5c70
Remove Qubole query runner (#6848)
eradman Apr 3, 2024
4eb5f4e
Remove version check and all of the data sharing (#6852)
justinclift Apr 5, 2024
15e6583
Automatically use the latest version of PostgreSQL (#6851)
justinclift Apr 5, 2024
af0773c
Update "make clean" to remove Redash dev Docker images (#6847)
justinclift Apr 7, 2024
82d88ed
Bump gunicorn from 20.0.4 to 21.2.0 (#6856)
bluetech Apr 7, 2024
24dec19
Update yarn to current latest in 1.22.x series (#6858)
justinclift Apr 8, 2024
3f19534
reuse built frontend in ci, merge compose files (#6674)
AndrewChubatiuk Apr 10, 2024
f631075
reverted e2e secrets (#6867)
AndrewChubatiuk Apr 10, 2024
34cde71
fix percy for a branch (#6868)
AndrewChubatiuk Apr 10, 2024
776703f
filter widget results to fix tests during repeatable execution (#6693)
AndrewChubatiuk Apr 10, 2024
d7247f8
use default docker repo name if variable is not defined (#6870)
AndrewChubatiuk Apr 10, 2024
cb07071
Bump tar from 6.1.15 to 6.2.1 (#6866)
dependabot[bot] Apr 10, 2024
95ecb8e
fix for coverage (#6872)
AndrewChubatiuk Apr 11, 2024
45c6fa0
Bump idna from 3.6 to 3.7 (#6878)
dependabot[bot] Apr 12, 2024
9601660
Update Node image in Dockerfile to 18-bookworm
justinclift Apr 12, 2024
77d7508
fixed local setup to run on ARM64 (#6877)
AndrewChubatiuk Apr 12, 2024
275e12e
fix: unquote values in compose (#6882)
AndrewChubatiuk Apr 12, 2024
6d64127
Bump python-oracledb from 2.0.1 to 2.1.2 (#6881)
snickerjp Apr 12, 2024
c12d450
show pg and athena column comments and table descriptions as antd too…
AndrewChubatiuk Apr 12, 2024
062a70c
Change default webUI port back to 5001 (#6883)
justinclift Apr 12, 2024
b9875a2
Improve the text displayed when using the command line (#6884)
justinclift Apr 13, 2024
4034f79
Bump pymongo from 4.3.3 to 4.6.3 (#6863)
dependabot[bot] Apr 13, 2024
70bb684
Bump dnspython from 2.4.2 to 2.6.1 (#6886)
dependabot[bot] Apr 13, 2024
713aca4
Extend `make up` to automatically initialise the database (#6855)
justinclift Apr 13, 2024
3dd855a
Bump sqlparse from 0.4.4 to 0.5.0 (#6895)
dependabot[bot] Apr 16, 2024
2ffeecb
fix: aws elasticsearch typo (#6899)
AndrewChubatiuk Apr 17, 2024
991e94d
Bump gunicorn from 21.2.0 to 22.0.0 (#6900)
dependabot[bot] Apr 17, 2024
7e8a61c
Rq upgrade (#6902)
AndrewChubatiuk Apr 17, 2024
6c68b48
Add pydeps Makefile target for installing Python dependencies (#6890)
justinclift Apr 18, 2024
e2a39de
Remove workaround from check_csrf() (#6919)
eradman Apr 23, 2024
5e4764a
bugfix: unable to parse elasticsearch index mappings (#6918)
stankovic-marko Apr 23, 2024
5ac5d86
consistent rq status naming and handling (#6913)
AndrewChubatiuk Apr 24, 2024
1c48b22
Update widgets.py (#6926)
gaecoli Apr 24, 2024
3399e37
mssql-odbc-arm64 (#6924)
AndrewChubatiuk Apr 24, 2024
84e6d3c
Use staticPath var to fetch unsupportedRedirect.js (#6923)
eradman Apr 24, 2024
f097603
aggregate Y column values rather than displaying last Y value (#6908)
lvitti Apr 25, 2024
0624471
Flatten all level for MongoDB data source (#6844)
KimBioInfoStudio Apr 25, 2024
dbab9ca
Source .env when running docker containers (#6927)
eradman Apr 25, 2024
372adfe
Downgrade 'codecov-action' version from v4 to v3 (#6930)
lucydodo Apr 26, 2024
2b974e1
Snapshot: 24.05.0-dev
invalid-email-address May 1, 2024
897c683
pgautoupgrade now does multi-arch builds (#6939)
justinclift May 1, 2024
b7f22b1
Fix 'str' object has no attribute 'pop' error when parsing query (#6941)
jcowley May 2, 2024
bd17662
Fixed error serialization (#6937)
AndrewChubatiuk May 2, 2024
bd115e7
Remove deprecated advocate package (#6944)
AndrewChubatiuk May 6, 2024
62890c3
Revert "Remove deprecated advocate package (#6944)"
justinclift May 6, 2024
4569191
Bump jinja2 from 3.1.3 to 3.1.4 (#6951)
dependabot[bot] May 6, 2024
1b946b5
sync .nvmrc with workflow (#6958)
ehooi May 10, 2024
753ea84
Revert CI workflow (1 of 2) (#6965)
eradman May 14, 2024
58cc49b
Revert build (2 of 2) (#6967)
eradman May 14, 2024
408ba78
Update MSSQL OBDC driver to v18 (#6968)
eradman May 14, 2024
f3a3236
Bump pyodbc from 4.0.28 to 5.1.0 (#6962)
ehooi May 14, 2024
c874eb6
Revert changes to job status (#6969)
eradman May 15, 2024
10a46fd
Revert "show pg and athena column comments and table descriptions as …
eradman May 16, 2024
bd4ba96
Typo fix in message (#6979)
justinclift May 18, 2024
60d3c66
Merge pull request from GHSA-32fw-wc7f-7qg9
May 18, 2024
ec051a8
--- (#6981)
dependabot[bot] May 21, 2024
60a12e9
Snapshot: 24.06.0-dev
invalid-email-address Jun 1, 2024
70dd059
ci: bot identity correction (#6997)
lucasfcnunes Jun 1, 2024
bceaab0
Update to Python 3.10 (#6991)
ezraodio1 Jun 5, 2024
17fe69f
PG: Only list tables where schema has USAGE permission (#7000)
eradman Jun 6, 2024
01e036d
Bump urllib3 from 1.26.18 to 1.26.19 (#7020)
dependabot[bot] Jun 18, 2024
a6c728b
Bump ws from 5.2.3 to 5.2.4 (#7021)
dependabot[bot] Jun 18, 2024
4cb32fc
Map() implementation fix for chart labels (#7022)
ezraodio1 Jun 18, 2024
db4fdd0
Snapshot: 24.07.0-dev
github-actions[bot] Jul 1, 2024
76b5a30
Bump ws from 5.2.3 to 5.2.4 in /viz-lib (#7040)
dependabot[bot] Jul 1, 2024
0056aa6
Bump certifi from 2023.11.17 to 2024.7.4 (#7047)
dependabot[bot] Jul 8, 2024
a37ef3b
Fixed frontend test deprecation warnings (#7013)
ezraodio1 Jul 8, 2024
28c3921
Update requests module to 2.32.2 (#7053)
eradman Jul 11, 2024
d9282b2
Add usedforsecurity=False flag to md5 hashes (#7049)
ezraodio1 Jul 11, 2024
dd1a9b9
Bump zipp from 3.17.0 to 3.19.1 (#7051)
dependabot[bot] Jul 12, 2024
77f108d
Bump requests to 2.32.3 (#7057)
justinclift Jul 15, 2024
57a79bc
Bump setuptools from 69.0.3 to 70.0.0 (#7060)
dependabot[bot] Jul 15, 2024
ebb0e2c
Adding ability to fix table columns in place (#7019)
ezraodio1 Jul 17, 2024
8fc4ce1
Conditionally render tooltip for Edit alert button (#7054)
ezraodio1 Jul 18, 2024
4114227
Remove defaults set during schema upgrade/downgrade (#7068)
ezraodio1 Jul 18, 2024
d2745e5
Add a label for Restyler's PR and Bump component version (#7037)
lucydodo Jul 18, 2024
80f7ba1
Added option to toggle sort on pie charts (#7055)
ezraodio1 Jul 22, 2024
c244e75
Support Arbitrary Catalog IDs on Athena Data Source (#7059)
dtaniwaki Jul 24, 2024
a69f7fb
Add new text pattern parameter (#7025)
ezraodio1 Jul 24, 2024
a9c9f08
Snapshot: 24.08.0-dev
github-actions[bot] Aug 1, 2024
714b950
Match FROM and AS capitalisation in Dockerfile (#7093)
justinclift Aug 1, 2024
ea0b3cb
Add the asdf .tool-versions file to .gitignore (#7095)
justinclift Aug 1, 2024
8725fa4
Add support for 'linux/arm64' platforms (#7094)
lucydodo Aug 1, 2024
fc1e1f7
Add min/max/first selector for alerts (#7076)
ezraodio1 Aug 1, 2024
660d04b
Adding Evaluate button for alerts to test them (#7032)
ezraodio1 Aug 1, 2024
86b75db
get data size in memory for better logs (#7090)
zachliu Aug 1, 2024
ed8c05f
Fix columns duplication on MongoDB Query Runner #6640 (#6641)
masayuki038 Aug 1, 2024
ec70ff4
Bump cryptography to 42.0.x & snowflake-connector-python to 3.12.0 (#…
justinclift Aug 1, 2024
5257e39
Revert "Removed unused configuration class (#6682)" (#7071)
eradman Aug 1, 2024
7220365
update rds trust (#7100)
arichtman-srt Aug 2, 2024
c1a60bf
Snapshot: 24.08.1-dev
github-actions[bot] Aug 2, 2024
e59c02f
Bump bootstrap to 3.4.1
justinclift Aug 2, 2024
a531597
Add the option to take new custom version for Snapshot (#7096)
lucydodo Aug 2, 2024
a2611b8
Fix a display order bug in MongoDB Query Runner (#7106)
masayuki038 Aug 3, 2024
51ef625
Fix alert evaluation logic and issue with calculating min and max of …
ezraodio1 Aug 5, 2024
a4f92a8
Add data type to redshift query runner (#7109)
zachliu Aug 5, 2024
b1fe2d4
Bump sentry-sdk from 1.28.1 to 2.8.0 (#7069)
dependabot[bot] Aug 6, 2024
285c2b6
Add data type to athena query runner (#7112)
zachliu Aug 7, 2024
9de135c
Add option to choose color scheme for charts (#7062)
ezraodio1 Aug 8, 2024
159a329
Bump elliptic to version 6.5.7 to fix a Dependabot warning (#7120)
justinclift Aug 14, 2024
c073c1e
Fix mismatched poetry version (#7122)
zachliu Aug 16, 2024
58a7438
Bump python-rapidjson to 1.20 (#7126)
justinclift Aug 20, 2024
79a4c4c
Revert "Adding ability to fix table columns in place (#7019)" (#7131)
eradman Aug 26, 2024
c25c65b
Bump webpack from 5.88.2 to 5.94.0 in /viz-lib (#7135)
dependabot[bot] Aug 31, 2024
3330815
Snapshot: 24.09.0-dev
github-actions[bot] Sep 1, 2024
a85b9d7
Update pymssql to fix some problems with macOS ARM64 (`2.3.1`) (#7140)
justinclift Sep 4, 2024
2ab07f9
Remove left over compose.base.yaml file (#7142)
justinclift Sep 6, 2024
76eeea1
Make schema refresh timeout configurable via env var (#7114)
zachliu Sep 9, 2024
821c1a9
Bump path-to-regexp from 3.2.0 to 3.3.0 (#7154)
dependabot[bot] Sep 12, 2024
d6c6e3b
Bump express from 4.19.2 to 4.21.0 (#7155)
dependabot[bot] Sep 12, 2024
75e1ce4
Bump body-parser from 1.20.1 to 1.20.3 (#7156)
dependabot[bot] Sep 12, 2024
fb1a056
Add REDASH_HOST to the docker compose file (#7157)
justinclift Sep 12, 2024
5cf0b7b
Better error msg for token validation (#7159)
zachliu Sep 14, 2024
79bbb24
Update `make up` to automatically initialise the db (#7161)
justinclift Sep 14, 2024
590d39b
Bump dompurify from 2.0.17 to 2.5.4 in /viz-lib (#7163)
dependabot[bot] Sep 17, 2024
c42b151
Automatically remove orphans when running make up (#7164)
justinclift Sep 17, 2024
38dc31a
Get rid of the strange looking 0 following "Running..." and "runtime"…
zachliu Sep 19, 2024
e4a841a
Snapshot: 24.10.0-dev
github-actions[bot] Oct 1, 2024
a03668f
Bump restrictedpython from 6.2 to 7.3 (#7181)
dependabot[bot] Oct 1, 2024
7c22756
Move restyled to a github action (#7191)
eradman Oct 16, 2024
04a25f4
Fix RQ wrongly moving jobs to FailedJobRegistry (#7186)
thiagogds Oct 17, 2024
ee35912
Use correct redis connection (#7077)
thiagogds Oct 24, 2024
ba42939
Bump snowflake-connector-python from 3.12.0 to 3.12.3 (#7203)
dependabot[bot] Oct 24, 2024
d359a71
Bump http-proxy-middleware from 2.0.6 to 2.0.7 (#7204)
dependabot[bot] Oct 24, 2024
d8dde6c
Bump cryptography from 42.0.8 to 43.0.1 (#7205)
dependabot[bot] Oct 25, 2024
ba973eb
Fixes #6767: correctly rehash queries in a migration (#7184)
arikfr Oct 25, 2024
b922730
Docker build: use heredoc for multi-line actions (#7210)
eradman Oct 29, 2024
673ba76
Fix issue with scheduled queries (#7111)
ezraodio1 Oct 29, 2024
38d0579
Bump elliptic from 6.5.7 to 6.6.0 (#7214)
dependabot[bot] Oct 31, 2024
2aae570
don't crash when there is no data (#7208)
yeger00 Oct 31, 2024
49277d2
Snapshot: 24.11.0-dev
github-actions[bot] Nov 1, 2024
349cd5d
Bring back version check & beacon reporting (#7211)
arikfr Nov 6, 2024
baa9bbd
Use head.sha for restyled checkout (#7227)
eradman Nov 22, 2024
c12e68f
Only evaluate the next state if there's a value (#7222)
thiagogds Nov 26, 2024
de49b73
Replace ptvsd with debugpy to match modern VS Code (#7234)
eradman Nov 26, 2024
2ff8367
Snapshot: 24.12.0-dev
github-actions[bot] Dec 1, 2024
130ab1f
Update to paramiko-3.4.1 (#7240)
eradman Dec 7, 2024
f7d4850
Bump nanoid from 3.3.6 to 3.3.8 (#7249)
dependabot[bot] Dec 13, 2024
d884da2
BigQuery: add date, datetime type mapping (#7252)
yoshiokatsuneo Dec 18, 2024
89d7f54
Handle the case when query runner configuration is an empty dict. (#7…
arikfr Dec 24, 2024
b9583c0
Create workflow trigger for publishing release image (#7259)
eradman Dec 27, 2024
52dc176
Bump jinja2 from 3.1.4 to 3.1.5 (#7262)
dependabot[bot] Dec 27, 2024
530c1a0
Support result reuse in Athena data sources (#7202)
dtaniwaki Dec 27, 2024
3142131
Bump actions/upload-artifact from v3 to v4 (#7266)
lucydodo Dec 30, 2024
c08292d
Use Codecov token (#7265)
lucydodo Dec 30, 2024
4ee53a9
Snapshot: 25.01.0-dev
github-actions[bot] Jan 1, 2025
0dd7ac3
Bump virtualenv from 20.25.0 to 20.26.6 (#7276)
dependabot[bot] Jan 14, 2025
10ce280
Default to not allow HTML content in tables (#7064)
ezraodio1 Jan 15, 2025
8c58904
Use ARM64 runners instead of virtualization for ARM64 image builds (#…
lucydodo Jan 19, 2025
d03a2c4
Fix error in rehash DB migration with Elasticsearch queries (#7292)
wm3 Jan 23, 2025
85f0019
GitHub Actions Workflow updates (#7298)
arikfr Jan 31, 2025
2776992
Snapshot: 25.02.0-dev
github-actions[bot] Feb 1, 2025
96ea019
Fix errors in webex alert destination. Add formatting support for QUE…
metheos Feb 4, 2025
ec2ca6f
BigQuery: show column type on Schema Browser (#7257)
yoshiokatsuneo Feb 5, 2025
925bb91
Use absolute path for image resources (#7322)
eradman Feb 12, 2025
53eab14
Make autocomplete always available (#7326)
yoshiokatsuneo Feb 13, 2025
71902e5
FIX : redash docker image TAG (#7280)
Lee2532 Feb 14, 2025
e95de2e
Update oracledb package to version 2.5.1 and adjust Python version co…
snickerjp Feb 18, 2025
8387fe6
Fix the issue that chart(scatter, line, bubble...) having same x-valu…
yoshiokatsuneo Feb 18, 2025
5df5ca8
add NULLS LAST option for Query order (#7341)
yoshiokatsuneo Feb 25, 2025
4357ea5
Fix UnboundLocalError when checking alerts for query (#7346)
bluetech Feb 25, 2025
d0af449
Sanitize NaN, Infinite, -Infinite causing error when saving as Postgr…
yoshiokatsuneo Feb 27, 2025
3bad8c8
TiDB: Exclude INFORMATION_SCHEMA (#7352)
shunki-fujita Feb 28, 2025
3275a9e
Snapshot: 25.03.0-dev
github-actions[bot] Mar 1, 2025
594e2f2
Upgrade plotly.js to version 2 to fix the UI crashing issue (#7359)
yoshiokatsuneo Mar 5, 2025
353776e
Fix to make "show data labels" on bar chart works (#7363)
yoshiokatsuneo Mar 17, 2025
866fb48
Bump tar-fs from 2.1.1 to 2.1.2 (#7385)
dependabot[bot] Mar 29, 2025
612eb8c
Snapshot: 25.04.0-dev
github-actions[bot] Apr 1, 2025
84262fe
Fix table item list ordering (#7366)
yoshiokatsuneo Apr 3, 2025
eced377
Require vars.DOCKER_REPOSITORY to publish image (#7400)
eradman Apr 3, 2025
2375f0b
Partiallly Revert "Remove workaround from check_csrf() (#6919)" (#7327)
eradman Apr 10, 2025
4ed0ad3
BigQuery: Avoid too long(10 seconds) interval for bigquery api to get…
yoshiokatsuneo Apr 14, 2025
6167edf
Change BigQuery super class from BaseQueryRunner to BaseSQLQueryRunne…
yoshiokatsuneo Apr 16, 2025
0b6a53a
Add translate="no" to html tag to prevent redash from translating and…
yoshiokatsuneo Apr 29, 2025
231fd36
Snapshot: 25.05.0-dev
github-actions[bot] May 1, 2025
8e6c02e
ci: snapshot only on default branch (#7355)
lucasfcnunes May 1, 2025
2f35ceb
Push image using DOCKER_REPOSITORY (#7428)
eradman May 5, 2025
5d31429
Update Azure Data Explorer query runner to latest version (#7411)
spacentropy May 5, 2025
0900178
Change query processing wait time to make response quick (#7320)
yoshiokatsuneo May 7, 2025
a1a4bc9
TypeScript sourcemap for viz-lib (#7336)
yoshiokatsuneo May 12, 2025
e46d44f
include Plotly.js localization (#7323)
yoshiokatsuneo May 16, 2025
b80c5f6
Update assertion method in JSON dumps test (#7424)
emmanuel-ferdman May 18, 2025
14550a9
Fix: saving empty query with auto limit crashes (#7430)
yoshiokatsuneo May 20, 2025
6b1e910
Snapshot: 25.06.0-dev
github-actions[bot] Jun 1, 2025
c9ddd2a
Snapshot: 25.07.0-dev
github-actions[bot] Jul 1, 2025
df8be91
Add migration to set default alert selector (#7475)
kfrydel Jul 9, 2025
f3b0b60
feat(flask): make refresh cookie name configurable (#7473)
emaincourt Jul 9, 2025
d8ae679
Make NULL values visible (#7439)
yoshiokatsuneo Jul 16, 2025
9f76fda
Use 12-column layout for dashboard grid (#7396)
eradman Jul 16, 2025
a34c159
Upgrade prettier version to the same version that CI is using (#7367)
yoshiokatsuneo Jul 17, 2025
3f781d2
Push by tag name for Docker repository "redash" (#7321)
eradman Jul 17, 2025
5ae1f70
Add support for Google OAuth Scheme Override (#7178)
konstde00 Jul 20, 2025
4e200b4
bigquery load schema diff locations ignore (#7289)
Lee2532 Jul 22, 2025
f5e2a4c
Sort Dashboard and Query tags by name (#7484)
eradman Jul 23, 2025
09ed3c4
Clickhouse: do not display INFORMATION_SCHEMA tables (#7489)
eradman Jul 31, 2025
e69283f
clickhouse: display data types (#7490)
zachliu Jul 31, 2025
a6298f2
MongoDB: fix for empty username/password (#7487)
yoshiokatsuneo Jul 31, 2025
35afe88
Snapshot: 25.08.0-dev
github-actions[bot] Aug 1, 2025
00a97d9
Add private_key auth method to snowflake query runner (#7371)
adrianoesch Aug 8, 2025
0b5907f
Fix css height for mobile safari not to overlap URL bar (#7334)
yoshiokatsuneo Aug 22, 2025
4ae372f
Update from webpack4 to webpack5 (#7507)
yoshiokatsuneo Aug 25, 2025
fae354f
Update Poetry to 2.1.4 (#7509)
eradman Aug 26, 2025
24ca513
Update plotly.js to 3.1.0 (#7514)
yoshiokatsuneo Aug 28, 2025
e586ab7
Fix stacking bar chart (#7516)
yoshiokatsuneo Aug 29, 2025
438efd0
Snapshot: 25.09.0-dev
github-actions[bot] Sep 1, 2025
2762f1f
Fix: null is not shown for text with "Allow HTML content" (#7519)
yoshiokatsuneo Sep 3, 2025
74de676
Allow HTTP request line more than 4096 bytes (#7506)
yoshiokatsuneo Sep 4, 2025
f95156e
Rely on information_schema.columns for views and foreign tables (#7521)
eradman Sep 8, 2025
7838058
fix: webpack missing source-map warning for @plotly/msgbox-gl (#7522)
yoshiokatsuneo Sep 8, 2025
ac81f0b
keep ordering on search (#7520)
yoshiokatsuneo Sep 8, 2025
1202501
Add "Missing and NULL values" option to scatter chart (#7523)
yoshiokatsuneo Sep 8, 2025
47b1309
Add range slider to the chart (#7525)
yoshiokatsuneo Sep 9, 2025
777153e
Update jql.py (jira datasource) to use jira api v3 updated. (#7527)
artemsafiyulin Sep 10, 2025
59951ed
Fix/too many history replace state (#7530)
yoshiokatsuneo Sep 11, 2025
b8ebf49
Make favorite queries/dashboard order by starred at(favorited at) (#7…
yoshiokatsuneo Sep 16, 2025
5e8915a
BigQuery: show column description(comment) on Schema Browser (#7538)
yoshiokatsuneo Sep 23, 2025
56c06ad
BigQuery: Remove "Job ID" metadata on annotaton to avoid cache misses…
yoshiokatsuneo Sep 24, 2025
9a1d333
BigQuery: support multiple locations (#7540)
yoshiokatsuneo Sep 25, 2025
92f15a3
BigQuery: Add table description on Schema Browser (#7543)
yoshiokatsuneo Sep 30, 2025
7e39b36
MySQL: add column type, comment, and table comment (#7544)
yoshiokatsuneo Sep 30, 2025
e0410e2
Snapshot: 25.10.0-dev
github-actions[bot] Oct 1, 2025
1cc2008
Add duckdb support (#7548)
zbalkan Oct 1, 2025
6171248
SchemaBrowser: on column comment tooltip, show newlines correctly (#7…
yoshiokatsuneo Oct 2, 2025
ea589ad
Query Serach: avoid concurrent search API request (#7551)
yoshiokatsuneo Oct 2, 2025
5b463b0
Make details visualization configurable (#7535)
kfrydel Oct 6, 2025
8747d02
Use standard PostgreSQL image and drop clean-all target (#7555)
eradman Oct 6, 2025
b353057
Update ace-builds/react-ace to the latest versions (#7532)
yoshiokatsuneo Oct 6, 2025
9503cc9
Correct custom chart help text: use newPlot() (#7557)
eradman Oct 8, 2025
c5aa5da
Update queries.latest_query_data on save (#7560)
yoshiokatsuneo Oct 14, 2025
bac2160
Advanced query search syntax for multi byte search (#7546)
yoshiokatsuneo Oct 15, 2025
772b160
Snapshot: 25.11.0-dev
github-actions[bot] Nov 1, 2025
d5fbf54
pg: fix has_privileges function to quote schema and table names (#7574)
sarvesh68 Nov 20, 2025
b6f4159
Add "Last 10 years" option for dynamic date range (#7422)
yoshiokatsuneo Nov 21, 2025
b5781a8
Add lineShape option for Line and Area charts (#7582)
eradman Nov 25, 2025
9d49e04
PostgreSQL: allow connection parameters to be specified (#7579)
eradman Nov 26, 2025
9743820
Snapshot: 25.12.0-dev
github-actions[bot] Dec 1, 2025
761eb0b
Add ibm-db package to enable DB2 as datasource: (#7581)
nicof38 Dec 9, 2025
4353a82
Persist updated values and apply saved dashboard parameters (#7570)
denisov-vlad Dec 12, 2025
bc68b1c
fix(destinations): Handle unicode characters in webhook notifications…
jingyugao Dec 15, 2025
262d46f
Multi-org: format base path, not including protocol (#7260)
eradman Dec 18, 2025
43ee21a
Feature/catch notsupported exception (#7573)
snickerjp Dec 19, 2025
7d325f1
Snapshot: 26.01.0-dev
github-actions[bot] Jan 1, 2026
45bc24a
duckdb: Show catalog (database) where applicable (e.g. Motherduck) (#…
wlach Jan 4, 2026
f7728ad
Fix Elasticsearch connector configuration key mismatch (#7607)
David-Botos Jan 24, 2026
bc0add4
Add impersonation option in trino datasource (#7605)
kimsehwan96 Jan 24, 2026
d2a7d87
chore: support ipv6 for server in docker (#7596)
eradman Jan 29, 2026
8b4914f
Snapshot: 26.02.0-dev
github-actions[bot] Feb 1, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .ci/Dockerfile.cypress
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ WORKDIR $APP

COPY package.json yarn.lock .yarnrc $APP/
COPY viz-lib $APP/viz-lib
RUN npm install yarn@1.22.19 -g && yarn --frozen-lockfile --network-concurrency 1 > /dev/null
RUN npm install yarn@1.22.22 -g && yarn --frozen-lockfile --network-concurrency 1 > /dev/null

COPY . $APP

Expand Down
2 changes: 1 addition & 1 deletion .ci/compose.ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ services:
image: redis:7-alpine
restart: unless-stopped
postgres:
image: pgautoupgrade/pgautoupgrade:15-alpine3.8
image: postgres:18-alpine
command: "postgres -c fsync=off -c full_page_writes=off -c synchronous_commit=OFF"
restart: unless-stopped
environment:
Expand Down
2 changes: 1 addition & 1 deletion .ci/compose.cypress.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ services:
image: redis:7-alpine
restart: unless-stopped
postgres:
image: pgautoupgrade/pgautoupgrade:15-alpine3.8
image: postgres:18-alpine
command: "postgres -c fsync=off -c full_page_writes=off -c synchronous_commit=OFF"
restart: unless-stopped
environment:
Expand Down
1 change: 0 additions & 1 deletion .dockerignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
client/.tmp/
client/dist/
node_modules/
viz-lib/node_modules/
.tmp/
Expand Down
33 changes: 18 additions & 15 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,12 @@ on:
push:
branches:
- master
pull_request_target:
pull_request:
branches:
- master
env:
NODE_VERSION: 18
YARN_VERSION: 1.22.22
jobs:
backend-lint:
runs-on: ubuntu-22.04
Expand Down Expand Up @@ -59,15 +60,17 @@ jobs:
mkdir -p /tmp/test-results/unit-tests
docker cp tests:/app/coverage.xml ./coverage.xml
docker cp tests:/app/junit.xml /tmp/test-results/unit-tests/results.xml
- name: Upload coverage reports to Codecov
uses: codecov/codecov-action@v3
# - name: Upload coverage reports to Codecov
# uses: codecov/codecov-action@v3
# with:
# token: ${{ secrets.CODECOV_TOKEN }}
- name: Store Test Results
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: test-results
name: backend-test-results
path: /tmp/test-results
- name: Store Coverage Results
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: coverage
path: coverage.xml
Expand All @@ -88,14 +91,14 @@ jobs:
cache: 'yarn'
- name: Install Dependencies
run: |
npm install --global --force yarn@1.22.19
npm install --global --force yarn@$YARN_VERSION
yarn cache clean && yarn --frozen-lockfile --network-concurrency 1
- name: Run Lint
run: yarn lint:ci
- name: Store Test Results
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: test-results
name: frontend-test-results
path: /tmp/test-results

frontend-unit-tests:
Expand All @@ -115,7 +118,7 @@ jobs:
cache: 'yarn'
- name: Install Dependencies
run: |
npm install --global --force yarn@1.22.19
npm install --global --force yarn@$YARN_VERSION
yarn cache clean && yarn --frozen-lockfile --network-concurrency 1
- name: Run App Tests
run: yarn test
Expand All @@ -131,9 +134,9 @@ jobs:
COMPOSE_PROJECT_NAME: cypress
CYPRESS_INSTALL_BINARY: 0
PUPPETEER_SKIP_CHROMIUM_DOWNLOAD: 1
PERCY_TOKEN: ${{ secrets.PERCY_TOKEN }}
CYPRESS_PROJECT_ID: ${{ secrets.CYPRESS_PROJECT_ID }}
CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }}
# PERCY_TOKEN: ${{ secrets.PERCY_TOKEN }}
# CYPRESS_PROJECT_ID: ${{ secrets.CYPRESS_PROJECT_ID }}
# CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }}
steps:
- if: github.event.pull_request.mergeable == 'false'
name: Exit if PR is not mergeable
Expand All @@ -152,7 +155,7 @@ jobs:
echo "CODE_COVERAGE=true" >> "$GITHUB_ENV"
- name: Install Dependencies
run: |
npm install --global --force yarn@1.22.19
npm install --global --force yarn@$YARN_VERSION
yarn cache clean && yarn --frozen-lockfile --network-concurrency 1
- name: Setup Redash Server
run: |
Expand All @@ -168,7 +171,7 @@ jobs:
- name: Copy Code Coverage Results
run: docker cp cypress:/usr/src/app/coverage ./coverage || true
- name: Store Coverage Results
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: coverage
path: coverage
82 changes: 70 additions & 12 deletions .github/workflows/periodic-snapshot.yml
Original file line number Diff line number Diff line change
@@ -1,28 +1,86 @@
name: Periodic Snapshot

# 10 minutes after midnight on the first of every month
on:
schedule:
- cron: "10 0 1 * *"
- cron: '10 0 1 * *' # 10 minutes after midnight on the first day of every month
workflow_dispatch:
inputs:
bump:
description: 'Bump the last digit of the version'
required: false
type: boolean
version:
description: 'Specific version to set'
required: false
default: ''

env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

permissions:
actions: write
contents: write

jobs:
bump-version-and-tag:
runs-on: ubuntu-latest
if: github.ref_name == github.event.repository.default_branch
steps:
- uses: actions/checkout@v4
with:
ssh-key: ${{secrets.ACTION_PUSH_KEY}}
ssh-key: ${{ secrets.ACTION_PUSH_KEY }}

- run: |
date="$(date +%y.%m).0-dev"
gawk -i inplace -F: -v q=\" -v tag=$date '/^ "version": / { print $1 FS, q tag q ","; next} { print }' package.json
gawk -i inplace -F= -v q=\" -v tag=$date '/^__version__ =/ { print $1 FS, q tag q; next} { print }' redash/__init__.py
gawk -i inplace -F= -v q=\" -v tag=$date '/^version =/ { print $1 FS, q tag q; next} { print }' pyproject.toml
git config user.name github-actions
git config user.email github-actions@github.com
git config user.name 'github-actions[bot]'
git config user.email '41898282+github-actions[bot]@users.noreply.github.com'

# Function to bump the version
bump_version() {
local version="$1"
local IFS=.
read -r major minor patch <<< "$version"
patch=$((patch + 1))
echo "$major.$minor.$patch-dev"
}

# Determine the new version tag
if [ "${{ github.event_name }}" = "workflow_dispatch" ]; then
BUMP_INPUT="${{ github.event.inputs.bump }}"
SPECIFIC_VERSION="${{ github.event.inputs.version }}"

# Check if both bump and specific version are provided
if [ "$BUMP_INPUT" = "true" ] && [ -n "$SPECIFIC_VERSION" ]; then
echo "::error::Error: Cannot specify both bump and specific version."
exit 1
fi

if [ -n "$SPECIFIC_VERSION" ]; then
TAG_NAME="$SPECIFIC_VERSION-dev"
elif [ "$BUMP_INPUT" = "true" ]; then
CURRENT_VERSION=$(grep '"version":' package.json | awk -F\" '{print $4}')
TAG_NAME=$(bump_version "$CURRENT_VERSION")
else
echo "No version bump or specific version provided for manual dispatch."
exit 1
fi
else
TAG_NAME="$(date +%y.%m).0-dev"
fi

echo "New version tag: $TAG_NAME"

# Update version in files
gawk -i inplace -F: -v q=\" -v tag=${TAG_NAME} '/^ "version": / { print $1 FS, q tag q ","; next} { print }' package.json
gawk -i inplace -F= -v q=\" -v tag=${TAG_NAME} '/^__version__ =/ { print $1 FS, q tag q; next} { print }' redash/__init__.py
gawk -i inplace -F= -v q=\" -v tag=${TAG_NAME} '/^version =/ { print $1 FS, q tag q; next} { print }' pyproject.toml

git add package.json redash/__init__.py pyproject.toml
git commit -m "Snapshot: ${date}"
git tag $date
git push --atomic origin master refs/tags/$date
git commit -m "Snapshot: ${TAG_NAME}"
git tag ${TAG_NAME}
git push --atomic origin master refs/tags/${TAG_NAME}

# Run the 'preview-image' workflow if run this workflow manually
# For more information, please see the: https://docs.github.com/en/actions/security-guides/automatic-token-authentication
if [ "$BUMP_INPUT" = "true" ] || [ -n "$SPECIFIC_VERSION" ]; then
gh workflow run preview-image.yml --ref $TAG_NAME
fi
122 changes: 110 additions & 12 deletions .github/workflows/preview-image.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,16 @@ on:
push:
tags:
- '*-dev'
workflow_dispatch:
inputs:
dockerRepository:
description: 'Docker repository'
required: true
default: 'preview'
type: choice
options:
- preview
- redash

env:
NODE_VERSION: 18
Expand All @@ -22,14 +32,30 @@ jobs:
elif [[ "${{ secrets.DOCKER_PASS }}" == '' ]]; then
echo 'Docker password is empty. Skipping build+push'
echo skip=true >> "$GITHUB_OUTPUT"
elif [[ "${{ vars.DOCKER_REPOSITORY }}" == '' ]]; then
echo 'Docker repository is empty. Skipping build+push'
echo skip=true >> "$GITHUB_OUTPUT"
else
echo 'Docker user and password are set and branch is `master`.'
echo 'Building + pushing `preview` image.'
echo skip=false >> "$GITHUB_OUTPUT"
fi

build-docker-image:
runs-on: ubuntu-22.04
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
arch:
- amd64
- arm64
include:
- arch: amd64
os: ubuntu-22.04
- arch: arm64
os: ubuntu-22.04-arm
outputs:
VERSION_TAG: ${{ steps.version.outputs.VERSION_TAG }}
needs:
- build-skip-check
if: needs.build-skip-check.outputs.skip == 'false'
Expand All @@ -44,11 +70,6 @@ jobs:
node-version: ${{ env.NODE_VERSION }}
cache: 'yarn'

- name: Install Dependencies
run: |
npm install --global --force yarn@1.22.19
yarn cache clean && yarn --frozen-lockfile --network-concurrency 1

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3

Expand All @@ -58,6 +79,13 @@ jobs:
username: ${{ vars.DOCKER_USER }}
password: ${{ secrets.DOCKER_PASS }}

- name: Install Dependencies
env:
PUPPETEER_SKIP_CHROMIUM_DOWNLOAD: true
run: |
npm install --global --force yarn@1.22.22
yarn cache clean && yarn --frozen-lockfile --network-concurrency 1

- name: Set version
id: version
run: |
Expand All @@ -67,21 +95,91 @@ jobs:
echo "VERSION_TAG=$VERSION_TAG" >> "$GITHUB_OUTPUT"

- name: Build and push preview image to Docker Hub
id: build-preview
uses: docker/build-push-action@v4
if: ${{ github.event.inputs.dockerRepository == 'preview' || !github.event.workflow_run }}
with:
push: true
tags: |
redash/redash:preview
redash/preview:${{ steps.version.outputs.VERSION_TAG }}
${{ vars.DOCKER_REPOSITORY }}/redash
${{ vars.DOCKER_REPOSITORY }}/preview
context: .
build-args: |
test_all_deps=true
cache-from: type=gha
cache-to: type=gha,mode=max
platforms: linux/amd64
outputs: type=image,push-by-digest=true,push=true
cache-from: type=gha,scope=${{ matrix.arch }}
cache-to: type=gha,mode=max,scope=${{ matrix.arch }}
env:
DOCKER_CONTENT_TRUST: true

- name: Build and push release image to Docker Hub
id: build-release
uses: docker/build-push-action@v4
if: ${{ github.event.inputs.dockerRepository == 'redash' }}
with:
tags: |
${{ vars.DOCKER_REPOSITORY }}/redash:${{ steps.version.outputs.VERSION_TAG }}
context: .
build-args: |
test_all_deps=true
outputs: type=image,push-by-digest=false,push=true
cache-from: type=gha,scope=${{ matrix.arch }}
cache-to: type=gha,mode=max,scope=${{ matrix.arch }}
env:
DOCKER_CONTENT_TRUST: true

- name: "Failure: output container logs to console"
if: failure()
run: docker compose logs

- name: Export digest
run: |
mkdir -p ${{ runner.temp }}/digests
if [[ "${{ github.event.inputs.dockerRepository }}" == 'preview' || !github.event.workflow_run ]]; then
digest="${{ steps.build-preview.outputs.digest}}"
else
digest="${{ steps.build-release.outputs.digest}}"
fi
touch "${{ runner.temp }}/digests/${digest#sha256:}"

- name: Upload digest
uses: actions/upload-artifact@v4
with:
name: digests-${{ matrix.arch }}
path: ${{ runner.temp }}/digests/*
if-no-files-found: error

merge-docker-image:
runs-on: ubuntu-22.04
needs: build-docker-image
steps:
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3

- name: Login to DockerHub
uses: docker/login-action@v3
with:
username: ${{ vars.DOCKER_USER }}
password: ${{ secrets.DOCKER_PASS }}

- name: Download digests
uses: actions/download-artifact@v4
with:
path: ${{ runner.temp }}/digests
pattern: digests-*
merge-multiple: true

- name: Create and push manifest for the preview image
if: ${{ github.event.inputs.dockerRepository == 'preview' || !github.event.workflow_run }}
working-directory: ${{ runner.temp }}/digests
run: |
docker buildx imagetools create -t ${{ vars.DOCKER_REPOSITORY }}/redash:preview \
$(printf '${{ vars.DOCKER_REPOSITORY }}/redash:preview@sha256:%s ' *)
docker buildx imagetools create -t ${{ vars.DOCKER_REPOSITORY }}/preview:${{ needs.build-docker-image.outputs.VERSION_TAG }} \
$(printf '${{ vars.DOCKER_REPOSITORY }}/preview:${{ needs.build-docker-image.outputs.VERSION_TAG }}@sha256:%s ' *)

- name: Create and push manifest for the release image
if: ${{ github.event.inputs.dockerRepository == 'redash' }}
working-directory: ${{ runner.temp }}/digests
run: |
docker buildx imagetools create -t ${{ vars.DOCKER_REPOSITORY }}/redash:${{ needs.build-docker-image.outputs.VERSION_TAG }} \
$(printf '${{ vars.DOCKER_REPOSITORY }}/redash:${{ needs.build-docker-image.outputs.VERSION_TAG }}@sha256:%s ' *)
Loading