v2.19.5-beta4
semaphoreui/semaphorev2.19.5-beta4Jul 5, 2026by github-actions[bot]
AI Summary
This beta release focuses on improving runner monitoring capabilities, hardening security for Git repositories, and updating Docker images and dependencies.
Key Highlights
- Added runner status reporting (online/offline) in API and UI based on heartbeat.
- Implemented Git repository URL validation to prevent command-line injection attacks.
- Added Paramiko support to the Ansible Docker image.
- Updated `axios` and `go-oidc` dependencies.
- Refactored backend logic to use dependency injection in integrations.
New Features
- Runner status calculation logic and tests.
- Integration controller logic for storage access.
- Implementation plan for IdP-initiated OIDC authentication.
Full Release Notes
## v2.19.5-beta4 Release Summary This beta release includes runner status improvements, Docker image fixes, security hardening for Git repositories, dependency updates, and backend refactoring. ### Improvements * Added runner status reporting in the API and web UI, so runners can now be shown as `online` or `offline`. * Added backend logic to calculate runner status based on the latest runner heartbeat. * Improved integration handling by moving integration storage access into the integration controller. ### Security fixes * Added Git repository URL validation to prevent Git option injection. * Repository URLs that start with `-` are now rejected because Git could interpret them as command-line options instead of repository locations. ### Docker fixes * Added Paramiko support to the Docker image for Ansible environments. * Fixed the Docker package/library name used for Paramiko installation. ### Dependencies * Updated `axios` to `v1.18.1`. * Updated `github.com/coreos/go-oidc/v3` to `v3.19.0`. * Improved Renovate configuration with a custom manager. ### Internal changes * Added an implementation plan for IdP-initiated OIDC authentication. * Refactored backend code to use dependency injection in integrations. * Added tests for runner status calculation.