Official support for PostgreSQL, MySQL, SQLite, and SQL Server#2
Conversation
Closes real per-dialect parsing gaps so the four major engines are covered without introducing a dialect concept in the public API — the parser stays permissive and recognizes each syntax by shape: - SQL Server named parameters (@id, @p1) typed alongside $n and ?. - MySQL backtick-quoted identifiers (`` `col` ``) — a prior limitation note claiming this was impossible was wrong; TS allows escaping a backtick inside a template literal type. - SQL Server TOP N [PERCENT] clause, including TOP (n). - SQL Server OUTPUT clause (the RETURNING equivalent) for INSERT/UPDATE/ DELETE, with inserted./deleted. pseudo-table columns resolved correctly. - README: driver recipe for mssql, a database-support feature matrix, and updated limitations. New per-dialect regression suites under tests/. Also bumps the package version to 0.1.3.
|
Warning Review limit reached
Next review available in: 44 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (9)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Summary
Closes real per-dialect parsing gaps so all four major engines are officially covered — no dialect flag added to the API, the parser stays permissive and recognizes each syntax by shape:
@id,@p1) typed alongside$nand?.`col`) — a previous limitation note claiming this was impossible was wrong; TypeScript allows escaping a backtick inside a template literal type, so it's fully supported now.TOP N [PERCENT]clause, includingTOP (n).OUTPUTclause (theRETURNINGequivalent) forINSERT/UPDATE/DELETE, withinserted./deleted.pseudo-table columns resolved correctly against the statement's table.mssql, a database-support feature matrix, and updated limitations.0.1.3.Test plan
npm run test:types(full type-test suite)npm run test:runtime(vitest, 8 tests)tests/dialect-postgres.test-d.ts,tests/dialect-mysql.test-d.ts,tests/dialect-sqlite.test-d.ts,tests/dialect-mssql.test-d.tsRETURNING/params/join suites still pass unchanged