firely-net-sdk icon indicating copy to clipboard operation
firely-net-sdk copied to clipboard

Better diagnostics when resolvers fail

Open ewoutkramer opened this issue 9 months ago • 1 comments

The IResourceResolver interface allows resolvers to return "null" when something "cannot be resolved". But the cause of something not being resolvable remains unclear. This has caused many hours of chasing down bugs where the resource could be resolved, but (most prominently) a StructureDefiniton could not be snapshotted.

It would be way better if we could somehow return a resource OR an error. Of course, this is a massively breaking change. But smaller changes would mean the error can be easily ignored. Throwing exceptions also is not a great solution, still a lot of code is currently checking for null.

Since the most problematic of these is the SnapshotSource, a temporary "hack" to check SnapshotSource.Outcome after resolution MAY work, but its not great.

ewoutkramer avatar May 01 '24 12:05 ewoutkramer