-
Notifications
You must be signed in to change notification settings - Fork 304
Merge main
into release/6.1
#1911
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
Merged
ahoppen
merged 48 commits into
swiftlang:release/6.1
from
ahoppen:merge-main-6.1-2025-01-08
Jan 8, 2025
Merged
Merge main
into release/6.1
#1911
ahoppen
merged 48 commits into
swiftlang:release/6.1
from
ahoppen:merge-main-6.1-2025-01-08
Jan 8, 2025
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Providing a JSON schema for the configuration file should improve the developer experience thanks to better auto-completion and diagnostics support provided by some editors. Additionally, we have been manually maintaining the configuration file format documentation in `Documentation/Configuration File.md`, but it's easy for the documentation to get out of sync with the actual schema. This change introduces a new tool, `ConfigSchemaGen`, that generates a JSON schema and a Markdown document for the configuration file based on the Swift type definitions in the `SKOptions` module by using swift-syntax.
… instead of a string
The `markdownEnumDescriptions` field in JSON Schema is supposed to be an array of descriptions but was incorrectly encoded as a dictionary.
This adjusts the build configuration to allow the shared LMDB library build to be wired into the build.
`_SwiftSyntaxCShims` objects weren't linked because it was a header-only library. But since actual code is being added, we need to link it.
fix ASTBuild command exec failed
…tings-timeout feature support override buildSettingsTimeout by workspace config.json
`inProgressTextDocumentRequests` is supposed to only be accessed on `textDocumentTrackingQueue` but we were accessing it outside of that queue. Because of this, we might try to remove requests from `inProgressTextDocumentRequests` before adding them, which would cause them to stay in the list indefinitely.
Emit a log message when we receive a cancel request notification
Add semantic highlighting for macros
…ueue Clear `inProgressTextDocumentRequests` on `textDocumentTrackingQueue`
…data sent from SourceKit-LSP to the client This could help us debug low-level issues of SourceKit-LSP to client communication such as swiftlang#1890.
…supports `getReferenceDocument` This allows us to provide semantic functionality inside the generated interfaces, such as hover or jump-to-definition. rdar://125663597
[Test] Link macro binaries to _SwiftSyntaxCShims objects
…ference-document Support semantic functionality in generated interfaces if the client supports `getReferenceDocument`
The method was never called.
Add option to generate an output mirror file that contains the exact data sent from SourceKit-LSP to the client
It is important that we cache this because we might find a lot of symbols in the same container for eg. workspace symbols (eg. consider many symbols in the same C++ namespace). If we didn't cache this value, then we would need to perform a `primaryDefinitionOrDeclarationOccurrence` lookup for all of these containers, which is expensive. For example, searching for `only` in SourceKit-LSP’s codebase used to not return results in more than 20s (after which I gave up) and now returns >8000 results in <2s. rdar://141412138
Remove `SourceKitLSPServer.openGeneratedInterface`
This improves performance when searching for `only` in SourceKit-LSP by ~30%.
Cache container names in `CheckedIndex`
@swift-ci Please test |
bnbarham
approved these changes
Jan 8, 2025
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Merge the following PRs into
release/6.1
. My intention is that this is the last automatic merging ofmain
intorelease/6.1
..sourcekit-lsp/config.json
#1849inProgressTextDocumentRequests
ontextDocumentTrackingQueue
#1902CheckedIndex
#1909Do not take the following PRs on
main
intorelease/6.1
because they are not relevant or because I want to qualify them a little longer onmain
:getReferenceDocument
#1887SourceKitLSPServer.openGeneratedInterface
#1907