-
v0.6.0
Stablereleased this
2026-06-09 18:18:24 +00:00 | 4 commits to master since this release🚀 Changelog v0.6.0
✨ New Features
- Colorized Logging: Terminal logs are now color-coded! HTTP status codes are highlighted based on their category:
- 🟢 2xx (Success): Green
- 🟡 4xx (Client Error): Yellow
- 🔴 5xx (Server Error): Red
- Enhanced Startup Banner: A fresh, colorized ASCII banner at startup now displays key configuration details for better visibility.
- Auto-Config Generation: DHL now automatically generates a default config.json and response.json if they are missing from the working directory.
- Docker Compose Support: Added a docker-compose.yml for effortless "one-command" deployment.
🐳 Docker & CI/CD Optimizations
- Lightweight Multi-Stage Build: Switched to a multi-stage Docker build based on Alpine, significantly reducing the final image size.
- Build Context Optimization: Added .dockerignore to exclude the target/ directory, reducing build context size from gigabytes to megabytes.
- Docker-Smart Binding: The application now detects the Docker environment and forces binding to 0.0.0.0, resolving connectivity issues ("Socket Hang Up").
- Persistent Volumes Fix: Moved the binary to /usr/local/bin within the image to prevent it from being hidden when mounting volumes to /app.
- Workflow Improvements: Fixed Gitea Action workflows (renamed to build-image.yml) and ensured Docker tags are correctly lowercased for registry compatibility.
🛠 Bugfixes & Improvements
- Config Serialization: Added missing Serialize traits to configuration structs to enable saving default settings to disk.
- Dependency Caching: Optimized Dockerfile to use layer caching for Rust dependencies, making subsequent builds lightning fast.
- Documentation: Completely updated README.md with detailed Docker instructions, mounting examples, and feature descriptions.
Downloads
- Colorized Logging: Terminal logs are now color-coded! HTTP status codes are highlighted based on their category:
-
v0.5.0
StableAll checks were successfulBuild and Release / Build All Platforms (push) Successful in 2m0sreleased this
2026-06-08 19:56:25 +00:00 | 10 commits to master since this releaseRelease v0.5.0 - The Live-Reload & Multi-Route Update
This version transforms DHL into a powerful and flexible mock server with support for dynamic configuration and multiple endpoints.
Key Features
- Live Configuration Reloading: Modify config.json (routes, status codes, masking settings) on the fly. The server applies changes instantly without requiring a restart.
- Multi-Route Support: Define an unlimited number of endpoints with unique paths within a single server instance.
- Custom HTTP Status Codes: Each route can now return a specific status code (e.g., 201 Created for successful mocks or 400 Bad Request for error testing).
- Automated Multi-Platform Releases: New CI/CD workflow builds binaries for Windows and Linux automatically on every new tag, packaging them into "fancy" Gitea Releases.
Technical Improvements
- Live JSON Responses: Content within your response files is re-read on every request, allowing for real-time data editing.
- Header Masking: Sensitive request headers (like Authorization or Cookie) are automatically masked in the logs to protect credentials.
- Custom 404 Handler: Unknown paths now return a clean, standardized JSON response: {"error": "Not Found"}.
- Modular Architecture: The codebase has been refactored into clean modules (config, handlers, middleware, state) for better maintainability and performance.
- HTTPS/TLS Support: Ready for secure connections via configurable PEM certificates.
Release Assets (Included in Zip/Tar.gz)
Each release package now includes:- The Binary: dhl (Linux) or dhl.exe (Windows).
- config.json: A pre-configured example file with sample routes.
- response.json: An example response file for immediate testing.
Downloads