Repository navigation
Conversation
…character Copy as SQL INSERT and Copy quoted name always used MySQL backticks, so a PostgreSQL or SQLite copy produced identifiers the target database rejects. Pass the active driver through the copy helpers and quote identifiers with quoteIdentifier. Without a driver the output keeps backticks as before. Add tests for Postgres, MySQL and the no-driver default. Fixes TabularisDB#1027
| csvIncludeHeaders, | ||
| csvDelimiter, | ||
| tableName, | ||
| driver: activeDriver, |
There was a problem hiding this comment.
[WARNING]: activeDriver is captured but missing from the useCallback dependency array
copySelectedColumns now reads activeDriver, but its dependency array (lines 1897-1907) does not include it. react-hooks/exhaustive-deps is enabled via reactHooks.configs.flat.recommended in eslint.config.js, so this is a new lint warning. It is also a stale-closure risk: if the active driver changes while the listed deps stay unchanged (for example a panel-scoped connection switch via PanelDatabaseProvider), the memoized callback keeps quoting identifiers with the previous driver's quote character, reintroducing the cross-database quoting bug this PR fixes. Add activeDriver to the dependency array, matching the existing convention for activeSchema at lines 908 and 1250.
Reply with @kilocode-bot fix it to have Kilo Code address this issue.
| csvIncludeHeaders, | ||
| csvDelimiter, | ||
| tableName, | ||
| driver: activeDriver, |
There was a problem hiding this comment.
[WARNING]: activeDriver is captured but missing from the useCallback dependency array
copyCellRange now reads activeDriver, but its dependency array (lines 1933-1943) does not include it. react-hooks/exhaustive-deps is enabled via reactHooks.configs.flat.recommended in eslint.config.js, so this is a new lint warning. It is also a stale-closure risk: if the active driver changes while the listed deps stay unchanged (for example a panel-scoped connection switch via PanelDatabaseProvider), the memoized callback keeps quoting identifiers with the previous driver's quote character, reintroducing the cross-database quoting bug this PR fixes. Add activeDriver to the dependency array, matching the existing convention for activeSchema at lines 908 and 1250.
Reply with @kilocode-bot fix it to have Kilo Code address this issue.
| delimiter: csvDelimiter, | ||
| includeHeader: csvIncludeHeaders, | ||
| tableName: tableName ?? "table", | ||
| driver: activeDriver, |
There was a problem hiding this comment.
[WARNING]: activeDriver is captured but missing from the useCallback dependency array
copyColumnValues now reads activeDriver, but its dependency array (lines 1962-1972) does not include it. react-hooks/exhaustive-deps is enabled via reactHooks.configs.flat.recommended in eslint.config.js, so this is a new lint warning. It is also a stale-closure risk: if the active driver changes while the listed deps stay unchanged (for example a panel-scoped connection switch via PanelDatabaseProvider), the memoized callback keeps quoting identifiers with the previous driver's quote character, reintroducing the cross-database quoting bug this PR fixes. Add activeDriver to the dependency array, matching the existing convention for activeSchema at lines 908 and 1250.
Reply with @kilocode-bot fix it to have Kilo Code address this issue.
Code Review SummaryStatus: No Issues Found | Recommendation: Merge Files Reviewed (1 file)
Previous Review Summary (commit c7502b5)Current summary above is authoritative. Previous snapshots are kept for context only. Previous review (commit c7502b5)Status: 3 Issues Found | Recommendation: Address before merge Overview
Issue Details (click to expand)WARNING
Files Reviewed (3 files)
Reviewed by free · Input: 76.8K · Output: 1.1K · Cached: 56.2K |
Fixes #1027
Summary
Test
🤖 Generated with Claude Code