-
Notifications
You must be signed in to change notification settings - Fork 0
fix: out of disk by sharing the temp directory across packages #38
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
fix: out of disk by sharing the temp directory across packages #38
Conversation
20e1913 to
ec303fc
Compare
CodSpeed Performance ReportMerging #38 will degrade performances by 15.35%Comparing Summary
Benchmarks breakdown
|
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.
Pull Request Overview
This PR addresses out-of-disk-space issues by optimizing temporary directory usage and implementing proper cleanup mechanisms. The changes introduce a shared temporary directory across packages and automatic reversion of file modifications.
- Refactored
Templaterto use a single shared temporary directory viaOnceCellinstead of creating one per package - Introduced
CodspeedContextstruct to encapsulate package-specific setup with cleanup tracking via aPatcherthat reverts changes on drop - Added cleanup of raw results directory after parsing to save disk space
Reviewed Changes
Copilot reviewed 6 out of 7 changed files in this pull request and generated 6 comments.
Show a summary per file
| File | Description |
|---|---|
| go-runner/tests/utils.rs | Updated test utilities to use new Templater API with CodspeedContext |
| go-runner/src/results/raw_result.rs | Changed glob pattern to expect raw results directly in provided folder path |
| go-runner/src/lib.rs | Added raw_results subdirectory handling, cleanup logic, and empty results validation |
| go-runner/src/builder/templater.rs | Major refactor introducing CodspeedContext and shared temp directory via OnceCell |
| go-runner/src/builder/patcher.rs | Extracted Patcher struct with state tracking and automatic reversion via Drop trait |
| go-runner/Cargo.toml | Added once_cell dependency for lazy initialization |
| Cargo.lock | Updated lockfile with once_cell dependency |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
ec303fc to
95f922e
Compare
c2eb2fe to
4ccc1fb
Compare
GuillaumeLagrange
left a comment
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.
small comments + the changes we discussed to make use of git to revert rather than manually undoing the patches
4e07ea9 to
176cd46
Compare
97cc75c to
efb0b12
Compare
GuillaumeLagrange
left a comment
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.
olgtm, almost there!
efb0b12 to
c5f02fb
Compare
Fixes #37
Changes in this PR:
CodspeedContextstruct which stores all the temporary modifications that should be reverted afterwards.