Handle missing source in sourcemap gracefully#1250
Open
Conversation
Use the returnNullOnMissing parameter of sourceContentFor to avoid throwing when the source file isn't in the sourcemap (e.g. when no adaptor is provided). See #1249
Contributor
Author
|
Hey @josephjclark the approach I am taking here was suggested by Claude Code and kind of made sense to me. But I want you to look at this and see if it's a fix you'd want. I am just learning here and exploring the code. Thanks man |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Short Description
Use the
returnNullOnMissingparameter ofsourceContentForto avoid throwing when the source file isn't in the sourcemap (e.g. when no adaptor is provided).See #1249
Implementation Details
When running a job without an adaptor (
openfn job.js), the compiler produces a sourcemap that doesn't contain the expected file entries. If the job then errors,sourcemap-errors.tstriessmc.sourceContentFor(fileName)which throws, triggering a confusingconsole.warn("Error occurred trying to resolve sourcemap for ...")before the actual error.The fix passes
trueas the second argument tosourceContentFor, which makes it returnnullinstead of throwing when the source isn't found. We then skip settingerror.pos.srcif there's no content.QA Notes
openfn job.jswithout-aon a job that uses adaptor functions (e.g.get(...))ReferenceErroris shownAI Usage