Releases: abstra-app/json-sql
Releases · abstra-app/json-sql
v0.0.12 - Parser Fixes and CI/CD Pipeline
🐛 Bug Fixes
Parser and Lexer Improvements
-
Fixed lexer keyword matching: Keywords are no longer incorrectly identified within valid identifiers
- Example:
inventoryis now correctly parsed instead of being split intoIN+ventory - This resolves parsing errors for table/column names containing SQL keywords
- Example:
-
Fixed operator precedence: Expression parsing now correctly respects operator precedence
- Logical operators (AND, OR) now have lower precedence than comparison operators
price > 10 AND stock > 0is now correctly parsed as(price > 10) AND (stock > 0)- Fixes "Unsupported types for AND" errors
-
Added pydantic to requirements.txt: Resolves missing dependency for Pydantic model support
✨ New Features
CI/CD Pipeline
- GitHub Actions workflow with automated quality checks on every PR
- Multi-version testing: Tests run on Python 3.9, 3.10, 3.11, and 3.12
- Code linting: Ruff enforces consistent code style and PEP 8 compliance
- Type checking: Pyright catches type-related bugs
- Coverage reporting: Optional Codecov integration
Development Tools
- Added
requirements-dev.txtwith pytest, pytest-cov, ruff, and pyright - Added
ruff.tomlconfiguration for linting and formatting - Added
pyrightconfig.jsonfor type checking
🔧 Configuration Changes
-
Minimum Python version: Set to 3.9+ (was 3.8+)
- Required due to modern type hint syntax in the codebase
-
Branch protection: Configured for
mainbranch- Blocks direct pushes (PRs only)
- Requires 7 status checks to pass before merge
- Auto-deletes branches after merge
📊 Test Coverage
- ✅ 190 tests passing across 4 Python versions
- ✅ All code passes linting (Ruff)
- ✅ All code passes type checking (Pyright)
🔗 Related PRs
- #1 - Fix operator precedence and lexer keyword matching
- #2 - Add CI/CD pipeline with pytest, ruff, and pyright
📦 Installation
pip install abstra-json-sql==0.0.12🙏 Credits
🤖 Generated with Claude Code
Co-Authored-By: Claude noreply@anthropic.com
Test build 11
Full Changelog: v0.0.10...v0.0.11
Test build 10
Full Changelog: v0.0.9...v0.0.10
Test build 9
Full Changelog: v0.0.8...v0.0.9
Test build 8
Full Changelog: v0.0.7...v0.0.8
Test build 7
Full Changelog: v0.0.6...v0.0.7
Test build 6
Full Changelog: v0.0.5...v0.0.6
Test build 5
Full Changelog: v0.0.4...v0.0.5
Test build 4
Full Changelog: v0.0.3...v0.0.4
Test build 3
Full Changelog: v0.0.1...v0.0.3