Skip to content

Litestream v0.5.9 update#73

Open
alxvernier wants to merge 20 commits intofractaledmind:mainfrom
alxvernier:litestream-v0.5.9-update
Open

Litestream v0.5.9 update#73
alxvernier wants to merge 20 commits intofractaledmind:mainfrom
alxvernier:litestream-v0.5.9-update

Conversation

@alxvernier
Copy link
Contributor

The current Litestream-ruby gem uses Litestream 0.3.13 but there is a newer Litestream 0.5.x available which introduces several changes, mainly in the way the replicate process is handled via ltx files, a new IPC endpoint that enables to easily query the Litestream process and some configuration changes. Some more info...

This PR implement Litestream v 0.5.9 keeping the same functions as the previous gem with the following changes:

  • Bump to Litestream 0.5.9: Replaced wal command with ltx command (Litestream 0.5.x changed WAL terminology to LTX)
  • Updated configuration format: Config template now uses Litestream's new globals and unique replica format
  • New IPC-based dashboard: Dashboard now uses Litestream's native IPC socket (/info and /list endpoints) instead of parsing CLI output
  • Removed generations command: Deprecated in Litestream 0.5.x, now removed
  • Removed snapshots command: Deprecated in Litestream 0.5.x,xnow removed

I will put this new version in a test environment (linux) in the next few days.

@fractaledmind I did set a 0.15.0 version for this gem, do you want another version number (0.20.0 ?) as this is a breaking change ?

Copilot AI review requested due to automatic review settings February 25, 2026 14:29
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the litestream-ruby gem from Litestream 0.3.13 to 0.5.9, introducing several breaking changes aligned with the upstream Litestream project. The update replaces CLI output parsing with IPC socket-based communication for better reliability and introduces new terminology (LTX instead of WAL) while removing deprecated commands.

Changes:

  • Bumped to Litestream 0.5.9 with updated binary distribution formats and architecture naming
  • Replaced generations/snapshots/wal commands with single ltx command
  • Implemented IPC socket-based dashboard using /info and /list endpoints instead of parsing CLI output
  • Updated configuration template to use Litestream 0.5.x format with global defaults and singular replica format

Reviewed changes

Copilot reviewed 15 out of 17 changed files in this pull request and generated 11 comments.

Show a summary per file
File Description
lib/litestream/version.rb Updated gem version to 0.15.0
lib/litestream/upstream.rb Updated Litestream version to 0.5.9, changed binary filenames (v prefix removed, zip→tar.gz, amd64→x86_64)
lib/litestream/ipc.rb New IPC client for communicating with Litestream daemon via Unix socket
lib/litestream.rb Replaced systemctl/ps parsing with IPC calls, added socket configuration reading
lib/litestream/commands.rb Removed generations/snapshots/wal commands, kept only ltx command
lib/litestream/generators/litestream/templates/config.yml.erb Updated to Litestream 0.5.x config format with globals and singular replica
lib/tasks/litestream_tasks.rake Replaced generations/snapshots/wal tasks with ltx task
app/views/litestream/processes/show.html.erb Updated dashboard to display LTX files instead of generations/snapshots
test/test_litestream.rb Updated tests for IPC-based process info and databases listing
test/tasks/test_litestream_tasks.rb Updated task tests to use ltx instead of generations/snapshots/wal
test/litestream/test_commands.rb Updated command tests to use ltx instead of generations/snapshots/wal
test/controllers/test_processes_controller.rb Updated controller test data for new dashboard format
README.md Updated documentation to reflect ltx command and new warning about breaking changes
CHANGELOG.md Added release notes for 0.15.0
Gemfile.lock Updated gem version to 0.15.0

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

alxvernier and others added 9 commits February 25, 2026 15:42
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@alxvernier alxvernier marked this pull request as draft February 25, 2026 15:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants