Turso is an in-process SQL database, compatible with SQLite.
This report presents the forensic synthetic code analysis of tursodatabase/turso, a Rust project with 22,838 GitHub stars. SynthScan v2.0 examined 751,356 lines of code across 1466 source files, recording 1736 pattern matches distributed across 21 syntactic categories. The overall adjusted score of 2.9 places this repository in the Likely human-written band.
The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).
This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.
Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.
This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.
The scanner identified 1736 distinct pattern matches across 21 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. 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 diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.
| 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 | 1681 | pub fn len(&self) -> usize { | COMMENT |
| LOW | core/types.rs | 1701 | /// [data1][data2][data3]... | COMMENT |
| LOW | core/types.rs | 2081 | #[cfg(nightly)] | COMMENT |
| LOW | core/types.rs | 2361 | } | COMMENT |
| LOW | core/types.rs | 2381 | /// | COMMENT |
| LOW | core/types.rs | 2461 | /// common case where: | COMMENT |
| LOW | core/types.rs | 2481 | /// | COMMENT |
| LOW | core/types.rs | 2581 | /// or `Greater` if the serialized record is less than, equal to, or greater than | COMMENT |
| LOW | core/types.rs | 3261 | /// Record matching the [SeekOp] doesn't exists in the B-tree | COMMENT |
| LOW | core/types.rs | 3281 | }, | COMMENT |
| LOW | core/util.rs | 1241 | .unwrap_or(0); | COMMENT |
| LOW | core/statement.rs | 41 | /// toward `Connection::n_active_root_statements` once execution begins, which | COMMENT |
| LOW | core/statement.rs | 81 | /// and custom-type resolution that the SQLite-compat `get_column_decltype` | COMMENT |
| LOW | core/statement.rs | 101 | /// default. | COMMENT |
| LOW | core/statement.rs | 121 | /// Use this to distinguish "the user wrote `INTEGER`" (base_type: `None`) | COMMENT |
| LOW | core/statement.rs | 141 | /// kinds (e.g. for future enum or table-row types) can be added without a | COMMENT |
| LOW | core/statement.rs | 161 | /// declared name carries the field schema. | COMMENT |
| LOW | core/statement.rs | 301 | /// - `Some(Some(duration))`: override with a query-specific timeout | COMMENT |
| LOW | core/statement.rs | 741 | return Ok(crate::IOResult::IO(io)); | COMMENT |
| LOW | core/statement.rs | 1061 | _ => None, | COMMENT |
| LOW | core/statement.rs | 1081 | /// - `Ok(None)` when the statement is in EXPLAIN mode, when `idx` is out | COMMENT |
| LOW | core/error.rs | 41 | InvalidModifier(String), | COMMENT |
| LOW | core/error.rs | 61 | TooBig, | COMMENT |
| LOW | core/lib.rs | 201 | /// Sentinel used when a SQL schema qualifier references an attached | COMMENT |
| LOW | core/lib.rs | 421 | /// non-blocking by yielding through its IO instead of `io.block`. | COMMENT |
| LOW | core/lib.rs | 441 | #[default] | COMMENT |
| LOW | core/lib.rs | 561 | /// `Database` object per a database file. We need because it is not safe | COMMENT |
| LOW | core/lib.rs | 2881 | COMMENT | |
| LOW | core/percentile.rs | 201 | /// Standard Deviation implementation using Welford's algorithm | COMMENT |
| LOW | core/schema.rs | 101 | pub commands: std::vec::Vec<turso_parser::ast::TriggerCmd>, | COMMENT |
| LOW | core/schema.rs | 661 | // is_called, start, inc, min, max, cycle). The runtime watermark IS the | COMMENT |
| LOW | core/schema.rs | 681 | // same transaction. | COMMENT |
| LOW | core/schema.rs | 1581 | let row = return_if_io!(cursor.record()); | COMMENT |
| LOW | core/schema.rs | 3921 | /// The start register for the result columns of the derived table; | COMMENT |
| LOW | core/function.rs | 441 | JsonGroupArray, | COMMENT |
| LOW | core/busy.rs | 1 | use crate::MonotonicInstant; | COMMENT |
| LOW | core/busy.rs | 41 | COMMENT | |
| LOW | core/stats.rs | 21 | /// These values come directly from sqlite_stat1's stat column (after the | COMMENT |
| LOW | core/multiprocess_tests.rs | 1861 | conn.close().unwrap(); | COMMENT |
| LOW | core/multiprocess_tests.rs | 1881 | // 2. `test_multiprocess_nextval_after_other_process_committed_is_monotonic` | COMMENT |
| LOW | core/multiprocess_tests.rs | 2261 | std::fs::write(&result_path, body).expect("write result"); | COMMENT |
| LOW | core/multiprocess_tests.rs | 2381 | ); | COMMENT |
| LOW | core/multiprocess_tests.rs | 2461 | let body = ids | COMMENT |
| LOW | core/multiprocess_tests.rs | 2481 | /// duplicate watermark rows from cross-process flushes — that | COMMENT |
| LOW | core/connection.rs | 81 | pub(crate) db: Arc<Database>, | COMMENT |
| LOW | core/connection.rs | 121 | } | COMMENT |
| LOW | core/connection.rs | 201 | parse: Box<crate::util::ParseSchemaRowsState>, | COMMENT |
| LOW | core/connection.rs | 281 | /// carrying the worklist and the in-flight descriptor read across IO yields. | COMMENT |
| LOW | core/connection.rs | 361 | pub(crate) total_changes: AtomicI64, | COMMENT |
| LOW | core/connection.rs | 401 | pub(super) dqs_dml: AtomicBool, | COMMENT |
| LOW | core/connection.rs | 421 | /// Main DB uses `mv_tx` above for zero-cost hot path access. | COMMENT |
| 829 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | core/storage/encryption.rs | 30 | /// ┌───────────────┐ ┌───────────────┐ | COMMENT |
| MEDIUM⚡ | core/storage/encryption.rs | 33 | /// │ (4048 bytes) │ ────────► │ Content │ | COMMENT |
| MEDIUM⚡ | core/storage/encryption.rs | 35 | /// ├───────────────┤ ├───────────────┤ | COMMENT |
| MEDIUM⚡ | core/storage/encryption.rs | 37 | /// │ (48 bytes) │ ├───────────────┤ | COMMENT |
| MEDIUM⚡ | core/storage/encryption.rs | 39 | /// └───────────────┘ └───────────────┘ | COMMENT |
| MEDIUM | core/storage/encryption.rs | 55 | /// ┌─────────┬───────┬────────┬──────────────────┐ | COMMENT |
| MEDIUM | core/storage/encryption.rs | 60 | /// └─────────┴───────┴────────┴──────────────────┘ | COMMENT |
| MEDIUM | core/vdbe/hash_table.rs | 4421 | // ── Grace hash join tests ────────────────────────────────────── | COMMENT |
| MEDIUM | core/mvcc/database/tests.rs | 9393 | // ─── GC helpers ─────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | core/mvcc/database/tests.rs | 9414 | // ─── GC unit tests ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | core/mvcc/database/tests.rs | 10765 | // ─── GC quickcheck property tests ──────────────────────────────────────── | COMMENT |
| MEDIUM | core/mvcc/database/tests.rs | 11914 | // ─── 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 | 199 | // ── Formatting helpers ────────────────────────────────────────── | COMMENT |
| MEDIUM | core/functions/printf.rs | 440 | // ── Rounding (sqlite3.c:36968-36997) ────────────────────────── | COMMENT |
| MEDIUM | core/functions/printf.rs | 505 | // ── Integer part (sqlite3.c:32581-32588) ─────────────────────── | COMMENT |
| MEDIUM | core/functions/printf.rs | 525 | // ── Fractional part (sqlite3.c:32591-32602) ──────────────────── | COMMENT |
| MEDIUM | core/functions/printf.rs | 663 | // ── Per-specifier formatters ──────────────────────────────────── | COMMENT |
| MEDIUM | core/functions/printf.rs | 960 | // ── Exponential notation ────────────────────────────────── | COMMENT |
| MEDIUM | core/functions/printf.rs | 967 | // ── Fixed-point notation ────────────────────────────────── | COMMENT |
| MEDIUM | core/functions/printf.rs | 1247 | // ── Main entry point ──────────────────────────────────────────── | COMMENT |
| MEDIUM | core/functions/printf.rs | 1682 | // ── Bug fix regression tests ──────────────────────────────────── | COMMENT |
| MEDIUM | core/benches/struct_union_benchmark.rs | 69 | // ── SELECT one field: flat column vs struct field ──────────────────────── | COMMENT |
| MEDIUM | core/benches/struct_union_benchmark.rs | 118 | // ── SELECT two fields: flat columns vs struct fields ──────────────────── | COMMENT |
| MEDIUM | core/benches/struct_union_benchmark.rs | 165 | // ── WHERE filter: flat column vs struct field ─────────────────────────── | COMMENT |
| MEDIUM | core/benches/struct_union_benchmark.rs | 215 | // ── INSERT: flat row vs struct_pack row ───────────────────────────────── | COMMENT |
| MEDIUM | core/benches/struct_union_benchmark.rs | 274 | // ── Union extract vs flat column read ────────────────────────────────── | COMMENT |
| MEDIUM | core/benches/struct_union_benchmark.rs | 314 | // ── Union tag scan vs typeof() on flat column ────────────────────────── | COMMENT |
| MEDIUM | core/benches/struct_union_benchmark.rs | 361 | // ── criterion wiring ─────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/integration/stmt_journal.rs | 32 | // ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/integration/stmt_journal.rs | 34 | // ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/integration/stmt_journal.rs | 188 | // ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/integration/stmt_journal.rs | 190 | // ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/integration/stmt_journal.rs | 292 | // ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tests/integration/stmt_journal.rs | 294 | // ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | tests/integration/stmt_journal.rs | 345 | // ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | tests/integration/stmt_journal.rs | 347 | // ────────────────────────────────────────────────────────── | COMMENT |
| 52 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | testing/sqltests/docs/adding-backends.md | 271 | except Exception as e: | CODE |
| LOW⚡ | testing/sqltests/docs/adding-backends.md | 276 | 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 | …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 |
| MEDIUM | …ithesis/stress-composer/parallel_driver_alter_table.py | 12 | print(f"Error connecting to database: {e}") | CODE |
| LOW | …ithesis/stress-composer/parallel_driver_alter_table.py | 33 | except Exception as e: | CODE |
| LOW | …ithesis/stress-composer/parallel_driver_alter_table.py | 137 | except Exception as e: | CODE |
| LOW | …g/antithesis/stress-composer/parallel_driver_delete.py | 12 | except Exception as e: | CODE |
| MEDIUM | …g/antithesis/stress-composer/parallel_driver_delete.py | 13 | print(f"Error connecting to database: {e}") | CODE |
| LOW | …g/antithesis/stress-composer/parallel_driver_delete.py | 36 | except Exception as e: | CODE |
| LOW | …g/antithesis/stress-composer/parallel_driver_update.py | 12 | except Exception as e: | CODE |
| MEDIUM | …g/antithesis/stress-composer/parallel_driver_update.py | 13 | print(f"Error connecting to database: {e}") | CODE |
| LOW | …g/antithesis/stress-composer/parallel_driver_update.py | 36 | except Exception as e: | CODE |
| LOW | …esis/stress-composer/parallel_driver_wal_checkpoint.py | 9 | except Exception as e: | CODE |
| LOW | …esis/stress-composer/parallel_driver_wal_checkpoint.py | 37 | except Exception as e: | CODE |
| LOW | …ntithesis/stress-composer/parallel_driver_savepoint.py | 13 | except Exception as e: | CODE |
| MEDIUM | …ntithesis/stress-composer/parallel_driver_savepoint.py | 14 | print(f"Error connecting to database: {e}") | CODE |
| LOW | …ntithesis/stress-composer/parallel_driver_savepoint.py | 35 | except Exception as e: | CODE |
| LOW⚡ | testing/antithesis/stress-composer/first_setup.py | 29 | except Exception as e: | CODE |
| MEDIUM⚡ | testing/antithesis/stress-composer/first_setup.py | 30 | print(f"Error connecting to database: {e}") | CODE |
| LOW⚡ | testing/antithesis/stress-composer/first_setup.py | 39 | except Exception as e: | CODE |
| MEDIUM⚡ | testing/antithesis/stress-composer/first_setup.py | 40 | print(f"Error connecting to database: {e}") | CODE |
| LOW⚡ | …thesis/stress-composer/parallel_driver_create_table.py | 12 | except Exception as e: | CODE |
| MEDIUM⚡ | …thesis/stress-composer/parallel_driver_create_table.py | 13 | print(f"Error connecting to database: {e}") | CODE |
| LOW⚡ | …thesis/stress-composer/parallel_driver_create_table.py | 22 | except Exception as e: | CODE |
| LOW | …thesis/stress-composer/parallel_driver_create_table.py | 138 | except Exception as e: | STRING |
| LOW | …antithesis/stress-composer/parallel_driver_rollback.py | 12 | except Exception as e: | CODE |
| MEDIUM | …antithesis/stress-composer/parallel_driver_rollback.py | 13 | print(f"Error connecting to database: {e}") | CODE |
| LOW | …antithesis/stress-composer/parallel_driver_rollback.py | 32 | except Exception as e: | CODE |
| LOW | …tithesis/stress-composer/parallel_driver_drop_table.py | 10 | except Exception as e: | CODE |
| MEDIUM | …tithesis/stress-composer/parallel_driver_drop_table.py | 11 | print(f"Error connecting to database: {e}") | CODE |
| LOW | …tithesis/stress-composer/parallel_driver_drop_table.py | 28 | except Exception as e: | CODE |
| LOW | …g/antithesis/stress-composer/parallel_driver_insert.py | 12 | except Exception as e: | CODE |
| MEDIUM | …g/antithesis/stress-composer/parallel_driver_insert.py | 13 | print(f"Error connecting to database: {e}") | CODE |
| LOW | …g/antithesis/stress-composer/parallel_driver_insert.py | 32 | except Exception as e: | CODE |
| 127 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| 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 | 127 | def test_multi_way_hash_joins(turso: TestTursoShell): | CODE |
| LOW | testing/cli_tests/memory.py | 184 | def test_hash_join_with_index_preference(turso: TestTursoShell): | CODE |
| LOW | testing/cli_tests/memory.py | 208 | def test_hash_join_star_pattern_fallback(turso: TestTursoShell): | CODE |
| LOW | testing/cli_tests/memory.py | 228 | def test_hash_join_outer_join_exclusion(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 | 97 | def test_switch_back_to_in_memory(): | STRING |
| LOW | testing/cli_tests/cli_test_cases.py | 163 | def test_multi_line_single_line_comments_succession(): | STRING |
| LOW | testing/cli_tests/cli_test_cases.py | 232 | def test_import_csv_create_table_from_header(): | CODE |
| LOW | testing/cli_tests/cli_test_cases.py | 278 | def test_update_with_limit_and_offset(): | CODE |
| LOW | testing/cli_tests/cli_test_cases.py | 294 | def test_insert_default_values(): | CODE |
| LOW | testing/cli_tests/cli_test_cases.py | 336 | def test_copy_memory_db_to_file(): | CODE |
| LOW | testing/cli_tests/cli_test_cases.py | 374 | def test_tables_with_attached_db(): | CODE |
| LOW | scripts/update-version.py | 267 | def create_git_commit_and_tag(version): | CODE |
| LOW | scripts/merge-pr.py | 109 | def strip_pr_template_from_body(body: str, template_path=".github/pull_request_template.md") -> str: | CODE |
| LOW | scripts/corruption_bisecter.py | 21 | def run_sql_and_do_integrity_check( | CODE |
| LOW | scripts/antithesis/test_diff_to_targeted_coverage.py | 53 | def test_added_line_starting_with_plus_is_not_a_header(): | STRING |
| LOW | scripts/antithesis/test_diff_to_targeted_coverage.py | 59 | def test_non_rust_files_are_excluded(): | STRING |
| LOW⚡ | scripts/corruption-debug-tools/find_corrupt_frame.py | 61 | def binary_search_corrupt_frame(db_path: str, wal_path: str, verbose: bool = False) -> int: | CODE |
| LOW | bindings/react-native/src/Database.ts | 41 | function getReservedBytesForCipher(encryption: EncryptionOpts | undefined): number { | CODE |
| LOW | bindings/python/tests/test_database_sync_aio.py | 127 | async def test_partial_sync_segment_size(): | CODE |
| LOW | bindings/python/tests/test_database_sync_aio.py | 157 | async def test_partial_sync_prefetch(): | CODE |
| LOW⚡ | bindings/python/tests/test_database.py | 1338 | def test_executemany_requires_dml(provider): | STRING |
| LOW⚡ | bindings/python/tests/test_database.py | 1347 | def test_execute_multiple_statements_prohibited(provider): | STRING |
| LOW⚡ | bindings/python/tests/test_database.py | 1356 | def test_description_none_after_insert(provider): | STRING |
| LOW⚡ | bindings/python/tests/test_database.py | 1366 | def test_rowcount_select_is_minus_one(provider): | STRING |
| LOW⚡ | bindings/python/tests/test_database.py | 1606 | def test_named_params_reused_placeholder(provider): | STRING |
| LOW⚡ | bindings/python/tests/test_database.py | 1615 | def test_named_params_extra_key_ignored(provider): | STRING |
| LOW⚡ | bindings/python/tests/test_database.py | 1624 | def test_executemany_named_params_dicts(provider): | STRING |
| LOW | bindings/python/tests/test_database.py | 63 | def test_fetchall_select_all_users(provider, setup_database): | STRING |
| LOW | bindings/python/tests/test_database.py | 76 | def test_fetchall_select_user_ids(provider): | STRING |
| LOW | bindings/python/tests/test_database.py | 89 | def test_in_memory_fetchone_select_all_users(provider): | STRING |
| LOW | bindings/python/tests/test_database.py | 124 | def test_fetchone_select_all_users(provider): | STRING |
| LOW | bindings/python/tests/test_database.py | 141 | def test_fetchone_select_max_user_id(provider): | STRING |
| LOW | bindings/python/tests/test_database.py | 244 | def test_cursor_rowcount_insert(provider): | STRING |
| LOW | bindings/python/tests/test_database.py | 256 | def test_cursor_rowcount_update(provider): | STRING |
| LOW | bindings/python/tests/test_database.py | 269 | def test_cursor_rowcount_delete(provider): | STRING |
| LOW | bindings/python/tests/test_database.py | 344 | def test_connection_executemany(provider): | STRING |
| LOW | bindings/python/tests/test_database.py | 357 | def test_connection_executescript(provider): | STRING |
| LOW | bindings/python/tests/test_database.py | 425 | def test_executemany_with_parameters(provider): | STRING |
| LOW | bindings/python/tests/test_database.py | 471 | def test_insert_returning_partial_fetch(provider): | STRING |
| LOW | bindings/python/tests/test_database.py | 491 | def test_conflict_clause_ignore(provider): | STRING |
| LOW | bindings/python/tests/test_database.py | 506 | def test_conflict_clause_replace(provider): | STRING |
| LOW | bindings/python/tests/test_database.py | 521 | def test_conflict_clause_rollback(provider): | STRING |
| LOW | bindings/python/tests/test_database.py | 556 | def test_alter_table_add_column(provider): | STRING |
| LOW | bindings/python/tests/test_database.py | 856 | def test_transaction_begin_commit(provider): | STRING |
| LOW | bindings/python/tests/test_database.py | 873 | def test_transaction_begin_rollback(provider): | STRING |
| LOW | bindings/python/tests/test_database.py | 890 | def test_multiple_cursors_same_connection(provider): | STRING |
| LOW | bindings/python/tests/test_database.py | 908 | def test_cursor_description_before_execute(provider): | STRING |
| LOW | bindings/python/tests/test_database.py | 923 | def test_cursor_arraysize_default(provider): | STRING |
| LOW | bindings/python/tests/test_database.py | 1118 | def test_is_not_null_operator(provider): | STRING |
| LOW | bindings/python/tests/test_database.py | 1189 | def test_upper_lower_functions(provider): | STRING |
| LOW | bindings/python/tests/test_database.py | 1249 | def test_create_table_if_not_exists(provider): | STRING |
| LOW | bindings/python/tests/test_database.py | 1263 | def test_drop_table_if_exists(provider): | STRING |
| 109 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | core/storage/btree.rs | 5952 | // Step 1: Move cursor to the largest key in the left subtree. | COMMENT |
| LOW | core/storage/btree.rs | 6020 | // Step 2: Replace the cell in the parent (interior) page. | COMMENT |
| LOW | core/storage/btree.rs | 6039 | // Step 3: Delete the predecessor cell from the leaf page. | COMMENT |
| LOW⚡ | core/mvcc/database/tests.rs | 15773 | // Step 2: Restart (simulates server redeploy) | COMMENT |
| LOW⚡ | core/mvcc/database/tests.rs | 15776 | // Step 3: Create more tables + insert into old tables, then checkpoint | COMMENT |
| LOW⚡ | core/mvcc/database/tests.rs | 15793 | // Step 4: Checkpoint - all tables get positive root pages, log truncated | COMMENT |
| LOW⚡ | core/mvcc/database/tests.rs | 15796 | // Step 5: More writes after checkpoint (un-checkpointed, in the log) | COMMENT |
| LOW | core/mvcc/database/tests.rs | 15760 | // Step 1: Create many tables, insert data, checkpoint | COMMENT |
| LOW | core/mvcc/database/tests.rs | 15810 | // Step 6: Restart again - log replay should not panic | COMMENT |
| LOW | core/mvcc/database/tests.rs | 17773 | // Step 1: open normally so PRAGMA journal_mode=mvcc creates the logical log. | COMMENT |
| LOW | core/mvcc/database/tests.rs | 17795 | // Step 3: re-open with the busy-on-log_tx storage wrapper. | COMMENT |
| LOW | core/mvcc/database/tests.rs | 17825 | // Step 3: open a CONCURRENT tx, do an INSERT, then arm log_tx Busy. | COMMENT |
| LOW | core/mvcc/database/tests.rs | 17841 | // Step 4: from another CONCURRENT tx, do an INSERT; the INSERT should go through. | COMMENT |
| LOW⚡ | tests/integration/storage/header_version.rs | 304 | // Step 1: Create a WAL mode database with rusqlite | COMMENT |
| LOW⚡ | tests/integration/storage/header_version.rs | 307 | // Step 2: Open with limbo WITHOUT MVCC to create WAL data, then close without checkpointing | COMMENT |
| LOW | tests/integration/storage/header_version.rs | 341 | // Step 3: Reopen with MVCC enabled and try to switch via PRAGMA | COMMENT |
| LOW⚡ | tests/integration/storage/header_version.rs | 413 | // Step 1: Create a WAL mode database and convert to MVCC | COMMENT |
| LOW⚡ | tests/integration/storage/header_version.rs | 416 | // Step 2: Open and switch to MVCC mode via PRAGMA, then add some data | COMMENT |
| LOW | tests/integration/storage/header_version.rs | 449 | // Step 3: Reopen and switch to WAL mode via PRAGMA | COMMENT |
| LOW | tests/integration/query_processing/encryption.rs | 608 | // Step 2: re-open with correct key (this uses the DATABASE_MANAGER cache) | COMMENT |
| LOW | tests/integration/query_processing/encryption.rs | 646 | // Step 3: Opening with wrong key succeeds, but reading data fails with decryption error | COMMENT |
| LOW | tests/integration/query_processing/encryption.rs | 688 | // Step 4: Opening without encryption options should fail immediately | COMMENT |
| LOW | tests/integration/query_processing/encryption.rs | 710 | // 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/sqltests/docs/adding-backends.md | 87 | ### Step 1: Create the Backend File | COMMENT |
| LOW | testing/sqltests/docs/adding-backends.md | 239 | ### Step 2: Create the Bridge Script | COMMENT |
| LOW⚡ | testing/sqltests/docs/adding-backends.md | 284 | ### Step 3: Register the Backend | COMMENT |
| LOW | testing/sqltests/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 |
| LOW | perf/tpc-h/README.md | 12 | ## Step 1: Run the benchmarks | COMMENT |
| LOW | perf/tpc-h/README.md | 28 | ## Step 2: Plot the results | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| 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 | 522 | turso.run_test_fn("delete from t limit 96;", null, "can delete 96 rows") | STRING |
| HIGH⚡ | testing/cli_tests/extensions.py | 524 | turso.run_test_fn("update t set key = '100' where 1;", null, "where clause evaluates properly") | STRING |
| HIGH | testing/cli_tests/extensions.py | 867 | null, | STRING |
| HIGH | testing/cli_tests/extensions.py | 895 | turso.run_test_fn("DROP TABLE csv;", null, "Drop CSV table") | STRING |
| HIGH | examples/python/sync_example.py | 70 | conn.push() | CODE |
| HIGH | bindings/python/tests/test_database_sync_aio.py | 65 | await conn.push() | CODE |
| HIGH | bindings/python/tests/test_database_sync_aio.py | 92 | 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 | 92 | conn.push() | CODE |
| HIGH | bindings/python/turso/sqlalchemy/dialect.py | 352 | sync.push() # Push local changes | STRING |
| HIGH | bindings/python/turso/sqlalchemy/dialect.py | 509 | sync.push() | STRING |
| HIGH | bindings/python/turso/sqlalchemy/__init__.py | 30 | sync.push() # Push local changes | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | core/incremental/compiler.rs | 2056 | // We need to check if it's true (non-zero) | COMMENT |
| LOW | core/translate/trigger_exec.rs | 709 | // For UPDATE OF, we need to check if any of the specified columns | COMMENT |
| LOW | core/translate/trigger_exec.rs | 752 | // For UPDATE OF, we need to check if any of the specified columns | COMMENT |
| LOW | core/translate/alter.rs | 2605 | // We need to check if the column exists in the table being renamed | COMMENT |
| LOW | core/translate/expr/translator.rs | 232 | // If LHS is NULL, we need to check if ephemeral is empty first. | COMMENT |
| LOW | core/storage/btree.rs | 5952 | // Step 1: Move cursor to the largest key in the left subtree. | COMMENT |
| LOW | core/storage/btree.rs | 6020 | // Step 2: Replace the cell in the parent (interior) page. | COMMENT |
| LOW | core/storage/btree.rs | 6039 | // Step 3: Delete the predecessor cell from the leaf page. | COMMENT |
| LOW | core/storage/btree.rs | 8619 | // otherwise, we need to check if we have enough space | COMMENT |
| LOW | core/vdbe/execute.rs | 13673 | // Ephemeral tables have their own pager, so we need to check if this is an | COMMENT |
| LOW⚡ | core/mvcc/database/tests.rs | 15773 | // Step 2: Restart (simulates server redeploy) | COMMENT |
| LOW⚡ | core/mvcc/database/tests.rs | 15776 | // Step 3: Create more tables + insert into old tables, then checkpoint | COMMENT |
| LOW⚡ | core/mvcc/database/tests.rs | 15793 | // Step 4: Checkpoint - all tables get positive root pages, log truncated | COMMENT |
| LOW⚡ | core/mvcc/database/tests.rs | 15796 | // Step 5: More writes after checkpoint (un-checkpointed, in the log) | COMMENT |
| LOW | core/mvcc/database/tests.rs | 15760 | // Step 1: Create many tables, insert data, checkpoint | COMMENT |
| LOW | core/mvcc/database/tests.rs | 15810 | // Step 6: Restart again - log replay should not panic | COMMENT |
| LOW | core/mvcc/database/tests.rs | 17773 | // Step 1: open normally so PRAGMA journal_mode=mvcc creates the logical log. | COMMENT |
| LOW | core/mvcc/database/tests.rs | 17795 | // Step 3: re-open with the busy-on-log_tx storage wrapper. | COMMENT |
| LOW | core/mvcc/database/tests.rs | 17825 | // Step 3: open a CONCURRENT tx, do an INSERT, then arm log_tx Busy. | COMMENT |
| LOW | core/mvcc/database/tests.rs | 17841 | // Step 4: from another CONCURRENT tx, do an INSERT; the INSERT should go through. | COMMENT |
| LOW⚡ | tests/integration/storage/header_version.rs | 304 | // Step 1: Create a WAL mode database with rusqlite | COMMENT |
| LOW⚡ | tests/integration/storage/header_version.rs | 307 | // Step 2: Open with limbo WITHOUT MVCC to create WAL data, then close without checkpointing | COMMENT |
| LOW | tests/integration/storage/header_version.rs | 341 | // Step 3: Reopen with MVCC enabled and try to switch via PRAGMA | COMMENT |
| LOW⚡ | tests/integration/storage/header_version.rs | 413 | // Step 1: Create a WAL mode database and convert to MVCC | COMMENT |
| LOW⚡ | tests/integration/storage/header_version.rs | 416 | // Step 2: Open and switch to MVCC mode via PRAGMA, then add some data | COMMENT |
| LOW | tests/integration/storage/header_version.rs | 449 | // Step 3: Reopen and switch to WAL mode via PRAGMA | COMMENT |
| LOW | tests/integration/query_processing/encryption.rs | 608 | // Step 2: re-open with correct key (this uses the DATABASE_MANAGER cache) | COMMENT |
| LOW | tests/integration/query_processing/encryption.rs | 646 | // Step 3: Opening with wrong key succeeds, but reading data fails with decryption error | COMMENT |
| LOW | tests/integration/query_processing/encryption.rs | 688 | // Step 4: Opening without encryption options should fail immediately | COMMENT |
| LOW | tests/integration/query_processing/encryption.rs | 710 | // 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/benches/json_benchmark.rs | 43 | r#"[{"metadata":{"title":"Standard JSON Test File","description":"A complex JSON file for testing parsers an | CODE |
| LOW⚡ | core/benches/json_benchmark.rs | 43 | r#"[{"metadata":{"title":"Standard JSON Test File","description":"A complex JSON file for testing parsers an | CODE |
| LOW⚡ | core/benches/json_benchmark.rs | 43 | r#"[{"metadata":{"title":"Standard JSON Test File","description":"A complex JSON file for testing parsers an | CODE |
| LOW⚡ | core/benches/json_benchmark.rs | 43 | r#"[{"metadata":{"title":"Standard JSON Test File","description":"A complex JSON file for testing parsers an | CODE |
| LOW⚡ | core/benches/json_benchmark.rs | 43 | r#"[{"metadata":{"title":"Standard JSON Test File","description":"A complex JSON file for testing parsers an | CODE |
| LOW | core/benches/json_benchmark.rs | 69 | "street": "123 Main St", | CODE |
| LOW | core/benches/json_benchmark.rs | 708 | "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 | 107 | "INSERT INTO users (email) VALUES ('user@example.com')", | CODE |
| LOW | serverless/javascript/README.md | 108 | "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/manual.md | 1133 | UPDATE users SET name='John Doe' WHERE id=1; | CODE |
| LOW | docs/language-reference/book/print.html | 4458 | INSERT INTO customers VALUES (1, 'Alice', 'alice@example.com', '555-0100'); | CODE |
| LOW | docs/language-reference/book/print.html | 5552 | INSERT INTO contacts VALUES ('Bob', '555-1234', NULL); | CODE |
| LOW | docs/language-reference/book/print.html | 5602 | INSERT INTO contacts VALUES ('Bob', '555-1234', NULL); | CODE |
| LOW | docs/language-reference/book/print.html | 7785 | INSERT INTO contacts VALUES (1, 'Alice', '["555-0100","555-0101"]'); | CODE |
| LOW | docs/language-reference/book/print.html | 7786 | INSERT INTO contacts VALUES (2, 'Bob', '["555-0200"]'); | CODE |
| LOW⚡ | testing/conformance/javascript/__test__/async.test.js | 434 | { sql: "INSERT INTO users(name, email) VALUES (?, ?)", args: ["Joey", "joey@example.org"] }, | CODE |
| LOW⚡ | testing/conformance/javascript/__test__/async.test.js | 435 | { sql: "INSERT INTO users(name, email) VALUES (?, ?)", args: ["Sally", "sally@example.org"] }, | CODE |
| LOW⚡ | testing/conformance/javascript/__test__/async.test.js | 436 | { 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 | 447 | { name: "Joey", email: "joey@example.org" }, | CODE |
| LOW⚡ | testing/conformance/javascript/__test__/async.test.js | 448 | { name: "Sally", email: "sally@example.org" }, | CODE |
| LOW⚡ | testing/conformance/javascript/__test__/async.test.js | 449 | { name: "Junior", email: "junior@example.org" }, | CODE |
| LOW⚡ | testing/conformance/javascript/__test__/async.test.js | 556 | { name: "Joey", email: "joey@example.org" }, | CODE |
| LOW⚡ | testing/conformance/javascript/__test__/async.test.js | 557 | { name: "Sally", email: "sally@example.org" }, | CODE |
| LOW⚡ | testing/conformance/javascript/__test__/async.test.js | 558 | { name: "Junior", email: "junior@example.org" }, | CODE |
| LOW⚡ | testing/conformance/javascript/__test__/async.test.js | 579 | { name: "Joey", email: "joey@example.org" }, | CODE |
| LOW⚡ | testing/conformance/javascript/__test__/async.test.js | 580 | { name: "Sally", email: "sally@example.org" }, | CODE |
| LOW⚡ | testing/conformance/javascript/__test__/async.test.js | 581 | { 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 | 177 | t.is(row.email, "alice@example.org"); | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 417 | { sql: "UPDATE users SET email = ? WHERE id = 1", args: ["alice2@example.org"] }, | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 665 | { id: 1, name: "Alice", email: "alice@example.org" }, | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 673 | const expected = [{ id: 1, name: "Alice", email: "alice@example.org" }]; | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 724 | t.deepEqual(await stmt.raw().get(), [1, 'Alice', 'alice@example.org']); | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 769 | t.deepEqual(await stmt.raw().get(1), [1, "Alice", "alice@example.org"]); | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 847 | { id: 1, name: "Alice", email: "alice@example.org" }, | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 861 | [1, "Alice", "alice@example.org"], | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 879 | { id: 1, name: "Alice", email: "alice@example.org" }, | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 890 | [1, "Alice", "alice@example.org"], | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 912 | [1n, "Alice", "alice@example.org"], | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 923 | [1n, "Alice", "alice@example.org"], | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 1218 | db.exec(`INSERT INTO users (name, email) VALUES ('User${i}', 'user${i}@example.org')`) | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 1323 | await insert.run(["TxCommit", "tx-commit@example.org"]); | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 1347 | await insert.run(["TxRollback", "tx-rollback@example.org"]); | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 1365 | await insert.run(["WillRollback", "will-rollback@example.org"]); | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 1369 | await duplicateInsert.run([1, "DuplicateId", "duplicate-id@example.org"]); | CODE |
| LOW | testing/conformance/javascript/__test__/async.test.js | 1385 | 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 |
| LOW⚡ | testing/conformance/javascript/__test__/sync.test.js | 157 | { name: "Junior", email: "junior@example.org" }, | CODE |
| LOW⚡ | testing/conformance/javascript/__test__/sync.test.js | 205 | { name: "Joey", email: "joey@example.org" }, | CODE |
| LOW⚡ | testing/conformance/javascript/__test__/sync.test.js | 206 | { name: "Sally", email: "sally@example.org" }, | CODE |
| LOW⚡ | testing/conformance/javascript/__test__/sync.test.js | 207 | { name: "Junior", email: "junior@example.org" }, | CODE |
| LOW | testing/conformance/javascript/__test__/sync.test.js | 12 | "INSERT INTO users (id, name, email) VALUES (1, 'Alice', 'alice@example.org')" | CODE |
| LOW | testing/conformance/javascript/__test__/sync.test.js | 224 | { sql: "INSERT INTO users (id, name, email) VALUES (?, ?, ?)", args: [3, "Carol", "carol@example.org"] }, | CODE |
| LOW | testing/conformance/javascript/__test__/sync.test.js | 272 | { sql: "INSERT INTO users (id, name, email) VALUES (?, ?, ?)", args: [10, "Dan", "dan@example.org"] }, | CODE |
| LOW | testing/conformance/javascript/__test__/sync.test.js | 273 | { sql: "INSERT INTO users (id, name, email) VALUES (?, ?, ?)", args: [1, "Dup", "dup@example.org"] }, | CODE |
| 15 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| 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 | |
| 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 | |
| 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/lib_sync.py | 1 | CODE | |
| LOW | bindings/python/turso/lib_sync_aio.py | 1 | CODE | |
| LOW | bindings/python/turso/aio/__init__.py | 1 | CODE | |
| LOW | bindings/python/turso/aio/__init__.py | 1 | CODE | |
| LOW | bindings/python/turso/aio/__init__.py | 1 | CODE | |
| LOW | bindings/python/turso/aio/sync/__init__.py | 1 | CODE | |
| LOW | bindings/python/turso/aio/sync/__init__.py | 1 | CODE | |
| LOW | bindings/python/turso/aio/sync/__init__.py | 1 | CODE | |
| LOW | bindings/python/turso/aio/sync/__init__.py | 1 | CODE | |
| LOW | bindings/python/turso/aio/sync/__init__.py | 7 | CODE | |
| LOW | bindings/python/turso/sqlalchemy/dialect.py | 9 | CODE | |
| LOW | bindings/python/turso/sqlalchemy/__init__.py | 50 | CODE | |
| LOW | bindings/python/turso/sqlalchemy/__init__.py | 50 | CODE | |
| 26 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | docs/language-reference/book/print.html | 9364 | # Create an encrypted database | COMMENT |
| MEDIUM | testing/antithesis/stress-composer/first_setup.py | 105 | # 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 | scripts/merge-pr.py | 204 | # Create a temporary file for the commit message | COMMENT |
| MEDIUM | .github/workflows/release.yml | 401 | # Create a GitHub Release while uploading all files to it | COMMENT |
| MEDIUM | bindings/python/tests/test_database.py | 33 | # 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 | 39 | # Create the blocking connection inside the worker thread once | COMMENT |
| MEDIUM | bindings/python/turso/lib_aio.py | 339 | # 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 |
| MEDIUM | perf/latency/rusqlite/gen-database.py | 17 | # Create the user table | COMMENT |
| MEDIUM | perf/latency/limbo/gen-database.py | 17 | # Create the user table | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | deny.toml | 5 | # Include all targets for comprehensive checking | COMMENT |
| MEDIUM | core/Cargo.toml | 78 | # harness resolves aristo + aristo-macros from crates.io, so no vendored mount | COMMENT |
| MEDIUM | core/translate/display.rs | 608 | // Definitely not perfect yet | COMMENT |
| MEDIUM | core/translate/emitter/mod.rs | 774 | /// utilize the same limit register, but it is initialized only once. | COMMENT |
| MEDIUM | core/mvcc/database/tests.rs | 2052 | #[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 | 5579 | /// Why this matters: Edge-case frame shapes must remain parseable to keep format handling robust. | COMMENT |
| MEDIUM | tests/integration/storage/header_version.rs | 518 | /// This ensures mode switching is robust and doesn't corrupt data | COMMENT |
| MEDIUM | tests/fuzz/mod.rs | 325 | // 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 | 184 | #[derive(Clone, PartialEq, Eq, Debug)] // do not derive Copy for Token, just use .clone() when needed | COMMENT |
| MEDIUM | cli/app.rs | 111 | #[clap(long, help = "Start MVCC concurrent transaction harness")] | COMMENT |
| MEDIUM | .github/workflows/aristo-verify.yml | 3 | # builds, and runs the conformance harness on Aretta's infrastructure and | 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 |
|---|---|---|---|---|
| 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 | 143 | CODE | |
| LOW | testing/cli_tests/test_turso_cli.py | 30 | CODE | |
| LOW | examples/python/concurrent_writes.py | 24 | CODE | |
| LOW | scripts/update-version.py | 107 | 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 | 223 | CODE | |
| LOW | bindings/python/turso/lib_sync.py | 108 | CODE | |
| LOW | bindings/python/turso/lib_sync.py | 228 | CODE | |
| LOW | bindings/python/turso/lib_sync.py | 288 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | sql_generation/model/query/select.rs | 344 | where_clause: Some(self.body.select.where_clause.0.clone().into_boxed()), | CODE |
| CRITICAL | core/mvcc/database/checkpoint_state_machine.rs | 1284 | version.0.row.id.row_id.clone(), | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | core/statement.rs | 1074 | /// ### 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 | 98 | # 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 | 701 | # Set description to None | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| 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 | 238 | def _update_meta_cache(self, description, lastrowid, rowcount) -> None: | CODE |
| LOW | bindings/python/turso/lib.py | 436 | def set_query_timeout(self, milliseconds: int) -> None: | CODE |
| LOW | bindings/python/turso/__init__.py | 29 | __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 | 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 | 420 | CODE | |
| LOW | bindings/python/turso/lib_sync_aio.py | 66 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | bindings/python/turso/sqlalchemy/dialect.py | 486 | Get the underlying turso.sync.ConnectionSync from a SQLAlchemy connection. This provides access to sync-specif | STRING |
| 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 |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | core/storage/wal.rs | 3352 | // don't forget to release the write-lock if | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | sql_generation/generation/predicate/binary.rs | 125 | escape: None, // TODO: implement | CODE |