-
Stable Version 1.2.0
StableCI/CD Pipeline / Unit Tests (Python 3.11) (push) Successful in 30sCI/CD Pipeline / Unit Tests (Python 3.12) (push) Successful in 37sCI/CD Pipeline / Unit Tests (Python 3.13) (push) Successful in 46sCI/CD Pipeline / Code Quality & Linting (push) Successful in 41sCI/CD Pipeline / Integration Tests (push) Successful in 23sCI/CD Pipeline / Security Scanning (push) Successful in 38sCI/CD Pipeline / Generate Test Report (push) Successful in 3sCI/CD Pipeline / Build Docker Image (push) Successful in 33sCI/CD Pipeline / CI/CD Pipeline Status (push) Successful in 2sreleased this
2026-10-24 23:21:02 +00:00 | 8 commits to main since this releasePterodisbot v1.2.0
Major code refactor for modular extensibility
Added
- Modular architecture: Split monolithic pterodisbot.py (1586 lines) into 10 separate modules (config.py, api.py, models.py, metrics.py, embeds.py, views.py, bot.py, main.py, logging_config.py, exceptions.py)
- Automatic config.ini generation from environment variables via generate_config.py
- Smart config logic: generates if missing, preserves if matching, regenerates with environment variable priority if different
- Pelican Panel API key support (pacc_ for client, papp_ for application alongside Pterodactyl ptlc_/ptla_ prefixes)
- Kubernetes deployment guide in README
Changed
- Docker image updated to Python 3.12 slim with multi-stage build and virtual environment
- New entry point chain: tini -> entrypoint.sh -> generate_config.py -> main.py
- Non-root user execution in Docker container for improved security
- CI/CD workflow updated with module-specific test targets, linting (flake8, pylint, black, isort, mypy), and security scanning
- All dependencies updated to latest stable versions (discord.py 2.7.1, aiohttp 3.14.5, matplotlib 3.11.2)
- Added pydantic>=2.14.1 for data models
Fixed
- Configuration validation for both Pterodactyl and Pelican Panel API keys
- Gitea CI/CD checkout issues resolved with fetch-depth configuration
- Mock fixtures updated for new modular structure
Testing
- All 33 tests passing with updated imports for new module structure
- Integration tests for metrics collection, graphing, and embed creation
Downloads