feat: allow to use TypeScript in the config file#18300
Conversation
|
Thanks for taking the time to open a PR!
|
Test summaryRun details
View run in Cypress Dashboard ➡️ Flakiness
This comment has been generated by cypress-bot as a result of this project's GitHub integration settings. You can manage this integration in this project's settings in the Cypress Dashboard |
||||||||||||||||||||||||||||||||||||||
jennifer-shehane
left a comment
There was a problem hiding this comment.
@elevatebart I think this is linking to the wrong Jira story.
Is there any conflict resolution logic planned for this PR? If there's a cypress.config.ts and cypress.config.js and cypress.json, how is that meant to resolve in this PR?
I see the TypeScript config file basically working if I pass it with the --config-file argument, but it's not working as a default cypress.config.ts file. It's always creating a cypress.json file when I open the project with the file there.
|
Sorry @jennifer-shehane I did not mean to confuse you I should have kept this one as a draft until the other PR was merged. I will resolve the merge conflicts and you will see the resolution logic work. |
Co-authored-by: Zach Bloomquist <github@chary.us>
* develop: (31 commits) fix: `everyNthFrame` should only be applied for Chrome 89+ (#18392) docs: General updates to contributing guide (#18283) chore: Update Chrome (beta) to 95.0.4638.40 (#18389) chore: use circleci timings split for e2e tests (#18367) fix: fixed title (#18370) chore(deps): update dependency electron to v14 🌟 (#18384) chore(server): share client route (#18215) fix: Prevent Cypress from crashing when argument parsing "spec: {}" (#18312) chore: update husky dev dependency to v7 (#18345) feat: add defineConfig function to help type config (#18302) chore: Update Chrome (stable) to 94.0.4606.71 (#18324) feat: allow to use TypeScript in the config file (#18300) allow select to be called with empty array (#18329) fix(vite-dev-server): windows `supportFile` + preserve optimize entries (#18286) chore: fix semantic-release dry run (#18332) fix(driver): improve status_code_flags_invalid error message (#18316) chore(deps): update dependency electron to v13.5.0 🌟 (#18318) chore: Update Chrome (stable) to 94.0.4606.61 and Chrome (beta) to 95.0.4638.32 (#18229) fix(proxy-logging): use constant consoleProps object (#18207) feat(driver): Add "overwrite" option to cy.screenshot() (#18280) ...
* develop: (33 commits) fix: remove .json check from require_async, prevent child_process spawn (#18416) percy snapshot the tooltip visually, prevent it from being hidden fix: `everyNthFrame` should only be applied for Chrome 89+ (#18392) docs: General updates to contributing guide (#18283) chore: Update Chrome (beta) to 95.0.4638.40 (#18389) chore: use circleci timings split for e2e tests (#18367) fix: fixed title (#18370) chore(deps): update dependency electron to v14 🌟 (#18384) chore(server): share client route (#18215) fix: Prevent Cypress from crashing when argument parsing "spec: {}" (#18312) chore: update husky dev dependency to v7 (#18345) feat: add defineConfig function to help type config (#18302) chore: Update Chrome (stable) to 94.0.4606.71 (#18324) feat: allow to use TypeScript in the config file (#18300) allow select to be called with empty array (#18329) fix(vite-dev-server): windows `supportFile` + preserve optimize entries (#18286) chore: fix semantic-release dry run (#18332) fix(driver): improve status_code_flags_invalid error message (#18316) chore(deps): update dependency electron to v13.5.0 🌟 (#18318) chore: Update Chrome (stable) to 94.0.4606.61 and Chrome (beta) to 95.0.4638.32 (#18229) ...
* feat: allow to use typescritpt in the config file * add end to end test * test: add test for the default config file ts * tests: add a tests for language conflict * fix: only compile typescript if main file is ts Co-authored-by: Zach Bloomquist <github@chary.us> Co-authored-by: Zach Bloomquist <github@chary.us>
User facing changelog
Before
We could only use JSON and JavaScript to configure cypress
After
We can use TypeScript additionally to JS and JSON
Additional details
I also added
cypress.config.tsas a detected default config filePR Tasks