David Goldman
e5caf44fda
Add a BuildSystemDelegate which supports notifications for build settings changes
...
Introduce a `BuildSystemDelegate` to handle notifications from the build system
* `SourceKitServer` is the main delegate to process these notifications
* Currently limited to changes in `FileBuildSettings`
* Delegate informs the `BuildSystem` of files to watch via `registerChangeWatching(for: URL)` and `unregisterChangeWatching(for: URL)`
* In the future we could have more integration for handling changes in dependencies
Handling changes in `FileBuildSettings`
* `SourceKitServer` sends notifications to the internal LSPs informing them of any opened documents that have changes in their compiler flags
* For clangd, we send a notification to update the compilation database
* For SourceKit/sourcekitd we must close and reopen the file to force a new AST with the new compiler flags
2019-09-06 17:44:36 -04:00
Ben Langmuir
e1fa70d086
Update SPM -> TSC module name prefixes
2019-09-03 08:29:19 -07:00
Ben Langmuir
3322f35ccc
[diagnostics] Keep semantic diagnostics until a semantic update
...
Sourcekitd returns parse diagnostics immediately after edits, but we do
not want to clear the semantic diagnostics until we have semantic level
diagnostics from after the edit.
2019-08-27 07:13:28 -07:00
Ben Langmuir
32497e6af9
Move diagnostic conversion into its own file
2019-08-26 21:57:37 -07:00
Ben Langmuir
e6392eb179
Fix typo public -> publish
2019-08-26 14:16:37 -07:00
Ben Langmuir
aa6087a2c8
Remove testable imports of SourceKit
2019-08-08 22:28:10 -07:00
cukr
719bed2be0
Response to code review
2019-08-08 23:00:03 +02:00
cukr
7b6197394f
Merge remote-tracking branch 'upstream/master' into implementation
...
# Conflicts:
# Sources/LanguageServerProtocol/ServerCapabilities.swift
# Sources/SourceKit/SourceKitServer.swift
# Tests/LanguageServerProtocolJSONRPCTests/CodingTests.swift
2019-08-07 10:48:30 +02:00
Argyrios Kyrtzidis
9bc43b7dc3
Merge pull request #127 from millenomi/foundationxml
...
FoundationXML: Adoption
2019-07-31 18:05:33 -07:00
Lily Vulcano
810eb2b8fc
FoundationXML: Adoption
...
CommentXML.swift needs to import `FoundationXML` if available.
2019-07-31 15:23:37 -07:00
cukr
7667608eef
Implement "textDocument/implementation" request
2019-07-24 14:42:10 +02:00
Bruno Rocha
7d201f353a
Add EditorPlaceholder parsing
2019-07-06 13:59:23 -03:00
Bruno Rocha
7d066d0e66
Omit completion displayNames when there's no snippet support
2019-07-01 18:57:41 -03:00
Bruno Rocha
587cd892bb
Support clients without completion snippets
2019-06-30 15:13:11 -03:00
Ben Langmuir
8482476ff8
Merge pull request #72 from rockbruno/code-actions-api
...
Add CodeActions/Command structure
2019-06-27 16:05:28 -07:00
cukr
5329b47d12
Tone down on what is escaped to prevent Sublime Text from showing wrong name
2019-06-25 18:24:54 +02:00
cukr
0d15fdf6be
Add markdown escaping for names in hover request
2019-06-25 14:15:57 +02:00
Bruno Rocha
a60c50d1db
Make CodeAction wrapper types an enum
2019-06-19 22:57:40 -03:00
Bruno Rocha
7a97393945
Make CommandArguments an enum
2019-06-19 22:00:18 -03:00
Bruno Rocha
69b6663005
Add CodeActions/Command (Rework)
2019-06-19 22:00:18 -03:00
Bruno Rocha
5406e861b0
Add codeActions API
2019-06-19 21:57:58 -03:00
Ben Langmuir
20662cd553
Merge pull request #107 from Trzyipolkostkicukru/color-literal
...
Implement color presentation
2019-06-19 13:06:18 -07:00
cukr
ba11bd9978
Fix formatting
2019-06-16 20:03:03 +02:00
Marcin Krzyzanowski
fb2d4d14b8
Embrace Swift.Result in place SwiftPM.Basic.Result
2019-06-10 11:24:53 +02:00
cukr
9f9cc9a734
Implement color presentation
2019-05-30 19:36:09 +02:00
Ben Langmuir
36e567395e
Merge pull request #98 from Trzyipolkostkicukru/cukr/document-symbol
...
Implement document symbol request
2019-05-29 17:20:16 -07:00
cukr
f0391f6dca
refactor symbolKind(sourcekitSymbolKind:) to sourcekitd_uid_t extension
2019-05-04 18:18:01 +02:00
cukr
9e1e493e74
Set syntactic_only to avoid unnecessary work, and mangle the name
2019-05-04 16:08:14 +02:00
cukr
550e3768ae
Add DocumentSymbol tests and some missing symbol kinds
2019-05-04 15:48:48 +02:00
cukr
eb8ea967ba
Implement document symbol request
2019-04-20 22:49:47 +02:00
Gwen Mittertreiner
0868c5fc4b
Fixup SourceKit module on Windows
2019-04-18 13:16:30 -07:00
Ben Langmuir
77351820ce
Use AbsolutePath.pathString instead of description
...
Per review feedback; pathString is semantically the string we want,
while description is for creating a human-readable string.
2019-02-01 18:05:11 -08:00
Ben Langmuir
7f697fa14a
[swiftpm] Update to latest master
...
* import Utility -> import SPMUtility
* AbsolutePath.asString -> path.description or "\(path)"
2019-02-01 16:47:04 -08:00
Marcin Krzyzanowski
1e035fdfd5
Completion item returns type name in details
2019-01-15 13:37:41 +01:00
Ben Langmuir
1d78d55f08
Merge pull request #15 from rintaro/completion-adjustlocation-fix
...
[Completion] Fix crash for completion on identifier at the start of file
2019-01-07 08:34:06 -08:00
Rintaro Ishizaki
f99b70781b
[Completion] Make adjustCompletionLocation() safe for out of range
...
Make it optional.
2018-12-25 15:32:45 +09:00
Rintaro Ishizaki
4b0b0ec0aa
[Completion] Fix crash for completion on identifier at the start of file
...
Crash where a code completion is triggered on an identifier at the start
of file. `Fatal error: Can't move before startIndex`.
2018-12-25 15:32:45 +09:00
Eric Stern
73ba7f4eef
Correct location property of DiagnosticRelatedInformation
2018-12-24 14:35:01 -08:00
Bruno Rocha
97d7219a1c
[Fold] Avoid erasing the structure stack
2018-12-14 14:17:03 -02:00
Ben Langmuir
d7b0b62038
Merge pull request #49 from benlangmuir/fold-url
...
[swift] Fix folding range for comment.url, comment.mark types
2018-12-14 07:15:04 -08:00
Ben Langmuir
cf18088bea
[swift] Fix folding range for comment.url, comment.mark types
...
Just a couple of syntaxtypes that got missed.
2018-12-13 21:18:35 -08:00
Ben Langmuir
b72d37d70f
[swift] Sort folding ranges
...
This isn't strictly necessary, but it makes the output more predictable
for testing and eliminates any possible non-determinism in the
responses.
2018-12-13 20:27:48 -08:00
Ben Langmuir
de7ad054ef
[swift] Remove speculatively written cancellation code
...
This code is dead and I have no idea if it's ever going to be useful; it
was written completely speculatively. Goodbye.
2018-12-13 18:12:10 -08:00
Ben Langmuir
51d926cffc
Merge pull request #24 from rockbruno/foldingRange
...
Add "textDocument/foldingRanges"
2018-12-13 08:57:31 -08:00
Bruno Rocha
c4f4038ed2
Abort folding range requests after reaching the client's limit
2018-12-13 13:39:22 -02:00
Abdullah Selek
9c6fd98d38
Use Void over () on SourceKit files.
2018-12-08 18:29:13 +00:00
Bruno Rocha
37d14d486d
Fold doc comments
2018-12-08 16:07:54 -02:00
Bruno Rocha
05eee7a92a
Folding Ranges gardening
2018-12-08 16:07:54 -02:00
Bruno Rocha
c4603e4da3
Folding Ranges improvements and gardening
2018-12-08 16:07:54 -02:00
Bruno Rocha
3f58e09dcf
Add folding range requests
...
Add remaining foldingRange protocol capabilities
Sending offset data to folding requests
FoldingRange test
Support folding comments
Add test for folded comments
2018-12-08 16:07:54 -02:00