The Wire · Showcase
RANGER AND SURVEYOR SHIP MAJOR PERFORMANCE WINS
By RepoJournal · Filed · About Laravel
Laravel's code introspection tools just eliminated redundant file scanning and cache invalidation in back-to-back releases that will speed up large applications significantly.
Ranger v0.5.0 and v0.4.0 landed overnight with two critical efficiency fixes [1] [2]. Version 0.4.0 stops rescanning the application for every collector by introducing a single Inventory that reads PHP files once instead of five times per run [4], a massive win on large codebases. The follow-up 0.5.0 adds ignore marker support so consumers can respect what authors mark as excluded [3], covering models, enums, broadcast channels, and controller routes.
Surveyor v0.3.0 ships five PRs including deterministic analysis [8], which fixes a bug where analyzing the same file twice could yield different results depending on traversal order. The release also validates cached analyses against only the files they directly reference, not the full transitive closure [6], dramatically reducing cache invalidation on edits. Ignore markers now work during analysis [7] so marked members get filtered everywhere downstream.
On the frontend, vite-plugin-wayfinder merged a debounce fix that serializes type generation during dev [9], preventing race conditions when multiple PHP files change at once. Branch switches and format-on-save now collapse into single runs with a 100ms trailing debounce. All three repos moved in sync: these tools are converging on the same ignore marker pattern and getting faster at the same time.
One email a day. Unsubscribe in one click.
Keep up with Laravel in about 3 minutes a day: what actually shipped — the commits, pull requests, releases, and security advisories that matter.
One email a day. Unsubscribe in one click. Read a past issue →
Action items
- → Upgrade Ranger to v0.5.0 if using surveyor ignore markers in your app laravel/ranger [plan]
- → Update Surveyor to v0.3.0 for faster analysis caching on large projects laravel/surveyor [plan]
- → Merge vite-plugin-wayfinder debounce fix to prevent dev mode race conditions laravel/vite-plugin-wayfinder [monitor]
References
- [1] v0.5.0 ↗ laravel/ranger
- [2] v0.4.0 ↗ laravel/ranger
- [3] Leave marked declarations out of collected components ↗ laravel/ranger
- [4] Stop rescanning the application for every collector ↗ laravel/ranger
- [5] v0.3.0 ↗ laravel/surveyor
- [6] Validate cached analyses against dependency surfaces ↗ laravel/surveyor
- [7] Recognize ignore markers during analysis ↗ laravel/surveyor
- [8] Make analysis deterministic ↗ laravel/surveyor
- [9] Debounce and serialize type generation during dev ↗ laravel/vite-plugin-wayfinder