Fixes: 1) Replace `lookup` with `lookup_value` in API parameter definitions;
Extra: 1) Remove unused query parameters for product listing documentation.
Fixes: 1) Adjust import order in `viewsets.py` to match project convention; 2) Correct schema name from `seo` to `seo_meta` in documentation;
Extra: 1) Refactor SEO schemas import order for better readability; 2) Update `additional` field structure with consistent formatting.
Fixes: 1) Fix incorrect queryset filtering logic in the `feedbacks` endpoint; 2) Replace redundant product lookup in `feedbacks` with `get_object` for improved clarity and performance;
Extra: 1) Rename annotated field `price` to `price_order` in queryset filters for better semantics; 2) Cleanup and streamline `feedbacks` endpoint logic.
Fixes: 1) Removed reliance on suppressed exceptions for UUID lookup; 2) Improved handling of invalid or missing objects during lookup.
Extra: 1) Cleaned up unused import `suppress`; 2) Simplified code by replacing redundant lookup logic with a unified method.
Fixes: 1) Correct dynamic URL generation for images in Open Graph (`og_image` and `logo_url`); 2) Address potential missing or empty `crumbs` handling in breadcrumbs generation;
Extra: 1) Refactor redundant action names (e.g., `seo` to `seo_meta`) for better consistency; 2) Clean up and optimize serializer structures and Graphene object fields; 3) Improve readability and maintainability of action and object implementations.;
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