-
Couldn't load subscription status.
- Fork 210
feat: improve simulator iteration speeds #6577
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
Conversation
|
Thanks for opening this pull request! 🎉
|
|
Console preview environment is available at https://wing-console-pr-6577.fly.dev 🚀 Last Updated (UTC) 2024-05-28 19:49 |
BenchmarksComparison to Baseline 🟥⬜⬜⬜⬜⬜⬜⬜⬜⬜⬜⬜⬜
⬜ Within 1.5 standard deviations Benchmarks may vary outside of normal expectations, especially when running in GitHub Actions CI. Results
Last Updated (UTC) 2024-05-28 19:54 |
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.
Feels like maybe we need some more test coverage for this?
|
Thanks for contributing, @Chriscbr! This PR will now be added to the merge queue, or immediately merged if |
|
Congrats! 🚀 This was released in Wing 0.74.21. |
Extends the changes made in #6577 for reducing the time it takes for the simulator to update to cloud.Service and sim.Resource. ## Checklist - [x] Title matches [Winglang's style guide](https://www.winglang.io/contributing/start-here/pull_requests#how-are-pull-request-titles-formatted) - [x] Description explains motivation and solution - [x] Tests added (always) - [ ] Docs updated (only required for features) - [ ] Added `pr/e2e-full` label if this feature requires end-to-end testing *By submitting this pull request, I confirm that my contribution is made under the terms of the [Wing Cloud Contribution License](https://github.com/winglang/wing/blob/main/CONTRIBUTION_LICENSE.md)*.
Extends the changes made in #6577 for reducing the time it takes for the simulator to update to cloud.Service and sim.Resource. ## Checklist - [x] Title matches [Winglang's style guide](https://www.winglang.io/contributing/start-here/pull_requests#how-are-pull-request-titles-formatted) - [x] Description explains motivation and solution - [x] Tests added (always) - [ ] Docs updated (only required for features) - [ ] Added `pr/e2e-full` label if this feature requires end-to-end testing *By submitting this pull request, I confirm that my contribution is made under the terms of the [Wing Cloud Contribution License](https://github.com/winglang/wing/blob/main/CONTRIBUTION_LICENSE.md)*.
Closes #6540
The main thrust of the change in this PR is to reduce the time spent re-bundling inflight JavaScript code with esbuild. To do that, we take a rough heuristic that most of the time, if none of the files that go into a bundle have changed, then the bundle doesn't need to be regenerated. There are technically some edge cases where this may not be the case, but the heuristic should be accurate enough to handle most local iteration scenarios.
cloud.Functionsimulation to track which files are produced by the esbuild bundle, and consult against the file's timestamps when the resource is choosing its update planChecklist
pr/e2e-fulllabel if this feature requires end-to-end testingBy submitting this pull request, I confirm that my contribution is made under the terms of the Wing Cloud Contribution License.