Skip to content
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

experimentalJustInTimeCompile is not shown as enabled under cy open > settings #30126

Closed
muratkeremozcan opened this issue Aug 28, 2024 · 8 comments · Fixed by #30128
Closed

Comments

@muratkeremozcan
Copy link

muratkeremozcan commented Aug 28, 2024

Current behavior

Trying out #29244, we add experimentalJustInTimeCompile under component property, but under app settings the feature is not shown as enabled. There is also no title or description under the experiment.

Desired behavior

The experimentalJustInTimeCompile shows as enabled under app settings, so we can confirm that things are working and an i18n description is present

Test code to reproduce

git clone git@github.com:muratkeremozcan/react-cypress-ts-vite-template.git
cd react-cypress-ts-vite-template.
yarn 

yarn cy:open-e2e # or ct

View Settings, and experimentalJustInTimeCompile.

Screenshot 2024-08-28 at 9 54 35 AM

Cypress Version

13.14.0

Node version

20

Operating System

macOS 14.6.1

Debug Logs

No response

Other

We can log out the object in console and see it there, but not in the app itself.

@muratkeremozcan muratkeremozcan changed the title experimentalJustInTimeCompile is not shown as enabled under cy open > app settings experimentalJustInTimeCompile is not shown as enabled under cy open > settings Aug 28, 2024
@jennifer-shehane
Copy link
Member

@muratkeremozcan Thanks for reporting. Seems adding this to this view was overlooked. We'll get a fix out for it in the next release.

Let us know your feedback on the actual feature in this github discussion. I know you've been asking for help around this for a while.

@muratkeremozcan
Copy link
Author

@muratkeremozcan Thanks for reporting. Seems adding this to this view was overlooked. We'll get a fix out for it in the next release.

Let us know your feedback on the actual feature in this github discussion. I know you've been asking for help around this for a while.

I am all over it, will report soon.

@muratkeremozcan
Copy link
Author

@jennifer-shehane @AtofStryker

I tried this out locally in our app with 1.5k component tests.

Without the flag, the startup time was 2:10.
With it, down to 30 seconds. Fantastic improvement. This will save plenty time in CI.

I have to get the PR in to prove out CI is fine, but that should be fine.

@AtofStryker
Copy link
Contributor

@jennifer-shehane @AtofStryker

I tried this out locally in our app with 1.5k component tests.

Without the flag, the startup time was 2:10. With it, down to 30 seconds. Fantastic improvement. This will save plenty time in CI.

I have to get the PR in to prove out CI is fine, but that should be fine.

CI might take a bit longer to run since we need to compile each spec before running, but there shouldn't be any chunk load errors present. If CI is more reliable, but ultimately takes longer to run, smart orchestration should be more effective here and throwing more parallel workers at the problem should ultimately reduce times as well as an option.

@muratkeremozcan
Copy link
Author

@jennifer-shehane @AtofStryker
I tried this out locally in our app with 1.5k component tests.
Without the flag, the startup time was 2:10. With it, down to 30 seconds. Fantastic improvement. This will save plenty time in CI.
I have to get the PR in to prove out CI is fine, but that should be fine.

CI might take a bit longer to run since we need to compile each spec before running, but there shouldn't be any chunk load errors present. If CI is more reliable, but ultimately takes longer to run, smart orchestration should be more effective here and throwing more parallel workers at the problem should ultimately reduce times as well as an option.

Makes sense. Previously because of the set startup time, parallelization had diminishing returns.
Ex: Startup 2.5 mins, tests take 5 mins.

If we parallelized more, the 5 minutes would not reduce further.

Now the startup is 30 secs, but tests take about 8. So we can benefit more from parallelization.

@AtofStryker
Copy link
Contributor

@muratkeremozcan Does the experiment show as enabled when you open via cy:open-ct? The experiment shows an enabled under CT but not under e2e since it is a CT only config when I run the reproduction.
Screenshot 2024-08-28 at 3 18 05 PM

@muratkeremozcan
Copy link
Author

@muratkeremozcan Does the experiment show as enabled when you open via cy:open-ct? The experiment shows an enabled under CT but not under e2e since it is a CT only config when I run the reproduction. Screenshot 2024-08-28 at 3 18 05 PM

You are correct. The focused scripts I have are actually doing a good job of isolating the flags per the test type, and I neglected actually checking the CT mode when enabling the CT-only relevant flag.
This flag is different to other experimental flags where you cannot enable it at base level.

Closing the issue. I will see myself out.

@cypress-bot
Copy link
Contributor

cypress-bot bot commented Aug 29, 2024

Released in 13.14.1.

This comment thread has been locked. If you are still experiencing this issue after upgrading to
Cypress v13.14.1, please open a new issue.

@cypress-bot cypress-bot bot locked as resolved and limited conversation to collaborators Aug 29, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants