Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
803 commits
Select commit Hold shift + click to select a range
80a38e6
isort
ofek1weiss Aug 24, 2025
792cd1b
Merge pull request #1994 from elementary-data/ele-4990-use-sets-for-a…
ofek1weiss Aug 24, 2025
9c91661
use sets for alert filters
ofek1weiss Aug 24, 2025
930cf84
extract normalization
ofek1weiss Aug 24, 2025
5d423c6
isort
ofek1weiss Aug 24, 2025
5af40f2
Fix: Replace double quotes with single quotes in elementary_database_…
mschmid09 Aug 19, 2025
2734f78
Replace double quotes with backticks for better SQL compatibility
mschmid09 Aug 19, 2025
a3a3581
Wrap each identifier part in double quotes for standard SQL compatibi…
mschmid09 Aug 25, 2025
d0bc714
Ele 4942 dimension anomalies visualization (#1992)
NoyaArie Aug 27, 2025
948b8b0
update lock file (#1996)
NoyaArie Aug 28, 2025
9ef15ab
correct column references
quickcoffee Aug 29, 2025
c7d89e2
correct message building pipeline
quickcoffee Aug 29, 2025
476fae6
Polish up orchestrator info formatting
quickcoffee Aug 29, 2025
8244b2a
Fix coderabbit issues
quickcoffee Aug 29, 2025
503e3e2
release/v0.19.5 (#1998)
github-actions[bot] Aug 31, 2025
133b631
fix test dwh write dbt profies (#1999)
NoyaArie Aug 31, 2025
701198f
Merge remote-tracking branch 'upstream/master' into fix/replace-doubl…
mschmid09 Sep 1, 2025
38913e8
removed usage of deprecated `-m` flag in dbt
ofek1weiss Sep 1, 2025
0cd4382
Merge pull request #2000 from elementary-data/app-51-remove-deprecate…
ofek1weiss Sep 1, 2025
0c35a56
Merge remote-tracking branch 'upstream/master' into fix/replace-doubl…
mschmid09 Sep 2, 2025
5cde43e
disable group registration when tracking is disabled
ofek1weiss Sep 2, 2025
fd4bfd8
Merge pull request #2001 from elementary-data/app-56-do-not-identify-…
ofek1weiss Sep 2, 2025
143bdea
Merge branch 'master' into fix/replace-double-quotes-with-single-quotes
mschmid09 Sep 3, 2025
5f38f20
Handle empty result in clickhouse
ofek1weiss Sep 3, 2025
9ebd83c
update dbt package revision
ofek1weiss Sep 3, 2025
c193137
updated lock
ofek1weiss Sep 3, 2025
8c4217f
Merge pull request #2003 from elementary-data/app-61-update-dbt-package
ofek1weiss Sep 3, 2025
2ca8e55
Merge branch 'master' into fix/replace-double-quotes-with-single-quotes
mschmid09 Sep 4, 2025
0428a9b
Merge branch 'master' into app-60-fix-group-by-in-clickhouse
ofek1weiss Sep 7, 2025
44f8f8a
Merge pull request #2002 from elementary-data/app-60-fix-group-by-in-…
ofek1weiss Sep 7, 2025
ae6f024
Handle invalid characters when uploading CI artifact
elazarlachkar Sep 9, 2025
5ae0ada
Fix sed pattern
elazarlachkar Sep 9, 2025
f975ec8
require approval only for fork PRs (#2004)
haritamar Sep 10, 2025
93d7921
Merge branch 'master' into ele-5052-oss-fix-ci-artifact-upload
elazarlachkar Sep 10, 2025
a1c31f6
Merge pull request #2005 from elementary-data/ele-5052-oss-fix-ci-art…
elazarlachkar Sep 10, 2025
69c6cc9
Update README.md with new contributors (#2009)
Maayan-s Sep 14, 2025
6b5a7b6
Merge branch 'master' into fix/replace-double-quotes-with-single-quotes
mschmid09 Sep 16, 2025
cf75564
only check fork on PR events (#2011)
haritamar Sep 17, 2025
9fe09fe
Update DBT package version
elazarlachkar Sep 17, 2025
56d8f23
Updated lock file as well
elazarlachkar Sep 17, 2025
13e81d5
Merge branch 'master' into ele-5074-index-test_result_rows
elazarlachkar Sep 17, 2025
acdac83
Merge pull request #2012 from elementary-data/ele-5074-index-test_res…
elazarlachkar Sep 17, 2025
057320e
Merge branch 'master' into fix/replace-double-quotes-with-single-quotes
mschmid09 Sep 18, 2025
d7f7d9b
Ele 5089 use row number instead of rank (#2015)
NoyaArie Sep 22, 2025
5b9c539
Add attribution block to alert messages in data monitoring
MikaKerman Sep 28, 2025
c757fc4
Updated DBT pacakge revision
elazarlachkar Sep 28, 2025
620c703
Updated lock as well
elazarlachkar Sep 28, 2025
c15c28f
Merge pull request #2017 from elementary-data/ele-5095-dremio-duplica…
elazarlachkar Sep 28, 2025
ee35b00
Merge branch 'master' into app-111-powered-by-elementary-in-oss-alerts
MikaKerman Sep 28, 2025
44bb802
Merge pull request #2016 from elementary-data/app-111-powered-by-elem…
MikaKerman Sep 29, 2025
440fd9d
Ele 4724 dbt fusion support (#1961)
haritamar Sep 30, 2025
382b865
Ele 5122 cli stop using deprecated tests (#2022)
haritamar Oct 9, 2025
d48e82d
update the CLI to use the new package version (#2024)
haritamar Oct 9, 2025
b3c72c3
attempt to remove dbt-databricks restriction (#2025)
haritamar Oct 9, 2025
98c9c36
update report version (#2026)
haritamar Oct 9, 2025
525e8df
release v0.20.0 (#2027)
github-actions[bot] Oct 9, 2025
7409388
package-lock: remove name to avoid breaking old dbt versions (#2028)
haritamar Oct 9, 2025
8c8c8b2
Feature: make the number of columns that are formatted as a table in …
FrankTub Oct 9, 2025
41c3459
Added more detailed exception for teams webhook failure
ofek1weiss Oct 12, 2025
db08f96
Merge pull request #2031 from elementary-data/app-142-report-more-det…
ofek1weiss Oct 12, 2025
c9211de
changed the dbt package version to a version that fixed a dremio time…
GuyEshdat Oct 13, 2025
ff1fc83
Ele 5146 bugfix to disable_samples flag + update package ref (#2039)
haritamar Oct 29, 2025
ba986eb
limit postgres version in CI (#2040)
haritamar Oct 29, 2025
f15cb18
Correctly shorten versioned model names (#2043)
Ryosuke839 Oct 30, 2025
6db610e
fix: handle support for partial success introduce in dbt 1.9 with mic…
nicor88 Oct 30, 2025
60fa3db
Merge branch 'master' into fix-bigquery-test_result_rows_scan
arbiv Nov 11, 2025
1fe1ed3
Merge branch 'master' into fix/replace-double-quotes-with-single-quotes
arbiv Nov 11, 2025
7f13126
Merge branch 'master' into 1944-add-orchestrator-job-data-alerts
arbiv Nov 12, 2025
e346678
Configure stale workflow: mark stale after 60 days, close after 30 da…
arbiv Nov 12, 2025
e1b476e
Enhance SlackWebMessagingIntegration to support reply_broadcast optio…
MikaKerman Nov 17, 2025
fe93c6e
Merge pull request #2054 from elementary-data/app-315-broadcast-slack…
MikaKerman Nov 17, 2025
e667247
Enhance SlackWebMessagingIntegration to accept additional keyword arg…
MikaKerman Nov 17, 2025
06f761d
Merge pull request #2055 from elementary-data/app-315-broadcast-slack…
MikaKerman Nov 17, 2025
df4693f
pr comments
tlangton3 Nov 18, 2025
0b46e8b
Merge branch 'master' into fix-bigquery-test_result_rows_scan
michael-myaskovsky Nov 18, 2025
9ffe357
Merge pull request #1940 from tlangton3/fix-bigquery-test_result_rows…
michael-myaskovsky Nov 18, 2025
4df22dc
Checkpoint before follow-up message
cursoragent Nov 13, 2025
c66df63
feat: Add HTML message formatting and tests
cursoragent Nov 13, 2025
c5df15b
Improve HTML formatter with complete block coverage and enhanced UX
MikaKerman Nov 16, 2025
c9943a8
Add flake8 noqa comments for CSS style strings in HTML formatter
MikaKerman Nov 16, 2025
c2aeaf1
Improve HTML email formatter design
yonnist Nov 17, 2025
42638e3
Refactor HTMLFormatter for improved readability and style consistency
MikaKerman Nov 18, 2025
db3c252
test: update message format fixtures for enhanced test suite
MikaKerman Nov 18, 2025
353dadc
refactor: improve HTMLFormatter code readability and maintainability
MikaKerman Nov 18, 2025
ef50438
Merge pull request #2051 from elementary-data/cursor/create-html-emai…
MikaKerman Nov 19, 2025
a03dc64
Remove deprecated test recommendations macro
elazarlachkar Nov 19, 2025
2ed5914
Merge branch 'master' of github.com:elementary-data/elementary into c…
elazarlachkar Nov 19, 2025
13bee34
Merge pull request #2057 from elementary-data/core-113-remove-depreca…
elazarlachkar Nov 20, 2025
c5885f5
Fixed namespace of macro call
elazarlachkar Nov 24, 2025
68e48a0
Merge pull request #2061 from elementary-data/core-121-fix-clis-macro…
elazarlachkar Nov 24, 2025
e938870
unfurl_links=False for avoiding preview in slack messages (#2064)
GuyEshdat Dec 1, 2025
da1246a
Simplify by just stripping the "
mschmid09 Dec 2, 2025
a4d5a1c
Merge branch 'master' into fix/replace-double-quotes-with-single-quotes
mschmid09 Dec 2, 2025
34b875e
Merge pull request #1987 from mschmidoev/fix/replace-double-quotes-wi…
elazarlachkar Dec 2, 2025
e21bb09
Update README with new logo and updated badge links
NoyaOffer Dec 2, 2025
59a3963
change content (missing screenshots)
NoyaOffer Dec 2, 2025
ccee7e1
Update README.md
NoyaOffer Dec 2, 2025
71a9d64
Update README with Elementary OSS introduction
NoyaOffer Dec 2, 2025
db2dba0
Update README.md
NoyaOffer Dec 2, 2025
4eb5257
Update README.md
NoyaOffer Dec 2, 2025
04dadee
Update README with new documentation link
NoyaOffer Dec 2, 2025
bb4d710
Modify image display in README.md
NoyaOffer Dec 2, 2025
0115da3
Add files via upload
NoyaOffer Dec 2, 2025
dcf01ab
Update README.md
NoyaOffer Dec 2, 2025
ab81eb8
Add files via upload
NoyaOffer Dec 2, 2025
21cfb82
Update README.md
NoyaOffer Dec 2, 2025
9b107d7
Update README.md
NoyaOffer Dec 2, 2025
0fce572
Update README.md
NoyaOffer Dec 2, 2025
fedd1aa
Update README.md
NoyaOffer Dec 2, 2025
8d5d851
Update README.md
NoyaOffer Dec 2, 2025
ef525a2
Using community Athena pacakge in CI
elazarlachkar Dec 4, 2025
718974a
Fixed prettier lint
elazarlachkar Dec 4, 2025
c9ea7de
Merge pull request #2065 from elementary-data/update-readme
elazarlachkar Dec 4, 2025
5e55945
Merge branch 'master' into core-180-fix-cli-ci-for-athena
elazarlachkar Dec 4, 2025
4bc7494
Merge pull request #2066 from elementary-data/core-180-fix-cli-ci-for…
elazarlachkar Dec 4, 2025
c3e1463
Upgrade dbt package to 0.21.0
elazarlachkar Dec 7, 2025
28a0ce0
Removed name from package-lock for backwards compatability
elazarlachkar Dec 7, 2025
658477d
Merge branch 'master' into core-60-oss-version-0.21.0
elazarlachkar Dec 7, 2025
0117979
Merge pull request #2067 from elementary-data/core-60-oss-version-0.21.0
elazarlachkar Dec 7, 2025
b342b43
Updated report index.html
elazarlachkar Dec 7, 2025
9b44424
Merge pull request #2068 from elementary-data/core-60-oss-version-rep…
elazarlachkar Dec 7, 2025
deb7aaa
release v0.20.1
web-flow Dec 7, 2025
272a40c
Merge pull request #2069 from elementary-data/release/v0.20.1
elazarlachkar Dec 7, 2025
f721a57
Merge branch 'master' into 1944-add-orchestrator-job-data-alerts
arbiv Dec 17, 2025
3624b8b
Replace numpy with math (#2074)
vyagubov Dec 18, 2025
8eefdbe
Python 3.13 support (#2078)
vyagubov Jan 6, 2026
07ca1d1
Update README.md
Maayan-s Jan 6, 2026
36a74db
update dbt package reference (#2080)
haritamar Jan 6, 2026
cdcc905
New contributors update! 🎉 @Ryosuke839, @tlangton3, @SoloJ, @StevenRe…
Maayan-s Jan 7, 2026
d0ae9ea
Add OrchestratorInfo class and update alert handling for class
quickcoffee Jan 10, 2026
77dbc41
Remove unnecessary inline comments from orchestrator info code
quickcoffee Jan 10, 2026
02eefca
Merge branch 'master' into 1944-add-orchestrator-job-data-alerts
ofek1weiss Jan 11, 2026
0cb6f73
unit tests without target and OVERRIDE=true
quickcoffee Jan 11, 2026
5cdc1dd
Merge pull request #1997 from quickcoffee/1944-add-orchestrator-job-d…
ofek1weiss Jan 12, 2026
2d071b1
Include seeds without tests in filters
elazarlachkar Jan 14, 2026
c8ed0b2
Revert "Include seeds without tests in filters"
elazarlachkar Jan 14, 2026
f376ad0
Reapply "Include seeds without tests in filters"
elazarlachkar Jan 14, 2026
e2fb768
Include Snapshots as well
elazarlachkar Jan 15, 2026
80b7b40
Merge pull request #2087 from elementary-data/core-255-include-seeds-…
elazarlachkar Jan 15, 2026
476bf3e
Update dbt package reference
elazarlachkar Jan 20, 2026
398b34a
Merge pull request #2092 from elementary-data/core-261-add-identifier…
elazarlachkar Jan 20, 2026
885bc7c
Update schema.py (#2086)
yu-iskw Jan 27, 2026
1221509
feat: quiet-logs flag (#2072)
michrzan Jan 27, 2026
e78a1c3
Make default Config() Initialization respect target_path in default c…
ryanquincypaul Jan 27, 2026
8df8ccd
Update the version constrains of `google-cloud-storage` (#2079)
yu-iskw Jan 27, 2026
45831f3
Run CLI tests on all warehouses instead of just Postgres (#2094)
devin-ai-integration[bot] Jan 27, 2026
684efe1
Remove python 3.9 (#2081)
vyagubov Jan 27, 2026
3b870a6
fix: add ClickHouse-specific UPDATE syntax for alert status updates (…
devin-ai-integration[bot] Jan 27, 2026
2ea3ce0
Replace click.MultiCommand with click.Group (#2096)
devin-ai-integration[bot] Jan 27, 2026
1547a06
Re-enable ClickHouse in CLI tests (#2095)
devin-ai-integration[bot] Jan 27, 2026
ec05171
dbt version bump (#2098)
arbiv Jan 29, 2026
6e41c99
Update report index.html (#2099)
arbiv Jan 29, 2026
26f5879
release v0.22.0 (#2100)
github-actions[bot] Jan 29, 2026
714817e
Improve fork safety: consolidate approval and add pull_request trigge…
devin-ai-integration[bot] Feb 2, 2026
be75349
Remove notify_failures from test-all-warehouses.yml (#2105)
devin-ai-integration[bot] Feb 10, 2026
cd28efe
Use pydantic v1 shim for messages models to eliminate update_forward_…
devin-ai-integration[bot] Feb 11, 2026
b5e41fe
Add EmailStr and ValidationError to pydantic shim (#2112)
devin-ai-integration[bot] Feb 11, 2026
9d20676
fix: remove return from finally block to prevent exception swallowing…
themavik Feb 11, 2026
359a87e
fix: handle string-type exposure owner in ExposureSchema validation (…
themavik Feb 11, 2026
c05158d
fix: replace deprecated datetime.utcnow() with datetime.now(tz=timezo…
themavik Feb 11, 2026
814f0ae
Add GitHub Action to auto-assign Devin PRs to requesting users (#2113)
devin-ai-integration[bot] Feb 16, 2026
866d7ae
fix(CORE-355): handle abbreviated timezone offsets in convert_partial…
devin-ai-integration[bot] Feb 18, 2026
9817afd
refactor: replace opaque CI_PROFILES_YML secret with committed templa…
devin-ai-integration[bot] Feb 26, 2026
c65cd98
fix: apply toyaml filter to all secret-backed credential fields in pr…
devin-ai-integration[bot] Feb 27, 2026
c0a9602
fix: use py_<YYMMDD_HHMMSS>_<branch>_<hash> schema naming to prevent …
devin-ai-integration[bot] Feb 28, 2026
02174cb
feat: add automatic retry for transient dbt command errors (#2125)
devin-ai-integration[bot] Feb 28, 2026
465d023
perf: optimize CI by disabling redundant on-run-end work and adding s…
devin-ai-integration[bot] Feb 28, 2026
c3d0cf4
fix: surface exception text in APIDbtRunner for transient error detec…
devin-ai-integration[bot] Feb 28, 2026
9b6dae4
feat: add daily cleanup workflow for stale CI schemas (#2128)
devin-ai-integration[bot] Feb 28, 2026
780b2d9
Validate packages.yml uses proper version on release (#2130)
devin-ai-integration[bot] Mar 1, 2026
8f2d7a9
fix: wire --config-dir CLI flag to Config initialization (#2121)
themavik Mar 1, 2026
746ce41
Modernize test-github-action.yml to use e2e_dbt_project and latest ac…
devin-ai-integration[bot] Mar 1, 2026
404708b
fix: add ref() macro override for dbt-core 1.11 compatibility (#2137)
devin-ai-integration[bot] Mar 2, 2026
96a4170
Add optional --ssl-ca-bundle flag for SSL certificate configuration (…
szaffarano Mar 2, 2026
58a1d3a
fix: restore missing test macros in e2e dbt project (#2138)
devin-ai-integration[bot] Mar 3, 2026
e8dabbf
feat: add DuckDB, Trino, Dremio & Spark support to CI and CLI (#2135)
devin-ai-integration[bot] Mar 3, 2026
13a4e0a
feat: add Microsoft Fabric and SQL Server support to elementary CLI (…
devin-ai-integration[bot] Mar 8, 2026
4566cc2
feat: add Vertica adapter support (#2141)
devin-ai-integration[bot] Mar 12, 2026
63150b9
feat: add dbt-fabricspark support to elementary CLI (#2142)
devin-ai-integration[bot] Mar 12, 2026
035653a
fix: swap latest_run_time and latest_run_time_utc in _parse_test_db_r…
devin-ai-integration[bot] Mar 12, 2026
ba9e92a
fix: only filter by invocations_rank_index when no invocation_id is s…
devin-ai-integration[bot] Mar 12, 2026
0f1c676
release/v0.23.0 (#2145)
github-actions[bot] Mar 12, 2026
2f98ef7
Fix release validation to parse YAML; add workflow_dispatch trigger (…
devin-ai-integration[bot] Mar 12, 2026
1b8dec0
Fix Docker build: switch to uv and tighten dbt adapter lower bounds t…
devin-ai-integration[bot] Mar 19, 2026
8c910d4
Remove apt-get dist-upgrade and upgrade to Python 3.12 to fix QEMU ar…
devin-ai-integration[bot] Mar 19, 2026
31e7528
Fix package-lock.yml format, remove dbt-vertica from all extra, add r…
devin-ai-integration[bot] Mar 19, 2026
f7b1130
Truncate oversized Teams webhook payloads to prevent HTTP 413 errors
devin-ai-integration[bot] Mar 20, 2026
1d7dbdc
Fix edge cases: handle single oversized body item, use valid TextBloc…
devin-ai-integration[bot] Mar 20, 2026
59c6b7b
Remove comments and docstrings from new code
devin-ai-integration[bot] Mar 20, 2026
97195a2
Remove Elementary Cloud references from truncation messages
devin-ai-integration[bot] Mar 20, 2026
ed170b7
Merge pull request #2160 from elementary-data/devin/1773995331-trunca…
michael-myaskovsky Mar 20, 2026
c6f26eb
Revert "Merge pull request #2160 from elementary-data/devin/177399533…
GuyEshdat Mar 21, 2026
520be22
rasing TeamsWebhookPayloadTooLargeError if recieved response 413 for …
GuyEshdat Mar 21, 2026
69e6e4d
fixed coderabbits comment
michael-myaskovsky Mar 22, 2026
a91d876
Merge pull request #2164 from elementary-data/teams-webhook-message-t…
michael-myaskovsky Mar 22, 2026
c7f611f
Upgrade actions/checkout from v4 (and v2) to v6 in all workflows
devin-ai-integration[bot] Mar 23, 2026
89a6dac
CORE-529: Upgrade actions/checkout to v6 across all GitHub workflows
elazarlachkar Mar 23, 2026
4b52f6b
chore: upgrade GitHub Actions to fix Node 20 deprecation warnings (#2…
devin-ai-integration[bot] Mar 24, 2026
28daf9f
fix: allow null materialization in ModelAlertDataSchema for ClickHous…
devin-ai-integration[bot] Apr 9, 2026
0bfd75a
ci: add typos config to suppress false positives on Vertica SVG gradi…
devin-ai-integration[bot] Apr 9, 2026
23d3f68
chore: change dbt package version to 0.23.1 (#2187)
devin-ai-integration[bot] Apr 14, 2026
c642a36
release/v0.23.2 (#2188)
github-actions[bot] Apr 15, 2026
e5af7e7
Core 645 generic alert types (#2192)
NoyaArie Apr 16, 2026
edd283c
security: remove vulnerable update_pylon_issue.yml workflow (#2206)
haritamar Apr 25, 2026
2d3544a
security: remove vulnerable create_pylon_issue.yml workflow (#2207)
haritamar Apr 25, 2026
24fd7b7
release v0.23.4 (#2208)
github-actions[bot] Apr 25, 2026
a1e6f4c
disable test-github-action.yml daily cron
oravi Apr 25, 2026
d3149ff
Merge pull request #2209 from elementary-data/security/disable-test-g…
oravi Apr 25, 2026
5292c56
harden bump version
ofek1weiss Apr 26, 2026
a2e9221
notify slack and triage labels
ofek1weiss Apr 26, 2026
cf5fcb3
Merge pull request #2210 from elementary-data/app-1003-bump-version
ofek1weiss Apr 26, 2026
7553c24
Merge branch 'master' into app-1004-triage-labels-notify-slack
ofek1weiss Apr 26, 2026
0edc6ba
harden release flow
ofek1weiss Apr 26, 2026
8c1eaff
Merge pull request #2211 from elementary-data/app-1004-triage-labels-…
ofek1weiss Apr 26, 2026
83ce11f
Merge branch 'master' into app-1005-release
ofek1weiss Apr 26, 2026
47e9931
Merge pull request #2212 from elementary-data/app-1005-release
ofek1weiss Apr 26, 2026
c24a73a
ci: remove unused GCS_KEYFILE from test-warehouse workflow (#2213)
devin-ai-integration[bot] Apr 26, 2026
16ea6ab
Harden warehouse testing
ofek1weiss Apr 26, 2026
0713e63
security: remove dbt-fabricspark and dbt-vertica to fix Dependabot al…
MikaKerman Apr 26, 2026
a2348ba
Merge pull request #2216 from elementary-data/fix/dependabot-high-cri…
MikaKerman Apr 26, 2026
9d9b61e
ci: rename slack channel from data-ops to oss-ci-tests (#2217)
devin-ai-integration[bot] Apr 26, 2026
442e053
security: pin lxml >=6.1.0 to fix CVE-2026-41066 (XXE)
MikaKerman Apr 27, 2026
046fb47
Merge pull request #2218 from elementary-data/fix/pin-lxml-minimum-ve…
MikaKerman Apr 27, 2026
89af37f
readded run send report
ofek1weiss Apr 27, 2026
150f8f6
Merge branch 'master' of github.com:elementary-data/elementary into a…
ofek1weiss Apr 27, 2026
bdc7c76
Merge pull request #2214 from elementary-data/app-1006-test-warehouse…
ofek1weiss Apr 27, 2026
eca91ea
remind docs
ofek1weiss Apr 27, 2026
f01bae0
per job permission
ofek1weiss Apr 27, 2026
0c76bee
close pylon ticket
ofek1weiss Apr 27, 2026
736b771
stale
ofek1weiss Apr 27, 2026
37793c3
cleanup
ofek1weiss Apr 27, 2026
221b1bf
devin prs
ofek1weiss Apr 27, 2026
88cc267
build docker images
ofek1weiss Apr 27, 2026
14bb539
precommit
ofek1weiss Apr 27, 2026
4a21ec0
ci: switch test-warehouse AWS auth to OIDC role (CORE-687) (#2215)
haritamar Apr 27, 2026
2e27df3
test github action
ofek1weiss Apr 27, 2026
85e2494
test release
ofek1weiss Apr 27, 2026
4434c0c
Merge branch 'master' of github.com:elementary-data/elementary into a…
ofek1weiss Apr 27, 2026
70ba10a
aws_oidc_role_arn
ofek1weiss Apr 27, 2026
a8f451b
Merge pull request #2219 from elementary-data/app-1009-remind-docs
ofek1weiss Apr 27, 2026
b25035e
actions followups
ofek1weiss Apr 27, 2026
1c117e5
Merge pull request #2220 from elementary-data/app-1012-followups
ofek1weiss Apr 27, 2026
6ba1362
change to use pinned version for trusted actions
ofek1weiss Apr 27, 2026
15e8415
Merge pull request #2222 from elementary-data/app-1011-pin-buildin-ac…
ofek1weiss Apr 28, 2026
9b843d1
CORE-742: switch Snowflake CI auth from password to private key (#2224)
devin-ai-integration[bot] May 5, 2026
55d2ac0
Use native Slack Table Block for test results sample rendering
quickcoffee May 7, 2026
2abbdb3
Fix empty raw_text cell when table value is None or empty string
quickcoffee May 7, 2026
18402cf
Apply black formatting to test file
quickcoffee May 7, 2026
2ace13d
Regenerate alert message fixtures for block_kit table format
quickcoffee May 7, 2026
55d4776
Merge pull request #2227 from quickcoffee/2225-add-slack-table-block
ofek1weiss May 8, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
10 changes: 8 additions & 2 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,14 @@ If applicable, add screenshots to help explain your problem.

**Environment (please complete the following information):**

- edr Version: [e.g. 0.5.3], can be found by running `pip show elementary-data`
- dbt package Version: [e.g. 0.4.1], can be found in `packages.yml` file
- Elementary CLI (edr) version: [e.g. 0.5.3], can be found by running `pip show elementary-data`
- Elementary dbt package version: [e.g. 0.4.1], can be found in `packages.yml` file
- dbt version you're using [e.g. 1.8.1]
- Data warehouse [e.g. snowflake]
- Infrastructure details (e.g. operating system, prod / dev / staging, deployment infra, CI system, etc)

**Additional context**
Add any other context about the problem here.

**Would you be willing to contribute a fix for this issue?**
Let us know if you're willing to contribute so that we'll be able to provide guidance.
34 changes: 34 additions & 0 deletions .github/workflows/assign-devin-prs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
name: Auto-assign Devin PRs

on:
pull_request:
types: [opened]

permissions: {}

jobs:
assign:
if: github.actor == 'devin-ai-integration[bot]'
runs-on: ubuntu-latest
permissions:
pull-requests: write
issues: write
steps:
- name: Extract and assign requesting user
uses: actions/github-script@v8
with:
script: |
const body = context.payload.pull_request.body || '';
const match = body.match(/Requested by[:\s]*(?:@(\w[\w-]*)|[\w][\w\s]*\(@(\w[\w-]*)\))/);
const user = match?.[1] || match?.[2];
if (user) {
await github.rest.issues.addAssignees({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: context.issue.number,
assignees: [user]
});
console.log(`Assigned PR #${context.issue.number} to @${user}`);
} else {
console.log('Could not determine requesting user from PR description');
}
47 changes: 47 additions & 0 deletions .github/workflows/build-docker-image.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
name: Build Docker image
on:
workflow_dispatch:

permissions: {}

env:
REGISTRY: ghcr.io
IMAGE_NAME: ${{ github.repository }}

jobs:
build-and-push-docker-image:
runs-on: ubuntu-latest
permissions:
contents: read

steps:
- name: Checkout Elementary
uses: actions/checkout@v6

- name: Set up QEMU for multi-platform support
uses: docker/setup-qemu-action@v4

- name: Set up Docker Buildx for multi-platform support
uses: docker/setup-buildx-action@v4

- name: Log in to the container registry
uses: docker/login-action@v4
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Extract metadata (tags, labels) for Docker
id: meta
uses: docker/metadata-action@v6
with:
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}

- name: Build Docker image
uses: docker/build-push-action@v7
with:
context: .
push: false
platforms: linux/amd64,linux/arm64
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
69 changes: 49 additions & 20 deletions .github/workflows/bump-version.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,72 +20,101 @@ on:
type: string
required: false

permissions: {}

jobs:
validate-version:
runs-on: ubuntu-latest
permissions:
contents: read
outputs:
validated-cli-version: ${{ steps.validate-cli-input.outputs.cli-validation }}
default-dbt-package-version: ${{ steps.validate-cli-input.outputs.cli-validation }}
validated-dbt-package-version: ${{ steps.validate-dbt-package-input.outputs.dbt-package-validation }}
steps:
- name: validate cli version input
id: validate-cli-input
run: echo "cli-validation=$(echo ${{ inputs.cli-version }} | sed -n '/^[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*$/p')" >> $GITHUB_OUTPUT
env:
CLI_VERSION: ${{ inputs.cli-version }}
run: |
if [[ "$CLI_VERSION" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
echo "cli-validation=$CLI_VERSION" >> "$GITHUB_OUTPUT"
fi
- name: validate dbt package version
if: ${{ inputs.dbt-package-version }}
id: validate-dbt-package-input
run: echo "dbt-package-validation=$(echo ${{ inputs.dbt-package-version }} | sed -n '/^[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*$/p')" >> $GITHUB_OUTPUT
env:
DBT_PACKAGE_VERSION: ${{ inputs.dbt-package-version }}
run: |
if [[ "$DBT_PACKAGE_VERSION" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
echo "dbt-package-validation=$DBT_PACKAGE_VERSION" >> "$GITHUB_OUTPUT"
fi
- name: echo versions
env:
CLI_VERSION: ${{ steps.validate-cli-input.outputs.cli-validation }}
DBT_PACKAGE_VERSION: ${{ steps.validate-dbt-package-input.outputs.dbt-package-validation }}
run: |
echo "cli version: ${{ steps.validate-cli-input.outputs.cli-validation }}"
echo "dbt package version: ${{ steps.validate-dbt-package-input.outputs.dbt-package-validation }}"
echo "cli version: $CLI_VERSION"
echo "dbt package version: $DBT_PACKAGE_VERSION"
- name: fail on invalid input
if: ${{ steps.validate-cli-input.outputs.cli-validation == '' }}
uses: actions/github-script@v6
if: ${{ steps.validate-cli-input.outputs.cli-validation == '' || (inputs.dbt-package-version != '' && steps.validate-dbt-package-input.outputs.dbt-package-validation == '') }}
uses: actions/github-script@v8
with:
script: |
core.setFailed("Invalid version inputs")

bump-version:
needs: validate-version
runs-on: ubuntu-latest
permissions:
contents: write
env:
CLI_VERSION: ${{ needs.validate-version.outputs.validated-cli-version }}
DBT_PACKAGE_VERSION: ${{ needs.validate-version.outputs.validated-dbt-package-version || needs.validate-version.outputs.default-dbt-package-version }}
RELEASE_BRANCH: release/v${{ needs.validate-version.outputs.validated-cli-version }}
steps:
- name: Checkout code
uses: actions/checkout@v3
uses: actions/checkout@v6
- name: Create release branch
run: git checkout -b release/v${{ inputs.cli-version }}
run: git checkout -b "$RELEASE_BRANCH"
- name: Initial config
run: |
git config user.name "GitHub Actions"
git config user.email noreply@github.com
- name: Bump version
run: |
sed -i 's/^version = "[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*"/version = "${{ inputs.cli-version }}"/' ./pyproject.toml
sed -i "s/^version = \"[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\"/version = \"$CLI_VERSION\"/" ./pyproject.toml
- name: Bump version for package (using input)
if: ${{ needs.validate-version.outputs.validated-dbt-package-version != ''}}
run: |
sed -i 's/version: [0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*$/version: ${{ needs.validate-version.outputs.validated-dbt-package-version }}/' ./elementary/monitor/dbt_project/packages.yml
sed -i 's/version: [0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*$/version: ${{ needs.validate-version.outputs.validated-dbt-package-version }}/' ./docs/_snippets/quickstart-package-install.mdx
sed -i "s/version: [0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*$/version: $DBT_PACKAGE_VERSION/" ./elementary/monitor/dbt_project/packages.yml
sed -i "s/version: [0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*$/version: $DBT_PACKAGE_VERSION/" ./docs/_snippets/quickstart-package-install.mdx
- name: Bump version for package (using default)
if: ${{ needs.validate-version.outputs.validated-dbt-package-version == ''}}
run: |
sed -i 's/version: [0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*$/version: ${{ needs.validate-version.outputs.default-dbt-package-version }}/' ./elementary/monitor/dbt_project/packages.yml
sed -i 's/version: [0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*$/version: ${{ needs.validate-version.outputs.default-dbt-package-version }}/' ./docs/_snippets/quickstart-package-install.mdx
sed -i "s/version: [0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*$/version: $DBT_PACKAGE_VERSION/" ./elementary/monitor/dbt_project/packages.yml
sed -i "s/version: [0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*$/version: $DBT_PACKAGE_VERSION/" ./docs/_snippets/quickstart-package-install.mdx
- name: Commit changes
run: git commit -am "release v${{ inputs.cli-version }}"
run: git commit -am "release v$CLI_VERSION"
- name: Push code
run: git push origin release/v${{ inputs.cli-version }}
run: git push origin "$RELEASE_BRANCH"

create-pr:
needs: bump-version
needs:
- validate-version
- bump-version
runs-on: ubuntu-latest
permissions:
contents: read
pull-requests: write
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v6
- name: create pull request
uses: repo-sync/pull-request@v2
# repo-sync/pull-request v2.12.1, checked 2026-04-26.
uses: repo-sync/pull-request@7e79a9f5dc3ad0ce53138f01df2fad14a04831c5
with:
source_branch: "release/v${{ inputs.cli-version }}"
source_branch: "release/v${{ needs.validate-version.outputs.validated-cli-version }}"
destination_branch: "master"
pr_title: "release/v${{ inputs.cli-version }}"
pr_title: "release/v${{ needs.validate-version.outputs.validated-cli-version }}"
pr_body: "Open automatically using bump version workflow"
github_token: ${{ secrets.GITHUB_TOKEN }}
100 changes: 100 additions & 0 deletions .github/workflows/cleanup-stale-schemas.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
name: Cleanup stale CI schemas

on:
schedule:
# Daily at 03:00 UTC
- cron: "0 3 * * *"
workflow_dispatch:
inputs:
max-age-hours:
type: string
required: false
default: "24"
description: Drop schemas older than this many hours

permissions: {}

env:
# Re-use the dbt-data-reliability integration-test project so we get the
# cleanup macro (drop_stale_ci_schemas) without duplicating it.
TESTS_DIR: ${{ github.workspace }}/dbt-data-reliability/integration_tests

jobs:
cleanup:
runs-on: ubuntu-latest
permissions:
contents: read
id-token: write
strategy:
fail-fast: false
matrix:
warehouse-type:
- snowflake
- bigquery
- redshift
- databricks_catalog
- athena
steps:
- name: Configure AWS credentials
if: matrix.warehouse-type == 'athena'
uses: aws-actions/configure-aws-credentials@v4
with:
role-to-assume: ${{ secrets.AWS_OIDC_ROLE_ARN }}
aws-region: eu-west-1

- name: Checkout dbt package
uses: actions/checkout@v6
with:
repository: elementary-data/dbt-data-reliability
# Pinned to dbt-data-reliability master HEAD at update time (2026-04-27).
# Refresh intentionally when updating cleanup macro behavior.
ref: ea58f5331e334d3a6774cc90f91f299b9929dada
path: dbt-data-reliability

- name: Setup Python
uses: actions/setup-python@v6
with:
python-version: "3.10"
cache: "pip"

- name: Install dbt
run: >
pip install
"dbt-core"
"dbt-${{ (matrix.warehouse-type == 'databricks_catalog' && 'databricks') || (matrix.warehouse-type == 'athena' && 'athena-community') || matrix.warehouse-type }}"

- name: Write dbt profiles
env:
CI_WAREHOUSE_SECRETS: ${{ secrets.CI_WAREHOUSE_SECRETS || '' }}
run: |
if [ -z "$CI_WAREHOUSE_SECRETS" ]; then
echo "::error::Missing required secret: CI_WAREHOUSE_SECRETS"
exit 1
fi
# The cleanup job doesn't create schemas, but generate_profiles.py
# requires --schema-name. Use a dummy value.
python "${{ github.workspace }}/dbt-data-reliability/integration_tests/profiles/generate_profiles.py" \
--template "${{ github.workspace }}/dbt-data-reliability/integration_tests/profiles/profiles.yml.j2" \
--output ~/.dbt/profiles.yml \
--schema-name "cleanup_placeholder"

- name: Install dbt deps
working-directory: ${{ env.TESTS_DIR }}/dbt_project
run: dbt deps

- name: Symlink local elementary package
run: ln -sfn ${{ github.workspace }}/dbt-data-reliability ${{ env.TESTS_DIR }}/dbt_project/dbt_packages/elementary

- name: Drop stale CI schemas
working-directory: ${{ env.TESTS_DIR }}/dbt_project
env:
MAX_AGE_HOURS: ${{ inputs.max-age-hours || '24' }}
run: |
if ! [[ "$MAX_AGE_HOURS" =~ ^[0-9]+$ ]]; then
echo "::error::max-age-hours must be a non-negative integer"
exit 1
fi
ARGS=$(printf '{"prefixes":["py_"],"max_age_hours":%s}' "$MAX_AGE_HOURS")
dbt run-operation drop_stale_ci_schemas \
--args "$ARGS" \
-t "${{ matrix.warehouse-type }}"
37 changes: 37 additions & 0 deletions .github/workflows/close_pylon_issue.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
name: Close Pylon Ticket on Issue or Pull Request Closure

on:
issues:
types: [closed]
pull_request_target:
types: [closed]

permissions: {}

jobs:
close_pylon_ticket:
runs-on: ubuntu-latest
permissions: {}
steps:
- name: Extract Pylon Ticket ID
id: extract_ticket_id
env:
EVENT_BODY: ${{ github.event_name == 'issues' && github.event.issue.body || github.event.pull_request.body }}
run: |
pylon_ticket_id=$(echo "$EVENT_BODY" | grep -oP '(?<=<!-- pylon-ticket-id: )\b[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\b(?= -->)')
echo "pylon_ticket_id=$pylon_ticket_id" >> "$GITHUB_OUTPUT"

- name: Close Pylon Ticket
if: steps.extract_ticket_id.outputs.pylon_ticket_id != ''
env:
PYLON_TICKET_ID: ${{ steps.extract_ticket_id.outputs.pylon_ticket_id }}
PYLON_API_KEY: ${{ secrets.PYLON_API_KEY }}
run: |
echo "Closing Pylon Ticket ID: $PYLON_TICKET_ID"
curl --request PATCH \
--url "https://api.usepylon.com/issues/$PYLON_TICKET_ID" \
--header "Authorization: $PYLON_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
"state": "closed"
}'
Loading