Skip to content

Releases: sbdchd/squawk

Fix Squawk Ignore File Comment Bug + IDE Improvements

28 Feb 21:11
c1f6c7c

Choose a tag to compare

Added

  • ide: quick action for timestamp with out timezone to timestamptz (#976)
  • ide: goto def for create aggregate params (#972)
  • ide: hover/goto def for subquery w/ alias (#970)
  • ide: lateral joins, subqueries with table, hover aliases (#969)
  • ide: support table alias with column list (#968)

Fixed

  • linter: fix ignore comment not working with trailing content (#975)
  • ide: fix column name infer & related goto def (#977)
  • syntax: update ast with missing detach partition fields (#978)
  • ide: fix builtin aggregates being defined as functions (#971)
  • ci: fix arm musl build (#966)

Internal

  • ide: refactor hover to use goto def (#967)

Revert changes to foreign key constraint & ide improvements

26 Feb 03:36
ca4a8b3

Choose a tag to compare

Changed

  • linter: undo foreign key constraint check in create table (#962)

    This was an incorrect change to add and isn't necessary since the new table
    doesn't have any rows.

Added

  • ci: build for alpine arm (#960)
  • ide: code action - rewrite between as binary expression (#953)
  • ide: goto def & hover for now() + current_timestamp (#950)
  • ide: goto def for column names in table function returns (#949)
  • ide: goto def with function in from item & cross join (#961)

Fixed

  • ide: fix col names for collation for, at time zone, overlaps (#951)

Improve `adding-foreign-key-constraint` & `adding-not-null-field`

21 Feb 04:51
6bcf98e

Choose a tag to compare

Added

  • linter: warn about foreign key constraints in create table defs (#945)
  • parser: support on conflict do select & sync regression suite (#935)
  • parser: improve create function table return type parsing (#944)
  • ide: find ref support for builtins (#942)
  • ide: support inherits/like tables in inlay hints (#936)
  • ide: add quick fixes for leading from (#933)
  • ide: goto def for builtins (#932)

Fixed

  • linter: fix adding-not-nullable-field for pg >= 12 with validated CHECK (#910). Thanks @reteps!

Changed

  • linter: don't report lint errors when syntax error found (#943)

Fix TLS Issue with GitHub Commenting + More

12 Feb 23:27
f42cbd9

Choose a tag to compare

Fixed

  • github: fix commenting via rust_crypto features in jsonwebtoken (#929). Thanks @lokiwins!

Added

  • parser: parse leading from clauses but warn they're not supported (#927)

    from t select c;

    now gives:

       error[syntax-error]: Leading from clauses are not supported in Postgres
      โ•ญโ–ธ stdin:1:1
      โ”‚
    1 โ”‚ from t select c;
      โ•ฐโ•ดโ”โ”โ”โ”โ”โ”
    

    We also check for solo from clauses:

    from t;

    gives:

      error[syntax-error]: Missing select clause
      โ•ญโ–ธ stdin:1:1
      โ”‚
    1 โ”‚ from t
      โ•ฐโ•ดโ”
    
  • parser: fix parsing any/all/some in exprs (#926)

    select * from t order by all

    now properly errors:

       error[syntax-error]: expected expression in atom_expr
      โ•ญโ–ธ stdin:1:26
      โ”‚
    1 โ”‚ select * from t order by all
      โ•ฐโ•ด                         โ”

    Before it parsed all as a name reference.

  • ide: goto def func call in on conflict (#925)

Parser & Goto Def Improvements

07 Feb 00:31
e580b1d

Choose a tag to compare

Added

  • parser: improve error recovery in where, having, & join on (#911, #912)
  • ide: goto def on conflict clause (#907)
  • ide: goto def func calls inside constraints/columns/indexes/partitions (#906)

Fixed

  • ide: goto def with recursive CTEs (#909)

prefer-robust-stmts no longer ignores single statement files + ide improvements

31 Jan 22:45
f8eb190

Choose a tag to compare

Added

  • vscode: add report issue command using the builtin issue reporter (#897)
  • ide: goto def on comment on stmts (#894)
  • ide: goto def with create table as (#893)
  • ide: document symbols for create policy (#892)
  • ide: goto def with policy stmts (#886, #887, #888)

Changed

  • linter: undo ignoring single stmts in prefer-robust-stmts (#902)

Fixed

  • ide: fix goto def for func call inside func (#901)
  • docs(readme): bump version of squawk in pre-commit demo v0.10.0 to v2.38.0 (#889). Thanks @dzhalaevd!

Update Completions with Type / Function Signature & More

25 Jan 00:00
e2f3fc9

Choose a tag to compare

Added

  • parser: add more nodes for create policy/alter policy ast (#884)
  • parser: cte error handling improvements (#881)
  • ide: completions for more clauses in select (#883)
  • ide: complete * in select clauses (#880)
  • ide: improve select completions with completion marker (#879)
  • ide: hover support for subquery columns (#878)
  • ide: include types in completions (#877)
  • ide: goto def with function param in create op (#876)
  • ide: goto def support for domains (#872)
  • ide: goto def on multiranges & timestamp timezones (#870)
  • ide: function signature in completion (#869)

Changed

  • ide: update cast rewrites to support select type 'foo' (#868)

Fixed

  • ide: fix column name for real type (#874)
  • ide: fix goto def with cte & table of same name (#873)
  • parser: fix unicode escape strings being parsed as byte strings (#871)
  • ide: fix type alias goto def, bigint -> int8, smallint -> int2, etc. (#867)
  • parser: fix parsing cast operator with array type (#866)

Initial Code Completions, More Code Actions, Goto Def & Parser Improvements

18 Jan 22:57
79df244

Choose a tag to compare

Added

  • ide: cast function <-> cast operator code actions (#834)
  • ide: values <-> select code actions (#846, #847)
  • ide: insert schema code action (#855, #856)
  • code completion
    • ide: delete from completion improvements (#861)
    • ide: completion for truncate, table, select (#857)
    • ide: code completion in playground & prettier upgrade (#859)
    • ide: code completion for schemas (#858)
  • many goto def & hover improvements
    • ide: goto def for create/alter/drop role (#854)
    • ide: create/alter/drop event trigger (#852)
    • ide: listen/notify/unlisten (#851)
    • ide: goto def with create/drop trigger (#850)
    • ide: goto def/hover/document symbol support for prepare stmt (#849)
    • ide: add support for declare/fetch/move/close cursor (#848)
    • ide: better goto def support for returning clause in insert/update/delete (#828)
    • ide: improved goto def & hover for merge stmts (#830)
    • ide: goto def/hover for like and inherits clauses (#832)
    • ide: goto def nested table/values (#844)
    • ide: goto def with column list alias (#843)
    • ide: goto def on function using table as type (#842)
    • ide: goto def on named params & special functions (#841)
    • ide: goto def on extensions (#840)
  • ide: inlay hints for select in insert stmt (#845)
  • parser: improve error handling for unfinished select stmt (#838)
  • playground: expand selection support (#829)

Changed

  • parser: update role grammar to use refs like names (#853)

Fixed

  • ide: fix default search path to include pg_catalog (#864)

Goto Def Improvements, Merge Stmt Support

06 Jan 06:16
bbce361

Choose a tag to compare

Added

  • ide: goto def support for merge (#826),(#825)
  • ide: goto def truncate, lock, vacuum, alter table column, refresh (#823)
  • ide: document symbol support for create view (#807)
  • ide: goto def create/alter/drop server (#821)
  • ide: goto def foreign tables (#820)
  • ide: use previous token in more cases of punctuation (#819)
  • ide: support hover with * in queries (#818)
  • ide: goto def support for references column constraints & select t.* from t; (#817)
  • ide: support find references for join using clause (#816)
  • ide: goto def using clause in join (#815)
  • ide: goto def for tablespace (#814)
  • ide: better goto def with create table (#813)
  • ide: mat view goto def/hover, agg/procedure/mat view doc symbols (#812)
  • ide: better goto def support for types (#811)
  • ide: composite field goto def & hover (#810)
  • ide: document symbol support for CTEs (#806)
  • ide: hover for views (#804)
  • ide: goto def with create view (#802)
  • vscode: restart server command (#808)

Fixed

  • ide: fix column name for special cased functions (#824)
  • playground: fix dupe hover results in editor (#805)

New year, New Release: PG 19 Group By All & Many IDE Features

02 Jan 05:15
d2f9e27

Choose a tag to compare

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

  • parser: fix parsing group by all in CTE (#780)
  • ide: fix goto def with temp table (#761)