Skip to content

v2024.11.05

Latest
Compare
Choose a tag to compare
@adriamontoto adriamontoto released this 05 Nov 16:32
· 33 commits to master since this release
f3d8db3

Changelog

Release Date: 2024-11-05

✨ Features

  • SQL Converter Enhancements:

    • Added column_mapping parameter for frontend-backend column name mapping.
    • Implemented not criteria logic.
    • Enabled criteria to generate raw SQL queries.
    • Supported selecting all columns with *.
    • Added not like operator.
    • Supported all filter operators.
    • Enhanced SQL injection prevention for where clauses, table, column, and criteria field injections.
  • Refinements in Criteria Operations:

    • Changed filter operators to SQL-specific operators.
    • Enabled and and or operators to handle left and right orders.
    • Added has_filters and has_orders detection methods.
    • Converted orders auxiliary variable from list to string for optimization.
  • Enhanced Test and Mocking Utilities:

    • Created test utility classes for criteria, order, and filter.
    • Developed tests for not criteria and column mapping.

🔨 Refactoring

  • SQL Conversion and Filtering:

    • Removed converter interface.
    • Simplified where condition creation in SQL converter.
    • Moved recursive logic in SQL converter to a dedicated method.
  • Miscellaneous Refactors:

    • Updated enums to uppercase.
    • Added nosec comments for security compliance.
    • Updated order operations for improved clarity.

🐛 Bug Fixes

  • Criteria and Filter Fixes:
    • Fixed access issues with or and and criteria filters.
    • Resolved dict.get default argument errors.
    • Adjusted NOT operator placement for clarity.
    • Ensured filter operator enum uniqueness.
    • Corrected requirements parameter handling in Makefile.

👷🏻 CI/CD and Build Improvements

  • Pipeline Updates:

    • Updated CI to use Python 3.13.
    • Refined pre-commit hooks.
    • Added environment variables for CI workflows.
    • Enforced exact version usage in workflows.
    • Introduced code quality checks and activated workflows only for PRs to master.
    • Improved dependency versioning flexibility.
  • Build Changes:

    • Added py.typed for type-checking.
    • Updated Faker and sqlglot as development dependencies.
    • Introduced date-based versioning and development dependency upgrades.

📚 Documentation

  • Readme and Docstrings:
    • Added usage examples in README.
    • Enhanced SQL converter and criteria docstrings with examples.

🧪 Tests

  • Implemented additional tests for not criteria logic.
  • Verified column mapping and SQL injection prevention measures.

Full Changelog: v2024.09.07...v2024.11.05