D
Overall Health

sequelize/sequelize


https://github.com/sequelize/sequelize
2026-04-19 00:15:18
C
Dead code
20% orphan symbols (145/714)
F
Circular deps
29 cycles detected
C
Coupling
max fan-in: 22 (packages/core/src/expression-builders/base-sql-expression.ts)
F
Security
7 concerns found

Overview

  • 784 files indexed
  • 3241 code symbols extracted
  • 28861 symbol references tracked
  • 0 active memories (0 core, 0 stale)
  • Languages: typescript (546), javascript (238)

God Nodes (most-referenced symbols)

These are the symbols your codebase depends on most. Changes here have the largest blast radius.

  • expectsql — 482 references
  • validate — 173 references
  • sql — 166 references
  • build — 165 references
  • quoteIdentifier — 164 references
  • Attribute — 159 references
  • count — 113 references
  • update — 106 references
  • getTestDialectTeaser — 91 references
  • getTestDialect — 91 references

Hub Files (highest PageRank)

Core architectural files — imported by many others.

  • packages/core/test/support.ts (1.00)
  • packages/core/test/config/config.ts (0.86)
  • packages/core/test/integration/support.ts (0.51)
  • packages/core/test/types/models/user.ts (0.16)
  • packages/core/test/types/connection.ts (0.12)
  • packages/core/src/utils/deprecations.ts (0.09)
  • packages/core/src/expression-builders/base-sql-expression.ts (0.08)
  • packages/core/src/errors/base-error.ts (0.08)
  • packages/utils/src/common/_internal/build-predicate-function.ts (0.06)
  • packages/core/test/types/models/user-group.ts (0.05)

Orphans (potential dead code)

Named functions with zero detected references. Could be dead code, public API exports, or referenced dynamically.

  • getComplexSizepackages/core/src/utils/where.ts:21
  • resolveDialectClasspackages/cli/src/_internal/config.ts:23
  • Unquotepackages/core/src/expression-builders/dialect-aware-fn.ts:87
  • addAllIncludespackages/core/src/model.js:529
  • recursiveBulkCreatepackages/core/src/model.js:2298
  • setKeyspackages/core/src/model.js:3606
  • combineWheresWithAndpackages/core/src/model.js:4675
  • mergeDefaultspackages/core/src/utils/object.ts:27
  • flattenObjectpackages/core/src/utils/object.ts:136
  • removeNullishpackages/core/src/utils/object.ts:223

Coupling (high-PageRank files)

  • packages/core/test/support.ts (1.00)
  • packages/core/test/config/config.ts (0.86)
  • packages/core/test/integration/support.ts (0.51)
  • packages/core/test/types/models/user.ts (0.16)
  • packages/core/test/types/connection.ts (0.12)

Circular Dependencies (29 cycles)

  1. packages/core/src/abstract-dialect/data-types-utils.ts -> packages/core/src/abstract-dialect/data-types.ts -> packages/core/src/abstract-dialect/data-types-utils.ts
  2. packages/core/src/model-definition.ts -> packages/core/src/model-internals.ts -> packages/core/src/utils/model-utils.ts -> packages/core/src/model-definition.ts
  3. packages/core/src/model-definition.ts -> packages/core/src/utils/model-utils.ts -> packages/core/src/model-definition.ts
  4. packages/core/src/associations/helpers.ts -> packages/core/src/utils/model-utils.ts -> packages/core/src/model.js -> packages/core/src/associations/helpers.ts
  5. packages/core/src/associations/belongs-to.ts -> packages/core/src/utils/model-utils.ts -> packages/core/src/model.js -> packages/core/src/instance-validator.js -> packages/core/src/associations/belongs-to.ts
  6. packages/core/src/expression-builders/attribute.ts -> packages/core/src/utils/attribute-syntax.ts -> packages/core/src/expression-builders/attribute.ts
  7. packages/core/src/abstract-dialect/where-sql-builder.ts -> packages/core/src/expression-builders/attribute.ts -> packages/core/src/utils/attribute-syntax.ts -> packages/core/src/expression-builders/cast.ts -> packages/core/src/expression-builders/where.ts -> packages/core/src/abstract-dialect/where-sql-builder.ts
  8. packages/core/src/abstract-dialect/where-sql-builder.ts -> packages/core/src/expression-builders/where.ts -> packages/core/src/abstract-dialect/where-sql-builder.ts
  9. packages/core/src/abstract-dialect/where-sql-builder.ts -> packages/core/src/utils/model-utils.ts -> packages/core/src/model.js -> packages/core/src/instance-validator.js -> packages/core/src/associations/belongs-to.ts -> packages/core/src/associations/has-many.ts -> packages/core/src/expression-builders/fn.ts -> packages/core/src/expression-builders/where.ts -> packages/core/src/abstract-dialect/where-sql-builder.ts
  10. packages/core/src/associations/belongs-to.ts -> packages/core/src/associations/has-many.ts -> packages/core/src/utils/model-utils.ts -> packages/core/src/model.js -> packages/core/src/instance-validator.js -> packages/core/src/associations/belongs-to.ts
  11. packages/core/src/associations/belongs-to.ts -> packages/core/src/associations/has-many.ts -> packages/core/src/associations/belongs-to.ts
  12. packages/core/src/associations/belongs-to.ts -> packages/core/src/associations/has-one.ts -> packages/core/src/model.js -> packages/core/src/instance-validator.js -> packages/core/src/associations/belongs-to.ts
  13. packages/core/src/associations/belongs-to.ts -> packages/core/src/associations/has-one.ts -> packages/core/src/utils/model-utils.ts -> packages/core/src/model.js -> packages/core/src/instance-validator.js -> packages/core/src/associations/belongs-to.ts
  14. packages/core/src/associations/belongs-to.ts -> packages/core/src/associations/has-one.ts -> packages/core/src/associations/belongs-to.ts
  15. packages/core/src/decorators/shared/model.ts -> packages/core/src/model-typescript.ts -> packages/core/src/decorators/shared/model.ts
  16. packages/core/src/decorators/shared/model.ts -> packages/core/src/utils/model-utils.ts -> packages/core/src/model.js -> packages/core/src/model-typescript.ts -> packages/core/src/decorators/shared/model.ts
  17. packages/core/src/model-typescript.ts -> packages/core/src/model.js -> packages/core/src/model-typescript.ts
  18. packages/core/src/abstract-dialect/query-generator.js -> packages/core/src/associations/belongs-to-many.ts -> packages/core/src/utils/model-utils.ts -> packages/core/src/model.js -> packages/core/src/model-typescript.ts -> packages/core/src/sequelize.js -> packages/core/src/abstract-dialect/query-generator.js
  19. packages/core/src/abstract-dialect/query-generator.js -> packages/core/src/sequelize.js -> packages/core/src/abstract-dialect/query-generator.js
  20. packages/core/src/abstract-dialect/query-generator.js -> packages/core/src/utils/model-utils.ts -> packages/core/src/model.js -> packages/core/src/model-typescript.ts -> packages/core/src/sequelize.js -> packages/core/src/abstract-dialect/query-generator.js
  21. packages/core/src/abstract-dialect/query-generator-internal.ts -> packages/core/src/utils/model-utils.ts -> packages/core/src/model.js -> packages/core/src/model-typescript.ts -> packages/core/src/sequelize.js -> packages/core/src/abstract-dialect/query-generator.js -> packages/core/src/abstract-dialect/query-generator-internal.ts
  22. packages/core/src/abstract-dialect/query-generator-typescript.ts -> packages/core/src/utils/model-utils.ts -> packages/core/src/model.js -> packages/core/src/model-typescript.ts -> packages/core/src/sequelize.js -> packages/core/src/abstract-dialect/query-generator.js -> packages/core/src/abstract-dialect/query-generator-typescript.ts
  23. packages/core/src/import-models.ts -> packages/core/src/utils/model-utils.ts -> packages/core/src/model.js -> packages/core/src/model-typescript.ts -> packages/core/src/sequelize.js -> packages/core/src/import-models.ts
  24. packages/core/src/model-typescript.ts -> packages/core/src/sequelize.js -> packages/core/src/model.js -> packages/core/src/model-typescript.ts
  25. packages/core/src/decorators/legacy/associations.ts -> packages/core/src/utils/model-utils.ts -> packages/core/src/model.js -> packages/core/src/model-typescript.ts -> packages/core/src/sequelize.js -> packages/core/src/sequelize-typescript.ts -> packages/core/src/decorators/legacy/associations.ts
  26. packages/core/src/sequelize-typescript.ts -> packages/core/src/sequelize.js -> packages/core/src/sequelize-typescript.ts
  27. packages/core/src/model-typescript.ts -> packages/core/src/sequelize.js -> packages/core/src/utils/model-utils.ts -> packages/core/src/model.js -> packages/core/src/model-typescript.ts
  28. packages/core/src/model.js -> packages/core/src/utils/model-utils.ts -> packages/core/src/model.js
  29. packages/postgres/src/internal/data-types-overrides.ts -> packages/postgres/src/query-generator.js -> packages/postgres/src/internal/data-types-overrides.ts

Security Issues (7 found)

High (7)

  • SQL injection (template literal)packages/core/src/sequelize.js:611
  • await this.query(SELECT 1+1 AS result${fromClause}, options);
  • SQL injection (template literal)packages/postgres/src/query-generator.js:146
  • attrSql += query(${this.quoteIdentifier(attributeName)} SET NOT NULL);
  • SQL injection (template literal)packages/postgres/src/query-generator.js:150
  • attrSql += query(${this.quoteIdentifier(attributeName)} DROP NOT NULL);
  • SQL injection (template literal)packages/postgres/src/query-generator.js:160
  • attrSql += query(${this.quoteIdentifier(attributeName)} DROP DEFAULT);
  • SQL injection (template literal)packages/postgres/src/query-generator.js:174
  • attrSql += query(ADD UNIQUE (${this.quoteIdentifier(attributeName)})).replace(
  • SQL injection (template literal)packages/postgres/src/query-generator.js:186
  • attrSql += query(${this.quoteIdentifier(attributeName)} TYPE ${definition});
  • SQL injection (template literal)packages/mysql/src/connection-manager.ts:131
  • await promisify(cb => connection.query(SET time_zone = '${tzOffset}', cb))();

Suggested Next Steps

  • Before refactoring expectsql, run sverklo_impact to see the 482 call sites
  • packages/core/test/support.ts is your most-imported file — changes here cascade widely
  • 15+ potential orphans detected — audit for dead code