t8y2
724813c72a
chore: bump version to 0.5.4
2026-05-12 14:56:10 +08:00
t8y2
368fa5a102
feat(redis): add bulk operations and command runner
2026-05-12 13:38:43 +08:00
t8y2
79277c660f
feat(proxy): 增加数据库和 AI 代理支持
2026-05-11 15:05:25 +08:00
t8y2
70db0aa62c
refactor(ci): switch 1Panel appstore to community repo and manual trigger
2026-05-11 11:41:51 +08:00
t8y2
3733c3f08f
chore: bump version to 0.5.3
2026-05-11 02:31:47 +08:00
t8y2
f456ddd979
perf: full-stack performance and security hardening
...
Frontend performance:
- Debounce DataGrid search (150ms) and replace O(n) row wrapping with index array
- Replace QueryStore deep watcher with targeted field-level persistence snapshot
- Extract shared nodeConfig computed in TreeItem (eliminates 15x redundant getConfig calls)
- Clear tab result data on close to free memory
- Add LRU eviction for completion caches (50 entry cap)
- Replace savedSql version string join with numeric counter
Memory leak fixes:
- Store Tauri event unlisten handles and clean up on unmount
- Clean up DataGrid search timer on unmount
Backend security & resource management:
- Add 50MB request body size limit
- Reject file uploads >100MB and SQL files >200MB
- Clean up SSE channels after transfer/import completes
- Recover from poisoned mutex instead of panicking
- Delete temporary upload files after preview
- Validate SQL file paths to prevent directory traversal
2026-05-11 00:18:09 +08:00
t8y2
bafb424b23
perf: full-stack performance optimization
...
Frontend:
- Debounce queryStore tab persistence (remove flush:sync deep watcher)
- Eliminate unnecessary object spreading in connectionStore error handling
- Use in-place delete for completion cache invalidation
- Deduplicate schema cache prefix API calls
- Split echarts, reka-ui, marked, @codemirror/commands into separate chunks
- Lazy-load xlsxExport and markdownTable in DataGrid
- Lazy-load marked parser in UpdateDialog
Backend:
- Replace tokio::sync::Mutex with RwLock for AppState connections/configs
(60+ concurrent reads no longer block each other)
- Parallelize PostgreSQL DDL metadata queries with tokio::try_join!
2026-05-10 23:23:22 +08:00
t8y2
685aba00e2
fix: avoid disconnecting prefixed web pools
2026-05-10 22:41:04 +08:00
t8y2
3eff55e4e2
fix: sync web connection config cache
2026-05-10 22:38:47 +08:00
t8y2
6d513afc16
feat(objects): show routines in object browser
2026-05-10 21:14:16 +08:00
t8y2
766977e7de
chore: bump version to 0.5.2
2026-05-10 13:01:38 +08:00
t8y2
10bfede1c7
feat(jdbc): add optional JDBC plugin support
2026-05-10 12:57:38 +08:00
t8y2
b013a2ac29
feat(sql): persist SQL library in app database
2026-05-10 00:41:17 +08:00
t8y2
d6b367ebec
build(release): bump version to 0.5.1
2026-05-09 18:26:41 +08:00
t8y2
5c52560368
feat(schema): 增加数据库对象列表缓存
2026-05-09 17:36:20 +08:00
Bacon2994
ce2f97a175
fix(sidebar): 修复默认库过滤数据库树 ( #175 )
2026-05-09 14:42:24 +08:00
t8y2
6f29c38866
chore: bump version to 0.5.0
2026-05-09 12:20:19 +08:00
Bacon2994
b669efb5ff
style(redis): 修正 Rust 格式检查
2026-05-08 10:11:44 +08:00
Bacon2994
0fb6aebd59
feat(redis): 修复全库键浏览与二进制展示
2026-05-08 10:06:16 +08:00
skyler
cf25b7d6d4
Merge pull request #139 from rarnu/feat/edit-on-resultset
...
add: 增加对于查询得到的结果集直接进行数据编辑的功能
2026-05-07 17:44:48 +08:00
rarnu
814fda7433
add: 增加对于查询得到的结果集直接进行数据编辑的功能。当查询是单表且包含主键(有联合主键时包含全部主键)时,可以在结果集内双击单元格修改数据,修改结果以事务形式提交或回滚。
2026-05-07 15:09:59 +08:00
t8y2
a8e9ac34e0
chore: bump version to 0.4.3
2026-05-07 11:51:59 +08:00
t8y2
b6a39c1fa0
feat(query): set schema context (search_path) before query execution ( #113 )
...
Add schema selector to the editor toolbar for schema-aware databases
(PostgreSQL, SQL Server, Oracle). When a schema is selected, the backend
sets the appropriate search_path before executing queries so users no
longer need to write schema-qualified table names.
2026-05-06 18:22:41 +08:00
t8y2
0f40488bf1
feat(web): add password setup page, change password, and settings tabs
...
- First-time visitors see a password setup page instead of open access
- Password persisted to SQLite (env var DBX_PASSWORD takes priority)
- Add change password in settings dialog (Security tab, web only)
- Split settings dialog into Editor and Security tabs
- Argon2 hashing for all password storage
2026-05-05 22:22:04 +08:00
t8y2
d66ac93622
security(web): replace SHA-256 with Argon2 for password hashing
...
SHA-256 without salt is vulnerable to rainbow table attacks.
Argon2 provides salted slow hashing resistant to brute force.
2026-05-05 21:13:07 +08:00
t8y2
24537093ad
feat(update): add API endpoint to retrieve app version and update client-side calls
2026-05-05 16:01:38 +08:00
t8y2
41445ff474
chore: add rustfmt.toml and apply unified code formatting
2026-05-05 14:16:18 +08:00
t8y2
edcdd652ae
fix(connection): reduce failed connection timeout
...
Closes #86
2026-05-05 14:13:07 +08:00
t8y2
1d6621e471
feat: update dependencies and integrate tracing for improved logging and performance
2026-05-05 13:29:02 +08:00
t8y2
10d1d31053
Refactor code structure for improved readability and maintainability
2026-05-05 13:21:04 +08:00
t8y2
684877f563
feat: enhance auth check logic to handle password hash absence
2026-05-05 10:41:20 +08:00
t8y2
f9a9945f1f
feat: migrate storage from JSON files to SQLite
...
Replace all JSON file storage (connections, secrets, history, AI config,
conversations, sidebar layout) with a single SQLite database (dbx.db).
Auto-migrates existing JSON data on first launch, renaming old files to
.bak. Remove keyring dependency — passwords now stored in SQLite.
2026-05-05 04:48:45 +08:00
t8y2
794c5375c7
feat: add execute-script route and handler for executing SQL scripts
2026-05-05 03:22:26 +08:00
t8y2
41bceffc0e
feat: add web deployment with axum server, Docker support, and browser UI
...
Introduce src-web (axum HTTP server) exposing all 43 database operations
as REST APIs with SSE streaming for AI, transfers, and SQL file execution.
Frontend adapts automatically between Tauri and HTTP backends via api.ts.
Includes password authentication, Docker packaging, and login page.
2026-05-05 03:16:50 +08:00