-
Notifications
You must be signed in to change notification settings - Fork 307
Merge main
into release/6.0
#1482
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 40 commits into
swiftlang:release/6.0
from
ahoppen:6.0/merge-main-2024-06-17
Jun 20, 2024
Merged
Merge main
into release/6.0
#1482
ahoppen
merged 40 commits into
swiftlang:release/6.0
from
ahoppen:6.0/merge-main-2024-06-17
Jun 20, 2024
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
…unsafe)` Since the `Atomic*` types can not be marked as `Sendable` (because they aren’t C structs), we can change the variables to constants and can remove `nonisolated(unsafe)`.
…talParse` Fixes an error found by thread sanitizer
We were dispatching the notification to `messageHandlingQueue`, which then didn’t do anything with it. That’s not necessary.
…ency module fails to prepare rdar://128683404
…ental-parse-tests Use a `ThreadSafeBox` for the `reusedNodes` variable in `testIncrementalParse`
…-with-build-error-in-low-level-module Add test to check that we get semantic functionality even if a dependency module fails to prepare
Return after handling a `CancelRequestNotification`
…an’t handle modules for the target and host properly This fixes a test failure in Xcode 15.4.
…ugin-test Skip `testLibraryUsedByExecutableTargetAndPackagePlugin` if SwiftPM can’t handle modules for the target and host properly
- Rename methods to highlight that we’re talking about generated interfaces here, not `.swiftinterface` files - Don’t open the generated interface in `documentManager`. Opening documents in `documentManager` should only be done by the `textDocument/didOpen` notification from the LSP client. Otherwise we might indefinitely keep the document in the document manager - After getting the generated interface from sourcekitd, close the document in sourcekitd again. We don’t provide semantic functionality in the generated interface yet, so we can’t interact with the generated interface path. Before, we left it open in sourcekitd indefinitely. - A couple of code simplifications. Fixes swiftlang#878 rdar://116705653
…l requirement, jump to the requirement rdar://129412482
This avoids us from showing a work done progress for short-lived index tasks that take less than a second. Fixes swiftlang#1298 rdar://128071328
…rement When performing jump-to-definition on a method implementing a protocol requirement, jump to the requirement
Android: use the right setpriority() signature for Bionic
In some Swift 6 toolchains, the diagnostic about missing protocol requirements is emitted on the protocol in the inheritance clause instead of the conforming type. Relax a few assertions in the tests.
Also change a few log levels and make all log messages consistently start with an uppercase letter.
Add a document to describe which log level to use
…ment-positions-in-tests Relax assertions about diagnostics from missing protocol requirements
…i(Testing)` Fixes swiftlang#876 Fixes swiftlang#877 rdar://116705648 rdar://116705669
…provements A couple of improvements for generated interfaces
Enum case rename is fixed by changes in sourcekitd. We can remove our workaround for the issue and add test cases that test the rename behavior. Fixes swiftlang#1228 rdar://127646036
Change all variables that are `Atomic*` types to not be `nonisolated(unsafe)`
Debounce the creation of work done progress for indexing and package reloading
Change methods that were only public for testing purposes to be `@_spi(Testing)`
The key issue here was that we were looking at the symbol occurrence that had the `overrideOf` role and were using this symbol occurrence to also check that it’s a child of one of the receiver types. But if the protocol requirement is satisfied in an extension, we have an implicit symbol occurrence at the location where the protocol requirement is stated but the real declaration’s occurrence is inside the extension. The fix here is to just extract the USR from the `overrideOf` relation and then do another index lookup to find the symbol’s definition. rdar://129412428
…ic “Preparing targets” The old implementation of inspecting the `InProgressPrepareForEditorTask` has a few race conditions including the fact that we would start the preparation task before the `inProgressPrepareForEditorTask` was set. Instead, keep track of the purpose for each preparation task. This ends up simplifying the code as well.
If calls from `Debouncer` were scheduled every 0.5s but the debounce duration was 1s, we would always schedule the pending task and schedule a new one, never actually committing one. Debounce at most the debounce duration from the initially scheduled call.
These should help us figure out the root cause of rdar://129698768 if we hit it again.
Rewrite how “Preparing current file” is differentiated from the generic “Preparing targets”
Adjust test cases for fixed enum case rename
…atisfied-in-extension Show protocol requirements satisfied in extensions in jump-to-definition
…hain does not mark overridable function declarations as dynamic This test requires swiftlang/swift#74080 and should be skipped if the host toolchain does not have that change.
…test Skip `testJumpToSatisfiedProtocolRequirementInExtension` if the toolchain does not mark overridable function declarations as dynamic
@swift-ci Please test |
bnbarham
approved these changes
Jun 18, 2024
Add workaround for rdar://116221716
@swift-ci Please test |
This was referenced Jun 18, 2024
swiftlang/swift#74534 @swift-ci Please test Windows |
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.0
:ThreadSafeBox
for thereusedNodes
variable intestIncrementalParse
#1450CancelRequestNotification
#1451testLibraryUsedByExecutableTargetAndPackagePlugin
if SwiftPM can’t handle modules for the target and host properly #1455Atomic*
types to not benonisolated(unsafe)
#1447@_spi(Testing)
#1459testJumpToSatisfiedProtocolRequirementInExtension
if the toolchain does not mark overridable function declarations as dynamic #1480