Migrating to Rover v2
Rover v2 introduces a centralized architecture for better multi-project support. The good news: no action is required from users. Your existing projects will continue to work as before.
This guide explains what changed and optional cleanup steps you may want to take.
What Changed
Section titled “What Changed”Global Store
Section titled “Global Store”Rover now uses a centralized Global Store to manage configuration and tasks across all your projects.
| Platform | Location |
|---|---|
| macOS/Linux | ~/.rover/ |
| Windows | %APPDATA%\Rover\ |
The Global Store contains:
- Configuration (
config/rover.json): User preferences, telemetry settings, and project registry - Task data (
data/projects/): Centralized storage for all task data - Cache (
cache/): Temporary files
Project Configuration is Optional
Section titled “Project Configuration is Optional”The rover.json file at your project root is now optional. Rover can detect your project’s languages and package managers automatically when you run rover init.
If you already have a rover.json, it will continue to work and be respected.
Task Storage
Section titled “Task Storage”Rover v2 changes where new tasks are stored while maintaining full compatibility with existing tasks.
Existing Tasks
Section titled “Existing Tasks”Tasks created with v1 remain in your project’s .rover/tasks/ directory. Rover will continue to read and manage them from this location. You don’t need to move or migrate them.
New Tasks
Section titled “New Tasks”New tasks are created in the Global Store at:
- macOS/Linux:
~/.rover/data/projects/<project-id>/tasks/ - Windows:
%APPDATA%\Rover\data\projects\<project-id>\tasks\
Cleaning Up Old Tasks
Section titled “Cleaning Up Old Tasks”After you’ve merged or pushed your v1 tasks, you can delete them using the rover delete command:
# Delete specific tasks by IDrover delete 1 2 3
# Check task status before deletingrover listAutomatic Migration
Section titled “Automatic Migration”Rover handles migration automatically:
- Task IDs: Your existing task counter is preserved and migrated to the Global Store
- Configuration: Your
rover.jsonsettings are respected (if present) - Telemetry: Your telemetry preferences are migrated from the legacy location
Summary
Section titled “Summary”| Aspect | v1 | v2 |
|---|---|---|
| Task storage | .rover/tasks/ in project | Global Store (with legacy support) |
| Configuration | rover.json required | rover.json optional |
| Multi-project | Isolated | Centralized registry |
Verify Your Setup
Section titled “Verify Your Setup”After updating Rover, verify everything works:
# Check versionrover --version
# List your tasks (should show existing tasks)rover list