Fixes: 1) Resolve annotations compatibility with mypy `type: ignore` adjustments; 2) Correct `resolve_price_with_currency` method to ensure proper float returns; 3) Handle scenarios for empty or null queryset in vendor methods.
Extra: 1) Refactor utility functions for better type annotations and robustness; 2) Minor formatting corrections and removal of redundant mypy strict setting; 3) Improve method return types for consistency.
Fixes: 1) Correct indentation in multiple locations across `viewsets.py` for better readability; 2) Resolve inconsistent logging formatting in `signals.py`;
Extra: 1) Minor formatting adjustments in `views.py` and `signals.py`; 2) Clean up trailing blank lines across files.
Fixes: 1) Replace usage of `slugify` with direct access to `obj.slug` in sitemap location methods;
Extra: 1) Remove unused `slugify` import from `core/sitemaps.py`.
Fixes: 1) Correct avatar resolution in `resolve_avatar` method for cases where `url` or `name` attributes are missing; 2) Refresh user object from the database after avatar update to avoid stale data;
Extra: 1) Rename `BulkActionOrderProductInput` to `BulkProductInput` for consistency; 2) Minor code refactorings and adjustments for clarity.
Fixes: 1) Update logging configuration to align all logger instances to use "django" instead of "evibes"; 2) Remove unused logging configuration for "django.request";
Extra: 1) Add detailed error logging in GraphQL execution to include exception messages.
Fixes: 1) Simplify Prometheus and GraphQL path definitions in `evibes/api_urls.py`;
Extra: 1) Add line breaks across multiple files for improved code readability.
Fixes: 1) Rename `Adress` to `Address` in `core/viewsets.py`; 2) Fix incorrect argument usage in filter methods; 3) Correct file formatting in lockfile.
Extra: Code cleanup for consistent file format in `poetry.lock`, adding comments (`# noqa`) where necessary.
1) Userless orders will be merged on user's registration by their phone number and/or email. Added Viewset action "merge_recently_viewed" so recently viewed products may be stored on server's side.
2) Added comprehensive products' filtering by category(support for including subcategories)
Fixes: I18N
Fixes: 1) Correct serialization flow by separating create and output serializers.
Extra: 1) Minor variable renaming for clarity; 2) Improved readability of the `create` method.
Fixes: 1) Remove unused positional arguments from wishlist-related viewset methods; 2) Adjust `create` method to accept only required arguments;
Extra: 1) Minor cleanup for method signatures in `core.viewsets.py`;
Fixes: 1) Remove unused `*_args` and `**kwargs` parameters from `current` and `buy_unregistered` methods in `OrderViewSet` and `WishlistViewSet`;
Extra: 1) Minor formatting adjustments for improved readability.
Fixes: 1) Correct `serializer_class` assignments for `ProductImageViewSet`, `PromoCodeViewSet`, `PromotionViewSet`, `StockViewSet`, and `WishlistViewSet`.
Extra: 1) General code cleanup and reorganization for viewsets.
Fixes: 1) Update `remove_product` model method to handle zero quantity removal; 2) Correct permission check in order product removal.
Extra: 1) Add `autocomplete_fields` for products in admin; 2) Enhance docs with bulk add/remove schemas; 3) Various code refactorings and minor tweaks for improved maintainability.