This roadmap outlines planned features and improvements for DeepDiff DB, organized by weekly Saturday releases leading to production readiness.
We release a new version every Saturday. Each release includes one or more features from this roadmap, prioritized by impact and production readiness requirements.
Released: 2026-04-19
Features:
schema-diff --quietand--output-dirflags for CI/pre-commit use (issue #17) ✅- Official
.pre-commit-hooks.yamlfor the pre-commit framework ✅ - Jenkins Declarative Pipeline example ✅
- Fixed CI/CD example files to use correct JSON output structure ✅
- Documentation updated across commands, deployment guide, changelog, and roadmap ✅
Released: 2026-04-05
Features:
- GitHub OAuth author verification for
version commit(issue #77) ✅ - Documentation & website updates throughout
Released: 2026-04-01
Features:
- Schema drift detection and standalone schema migration (
schema-migrate) - Row-level data comparison with SHA-256 hashing
- Migration pack generation and transactional apply mode
- MySQL, PostgreSQL, SQLite, Microsoft SQL Server, and Oracle Database support
- Conflict detection with
ours/theirs/manualresolution strategies - Interactive
resolve-conflictscommand with--autoand--resumeflags - Per-table conflict resolution strategies with
resolutions.jsonpersistence - DROP/MODIFY COLUMN, CREATE/DROP TABLE, CREATE/DROP INDEX, ADD/DROP FOREIGN KEY
- Primary key modification and dependency-aware migration ordering
- Interactive HTML report with schema diff viewer, data diff, conflict highlighting, and SQL preview
- Structured JSON/text logging with configurable levels and file output
- Visual progress bars and throughput metrics
- Checkpoint/resume system for long-running operations
- Enhanced error handling with actionable suggestions and retry logic
- Keyset-paginated batch hashing —
--batch-size N/performance.hash_batch_size - Parallel table hashing —
--parallel N/performance.max_parallel_tables - Bounded O(batch_size) memory during hashing regardless of table size
- Per-batch memory telemetry at DEBUG log level (
alloc_mb,batch) - Oracle Database support — pure Go driver, no Instant Client required
- Git-like versioning —
version init/commit/log/diff/rollbackwith SHA-256 content-addressable commit objects and offline rollback SQL generation - NEW in v1.2.0: GitHub OAuth author verification — device flow auth in
version init; verifiedgithub:<username>used automatically inversion commit
Features Delivered:
version init— initialises.deepdiffdb/repository (objects store + HEAD file) in the working directoryversion commit— runs a full schema+data diff and stores a SHA-256 content-addressable commit object capturing both schema snapshots, drift result, and data diffversion log— walks the commit chain from HEAD with author, timestamp, and drift markersversion diff <h1> <h2>— compares dev schema snapshots of two commits and reports schema evolution (added/removed tables, column/index changes)version rollback <hash>— generates driver-aware rollback SQL offline by inverting the stored diff; same safety defaults asschema-migrate(destructive ops commented out by default);--outand--driverflags- New
internal/versionpackage:model.go,store.go,rollback.go - Sample 17: Git-like Versioning — two MySQL 8 containers, three-sprint demo, automated
demo.sh
Features Delivered:
schema-diff --quiet: suppresses all progress/informational output; automatically raises effective log level towarn; explicit--log-level debugoverridesschema-diff --output-dir <path>: overridesoutput.dirat runtime without editing the config file — essential for pre-commit hooks using temp dirs.pre-commit-hooks.yaml: official pre-commit framework hooks definition at repo root; users reference the repo directly instead of copying the shell scriptexamples/cicd/Jenkinsfile: Declarative Pipeline with masked credential injection, schema-diff, data diff, result evaluation (UNSTABLE on drift), and artifact archiving- Fixed
examples/cicd/github-actions.ymlandgitlab-ci.yml: removed references to non-existent--output-format jsonflag; updatedjqqueries to match actual JSON structure
Scope:
- GitHub OAuth author verification (issue #77) —
version initprompts GitHub device flow; verifiedgithub:<username>stored in.deepdiffdb/config(0o600); used automatically byversion commit;--skip-authfor CI;DEEPDIFFDB_GITHUB_CLIENT_IDenv var or build-time-ldflagsinjection - Documentation and website updated throughout for v1.2.0
Features Delivered:
- Structured logging system with JSON/text formats
- Log levels (DEBUG, INFO, WARN, ERROR) with configurable output
- File output support for log persistence
- Operation metrics collection with timing information
- Enhanced error handling with error codes and categories
- Rich error context with actionable suggestions
- Optional stack trace capture for debugging
- Progress tracking with bars and spinners
- Throughput calculation and performance metrics
- Checkpoint/resume system for long-running operations
--resumeflag forgen-packandapplycommands- Configuration hash validation for checkpoint safety
- Retry logic with exponential backoff for transient errors
- Comprehensive test coverage improvements (logger: 97.6%, errors: 78.6%, progress: 98.4%)
Impact: Significantly improved observability, debugging capabilities, and user experience with progress indicators and better error messages
Features Delivered:
- Interactive HTML report generation with
--htmlflag - Professional minimal UI design (GitHub/Linear inspired)
- Tab-based navigation (Schema, Data, Conflicts, Migration)
- Visual schema diff viewer:
- Collapsible sections with +/−/~ indicators
- Column and index change display
- Foreign key changes with ON DELETE/UPDATE actions
- Data diff visualization:
- Table filtering dropdown
- Expandable row keys (click to see affected primary keys)
- Conflict management:
- Resolution strategy breakdown (auto-resolved ours/theirs vs pending)
- Per-table strategy table with conflict/resolved/pending counts
- Strategy badges on each conflict (ours/theirs/manual)
- SQL migration preview with syntax highlighting
- Export to PDF functionality (via browser print)
- Self-contained HTML with embedded CSS and JavaScript
Impact: Provides comprehensive visual analysis of database differences with professional UI
Features Delivered:
- Merge strategies: ours (prod), theirs (dev), manual
- Interactive conflict resolution CLI (
resolve-conflictscommand) - Conflict resolution configuration in YAML
- Per-table conflict resolution strategies
- Automatic conflict resolution with
--autoflag - Resolution persistence with
--resumeflag - Enhanced conflict reports with resolution statistics
Impact: Reduces manual intervention for conflict resolution
Features Delivered:
- Keyset-paginated batch hashing (
WHERE pk > lastVal ORDER BY pk LIMIT N) — O(batch_size) heap at any table size --batch-size Nand--parallel NCLI flags fordiffandgen-packperformance.hash_batch_sizeandperformance.max_parallel_tablesconfig keys (defaults: 10000 / 1)- Bounded goroutine pool via
errgroup+semaphore.NewWeightedfor parallel table hashing BuildCursorQueryshared module (internal/content/cursor.go) used by both hash and pack paths- Per-batch memory telemetry at DEBUG level
- Sample 14: Streaming Large Datasets (SQLite, no Docker, seed script + Makefile)
Impact: Enables comparison of databases with millions of rows while keeping memory usage bounded and wall-clock time short
Features delivered:
- Microsoft SQL Server driver (
github.com/microsoft/go-mssqldb) - Schema introspection via
INFORMATION_SCHEMA+sys.*catalog views - MSSQL-compatible SQL generation (square-bracket quoting,
ALTER COLUMN,DROP INDEX … ON …) - FK control via
sp_msforeachtablein pack application OFFSET/FETCHpagination (noLIMIT)- Integration tests with SQL Server 2022 (testcontainers)
- Sample 15: MSSQL Support
Impact: Enterprise SQL Server users can now use DeepDiff DB in production
Features delivered:
- Oracle Database driver (
sijms/go-ora/v2) — pure Go, no Instant Client required - Schema introspection via
ALL_TAB_COLUMNS,ALL_INDEXES,ALL_CONSTRAINTS,ALL_CONS_COLUMNS - Oracle DDL generation:
ADD "col"(no COLUMN),MODIFY "col", standaloneDROP INDEX,DROP CONSTRAINT OFFSET/FETCHpagination (Oracle 12c+), double-quote identifier quoting- Optional port (defaults to 1521),
GENERATED ALWAYS AS IDENTITYfor auto-increment - Integration tests with Oracle XE 21c (testcontainers +
gvenzl/oracle-xe:21-slim-faststart) - Sample 16: Oracle Support (Docker Compose, SQLPlus init scripts, Makefile)
Impact: Enterprise Oracle users can now use DeepDiff DB in production
Features delivered:
- Multi-stage
Dockerfileanddocker-compose.example.yml; multi-arch Docker images on GHCR - GoReleaser-based release pipeline (cross-platform archives, checksums, Homebrew auto-update)
- CI/CD integration examples: GitHub Actions, GitLab CI, pre-commit hook
- Security hardening: file permissions tightened, Go 1.25.8 (fixes 2 stdlib CVEs), gosec + govulncheck in CI
- Go benchmark suite for
HashTablewith performance tuning guide MIGRATION.mdupgrade guide from v0.x to v1.0- Full Docusaurus documentation site hosted on GitHub Pages
Impact: Ready for production use with enterprise-grade reliability
-
Git-like Versioning for DB Diffs✅ Released in v1.1.0 (2026-04-01)Store diff history→version commit— SHA-256 content-addressable commit objects in.deepdiffdb/objects/Diff between any two versions→version diff <h1> <h2>— schema evolution comparisonRollback capabilities→version rollback <hash>— driver-aware rollback SQL generation— repository initialisationversion init— full commit history with drift markersversion log— branching and ASCII graphversion branch/version checkout/version tree- See Sample 17 for end-to-end demo
-
GitHub OAuth Author Verification✅ Shipping in v1.2.0 (issue #77)version initGitHub device flow authenticationversion commitreads verifiedgithub:<username>from.deepdiffdb/configBuild-time client ID injection via-ldflagsinrelease.ymlDEEPDIFFDB_GITHUB_CLIENT_IDenv var override for local use
-
CI/CD Integration✅ Released in v1.3.0 (issue #17)schema-diff --quietfor silent CI checksschema-diff --output-dirfor temp dir outputOfficial.pre-commit-hooks.yamlJenkins Declarative Pipeline exampleFixed GitHub Actions and GitLab CI example files
-
Advanced Schema Features (v1.4.0 candidate)
- View and stored procedure diff
- Trigger comparison
- Function/procedure diff
- Sequence comparison
-
Performance & Scalability (v1.4.0 candidate)
- Parallel table processing
- Distributed diff processing
- Incremental diff (only changed tables)
- Diff caching
-
Developer Experience (v1.5.0 candidate)
- VS Code extension
- CLI autocomplete
- Configuration wizard
- Interactive mode
-
Enterprise Features
- Audit logging
- Role-based access control
- API server mode
- Web dashboard
- Multi-tenant support
Conflict Resolution Strategies(v0.4)HTML Report Viewer(v0.5)Enhanced Error Handling & Logging(v0.6)Streaming Support for Large Datasets(v0.7)MSSQL Support(v0.8)- Documentation & Production Readiness
- Advanced features (post-v1.0)
- Conflict Resolution Strategies (v0.4)
- HTML Report Viewer (v0.5)
- Enhanced Error Handling & Logging (v0.6)
- Streaming Support for Large Datasets (v0.7)
- MSSQL Support (v0.8)
- Oracle Support (v0.9)
- All high-priority features implemented
- Comprehensive documentation
- Performance benchmarks documented
- Security audit completed
- At least 3 database types fully supported (5 total)
- Production deployment guide (Docker, CI/CD)
- Migration path from v0.x documented
- This roadmap is flexible and may be adjusted based on feedback and priorities
- Features may be combined or split across releases as needed
- Bug fixes and improvements are included in each release
- Community feedback is welcome and will influence priorities
If you'd like to contribute to any of these features, please:
- Check existing issues in
.github/ISSUE_TEMPLATE/ - Comment on the relevant feature issue
- Submit a pull request with your implementation
Last Updated: 2026-04-05