Fix directory case mismatch for Inertia page resolution on case-sensitive systems #95
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR addresses an issue where Inertia.js fails to locate page components on systems with case-sensitive file paths (e.g., Linux-based CI runners).
By default, Inertia.js expects pages to be located in the
js/Pages
directory, as defined in its config. However, the Laravel starter kit uses a lowercasejs/pages
folder instead.This mismatch causes issues when using Inertia's
component()
testing functionality, which relies on correct path resolution and fails on case-sensitive environments like GitHub Actions.Changes included
js/pages
folder tojs/Pages
.resolvePageComponent()
calls in:resources/js/app.ts
resources/js/ssr.ts
Alternatives considered
If the starter kit prefers keeping
js/pages
, two options are available:root_view
path.