Releases: sbdchd/squawk
Releases Β· sbdchd/squawk
New year, New Release: PG 19 Group By All & Many IDE Features
Added
- ide: add goto def & hover support for types in casts (#799)
- ide: add initial goto def support for types (#798)
- ide: support ctes with update (#797)
- ide: hover with update (#796)
- ide: goto def with update (#795)
- ide: goto def with insert/delete & CTE (#794)
- ide: goto def for joins (#793)
- ide: goto def & hover with procedures (#792)
- ide: table alias goto def support (#791)
- ide: hover for create aggregate (#789)
- ide: goto def for aggregates (#788)
- ide: cte improvements, subqueries, values, union select (#787)
- ide: code action to remove redundant alias (#785)
- ide: add hover to cte table & columns (#784)
- ide: support more CTEs in goto def (#783)
- ide: goto def with cte & select (#782)
- ide: code action for making inferred column alias explicit (#781)
- playground: inlay hints, doc symbols, hover, goto def/refs, actions (#779)
- ide: add columns to document symbols (#778)
- ide: add document symbols (#777)
- ide: support hover & goto def for function call style columns in where (#776)
- ide: support func call syntax in select (#775)
- ide: support goto def on schema (#774)
- ide: support hover for delete, insert, and select targets (#773)
- ide: goto def & hover tables refs in from clause (#772)
- ide: inlay hints for insert & add goto def for hints (#771)
- ide: goto def for insert and delete (#770)
- ide: inlay hints for function calls (#769)
- ide: function call goto def and hover (#768)
- ide: add hover for create function (#767)
- ide: goto def with create & drop function (#766)
- ide: add hover for create index (#765)
- ide: add hover for create table (#764)
- ide: add hover for column in create index (#763)
- ide: goto def on create/drop index (#762)
- ide: add basic find refs support (#760)
Fixed
Postgres 19 Syntax Support & More Goto Def Support
Added
- parser: add support for postgres 19's partition merge, partition split, and more. (#754)
- parser: handle missing exprs in case expr (#749)
- ide: goto def with
tablestmt (#748) - ide: support
set search_path(#747)
Internal
- fix: Removed deprecated cargo_bin() function in snapbox (#746). Thanks @ranger-ross!
Fix NPM Trusted Publishing Round 2
Fixed
- ci: try to fix npm trusted publishing (#742)
Fix NPM Trusted Publishing
Fixed
- ci: npm trusted publishing (#741)
Ide Features, NPM Trusted Publishing, & Linter Fix for Create Temp Table
v2.33.0 - 2025-12-16
Added
-
ide: goto def create temp table (#737)
-
ide: basic goto def for create table/drop table (#736)
-
ide: goto def on begin/commit/rollback (#734)
-
ide: quote & unquote identifiers (#733)
-
ide: add table <-> select rewrites (#728)
-
ide: string rewrites (#725)
-
parser: update grammar & ast (#727)
Fixed
Fix parsing issues with cross joins & insert/merge/update
Fix False Positive in `adding-foreign-key-constraint` & LSP Support for Case Expressions
Added
- linter: adding_foreign_key_constraint: allow when create table in transaction (#713)
- lsp: add code action for case else clause (#709). Thanks @cr4ftx!
- lsp: go to def for case exprs (#708)
- parser: fill out more ast nodes (#714)
- parser: add slice expr node to syntax tree (#707)
- parser: improve create function & create foreign table robustness (#704)
- parser: improve option & role lists (#702)
- parser: improve error recovery for update statements (#701)
Fixed
New Rule: ban-uncommitted-transaction
Added
-
linter: new rule
ban-uncommitted-transactionSquawk now warns about missing
commitstatements like:begin; create table t(id bigint);
warning[ban-uncommitted-transaction]: Transaction never committed or rolled back. ββΈ stdin:1:1 β 1 β begin; β βββββ β β help: Add a `COMMIT` or `ROLLBACK` statement to complete the transaction. ββ΄ 2 Β± 3 + COMMIT; β°β΄
Linter Fix, Parser & VSCode Improvements
Added
-
parser: improve error recovery for option lists in
reindex,prepare,
vacuum,copy,drop database,create type,create function,
create table,create index(#684) -
parser: improved error recovery for CTEs (#683)
with a as ( select 1 ) -- <-- missing a comma b as ( select 3 ) select 2;
squawk now identifies the missing comma correctly:
error[syntax-error]: missing comma ββΈ stdin:4:6 β 4 β ) -- <-- missing a comma β°β΄ β -
parser: improve error recovery of group by & distinct on (#695)
-
vscode: improved commenting behavior (#690)