fix initializer: configPath should never be inside /src and should be .js#64
Conversation
Signed-off-by: Kipras Melnikovas <kipras@kipras.org>
| const configPath = `${basePath}${ | ||
| !isReduced ? '/src' : '' | ||
| }/codeshift.config.ts`; | ||
| }/codeshift.config.js`; |
There was a problem hiding this comment.
Hey @kiprasmel 👋 You should be able to initialise and simply switch over to a js codeshift.config.js file.
I'd prefer to have TS be the default output type to be consistent and typesafe.
Are you able to share more about the issue you're running into? maybe I can help 😄
There was a problem hiding this comment.
hey hey, that's fair, but i still think the config being js is a better default.
i am a big typescript fan and have been using it almost for every project for the last few years, but this is different. this could very well be a json file, and we could call the require.resolve ourselves.
it has little to do w/ type safety, and a lot with making tools that could utilize it, easier and simpler, because importing json/js is way easier than uncompiled .ts:D
i have created a wrapper cli around codeshift-cli just for simple running of local files, and having the js file as config makes it easy to import w/o having to compile or run ts-node first. the whole cli is temporary since we only need it for quickly running the local codemods but hopefully after more usage i can upstream the changes here. sadly cannot share atm since it depends on other unrelated code..
There was a problem hiding this comment.
this could very well be a json file, and we could call the require.resolve ourselves.
it has little to do w/ type safety, and a lot with making tools that could utilize it, easier and simpler, because importing json/js is way easier than uncompiled .ts:D
I really like this rationale! I'm onboard!
the whole cli is temporary since we only need it for quickly running the local codemods but hopefully after more usage i can upstream the changes here
Sounds amazing, i'd love that!
There was a problem hiding this comment.
fyi, this is an example of why i needed this: #65
im working on another improvement and having the config in .ts not .js makes it harder to work with before we run ts-node and get the built output, and this will be the same for consumers so I believe this is the better way for everyone.
wdyt?
& did i miss any spots for
codeshift.config[tj]s?