Skip to content

feat(ruby): add uru version manager detection#130

Merged
CalvinAllen merged 1 commit intomainfrom
feat/ruby/uru-detection
Dec 13, 2025
Merged

feat(ruby): add uru version manager detection#130
CalvinAllen merged 1 commit intomainfrom
feat/ruby/uru-detection

Conversation

@CalvinAllen
Copy link
Contributor

Summary

Closes #122

Adds detection for uru, a lightweight Ruby version manager that works on Windows, Linux, and macOS.

  • Creates src/migrations/ruby/uru/provider.go implementing the migration.Provider interface
  • Parses ~/.uru/rubies.json to find registered Ruby installations
  • Supports URU_HOME environment variable for custom uru locations
  • Adds Windows integration test that installs uru and verifies migration detection

How uru stores Ruby info

uru stores registered Ruby installations in ~/.uru/rubies.json:

{
  "Version": "...",
  "Rubies": {
    "<tag-hash>": {
      "ID": "3.2.0-p0",
      "TagLabel": "320",
      "Home": "C:\tools\ruby32\bin",
      ...
    }
  }
}

Test plan

  • Unit tests pass (go test ./...)
  • Linter passes (golangci-lint run ./...)
  • Integration test workflow added for Windows

Closes #122

- Add uru migration provider at src/migrations/ruby/uru/
- Parse ~/.uru/rubies.json to detect registered Ruby versions
- Support URU_HOME environment variable for custom locations
- Add Windows integration test for uru migration
- Update main.go with uru import
@CalvinAllen CalvinAllen merged commit 5720dbc into main Dec 13, 2025
12 checks passed
@CalvinAllen CalvinAllen deleted the feat/ruby/uru-detection branch December 13, 2025 23:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

feat(ruby): add uru version manager detection

1 participant