Repository Analysis

knex/knex

A query builder for PostgreSQL, MySQL, CockroachDB, SQL Server, SQLite3 and Oracle, designed to be flexible, portable, and fun to use.

3.6 Likely human-written View on GitHub
3.6
Adjusted Score
3.6
Raw Score
100%
Time Factor
2026-05-04
Last Push
20,286
Stars
JavaScript
Language
120,466
Lines of Code
468
Files
398
Pattern Hits
2026-05-31
Scan Date

Score History

Severity Breakdown

CRITICAL 10HIGH 0MEDIUM 2LOW 386

Pattern Findings

398 matches across 5 categories. Click a row to expand file-level details.

Fake / Example Data356 hits · 297 pts
SeverityFileLineSnippet
LOWtest/integration2/schema/misc.spec.js882 table.text('paragraph').defaultTo('Lorem ipsum Qui quis qui in.');
LOWtest/integration2/schema/misc.spec.js895 'create table "test_table_three" ("main" integer not null, "paragraph" text default \'Lorem ipsum Qui
LOWtest/integration2/schema/misc.spec.js899 'create table "test_table_three" ("main" integer not null, "paragraph" varchar(max) default \'Lorem ipsu
LOWtest/integration2/schema/misc.spec.js903 "create table `test_table_three` (`main` integer not null, `paragraph` text default 'Lorem ipsum Qui qui
LOWtest/integration2/schema/misc.spec.js906 'create table "test_table_three" ("main" integer not null, "paragraph" clob default \'Lorem ipsum Qui qu
LOWtest/integration2/schema/misc.spec.js910 "CREATE TABLE [test_table_three] ([main] int not null, [paragraph] nvarchar(max) CONSTRAINT [test_table_
LOWtest/integration2/schema/misc.spec.js925 expect(result.paragraph).to.eql('Lorem ipsum Qui quis qui in.');
LOWtest/integration2/query/misc/additional.spec.js316 .insert({ balance_foo: 123, email_foo: 'foo@bar.com' })
LOWtest/integration2/query/misc/additional.spec.js319 expect(res).to.eql([{ balance_foo: 123, email_foo: 'foo@bar.com' }]);
LOWtest/integration2/query/insert/inserts.spec.js999 'Lorem ipsum Minim nostrud Excepteur consectetur enim ut qui sint in veniam in nulla anim do cillum sunt
LOWtest/integration2/query/insert/inserts.spec.js1009 'Lorem ipsum Minim nostrud Excepteur consectetur enim ut qui sint in veniam in nulla anim do cillum sunt
LOWtest/integration2/query/insert/inserts.spec.js1016 'Lorem ipsum Minim nostrud Excepteur consectetur enim ut qui sint in veniam in nulla anim do cillum
LOWtest/integration2/query/insert/inserts.spec.js1025 'Lorem ipsum Minim nostrud Excepteur consectetur enim ut qui sint in veniam in nulla anim do cillum sunt
LOWtest/integration2/query/insert/inserts.spec.js1035 'Lorem ipsum Minim nostrud Excepteur consectetur enim ut qui sint in veniam in nulla anim do cillum sunt
LOWtest/integration2/query/insert/inserts.spec.js1042 'Lorem ipsum Minim nostrud Excepteur consectetur enim ut qui sint in veniam in nulla anim do cillum
LOWtest/integration2/query/insert/inserts.spec.js1051 'Lorem ipsum Minim nostrud Excepteur consectetur enim ut qui sint in veniam in nulla anim do cillum sunt
LOWtest/integration2/query/insert/inserts.spec.js1064 'Lorem ipsum Minim nostrud Excepteur consectetur enim ut qui sint in veniam in nulla anim do cillum
LOWtest/integration2/query/insert/inserts.spec.js1073 'Lorem ipsum Minim nostrud Excepteur consectetur enim ut qui sint in veniam in nulla anim do cillum sunt
LOWtest/integration2/query/insert/inserts.spec.js1080 'Lorem ipsum Minim nostrud Excepteur consectetur enim ut qui sint in veniam in nulla anim do cillum
LOWtest/integration2/query/insert/inserts.spec.js1117 'Lorem ipsum Minim nostrud Excepteur consectetur enim ut qui sint in veniam in nulla anim do cillum sunt
LOWtest/integration2/query/insert/inserts.spec.js1125 'Lorem ipsum Minim nostrud Excepteur consectetur enim ut qui sint in veniam in nulla anim do cillum
LOWtest/integration2/query/insert/inserts.spec.js1135 'Lorem ipsum Minim nostrud Excepteur consectetur enim ut qui sint in veniam in nulla anim do cillum sunt
LOWtest/integration2/query/insert/inserts.spec.js1146 'Lorem ipsum Minim nostrud Excepteur consectetur enim ut qui sint in veniam in nulla anim do cillum
LOWtest/integration2/query/insert/inserts.spec.js1156 'Lorem ipsum Minim nostrud Excepteur consectetur enim ut qui sint in veniam in nulla anim do cillum sunt
LOWtest/integration2/query/insert/inserts.spec.js1164 'Lorem ipsum Minim nostrud Excepteur consectetur enim ut qui sint in veniam in nulla anim do cillum
LOWtest/integration2/query/insert/inserts.spec.js71 about: 'Lorem ipsum Dolore labore incididunt enim.',
LOWtest/integration2/query/insert/inserts.spec.js82 'Lorem ipsum Dolore labore incididunt enim.',
LOWtest/integration2/query/insert/inserts.spec.js96 'Lorem ipsum Dolore labore incididunt enim.',
LOWtest/integration2/query/insert/inserts.spec.js110 'Lorem ipsum Dolore labore incididunt enim.',
LOWtest/integration2/query/insert/inserts.spec.js124 'Lorem ipsum Dolore labore incididunt enim.',
LOWtest/integration2/query/insert/inserts.spec.js138 'Lorem ipsum Dolore labore incididunt enim.',
LOWtest/integration2/query/insert/inserts.spec.js155 'Lorem ipsum Dolore labore incididunt enim.',
LOWtest/integration2/query/insert/inserts.spec.js177 about: 'Lorem ipsum Dolore labore incididunt enim.',
LOWtest/integration2/query/insert/inserts.spec.js185 about: 'Lorem ipsum Dolore labore incididunt enim.',
LOWtest/integration2/query/insert/inserts.spec.js198 'Lorem ipsum Dolore labore incididunt enim.',
LOWtest/integration2/query/insert/inserts.spec.js205 'Lorem ipsum Dolore labore incididunt enim.',
LOWtest/integration2/query/insert/inserts.spec.js219 'Lorem ipsum Dolore labore incididunt enim.',
LOWtest/integration2/query/insert/inserts.spec.js226 'Lorem ipsum Dolore labore incididunt enim.',
LOWtest/integration2/query/insert/inserts.spec.js240 'Lorem ipsum Dolore labore incididunt enim.',
LOWtest/integration2/query/insert/inserts.spec.js247 'Lorem ipsum Dolore labore incididunt enim.',
LOWtest/integration2/query/insert/inserts.spec.js261 'Lorem ipsum Dolore labore incididunt enim.',
LOWtest/integration2/query/insert/inserts.spec.js268 'Lorem ipsum Dolore labore incididunt enim.',
LOWtest/integration2/query/insert/inserts.spec.js282 'Lorem ipsum Dolore labore incididunt enim.',
LOWtest/integration2/query/insert/inserts.spec.js292 'Lorem ipsum Dolore labore incididunt enim.',
LOWtest/integration2/query/insert/inserts.spec.js309 'Lorem ipsum Dolore labore incididunt enim.',
LOWtest/integration2/query/insert/inserts.spec.js316 'Lorem ipsum Dolore labore incididunt enim.',
LOWtest/integration2/query/insert/inserts.spec.js336 'Lorem ipsum Minim nostrud Excepteur consectetur enim ut qui sint in veniam in nulla anim do cillum su
LOWtest/integration2/query/insert/inserts.spec.js342 'Lorem ipsum Minim nostrud Excepteur consectetur enim ut qui sint in veniam in nulla anim do cillum su
LOWtest/integration2/query/insert/inserts.spec.js359 'Lorem ipsum Minim nostrud Excepteur consectetur enim ut qui sint in veniam in nulla anim do cillum sunt
LOWtest/integration2/query/insert/inserts.spec.js365 'Lorem ipsum Minim nostrud Excepteur consectetur enim ut qui sint in veniam in nulla anim do cillum sunt
LOWtest/integration2/query/insert/inserts.spec.js394 about: 'Lorem ipsum Dolore labore incididunt enim.',
LOWtest/integration2/query/insert/inserts.spec.js401 about: 'Lorem ipsum Dolore labore incididunt enim.',
LOWtest/integration2/query/insert/inserts.spec.js416 'Lorem ipsum Dolore labore incididunt enim.',
LOWtest/integration2/query/insert/inserts.spec.js423 'Lorem ipsum Dolore labore incididunt enim.',
LOWtest/integration2/query/insert/inserts.spec.js437 'Lorem ipsum Dolore labore incididunt enim.',
LOWtest/integration2/query/insert/inserts.spec.js444 'Lorem ipsum Dolore labore incididunt enim.',
LOWtest/integration2/query/insert/inserts.spec.js458 'Lorem ipsum Dolore labore incididunt enim.',
LOWtest/integration2/query/insert/inserts.spec.js465 'Lorem ipsum Dolore labore incididunt enim.',
LOWtest/integration2/query/insert/inserts.spec.js479 'Lorem ipsum Dolore labore incididunt enim.',
LOWtest/integration2/query/insert/inserts.spec.js486 'Lorem ipsum Dolore labore incididunt enim.',
296 more matches not shown…
Hallucination Indicators10 hits · 100 pts
SeverityFileLineSnippet
CRITICALtest/integration2/dialects/sqlite.spec.js50 ).to.eventually.be.fulfilled.and.deep.equal([{ 1: 1 }]);
CRITICALtest/integration2/dialects/sqlite.spec.js65 ).to.eventually.be.fulfilled.and.deep.equal([
CRITICALtest/integration2/dialects/sqlite.spec.js259 ).to.eventually.be.fulfilled.and.deep.equal([{ 1: 1 }]);
CRITICALtest/integration2/query/misc/additional.spec.js1161 await expect(promise).to.eventually.be.rejected.and.to.deep.include(
CRITICALtest/integration2/query/misc/additional.spec.js1248 ).to.be.eventually.rejected.and.deep.include({
CRITICALtest/integration2/query/misc/additional.spec.js1270 ).to.be.eventually.rejected.and.deep.include({
CRITICALtest/integration2/query/select/selects.spec.js267 ).to.eventually.be.fulfilled.and.to.have.lengthOf(2);
CRITICALtest/integration2/query/select/selects.spec.js270 ).to.eventually.be.rejected.and.to.deep.include(
CRITICALtest/cli/migrate-disable-transactions.spec.js57 ).to.eventually.be.fulfilled.and.deep.equal([{ id: 1 }]);
CRITICALtest/cli/migrate-disable-transactions.spec.js106 ).to.eventually.be.fulfilled.and.deep.equal([{ id: 1 }]);
Over-Commented Block15 hits · 15 pts
SeverityFileLineSnippet
LOWtypes/result.d.ts1// This empty interface serves as a placeholder which userland code can augment to
LOWtypes/result.d.ts21 // But the effective defaults are documented below:
LOWtypes/tables.d.ts1// Placeholder interface for Table -> Record mapping
LOWtypes/index.d.ts101 // If it remains unknown at the point of resolution, the selection will fall back to any
LOWtest/integration2/migrate/migration-integration.spec.js341 }
LOWtest/tape/pool.js141 Array.from(Array(30)).map(() => {
LOWtest-tsd/types.test-d.ts41const knexInstance = knexDefault(clientConfig);
LOWdocs/src/guide/index.md621 updated_at: string;
LOWdocs/src/guide/index.md641 // if interface is `{ a: string, b: string }`,
LOWscripts/build-for-release.sh1#!/bin/bash -e
LOWscripts/revert-release-to-draft.sh1#!/bin/bash
LOW.github/workflows/release.yml261 # bytes attested are exactly the bytes uploaded. provenance binds
LOW.github/workflows/release-drafter.yml81 fi
LOWlib/knex-builder/make-knex.js241 // Allow chaining methods from the root object, before
LOWlib/query/querycompiler.js81 // For example, if a "having" clause is defined but we're executing a "delete" query, that
Hyper-Verbose Identifiers15 hits · 15 pts
SeverityFileLineSnippet
LOWtest/unit/knex.js412 before(function skipSuiteIfSqliteConfigAbsent() {
LOWtest/unit/knex.js686 before(function skipSuiteIfSqliteConfigAbsent() {
LOWtest/util/tableCreatorHelper.js88async function createParentAndChildTables(knex) {
LOWtest/integration/connection-config-provider.js87 async function runTwoConcurrentTransactions(expectedInvocationCount) {
LOWtest/integration/execution/transaction.js478 function expectQueryEventToHaveBeenTriggered() {
LOWtest/integration/execution/transaction.js598 function captureAndRethrowOriginalError(err) {
LOWbin/utils/cli-config-utils.js107function checkConfigurationOptions(env, opts) {
LOWdocs/.vitepress/knexDialects.ts342function renderMissingSnippetGroup(
LOWdocs/scripts/snippet-utils.d.ts11export function instrumentMarkedStatements(
LOWlib/builder-interface-augmenter.js7function augmentWithBuilderInterface(Target) {
LOWlib/util/helpers.js78function resolveClientNameWithAliases(clientName) {
LOWlib/execution/internal/ensure-connection-callback.js16function ensureConnectionStreamCallback(runner, params) {
LOWlib/dialects/oracle/schema/internal/incrementUtils.js4function createAutoIncrementTriggerAndSequence(columnCompiler) {
LOWlib/dialects/sqlite3/schema/internal/compiler.js120function referencesColumnConstraint(ast, wrap) {
LOWlib/dialects/sqlite3/schema/internal/parser.js244function referencesColumnConstraint(ctx) {
AI Slop Vocabulary2 hits · 6 pts
SeverityFileLineSnippet
MEDIUMdocs/.vitepress/theme/AlgoliaSearchBox.vue129 // behavior to leverage the Router loading feature
MEDIUMlib/knex-builder/make-knex.js14// into it. In other words: you can't leverage Prototype Inheritance