Abarorm

Latest version: v5.0.1

Safety actively analyzes 690721 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 3

5.0.0

Overview

We are excited to announce the release of **abarorm v5.0.0**, which brings significant bug fixes and improvements, particularly for PostgreSQL users. This release addresses key issues, enhances PostgreSQL compatibility, and introduces several new features designed to improve overall performance and flexibility. The changes in this release ensure that **abarorm** now works more reliably with PostgreSQL, making it easier for developers to manage their databases.

Major Changes

PostgreSQL Bug Fixes

- **Table Naming Issues Fixed**: Resolved issues related to incorrect or inconsistent table names when working with PostgreSQL. This fix ensures that table names are generated according to model definitions and PostgreSQL conventions.

- **Foreign Key Constraints Resolved**: Fixed problems where foreign key relationships were not properly enforced in PostgreSQL, preventing errors during inserts and updates involving foreign keys.

- **Optimized Query Performance**: Major improvements to query performance, especially with larger datasets. PostgreSQL now handles complex queries more efficiently, including advanced filters and joins.

- **Composite Keys Support**: PostgreSQL now supports composite primary keys, which allows for more advanced data modeling with multiple columns acting as a primary key.

New Features

- **Migration System**: Introduced a new migration system for PostgreSQL, making it easier to track and apply schema changes incrementally. This is particularly useful for developers working in teams or managing complex database schemas.

- **Bulk Operations**: Added support for bulk inserts and updates, significantly improving performance when working with large volumes of data.

- **Transaction Support**: PostgreSQL now fully supports multi-step transactions, allowing developers to group operations and commit changes only when all steps succeed, ensuring data integrity.

Improvements

- **Field Customization**: Enhanced field customization options, allowing for more complex validation and dynamic properties for fields in PostgreSQL.

- **Query Set Handling**: Fixed issues with `QuerySet` methods such as `filter()`, `exclude()`, `count()`, and `to_dict()`, ensuring that PostgreSQL users can now perform more complex queries without errors.

4.2.3

1. **New Methods for `QuerySet`**
- **`first()`**: Returns the first result or `None` if no results exist.
- **`last()`**: Returns the last result or `None` if no results exist.
- **`exists()`**: Checks whether any records exist in the `QuerySet`.
- **`paginate(page, page_size)`**: Handles pagination of results, returning a subset of the data based on the current page and page size.

2. **Improved Filtering and Ordering**
- Advanced filtering support for `__gte` (greater than or equal) and `__lte` (less than or equal) to filter by dates, numbers, and other field types.
- Enhanced sorting with the `order_by` functionality within the `filter()` method for more control over query results.

3. **New Methods: `to_dict()` and `count()`**
- **`to_dict()`**: Converts model instances into dictionaries for easier manipulation and serialization.
- **`count()`**: Provides the count of records in a model’s table, making it easier to perform operations that require the number of records.

4. **Other Improvements**
- Refactoring and optimization of the codebase to improve query performance and memory usage.

Versioning

This release is part of **abarorm v4.2.3**. We recommend updating to this version to take advantage of the new features and improvements.

---

For more details, please refer to the [documentation](https://prodbygodfather.github.io/abarorm/).

Thank you for using **abarorm**!

4.0.0

New Features:
1. **`to_dict` Method**:
- Converts model instances into dictionaries, making it easier to work with data and serialize it for APIs or external systems.
- This enhances the flexibility and usability of the ORM, especially when dealing with data manipulation.

2. **`count` Method**:
- Allows users to count the number of records in a model's table.
- This is useful for querying the total number of records or after applying filters, improving query efficiency and reporting.

Improvements:
- **`__repr__` Method**:
- Added a string representation for model instances, improving debugging and logging experiences.
- This provides a more readable and informative output when inspecting model instances.

- **Filter Enhancements**:
- The `filter` method has been improved to support `order_by` functionality, enabling more flexible and dynamic queries.

Bug Fixes:
- **Fixed Table Naming**:
- Resolved issues with inconsistent table naming conventions, ensuring proper alignment with standard naming practices.

- **Return Values Updated**:
- Updated the return values of methods to provide clearer and more consistent output, enhancing usability.

Important Notes:
- When adding new fields to models, they will now default to `NULL`. It's recommended to recreate the database schema after development is complete to ensure fields have appropriate constraints and default values.

Thank you for your contributions, and we look forward to further improvements in future releases!

3.2.1

**Release Date:** 2024-11-12

What's New

This release introduces compatibility enhancements across SQLite, PostgreSQL, and MySQL databases, focusing on data type adjustments, constraint handling, and primary key definitions. These improvements ensure consistent behavior across all supported databases.

Key Updates

1. **Primary Key Adjustments**
- Replaced PostgreSQL-specific `SERIAL` with cross-compatible primary key configurations:
- **SQLite**: `INTEGER PRIMARY KEY AUTOINCREMENT`
- **MySQL & PostgreSQL**: Adapted for native auto-increment behaviors.

2. **DecimalField Data Type Changes**
- Standardized `DecimalField` across databases:
- **SQLite**: Uses `REAL` due to precision limitations.
- **PostgreSQL & MySQL**: Maintains precision handling with appropriate constraints.

3. **Improved Constraint Handling**
- Enhanced `NOT NULL` constraint management during table creation to prevent issues, especially in SQLite where constraints can't be altered post-creation.
- Default values added for consistency.

4. **Cross-Database Testing**
- Verified functionality for table creation, data insertion, querying, and filtering across SQLite, PostgreSQL, and MySQL.

Impact

This update enhances stability and performance for projects requiring multi-database support, allowing easy switching between databases without changing model definitions.

For feedback or issues, please refer to Issue 18.

3.2.0

abarorm Version 3.2.0 Release Notes

We are excited to announce the release of abarorm version 3.2.0! This version introduces new features and improvements that enhance the functionality and usability of our Object-Relational Mapping (ORM) library for SQLite, MySQL, and PostgreSQL databases.

New Features

- **Advanced Filtering Options**:
- Introduced new lookup expressions `__gte` (greater than or equal) and `__lte` (less than or equal) for the `filter()` method. This allows for more precise and flexible queries when retrieving records from the database.

Bug Fixes

- Resolved minor issues related to database connections and query execution that enhance overall performance and stability.

Improvements

- Improved documentation with detailed explanations of the filtering functionality, including usage examples for advanced filtering options.
- Enhanced code readability and organization to make it easier for contributors and users to understand the library's structure and functionality.

Upgrade Instructions

To upgrade to version 3.2.0, simply run:

bash
pip install --upgrade abarorm


Make sure to check the [documentation](https://prodbygodfather.github.io/abarorm/) for additional guidance on using the new features and any other changes in this release.

3.1.1

Release Notes: ORM Update Functionality Enhancement

Overview
In this release, we have implemented significant enhancements to the update functionality of the ORM. This update introduces two new methods for updating records, providing users with more flexibility and ease of use.

Key Features

1. **Specific Category Update Method:**
- Users can now update the title of a category by its ID through a dedicated method. This simplifies the process and allows for quick updates without requiring additional parameters.

2. **Flexible Post Update Route:**
- A new API route has been added that enables users to update multiple attributes of a post in a single request. This method accepts optional parameters, allowing for comprehensive updates based on user input.

Benefits
- The new update functionality improves user experience by offering a straightforward method for category updates and a versatile approach for post updates.
- Users can make multiple changes at once, reducing the number of requests needed to update records.

Testing and Validation
All new features have undergone thorough testing to ensure functionality and reliability. We encourage users to explore the new features and provide feedback for further improvements.

Conclusion
This release marks a significant step forward in enhancing the ORM's capabilities, making it easier for users to manage and update their records efficiently. We look forward to your continued support and feedback as we work to improve the ORM further.

Thank you for your contributions and engagement with our project!

Page 1 of 3

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.