Skip to content

v0.10.0

Choose a tag to compare

@SpaceShaman SpaceShaman released this 04 Aug 13:40
· 206 commits to master since this release

The latest version focuses on query enhancements and code readability improvements. Here are the key changes:

New Features

  • Added support for limit and offset parameters in DBModel queries to enable pagination.

Refactoring

  • Renamed variables in the _fetch_raw_data method for better clarity.
  • Refactored the unique field check into a new _is_unique_field method for improved readability and reusability.

Tests

  • Added tests in test_pagination.py for limit and offset functionality.
  • Updated tests in test_get.py to ensure accurate validation of datetime fields.
  • Removed outdated and redundant test files.

Documentation

  • Updated README.md to include documentation for limit and offset parameters.
  • Marked limit and offset as completed in the feature list.

In summary, this update introduces pagination support, improves code readability, and ensures comprehensive testing and documentation for the new features.

Features and Roadmap

  • Define table schema using Pydantic models
  • Basic CRUD operations
    • Save data to the database
    • Read data from the database
    • Update data in the database
    • Delete data from the database
  • Relationships between tables
    • One-to-many
      • Create a tables with a foreign key
      • Save data with a foreign key
      • Read data with a foreign key
      • Update data with a foreign key
      • Delete data with a foreign key
        • Cascade
        • Set null
        • Restrict
        • Set default
        • No action
    • One-to-one
    • Many-to-many
  • Unique constraints
  • Remove table
  • Read all data from the database
  • Filter data and retrieve multiple records
    • Equal
    • Not equal
    • Greater than
    • Greater than or equal
    • Less than
    • Less than or equal
    • Like (Pattern matching with % and _)
    • Not like (Pattern matching with % and _)
    • In (List of values)
    • Not in (List of values)
    • Between (Two values)
    • Not between (Two values)
  • Protect against SQL injection
  • Order by
  • Limit and offset
  • Update table schema
  • Custom primary key
  • Bulk operations (save, update, delete)
  • Migrations

Full Changelog: v0.9.0...v0.10.0