Skip to content

Vitest v1.0.0-beta5 browser mode hangs in an infinite reload #4570

@nicojs

Description

@nicojs

Describe the bug

When running the beta-5 release of vitest in browser mode, you can get stuck in an infinite loop if you have an older version of pretty-format installed as sibling of vitest. See animated gif:

vitest-infinite-reload

Reproduction

mkdir foo && cd foo
npm init --yes
npm i -D vitest@beta @vitest/browser@beta playwright pretty-format@21
touch vitest.config.js
# import { defineConfig } from 'vitest/config';
# 
# export default defineConfig({
#   test: {
#     globals: true,
#     browser: {
#       enabled: true,
#       name: 'chromium',
#       provider: 'playwright',
#       headless: false,
#     },
#   },
# });

# Add an example project
npx vitest

Or download this zip:
vitest-infinite-reload.zip

System Info

System:
    OS: Linux 5.15 Ubuntu 20.04.6 LTS (Focal Fossa)
    CPU: (16) x64 11th Gen Intel(R) Core(TM) i7-11850H @ 2.50GHz
    Memory: 10.11 GB / 15.49 GB
    Container: Yes
    Shell: 5.0.17 - /bin/bash
  Binaries:
    Node: 18.18.0 - ~/.nvm/versions/node/v18.18.0/bin/node
    Yarn: 1.22.19 - ~/.nvm/versions/node/v18.18.0/bin/yarn
    npm: 9.8.1 - ~/.nvm/versions/node/v18.18.0/bin/npm
    pnpm: 8.9.2 - ~/.nvm/versions/node/v18.18.0/bin/pnpm
  Browsers:
    Chrome: 118.0.5993.117
  npmPackages:
    @vitest/browser: ^1.0.0-beta.5 => 1.0.0-beta.5
    vitest: ^1.0.0-beta.5 => 1.0.0-beta.5

Used Package Manager

npm

Validations

Metadata

Metadata

Assignees

No one assigned

    Labels

    feat: browserIssues and PRs related to the browser runner

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions