You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
perf: fix remaining medium and low severity performance issues (#370)
* perf: fix remaining medium and low severity performance issues
Medium fixes:
- Coalesce NSWindow.didUpdateNotification into one check per run loop (MED-2)
- Increase SSH relay poll timeout from 100ms to 500ms (MED-3)
- Skip tab persistence on column-layout-only changes (MED-4)
- Use toQueryResultRows() with reserveCapacity (MED-9)
- Add single-column sort fast path avoiding key pre-extraction (MED-17)
Low fixes:
- Cache queryBuildingDriver probe result per database type (LOW-2)
- Cache column type classification in PluginDriverAdapter (LOW-3)
- Use NSString character-at-index in substituteQuestionMarks (LOW-4)
- Remove redundant onChange(of: tabs.count) observer (LOW-5)
- Replace inline tabs.map(\.id) with tracked tabIds property (LOW-6)
- Count newlines without array allocation in CellOverlayEditor (LOW-7)
- Single-pass delimiter detection in RowOperationsManager (LOW-7)
- Replace 6x linear string scans with single alternation regex (LOW-8)
- Lowercase aliasOrName once in resolveAlias (LOW-9)
- Use Set<TableReference> for O(1) dedup in autocomplete (LOW-10)
- Consolidate 40+ keyword regexes into single alternation per color (LOW-11)
- In-place index mutation in removeRow instead of .map (LOW-12)
- Guard scroll observer when no inline suggestion active (LOW-13)
* fix: address CodeRabbit review feedback
- Remove force-unwrap in SQLFormatterService majorKeywordRegex match
- Add explicit internal access control on TableReference
- Cap DDL highlight regex to 10k characters for large DDL safety
- Fix CRLF double-counting in CellOverlayEditor newline counter
- Invalidate queryBuildingDriverCache on plugin register/uninstall
- Use DispatchQueue.main.async for isUpdatingColumnLayout flag reset
* fix: invalidate queryBuildingDriverCache in setEnabled()
0 commit comments