developit / developit/microbundle

Bundled type definitions for bundled dependencies?

Open
#1,050 5 comments 1 reaction 0 assignees View on GitHub
TypeScript
Dominant language
JavaScript
Stars
8.1k
Forks
358
PR merge metrics
No merged PRs in 30d

Description

**Context:** As documented in #454 and [*How Microbundle decides which dependencies to bundle*](https://github.com/developit/microbundle/wiki/How-Microbundle-decides-which-dependencies-to-bundle#1-i-want-to-bundle-a-dependency), one recommended way to bundle dependencies is to put the dependency in `devDependencies` rather than `dependencies`.

**Problem:** `my-bundled-dependency` is bundled into `my-parent-library`, and affects its exported type definitions. Recently a downstream user of my package reported an issue that surprised me – while the JavaScript is bundled as expected, the type definitions are not bundled, and contain an import from `my-bundled-dependency`. This causes builds to fail for users of `my-parent-library` if they've enabled TypeScript's `skipLibCheck: false`. If this is unexpected and a simple repro example would be helpful, I'm happy to create that.

**Alternatives:** Should the type definitions also be bundled by Microbundle? By TypeScript? Am I perhaps making a mistake by using a bundled dependency in my exported TypeScript API? I'm inclined to the idea that this is something TypeScript, not Microbundle, should ideally handle. But they've historically been pretty [unenthusiastic](https://github.com/microsoft/TypeScript/issues/4433) about such requests.

**Related:**

- https://github.com/donmccurdy/glTF-Transform/issues/996

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.