microsoft / microsoft/STL

Unable to run tests with `subst` drive letters

Open
#4,617 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

test
Dominant language
C++
Stars
11.2k
Forks
1.7k
Avg merge
4d 15h
Merged PRs (30d)
22

Description

Encountered by @H-G-Hristov in #4611.

Possibly related to the codepaths that I changed in #4395.

Confirmed by @AlexGuteniev on Discord, quoting his repro:

C:\Project\STL\out\x64>subst /?
Associates a path with a drive letter.

SUBST [drive1: [drive2:]path]
SUBST drive1: /D

  drive1:        Specifies a virtual drive to which you want to assign a path.
  [drive2:]path  Specifies a physical drive and path you want to assign to
                 a virtual drive.
  /D             Deletes a substituted (virtual) drive.

Type SUBST with no parameters to display a list of current virtual drives.

C:\Project\STL\out\x64>subst D: C:\Project

C:\Project\STL\out\x64>D:

D:\>cd stl\out\x64

D:\STL\out\x64>python tests\utils\stl-lit\stl-lit.py ..\..\tests\std\tests\VSO_0000000_vector_algorithms -v
stl-lit.py: D:\STL\tests\std\lit.cfg:4: fatal: You seem to be running Lit directly -- you should be running Lit through <build>/tests/utils/stl-lit/stl-lit.py, which will ensure that the right Lit configuration file is used.

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 failure using a Windows subst drive and the command shown in the issue. Start with tests/utils/stl-lit/stl-lit.py and tests/std/lit.cfg, then trace why the runner treats the substituted path as a direct Lit invocation. Done means the cited test command runs successfully from the substituted drive.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, python
Domain
testing-qa, tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.