Prevent migration code lens from failing in unsaved files #450
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.
Our code lens code assumes that migration files are already saved to disk, by running
File.basename(T.must(@path))
.It seemed like a reasonable assumption, but judging by our error telemetry, it seems people will write unsaved migrations more often that I expected. We can't run a migration that wasn't saved yet, so we just need to ensure the code doesn't break.
Note: there's currently no way to test this because the
with_server
test helper assumes that the URI passed will exist on disk, which is a limitation of our helper. This means I can't pass anuntitled:Untitled-1
URI to reproduce the issue.You can verify that the issue is fixed after this change by pasting this migration into an unsaved file.