The `media-data` volume was unused and has been removed to simplify the configuration. This helps reduce potential confusion and unused clutter in the `docker-compose.yml` file.
Introduce `delete-elasticsearch` scripts for both Windows and Unix to stop, remove containers, and delete data volumes. Updated `Makefile` to include this command for easier management. Upgraded `django-elasticsearch-dsl` and related dependencies to their latest versions for compatibility.
Breaking change: Updated Elasticsearch image and configuration to enable xpack security. Ensure environment variables are properly set.
- Refactored monetary fields across models to use `DecimalField` for improved precision.
- Implemented two-factor authentication (2FA) for admin logins with OTP codes.
- Added ability to generate admin OTP via management commands.
- Updated Docker Compose override for dev-specific port bindings.
- Included template for 2FA OTP verification to enhance security.
Additional changes:
- Upgraded and downgraded various dependencies (e.g., django-celery-beat and yarl).
- Replaced float-based calculations with decimal for consistent rounding behavior.
- Improved admin user management commands for activation and OTP generation.
Add encryption for user PII fields (phone number, name, attributes) and address fields to enhance data security. Introduced timestamped activation tokens for improved validation. Included migrations to encrypt existing plaintext data.
Refactored GraphQL settings to limit query depth and optionally disable introspection for enhanced API defense. Implemented throttling to safeguard API rates.
Improved Dockerfiles for better user management and restored media migration tools for smooth instance upgrades.
Upgrade `multidict` package version to 6.7.1 for compatibility and resolve potential dependency issues. Removed `celery-prometheus-exporter` as it is no longer required.
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) No fixes applied;
Extra: 1) Supervisor service configured with environment variables and custom start script; 2) Uses multi-stage build for optimized runtime; 3) Sets up non-root user for security; 4) Exposes port 7777; 5) Depends on app service; 6) Uses default logging config.
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 line references in locale files for consistency;
Extra: Improve formatting and alignment of string segments for clarity and maintainability;
Fixes: 1) Corrected `docker-compose.yml` to reference renamed Dockerfiles for `app`, `worker`, `stock_updater`, and `beat`;
Extra: 1) Renamed Dockerfiles to align with consistent naming convention.
Fixes: 1) Extract and centralize broker transport options in `settings/celery.py`; 2) Remove redundant Celery settings from `celery.py`.
Extra: 1) Cleanup and streamline Celery configuration in `celery.py`.
Fixes: 1) Add missing imports for `TransactionType` and `Transaction` in `graphene.object_types.py`.
Extra: 1) Update `docker-compose.yml` and GraphQL schema for improved service health checks and payment transaction resolution.
Fixes: 1) None;
Extra: 1) Removed redundant `[tool.yapf]` section in `pyproject.toml` to clean up formatting; 2) Adjusted spacing for better readability in Windows script prompts;
Fixes: 1) Update Celery worker configuration in `worker-entrypoint.sh` to optimize worker pool and task limits;
Extra: Refactor `docker-compose.yml` and scripts for improved service management.
Fixes: 1) Correct `.dockerignore` entry for the relocated `storefront/Dockerfile`;
Extra: 1) Refactor file structure by renaming `Dockerfile.storefront` to `storefront/Dockerfile`.
Fixes: 1) Correct build key structure for Dockerfile definitions across services;
Extra: Code cleanup for consistency in unused storefront service comments;
Fixes: None;
Extra: 1) Add comments and structure to `.gitignore` for improved readability and maintainability; 2) Update placeholder comments in `docker-compose.yml` for future services.
Fixes: 1) Update `docker-compose.yml` to use `Dockerfile.app` instead of default build context;
Extra: 1) Add commented-out `storefront` service in `docker-compose.yml` for potential future use; 2) Minor cleanup and structuring of Docker setup;
Consolidate the Celery worker command into a single line for improved readability and maintainability. This change reduces unnecessary line breaks without altering functionality.
Updated the Celery worker command in docker-compose.yml for better readability and consistency using line continuation characters. Ensured no functional changes were introduced during the formatting update.
Increased `task_soft_time_limit` to 7200 seconds and `task_time_limit` to 10800 seconds in both `celery.py` and `docker-compose.yml`. This change allows longer-running tasks to complete without premature termination.
Updated `task_soft_time_limit` to 3600 seconds and `task_time_limit` to 7200 seconds in both `celery.py` and `docker-compose.yml`. This allows tasks to run longer before being terminated, ensuring support for extended processing requirements.
Added Elasticsearch as a dependency for 'app' and 'database' services to ensure proper startup order. Removed unnecessary Redis dependency from the Flower service to streamline configuration. These changes improve service interactions and startup stability.
Refactored Celery configurations to enhance task reliability, including changes to prefetch multiplier and timeout settings. Updated the worker command in `docker-compose.yml` to specify concurrency, memory limits, and task timeouts. Added a memory limit for the worker service to improve resource management.