-
Notifications
You must be signed in to change notification settings - Fork 326
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Discrepancies in PR 3286 #3304
Comments
Today, I tried to test the other command introduced by PR #3286,
The following response was observed from the last message:
At the same time, it can be seen, that
I'm happy to retry the last test if advised that I did something incorrectly or missed some step when performing it. |
After the first round of QA/Acceptance Review testing on PR #3286 (https://www.pivotaltracker.com/story/show/180916527), focusing on the
library/getPackage
message, I found some discrepancies between what is described in the design doc, what happens actually, and what is described in the API docs. They fall mostly in two general categories:library/getPackage
seems to not match the format described in the API doc, both in field names and in field types (at various levels of nesting).A list of example cases I observed comes below.
API documentation of
ComponentGroups.newGroups
field name is inconsistent with.new
field being apparently returned insteadYaml semantics different than in Design Doc
Snippet similar as presented in Design Doc does not work:
Instead, snippet with different indentation (which conveys different semantics in YAML, as can be seen comparing the
"raw"
field in the response below vs. above) works:Similarly, adding a
shortcut
as in design doc does not work:but instead semantically different YAML document seems to work:
Nonconforming response returned
In response, at path
result.componentGroups.new[0].exports[0]
note a string value"foo"
, where expected aComponent
containing{"name":"foo"}
.In response, at path
result.componentGroups.new[0].exports[1]
note a string value"bar"
, where expected aComponent
containing{"name":"bar"}
.Empty response returned with no error message, even though component groups at least partially correct
Is it described somewhere how we want to behave in case of partially correct input? Do we want to somehow provide error message to user to guide them what they did wrong? Notably, the
extends:
section in the document below was copied from the design doc.API docs for
extendedGroups
field don't match actual semanticssee https://github.com/enso-org/enso/blob/abbb3a467915eabf37e91329317ba6c3274fc1e0/docs/language-server/protocol-language-server.md#componentgroups
In example below:
.extendedGroup
, field namedextends
is returnedresult.componentGroups.extends[0].module
, expected aModuleReference
object according to API docs, but got a string"Standard.Base.Main"
insteadError code should be 8007, is 1000, for LocalLibraryNotFound
Per definition of LocalLibraryNotFound message, referenced in the errors section of
library/getPackage
message. Got code 1000 in transcript below:Returned
componentGroups
field's empty value is sometimes{}
, sometimesnull
Not strictly error, but possibly surprising behavior.
The text was updated successfully, but these errors were encountered: