Commit Graph
2126 Commits
Author SHA1 Message Date
t8y2 34b37006be fix(jdbc): don't quote identifiers or use table aliases for JDBC 2026-06-17 01:06:31 +08:00
t8y2 0411fd46b6 fix(jdbc): skip SQL-level row limiting for JDBC connections 2026-06-17 01:00:09 +08:00
t8y2 63bb6a21ca fix(mysql): parse geometry WKB to WKT for display and editing 2026-06-17 00:49:33 +08:00
haipengno1 3695042c8e fix(redis): invalidate key completion cache after write commands
The Redis key-name completion cache was only cleared on connection
lifecycle events, so SET/DEL/EXPIRE/... left autocomplete showing
stale keys. Drop the cache for the db each write command ran on:
- add isRedisMutatingCommand() based on the command-table safety field
(confirm = write; destructive blocked cmds minus read-only/admin ones)
- invalidate after each mutating command in queryStore batch execution
and in RedisKeyBrowser.runRedisCommand
2026-06-17 00:24:47 +08:00
lexmin0412 3752c9086e fix(i18n): add missing common.done key used by SchemaDiffOptionsPanel (#1292) 2026-06-17 00:22:14 +08:00
dbin0123andt8y2 bc91fbdfa1 fix(generate): 确保保存/加载配置覆盖所有生成器参数,并修复参数被意外清空的问题
* feat: highlight selected SQL matches

* fix(core): detect column extra changes (auto_increment, on_update) in table structure SQL generation

- Add has_column_extra_change check to build_column_sql skip condition
- Add is_column_extra_empty to handle None/Some(false)/empty ColumnExtra
- Fix false positives when extra is parsed but no effective change

* feat(generate): fix date range persistence, add i18n for data generation

* fix:Remove invalid references

* fix(generate): ensure config save/load covers all generator params

- Remove auto-reset watch in GeneratorParamsPanel that cleared params
  when loading a profile with different generatorKey
- Extend defaultGeneratorParams() to provide explicit defaults for all
  35+ generators (full_name, phone, email, barcode, url, file_path,
  foreign_key, image, regex, product_name, etc.) so profiles persist
  and restore correctly through JSON serialize/deserialize round-trip

---------

Co-authored-by: t8y2 <1156263951@qq.com>
2026-06-17 00:21:35 +08:00
dalew 0830e03f89 fix(redis): format INFO output as plain text in cluster mode 2026-06-17 00:21:00 +08:00
t8y2 d897603dd5 fix: add hint for missing H2 driver installation in connection dialog 2026-06-16 23:34:21 +08:00
t8y2 412bb2be87 fix: add word-wrap toggle to danger confirm dialog 2026-06-16 23:00:46 +08:00
haipengno1 f14973eaef fix(redis): make completion menu follow typing
The result used filter:false + validFor, which CodeMirror treats as
mutually exclusive — validFor is ignored, so the list froze and the
selection did not move while typing. Build the result with the default
built-in filter so typing narrows the list and moves the selection.
2026-06-16 22:46:24 +08:00
t8y2 6efdd335ed fix(mongo): preserve int64 precision in document filter parsing 2026-06-16 22:38:37 +08:00
t8y2 1da30465ea fix(redis): preserve int64 precision in JSON string values for GET results 2026-06-16 22:17:59 +08:00
t8y2 6f7263bc75 chore: remove brittle registry tests 2026-06-16 22:11:21 +08:00
haipengno1 1e96937455 feat(redis): add Redis command completion to query editor
- add completion module: command names, two-stage subcommands, and key names
- key-name completion is async with a per-db cache capped at 1000 entries, cleared on disconnect
- gate key completion by argument position: stop after a single-key command is filled, keep suggesting for variadic key-list commands
- reuse the diagnostics command table as the data source, showing group/arity/safety
2026-06-16 22:03:48 +08:00
miracleandt8y2 2a59d3143e feat(mq): implement Apache Pulsar message queue admin
* feat(mq): implement Apache Pulsar message queue admin

- Add complete MQ admin adapter layer with version detection
  * Pulsar adapter with multi-version API support
  * OAuth2 token caching and authentication
  * JWT token signing for Pulsar clients
  * Transport layer (SSH/Proxy) integration

- Implement comprehensive admin operations
  * Tenant, namespace, topic management
  * Subscription and consumer/producer monitoring
  * Rate limits, backlog quotas, retention policies
  * Permissions and role-based access control
  * Raw admin API for advanced operations

- Add desktop UI components
  * MQ admin console with tabbed interface
  * Tenant, namespace, topic panels
  * Subscription management and cursor operations
  * Monitoring panel with stats visualization
  * Policy configuration UI

- Add web routes for MQ admin operations
- Add secret store support for MQ auth credentials
- Add comprehensive test coverage

* fix: del local test files

* fix(mq): mark message queue as unsupported mcpMode in driver manifest

MQ admin connections do not use the MCP query bridge - they use a
separate REST admin API. Mark mcpMode as 'unsupported' to align with
the test expectations and reflect the actual architecture.

Fixes CI test: driver-manifest.test.ts

* fix(mq): fix TypeScript errors in MQ components

- Fix typo in SubscriptionsPanel.vue: messagformatError(e)Id -> message.messageId
- Use formatError() helper in RawApiPanel.vue instead of accessing e?.message
- Fix undefined 'tab' reference in ConnectionTree.vue: use config.db_type instead

Fixes frontend CI TypeScript check errors.

* fix(mcp): add 'mq' to MCP server connection type description

The MCP server's connection type description must include all database
types from the driver manifest. Add 'mq' to the list to fix the test:
'add connection database type description includes every manifest database type'

Fixes: packages/mcp-server/tests/driver-manifest.test.ts

* fix(mq): add missing ConnectionConfig fields for Rust compilation

- Add gbase_server and keepalive_interval_secs fields to all ConnectionConfig
  test constructors in mq/config.rs, mq/service.rs, and storage.rs
- Import uses_bare_mysql_pool in connection.rs tests module

Fixes compilation errors from upstream ConnectionConfig changes.

* chore(ui): simplify Pulsar icon to logo-only version

Remove text from Pulsar icon (127x30 -> 35x30), keeping only
the wave logo symbol for a cleaner, more consistent appearance
with other database icons.

* fix(mq): return removed pools from drain_connection_pools

---------

Co-authored-by: t8y2 <1156263951@qq.com>
2026-06-16 21:57:17 +08:00
t8y2 8339d23df5 fix: distinguish materialized view from regular view 2026-06-16 21:23:42 +08:00
t8y2 c619e5da56 fix(sqlite): add .db3 to file open dialog filter 2026-06-16 20:38:14 +08:00
t8y2 65114c64c4 fix(sqlite): support .db3 file extension 2026-06-16 20:30:21 +08:00
t8y2 95b03998d1 fix(tests): reorder imports for better readability in AI module tests 2026-06-16 19:23:31 +08:00
t8y2 c0b7fb5a28 fix(postgres): include sequences in list_objects 2026-06-16 19:20:08 +08:00
iiusky 57f1b6cedc fix(ai): avoid empty Claude system field rejected by Anthropic
Anthropic rejects requests whose system field is an empty string with
"system: text content blocks must be non-empty". The connection test
hardcoded an empty system, and regular completion/stream requests sent
an empty system_prompt when none was configured.

Add a claude_system_prompt() helper that substitutes a non-empty default
for empty or whitespace-only prompts, and apply it to all Claude request
sites. Covered by a unit test.
2026-06-16 18:52:02 +08:00
t8y2 d957734211 fix: suppress terminal popup when checking MCP server status on Windows 2026-06-16 18:51:02 +08:00
t8y2 3024339c91 fix: format bool as 0/1 for all BIT columns, not just MySQL 2026-06-16 18:41:54 +08:00
t8y2 9a68a4d7d2 fix(tests): remove redundant test for agent driver store entries 2026-06-16 18:28:59 +08:00
lexmin0412 11b6fc2d74 feat(ui): add View DDL for tables in sidebar and object browser 2026-06-16 18:07:59 +08:00
t8y2 b1f38fd974 fix(editor): trim line break selection highlight 2026-06-16 18:07:42 +08:00
John Jin 6aca7c052f fix(transfer): solve automatic table creation statement
* fix(transfer): solve automatic table creation statement

* fix(transfer):  fix the case issue of tests
2026-06-16 18:03:37 +08:00
dalew c8385c16f2 fix(redis): redis命令控制台上下文隔离 2026-06-16 18:02:25 +08:00
t8y2 2649005efd feat: allow reordering draft columns in table structure editor 2026-06-16 17:39:03 +08:00
t8y2 24f92536e0 feat(navicat): detect OceanBase and GaussDB from NCX ServiceProvider 2026-06-16 17:25:52 +08:00
t8y2 c77948b3c0 feat(editor): drag columns into SQL editor 2026-06-16 17:12:37 +08:00
t8y2 b94f0e1590 fix(agent): discard timed out query pools 2026-06-16 16:20:04 +08:00
t8y2 cef9ce8994 fix(jdbc): handle taos query result sets 2026-06-16 16:09:55 +08:00
t8y2 d59ce9f483 fix(desktop): keep driver store open when tabs close on disconnect 2026-06-16 15:51:00 +08:00
t8y2 64a35e4c4a fix(influxdb): hide from driver store, uses native Rust driver 2026-06-16 15:16:09 +08:00
t8y2 8d4a08c3d5 fix(desktop): sort batch table drop by foreign key dependency 2026-06-16 15:01:21 +08:00
t8y2 a1feda0c6d fix(mysql): enable cleartext plugin for Doris connections 2026-06-16 14:43:28 +08:00
Abeautifulsnow ec28005f20 feat(agent): safety check display
* fix(i18n): add missing agent tool step translations for zh-TW, pt-BR, it, ja

* propagate explainData to agent step items for ExplainPlanViewer

* feat(ai): show safety check result for execute_query tool steps
2026-06-16 13:56:16 +08:00
t8y2 558b9301a2 feat(sqlite): create empty database file on connect if missing 2026-06-16 13:55:44 +08:00
t8y2 db7b730dd3 fix(agent): add cache buster to R2 downloads 2026-06-16 13:25:49 +08:00
t8y2 aff9ca49c1 fix(release): purge Cloudflare cache after publish 2026-06-16 13:16:20 +08:00
github-actions[bot] a8632fbab2 chore(packages): release 0.4.10 [skip node-packages-release] packages-v0.4.10 2026-06-16 04:13:51 +00:00
t8y2 dcae3eeca0 chore: sync hero carousel with README screenshots 2026-06-16 12:11:06 +08:00
t8y2 91e5528b56 chore: switch README screenshots from jsDelivr to R2 CDN 2026-06-16 12:08:20 +08:00
t8y2 4a14cf3f3e chore: update README screenshots with higher resolution 2026-06-16 11:55:49 +08:00
t8y2 a23897c203 feat: add priority dropdown to issue templates v0.5.33 2026-06-16 11:26:51 +08:00
t8y2 9b8aa4292d feat(release): bump version to 0.5.33 2026-06-16 11:26:41 +08:00
John Jin 13108eb9bb fix: use tabular variant first to prevent canvas edit jitter 2026-06-16 11:13:52 +08:00
t8y2 90c46d5450 fix(sidebar): reorder pinned tree nodes 2026-06-16 11:13:15 +08:00
t8y2 48d2e41cb0 fix: use tabular variant first to prevent canvas edit jitter 2026-06-16 11:12:01 +08:00