-
Notifications
You must be signed in to change notification settings - Fork 273
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
add import
prop @ FileMigrationProvider
.
#994
base: v0.28
Are you sure you want to change the base?
add import
prop @ FileMigrationProvider
.
#994
Conversation
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
import
prop @ FileMigrationProvider
.
d3cf478
to
ddfe24e
Compare
@@ -2,7 +2,8 @@ | |||
"extends": "../../tsconfig-base.json", | |||
"include": ["src/**/*"], | |||
"compilerOptions": { | |||
"module": "CommonJS", | |||
"outDir": "dist" | |||
"module": "NodeNext", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
necessary to allow importing tsx/*
.
import chaiAsPromised from 'chai-as-promised' | ||
import chaiSubset from 'chai-subset' | ||
import Cursor from 'pg-cursor' | ||
import { Pool, PoolConfig } from 'pg' | ||
import { createPool } from 'mysql2' | ||
import * as Database from 'better-sqlite3' | ||
import Database from 'better-sqlite3' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
necessary after tsconfig
changes.
1003a53
to
1994fbb
Compare
This would help so much! |
8b9ab06
to
49e8f06
Compare
.. add FileMigrationProvider test suite. ..
49e8f06
to
ca167d5
Compare
Hey 👋
This PR allows passing an optional custom
import
function @FileMigrationProvider
.e.g. this would allow consumers to pass a function that uses
tsImport
bytsx
to import TS files without the need to precompile them when using Node.js or a similar JavaScript runtime that doesn't have built-in TS file support.Also adds
onDiscarded
optional prop, so external tooling can warn users about files that were ignored by the migration provider.Also extracts file extension check to a protected method - can be overridden to only support TS files by an extending class.
Also adds
cjs
&cts
support.These changes were inspired by https://github.com/kysely-org/kysely-ctl/blob/main/src/kysely/ts-file-migration-provider.mts , a custom provider implementation in
kysely-ctl
that only works with TS migration files, on all runtimes.