PackageTrack
Sign in Get early access

sqlparser

Parses sqlite statements and performs static analysis on them

0.45.0 1.3M downloads/mo #298 most downloaded on pub.dev simolus3/drift

What this package is like to depend on

Last release 1 months ago

07 Jul 2026

Release timing varies

gaps range from 3 weeks to 6 months

Nearly every release is documented

notes for 80 of 81 stable releases

1 version withdrawn

withdrawn after publishing

7 years old

83 releases · first in 2019

13 releases in the last 12 months

see the full history below

Release timeline

83 releases · Jul 2019 to Jul 2026
2020 2021 2022 2023 2024 2025 2026
Release Pre-release Withdrawn

Releases

latest 60 of 83
  1. 0.45.0 07 Jul 2026
    Release notes

    We rely on SourceFile.codeUnits, added in 1.10.0.

    Open source →
    Release notes
    • Re-release of version 0.44.6 which contained breaking changes and should not have been released as a patch version.
    • Breaking: Refactor DartPlaceholder to a sealed class.
    Open source →
  2. 0.44.6 06 Jul 2026 withdrawn
    Release notes
    • Fix join analysis to properly treat the left side of a RIGHT or FULL
      join as nullable (#3812).
    • Fix CaseInsensitiveMap.containsKey to be case-insensitive.
    Open source →
    Release notes
    • Fix join analysis to properly treat the left side of a RIGHT or FULL join as nullable (#3812).
    • Fix CaseInsensitiveMap.containsKey to be case-insensitive.
    Open source →
  3. 0.44.5 10 Jun 2026
    Release notes
    • Support ALTER TABLE ADD/DROP CONSTRAINT statements.
    Open source →
  4. 0.44.4 03 May 2026
    Release notes
    • Support ALTER TABLE ALTER COLUMN statements.
    Open source →
  5. 0.44.3 19 Mar 2026
    Release notes
    • Add support for features added in SQLite 3.52.0.
    • Add supportPostgresCasts field on EngineOptions to parse :: casts.
    Open source →
  6. 0.44.2 06 Mar 2026
    Release notes
    • Better error recovery for select statements without result columns.
    Open source →
  7. 0.44.1 01 Mar 2026
    Release notes
    • Expose optional table name token for StarResultColumn.
    Open source →
  8. 0.44.0 28 Feb 2026
    Release notes
    • Refactor the different parse methods on SqlEngine into a single one taking an ParserEntrypoint enum.
    • In drift files, allow reading imports and statement metadata from comments.
    • Make Queryable and TableOrSubquery sealed classes, remove Queryable.when.
    • Expose tokens making up References and TableReferences.
    • Turn AS clauses into an explicit AST node with better spans.
    Open source →
  9. 0.43.1 03 Feb 2026
    Release notes
    • Make NamedWindowDeclaration an AST node.
    • Support parsing DROP, VACUUM, REINDEX, ATTACH, DETACH, SAVEPOINT RELEASE, ROLLBACK, ANALYZE, PRAGMA and ALTER TABLE statements.
    • Add SchemaBuffer class to apply ALTER TABLE and DROP statements to CREATE statements.
    Open source →
  10. 0.43.0 12 Jan 2026
    Release notes
    • Allow parsing SQL from FileSpans, which is convenient for SQL embedded as text in outer structures.
    Open source →
  11. 0.42.1 05 Dec 2025
    Release notes
    • Support new features introduced in SQLite version 3.51.0.
    Open source →
  12. 0.42.0 18 Oct 2025
    Release notes
    • Fix unresolved references in CTEs resolving against the scope of the main query.
    • Static analysis support for the PowerSync SQLite extension.
    Open source →
  13. 0.41.2 05 Sep 2025
    Release notes
    • Improve error message on unknown columns when it looks like the identifier should have been a string literal.
    • Infer the output of lag, lead and nth_value to be nullable.
    Open source →
  14. 0.41.1 13 Jul 2025
    Release notes
    • Support new features introduced in SQLite version 3.50.0.
    Open source →
  15. 0.41.0 21 Jan 2025
    Release notes
    • Replace ColonNamedVariable with NamedVariable for all named variables.
    • Analysis support for SQLite 3.48.
    • Fix nullability analysis around fts5 tables (enabled when raising the version to 3.48 to preserve backwards-compatibility).
    Open source →
  16. 0.40.0 28 Nov 2024
    Release notes
    • Add support for the dbstat module.
    • Prioritize null propagation in type resolver, leading to more accurate analysis on which columns are nullable.
    Open source →
  17. 0.39.2 24 Oct 2024
    Release notes
    • Fix false-positive lint for a parameter count mismatch on bm25().
    • Fix type interference around fts5 function calls.
    Open source →
  18. 0.39.1 14 Oct 2024
    Release notes
    • Improve recovery in parser when encountering syntax errors.
    Open source →
  19. 0.39.0 22 Sep 2024
    Release notes
    • When using the parse methods on SqlEngine, tokenizer errors are now included in the result instead of throwing an exception.
    Open source →
  20. 0.38.1 10 Sep 2024
    Release notes
    • Fix upcoming unreachable_switch_default lint.
    Open source →
  21. 0.38.0 08 Sep 2024
    Release notes
    • Resolve json_extract return types from context if possible.
    • Warn when INSTEAD OF triggers are not used on views.
    • Represent writes to views in TableWrite.
    Open source →
  22. 0.37.1 19 Jul 2024
    Release notes
    • Refine nullability analysis for subquery expressions: Queries with aggregate invocations are no longer considered nullable (the aggregate invocation had to be a top-level expression before).
    Open source →
  23. 0.37.0 11 Jul 2024
    Release notes
    • Add support for sqlite 3.46.0.
    • Make columns coming from subquery expressions nullable.
    Open source →
  24. 0.36.0 04 May 2024
    Release notes
    • Add support for the geopoly module.
    Open source →
  25. 0.35.1 24 Apr 2024
    Release notes
    • Fix IN expressions accepting aliases, causing some queries to get parsed incorrectly.
    Open source →
  26. 0.35.0 20 Apr 2024
    Release notes
    • Fix parsing binary literals.
    • Expand support for IN expressions, they now support tuples on the left-hand side and the shorthand syntax for table references and table-valued functions.
    • Drift extensions: Allow custom class names for CREATE VIEW statements.
    • Drift extensions: Support the INT64 hint for CREATE TABLE statements.
    Open source →
  27. 0.34.1 24 Feb 2024
    Release notes
    • Allow selecting from virtual tables using the table-valued function syntax.
    Open source →
  28. 0.34.0 17 Jan 2024
    Release notes
    • Fix explicit NULL column constraints being dropped when converting nodes to SQL.
    • Add analysis errors for illegal unqualified references to old and new in triggers.
    • Analysis support for sqlite 3.45 and jsonb functions.
    Open source →
  29. 0.33.0 04 Dec 2023
    Release notes
    Open source →
  30. 0.32.1 29 Oct 2023
    Release notes
    • Treat the result of sum() as nullable when inferring types.
    • Support features added in sqlite 3.44:
      • ORDER BY clauses as part of aggregate functions.
      • Support concat, concat_ws and string_agg.
    Open source →
  31. 0.32.0 20 Oct 2023
    Release notes
    • Turn ResolvedType.hints into a list, supporting multiple type hints.
    Open source →
  32. 0.31.3 27 Sep 2023
    Release notes
    • Fix star columns expanding to more columns than they should.
    Open source →
  33. 0.31.2 24 Sep 2023
    Release notes
    • Add CaseInsensitiveMap.of to wrap existing maps.
    Open source →
  34. 0.31.1 27 Aug 2023
    Release notes
    • Add the sqlite3_schema table to the builtin tables supported by every SqlEngine instance.
    • Support the timediff and octet_length functions from sqlite 3.43.0.
    Open source →
  35. 0.31.0 11 Aug 2023
    Release notes
    • Add SqlEngine.parseMultiple to parse multiple statements into one AST.
    Open source →
  36. 0.30.3 20 Jun 2023
    Release notes
    • Fix WITH clauses not being resolved for compound select statements.
    Open source →
  37. 0.30.2 08 Jun 2023
    Release notes
    • Fix false-positive "unknown table" errors when the same table is used in a join with and then without an alias.
    Open source →
  38. 0.30.1 01 Jun 2023
    Release notes
    • Report syntax error for WITH clauses in triggers.
    Open source →
  39. 0.30.0 15 May 2023
    Release notes
    • Add previous and next fields for tokens
    Open source →
  40. 0.29.0 10 May 2023
    Release notes
    • Parser support for constructor names in WITH drift syntax.
    • Support resolving IIF functions.
    • Fix a crash when a CTE is used on an insert, update or delete statement.
    • Fix wrong column names being reported for references in subqueries and CTEs.
    Open source →
  41. 0.28.1 10 Apr 2023
    Release notes
    • Fix false-positive warnings about AS aliases in subqueries used in triggers.
    Open source →
  42. 0.28.0 20 Mar 2023
    Release notes
    • Support the unhex function added in sqlite 3.41.0
    • Support custom keyword sets when formatting SQL.
    Open source →
  43. 0.27.0 29 Jan 2023
    Release notes
    • Add mappedBy to ExpressionResultColumn when parsing in drift mode.
    Open source →
  44. 0.26.1 21 Jan 2023
    Release notes
    • Fix missing space when formatting aggregate functions.
    Open source →
  45. 0.26.0 03 Jan 2023
    Release notes
    • Remove token parameter from constructor in Literal subclasses and NumberedVariable.
    Open source →
  46. 0.25.0 29 Dec 2022
    Release notes
    • Better analysis support for ANY columns in STRICT tables.
    • Assign resolved schema columns to synctactical ResultColumn in queries.
    Open source →
  47. 0.24.0 27 Nov 2022
    Release notes
    • Make Fts5Table constructor public.
    Open source →
  48. 0.23.3 06 Oct 2022
    Release notes
    • Analysis support for the spellfix extension.
    Open source →
  49. 0.23.2 29 Aug 2022
    Release notes
    • Support resolving the fts5vocab module when fts5 is enabled - thanks to @FaFre.
    • Support the rtree extension - also thanks to @FaFre!
    • Improve references resolving across subqueries.
    Open source →
  50. 0.23.1 21 Aug 2022
    Release notes
    • Gracefully handle tokenizer errors related to @ or $ variables.
    Open source →
  51. 0.23.0 14 Aug 2022
    Release notes
    • Apply type hints for date times on textual datetime functions as well.
    Open source →
  52. 0.22.0 07 Jun 2022
    Release notes
    • Refactor how tables and columns are resolved internally.
    • Lint for DISTINCT misuse in aggregate function calls.
    • Support the RIGHT and FULL join operators added in sqlite 3.39.0.
    • Support IS DISTINCT FROM and IS NOT DISTINCT FROM syntax added in sqlite 3.39.0.
    • Fix type inference for SUM() calls around int "subtypes" (like booleans).
    Open source →
  53. 0.21.0 13 Mar 2022
    Release notes
    • Analysis support for new features in sqlite version 3.38.
    • Replace internal moor references with drift references.
    Open source →
  54. 0.20.1 21 Feb 2022
    Release notes
    • Fix SQL generation for upsert statements with a conflict target.
    Open source →
  55. 0.20.0 09 Feb 2022
    Release notes
    • Support LIST columns for a drift-specific feature.
    Open source →
  56. 0.19.2 25 Jan 2022
    Release notes
    • Improve handling of drift-specific column types in STRICT tables.
    Open source →
  57. 0.19.1 30 Dec 2021
    Release notes
    • Make the result of group_concat nullable.
    Open source →
  58. 0.19.0 11 Dec 2021
    Release notes
    • Support generated columns.
    • Support features introduced in sqlite version 3.37, most notably STRICT tables.
    Open source →
  59. 0.18.1 02 Dec 2021
    Release notes
    • Fix the AST comparator missing errors for different amount of children.
    Open source →
  60. 0.18.0 11 Oct 2021
    Release notes
    • Fix unecessary errors around fts5 tables
    • Merge all moor-specific nodes into a single visitMoorSpecific visitor method
    • Parse BEGIN and COMMIT statements
    • Improve type inference around RETURNING clauses.
    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive