Release v1.0.0-beta
The release delivers a complete rewrite from shell scripts to a more robust Python application.
Versioning Change
The versioning for this Docker image has been decoupled from the upstream Photon version. This allows for more intuitive versioning that reflects changes to the container environment and scripts, rather than centering around changes to the underlying Photon application.
Breaking Changes
-
The data volume path has been changed from
/photon/photon_data
to/photon/data
.docker-compose.yml
update:volumes: - - photon_data:/photon/photon_data + - photon_data:/photon/data
New Features
- Non-Root User: The container now runs processes as a dedicated non-root user (
photon
) for improved security. The user and group IDs can be set viaPUID
andPGID
environment variables to manage volume permissions. - Notifications: Support for status notifications (e.g., update completion, errors) has been added via Apprise. This can be configured with the
APPRISE_URLS
environment variable. #100 - Docker Healthcheck: A
HEALTHCHECK
instruction has been added to the Dockerfile. The container will show asunhealthy
whenever the photon-api is not available.
Improvements
- Process Management: All startup, update, and monitoring tasks are now managed by a Python application.
- Atomic Updates: The index update mechanism now performs an atomic move.
- Download Logic: The index downloader now supports resumable downloads and performs more thorough disk space checks. Closes #71
- Build and Release Pipeline: The CI workflow for building and publishing Docker images has been updated to better handle pre-release (
beta
) and stable (latest
) tags. A workflow for code quality checks usingruff
,ty
andvulture
was added.
Full Changelog: 0.7.2...1.0.0-beta