Release history
ganymede releases
Twitch VOD and Live Stream archiving platform. Includes a rendered and real-time chat for each archive.
All releases
12 shown
- Discontinue use of the `:dev` container image; migrate to `:latest` or a specific semver version.
- Conditional profile image replacement during periodic channel sync
- Absolute clock time display in video player UI
- Configurable chat timestamps via user profile settings
Full changelog
[!IMPORTANT]
If you are running the:devcontainer image now is the best time to switch back to:latestor the semver version.
Change Highlights
- feat(channel): conditionally replace profile image during periodic sync by @fllppi in https://github.com/Zibbp/ganymede/pull/1154
- Update channel image during periodic sync
- feat(frontend): add absolute clock time display to video player by @fllppi in https://github.com/Zibbp/ganymede/pull/1155
- feat: chat timestamps by @Zibbp in https://github.com/Zibbp/ganymede/pull/1156
- New setting, configurable on your profile page, to show chat timestamps.
- feat(frontend): add autoplay video setting to profile by @fllppi in https://github.com/Zibbp/ganymede/pull/1161
- New setting, configurable on your profile page, to auto play videos when loading a video page.
What's Changed
- build(deps): bump follow-redirects from 1.15.11 to 1.16.0 in /frontend by @dependabot[bot] in https://github.com/Zibbp/ganymede/pull/1146
- build(deps): bump golang.org/x/sys from 0.42.0 to 0.43.0 by @dependabot[bot] in https://github.com/Zibbp/ganymede/pull/1145
- build(deps): bump github.com/testcontainers/testcontainers-go from 0.41.0 to 0.42.0 by @dependabot[bot] in https://github.com/Zibbp/ganymede/pull/1143
- build(deps): bump golang.org/x/crypto from 0.49.0 to 0.50.0 by @dependabot[bot] in https://github.com/Zibbp/ganymede/pull/1142
- build(deps): bump github.com/coreos/go-oidc/v3 from 3.17.0 to 3.18.0 by @dependabot[bot] in https://github.com/Zibbp/ganymede/pull/1144
- build(deps): bump github.com/testcontainers/testcontainers-go/modules/postgres from 0.41.0 to 0.42.0 by @dependabot[bot] in https://github.com/Zibbp/ganymede/pull/1141
- build(deps): bump github.com/jackc/pgx/v5 from 5.9.1 to 5.9.2 by @dependabot[bot] in https://github.com/Zibbp/ganymede/pull/1149
- build(deps): bump github.com/riverqueue/river from 0.34.0 to 0.35.0 by @dependabot[bot] in https://github.com/Zibbp/ganymede/pull/1151
- build(deps): bump github.com/riverqueue/river/riverdriver/riverpgxv5 from 0.34.0 to 0.35.0 by @dependabot[bot] in https://github.com/Zibbp/ganymede/pull/1150
- feat: live archive ffmpeg timeouts by @Zibbp in https://github.com/Zibbp/ganymede/pull/1147
- build(deps-dev): bump postcss from 8.5.6 to 8.5.10 in /frontend by @dependabot[bot] in https://github.com/Zibbp/ganymede/pull/1153
- feat(channel): conditionally replace profile image during periodic sync by @fllppi in https://github.com/Zibbp/ganymede/pull/1154
- feat(frontend): add absolute clock time display to video player by @fllppi in https://github.com/Zibbp/ganymede/pull/1155
- feat: chat timestamps by @Zibbp in https://github.com/Zibbp/ganymede/pull/1156
- build(deps): bump github.com/riverqueue/river from 0.35.0 to 0.35.1 by @dependabot[bot] in https://github.com/Zibbp/ganymede/pull/1160
- build(deps): bump github.com/riverqueue/river/riverdriver/riverpgxv5 from 0.35.0 to 0.35.1 by @dependabot[bot] in https://github.com/Zibbp/ganymede/pull/1159
- build(deps): bump github.com/rs/zerolog from 1.35.0 to 1.35.1 by @dependabot[bot] in https://github.com/Zibbp/ganymede/pull/1158
- feat(frontend): add autoplay video setting to profile by @fllppi in https://github.com/Zibbp/ganymede/pull/1161
Full Changelog: https://github.com/Zibbp/ganymede/compare/v4.15.1...v4.16.0
- Upstream dependency security patches: next-intl 4.9.1, lib/pq 1.12.3, go-playground/validator 10.30.2, riverqueue/river 0.33.0, gopsutil 4.26.3, next 16.2.3, axios 1.15.0
Full changelog
What's Changed
Security updates from dependencies.
- build(deps): bump next-intl from 4.8.2 to 4.9.1 in /frontend by @dependabot[bot] in https://github.com/Zibbp/ganymede/pull/1137
- build(deps): bump github.com/lib/pq from 1.12.1 to 1.12.3 by @dependabot[bot] in https://github.com/Zibbp/ganymede/pull/1130
- build(deps): bump github.com/go-playground/validator/v10 from 10.30.1 to 10.30.2 by @dependabot[bot] in https://github.com/Zibbp/ganymede/pull/1131
- build(deps): bump github.com/riverqueue/river/rivertype from 0.32.0 to 0.33.0 by @dependabot[bot] in https://github.com/Zibbp/ganymede/pull/1133
- build(deps): bump github.com/shirou/gopsutil/v4 from 4.26.2 to 4.26.3 by @dependabot[bot] in https://github.com/Zibbp/ganymede/pull/1132
- build(deps): bump github.com/riverqueue/river/riverdriver/riverpgxv5 from 0.32.0 to 0.33.0 by @dependabot[bot] in https://github.com/Zibbp/ganymede/pull/1134
- build(deps): bump next from 16.1.7 to 16.2.3 in /frontend by @dependabot[bot] in https://github.com/Zibbp/ganymede/pull/1138
- build(deps): bump axios from 1.13.5 to 1.15.0 in /frontend by @dependabot[bot] in https://github.com/Zibbp/ganymede/pull/1139
Full Changelog: https://github.com/Zibbp/ganymede/compare/v4.15.0...v4.15.1
- If running :dev container image, switch to :latest or a semver version
- New log_retention_days configuration setting available to control log file retention
- Live stream chat archiving: writes to temporary file flushed to main file every 2 seconds, preventing per-message JSON rewrites
- Daily log pruning task configurable via log_retention_days setting
- Reset is_live state on server start
Full changelog
[!IMPORTANT]
If you are running the:devcontainer image now is the best time to switch back to:latestor the semver version.
Changes
Better Live stream chat archiving - https://github.com/Zibbp/ganymede/pull/1113
Saves live chat JSON/messages to a temporary file then flushes to the main JSON/chat file every 2 seconds. This prevents expensive re-writes of the entire JSON file for every chat message.
Prune old log files - https://github.com/Zibbp/ganymede/pull/1126
A new task runs daily to prune old log files. Configurable via the log_retention_days config setting.
What's Changed
- build(deps): bump picomatch in /frontend by @dependabot[bot] in https://github.com/Zibbp/ganymede/pull/1119
- feat: reset is_live state on server start by @Zibbp in https://github.com/Zibbp/ganymede/pull/1121
- bump test archive timeout by @Zibbp in https://github.com/Zibbp/ganymede/pull/1122
- build(deps): bump github.com/lib/pq from 1.12.0 to 1.12.1 by @dependabot[bot] in https://github.com/Zibbp/ganymede/pull/1123
- build(deps): bump github.com/rs/zerolog from 1.34.0 to 1.35.0 by @dependabot[bot] in https://github.com/Zibbp/ganymede/pull/1124
- fix: save live chat to temporary file then flush by @Zibbp in https://github.com/Zibbp/ganymede/pull/1113
- feat: prune old logs by @Zibbp in https://github.com/Zibbp/ganymede/pull/1126
- build(deps): bump lodash from 4.17.23 to 4.18.1 in /frontend by @dependabot[bot] in https://github.com/Zibbp/ganymede/pull/1129
- build(deps): bump github.com/go-jose/go-jose/v4 from 4.1.3 to 4.1.4 by @dependabot[bot] in https://github.com/Zibbp/ganymede/pull/1128
Full Changelog: https://github.com/Zibbp/ganymede/compare/v4.14.1...v4.15.0
- Notification admin page
- Apprise integration
- VOD metrics
Fixed bug where channel retention settings were reset during scheduled channel update task.
- Next.js 16.0.10 to 16.1.5 moderate security fix
- Hourly platform authentication
- Channel update task
- Non-English filename support
Reverted fragmented MP4 changes that caused unplayable videos and aggressively sanitized filenames.