Commit Graph
87 Commits
Author SHA1 Message Date
Claude Code e2093a6140 experiment: update expected DatabaseFilter compiled-SQL column order for SQLAlchemy 2.0
SQLAlchemy 2.0's declarative mapper now orders a model's mapped columns
with the class's own Column attributes first, followed by mixin-provided
columns (AuditMixinNullable's created_on/changed_on/created_by_fk/
changed_by_fk and the uuid mixin column) in mixin-declaration order,
appended at the end rather than interleaved at the front. This shifted
where `dbs.uuid`, `dbs.created_on`, `dbs.changed_on` (and the matching
`ssh_tunnels_1.*` aliases from the joined SSHTunnel) land in the compiled
SELECT list. SQLAlchemy 2.0 also renders the concatenation expression on
the left of an IN clause with an explicit parenthesized group.

Verified the actual compiled query has the identical column set (just
reordered) and an equivalent WHERE clause (same expression, extra
parens), then updated the hardcoded expected string in
test_database_filter to match.
2026-08-10 04:40:00 -07:00
8f8331f656 chore: session enforce sqlalchemy 2.0 (#42365)
Co-authored-by: Evan Rusackas <evan@rusackas.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-26 19:28:42 -07:00
Hans Yu 19159d58c8 refactor: engine enforce SQLAlchemy 2.0 (#42277) 2026-07-22 11:11:48 -07:00
Taras Pashkevych df34b5d277 fix(drill-detail): paginate Elasticsearch samples via engine cursor (#39509) 2026-07-21 10:09:28 -07:00
a899e1db41 feat(versioning): entity-version base infrastructure (gated off, dark launch) (#41176)
Co-authored-by: Mike Bridge <michael.bridge@ext.preset.io>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-09 19:57:05 -07:00
43bfc85941 fix(db): validate schema and table cache timeout to reject negative values (#38490)
Co-authored-by: abderbj <115119179+abderbj@users.noreply.github.com>
Co-authored-by: Evan Rusackas <evan@preset.io>
2026-07-09 18:19:00 -07:00
04f8b700d7 feat(datasets): soft-delete and restore (#40130)
Co-authored-by: Mike Bridge <michael.bridge@ext.preset.io>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-07 08:57:08 -07:00
Enzo MartellucciandClaude Opus 4.7 55088e10da feat(database-modal): add validation loading state and duplicate name check (#36880)
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-07-02 16:52:13 -07:00
Evan RusackasandClaude Code 379435b7eb feat(ssh_tunnel): add opt-in server host key verification (#40673)
Co-authored-by: Claude Code <noreply@anthropic.com>
2026-06-15 12:17:14 -07:00
Evan Rusackas 9f81565625 feat(uploads): add optional max file size for data uploads (#40860) 2026-06-14 19:46:48 +07:00
Evan RusackasandClaude Code 0a1e51f542 fix(schemas): tighten guest dataset fields, external_url protocols, ssh creds, prophet bounds (#40640)
Co-authored-by: Claude Code <noreply@anthropic.com>
2026-06-09 18:30:30 -07:00
b85a2cdab1 fix: ODPS (MaxCompute) data source table preview failed (#38174)
Co-authored-by: zhutong6688 <zhutong66@163.com>
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-06-05 17:57:44 -07:00
Evan RusackasandClaude Code ac522ded1c fix(ssh-tunnel): validate server_address format (SSRF defense-in-depth) (#40665)
Co-authored-by: Claude Code <noreply@anthropic.com>
2026-06-02 21:19:24 -07:00
Evan RusackasandClaude Sonnet 4.6 c6faa50338 fix(cli): encrypt sqlalchemy_uri password on import_datasources (#31983) (#40584)
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-01 22:08:48 -07:00
Beto Dealmeida 736a51c13f fix: OAuth2 exception should be 403 (#40074) 2026-05-15 14:53:02 -03:00
Oleg Ovcharukandcodeant-ai-for-open-source[bot] <244253245+codeant-ai-for-open-source[bot]@users.noreply.github.com> d83b0c5ce3 feat: support creating datasets for schema-less databases (#39433)
Co-authored-by: codeant-ai-for-open-source[bot] <244253245+codeant-ai-for-open-source[bot]@users.noreply.github.com>
2026-05-11 08:30:13 -04:00
Beto Dealmeida edf4d03218 chore: bump rison to 2.0.0 (#39529) 2026-04-24 15:52:42 -04:00
Vitor Avila 8c9efe5659 feat: support for import/export masked_encrypted_extra (backend) (#38077) 2026-03-04 11:26:28 -08:00
Joe LiandClaude Opus 4.5 6328e51620 test(examples): add tests for UUID threading and security bypass (#37557)
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-12 14:12:12 -08:00
Beto Dealmeida 5d20dc57d7 feat(oauth2): add PKCE support for database OAuth2 authentication (#37067) 2026-01-30 23:28:10 -05:00
isaac-jaynes-impervaandcodeant-ai-for-open-source[bot] <244253245+codeant-ai-for-open-source[bot]@users.noreply.github.com> 3f37cdbf9c fix(database): include configuration_method in the DB export/import flow (#36958)
Co-authored-by: codeant-ai-for-open-source[bot] <244253245+codeant-ai-for-open-source[bot]@users.noreply.github.com>
2026-01-23 19:34:52 -03:00
Beto Dealmeida c458f99dd4 chore: cleanup ssh tunnel (#34388) 2025-12-03 14:26:35 -05:00
Daniel Vaz GasparandJoe Li a9fb853e3e fix: Bump FAB to 5.X (#33055)
Co-authored-by: Joe Li <joe@preset.io>
2025-09-12 09:21:37 +01:00
Maxime BeaucheminandClaude cb27d5fe8d chore: proper current_app.config proxy usage (#34345)
Co-authored-by: Claude <noreply@anthropic.com>
2025-07-31 19:27:42 -07:00
Beto Dealmeida a26e1d822a chore: remove sqlparse (#33564) 2025-06-04 19:31:41 -04:00
arafoperata ff34e3c81e fix: optimize catalog permission sync when importing dashboards (#33679) 2025-06-04 13:21:17 -04:00
Beto Dealmeida 141d0252f2 fix: mask password on DB import (#33267) 2025-04-29 10:27:03 -04:00
Beto Dealmeida 8695239372 feat: OAuth2StoreTokenCommand (#32546) 2025-03-13 09:45:24 -04:00
Beto Dealmeida 813e79fa9f fix: skip DB filter when doing OAuth2 (#32486) 2025-03-04 13:33:53 -05:00
Beto Dealmeida 5af4e61aff feat: improve GSheets OAuth2 (#32048) 2025-03-03 12:55:54 -05:00
Beto Dealmeida f4105e9ed2 feat: default ports for SSH tunnel (#32403) 2025-02-27 10:59:48 -05:00
Beto Dealmeida 00883c395c feat: allow importing encrypted_extra (#32339) 2025-02-24 19:29:04 -05:00
Daniel Vaz Gaspar 1b375b715c refactor: upload data unification, less permissions and less endpoints (#31959) 2025-01-28 11:09:55 +00:00
sha174n 827042f12f refactor: Remove CSV upload size limit and related validation (#32000) 2025-01-27 16:52:05 -07:00
Maxime BeaucheminandElizabeth Thompson e51b95ffa8 chore: enforce more ruff rules (#31447)
Co-authored-by: Elizabeth Thompson <eschutho@gmail.com>
2024-12-18 17:41:34 -08:00
Vitor Avila 21e794a66f fix(database import): Gracefully handle error to get catalog schemas (#31437) 2024-12-13 12:31:10 -03:00
Jack 95325c4673 fix(imports): Error when importing charts / dashboards with missing DB credentials (#30503) 2024-10-04 15:43:29 -05:00
Beto Dealmeida ff449ad8ab feat: OAuth2 database field (#30126) 2024-09-03 20:57:55 -04:00
Beto Dealmeida 0415ed34ce feat: allow create/update OAuth2 DB (#30071) 2024-09-03 19:22:38 -04:00
050c6daff3 fix(cli): add impersonate_user to db import (#29522)
Co-authored-by: Eugene Apollonsky <eapollonskii@intertrust.com>
Co-authored-by: Elizabeth Thompson <eschutho@gmail.com>
2024-08-12 14:05:20 -07:00
Beto Dealmeida 61c0970968 fix: create permissions on DB import (#29802) 2024-08-06 12:09:21 -04:00
John Bodley 8fb8199a55 chore(dao/command): Add transaction decorator to try to enforce "unit of work" (#24969) 2024-06-28 12:33:56 -07:00
Beto Dealmeida 8e15d4807f chore: s/MockFixture/MockerFixture/g (#29160) 2024-06-10 12:35:07 -04:00
Eyal EzerandEyal Ezer 07b2449bd7 refactor: Unify all json.(loads|dumps) usage to utils.json (#28702)
Co-authored-by: Eyal Ezer <eyal.ezer@ge.com>
2024-05-28 14:17:41 -07:00
Daniel Vaz Gaspar 9c065951e7 fix: tests on database, dataset, saved_queries apis (#28397) 2024-05-09 13:43:31 +01:00
Beto Dealmeida e90246fd1f feat(SIP-95): permissions for catalogs (#28317) 2024-05-06 11:41:58 -04:00
Daniel Vaz Gaspar 9a339f08a7 feat: new Columnar upload form and API (#28192) 2024-05-06 15:51:42 +01:00
Beto Dealmeida 6cf681df68 feat(SIP-95): new endpoint for table metadata (#28122) 2024-04-25 12:23:49 -04:00
Maxime Beauchemin 2d63722150 chore: set up ruff as a new linter/formatter (#28158) 2024-04-24 17:19:53 -07:00
John Bodley bc65c245fe chore(tests): Remove unnecessary/problematic app contexts (#28159) 2024-04-24 13:46:35 -07:00