You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We've just released Encore v1.25 which comes with several large build & test performance improvements!
As always, update with encore version update.
Improved CI Build & Test Speeds
Encore's CI system now uses a brand-new streaming cache system. Previously Encore tar and untar-ed the build & test cache, adding to the build time and leading to an unfortunate trade-off between cache hit rate and cache restore/save times.
With this release, Encore now uses a streaming cache that on-demand downloads and uploads individual cache entries. This entirely removes the cache restore/save steps, leading to a substantial speed-up. Additionally, the improved cache accuracy leads to more parts of the build being cached, further improving build times.
We've seen up to a 70% reduction in build & test times for many real-world applications, depending on the nature of the change.
Improved Local Development Performance
We've further optimized how Encore's code generation works, leading to improved build & test times, particularly when the changes are small (compared to the previous build). Depending on the change this new release should offer a 10% to 100% reduction in build times (yes, you heard that right!), and similar improvements to test execution speeds through improved test caching.
Additionally, we've further improved the Live Reload speed by improving the graceful shutdown process. More on that below.
Graceful Shutdown Improvements
Encore now implements a more optimized graceful shutdown process, reducing shutdown times when there are no outstanding requests being processed. Encore also provides the encore.dev/shutdown package that allows services to opt-in to more detailed information about the shutdown process, by implementing shutdown.Handler on a service struct.
The old signature (func (*Service) Shutdown(force context.Context)) is still supported for backward compatibility.
❤️ As always, we're excited to hear what you think!
Please share your feedback on Slack.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
We've just released Encore v1.25 which comes with several large build & test performance improvements!
As always, update with
encore version update
.Improved CI Build & Test Speeds
Encore's CI system now uses a brand-new streaming cache system. Previously Encore tar and untar-ed the build & test cache, adding to the build time and leading to an unfortunate trade-off between cache hit rate and cache restore/save times.
With this release, Encore now uses a streaming cache that on-demand downloads and uploads individual cache entries. This entirely removes the cache restore/save steps, leading to a substantial speed-up. Additionally, the improved cache accuracy leads to more parts of the build being cached, further improving build times.
We've seen up to a 70% reduction in build & test times for many real-world applications, depending on the nature of the change.
Improved Local Development Performance
We've further optimized how Encore's code generation works, leading to improved build & test times, particularly when the changes are small (compared to the previous build). Depending on the change this new release should offer a 10% to 100% reduction in build times (yes, you heard that right!), and similar improvements to test execution speeds through improved test caching.
Additionally, we've further improved the Live Reload speed by improving the graceful shutdown process. More on that below.
Graceful Shutdown Improvements
Encore now implements a more optimized graceful shutdown process, reducing shutdown times when there are no outstanding requests being processed. Encore also provides the
encore.dev/shutdown
package that allows services to opt-in to more detailed information about the shutdown process, by implementingshutdown.Handler
on a service struct.The old signature (
func (*Service) Shutdown(force context.Context)
) is still supported for backward compatibility.❤️ As always, we're excited to hear what you think!
Please share your feedback on Slack.
This discussion was created from the release Huge Build & Test Performance Improvements.
Beta Was this translation helpful? Give feedback.
All reactions