Shopify / Shopify/ruby-lsp

Minitests test runs never report finished (on Windows)

Open
#3,760 5 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug help-wanted pinned
Dominant language
Ruby
Stars
2k
Forks
281
Avg merge
2h 14m
Merged PRs (30d)
6

Description

Description
Ruby LSP Information
VS Code Version

1.104.1

Ruby LSP Extension Version

0.9.32

Ruby LSP Server Version

0.26.1

Ruby LSP Add-ons
  • RuboCop (unknown)
Ruby Version

3.1.4

Ruby Version Manager

none

Installed Extensions
Click to expand
  • Lisp (0.1.12)
  • code-spell-checker (4.2.6)
  • color-highlight (2.8.0)
  • errorlens (3.26.0)
  • exercism-cli (0.2.2)
  • gitlens (17.4.1)
  • jikiscript (1.0.0)
  • postcss (1.0.9)
  • prettier-vscode (11.0.0)
  • rails (0.22.0)
  • rainbow-csv (3.22.0)
  • react-native-ide (1.3.0)
  • remote-explorer (0.5.0)
  • remote-ssh (0.120.0)
  • remote-ssh-edit (0.87.0)
  • ruby-lsp (0.9.32)
  • vscode-eslint (3.0.16)
  • vscode-expo-tools (1.6.1)
  • vscode-github-actions (0.27.2)
  • vscode-graphql (0.13.2)
  • vscode-graphql-syntax (1.3.8)
  • vscode-tailwindcss (0.14.26)
  • vscode-versionlens (1.22.4)
  • vscode-yaml (1.18.0)
  • vscode-zipfs (3.0.0)
  • vsliveshare (1.0.5959)
Ruby LSP Settings
Click to expand
Workspace
{
  "indexing": {
    "includedPatterns": [
      "lib/**/*.rb",
      "test/**/*.rb"
    ]
  }
}
User
{
  "enabledFeatures": {
    "codeActions": true,
    "diagnostics": true,
    "documentHighlights": true,
    "documentLink": true,
    "documentSymbols": true,
    "foldingRanges": true,
    "formatting": false,
    "hover": true,
    "inlayHint": true,
    "onTypeFormatting": false,
    "selectionRanges": true,
    "semanticHighlighting": true,
    "completion": true,
    "codeLens": true,
    "definition": true,
    "workspaceSymbol": true,
    "signatureHelp": true,
    "typeHierarchy": true
  },
  "featuresConfiguration": {},
  "addonSettings": {},
  "rubyVersionManager": {
    "identifier": "none"
  },
  "customRubyCommand": "",
  "formatter": "auto",
  "linters": null,
  "bundleGemfile": "",
  "testTimeout": 30,
  "branch": "",
  "pullDiagnosticsOn": "both",
  "useBundlerCompose": false,
  "bypassTypechecker": false,
  "rubyExecutablePath": "",
  "indexing": {
    "includedPatterns": [
      "lib/**/*.rb",
      "test/**/*.rb"
    ]
  },
  "erbSupport": true,
  "featureFlags": {},
  "sigOpacityLevel": "1"
}
Reproduction steps
  1. Start the Ruby LSP using VS Code
  2. Open a Ruby test file with a single test
  3. Click "Run Test"
  4. Test sidepanel opens and keeps spinning forever
  5. "Show in terminal" reports it has finished
  6. "Cancel test run" will show in terminal that is now has aborted

All variants yield the same results (e.g. pressing button in the side panel, etc. etc.)

class TestNothing < Minitest::Test
  def test_nothing
    refute_nil true
  end
end
Image Image

For a single test I assume this is related to #3759, but this behaviour also shows on "run all tests" or "run all tests in file".

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the issue in VS Code on Windows using the provided TestNothing Minitest example, checking single-test, file, and all-tests runs. Compare the test side panel with the terminal output and review the related discussion in #3759. Done means every run reports completion in the test UI instead of spinning indefinitely.

Written by the indexing model from the issue text.

Assessment

Tech stack
ruby, vscode
Domain
developer-experience, testing
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.