Skip to content

Make @types/react-dom a Peer dependency #1318

@daniel-nagy

Description

@daniel-nagy

Describe the feature you'd like:

@types/react-dom is a dependency. The reason is that the types from @testing-library/react directly reference these types, as noted in this PR #1001.

However, this may cause multiple versions of these types to be installed in a user's project. For example, when updating to React 19 beta.

Suggested implementation:

I think it would be better to make these types a peer dependency. If someone is using React, TypeScript, and React Testing Library, then they should install these types anyway.

In the event of a miss-match, they would get a warning from the package manager of an unmet peer-dependency, instead of the package manager silently installing multiple versions and resulting in a stampede of confusing type errors.

Describe alternatives you've considered:

Use overrides to force the correct version of these types to be installed. This is not good DX.

Teachability, Documentation, Adoption, Migration Strategy:

Users will need to install @types/react-dom themselves.

Metadata

Metadata

Assignees

No one assigned

    Labels

    duplicateThis issue or pull request already exists

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions