Commit Graph

1639 Commits

Author SHA1 Message Date
t8y2 0887b96236 feat: add rqlite database support 2026-06-05 01:02:07 +08:00
t8y2 a799958328 feat: add driver runtime manager 2026-06-04 23:20:15 +08:00
t8y2 a8c08cd7e9 fix(i18n): add missing structureEditor.copySql locale key
TableStructureEditor.vue references t("structureEditor.copySql") but
the key was missing from all locale files, causing raw key text display.
2026-06-04 22:10:58 +08:00
t8y2 cbcd5dc6e5 feat(access): enable table structure editing for Access databases
- Add accessCapabilities based on UCanAccess DDL support testing
- CREATE TABLE, ADD COLUMN, CREATE INDEX are supported
- DROP COLUMN, ALTER COLUMN, RENAME COLUMN, DROP INDEX are not supported
- Use H2 SQL dialect for generated DDL
2026-06-04 22:10:51 +08:00
t8y2 25188bc5c5 fix: enhance fitCanvasText function with caching and improve text fitting logic 2026-06-04 21:32:59 +08:00
t8y2 5e21b74487 fix: prevent bigint precision loss in structured filter value parsing
When parseFilterValue converts numeric strings to JS Number, integers
exceeding Number.MAX_SAFE_INTEGER lose precision (e.g. 2062449923745665025
becomes 2062449923745665024). Keep them as strings so the Rust backend can
parse them exactly via serde_json::Number.
2026-06-04 20:33:46 +08:00
t8y2 120566b1fd fix: improve JDBC dialect handling 2026-06-04 19:40:52 +08:00
t8y2 07edb39d77 feat(jdbc-plugin): bundle slf4j-api, slf4j-nop, and commons-lang3
Many JDBC drivers depend on SLF4J and commons-lang3 at runtime but
don't shade them. Bundling these in the plugin JAR avoids
NoClassDefFoundError when users import driver JARs.
2026-06-04 18:21:08 +08:00
t8y2 8d51a5779b fix: cancel DuckDB queries via duckdb_interrupt instead of only cancelling async future
Previously, cancelling a DuckDB query only dropped the tokio CancellationToken,
but the actual DuckDB C call continued running in spawn_blocking. This caused
the UI to show "正在停止..." until timeout silently expired.

Now, RunningQueries stores per-execution interrupt callbacks. For DuckDB and
ExternalTabular branches, an InterruptHandle is registered on query start so
cancel() calls duckdb_interrupt() at the C level, truly stopping the query.
2026-06-04 17:20:13 +08:00
t8y2 834dc534c6 fix: combine Oracle-like MODIFY statements and fix DATA_DEFAULT column ordering
- table_structure_sql: merge separate MODIFY statements for type, nullability,
  and default into a single MODIFY statement. This fixes Dameng's requirement
  that MODIFY includes the full column definition.
- DbxJdbcPlugin: move DATA_DEFAULT to first SELECT position and read it first
  in the ResultSet loop (LONG columns must be read before other columns).
2026-06-04 16:57:44 +08:00
t8y2 01c8072d97 fix: support MongoDB Atlas SRV connections in form mode
Add an "SRV (MongoDB Atlas)" toggle in the MongoDB connection form.
When enabled, the backend uses mongodb+srv:// scheme and omits the
port, matching the behavior of pasting a mongodb+srv:// URL directly.
2026-06-04 16:01:31 +08:00
github-actions[bot] 594077fd84 chore(packages): release 0.4.6 [skip node-packages-release] 2026-06-04 07:24:53 +00:00
t8y2 43de1d6d0a fix: satisfy grid tooltip prop contract 2026-06-04 15:19:27 +08:00
t8y2 9935f8e7fe fix: improve iris schema metadata completion 2026-06-04 15:09:56 +08:00
t8y2 c8539bcc32 perf: replace column header Tooltip with hand-rolled LightTooltip 2026-06-04 14:25:41 +08:00
t8y2 293600d9b4 fix: pass connection query timeout to execute_batch so ALTER respects configured timeout
Previously execute_batch always used the hardcoded 30s default timeout,
ignoring the user's query_timeout_secs connection setting. This caused
long-running ALTER TABLE statements on large tables to time out even
when the user configured a longer timeout or disabled it entirely.
2026-06-04 13:54:20 +08:00
t8y2 13e2cdde6f feat: add "reuse data tab" setting to avoid opening too many tabs when clicking table names
Add a configurable option in Settings > Navigation to reuse an existing data
tab instead of creating a new one each time a table is clicked in the sidebar.
2026-06-04 13:44:52 +08:00
t8y2 2a59304e02 fix: update .gitignore 2026-06-04 13:29:24 +08:00
t8y2 32f48cc4e1 ci: hide issue moderation script from logs 2026-06-04 12:35:00 +08:00
t8y2 33175c4acd fix(pg): decode pgvector vector columns that displayed as null
pgvector's vector(N) type uses a custom binary format (4-byte header
+ N×4-byte f32 array) that tokio-postgres doesn't natively support.
Add a PgRawBytes adapter and decoder so vector columns render as
JSON float arrays instead of null.
2026-06-04 12:06:02 +08:00
t8y2 23391dce6b fix(mysql): support catalogless metadata fallback 2026-06-04 11:47:52 +08:00
t8y2 9bc810d195 ci: refine issue moderation workflow 2026-06-04 11:28:29 +08:00
skyler 0f691485c8
Merge pull request #706 from DengQingNian/feat/drag-tab-reorder
feat(ui): add tab drag-and-drop reordering
2026-06-04 11:21:52 +08:00
t8y2 b086b91fdc fix(ai): improve agent metadata query execution 2026-06-04 11:19:14 +08:00
dqn b028b0aea2 fix(ui): update drop position on mousemove and enforce pinned grouping in tab reorder
- Track mousemove during drag to continuously update before/after indicator
- Re-apply orderPinnedFirst after reorder to prevent breaking pinned tab grouping
2026-06-04 10:40:42 +08:00
github-actions[bot] 2f9d58a4fa chore(jdbc): bump plugin version [skip ci] 2026-06-03 18:11:15 +00:00
t8y2 0194adfa4c chore(release): bump version to v0.5.29 2026-06-04 02:10:39 +08:00
t8y2 55fd81363f fix(cli): keep queries read-only by default 2026-06-04 02:05:29 +08:00
t8y2 7ba941ce79 perf(grid): reduce canvas row allocation 2026-06-04 02:01:41 +08:00
t8y2 388873213f fix(export): stream full table exports correctly 2026-06-04 01:10:23 +08:00
t8y2 4964bb697d fix(completion): preserve whitespace SQL contexts 2026-06-04 00:09:48 +08:00
t8y2 b40c71f392 ci: show useful check failure output 2026-06-04 00:05:14 +08:00
t8y2 fb6f818289 perf(grid): preload data grid component 2026-06-04 00:05:14 +08:00
t8y2 69ecde8fdf perf(doris): speed up metadata browsing 2026-06-04 00:05:14 +08:00
t8y2 f540770bce feat(grid): add bulk edit selection action 2026-06-04 00:05:14 +08:00
dqn be9b071473 feat(ui): add tab drag-and-drop reordering
Support dragging tabs horizontally to reorder them. A ghost element follows
the cursor during drag, and a drop indicator shows the target position.
2026-06-03 23:58:01 +08:00
t8y2 0e66b5d128 ci: detect abusive issue content 2026-06-03 23:05:45 +08:00
t8y2 87efa2b06c ci: disable issue QQ notifications 2026-06-03 22:33:12 +08:00
skyler ff2210e5a4
Merge pull request #702 from DengQingNian/optimize/export-pagination-orderby-batchsize
perf(ui): 优化数据导出的ui体验和性能
2026-06-03 21:42:38 +08:00
t8y2 2183c370dc fix(export): handle table export edge cases 2026-06-03 21:41:16 +08:00
dqn 0611ed8e52 fix(ui): pass side-offset as number to popover content
Fix typecheck error TS2322: side-offset expects number, not string.
2026-06-03 21:36:23 +08:00
t8y2 26a31feea1 fix(jdbc): use driver-specific URL param separators 2026-06-03 21:25:38 +08:00
t8y2 94c987c693 fix(metadata): tolerate opengauss column metadata failures 2026-06-03 21:18:34 +08:00
t8y2 f64fd09b7a fix(grid): keep table filters available without metadata 2026-06-03 21:04:19 +08:00
t8y2 4d50af05fd fix(sidebar): keep connection search results visible 2026-06-03 20:52:57 +08:00
t8y2 085a2f3870 feat(completion): add database-specific suggestions 2026-06-03 20:47:17 +08:00
t8y2 02ac4b3978 fix(iris): use top for table previews 2026-06-03 20:21:30 +08:00
dqn 4a12a575ed perf(ui): 优化数据导出的ui体验和性能 2026-06-03 20:19:25 +08:00
t8y2 9648f74b87 fix(tabs): close object tabs on disconnect release 2026-06-03 19:30:34 +08:00
t8y2 72ababd2b8 fix(iris): skip schema execution context 2026-06-03 19:29:39 +08:00