Skip to content

Conversation

@haoqunjiang
Copy link
Member

@haoqunjiang haoqunjiang commented Jun 29, 2021

Description

See #3353 (comment)

Comparing to the behavior before v2.3.1, the new default now throws a runtime error in the following case:

  • require(/* a dynamic expression */), where dynamicRequireTargets is specified, but the expression in the require call cannot be resolved via the targets.

Comparing to the behavior since v2.3.1, the new default fixes the following use case:

  • typeof require ==== 'function'

It is used in many legacy UMD bundles for CommonJS environment detection.

Fixes #3426
Fixes #3997

Additional context


What is the purpose of this pull request?

  • Bug fix
  • New Feature
  • Documentation update
  • Other

Before submitting the PR, please make sure you do the following

  • Read the Contributing Guidelines.
  • Read the Pull Request Guidelines and follow the Commit Convention.
  • Check that there isn't already a PR that solves the problem the same way to avoid creating a duplicate.
  • Provide a description in this PR that addresses what the PR is solving, or reference the issue that it solves (e.g. fixes #123).
  • Ideally, include relevant tests that fail without this PR but pass with it.

@patak-dev patak-dev merged commit c08069c into vitejs:main Jun 29, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Uncaught TypeError: Cannot read property 'constant' of undefined Error importing "pluralize" / different behavior between production and dev build

2 participants