Fixes: 1) Removed unused imports including `Order` from `payments/models.py` and `health_check.contrib.redis` from settings; 2) Fixed inconsistent formatting and parameter alignment in method definitions; 3) Corrected type annotations and adjusted verbose text handling;
Extra: Cleaned up formatting in docstrings, comments, and JSON field help text across multiple files for better code style compliance and readability.
Fixes: 1) Corrected `ForeignKey` type assertions across models; 2) Resolved typos and formatting inconsistencies in `.env` and README; 3) Fixed explicit boolean checks in user manager methods.
Extra: Updated type hints in multiple models, serializers, and views.
Fixes: 1) Address minor spacing inconsistencies in list comprehension and JSON detection logic;
Extra: 1) Update `.gitignore` to exclude `.astro/` directory.
Fixes: 1) Correct indentation in multiple modules, including mutations, models, and utility methods to maintain consistency; 2) Fix typos in function parameters and update alignment for readability;
Extra: Refactored for improved code readability and adherence to PEP 8 style guidelines.
Fixes: 1) Add missing sys import in caches.py; 2) Ensure CACHEOPS_REDIS is only declared when CACHEOPS_ENABLED is True;
Extra: 1) Formatting and cleanup for readability in settings and auto-resolve methods; 2) Rearrange cacheops import in base settings;
Fixes: 1) Refine logic in vendor category and brand handling to correctly handle multiple active/inactive entries;
Extra: 1) Add missing import for `registry` in Elasticsearch module; 2) Minor cleanup and spacing adjustments in Elasticsearch and vendor modules.
Fixes: 1) Correctly handle `IntegrityError` and `MultipleObjectsReturned` exceptions in `process_attribute` to prevent crashes; 2) Add missing imports for `django.db.IntegrityError`, `Attribute`, and `AttributeGroup`.
Extra: Cleanup formatting in `poetry.lock` for consistent style.
Fixes: None;
Extra: 1) Update poetry.lock for the new aiosmtpd package; 2) Perform formatting changes to json and hash entries in poetry.lock for consistency.
1) Add Celery shared_task decorator to `update_stock` method for asynchronous execution.
Fixes:
1) Replace direct `update_stock()` calls with `update_stock.delay()` to enable task queuing.
Extra:
1) Add missing import for `shared_task` in `core/vendors/__init__.py`.
Improve handling of duplicate and inactive objects during category and brand resolution. Ensures only the most relevant entry is retained while unused duplicates are deleted. Fixes potential issues with object retrieval and creation logic.
Replaced context manager suppress(KeyError) with try-except blocks to handle both KeyError and IndexError in auto_resolve_category and auto_resolve_brand methods. This improves clarity and ensures proper handling of potential IndexError cases.
Add error handling during the stock update process to log and skip problematic vendors without halting execution. Additionally, ensure `get_vendor_instance` only returns active vendors, raising an error if the vendor is inactive. This improves system resilience and data integrity.
Introduced a new static method, auto_resolve_brand, to simplify and automate the resolution or creation of Brand objects based on a given brand name. Updated imports in core/vendors/__init__.py to include the Brand model. This enhances the system's ability to process brands effectively.
Introduced the auto_resolve_category method to streamline category resolution using Elasticsearch. This enhances category lookup efficiency and ensures seamless creation or retrieval of categories when necessary.