Fixes: 1) Fix shebangs in Docker entry-point scripts to use `/usr/bin/bash`.
Extra: 1) Refactor slug fields in `core` migrations for `Brand`, `Category`, and `Product`; 2) Cleanup and simplify admin code in `core/admin.py`.
Fixes: 1) Ensure correct handling of query results in category/brand auto-resolve methods; 2) Fix PO formatting issues across multiple locales.
Extra: 1) Add `priority` field to Django admin for categories; 2) Suppress specific type-checking warnings in settings and utilities.
Fixes: 1) Add missing type annotation for the return value of `process_query` in `core/elasticsearch/__init__.py`.
Extra: 1) Update migration file to reflect new slug field changes; 2) Minor refactor to improve clarity in query result construction.
Fixes: 1) Update slug population logic in management commands.
Extra: Refactor renderer class formatting, query processing, and formatting for readability across multiple files.
Fixes: 1) Correct `urlsafe_base64_encode` decoding logic in tests; 2) Fix queryset access issues in resolvers; 3) Address missing or incorrect imports across multiple files.
Extra: Improve code readability with consistent naming and formatting; Add `# noinspection` annotations to suppress IDE warnings; Update `pyproject.toml` to exclude `drf.py` in MyPy checks.
Fixes: 1) Update locale codes in `deepl_translate.py` to lowercase for consistency.
Extra: 1) Minor refactoring to ensure compatibility and avoid undefined behavior in slug population logic.
Fixes: 1) Standardized field names in core models by renaming locale-specific fields to lowercase format for consistency (e.g., name_en_GB to name_en_gb);
Extra: Applied migrations to reflect these changes in vibes_auth and core apps for smoother db schema alignment.
Fixes: 1) None;
Extra: 1) Removed the entire "geo" module, including migrations, model definitions, admin configurations, utilities, documentation, templates, translations, and related files. Moved functionality to "core".
Updated the API version from 2.5.0 to 2.6.0 in the DRF settings for consistency across configurations. Reformatted migration files for better readability, ensuring consistency in code style and improving maintainability. These changes do not alter functionality but enhance clarity and documentation.
Previously, orders with duplicate `human_readable_id` were sorted by `id`, which could lead to inconsistencies. Updated the code to sort by `uuid` to ensure a more reliable and unique ordering. This prevents potential issues when resolving duplicate entries.
The migration script now counts duplicates based on the "uuid" field instead of "id". This ensures more accurate identification of duplicate "human_readable_id" entries.
This migration resolves duplicate human_readable_id values by assigning unique IDs where necessary. A data migration script is introduced to identify and fix duplicates before altering the field.
Updated the `human_readable_id` field in the `Order` model to support a maximum length of 8 instead of 6. Removed the redundant migration file `0019_alter_order_human_readable_id.py` for cleanup.
Alter the `human_readable_id` field to use a custom generator function and ensure uniqueness. This improves the readability and integrity of order identifiers.
Introduced a `human_readable_id` field to the Order model to provide a concise and recognizable identifier, initialized with a default generator. Updated the field to enforce uniqueness to ensure consistent identification across orders.
The migration alters the `slug` field to include `uuid` in its `populate_from` attributes. This ensures more robust and unique slug generation, improving data integrity and avoiding potential collisions.
Revised the `populate_from` argument of the Product model's `slug` field to use only `category__name` and `name` for generation. This simplifies the slug creation logic and aligns with the updated migration `0015_alter_product_slug`.
Changed the `slug` field in the `Product` model to allow null values by setting `null=True`. This ensures better flexibility when handling cases where a slug might not be immediately available.
Made the `slug` field nullable in migration 0013 before reverting this change in migration 0014. Additionally, altered the population logic to always include `uuid`.
This change modifies the `slug` field in the `Product` model to also populate from the `UUID` field, ensuring enhanced uniqueness and consistency. The migration file is included to apply this change to the database schema.
Introduce a unique, auto-generated slug field to the Product model, populated from category, brand, and name. Update core filters, serializers, sitemaps, and GraphQL object types to support the new slug functionality. Also, enforce HTTP-only cookies for session, CSRF, and language for improved security.