oxc-project
oxc-resolver
BlogDocsChangelog

fix: ensure canonicalized paths remain accessible via strong references

#733Merged
Comparing
fix-canonicalized-path-dropped
(
9e971fa
) with
main
(
7c29092
)
CodSpeed Performance Gauge
+1%
Untouched
7
Skipped
2

Benchmarks

Skipped (2)

parallel_batch_4_files
benches/resolver.rs::resolver::bench_package_json_deserialization::package_json_deserialization
Skipped
91.1 µs*
batch_4_files
benches/resolver.rs::resolver::bench_package_json_deserialization::package_json_deserialization
Skipped
78.6 µs*

Passed

small
benches/resolver.rs::resolver::bench_package_json_deserialization::package_json_deserialization
CodSpeed Performance Gauge
+2%
10.6 µs10.3 µs
medium
benches/resolver.rs::resolver::bench_package_json_deserialization::package_json_deserialization
CodSpeed Performance Gauge
+1%
23.4 µs23.1 µs
complex_real
benches/resolver.rs::resolver::bench_package_json_deserialization::package_json_deserialization
CodSpeed Performance Gauge
+1%
32.9 µs32.5 µs
large
benches/resolver.rs::resolver::bench_package_json_deserialization::package_json_deserialization
CodSpeed Performance Gauge
+1%
44.1 µs43.8 µs
resolver[resolve from symlinks]
benches/resolver.rs::resolver::bench_resolver
CodSpeed Performance Gauge
0%
63.3 ms63.1 ms
resolver[single-thread]
benches/resolver.rs::resolver::bench_resolver
CodSpeed Performance Gauge
0%
482.4 µs482.3 µs
resolver[multi-thread]
benches/resolver.rs::resolver::bench_resolver
CodSpeed Performance Gauge
0%
515.5 µs516.8 µs

Commits

Click on a commit to change the comparison range
Base
main
7c29092
+0.76%
fix: ensure canonicalized paths remain accessible via strong references Fixes #732 - "Canonicalized path was dropped" error that could occur in CI environments. The issue was that canonicalized paths were only stored as weak references without ensuring a strong reference existed in the cache. This could cause the Arc to be immediately dropped, leading to the weak reference failing to upgrade. The fix ensures canonicalized paths are added to the cache (if not already present) before downgrading to weak references, maintaining at least one strong reference while preserving the weak reference pattern needed to avoid memory leaks. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
9e971fa
19 days ago
by Boshen
© 2025 CodSpeed Technology
Home Terms Privacy Docs