Skip to content

ajitpratap0/GoSQLX

v1.1.0 Feature

This release adds 2 notable features for engineering teams evaluating rollout.

✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Topics

ast cli dialect go lsp mysql
+13 more
parser postgresql query-analyzer security sql sql-formatter sql-injection sql-linter sql-parser sql-validator sqlite wasm zero-copy

Summary

AI summary

Complete JOIN support (all types, USING clause) and CTE infrastructure foundation laid.

Full changelog

🚀 GoSQLX v1.1.0: Phase 1 Core SQL Enhancements

This major release delivers enterprise-grade JOIN support and establishes the foundation for Phase 2 CTE implementation.

✅ Major Features Implemented

Complete JOIN Support

  • All JOIN types: INNER, LEFT, RIGHT, FULL OUTER, CROSS, NATURAL
  • Proper join tree logic: Left-associative relationships with synthetic table references
  • USING clause: Single-column parsing (multi-column planned for Phase 2)
  • Enhanced error handling: Contextual error messages with JOIN type information

Production-Ready Quality

  • Zero race conditions: Validated through comprehensive concurrent testing
  • High performance: 2.2M operations/second maintained
  • Comprehensive tests: 15+ JOIN scenarios including error cases
  • 100% test coverage: All JOIN functionality thoroughly tested

🏗️ Phase 2 Foundation Laid

CTE Infrastructure Ready

  • AST structures: WithClause and CommonTableExpr fully defined
  • Token support: WITH, RECURSIVE, UNION, EXCEPT, INTERSECT keywords added
  • Parser integration points: Documented TODO markers for Phase 2 completion

📊 Performance Metrics

  • Operations/sec: 2.2M (JOIN queries)
  • Memory efficiency: 60-80% reduction with object pooling
  • Concurrency: Race-free under 20,000+ concurrent operations
  • SQL compatibility: Multi-dialect support (PostgreSQL, MySQL, SQL Server, Oracle, SQLite)

🔧 Technical Highlights

JOIN Tree Logic

-- Properly handles: FROM A JOIN B JOIN C as ((A JOIN B) JOIN C)
SELECT * FROM users u 
LEFT JOIN orders o ON u.id = o.user_id 
INNER JOIN products p ON o.product_id = p.id

Error Context

  • "expected JOIN after LEFT, got IDENT"
  • "expected table name after LEFT JOIN, got ON"
  • "error parsing ON condition for INNER JOIN: unexpected token"

📖 What's Next (Phase 2)

  • Common Table Expressions (CTEs) with RECURSIVE support
  • Set operations: UNION, EXCEPT, INTERSECT with ALL modifier
  • Multi-column USING clause support
  • Advanced subquery contexts

🔗 Links


Full Changelog: v1.0.2...v1.1.0

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track ajitpratap0/GoSQLX

Get notified when new releases ship.

Sign up free

About ajitpratap0/GoSQLX

7 SQL tools (validate, format, parse, lint, security scan, metadata extraction, full analysis) over Streamable HTTP. Public remote server at mcp.gosqlx.dev - no install needed. 1.25M+ ops/sec, 6 SQL dialects.

All releases →

Related context

Beta — feedback welcome: [email protected]