-
Notifications
You must be signed in to change notification settings - Fork 1.7k
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
LSP Rewrite Step 1: fix many bugs, more LSP test coverage! #3521
Conversation
🦋 Changeset detectedLatest commit: f6b3e6c The changes in this PR will be included in the next version bump. Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
f38f179
to
57e35e9
Compare
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #3521 +/- ##
==========================================
+ Coverage 55.32% 60.80% +5.48%
==========================================
Files 115 120 +5
Lines 5352 5616 +264
Branches 1451 1487 +36
==========================================
+ Hits 2961 3415 +454
+ Misses 1965 1749 -216
- Partials 426 452 +26
|
The latest changes of this PR are not available as canary, since there are no linked |
5b8e336
to
1df8b2e
Compare
2ff4224
to
c22b0c6
Compare
6d549a2
to
a69c816
Compare
bfd95e0
to
02d6a9c
Compare
de8b2ec
to
6839f3f
Compare
For anyone who wants to give it a try, here is a zip of the 0.10.0 vsix! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
small, human-facing
375292f
to
2d1cbbb
Compare
fb5285e
to
798d782
Compare
c4098e5
to
7e32382
Compare
5a03f38
to
0496caa
Compare
0496caa
to
203a2c0
Compare
745a642
to
496c364
Compare
697e406
to
66b7bf2
Compare
5773bcb
to
fb7d418
Compare
fb7d418
to
e5ab31e
Compare
this fixes multiple cacheing bugs, on writing some in-depth integration coverage for the LSP server.
it also solves several bugs regarding loading config types, and properly restarts the server when there are config changes
Bugfix Summary
graphql
entryKnown Bugs Fixed
package.json
is detected but doesn't contain graphql config #2820Test Improvements
What Happens After This?:
Is there a Prerelease? #
Try it out here! Just install the .vsix in the .zip. If you still have any issues, please report them in the applicable bug ticket, noting there is still an issue with the new 0.10.x release. We will try to capture all edge cases in the new test suite
https://github.com/graphql/graphiql/files/14475534/vscode-bugfixes.zip
Test methodology thoughts
overall, this new quasi behavioral integration spec plane serves as a learning tool for contributors, a refactoring tool (I may have a stash for a new chained branch ready to go haha) and a tool for discovering bugs and readily identifying their sources, even allowing us to use a BDD approach to fixing bugs (and soon adding features!) 😍 !!
the only major caveat of this testing approach is that, like with many high level, quasi-e2e integration tests, these rely on our assumptions of how LSP clients are using our service interfaces. This is something that changes ever so slightly and even in semi-breaking ways in vscode (like with the introduction of multi-root workspaces), so careful readings of the
vscode-languageserver
changelog and probably also the LSP protocol spec will be required to maintain this spec, and not cause mysterious false positives