- Downgrade `ty` dependency from 0.0.18 to 0.0.16 in `pyproject.toml` and related files to address compatibility issues.
- Refactor `filters.py` to use safer attribute handling for field errors.
- Remove unused `TestModelDocument` and `TestModel` references from `documents.py`, reducing unnecessary overhead.
- Minor cleanup in `serializers.py` for improved readability.
Includes detailed OpenAPI schemas for unsubscribe (GET and POST) and tracking pixel (GET) endpoints, supporting email compatibility and event tracking. Added support for RFC 8058-compliant one-click unsubscribe functionality and transparent image-based email tracking.
add feed generators for Google Merchant, Amazon Seller, Yandex Market, and Yandex Products. Includes a shared base class (`BaseFeedGenerator`) for common functionality, such as product retrieval and validation. Each generator supports format-specific output and handles platform-specific requirements.
This change simplifies the creation of product feeds for multiple marketplaces.
Introduce `EmailImage`, `EmailTemplate`, and `EmailCampaign` models for enhanced email management, including campaign tracking and one-click unsubscribe tokens. Added multilingual fields for email templates and improved accessibility with image alt text. Also adapted `Post` content fields to support translations.
Fixes: 1) Add `# ty: ignore` comments to suppress type errors in multiple files; 2) Correct method argument annotations and definitions to align with type hints; 3) Fix cases of invalid or missing imports and unresolved attributes;
Extra: Refactor method definitions to use tuple-based method declarations; replace custom type aliases with `Any`; improve caching utility and error handling logic in utility scripts.
Fixes: 1) Addressed missing or incorrect imports and type hints with `# ty:ignore` markers; 2) Fixed search queryset error handling in filters module; 3) Resolved issues in viewsets with updated `@action` method usage.
Extra: Removed unused classes and dependencies (e.g., `BaseMutation`, `basedpyright`, and related packages); streamlined GraphQL mutation implementations; cleaned up unused arguments in model `save` methods.
Fixes: 1) Correct default values and type handling in util constructors; 2) Resolve missing or ambiguous `cast` operations for dynamic typing in tests and views; 3) Address potential issues with fallback/default handling in middleware.
Extra: 1) Refactor test cases to ensure stricter adherence to typing hints and valid contracts; 2) Update docstrings to align with new type annotations; 3) Cleanup unused imports and add comments for improved maintainability.
Fixes: (1) Removed all `# type: ignore` annotations across the codebase; (2) Fixed usage of Django Model methods by eliminating unnecessary `# type: ignore` directives; (3) Adjusted usage of functions like `get()` to align with method expectations, removing incorrect comments;
Extra: (1) Deleted `pyrightconfig.json` as part of migration to a stricter type-checked environment; (2) Minor code cleanup, including formatting changes and refactoring import statements in adherence to PEP8 recommendations.
Fixes: 1) Add missing import for `AdminPasswordChangeForm`, `UserCreationForm`, and `MarkdownWidget`.
Extra: 1) Add `django-unfold-markdown` as a dependency in `uv.lock` and `pyproject.toml`; 2) Remove redundant dropdown configuration from Unfold settings.
Fixes: 1) Correct type hint in `validate` method of `serializers.py`; 2) Fix incorrect use of `uuid` by converting to string in various email tasks across `signals.py` and `viewsets.py`;
Extra: None;
Fixes: 1) Remove unnecessary pragma from `install_aiohttp_webhook` definition;
Extra: 1) Add logging for `.initialized` read/write failures; 2) General cleanup and formatting improvements in initialization logic;
Fixes: 1) Correct type signature in `validate` method for serializers.
Extra: 1) Remove redundant worker log format configurations in Celery; 2) Simplify log message format in log configuration for conciseness.
Fixes: 1) Add missing imports for `settings`, `Q`, and `is_safe_key`; 2) Correct user permissions keys in `lists.py` utility.
Extra: 1) Refactor `UpdateUser` mutation for cleaner structure and unified error handling; 2) Format and tidy up list declarations and exception handling for clarity.
Fixes: 1) Adjust `mutate` methods in GraphQL mutations to support `retrieve_user` flag; 2) Ensure proper fallback to UUID handling when `retrieve_user` is set to `False`;
Extra: 1) Refactor serializers and mutations for improved customization and reduced overhead; 2) Add comments and clean up redundant code.
Fixes: 1) Replace `Count("id")` with `Count("pk")` in commerce queries; 2) Fix `User.objects.get(...)` call by using `uuid` directly instead of accessing nested `serializer.validated_data["user"]["uuid"]`; 3) Add missing closing parenthesis in `VerifyJSONWebToken` call.
Extra: Minor code cleanup and consistency in UUID access pattern across mutations.
Fixes: 1) Fixed line wrapping inconsistencies in English and German sections; 2) Ensured consistent spacing and line breaks in feature lists; 3) Corrected minor spacing issues in authentication and i18n sections.
Extra: 1) Improved readability by ensuring uniform line breaks; 2) No functional changes, purely cosmetic and structural.
Fixes: 1) Replace direct user access with UUID-based lookup in token mutations;
Extra: 1) Updated all three token mutation methods to use User.objects.get by UUID; 2) Added consistent formatting and indentation.
Fixes: 1) Fixed Hebrew translation line breaks and spacing inconsistencies; 2) Corrected punctuation and formatting in user reset password email template; 3) Fixed line breaks in model docstring for proper formatting.
Extra: 1) Updated POT-Creation-Date to reflect latest commit; 2) Minor whitespace and punctuation fixes across multiple translation strings.
Fixes: 1) Remove redundant imports from admin.py;
Extra: 1) Update inline classes to inherit from TabularInline; 2) Add unfold.contrib modules to INSTALLED_APPS; 3) Reorder imports in admin.py for consistency.
Fixes: 1) Remove deprecated Jazzmin configuration and replace with unfold dependencies; 2) Update DRF API title to use new PROJECT_NAME; 3) Fix import order and remove unused imports in core/viewsets.py;
Extra: 1) Add PROJECT_NAME to base settings; 2) Update INSTALLED_APPS to include unfold-related apps; 3) Clean up unused config references.
Fixes: 1) Correct redundant user lookup in JWT mutations.
Extra: 1) Add TODO comments for HTTP method tests in both DRF and Graphene test modules; 2) Minor cleanup in test files.
Fixes: 1) Apply `--omit` filter for test coverage reports to exclude unnecessary files; 2) Replace `services_data` volume mounts with named Docker volumes for consistency and cleanup (e.g., `postgres-data`, `redis-data`);
Extra: 1) Remove `services_data` from `.gitignore`, Docker-related cleanup in uninstall scripts; 2) Simplified related files removal scripts for Unix and Windows; 3) Minor adjustments in documentation comments.
Fixes: 1) Correct entrypoint scripts by removing redundant `python` reference in `uv run` commands; 2) Resolve incorrect imports and adjust class renaming in vibes_auth tests; 3) Address typing errors and minor omissions in existing code.
Extra: 1) Improve formatting in settings and middleware files; 2) Update messaging test class names for clarity; 3) Cleanup unused imports and extra whitespaces, ensuring cleaner codebase.
1) Add new `test_graphene` test module for expanded testing coverage;
2) Introduce `test_drf` module in `engine/blog` for improved API testing;
Fixes:
1) Remove unnecessary `--extra testing` flag from Dockerfile to streamline dependencies;
2) Update `uv.lock` with newer versions of dependencies (`certifi`, `coverage`, `django-constance`) for enhanced security and functionality;
Extra:
1) Remove deprecated packages (`bandit`, `cfgv`, `distlib`) from `uv.lock` for cleanup;
2) Adjust `uv.lock` content and formatting to be consistent with updated dependencies.
Fixes: 1) Correct alignment and ensure continuity in French and Polish translation files; 2) Address incomplete business identifier message in Spanish.
Extra: Improve clarity in token refresh and viewset-related comments; trim redundant whitespace in localized files.
Fixes: 1) Fix inconsistencies in string concatenation for English translations; 2) Correct missing or misplaced message references in locale files;
Extra: Resolve spacing and encoding inconsistencies in translation files.
Fixes: 1) Correct `image_url` return logic in models; 2) Fix indentation in the `save` method of `payments` model; 3) Update a minor comment typo in `serializers.py`.
Extra: 1) Minor cleanup of unused imports in `initialize` command.
Fixes: 1) Fix missing import for `send_message` moved to method scope in Telegram message handler; 2) Correct Swagger UI socket connection setting to `False`.
Extra: 1) Minor code cleanup and reformatting in viewsets and settings.