Skip to content

v0.3.0

Choose a tag to compare

@thaw-release-bot thaw-release-bot released this 13 Jul 17:24

0.3.0 (2026-07-13)

Bug Fixes

  • add loading indicators when expanding sidebar tree nodes (#272) (6682ce2), closes #267
  • apply in-script ALTER TABLE ADD COLUMN to column caches (#733) (9efece4), closes #715
  • base "No database/schema selected" diagnostics on session context (#689) (#695) (a5cc69d)
  • bump Go to 1.26.4 to resolve stdlib vulnerabilities (#359) (5dbce6f)
  • cell detail panel only visible for single-cell selection (#597) (#599) (e3a52fe)
  • clamp cascading object-store submenus to the viewport (#534) (#620) (861e062)
  • closing the last tab no longer spawns SQL (n+1) (#595) (#598) (24f2688)
  • convert diagnostics marker columns from byte to UTF-16 for Monaco (#735) (b5c9026), closes #702
  • correct ALTER TABLE ADD and CAST data-type parsing (#712) (#732) (fe20cf0)
  • correct CREATE STAGE false positives and add ALTER STAGE diagnostics (#109) (#112) (0ae0da9)
  • dbt generator underscore collisions + whitespace-only SQL body (#547) (#580) (25e86aa)
  • detect row explosion on equi-joins in EXPLAIN plan linter (#76) (#79) (bf6d9e6)
  • don't flag word after predicate LIKE as a missing table (#707) (#728) (a5ea5a4), closes hi#frequency
  • drag-select first keystroke dropped in editor (#575) (#587) (1989cc7)
  • eliminate 7 ValidateAntiPatterns false positives (#710) (#738) (68f84fd)
  • eliminate false positive warnings in SQL diagnostics (#129) (#130) (17a60a6)
  • empty statement error on trailing comment after final semicolon (#693) (#698) (83a2b50)
  • false alert with warehouse properties (#269) (c70e773), closes #262
  • false column warnings for date parts and context parsing for USE statements (#78) (ab49813)
  • find-widget tooltips visible + clipboard routes to find/replace boxes (#593) (#594) (d22afb9)
  • function catalog signature box invisible in light theme (#565) (#607) (eebbe70)
  • git_get_head_file fails for deleted files (#371) (#627) (87c54ea)
  • handle case-sensitive table names correctly in SQL diagnostics and tooltips (#124) (62d6dd8), closes #123
  • honor backslash escapes in single-quoted string literals (#730) (66c58ad), closes #701 #701
  • implement colorful object-browser icons and fix font size (#313) (673f6da)
  • improve context-aware autocomplete for case-sensitive names and trailing dots (#71) (ef7913b), closes #69
  • incorrect sql diagnostics warning for CREATE TASK USING CRON (#308) (8c19309), closes #306
  • keep Connect button always visible in connection dialog (#271) (85d17be), closes #264
  • lock result set per SQL query tab (#110) (#111) (bd46ded)
  • no false-positive diagnostics for FROM VALUES (#692) (#699) (923de4e)
  • no ValidateTablesExist false positives when catalog data is missing (#709) (#740) (a295285), closes #700
  • omit account name from account-level role GRANT DDL (#276) (ba35b46), closes #265
  • only validate $$ bodies as scripting when they open with BEGIN/DECLARE (#725) (6ff734e), closes #704 #704
  • optimize resize handle performance via direct DOM manipulation (#63) (1c662fc), closes hi#performance
  • pass role directly to CanCreateUsers/CanManageUsers/CanCreateIntegration (#245) (#246) (40f791e)
  • persist MCP session port and token across restarts (#381) (51afcbb), closes #380
  • pre-fetch schema metadata for USE statements in SQL editor (#81) (214bb83)
  • prevent app crashes when mapping empty lists (#125) (#126) (d4699bb)
  • prevent row-number column from stretching in table-layout: fixed (#300) (0c8fe3b), closes #299
  • produce diagnostics for bare SELECT without FROM clause (#303) (fb4ad8e), closes #301
  • query history defaults to current user/today + session drill-down (#570) (#573) (c4dfc19)
  • quote bare identifiers in DROP/SHOW DDL and dedupe helpers (#526) (38ab495)
  • re-probe warehouse metering permission on connect (#270) (66118bb), closes #263
  • rebase diagnostic marker columns for mid-line and multi-line/comment failures (#741) (810b85c), closes #703 #702 #703
  • recognize implicit (AS-less) column aliases in diagnostics (#739) (fb6dbc1), closes #713
  • recognize paren-less SELECT * EXCLUDE contextually (#714) (#729) (d6d0d17)
  • reduce oversized frames/borders on sidebar panels (#256) (35f245f), closes #249
  • refresh create integration permission on connection and on reload (#92) (e4693b6), closes #90
  • refresh open editor tabs when their file changes on disk (#590) (#591) (fa6a8c5)
  • register TIMESTAMP synonyms and FILE data type (#711) (#726) (317b775)
  • remove duplicate Modify menu item for SECRET objects (#274) (3a67267), closes #273
  • remove INFORMATION_SCHEMA from write/DDL-target schema pickers (#554) (#616) (76ad72c)
  • remove scroll synchronization from side-by-side result grids (#298) (f793e6d), closes #284
  • reopen object store path after refresh (#493) (#494) (61fb0af)
  • reorganize menu bar (#566) (#586) (8226ab6)
  • resolve 3 govulncheck vulnerabilities via dependency bumps (#650) (19960b0)
  • resolve SQL autocompletion issues (#77) (f1e2d4c), closes #74
  • resolve unknown object bug in sql lineage tracing for diamond dependencies (#132) (22a229a), closes #131
  • RM/LS abbreviations and per-statement paren balance in ValidateSyntax (#723) (be70b41), closes #706
  • sanitise filePath in ExecuteGitFile SQL interpolation (#330) (#625) (6422751)
  • scripting-scope false positives — proc args, RETURN builtin(), FOR REVERSE (#727) (eca7512), closes #705
  • split-pane diagnostics use each pane's own session context (#736) (6b6f381), closes 689/#695 689/#695 #717
  • sqlgrammar false positives — COPY options, EXECUTE IMMEDIATE $$, LOCATION path, CLUSTER BY LINEAR (#737) (d99992d), closes #716 #716
  • stage upload allows any file type and a destination path (#545) (#608) (4dd1b96)
  • sticky debug bar, live breakpoints, and debugger reliability (#62) (5653d9a)
  • stop // line comment from swallowing file:// stage URIs (#724) (63d7821), closes #696 #700
  • strip ↺ prefix from suggested filename when saving orphaned tabs (#106) (fbb06b7), closes #102
  • supersede in-flight diagnostics runs with a monotonic run token (#731) (e139690), closes #689 #702 #717 #718
  • support implicit joins and CLONE keyword in lineage detection (#66) (25e6a6a)
  • suppress false positives for multi-CTE names and string-literal identifiers (#72) (#73) (62b8658)
  • surface AI feature-flag gate and make model test manual (#473) (#624) (9d40a31), closes #3 #1 #2
  • syntax highlighting + tooltips for geospatial functions (#691) (#697) (a0b0b7f)
  • toolbar scales with narrow windows instead of clipping (#603) (#604) (36c2f09)
  • track in-script CREATE of special table-likes and streams (#708) (#734) (8c7e5b1)
  • treat // as a line comment in the SQL editor (#696) (7bbafb0), closes #690
  • update golang.org/x/crypto to v0.52.0 (#304) (9f8c2cd)
  • update golang.org/x/net to v0.55.0 (#307) (2b591ad)
  • use ExecDDL for sidebar drop/undrop/rename to preserve open tabs (#266) (c21e73b), closes #260
  • use recursive FSEvents watcher to stop FD exhaustion on macOS (#485) (#489) (963a9bf)
  • visible border on View Definition code box in light theme (#542) (#617) (9e9abf5)

Features

  • Active Files dropdown + tab rename + numbered scratch tabs (#468) (#583) (74a3772)
  • add Agent and External Agent support to the object store (#415) (#544) (e4c94fe)
  • add Aggregation Policy support to the object store (#406) (#516) (ac31deb)
  • add Alert support to the object store (#391) + consolidate tag/escape SQL helpers (#486) (bedeea3)
  • add Authentication Policy support to the object store (#408) (#520) (d21c298)
  • add column context menu in sidebar (#331) (9f8a908), closes #320
  • Add configurable session management settings modal (#268) (8ba247f)
  • add Contact support to the object store (#421) (#553) (522533a)
  • add Cortex Search Service support to the object store (#411) (#529) (b8e900d)
  • add cross-tab search and replace (#295) (38a9db8), closes #258
  • add Data Metric Function support to the object store (#403) (#512) (42639cc), closes #402
  • add Dataset support to the object store (#419) (#551) (7a6fde7)
  • add DBT PROJECT object management in sidebar context menu (#326) (e516692), closes #324
  • add Drop Database/Schema context menu actions in object explorer (#105) (7cf9ffd)
  • add Dynamic Table support to the object store (#388) (#480) (bdc81aa)
  • add Event Table support to the object store (#401) (#507) (9eaadbb), closes #400
  • add Excel-like grid features (#280) (#285) (5c4c237)
  • add Export DDL for Task Graph (#305) (4f5dcaa), closes #290
  • add extended schema & object discovery MCP tools (#361) (9b9fd78), closes #339
  • add External Function support to the object store (#402) (#510) (079a066), closes #401
  • add External Table support to the object store (#389) (#481) (583812c), closes #388
  • Add feature flag for Snowflake CLI Profile Manager (#251) (8b6b2ec), closes #250
  • add file format builder to create stage dialogue (#136) (13a38c0)
  • add file management context menu to File Browser (#293) (12dbeeb), closes #277
  • add file system watcher for auto-refreshing FileBrowser (#323) (a838144), closes #321
  • add FormatPreviewTable component accidentally omitted from stage/file-format work (#187) (26eee9c), closes #136
  • add forward-proxy support for Snowflake connections (#478) (0954582), closes #279
  • add Gateway support to the object store (#420) (#552) (02b3a07)
  • add get_er_designer_state and modify_er_designer MCP tools (#383) (c13df2f)
  • add Hybrid Table support to the object store (#400) (#504) (6275257), closes #399
  • add Iceberg Table support to the object store (#399) (#503) (83ebb65)
  • add Image Repository support to the object store (#396) (#499) (eba771b)
  • add Join Policy support to the object store (#412) (#536) (722d7fb)
  • add local branch merging support to git operations (#96) (df3f599)
  • add local session query log (#469) (9f49500), closes #292
  • add Masking Policy support to the object store (#393) (#495) (13f3c80), closes #392 #391
  • add Materialized View support to the object store (#484) (402e307), closes #388 #389
  • add MCP account & infrastructure tools (#368) (d720341), closes #341
  • add MCP DDL builder & function metadata tools (#374) (8edd989), closes #344
  • add MCP editor context tools (#337) (#358) (3ca2fb4)
  • add MCP EXPLAIN precompilation safety gate (#356) (2cca220), closes #352
  • add MCP migration & dbt project generation tools (#375) (5dbc721), closes #345
  • add MCP notebook & Snowpark tools (#376) (132f52d), closes #346
  • add MCP open_sql_tab tool for AI-to-editor tab delivery (#360) (acf4af6)
  • add MCP query profiling & lineage tools (#363) (f770ad9)
  • add MCP server foundation for external AI clients (#348) (bb2cf06), closes #334
  • add MCP Server support to the object store (#416) (#548) (ecd62c3)
  • add MCP SQL diagnostics & validation tools (#353) (a07a113), closes #336
  • add MCP task, stage & pipeline tools (#372) (f37a640), closes #343
  • add MCP workspace & git read-only tools (#370) (4083817), closes #342
  • add Model (ML Model Registry) support to the object store (#410) (#527) (4d8f1f5)
  • add Model Monitor support to the object store (#418) (#550) (68cc61f)
  • add Network Rule support to the object store (#395) (#496) (d435352)
  • add open_er_designer MCP tool (#379) (6809f92), closes #347 #347
  • add Packages Policy support to the object store (#409) (#525) (5b5ae34)
  • add Password Policy support to the object store (#404) (#513) (00b0372)
  • add Privacy Policy support to the object store (#413) (#538) (dbf0b46)
  • add Projection Policy support to the object store (#407) (#517) (84fc780)
  • add Row Access Policy support to the object store (#394) (#498) (d2d6f7a), closes #393 #392 #391
  • add Service (SPCS) support to the object store (#397) (#500) (bf787bb)
  • add Session Policy support to the object store (#405) (#514) (7c99018)
  • add sidebar tree expansion for Stages and DBT Projects (#329) (3753bd8)
  • Add Snowflake CLI Profile Manager with full CRUD support (#248) (d4117a0), closes #247
  • add Snowpipe lifecycle management and monitoring (#107) (#108) (54e6956)
  • Add SQL diagnostics & semantic context into autocomplete (#255) (75b09e8), closes #254
  • Add SQL validation for ALTER DYNAMIC TABLE lifecycle commands (#182) (#239) (bd6a26e)
  • Add SQL validation for ALTER SESSION SET / UNSET (#209) (8b589fa), closes #158
  • Add SQL validation for ALTER TABLE ... ADD/DROP SEARCH OPTIMIZATION (#181) (#237) (90b6fba)
  • Add SQL validation for ALTER TABLE ... SWAP WITH (#183) (#240) (f07f12f)
  • Add SQL validation for ASOF JOIN syntax (#179) (#235) (2fc8dcc)
  • Add SQL validation for BEGIN, COMMIT, ROLLBACK transaction commands (#215) (0e6d508), closes #163
  • Add SQL validation for CALL statements (#202) (eb088bf), closes #151 #151
  • Add SQL validation for COPY INTO command (#190) (43cd2c3), closes #141
  • Add SQL validation for CREATE AGGREGATION POLICY and CREATE PROJECTION POLICY (#164) (#216) (1cf0561)
  • Add SQL validation for CREATE ALERT (#197) (ceab0ee), closes #146
  • Add SQL validation for CREATE APPLICATION PACKAGE and CREATE APPLICATION (#172) (#224) (9673734)
  • Add SQL validation for CREATE COMPUTE POOL (#169) (#221) (7a5dc10)
  • Add SQL validation for CREATE DATASHARE (#168) (#220) (da8bfd7)
  • Add SQL validation for CREATE EVENT TABLE (#207) (7b8991f), closes #156
  • Add SQL validation for CREATE EXTERNAL TABLE (#191) (6b3d236), closes #142
  • Add SQL validation for CREATE EXTERNAL VOLUME (#206) (c871060), closes #155
  • Add SQL validation for CREATE FILE FORMAT (#196) (896ff0f), closes #145
  • Add SQL validation for CREATE FUNCTION (#189) (791c3bd), closes #140
  • Add SQL validation for CREATE GIT REPOSITORY (#173) (#225) (e938776)
  • Add SQL validation for CREATE HYBRID TABLE (#194) (66d4dda), closes #144
  • Add SQL validation for CREATE ICEBERG TABLE (#192) (1adcd7c), closes #143
  • Add SQL validation for CREATE IMAGE REPOSITORY (#171) (#223) (51f02bb)
  • Add SQL validation for CREATE NETWORK POLICY (#198) (4e3280f), closes #147
  • Add SQL validation for CREATE PACKAGES POLICY (#165) (#217) (a5345a6)
  • Add SQL validation for CREATE PIPE (#186) (e10135e), closes #138
  • Add SQL validation for CREATE PROCEDURE (#188) (4ca3f95), closes #139
  • Add SQL validation for CREATE REPLICATION GROUP and CREATE FAILOVER GROUP (#219) (e17b6c5)
  • Add SQL validation for CREATE ROW ACCESS POLICY (#199) (4765a8b)
  • Add SQL validation for CREATE SECRET (#174) (#226) (94d79fb)
  • Add SQL validation for CREATE SERVICE and EXECUTE SERVICE (#170) (#222) (7a1ce86)
  • Add SQL validation for CREATE SESSION POLICY and CREATE PASSWORD POLICY (#200) (fe6b2e5), closes #149
  • Add SQL validation for CREATE SHARE and ALTER SHARE (#205) (1cb2481), closes #154
  • add SQL validation for CREATE STREAM (#184) (4e2f769)
  • Add SQL validation for CREATE TAG, ALTER TAG, DROP TAG (#213) (2337e40), closes #161
  • Add SQL validation for CREATE TASK DAG structure and ALTER TASK lifecycle commands (#214) (0840864), closes #162
  • Add SQL validation for CREATE/ALTER/DROP NOTEBOOK (#232) (9ef65af), closes #176
  • add SQL validation for DESCRIBE / DESC commands (#212) (0e9cfd3), closes #160
  • Add SQL validation for EXECUTE IMMEDIATE and EXECUTE TASK (#203) (fa08b1b), closes #152
  • Add SQL validation for GRANT and REVOKE statements (#201) (164eb4f), closes #150
  • Add SQL validation for MATCH_RECOGNIZE clause (#178) (#234) (2bc4dcf)
  • Add SQL validation for multi-table INSERT (INSERT ALL / INSERT FIRST) (#180) (#236) (31ae7e9)
  • Add SQL validation for PIVOT and UNPIVOT clauses (#177) (#233) (9f35158)
  • Add SQL validation for PUT / GET / LIST / REMOVE stage commands (#204) (586cede), closes #153
  • Add SQL validation for SHOW commands (#211) (3c9de28), closes #159
  • Add SQL validation for SNOWFLAKE.CORTEX AI function calls (#175) (#231) (e2bf162)
  • Add SQL validation for Time Travel queries (AT / BEFORE clauses in DML/DQL) (#166) (#218) (b233e8e)
  • Add SQL validation for USE ROLE, USE WAREHOUSE, and USE SECONDARY ROLES (#208) (5d5ad71), closes #157
  • add Storage Lifecycle Policy support to the object store (#414) (#541) (cd148a4)
  • add Streamlit support to the object store (#398) (#501) (1b87108)
  • add Tag support to the object store (#392) (#490) (15aaa01), closes #391 #390 #389 #388
  • add task run history modal (#291) (42a4729)
  • add UI for managing Snowflake GIT REPOSITORY objects (#100) (#101) (c4b908d)
  • add UI for managing Snowflake SECRET objects (#99) (dceafe7)
  • add View, Sequence, Stream, Function, Procedure & Semantic View to the object store (#549) (0556651), closes #417 #417
  • add visual file format builder and previewer (#114) (d24a021)
  • add visual join builder from ER diagram (#387) (96b017c)
  • built-in functions in snippets + function DEFAULT values (#564) (#613) (857b5e8)
  • cell detail side panel for inspecting and copying cell content (#474) (33b4534), closes #286
  • centralized feature flag management with IT admin provisioning (#86) (#87) (b0ccbe7)
  • consistent way to open/change/switch working folder (#577) (#602) (d2661fb)
  • consolidated Column Properties modal (#574) (#585) (a8a867b), closes #506
  • DDL export options dialog under Tools menu (#605) (12ee940)
  • drag-and-drop column reordering in the results grid (#386) (#479) (dfc0685)
  • draggable & resizable modals (#572) (#606) (2d7ba99)
  • editable Database Properties modal (ALTER DATABASE) (#683) (#686) (fe2784a), closes 626/#681 #685
  • editable Properties modal for schema (#626) (#682) (2c4790c), closes common/hi#value #681
  • enhance git_https_api integration form with Token, GitHub App, OAuth2, Private Link modes (#94) (4c1cca2)
  • ER Designer reuses the Create Table modal for new tables (#615) (#688) (7bc9fad), closes 613/#564
  • expand column wildcard into column list via editor context menu (#612) (#622) (043d959)
  • file & object store operations — clipboard, multi-select, bulk ops (#579) (#589) (cb95cf3)
  • Git Changes view + staging, folded into the file explorer (#563) (#578) (fad332c)
  • grammar-driven SQL autocomplete (#557) (#561) (b0a36c9), closes #556
  • group schema "Create Object" menu into cascading categories (#497) (9baec81)
  • implement local loopback OAuth flow for git authentication (#88) (#89) (a60cb5b)
  • implement stage file management (upload, download, remove, browse) (#133) (#134) (37b4a4c)
  • implement stage management for internal and external stages (#121) (#122) (8e43df8)
  • implement table and view tree node expansion in sidebar (#67) (e1a22fd)
  • Implement unified application toolbar (#259) (de8f949), closes #243
  • improve notebook UI and cap large result sets (#316) (11369ed), closes #314
  • improve snowflake object validation and syntax highlighting (#64) (aae1cca)
  • integrate File Format Builder into Import Data workflow (#119) (#120) (e49f0a0)
  • Map view for GeoJSON cells in the cell-detail panel (#546) (#694) (49822c0)
  • MCP SQL execution pipeline with EXPLAIN gate and LIMIT injection (#357) (01683cb), closes #335
  • move procedure and function SQL generation to backend (#95) (baa2efc)
  • multi-cell debugger support for Notebooks (#61) (01f8e4c)
  • object hover tooltip for all kinds; cmd/ctrl-hover for DDL (#562) (#610) (cf12f23)
  • offline-first startup with on-demand Snowflake connection (#83) (11bcea9), closes 80/#81 #82
  • open any text file via dedicated dialog (#584) (#588) (250dc90)
  • queryprofile backend module and EXPLAIN context menu (#70) (45213fb)
  • refactor stage properties into an editable modal and update context menu (#128) (b491a7f)
  • remaining ALTER DATABASE options in Database Properties modal (#685) (#687) (87d5d2a)
  • remaining ALTER SCHEMA options in Schema Properties modal (#684) (a6b7c28), closes #626
  • rename, change tracking, and tags in View Properties modal (#619) (c87eeaf), closes #618 #618 #618
  • replace AG Grid with TanStack Table + virtual scrolling (#282) (27776d0), closes #281
  • replace Mermaid ER diagrams with interactive XYFlow canvas (#377) (f53570e), closes #297
  • sequence-default picker in Column Properties (#614) (#742) (6b90c22)
  • Snowflake Scripting AWAIT grammar rule (#628) (#649) (a630110), closes #556
  • Snowflake Scripting BEGIN … END grammar rule (#629) (#651) (967259a)
  • Snowflake Scripting BREAK grammar rule (#630) (#652) (e146d5f)
  • Snowflake Scripting CANCEL grammar rule (#631) (#653) (0864c7f)
  • Snowflake Scripting CASE grammar rule (#632) (#654) (96cb6dc)
  • Snowflake Scripting CLOSE grammar rule (#633) (#655) (c53c90c)
  • Snowflake Scripting CONTINUE grammar rule (#634) (#656) (e7e9c19)
  • Snowflake Scripting DECLARE grammar rule (#635) (#657) (42201b9)
  • Snowflake Scripting EXCEPTION grammar rule (#636) (#658) (0be2e49)
  • Snowflake Scripting FETCH grammar rule (#659) (9aa670d), closes #637
  • Snowflake Scripting FOR grammar rule (#660) (960c25b)
  • Snowflake Scripting IF grammar rule (#639) (#661) (8347c12)
  • Snowflake Scripting LET grammar rule (#640) (#662) (3e1d259)
  • Snowflake Scripting LOOP grammar rule (#663) (80617aa), closes #641
  • Snowflake Scripting NULL grammar rule (#642) (#664) (ebc6580)
  • Snowflake Scripting OPEN grammar rule (#643) (#665) (ac02cc9)
  • Snowflake Scripting RAISE grammar rule (#644) (#666) (716eda1)
  • Snowflake Scripting REPEAT grammar rule (#645) (#667) (1e6f749)
  • Snowflake Scripting RETURN grammar rule (#646) (#668) (717632b), closes #556
  • Snowflake Scripting variable references & assignment (#648) (#670) (7c3e4ce), closes #635 #640
  • Snowflake Scripting WHILE grammar rule (#647) (#669) (4a0afb7)
  • snowpark dependency-file support (requirements.txt / pyproject.toml / freeze) (#576) (dd35312)
  • support all gosnowflake auth methods (PAT, OAuth, WIF) (#476) (4365790)
  • support using existing venv in Snowpark setup (#322) (2ad86b3), closes #317
  • tag governance — complete ALTER TAG, centralized Tag Management & per-object tag references (#555) (687d4b5), closes #492 #515 #492 #393 #515
  • two-tier object browser with basic and extended loading (#319) (443487c)
  • user Properties modal with per-property ALTER USER editing (#569) (#611) (3e27244)
  • view task Properties from task graph node context menu (#12) (#623) (2af3ed0)
  • warn on ALTER/DROP/DESCRIBE/COMMENT ON for non-existent objects (#719, phase 2) (#721) (b504da9), closes #720 #708
  • warn on kind-implied references to non-existent objects (#719, phase 3) (#722) (1530f7a), closes #720 #721
  • warn on references to non-existent stages (#719, phase 1) (#720) (a7292f4), closes #709 #700

Performance Improvements

  • shrink binary and cold start via slim Monaco + code-splitting (#531) (2d4f38a), closes #4