inngest / inngest-js

The developer platform for easily building reliable workflows with zero infrastructure for TypeScript & JavaScript
https://www.inngest.com/
GNU General Public License v3.0
440 stars 43 forks source link

Add CI tests for dist and dependency issues #406

Closed jpwilliams closed 12 months ago

jpwilliams commented 1 year ago

Summary

An assortment of fixes and regression tests for consumers using skipLibCheck: false.

New CI test checks for dependencies used within exported files but in devDependencies instead of dependencies. For any regular project, all types would be inside devDependencies, but this isn't true for libraries depending on how they're being consumed.

We use import/no-extraneous-dependencies for most of this (thanks, @goodoldneon), but include the script to also cover @types/* packages that must be shipped in dependencies or bundled. This can be the case if the consuming package won't get types from the base package that is included in dependencies and those types are part of any exported types.

[!NOTE] We currently ignore modules within serve handler files, as we expect these types to be peer dependencies.

Successful builds can also still produce erroring *.d.ts files against some versions/configurations of TypeScript. Another new CI test runs checks against these generated files with every supported minor of TypeScript.

Checklist

changeset-bot[bot] commented 1 year ago

🦋 Changeset detected

Latest commit: 1b5455118995e02d544f4ddd6e15975c55a5f2be

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package | Name | Type | | ------- | ----- | | inngest | Patch |

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR