smithy-lang / smithy-language-server

A Language Server Protocol implementation for the Smithy IDL
https://smithy.io
Apache License 2.0
33 stars 18 forks source link

Fix matching inline inputs/outputs with operations #111

Closed kubukoz closed 1 year ago

kubukoz commented 1 year ago

Issue #, if available: #110

Description of changes:

This fixes #110 (an IIOBE) by preventing the underlying issue: the FileCachingCollector mixing up operations with the same name in different namespaces.

Unfortunately, the test that reproduced the issue is flaky, as it would only fail about half the time before the fix was added - I think there's some non-deterministic behavior in some part of the collector that affects the order of things being collected, and sometimes prevents exhibiting the incorrect behavior. I've confirmed that it reliably passes now after the fix was applied.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.