Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
66 commits
Select commit Hold shift + click to select a range
8a28a38
feat(core): Implement TypeDispatcher utility
cofin Feb 2, 2026
57261c2
refactor(core): Optimize is_statement_filter with fast attribute check
cofin Feb 2, 2026
1fa5d92
perf(core): Optimize _should_auto_detect_many to O(1)
cofin Feb 2, 2026
addf573
perf(core): Cache get_default_config() singleton
cofin Feb 2, 2026
5620ac2
test(core): Verify cache key stability
cofin Feb 2, 2026
bda9888
perf(sqlite): Optimize resolve_rowcount to avoid Protocol check
cofin Feb 2, 2026
79af95a
chore: Add pipeline benchmark script
cofin Feb 2, 2026
66032f0
perf: Add benchmarks for SQLite and SQLSpec performance comparisons
cofin Feb 2, 2026
aa0bab3
flow(revise): core-hotpath-opt - Add deep dive tasks for sqlglot and …
cofin Feb 2, 2026
3b0a06c
docs(flow): core-hotpath-opt - Update plan and learnings with optimiz…
cofin Feb 2, 2026
f1502a3
perf(core): Deep dive optimizations for hot path
cofin Feb 2, 2026
4d0d4e9
perf(core): Optimize hot paths for 20x → 15.5x slowdown
cofin Feb 2, 2026
92856d8
fix: Add type annotations to fix Pylance errors in _processor.py
cofin Feb 2, 2026
3cc4133
perf(benchmarks): Add SQLGlot overhead attribution benchmarks
cofin Feb 2, 2026
a7f8f00
perf(core): track compiled cache flag
cofin Feb 2, 2026
40f6cff
perf(core): rebind cached parameters
cofin Feb 2, 2026
3b74785
perf(core): validate cached parameter structure
cofin Feb 2, 2026
7703a78
chore(lint): fix lint errors
cofin Feb 2, 2026
d81e255
chore(types): fix type checking
cofin Feb 2, 2026
e9b2029
perf(bench): profile cache hit path
cofin Feb 2, 2026
d7d10f1
fix(core): bypass static compile cache rebind
cofin Feb 2, 2026
fd6210f
rm ignore files
cofin Feb 2, 2026
7f8d1b1
fix(core): recompile when filters change
cofin Feb 2, 2026
cf66a6f
fix(core): recompile when is_many toggles
cofin Feb 3, 2026
cda4c47
test(core): ensure processed state gc
cofin Feb 3, 2026
70d2e72
feat(core): add object pool primitive
cofin Feb 3, 2026
8760742
feat(core): add thread-local pool registry
cofin Feb 3, 2026
6736a23
feat(core): add SQL reset for pooling
cofin Feb 3, 2026
195c5e1
feat(core): add SQL pooled flag
cofin Feb 3, 2026
c8edf5c
feat(core): pool parameter-only SQL copies
cofin Feb 3, 2026
08ac00b
feat(driver): release pooled SQL after execution
cofin Feb 3, 2026
72aa802
feat(core): add ProcessedState reset
cofin Feb 3, 2026
d834c25
feat(core): pool ProcessedState instances
cofin Feb 3, 2026
6d84f50
feat(bench): add tracemalloc allocation helper
cofin Feb 3, 2026
a475ca2
test(core): add pool stability stress
cofin Feb 3, 2026
0bebe06
test(core): add pool thread isolation
cofin Feb 3, 2026
9b26e24
chore: apply lint fixes
cofin Feb 3, 2026
e28a9be
feat(driver): add fast path eligibility flag
cofin Feb 3, 2026
576929a
feat(driver): add fast path query cache
cofin Feb 3, 2026
fb76add
feat(driver): add fast path execution helper
cofin Feb 3, 2026
189679b
feat(driver): add fast-path execute routing
cofin Feb 3, 2026
64ba8b7
feat(driver): cache fast-path artifacts
cofin Feb 3, 2026
bada0da
feat(bench): add fast-path benchmark
cofin Feb 3, 2026
6945d3a
feat(driver): use raw sqlite fast path
cofin Feb 3, 2026
2a6f547
feat(driver): add fast-path binder hook
cofin Feb 3, 2026
aac62ab
feat(config): auto-enable sqlspec_rs binder
cofin Feb 3, 2026
1ac6fbd
fix(driver): add ProcessedState type import
cofin Feb 3, 2026
1374bb7
fix(driver): remove stray class body literal
cofin Feb 3, 2026
d1ea772
chore: correct mypyc build
cofin Feb 3, 2026
e5ae7d4
Refactor and optimize code across multiple modules
cofin Feb 3, 2026
6cc2eb2
refactor(driver): extract QueryCache to _query_cache.py
cofin Feb 3, 2026
61d1ff9
refactor(driver): rename fast-path methods to qc_* convention
cofin Feb 3, 2026
3833499
refactor(driver): extract qc_prepare to consolidate sync/async duplic…
cofin Feb 3, 2026
f344e91
refactor(driver): simplify qc_prepare hot path to 2 checks
cofin Feb 3, 2026
e11d661
refactor(driver): remove adapter-specific qc_execute overrides
cofin Feb 4, 2026
948e704
feat(bench): add benchmark CLI for performance testing
euri10 Feb 4, 2026
767c7c9
refactor(driver): streamline method signatures for consistency
cofin Feb 4, 2026
fd6d89c
fix(types): suppress pyright errors in query cache fast-path
cofin Feb 4, 2026
057ced8
chore: remove sqlspec_rs hooks and fix pyright errors
cofin Feb 4, 2026
0560903
feat(bench): add aiosqlite benchmarks
cofin Feb 5, 2026
194ff73
fix(bench): proper pool cleanup for aiosqlite scenarios
cofin Feb 5, 2026
028e00f
perf(aiosqlite): optimize pool acquire/release hot path
cofin Feb 5, 2026
2fa435d
feat(bench): add duckdb benchmark scenarios
cofin Feb 5, 2026
3d82a19
chore(deps): move benchmark deps to benchmarks group
cofin Feb 5, 2026
473f2a8
chore(deps): simplify benchmarks group
cofin Feb 5, 2026
5c16498
chore: linting
cofin Feb 5, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ repos:
- id: mixed-line-ending
- id: trailing-whitespace
- repo: https://github.com/charliermarsh/ruff-pre-commit
rev: "v0.14.14"
rev: "v0.15.0"
hooks:
- id: ruff
args: ["--fix"]
Expand Down
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ spanner = ["google-cloud-spanner"]
uuid = ["uuid-utils"]

[dependency-groups]
benchmarks = ["sqlalchemy[asyncio]", "psutil", "types-psutil", "rich", "rich-click>=1.9.0", "duckdb"]
benchmarks = ["sqlalchemy[asyncio]", "psutil", "types-psutil", "duckdb-engine>=0.17.0"]
build = ["bump-my-version", "hatch-mypyc", "pydantic-settings"]
dev = [
{ include-group = "extras" },
Expand Down
Empty file added scripts/__init__.py
Empty file.
Loading
Loading