A SQL database in Rust: SQLite-compatible, now also speaking Postgres (experimental). The LLVM of databases.
This report summarizes scanner evidence for tursodatabase/turso, a Rust project with 25,104 GitHub stars. SynthScan examined 1,081,589 lines of code across 2210 source files, recording 2364 pattern matches distributed across 22 syntactic categories. The legacy adjusted pattern signal is 2.9 (Low pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Payload schema: 1.0.0 · Engine: 2.0.0 · Scoring: heuristic-density-v1 · Scan date: 2026-10-31.
Can maintainers explain intent, assumptions, and trade-offs? 1657 finding(s).
Are imports declared and package/API names verified? 234 finding(s).
Are wrappers, guards, and repeated structures necessary? 746 finding(s).
Which changes need focused human review? 2364 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 2364 distinct pattern matches across 22 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | sql_generation/generation/mod.rs | 41 | /// ArbitraryFrom trait for generating random values from a given value | COMMENT |
| LOW | sql_generation/generation/expr.rs | 121 | // base: Option::arbitrary_from(rng, t), | COMMENT |
| LOW | sql_generation/generation/expr.rs | 141 | // Box::new(|rng| { | COMMENT |
| LOW | sql_generation/generation/expr.rs | 161 | // let table_idx = pick_index(t.tables.len(), rng); | COMMENT |
| LOW | sql_generation/generation/opts.rs | 21 | #[serde(deny_unknown_fields, default)] | COMMENT |
| LOW | sql_generation/generation/predicate/unary.rs | 141 | num_retries, | COMMENT |
| LOW | sql_generation/generation/predicate/unary.rs | 201 | let column_index = rng.random_range(0..row.len()); | COMMENT |
| LOW | sql_generation/generation/predicate/unary.rs | 221 | // // True Value with negative is still True | COMMENT |
| LOW | tools/dbhash/src/encoder.rs | 1 | //! Value encoding for dbhash. | COMMENT |
| LOW | core/types.rs | 121 | } | COMMENT |
| LOW | core/types.rs | 2101 | /// | COMMENT |
| LOW | core/types.rs | 2121 | /// Creates a new payload iterator from a raw payload slice. | COMMENT |
| LOW | core/types.rs | 2841 | SeekOp::LE { eq_only: false } => std::cmp::Ordering::Less, | COMMENT |
| LOW | core/types.rs | 2861 | /// - Payload is at least 2 bytes (header size + first serial type) | COMMENT |
| LOW | core/types.rs | 2941 | } | COMMENT |
| LOW | core/types.rs | 2961 | /// | COMMENT |
| LOW | core/types.rs | 3061 | } | COMMENT |
| LOW | core/types.rs | 3081 | /// * `index_info` - Contains sort order information for each field | COMMENT |
| LOW | core/types.rs | 3801 | /// | COMMENT |
| LOW | core/types.rs | 5061 | header_length + size_of::<i8>() + size_of::<f64>() + text.len() | COMMENT |
| LOW | core/database.rs | 201 | #[derive(Clone, Debug, Default)] | COMMENT |
| LOW | core/database.rs | 461 | /// | COMMENT |
| LOW | core/database.rs | 621 | /// happens at process-level POSIX file advisory locks. | COMMENT |
| LOW | core/database.rs | 681 | _shared_page_cache: Arc<RwLock<PageCache>>, | COMMENT |
| LOW | core/database.rs | 1321 | /// set. | COMMENT |
| LOW | core/database.rs | 1981 | /// | COMMENT |
| LOW | core/database.rs | 2301 | // `Pager::allocate_page1` fsyncs page 1 to the main file | COMMENT |
| LOW | core/database.rs | 2541 | /// preparing waits for that writer at its own commit). `connect` pumps | COMMENT |
| LOW | core/database.rs | 3481 | /// Register an `InternalVirtualTable` into this database's catalog. The | COMMENT |
| LOW | core/statement.rs | 41 | /// behalf of the user. Root statements are the only statements that count | COMMENT |
| LOW | core/statement.rs | 81 | /// Returned by [`Statement::get_column_type_info`]. Surfaces the array depth | COMMENT |
| LOW | core/statement.rs | 101 | /// rather than fabricating a name — callers can fall through to their own | COMMENT |
| LOW | core/statement.rs | 121 | /// | COMMENT |
| LOW | core/statement.rs | 141 | /// Returned as part of [`ColumnTypeInfo`]. `#[non_exhaustive]` so that new | COMMENT |
| LOW | core/statement.rs | 181 | /// - `None`: use connection default | COMMENT |
| LOW | core/statement.rs | 681 | // enough because callers do not always reset on error before | COMMENT |
| LOW | core/statement.rs | 841 | } | COMMENT |
| LOW | core/statement.rs | 1201 | /// | COMMENT |
| LOW | core/error.rs | 61 | IoBackendUnavailable(String), | COMMENT |
| LOW | core/error.rs | 101 | #[error("Parse error: {0}")] | COMMENT |
| LOW | core/error.rs | 121 | #[error("Extension error: {0}")] | COMMENT |
| LOW | core/error.rs | 141 | /// commit transaction - SQL statements in progress"), but unlike `Busy` | COMMENT |
| LOW | core/error.rs | 161 | #[error("Transaction terminated")] | COMMENT |
| LOW | core/error.rs | 181 | #[error("Planning error: {0}")] | COMMENT |
| LOW | core/lib.rs | 201 | /// Database index for the temp database (always 1 in SQLite). | COMMENT |
| LOW | core/percentile.rs | 201 | let index = (p * (n - 1.0)).floor() as usize; | COMMENT |
| LOW | core/schema.rs | 261 | /// One way an operator runs when an operand has a custom type: `args[0] op | COMMENT |
| LOW | core/schema.rs | 281 | Value, | COMMENT |
| LOW | core/schema.rs | 301 | COMMENT | |
| LOW | core/schema.rs | 861 | /// backing table to reconstruct its descriptor (start / inc / min / | COMMENT |
| LOW | core/schema.rs | 961 | .get(..TURSO_INTERNAL_PREFIX.len()) | COMMENT |
| LOW | core/schema.rs | 981 | // | COMMENT |
| LOW | core/schema.rs | 3501 | Ok(()) | COMMENT |
| LOW | core/schema.rs | 3581 | /// `sqlite_schema`. | COMMENT |
| LOW | core/schema.rs | 3761 | // connection-local database id. Used when reparsing temp trigger | COMMENT |
| LOW | core/schema.rs | 5941 | pub plan: Box<Plan>, | COMMENT |
| LOW | core/schema.rs | 7201 | /// empty, the parent table's PRIMARY KEY columns. Always non-empty. | COMMENT |
| LOW | core/function.rs | 601 | ) | COMMENT |
| LOW | core/busy.rs | 1 | use crate::MonotonicInstant; | COMMENT |
| LOW | core/busy.rs | 41 | COMMENT | |
| 1114 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | core/storage/encryption.rs | 31 | /// ┌───────────────┐ ┌───────────────┐ | COMMENT |
| MEDIUM⚡ | core/storage/encryption.rs | 34 | /// │ (4048 bytes) │ ────────► │ Content │ | COMMENT |
| MEDIUM⚡ | core/storage/encryption.rs | 36 | /// ├───────────────┤ ├───────────────┤ | COMMENT |
| MEDIUM⚡ | core/storage/encryption.rs | 38 | /// │ (48 bytes) │ ├───────────────┤ | COMMENT |
| MEDIUM⚡ | core/storage/encryption.rs | 40 | /// └───────────────┘ └───────────────┘ | COMMENT |
| MEDIUM | core/storage/encryption.rs | 56 | /// ┌─────────┬───────┬────────┬──────────────────┐ | COMMENT |
| MEDIUM | core/storage/encryption.rs | 61 | /// └─────────┴───────┴────────┴──────────────────┘ | COMMENT |
| MEDIUM | core/vdbe/hash_table.rs | 4839 | // ── Grace hash join tests ────────────────────────────────────── | COMMENT |
| MEDIUM | core/mvcc/database/tests.rs | 11200 | // ─── GC helpers ─────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | core/mvcc/database/tests.rs | 11257 | // ─── GC unit tests ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | core/mvcc/database/tests.rs | 13830 | // ─── GC quickcheck property tests ──────────────────────────────────────── | COMMENT |
| MEDIUM | core/mvcc/database/tests.rs | 15385 | // ─── End-to-end GC + dual cursor tests ─────────────────────────────────── | COMMENT |
| MEDIUM⚡ | core/mvcc/persistent_storage/logical_log.rs | 19 | //! ┌─────────────────────────────────────────┐ | COMMENT |
| MEDIUM⚡ | core/mvcc/persistent_storage/logical_log.rs | 23 | //! ├─────────────────────────────────────────┤ | COMMENT |
| MEDIUM⚡ | core/mvcc/persistent_storage/logical_log.rs | 25 | //! ├─────────────────────────────────────────┤ | COMMENT |
| MEDIUM⚡ | core/mvcc/persistent_storage/logical_log.rs | 27 | //! ├─────────────────────────────────────────┤ | COMMENT |
| MEDIUM⚡ | core/mvcc/persistent_storage/logical_log.rs | 29 | //! └─────────────────────────────────────────┘ | COMMENT |
| MEDIUM⚡ | core/mvcc/persistent_storage/logical_log.rs | 35 | //! ┌─────────────────────────────────────────┐ | COMMENT |
| MEDIUM⚡ | core/mvcc/persistent_storage/logical_log.rs | 39 | //! ├─────────────────────────────────────────┤ | COMMENT |
| MEDIUM⚡ | core/mvcc/persistent_storage/logical_log.rs | 49 | //! ├─────────────────────────────────────────┤ | COMMENT |
| MEDIUM⚡ | core/mvcc/persistent_storage/logical_log.rs | 52 | //! └─────────────────────────────────────────┘ | COMMENT |
| MEDIUM⚡ | core/mvcc/persistent_storage/logical_log.rs | 166 | //! ┌──────────────┬──────────────────────────────┬───────────┐ | COMMENT |
| MEDIUM⚡ | core/mvcc/persistent_storage/logical_log.rs | 169 | //! └──────────────┴──────────────────────────────┴───────────┘ | COMMENT |
| MEDIUM⚡ | core/mvcc/persistent_storage/logical_log.rs | 172 | //! ┌──────────────┬──────────┬──────────┬──────────┬───────────┐ | COMMENT |
| MEDIUM⚡ | core/mvcc/persistent_storage/logical_log.rs | 175 | //! └──────────────┴──────────┴──────────┴──────────┴───────────┘ | COMMENT |
| MEDIUM⚡ | core/mvcc/persistent_storage/logical_log.rs | 178 | //! ┌───────────────────────────┬───────┐ | COMMENT |
| MEDIUM⚡ | core/mvcc/persistent_storage/logical_log.rs | 180 | //! └───────────────────────────┴───────┘ | COMMENT |
| MEDIUM⚡ | core/mvcc/persistent_storage/logical_log.rs | 185 | //! ┌────────┬────────────────────┬──────────┬────────────┬─────────────┐ | COMMENT |
| MEDIUM⚡ | core/mvcc/persistent_storage/logical_log.rs | 187 | //! └────────┴────────────────────┴──────────┴────────────┴─────────────┘ | COMMENT |
| MEDIUM⚡ | core/mvcc/persistent_storage/logical_log.rs | 198 | //! ┌──────┬──────┬────────────┬──────────┬──────┬────────────┬──────┬──────┬──────┬───────┐ | COMMENT |
| MEDIUM⚡ | core/mvcc/persistent_storage/logical_log.rs | 200 | //! └──────┴──────┴─────┼──────┴──────────┴──────┴──────┼─────┴──────┴──────┴──────┴───────┘ | COMMENT |
| MEDIUM⚡ | core/mvcc/persistent_storage/logical_log.rs | 207 | //! ┌──────┬──────┬──────┐ ┌──────┬──────┬──────┬──────┐ ┌──────┬──────┬──────┬──────┐ | COMMENT |
| MEDIUM⚡ | core/mvcc/persistent_storage/logical_log.rs | 209 | //! └──────┴──────┴──────┘ └──────┴──────┴──────┴──────┘ └──────┴──────┴──────┴──────┘ | COMMENT |
| MEDIUM⚡ | core/mvcc/persistent_storage/logical_log.rs | 218 | //! ┌───────────┬────┐ ┌───────────┬────┐ ┌───────────┬────┐ | COMMENT |
| MEDIUM⚡ | core/mvcc/persistent_storage/logical_log.rs | 221 | //! └───────────┴────┘ └───────────┴────┘ └───────────┴────┘ | COMMENT |
| MEDIUM | core/functions/printf.rs | 150 | // ── Coercion helpers ──────────────────────────────────────────── | COMMENT |
| MEDIUM | core/functions/printf.rs | 205 | // ── Formatting helpers ────────────────────────────────────────── | COMMENT |
| MEDIUM | core/functions/printf.rs | 454 | // ── Rounding (sqlite3.c:36968-36997) ────────────────────────── | COMMENT |
| MEDIUM | core/functions/printf.rs | 519 | // ── Integer part (sqlite3.c:32581-32588) ─────────────────────── | COMMENT |
| MEDIUM | core/functions/printf.rs | 539 | // ── Fractional part (sqlite3.c:32591-32602) ──────────────────── | COMMENT |
| MEDIUM | core/functions/printf.rs | 677 | // ── Per-specifier formatters ──────────────────────────────────── | COMMENT |
| MEDIUM | core/functions/printf.rs | 974 | // ── Exponential notation ────────────────────────────────── | COMMENT |
| MEDIUM | core/functions/printf.rs | 981 | // ── Fixed-point notation ────────────────────────────────── | COMMENT |
| MEDIUM | core/functions/printf.rs | 1259 | // ── Main entry point ──────────────────────────────────────────── | COMMENT |
| MEDIUM | core/functions/printf.rs | 1782 | // ── Bug fix regression tests ──────────────────────────────────── | COMMENT |
| MEDIUM | core/benches/struct_union_benchmark.rs | 75 | // ── SELECT one field: flat column vs struct field ──────────────────────── | COMMENT |
| MEDIUM | core/benches/struct_union_benchmark.rs | 124 | // ── SELECT two fields: flat columns vs struct fields ──────────────────── | COMMENT |
| MEDIUM | core/benches/struct_union_benchmark.rs | 171 | // ── WHERE filter: flat column vs struct field ─────────────────────────── | COMMENT |
| MEDIUM | core/benches/struct_union_benchmark.rs | 221 | // ── INSERT: flat row vs struct_pack row ───────────────────────────────── | COMMENT |
| MEDIUM | core/benches/struct_union_benchmark.rs | 280 | // ── Union extract vs flat column read ────────────────────────────────── | COMMENT |
| MEDIUM | core/benches/struct_union_benchmark.rs | 320 | // ── Union tag scan vs typeof() on flat column ────────────────────────── | COMMENT |
| MEDIUM | core/benches/struct_union_benchmark.rs | 367 | // ── criterion wiring ─────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …rverless/python/differential/test_encryption_header.py | 37 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …rverless/python/differential/test_encryption_header.py | 40 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …rverless/python/differential/test_encryption_header.py | 149 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | …rverless/python/differential/test_encryption_header.py | 151 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | serverless/python/differential/test_parity.py | 606 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | serverless/python/differential/test_parity.py | 609 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | serverless/python/differential/test_parity.py | 48 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | serverless/python/differential/test_parity.py | 50 | # --------------------------------------------------------------------------- | COMMENT |
| 118 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | serverless/python/differential/test_parity.py | 593 | except Exception: | CODE |
| LOW⚡ | serverless/python/differential/test_parity.py | 602 | except Exception: | CODE |
| LOW⚡ | serverless/python/differential/test_parity.py | 696 | except Exception: | CODE |
| LOW⚡ | serverless/python/differential/test_parity.py | 700 | except Exception: | CODE |
| LOW⚡ | serverless/python/differential/test_parity.py | 704 | except Exception: | CODE |
| LOW | serverless/python/differential/test_parity.py | 510 | except Exception: | CODE |
| LOW | serverless/python/differential/test_parity.py | 567 | except Exception as exc: | CODE |
| LOW | serverless/python/differential/test_parity.py | 792 | except Exception: | CODE |
| LOW | serverless/python/differential/test_parity.py | 834 | except Exception: | CODE |
| LOW | serverless/python/turso_serverless/session.py | 268 | except Exception: | CODE |
| LOW | serverless/python/turso_serverless/session.py | 339 | except Exception: | CODE |
| LOW | serverless/python/turso_serverless/connection.py | 319 | except Exception as e: | CODE |
| LOW | serverless/python/turso_serverless/connection.py | 393 | except Exception as primary_error: | CODE |
| LOW | testing/antithesis/multiprocess/anytime_validate.py | 8 | except Exception as e: | CODE |
| MEDIUM | testing/antithesis/multiprocess/anytime_validate.py | 9 | print(f"Error connecting to database: {e}") | CODE |
| LOW | testing/antithesis/multiprocess/finally_validate.py | 8 | except Exception as e: | CODE |
| MEDIUM | testing/antithesis/multiprocess/finally_validate.py | 9 | print(f"Error connecting to database: {e}") | CODE |
| LOW | …/antithesis/multiprocess/parallel_driver_checkpoint.py | 11 | except Exception as e: | CODE |
| MEDIUM | …/antithesis/multiprocess/parallel_driver_checkpoint.py | 12 | print(f"Error connecting to database: {e}") | CODE |
| LOW | …/antithesis/multiprocess/parallel_driver_checkpoint.py | 23 | except Exception as e: | CODE |
| LOW | …thesis/multiprocess/parallel_driver_integrity_check.py | 8 | except Exception as e: | CODE |
| MEDIUM | …thesis/multiprocess/parallel_driver_integrity_check.py | 9 | print(f"Error connecting to database: {e}") | CODE |
| LOW | testing/antithesis/multiprocess/parallel_driver_read.py | 16 | except Exception as e: | CODE |
| MEDIUM | testing/antithesis/multiprocess/parallel_driver_read.py | 17 | print(f"Error connecting to database: {e}") | CODE |
| LOW | testing/antithesis/multiprocess/parallel_driver_read.py | 33 | except Exception as e: | CODE |
| LOW | testing/antithesis/multiprocess/first_setup.py | 11 | except Exception as e: | CODE |
| MEDIUM | testing/antithesis/multiprocess/first_setup.py | 12 | print(f"Error connecting to database: {e}") | CODE |
| LOW | …sting/antithesis/multiprocess/parallel_driver_write.py | 9 | except Exception as e: | CODE |
| MEDIUM | …sting/antithesis/multiprocess/parallel_driver_write.py | 10 | print(f"Error connecting to database: {e}") | CODE |
| LOW | …sting/antithesis/multiprocess/parallel_driver_write.py | 32 | except Exception as e: | CODE |
| LOW | …sting/antithesis/multiprocess/parallel_driver_write.py | 36 | except Exception as rollback_error: | CODE |
| LOW | …sting/antithesis/stress-crash/helper_recovery_check.py | 34 | except Exception as e: | CODE |
| LOW | testing/antithesis/bank-test/anytime_validate.py | 8 | except Exception as e: | CODE |
| MEDIUM | testing/antithesis/bank-test/anytime_validate.py | 9 | print(f"Error connecting to database: {e}") | CODE |
| LOW | testing/antithesis/bank-test/finally_validate.py | 8 | except Exception as e: | CODE |
| MEDIUM | testing/antithesis/bank-test/finally_validate.py | 9 | print(f"Error connecting to database: {e}") | CODE |
| LOW | testing/antithesis/bank-test/eventually_validate.py | 8 | except Exception as e: | CODE |
| MEDIUM | testing/antithesis/bank-test/eventually_validate.py | 9 | print(f"Error connecting to database: {e}") | CODE |
| LOW | testing/antithesis/bank-test/first_setup.py | 8 | except Exception as e: | CODE |
| MEDIUM | testing/antithesis/bank-test/first_setup.py | 9 | print(f"Error connecting to database: {e}") | CODE |
| LOW | …esis/bank-test/parallel_driver_generate_transaction.py | 21 | except Exception as e: | CODE |
| MEDIUM | …esis/bank-test/parallel_driver_generate_transaction.py | 22 | print(f"Error connecting to database: {e}") | CODE |
| LOW | …sis/stress-composer/parallel_driver_schema_rollback.py | 12 | except Exception as e: | CODE |
| MEDIUM | …sis/stress-composer/parallel_driver_schema_rollback.py | 13 | print(f"Error connecting to database: {e}") | CODE |
| LOW | …sis/stress-composer/parallel_driver_schema_rollback.py | 33 | except Exception as e: | CODE |
| LOW | …is/stress-composer/parallel_driver_nested_savepoint.py | 13 | except Exception as e: | CODE |
| MEDIUM | …is/stress-composer/parallel_driver_nested_savepoint.py | 14 | print(f"Error connecting to database: {e}") | CODE |
| LOW | …is/stress-composer/parallel_driver_nested_savepoint.py | 35 | except Exception as e: | CODE |
| LOW | …esis/stress-composer/parallel_driver_integritycheck.py | 12 | except Exception as e: | CODE |
| MEDIUM | …esis/stress-composer/parallel_driver_integritycheck.py | 13 | print(f"Error connecting to database: {e}") | CODE |
| LOW | …esis/stress-composer/parallel_driver_integritycheck.py | 32 | except Exception as e: | CODE |
| LOW⚡ | …tithesis/stress-composer/parallel_driver_drop_index.py | 10 | except Exception as e: | CODE |
| MEDIUM⚡ | …tithesis/stress-composer/parallel_driver_drop_index.py | 11 | print(f"Error connecting to database: {e}") | CODE |
| LOW⚡ | …tithesis/stress-composer/parallel_driver_drop_index.py | 19 | except Exception as e: | CODE |
| LOW | …tithesis/stress-composer/parallel_driver_drop_index.py | 64 | except Exception as e: | STRING |
| LOW | …g/antithesis/stress-composer/parallel_driver_vacuum.py | 11 | except Exception as e: | CODE |
| LOW | …thesis/stress-composer/parallel_driver_create_index.py | 12 | except Exception as e: | CODE |
| MEDIUM | …thesis/stress-composer/parallel_driver_create_index.py | 13 | print(f"Error connecting to database: {e}") | CODE |
| LOW | …thesis/stress-composer/parallel_driver_create_index.py | 33 | except Exception as e: | CODE |
| LOW | …ithesis/stress-composer/parallel_driver_alter_table.py | 11 | except Exception as e: | CODE |
| 171 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tools/thesis/src/thesis/runner.py | 310 | except (ProcessLookupError, PermissionError): | CODE |
| HIGH | serverless/python/differential/test_parity.py | 792 | except Exception: | CODE |
| HIGH | serverless/python/differential/test_parity.py | 834 | except Exception: | CODE |
| HIGH | serverless/python/differential/test_parity.py | 696 | except Exception: | CODE |
| HIGH | serverless/python/differential/test_parity.py | 700 | except Exception: | CODE |
| HIGH | serverless/python/differential/test_parity.py | 704 | except Exception: | CODE |
| HIGH | serverless/python/differential/test_parity.py | 593 | except Exception: | CODE |
| HIGH | serverless/python/turso_serverless/session.py | 268 | except Exception: | CODE |
| HIGH | serverless/python/turso_serverless/session.py | 339 | except Exception: | CODE |
| HIGH | serverless/python/turso_serverless/session.py | 204 | except ValueError: | CODE |
| HIGH | …is/stress-composer/parallel_driver_nested_savepoint.py | 62 | except turso.IntegrityError: | CODE |
| HIGH | …g/antithesis/stress-composer/parallel_driver_vacuum.py | 25 | except OSError: | CODE |
| HIGH | …g/antithesis/stress-composer/parallel_driver_vacuum.py | 64 | except OSError: | CODE |
| HIGH | …g/antithesis/stress-composer/parallel_driver_update.py | 67 | except turso.IntegrityError: | CODE |
| HIGH | …ntithesis/stress-composer/parallel_driver_savepoint.py | 73 | except turso.IntegrityError: | CODE |
| HIGH | …ntithesis/stress-composer/parallel_driver_savepoint.py | 90 | except turso.IntegrityError: | CODE |
| HIGH | testing/antithesis/stress-composer/first_setup.py | 20 | except OSError: | CODE |
| HIGH | testing/antithesis/stress-composer/first_setup.py | 26 | except OSError: | CODE |
| HIGH | …thesis/stress-composer/parallel_driver_create_table.py | 40 | except ValueError: | CODE |
| HIGH | …antithesis/stress-composer/parallel_driver_rollback.py | 53 | except turso.IntegrityError: | CODE |
| HIGH | …g/antithesis/stress-composer/parallel_driver_insert.py | 53 | except turso.IntegrityError: | CODE |
| HIGH | testing/sqlright/crash_reports/lib/database.py | 224 | except sqlite3.IntegrityError: | CODE |
| HIGH | testing/sqlright/crash_reports/lib/parser.py | 88 | except OSError: | CODE |
| HIGH | examples/python/concurrent_writes.py | 39 | except Exception: | CODE |
| HIGH | scripts/corruption_bisecter.py | 83 | except FileNotFoundError: | CODE |
| HIGH | scripts/corruption-debug-tools/lib/record.py | 219 | except Exception: | CODE |
| HIGH | scripts/corruption-debug-tools/lib/record.py | 258 | except Exception: | CODE |
| HIGH | bindings/python/tests/test_database.py | 608 | except Exception: | CODE |
| HIGH | bindings/python/tests/test_database.py | 628 | except Exception: | CODE |
| HIGH | bindings/python/tests/test_database.py | 814 | except Exception: | CODE |
| HIGH | bindings/python/turso/lib.py | 875 | except Exception: | CODE |
| HIGH | bindings/python/turso/lib.py | 446 | except Exception: | CODE |
| HIGH | bindings/python/turso/lib.py | 465 | except Exception: | CODE |
| HIGH | bindings/python/turso/lib.py | 522 | except Exception: | CODE |
| HIGH | bindings/python/turso/lib.py | 774 | except Exception: | CODE |
| HIGH | bindings/python/turso/lib.py | 847 | except Exception: | CODE |
| HIGH | bindings/python/turso/lib.py | 1026 | except Exception: | CODE |
| HIGH | bindings/python/turso/lib.py | 1073 | except Exception: | CODE |
| HIGH | bindings/python/turso/lib.py | 1136 | except Exception: | CODE |
| HIGH | bindings/python/turso/lib_sync.py | 268 | except Exception: | CODE |
| HIGH | bindings/python/turso/lib_sync.py | 225 | except Exception: | CODE |
| HIGH | bindings/python/turso/lib_sync.py | 291 | except OSError: | CODE |
| HIGH | bindings/python/turso/lib_sync.py | 324 | except Exception: | CODE |
| HIGH | bindings/python/turso/lib_sync.py | 202 | except Exception: | CODE |
| HIGH | bindings/python/turso/lib_sync.py | 223 | except Exception: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/thesis/tests/test_run.py | 69 | def test_different_seed_different_run(tmp_path): | STRING |
| LOW | tools/thesis/tests/test_run.py | 85 | def test_steps_do_not_repeat_randomness(tmp_path): | STRING |
| LOW | tools/thesis/tests/test_run.py | 100 | def test_always_violation_fails_and_reproduces(tmp_path, capsys): | STRING |
| LOW | tools/thesis/tests/test_run.py | 156 | def test_unsatisfied_sometimes(tmp_path, capsys): | STRING |
| LOW | tools/thesis/tests/test_run.py | 171 | def test_workdir_must_be_empty(tmp_path): | STRING |
| LOW | tools/thesis/tests/test_run.py | 179 | def test_workdir_removed_on_success(tmp_path): | STRING |
| LOW | tools/thesis/tests/test_run.py | 197 | def test_existing_sitecustomize_still_runs(tmp_path): | STRING |
| LOW⚡ | …rverless/python/differential/test_encryption_header.py | 163 | def test_header_name_matches_spec(): | CODE |
| LOW⚡ | …rverless/python/differential/test_encryption_header.py | 169 | def test_encryption_key_sent_on_every_request(stub_server, key): | CODE |
| LOW⚡ | …rverless/python/differential/test_encryption_header.py | 179 | def test_no_key_sends_no_header(stub_server): | CODE |
| LOW⚡ | serverless/python/tests/test_serverless.py | 192 | def test_non_finite_result_decodes_as_nan(self): | CODE |
| LOW⚡ | serverless/python/tests/test_serverless.py | 215 | def test_finite_float_unchanged(self): | CODE |
| LOW⚡ | serverless/python/tests/test_serverless.py | 218 | def test_null_float_decodes_as_nan(self): | CODE |
| LOW⚡ | serverless/python/tests/test_serverless.py | 302 | def test_empty_batch_returns_no_results(self): | CODE |
| LOW⚡ | serverless/python/tests/test_serverless.py | 307 | def test_invalid_mode_is_rejected(self): | CODE |
| LOW⚡ | serverless/python/tests/test_serverless.py | 312 | def test_invalid_statement_is_rejected_with_index(self): | CODE |
| LOW⚡ | serverless/python/tests/test_serverless.py | 318 | def test_every_parameter_is_validated_before_the_request(self, monkeypatch, mode): | CODE |
| LOW⚡ | serverless/python/tests/test_serverless.py | 727 | def test_extended_constraint_code(self): | CODE |
| LOW⚡ | serverless/python/tests/test_serverless.py | 735 | def test_code_wins_over_message_text(self): | CODE |
| LOW⚡ | serverless/python/tests/test_serverless.py | 742 | def test_codeless_message_fallback(self): | CODE |
| LOW⚡ | serverless/python/tests/test_serverless.py | 746 | def test_server_error_carries_codes(self): | CODE |
| LOW⚡ | serverless/python/tests/test_serverless.py | 758 | def test_server_error_tolerates_missing_fields(self): | CODE |
| LOW | serverless/python/tests/test_serverless.py | 69 | def test_error_on_invalid_sql(self): | CODE |
| LOW | serverless/python/tests/test_serverless.py | 261 | def test_error_stops_execution(self): | CODE |
| LOW | serverless/python/tests/test_serverless.py | 349 | def test_transaction_control_is_rejected_before_the_request(self, monkeypatch, sql): | CODE |
| LOW | serverless/python/tests/test_serverless.py | 363 | def test_rollback_failure_is_attached_to_the_statement_error(self): | CODE |
| LOW | serverless/python/tests/test_serverless.py | 389 | def test_batch_executes_parameterized_statements_in_order(self): | CODE |
| LOW | serverless/python/tests/test_serverless.py | 418 | def test_batch_error_identifies_the_failing_statement(self): | CODE |
| LOW | serverless/python/tests/test_serverless.py | 444 | def test_batch_joins_an_open_transaction(self): | CODE |
| LOW | serverless/python/tests/test_serverless.py | 461 | def test_batch_mode_commits_atomically(self): | CODE |
| LOW | serverless/python/tests/test_serverless.py | 478 | def test_batch_mode_rolls_back_on_failure(self): | CODE |
| LOW | serverless/python/tests/test_serverless.py | 497 | def test_batch_constraint_error_preserves_exception_class(self): | CODE |
| LOW | serverless/python/tests/test_serverless.py | 542 | def test_in_transaction_tracks_server_state(self): | CODE |
| LOW | serverless/python/tests/test_serverless.py | 553 | def test_in_transaction_survives_statement_error(self): | CODE |
| LOW | serverless/python/tests/test_serverless.py | 563 | def test_implicit_transaction_on_dml(self): | CODE |
| LOW | serverless/python/tests/test_serverless.py | 589 | def test_recovery_after_error(self): | CODE |
| LOW | serverless/python/tests/test_serverless.py | 703 | def test_close_rolls_back_open_transaction(self): | CODE |
| LOW | serverless/python/tests/test_serverless.py | 796 | def test_read_failure_is_fatal_for_stream(self, monkeypatch, exc): | CODE |
| LOW | serverless/python/tests/test_serverless.py | 808 | def test_read_failure_maps_to_dbapi_error(self, monkeypatch): | CODE |
| LOW | serverless/python/tests/test_serverless.py | 837 | def test_trailing_slash_stripped(self): | CODE |
| LOW | serverless/python/turso_serverless/connection.py | 79 | def _normalize_batch_statements( | CODE |
| LOW | serverless/python/turso_serverless/connection.py | 102 | def _reject_transaction_control_statements( | CODE |
| LOW | serverless/python/turso_serverless/connection.py | 405 | def _decode_batch_statement_result(step_result: Any, sql: str) -> BatchResult | None: | CODE |
| LOW | …is/stress-composer/parallel_driver_nested_savepoint.py | 46 | def random_values_with_large_blobs(): | CODE |
| LOW | …ntithesis/stress-composer/parallel_driver_savepoint.py | 46 | def random_values_with_large_blobs(): | CODE |
| LOW | testing/antithesis/stress-composer/helper_utils.py | 6 | def generate_random_identifier(type: str, num: int): | CODE |
| LOW | testing/sqlright/crash_reports/lib/database.py | 228 | def update_session_crash_count(self, session_id: int): | CODE |
| LOW | testing/sqlright/crash_reports/lib/executor.py | 22 | def test_crash_against_tursodb(self, sql_content: str) -> Dict[str, Any]: | CODE |
| LOW | testing/sqlright/crash_reports/lib/executor.py | 84 | def test_crash_against_sqlite(self, sql_content: str) -> Dict[str, Any]: | CODE |
| LOW | testing/cli_tests/constraint.py | 348 | def regression_test_update_single_key(limbo: TestTursoShell): | CODE |
| LOW | testing/cli_tests/memory.py | 118 | def test_multi_way_hash_joins(turso: TestTursoShell): | CODE |
| LOW | testing/cli_tests/memory.py | 176 | def test_hash_join_star_pattern(turso: TestTursoShell): | CODE |
| LOW | testing/cli_tests/memory.py | 196 | def test_hash_join_outer_join(turso: TestTursoShell): | CODE |
| LOW | testing/cli_tests/mvcc.py | 15 | def test_create_table_with_mvcc(): | CODE |
| LOW⚡ | testing/cli_tests/cli_test_cases.py | 23 | def test_explain_query_plan_format_json(): | CODE |
| LOW | testing/cli_tests/cli_test_cases.py | 117 | def test_switch_back_to_in_memory(): | STRING |
| LOW | testing/cli_tests/cli_test_cases.py | 183 | def test_multi_line_single_line_comments_succession(): | STRING |
| LOW | testing/cli_tests/cli_test_cases.py | 252 | def test_import_csv_create_table_from_header(): | CODE |
| LOW | testing/cli_tests/cli_test_cases.py | 276 | def test_import_csv_multi_batch(): | CODE |
| LOW | testing/cli_tests/cli_test_cases.py | 304 | def test_update_delete_reject_limit(): | CODE |
| 207 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH⚡ | testing/cli_tests/cli_test_cases.py | 27 | '"result_columns":["1"],"nodes":[{"id":1,"parent":null,' | CODE |
| HIGH | testing/cli_tests/extensions.py | 94 | turso.run_test_fn(f".load {extension_path}", null) | STRING |
| HIGH | testing/cli_tests/extensions.py | 106 | turso.run_test_fn("SELECT regexp_substr('the year is unknow', '[0-9]+');", null) | STRING |
| HIGH | testing/cli_tests/extensions.py | 129 | null, | STRING |
| HIGH | testing/cli_tests/extensions.py | 195 | null, | STRING |
| HIGH⚡ | testing/cli_tests/extensions.py | 460 | null, | STRING |
| HIGH⚡ | testing/cli_tests/extensions.py | 470 | null, | STRING |
| HIGH⚡ | testing/cli_tests/extensions.py | 473 | turso.run_test_fn("insert into t values ('other', 'value');", null) | STRING |
| HIGH⚡ | testing/cli_tests/extensions.py | 486 | null, | STRING |
| HIGH⚡ | testing/cli_tests/extensions.py | 496 | null, | STRING |
| HIGH⚡ | testing/cli_tests/extensions.py | 502 | turso.run_test_fn("update t set value = 'updated' where key = 'key33';", null) | STRING |
| HIGH⚡ | testing/cli_tests/extensions.py | 513 | turso.run_test_fn("update t set value = 'updated2';", null) | STRING |
| HIGH⚡ | testing/cli_tests/extensions.py | 521 | null, | STRING |
| HIGH⚡ | testing/cli_tests/extensions.py | 525 | turso.run_test_fn("update t set key = '100' where 1;", null, "where clause evaluates properly") | STRING |
| HIGH | testing/cli_tests/extensions.py | 868 | null, | STRING |
| HIGH | testing/cli_tests/extensions.py | 896 | turso.run_test_fn("DROP TABLE csv;", null, "Drop CSV table") | STRING |
| HIGH | testing/cli_tests/extensions.py | 922 | null, | STRING |
| HIGH | examples/python/sync_example.py | 70 | conn.push() | CODE |
| HIGH | scripts/report-flaky-tests.py | 135 | ".[] | select(.pull_request == null) | {number, title}", | CODE |
| HIGH | bindings/python/tests/test_database_sync_aio.py | 65 | await conn.push() | CODE |
| HIGH | bindings/python/tests/test_database_sync_aio.py | 84 | await conn.push() | CODE |
| HIGH | bindings/python/tests/test_database_sync_aio.py | 110 | await conn.push() | CODE |
| HIGH | bindings/python/tests/test_sqlalchemy.py | 492 | sync.push() | CODE |
| HIGH | bindings/python/tests/test_database_sync.py | 66 | conn.push() | CODE |
| HIGH | bindings/python/tests/test_database_sync.py | 87 | conn.push() | CODE |
| HIGH | bindings/python/tests/test_database_sync.py | 121 | conn.push() | CODE |
| HIGH | bindings/python/turso/sqlalchemy/dialect.py | 356 | sync.push() # Push local changes | STRING |
| HIGH | bindings/python/turso/sqlalchemy/dialect.py | 513 | sync.push() | STRING |
| HIGH | bindings/python/turso/sqlalchemy/__init__.py | 30 | sync.push() # Push local changes | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/thesis/src/thesis/runner.py | 15 | CODE | |
| LOW | tools/thesis/src/thesis/composer.py | 8 | CODE | |
| LOW | tools/thesis/src/thesis/assertions.py | 8 | CODE | |
| LOW | tools/thesis/src/thesis/cli.py | 3 | CODE | |
| LOW | …rverless/python/differential/test_encryption_header.py | 15 | CODE | |
| LOW | serverless/python/differential/test_parity.py | 16 | CODE | |
| LOW | serverless/python/tests/test_serverless.py | 7 | CODE | |
| LOW | serverless/python/turso_serverless/dbapi.py | 3 | CODE | |
| LOW | serverless/python/turso_serverless/protocol.py | 3 | CODE | |
| LOW | serverless/python/turso_serverless/session.py | 4 | CODE | |
| LOW | serverless/python/turso_serverless/__init__.py | 15 | CODE | |
| LOW | serverless/python/turso_serverless/__init__.py | 15 | CODE | |
| LOW | serverless/python/turso_serverless/__init__.py | 15 | CODE | |
| LOW | serverless/python/turso_serverless/__init__.py | 15 | CODE | |
| LOW | serverless/python/turso_serverless/__init__.py | 16 | CODE | |
| LOW | serverless/python/turso_serverless/__init__.py | 16 | CODE | |
| LOW | serverless/python/turso_serverless/__init__.py | 16 | CODE | |
| LOW | serverless/python/turso_serverless/__init__.py | 16 | CODE | |
| LOW | serverless/python/turso_serverless/__init__.py | 16 | CODE | |
| LOW | serverless/python/turso_serverless/__init__.py | 16 | CODE | |
| LOW | serverless/python/turso_serverless/__init__.py | 16 | CODE | |
| LOW | serverless/python/turso_serverless/__init__.py | 16 | CODE | |
| LOW | serverless/python/turso_serverless/__init__.py | 16 | CODE | |
| LOW | serverless/python/turso_serverless/__init__.py | 16 | CODE | |
| LOW | serverless/python/turso_serverless/__init__.py | 16 | CODE | |
| LOW | serverless/python/turso_serverless/connection.py | 3 | CODE | |
| LOW | scripts/corruption-debug-tools/lib/__init__.py | 7 | CODE | |
| LOW | scripts/corruption-debug-tools/lib/__init__.py | 7 | CODE | |
| LOW | scripts/corruption-debug-tools/lib/__init__.py | 7 | CODE | |
| LOW | scripts/corruption-debug-tools/lib/__init__.py | 12 | CODE | |
| LOW | scripts/corruption-debug-tools/lib/__init__.py | 12 | CODE | |
| LOW | scripts/corruption-debug-tools/lib/__init__.py | 12 | CODE | |
| LOW | scripts/corruption-debug-tools/lib/__init__.py | 12 | CODE | |
| LOW | scripts/corruption-debug-tools/lib/__init__.py | 12 | CODE | |
| LOW | scripts/corruption-debug-tools/lib/__init__.py | 12 | CODE | |
| LOW | scripts/corruption-debug-tools/lib/__init__.py | 20 | CODE | |
| LOW | scripts/corruption-debug-tools/lib/__init__.py | 20 | CODE | |
| LOW | scripts/corruption-debug-tools/lib/__init__.py | 20 | CODE | |
| LOW | scripts/corruption-debug-tools/lib/__init__.py | 20 | CODE | |
| LOW | scripts/corruption-debug-tools/lib/__init__.py | 20 | CODE | |
| LOW | scripts/corruption-debug-tools/lib/__init__.py | 20 | CODE | |
| LOW | scripts/corruption-debug-tools/lib/__init__.py | 28 | CODE | |
| LOW | scripts/corruption-debug-tools/lib/__init__.py | 28 | CODE | |
| LOW | scripts/corruption-debug-tools/lib/__init__.py | 28 | CODE | |
| LOW | scripts/corruption-debug-tools/lib/__init__.py | 28 | CODE | |
| LOW | scripts/corruption-debug-tools/lib/__init__.py | 28 | CODE | |
| LOW | scripts/corruption-debug-tools/lib/__init__.py | 28 | CODE | |
| LOW | scripts/corruption-debug-tools/lib/__init__.py | 28 | CODE | |
| LOW | scripts/corruption-debug-tools/lib/__init__.py | 28 | CODE | |
| LOW | scripts/corruption-debug-tools/lib/__init__.py | 28 | CODE | |
| LOW | bindings/python/turso/lib_aio.py | 1 | CODE | |
| LOW | bindings/python/turso/lib.py | 1 | CODE | |
| LOW | bindings/python/turso/__init__.py | 5 | CODE | |
| LOW | bindings/python/turso/__init__.py | 5 | CODE | |
| LOW | bindings/python/turso/__init__.py | 5 | CODE | |
| LOW | bindings/python/turso/__init__.py | 5 | CODE | |
| LOW | bindings/python/turso/__init__.py | 5 | CODE | |
| LOW | bindings/python/turso/__init__.py | 5 | CODE | |
| LOW | bindings/python/turso/__init__.py | 5 | CODE | |
| LOW | bindings/python/turso/__init__.py | 5 | CODE | |
| 56 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | core/translate/trigger_exec.rs | 728 | // For UPDATE OF, we need to check if any of the specified columns | COMMENT |
| LOW | core/translate/trigger_exec.rs | 760 | // For UPDATE OF, we need to check if any of the specified columns | COMMENT |
| LOW | core/translate/alter.rs | 3147 | // We need to check if the column exists in the table being renamed | COMMENT |
| LOW | core/translate/expr/translator.rs | 393 | // If LHS is NULL, we need to check if ephemeral is empty first. | COMMENT |
| LOW | core/storage/btree.rs | 7203 | // Step 1: Move cursor to the largest key in the left subtree. | COMMENT |
| LOW | core/storage/btree.rs | 7282 | // Step 2: Replace the cell in the parent (interior) page. | COMMENT |
| LOW | core/storage/btree.rs | 7301 | // Step 3: Delete the predecessor cell from the leaf page. | COMMENT |
| LOW | core/storage/btree.rs | 10338 | // otherwise, we need to check if we have enough space. | COMMENT |
| LOW | core/vdbe/execute.rs | 17030 | // Ephemeral tables have their own pager, so we need to check if this is an | COMMENT |
| LOW⚡ | core/mvcc/database/tests.rs | 19381 | // Step 2: Restart (simulates server redeploy) | COMMENT |
| LOW⚡ | core/mvcc/database/tests.rs | 19384 | // Step 3: Create more tables + insert into old tables, then checkpoint | COMMENT |
| LOW⚡ | core/mvcc/database/tests.rs | 19401 | // Step 4: Checkpoint - all tables get positive root pages, log truncated | COMMENT |
| LOW⚡ | core/mvcc/database/tests.rs | 19404 | // Step 5: More writes after checkpoint (un-checkpointed, in the log) | COMMENT |
| LOW | core/mvcc/database/tests.rs | 19368 | // Step 1: Create many tables, insert data, checkpoint | COMMENT |
| LOW | core/mvcc/database/tests.rs | 19418 | // Step 6: Restart again - log replay should not panic | COMMENT |
| LOW | core/mvcc/database/tests.rs | 21664 | // Step 1: open normally so PRAGMA journal_mode=mvcc creates the logical log. | COMMENT |
| LOW | core/mvcc/database/tests.rs | 21687 | // Step 3: re-open with the busy-on-log_tx storage wrapper. | COMMENT |
| LOW | core/mvcc/database/tests.rs | 21721 | // Step 3: open a CONCURRENT tx, do an INSERT, then arm log_tx Busy. | COMMENT |
| LOW | core/mvcc/database/tests.rs | 21737 | // Step 4: from another CONCURRENT tx, do an INSERT; the INSERT should go through. | COMMENT |
| LOW⚡ | serverless/rust/conformance/tests/protocol.rs | 268 | // Step 0: succeeds. | COMMENT |
| LOW⚡ | serverless/rust/conformance/tests/protocol.rs | 270 | // Step 1: fails on the unique constraint. | COMMENT |
| LOW⚡ | serverless/rust/conformance/tests/protocol.rs | 272 | // Step 2: runs because step 0 succeeded. | COMMENT |
| LOW⚡ | serverless/rust/conformance/tests/protocol.rs | 277 | // Step 3: skipped because step 1 did not succeed. | COMMENT |
| LOW⚡ | serverless/rust/conformance/tests/protocol.rs | 282 | // Step 4: runs; `error` is the negation of `ok`, | COMMENT |
| LOW⚡ | serverless/rust/conformance/tests/protocol.rs | 288 | // Step 5: skipped; `error` on a skipped step is | COMMENT |
| LOW | tests/integration/index_method/mod.rs | 6848 | // Step 1: "process" 1, connection X pins an old snapshot and warms the | COMMENT |
| LOW | tests/integration/index_method/mod.rs | 6857 | // Step 2: "process" 2 commits FTS churn — deletes make old postings | COMMENT |
| LOW⚡ | tests/integration/index_method/mod.rs | 6868 | // Step 3: process 1, connection Z begins a fresh snapshot: its | COMMENT |
| LOW⚡ | tests/integration/index_method/mod.rs | 6873 | // Step 4: connection X (still pinned at the OLD snapshot) runs another | COMMENT |
| LOW⚡ | tests/integration/index_method/mod.rs | 6882 | // Step 5: a fresh-snapshot statement on process 1 must see a | COMMENT |
| LOW⚡ | tests/integration/storage/header_version.rs | 286 | // Step 1: Create a WAL mode database with rusqlite | COMMENT |
| LOW⚡ | tests/integration/storage/header_version.rs | 289 | // Step 2: Open with limbo WITHOUT MVCC to create WAL data, then close without checkpointing | COMMENT |
| LOW | tests/integration/storage/header_version.rs | 324 | // Step 3: Reopen with MVCC enabled and try to switch via PRAGMA | COMMENT |
| LOW⚡ | tests/integration/storage/header_version.rs | 389 | // Step 1: Create a WAL mode database and convert to MVCC | COMMENT |
| LOW⚡ | tests/integration/storage/header_version.rs | 392 | // Step 2: Open and switch to MVCC mode via PRAGMA, then add some data | COMMENT |
| LOW | tests/integration/storage/header_version.rs | 424 | // Step 3: Reopen and switch to WAL mode via PRAGMA | COMMENT |
| LOW | tests/integration/query_processing/encryption.rs | 599 | // Step 2: re-open with correct key (this uses the DATABASE_MANAGER cache) | COMMENT |
| LOW | tests/integration/query_processing/encryption.rs | 639 | // Step 3: Opening with wrong key succeeds, but reading data fails with decryption error | COMMENT |
| LOW | tests/integration/query_processing/encryption.rs | 683 | // Step 4: Opening without encryption options should fail immediately | COMMENT |
| LOW | tests/integration/query_processing/encryption.rs | 701 | // Step 5: verify correct key still works after wrong key attempt | COMMENT |
| LOW⚡ | tests/fuzz/journal_mode.rs | 131 | // Step 1: Insert a row in MVCC mode | COMMENT |
| LOW⚡ | tests/fuzz/journal_mode.rs | 136 | // Step 2: Switch to WAL (checkpoints the row to B-tree) | COMMENT |
| LOW | tests/fuzz/journal_mode.rs | 148 | // Step 3: Switch back to MVCC (creates new MvStore, row only in B-tree) | COMMENT |
| LOW | tests/fuzz/journal_mode.rs | 161 | // Step 4: UPDATE the row | COMMENT |
| LOW⚡ | tests/fuzz/journal_mode.rs | 174 | // Step 5: DELETE the row | COMMENT |
| LOW⚡ | tests/fuzz/journal_mode.rs | 182 | // Step 6: Switch to WAL - this triggers checkpoint | COMMENT |
| LOW | tests/fuzz/journal_mode.rs | 232 | // Step 1: Create a proper WAL database using SQLite first | COMMENT |
| LOW | tests/fuzz/journal_mode.rs | 245 | // Step 2: Open the database with Limbo | COMMENT |
| LOW | tests/fuzz/journal_mode.rs | 264 | // Step 3: Create SQLite in-memory database for comparison | COMMENT |
| LOW | …ting/differential-oracle/fuzzer/custom_types_fuzzer.rs | 2217 | // Step 1: INSERT | COMMENT |
| LOW⚡ | testing/sqlancer/sqlancer-runner/corruptionAnalysis.ts | 47 | // Step 1: Get WAL info | COMMENT |
| LOW⚡ | testing/sqlancer/sqlancer-runner/corruptionAnalysis.ts | 54 | // Step 2: Find corrupting frame | COMMENT |
| LOW⚡ | testing/sqlancer/sqlancer-runner/corruptionAnalysis.ts | 57 | // Step 3: Run integrity check | COMMENT |
| LOW | scripts/run-sqlancer.sh | 116 | # Step 1: Build Limbo JDBC driver if needed | COMMENT |
| LOW | scripts/run-sqlancer.sh | 155 | # Step 2: Clone/update SQLancer | COMMENT |
| LOW | scripts/run-sqlancer.sh | 168 | # Step 3: Add/update Limbo provider | COMMENT |
| LOW | scripts/run-sqlancer.sh | 200 | # Step 4: Patch pom.xml to use Limbo JAR if not already done | COMMENT |
| LOW⚡ | scripts/run-sqlancer.sh | 223 | # Step 5: Build SQLancer | COMMENT |
| LOW⚡ | scripts/run-sqlancer.sh | 227 | # Step 6: Run SQLancer | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | core/storage/btree.rs | 7203 | // Step 1: Move cursor to the largest key in the left subtree. | COMMENT |
| LOW | core/storage/btree.rs | 7282 | // Step 2: Replace the cell in the parent (interior) page. | COMMENT |
| LOW | core/storage/btree.rs | 7301 | // Step 3: Delete the predecessor cell from the leaf page. | COMMENT |
| LOW⚡ | core/mvcc/database/tests.rs | 19381 | // Step 2: Restart (simulates server redeploy) | COMMENT |
| LOW⚡ | core/mvcc/database/tests.rs | 19384 | // Step 3: Create more tables + insert into old tables, then checkpoint | COMMENT |
| LOW⚡ | core/mvcc/database/tests.rs | 19401 | // Step 4: Checkpoint - all tables get positive root pages, log truncated | COMMENT |
| LOW⚡ | core/mvcc/database/tests.rs | 19404 | // Step 5: More writes after checkpoint (un-checkpointed, in the log) | COMMENT |
| LOW | core/mvcc/database/tests.rs | 19368 | // Step 1: Create many tables, insert data, checkpoint | COMMENT |
| LOW | core/mvcc/database/tests.rs | 19418 | // Step 6: Restart again - log replay should not panic | COMMENT |
| LOW | core/mvcc/database/tests.rs | 21664 | // Step 1: open normally so PRAGMA journal_mode=mvcc creates the logical log. | COMMENT |
| LOW | core/mvcc/database/tests.rs | 21687 | // Step 3: re-open with the busy-on-log_tx storage wrapper. | COMMENT |
| LOW | core/mvcc/database/tests.rs | 21721 | // Step 3: open a CONCURRENT tx, do an INSERT, then arm log_tx Busy. | COMMENT |
| LOW | core/mvcc/database/tests.rs | 21737 | // Step 4: from another CONCURRENT tx, do an INSERT; the INSERT should go through. | COMMENT |
| LOW⚡ | serverless/rust/conformance/tests/protocol.rs | 268 | // Step 0: succeeds. | COMMENT |
| LOW⚡ | serverless/rust/conformance/tests/protocol.rs | 270 | // Step 1: fails on the unique constraint. | COMMENT |
| LOW⚡ | serverless/rust/conformance/tests/protocol.rs | 272 | // Step 2: runs because step 0 succeeded. | COMMENT |
| LOW⚡ | serverless/rust/conformance/tests/protocol.rs | 277 | // Step 3: skipped because step 1 did not succeed. | COMMENT |
| LOW⚡ | serverless/rust/conformance/tests/protocol.rs | 282 | // Step 4: runs; `error` is the negation of `ok`, | COMMENT |
| LOW⚡ | serverless/rust/conformance/tests/protocol.rs | 288 | // Step 5: skipped; `error` on a skipped step is | COMMENT |
| LOW⚡ | tests/integration/index_method/mod.rs | 6868 | // Step 3: process 1, connection Z begins a fresh snapshot: its | COMMENT |
| LOW⚡ | tests/integration/index_method/mod.rs | 6873 | // Step 4: connection X (still pinned at the OLD snapshot) runs another | COMMENT |
| LOW⚡ | tests/integration/index_method/mod.rs | 6882 | // Step 5: a fresh-snapshot statement on process 1 must see a | COMMENT |
| LOW⚡ | tests/integration/storage/header_version.rs | 286 | // Step 1: Create a WAL mode database with rusqlite | COMMENT |
| LOW⚡ | tests/integration/storage/header_version.rs | 289 | // Step 2: Open with limbo WITHOUT MVCC to create WAL data, then close without checkpointing | COMMENT |
| LOW | tests/integration/storage/header_version.rs | 324 | // Step 3: Reopen with MVCC enabled and try to switch via PRAGMA | COMMENT |
| LOW⚡ | tests/integration/storage/header_version.rs | 389 | // Step 1: Create a WAL mode database and convert to MVCC | COMMENT |
| LOW⚡ | tests/integration/storage/header_version.rs | 392 | // Step 2: Open and switch to MVCC mode via PRAGMA, then add some data | COMMENT |
| LOW | tests/integration/storage/header_version.rs | 424 | // Step 3: Reopen and switch to WAL mode via PRAGMA | COMMENT |
| LOW | tests/integration/query_processing/encryption.rs | 599 | // Step 2: re-open with correct key (this uses the DATABASE_MANAGER cache) | COMMENT |
| LOW | tests/integration/query_processing/encryption.rs | 639 | // Step 3: Opening with wrong key succeeds, but reading data fails with decryption error | COMMENT |
| LOW | tests/integration/query_processing/encryption.rs | 683 | // Step 4: Opening without encryption options should fail immediately | COMMENT |
| LOW | tests/integration/query_processing/encryption.rs | 701 | // Step 5: verify correct key still works after wrong key attempt | COMMENT |
| LOW⚡ | tests/fuzz/journal_mode.rs | 131 | // Step 1: Insert a row in MVCC mode | COMMENT |
| LOW⚡ | tests/fuzz/journal_mode.rs | 136 | // Step 2: Switch to WAL (checkpoints the row to B-tree) | COMMENT |
| LOW | tests/fuzz/journal_mode.rs | 148 | // Step 3: Switch back to MVCC (creates new MvStore, row only in B-tree) | COMMENT |
| LOW | tests/fuzz/journal_mode.rs | 161 | // Step 4: UPDATE the row | COMMENT |
| LOW⚡ | tests/fuzz/journal_mode.rs | 174 | // Step 5: DELETE the row | COMMENT |
| LOW⚡ | tests/fuzz/journal_mode.rs | 182 | // Step 6: Switch to WAL - this triggers checkpoint | COMMENT |
| LOW | tests/fuzz/journal_mode.rs | 232 | // Step 1: Create a proper WAL database using SQLite first | COMMENT |
| LOW | tests/fuzz/journal_mode.rs | 245 | // Step 2: Open the database with Limbo | COMMENT |
| LOW | tests/fuzz/journal_mode.rs | 264 | // Step 3: Create SQLite in-memory database for comparison | COMMENT |
| LOW | testing/sqltest/docs/adding-backends.md | 87 | ### Step 1: Create the Backend File | COMMENT |
| LOW | testing/sqltest/docs/adding-backends.md | 239 | ### Step 2: Create the Bridge Script | COMMENT |
| LOW⚡ | testing/sqltest/docs/adding-backends.md | 284 | ### Step 3: Register the Backend | COMMENT |
| LOW | testing/sqltest/docs/adding-backends.md | 296 | ### Step 4: Add CLI Option | COMMENT |
| LOW | …ting/differential-oracle/fuzzer/custom_types_fuzzer.rs | 2217 | // Step 1: INSERT | COMMENT |
| LOW⚡ | testing/sqlancer/sqlancer-runner/corruptionAnalysis.ts | 47 | // Step 1: Get WAL info | COMMENT |
| LOW⚡ | testing/sqlancer/sqlancer-runner/corruptionAnalysis.ts | 54 | // Step 2: Find corrupting frame | COMMENT |
| LOW⚡ | testing/sqlancer/sqlancer-runner/corruptionAnalysis.ts | 57 | // Step 3: Run integrity check | COMMENT |
| LOW | examples/react-native/README.md | 35 | # Step 1: install binding deps (--ignore-scripts avoids chicken-and-egg problem) | COMMENT |
| LOW | examples/react-native/README.md | 38 | # Step 2: install example app (this will now find bob when prepare runs) | COMMENT |
| LOW | scripts/run-sqlancer.sh | 116 | # Step 1: Build Limbo JDBC driver if needed | COMMENT |
| LOW | scripts/run-sqlancer.sh | 155 | # Step 2: Clone/update SQLancer | COMMENT |
| LOW | scripts/run-sqlancer.sh | 168 | # Step 3: Add/update Limbo provider | COMMENT |
| LOW | scripts/run-sqlancer.sh | 200 | # Step 4: Patch pom.xml to use Limbo JAR if not already done | COMMENT |
| LOW⚡ | scripts/run-sqlancer.sh | 223 | # Step 5: Build SQLancer | COMMENT |
| LOW⚡ | scripts/run-sqlancer.sh | 227 | # Step 6: Run SQLancer | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | core/benches/json_benchmark.rs | 39 | r#"[{"metadata":{"title":"Standard JSON Test File","description":"A complex JSON file for testing parsers an | CODE |
| LOW⚡ | core/benches/json_benchmark.rs | 39 | r#"[{"metadata":{"title":"Standard JSON Test File","description":"A complex JSON file for testing parsers an | CODE |
| LOW⚡ | core/benches/json_benchmark.rs | 39 | r#"[{"metadata":{"title":"Standard JSON Test File","description":"A complex JSON file for testing parsers an | CODE |
| LOW⚡ | core/benches/json_benchmark.rs | 39 | r#"[{"metadata":{"title":"Standard JSON Test File","description":"A complex JSON file for testing parsers an | CODE |
| LOW⚡ | core/benches/json_benchmark.rs | 39 | r#"[{"metadata":{"title":"Standard JSON Test File","description":"A complex JSON file for testing parsers an | CODE |
| LOW | core/benches/json_benchmark.rs | 65 | "street": "123 Main St", | CODE |
| LOW | core/benches/json_benchmark.rs | 710 | "name": "Jane Doe", | CODE |
| LOW | serverless/javascript/README.md | 60 | "INSERT INTO users (email) VALUES ('user@example.com')", | CODE |
| LOW | serverless/javascript/README.md | 61 | "INSERT INTO users (email) VALUES ('admin@example.com')", | CODE |
| LOW | serverless/javascript/README.md | 126 | await conn.run("INSERT INTO users (email) VALUES (?)", "user@example.com", { | CODE |
| LOW | serverless/javascript/README.md | 168 | "INSERT INTO users (email) VALUES ('user@example.com')", | CODE |
| LOW | serverless/javascript/README.md | 169 | "INSERT INTO users (email) VALUES ('admin@example.com')", | CODE |
| LOW | serverless/javascript/src/statement.ts | 82 | * console.log(row); // [1, "Alice", "alice@example.org"] | COMMENT |
| LOW | serverless/javascript/src/statement.ts | 159 | * const result = await stmt.run(['John Doe', 'john.doe@example.com']); | COMMENT |
| LOW⚡ | docs/javascript-api-reference.md | 102 | { name: "Alice", email: "alice@example.org" }, | CODE |
| LOW⚡ | docs/javascript-api-reference.md | 103 | { name: "Bob", email: "bob@example.org" }, | CODE |
| LOW⚡ | docs/javascript-api-reference.md | 106 | await insertMany.immediate([{ name: "Carol", email: "carol@example.org" }]); | CODE |
| LOW | docs/manual.md | 1204 | UPDATE users SET name='John Doe' WHERE id=1; | CODE |
| LOW | docs/language-reference/book/print.html | 4478 | INSERT INTO customers VALUES (1, 'Alice', 'alice@example.com', '555-0100'); | CODE |
| LOW | docs/language-reference/book/print.html | 5572 | INSERT INTO contacts VALUES ('Bob', '555-1234', NULL); | CODE |
| LOW | docs/language-reference/book/print.html | 5622 | INSERT INTO contacts VALUES ('Bob', '555-1234', NULL); | CODE |
| LOW | docs/language-reference/book/print.html | 7805 | INSERT INTO contacts VALUES (1, 'Alice', '["555-0100","555-0101"]'); | CODE |
| LOW | docs/language-reference/book/print.html | 7806 | INSERT INTO contacts VALUES (2, 'Bob', '["555-0200"]'); | CODE |
| LOW⚡ | testing/conformance/javascript/__test__/async.test.js | 440 | { sql: "INSERT INTO users(name, email) VALUES (?, ?)", args: ["Joey", "joey@example.org"] }, | CODE |
| LOW⚡ | testing/conformance/javascript/__test__/async.test.js | 441 | { sql: "INSERT INTO users(name, email) VALUES (?, ?)", args: ["Sally", "sally@example.org"] }, | CODE |
| LOW⚡ | testing/conformance/javascript/__test__/async.test.js | 442 | { sql: "INSERT INTO users(name, email) VALUES (:name, :email)", args: { name: "Junior", email: "junior@example.org | CODE |
| LOW⚡ | testing/conformance/javascript/__test__/async.test.js | 453 | { name: "Joey", email: "joey@example.org" }, | CODE |
| LOW⚡ | testing/conformance/javascript/__test__/async.test.js | 454 | { name: "Sally", email: "sally@example.org" }, | CODE |
| LOW⚡ | testing/conformance/javascript/__test__/async.test.js | 455 | { name: "Junior", email: "junior@example.org" }, | CODE |
| LOW⚡ | testing/conformance/javascript/__test__/async.test.js | 610 | { name: "Joey", email: "joey@example.org" }, | CODE |
| LOW⚡ | testing/conformance/javascript/__test__/async.test.js | 611 | { name: "Sally", email: "sally@example.org" }, | CODE |
| LOW⚡ | testing/conformance/javascript/__test__/async.test.js | 612 | { name: "Junior", email: "junior@example.org" }, | CODE |
| LOW⚡ | testing/conformance/javascript/__test__/async.test.js | 659 | { name: "Joey", email: "joey@example.org" }, | CODE |
| LOW⚡ | testing/conformance/javascript/__test__/async.test.js | 660 | { name: "Sally", email: "sally@example.org" }, | CODE |
| LOW⚡ | testing/conformance/javascript/__test__/async.test.js | 661 | { name: "Junior", email: "junior@example.org" }, | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 25 | "INSERT INTO users (id, name, email) VALUES (1, 'Alice', 'alice@example.org')" | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 190 | t.is(row.email, "alice@example.org"); | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 423 | { sql: "UPDATE users SET email = ? WHERE id = 1", args: ["alice2@example.org"] }, | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 577 | "INSERT INTO users (id, name, email) VALUES (100, 'Carol', 'carol@example.org')", | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 578 | "INSERT INTO users (id, name, email) VALUES (100, 'Dave', 'dave@example.org')", | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 638 | { name: "Joey", email: "joey@example.org" }, | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 639 | { name: "Sally", email: "sally@example.org" }, | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 745 | { id: 1, name: "Alice", email: "alice@example.org" }, | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 753 | const expected = [{ id: 1, name: "Alice", email: "alice@example.org" }]; | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 804 | t.deepEqual(await stmt.raw().get(), [1, 'Alice', 'alice@example.org']); | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 849 | t.deepEqual(await stmt.raw().get(1), [1, "Alice", "alice@example.org"]); | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 930 | { id: 1, name: "Alice", email: "alice@example.org" }, | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 944 | [1, "Alice", "alice@example.org"], | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 962 | { id: 1, name: "Alice", email: "alice@example.org" }, | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 973 | [1, "Alice", "alice@example.org"], | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 995 | [1n, "Alice", "alice@example.org"], | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 1006 | [1n, "Alice", "alice@example.org"], | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 1320 | db.exec(`INSERT INTO users (name, email) VALUES ('User${i}', 'user${i}@example.org')`) | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 1425 | await insert.run(["TxCommit", "tx-commit@example.org"]); | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 1449 | await insert.run(["TxRollback", "tx-rollback@example.org"]); | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 1467 | await insert.run(["WillRollback", "will-rollback@example.org"]); | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 1471 | await duplicateInsert.run([1, "DuplicateId", "duplicate-id@example.org"]); | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 1487 | await insert.run(["AfterRollback", "after-rollback@example.org"]); | CODE |
| LOW⚡ | testing/conformance/javascript/__test__/sync.test.js | 155 | { name: "Joey", email: "joey@example.org" }, | CODE |
| LOW⚡ | testing/conformance/javascript/__test__/sync.test.js | 156 | { name: "Sally", email: "sally@example.org" }, | CODE |
| 27 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | deny.toml | 5 | # Include all targets for comprehensive checking | COMMENT |
| MEDIUM | core/Cargo.toml | 96 | # harness resolves aristo + aristo-macros from crates.io, so no vendored mount | COMMENT |
| MEDIUM | core/translate/display.rs | 500 | // Definitely not perfect yet | COMMENT |
| MEDIUM | core/translate/emitter/mod.rs | 804 | /// utilize the same limit register, but it is initialized only once. | COMMENT |
| MEDIUM | core/mvcc/database/tests.rs | 843 | #[ignore = "manual GC metrics debug harness"] | COMMENT |
| MEDIUM | core/mvcc/database/tests.rs | 2816 | #[ignore = "Needs a dedicated bootstrap harness that can create header=MVCC + missing metadata + torn short log atomical | COMMENT |
| MEDIUM | core/mvcc/persistent_storage/logical_log.rs | 5511 | /// Why this matters: Edge-case frame shapes must remain parseable to keep format handling robust. | COMMENT |
| MEDIUM | tests/integration/storage/header_version.rs | 486 | /// This ensures mode switching is robust and doesn't corrupt data | COMMENT |
| MEDIUM | tests/fuzz/mod.rs | 348 | // because this is the only way to utilize an index efficiently for seeking. This is called the "left-prefix rul | COMMENT |
| LOW | sqlite/parser/src/lexer.rs | 188 | #[derive(Clone, PartialEq, Eq, Debug)] // do not derive Copy for Token, just use .clone() when needed | COMMENT |
| MEDIUM | cli/app.rs | 125 | #[clap(long, help = "Start MVCC concurrent transaction harness")] | COMMENT |
| MEDIUM⚡ | testing/cli_tests/cli_test_cases.py | 31 | # Switch back to list mode in the same round trip: the harness's | COMMENT |
| MEDIUM | testing/cli_tests/cli_test_cases.py | 521 | # The TursoShell pipe harness decodes output as UTF-8, so it cannot check | STRING |
| MEDIUM | scripts/nightly-bench.sh | 28 | # harness offers the flag rather than assuming. | COMMENT |
| MEDIUM | .github/workflows/aristo-verify.yml | 3 | # builds, and runs the conformance harness on Aretta's infrastructure and | COMMENT |
| MEDIUM | perf/latency/scripts/bench.sh | 64 | # tee would hide the harness's exit status, so it is passed out by hand. | COMMENT |
| MEDIUM | perf/throughput/scripts/bench.sh | 74 | # tee would hide the harness's exit status, so it is passed out by hand. | COMMENT |
| MEDIUM | perf/tatp/scripts/bench.sh | 92 | # tee would hide the harness's exit status, so it is passed out by hand. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/thesis/src/thesis/runner.py | 126 | CODE | |
| LOW | serverless/python/differential/test_parity.py | 390 | CODE | |
| LOW | serverless/python/differential/test_parity.py | 652 | CODE | |
| LOW | serverless/python/turso_serverless/session.py | 92 | CODE | |
| LOW | serverless/python/turso_serverless/session.py | 178 | CODE | |
| LOW | testing/antithesis/stress-composer/helper_utils.py | 10 | CODE | |
| LOW | testing/sqlright/crash_reports/query_crashes.py | 289 | CODE | |
| LOW | testing/sqlright/crash_reports/lib/scanner.py | 12 | CODE | |
| LOW | testing/sqlright/crash_reports/lib/scanner.py | 175 | CODE | |
| LOW | testing/cli_tests/constraint.py | 370 | CODE | |
| LOW | testing/cli_tests/write.py | 146 | CODE | |
| LOW | testing/cli_tests/test_turso_cli.py | 30 | CODE | |
| LOW | postgres/conformance/run.py | 288 | CODE | |
| LOW | examples/python/concurrent_writes.py | 24 | CODE | |
| LOW | scripts/update-version.py | 96 | CODE | |
| LOW | scripts/update-version.py | 134 | CODE | |
| LOW | scripts/merge-pr.py | 149 | CODE | |
| LOW | scripts/release-status.py | 39 | CODE | |
| LOW | scripts/release-status.py | 120 | CODE | |
| LOW | scripts/corruption_bisecter.py | 67 | CODE | |
| LOW | scripts/compare-divan-std-turso.py | 139 | CODE | |
| LOW | scripts/antithesis/diff_to_targeted_coverage.py | 29 | CODE | |
| LOW | scripts/corruption-debug-tools/page_info.py | 28 | CODE | |
| LOW | scripts/corruption-debug-tools/page_diff.py | 22 | CODE | |
| LOW | scripts/corruption-debug-tools/track_rowid.py | 26 | CODE | |
| LOW | scripts/corruption-debug-tools/page_history.py | 27 | CODE | |
| LOW | scripts/corruption-debug-tools/lib/record.py | 82 | CODE | |
| LOW | scripts/corruption-debug-tools/lib/record.py | 114 | CODE | |
| LOW | scripts/corruption-debug-tools/lib/record.py | 186 | CODE | |
| LOW | scripts/corruption-debug-tools/lib/record.py | 225 | CODE | |
| LOW | bindings/python/tests/utils.py | 98 | CODE | |
| LOW | bindings/python/tests/test_database_sync.py | 252 | CODE | |
| LOW | bindings/python/turso/lib.py | 697 | CODE | |
| LOW | bindings/python/turso/lib.py | 975 | CODE | |
| LOW | bindings/python/turso/lib_sync.py | 116 | CODE | |
| LOW | bindings/python/turso/lib_sync.py | 236 | CODE | |
| LOW | bindings/python/turso/lib_sync.py | 296 | CODE | |
| LOW | perf/fts/plot/plot-fts.py | 121 | CODE | |
| LOW | perf/fts/scripts/memory.py | 10 | CODE | |
| LOW | perf/tatp/plot/plot-mqth.py | 86 | CODE | |
| LOW | perf/tatp/plot/plot-mqth.py | 137 | CODE | |
| LOW | perf/tatp/plot/plot-response-times.py | 44 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | docs/language-reference/book/print.html | 9384 | # Create an encrypted database | COMMENT |
| MEDIUM | testing/antithesis/stress-composer/first_setup.py | 114 | # Create a composite index if table has multiple columns | STRING |
| MEDIUM | …thesis/stress-composer/parallel_driver_create_table.py | 99 | # Create the table | STRING |
| MEDIUM | testing/system/gen-database.py | 10 | # Create the user table | COMMENT |
| MEDIUM | examples/python/encryption.py | 30 | # Create an encrypted database | COMMENT |
| MEDIUM | examples/python/encryption.py | 41 | # Create a table and insert sensitive data | COMMENT |
| MEDIUM | .github/workflows/release.yml | 408 | # Create a GitHub Release while uploading all files to it | COMMENT |
| MEDIUM | bindings/python/tests/test_database.py | 34 | # Create a new database file | COMMENT |
| MEDIUM | bindings/python/tests/test_database_aio.py | 26 | # Create a new database file | COMMENT |
| MEDIUM | bindings/python/turso/lib_aio.py | 40 | # Create the blocking connection inside the worker thread once | COMMENT |
| MEDIUM | bindings/python/turso/lib_aio.py | 351 | # Create a connector that opens a blocking Connection using the existing driver. | COMMENT |
| MEDIUM | perf/connection/gen-database.py | 22 | # Create the specified number of tables | COMMENT |
| MEDIUM | perf/connection/rusqlite/gen-database.py | 22 | # Create the specified number of tables | COMMENT |
| MEDIUM | perf/connection/limbo/gen-database.py | 22 | # Create the specified number of tables | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | perf/connection/gen-database.py | 0 | generate sqlite databases with specified number of tables for benchmarking. | STRING |
| HIGH | perf/connection/rusqlite/gen-database.py | 0 | generate sqlite databases with specified number of tables for benchmarking. | STRING |
| HIGH | perf/connection/limbo/gen-database.py | 0 | generate sqlite databases with specified number of tables for benchmarking. | STRING |
| HIGH | perf/connection/gen-database.py | 0 | create table if not exists {table_name} ( id integer primary key, name text, value integer, created_at timestamp default | STRING |
| HIGH | perf/connection/rusqlite/gen-database.py | 0 | create table if not exists {table_name} ( id integer primary key, name text, value integer, created_at timestamp default | STRING |
| HIGH | perf/connection/limbo/gen-database.py | 0 | create table if not exists {table_name} ( id integer primary key, name text, value integer, created_at timestamp default | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | sql_generation/model/query/select.rs | 348 | where_clause: Some(self.body.select.where_clause.0.clone().into_boxed()), | CODE |
| CRITICAL | core/vdbe/execute.rs | 20005 | program.connection.db.allocators.mv_store.clone(), | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | serverless/python/turso_serverless/session.py | 220 | def _update_stream(self, baton: Optional[str], base_url: Optional[str]) -> None: | CODE |
| LOW | serverless/python/turso_serverless/__init__.py | 37 | __all__ = [ | CODE |
| LOW | testing/sqlright/crash_reports/lib/scanner.py | 9 | logger = logging.getLogger(__name__) | CODE |
| LOW | testing/sqlright/crash_reports/lib/executor.py | 8 | logger = logging.getLogger(__name__) | CODE |
| LOW | scripts/corruption-debug-tools/lib/__init__.py | 40 | __all__ = [ | CODE |
| LOW | bindings/python/turso/lib_aio.py | 250 | def _update_meta_cache(self, description, lastrowid, rowcount) -> None: | CODE |
| LOW | bindings/python/turso/lib.py | 587 | def set_query_timeout(self, milliseconds: int) -> None: | CODE |
| LOW | bindings/python/turso/__init__.py | 30 | __all__ = [ | CODE |
| LOW | bindings/python/turso/aio/__init__.py | 3 | __all__ = [ | CODE |
| LOW | bindings/python/turso/aio/sync/__init__.py | 11 | __all__ = [ | CODE |
| LOW | bindings/python/turso/sqlalchemy/dialect.py | 29 | logger = logging.getLogger(__name__) | CODE |
| LOW | bindings/python/turso/sqlalchemy/__init__.py | 57 | __all__ = [ | CODE |
| LOW | bindings/python/turso/sync/__init__.py | 31 | __all__ = [ | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | core/statement.rs | 1202 | /// ### Return value | COMMENT |
| LOW | …thesis/stress-composer/parallel_driver_create_index.py | 79 | # Check if this combination already has an index | STRING |
| LOW | testing/sqlright/crash_reports/lib/scanner.py | 197 | # Check if file still exists (may have been deleted) | COMMENT |
| LOW | testing/sqlright/crash_reports/lib/database.py | 65 | # Check if finding_type column exists on crashes table | STRING |
| LOW | scripts/install-sqlite3.sh | 99 | # Check if already installed | COMMENT |
| LOW | scripts/corruption-debug-tools/find_corrupt_frame.py | 84 | # Check if full WAL is actually corrupt | COMMENT |
| LOW | scripts/corruption-debug-tools/verify_stale.py | 123 | # Check if it's close | COMMENT |
| LOW | scripts/corruption-debug-tools/verify_stale.py | 139 | # Check if corrupt looks like stale + insertions | COMMENT |
| LOW⚡ | bindings/python/turso/lib.py | 1016 | # Set description to None | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | extensions/csv/src/lib.rs | 9 | //! ## Example usage: | COMMENT |
| LOW | scripts/clean_interactions.sh | 20 | # Usage: | COMMENT |
| LOW | scripts/diff.sh | 4 | # Usage: | COMMENT |
| LOW | scripts/nightly-bench.sh | 5 | # Usage: | COMMENT |
| LOW | scripts/stack/frame-sizes.sh | 4 | # Usage: | COMMENT |
| LOW | scripts/stack/min-stack.sh | 4 | # Usage: | COMMENT |
| LOW | scripts/stack/stack-profile.sh | 4 | # Usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | testing/cli_tests/console.py | 18 | CODE | |
| LOW | testing/cli_tests/console.py | 45 | CODE | |
| LOW | testing/cli_tests/console.py | 72 | CODE | |
| LOW | testing/cli_tests/console.py | 99 | CODE | |
| LOW | bindings/python/turso/lib_sync.py | 428 | CODE | |
| LOW | bindings/python/turso/lib_sync_aio.py | 66 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | bindings/python/turso/sqlalchemy/dialect.py | 490 | Get the underlying turso.sync.ConnectionSync from a SQLAlchemy connection. This provides access to sync-specif | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | sql_generation/generation/predicate/binary.rs | 137 | escape: None, // TODO: implement | CODE |
| LOW | postgres/frontend/catalog.rs | 3999 | // TODO: Fix tests to use correct API | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | core/storage/wal.rs | 3638 | // don't forget to release the write-lock if | COMMENT |