FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

sqlite: disable DQS misfeature by default by tniessen · Pull Request #55297 · nodejs/node · GitHub

/ node Public

sqlite: disable DQS misfeature by default - #55297

Merged
nodejs-github-bot merged 1 commit into
nodejs:mainfrom
tniessen:sqlite-dqs
Oct 8, 2024
Merged

sqlite: disable DQS misfeature by default#55297
nodejs-github-bot merged 1 commit into
nodejs:mainfrom
tniessen:sqlite-dqs

Conversation

tniessen commented Oct 6, 2024

Copy link
Copy Markdown
Member

Double-quoted string (DQS) literals are not allowed by the SQL standard, which defines that text enclosed in double quotes is to be interpreted as an identifier only and never as a string literal. Nevertheless, for historical reasons, SQLite allows double-quoted string literals in some cases, which leads to inconsistent behavior and subtle bugs.

This commit changes the behavior of the built-in Node.js API for SQLite such that the DQS misfeature is disabled by default. This is recommended by the developers of SQLite. Users can explicitly enable DQS for compatibility with legacy database schemas if necessary.

Double-quoted string (DQS) literals are not allowed by the SQL standard,
which defines that text enclosed in double quotes is to be interpreted
as an identifier only and never as a string literal. Nevertheless, for
historical reasons, SQLite allows double-quoted string literals in some
cases, which leads to inconsistent behavior and subtle bugs.

This commit changes the behavior of the built-in Node.js API for SQLite
such that the DQS misfeature is disabled by default. This is recommended
by the developers of SQLite. Users can explicitly enable DQS for
compatibility with legacy database schemas if necessary.
tniessen added experimental Issues and PRs related to experimental features. sqlite Issues and PRs related to the SQLite subsystem. labels Oct 6, 2024
tniessen requested a review from cjihrig October 6, 2024 19:49
nodejs-github-bot added c++ Issues and PRs that require attention from people who are familiar with C++. needs-ci PRs that need a full CI run. labels Oct 6, 2024
tniessen added author ready PRs that have at least one approval, no outstanding review comments, and a CI started. request-ci Add this label to start a Jenkins CI on a PR. labels Oct 6, 2024

codecov Bot commented Oct 6, 2024
edited
Loading

Copy link
Copy Markdown

Codecov Report

Attention: Patch coverage is 85.18519% with 4 lines in your changes missing coverage. Please review.

Project coverage is 88.42%. Comparing base (90e3e5e) to head (00925ee).
Report is 279 commits behind head on main.

Files with missing lines Patch % Lines
src/node_sqlite.cc 85.18% 1 Missing and 3 partials ⚠️
Additional details and impacted files
@@           Coverage Diff           @@
##             main   #55297   +/-   ##
=======================================
  Coverage   88.41%   88.42%           
=======================================
  Files         652      652           
  Lines      186793   186818   +25     
  Branches    36100    36108    +8     
=======================================
+ Hits       165161   165190   +29     
+ Misses      14895    14894    -1     
+ Partials     6737     6734    -3     
Files with missing lines Coverage Δ
src/node_sqlite.h 0.00% <ø> (ø)
src/node_sqlite.cc 83.51% <85.18%> (+0.02%) ⬆️

... and 31 files with indirect coverage changes

github-actions Bot removed the request-ci Add this label to start a Jenkins CI on a PR. label Oct 6, 2024

Copy link
Copy Markdown
Collaborator

Copy link
Copy Markdown
Collaborator

tniessen added the commit-queue Add this label to land a pull request using GitHub Actions. label Oct 8, 2024
nodejs-github-bot removed the commit-queue Add this label to land a pull request using GitHub Actions. label Oct 8, 2024
nodejs-github-bot merged commit 09d10b5 into nodejs:main Oct 8, 2024

Copy link
Copy Markdown
Collaborator

Landed in 09d10b5

aduh95 pushed a commit that referenced this pull request Oct 9, 2024
Double-quoted string (DQS) literals are not allowed by the SQL standard,
which defines that text enclosed in double quotes is to be interpreted
as an identifier only and never as a string literal. Nevertheless, for
historical reasons, SQLite allows double-quoted string literals in some
cases, which leads to inconsistent behavior and subtle bugs.

This commit changes the behavior of the built-in Node.js API for SQLite
such that the DQS misfeature is disabled by default. This is recommended
by the developers of SQLite. Users can explicitly enable DQS for
compatibility with legacy database schemas if necessary.

PR-URL: #55297
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Chemi Atlow <chemi@atlow.co.il>
Reviewed-By: Jake Yuesong Li <jake.yuesong@gmail.com>
aduh95 mentioned this pull request Oct 9, 2024
aduh95 pushed a commit that referenced this pull request Oct 9, 2024
Double-quoted string (DQS) literals are not allowed by the SQL standard,
which defines that text enclosed in double quotes is to be interpreted
as an identifier only and never as a string literal. Nevertheless, for
historical reasons, SQLite allows double-quoted string literals in some
cases, which leads to inconsistent behavior and subtle bugs.

This commit changes the behavior of the built-in Node.js API for SQLite
such that the DQS misfeature is disabled by default. This is recommended
by the developers of SQLite. Users can explicitly enable DQS for
compatibility with legacy database schemas if necessary.

PR-URL: #55297
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Chemi Atlow <chemi@atlow.co.il>
Reviewed-By: Jake Yuesong Li <jake.yuesong@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

author ready PRs that have at least one approval, no outstanding review comments, and a CI started. c++ Issues and PRs that require attention from people who are familiar with C++. experimental Issues and PRs related to experimental features. needs-ci PRs that need a full CI run. sqlite Issues and PRs related to the SQLite subsystem.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants


Back | FazBrowse Home | New Git URL