Skip to content

After building SwiftLint in Linux, a runtime error is generated when attempting to Lint a file. #68812

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

Open
fibrechannelscsi opened this issue Sep 27, 2023 · 6 comments
Labels
bug A deviation from expected or documented behavior. Also: expected but undesirable behavior. triage needed This issue needs more specific labels

Comments

@fibrechannelscsi
Copy link
Contributor

Description
A runtime error is generated when attempting to run SwiftLint after building it (either in Debug or Release mode) under Linux. It appears to affect x86_64 and aarch64 platforms, albeit only on the nightly snapshots (the 5.9 Release branch is not affected).
The error generated at runtime is:

failed to demangle witness for associated type '' in conformance 'Swift.Array<SwiftParser.Parser.ExperimentalFeatures>: Sequence' from mangled name '?z??ySayxGG' - subject type x does not conform to protocol Collection
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0.	While evaluating request ExportedSourceFileRequest(source_file "/home/user/s7/Plugins/SwiftLintPlugin/SwiftLintPlugin.swift")

Steps to reproduce
Running the following commands on the terminal window is sufficient to reproduce this issue:

mkdir SwiftLint
cd SwiftLint
git clone https://github.com/realm/SwiftLint . --depth 1
rm ./Tests/SwiftLintTestHelpers/*.swift
swift build -Xswiftc -static-stdlib
./.build/aarch64-unknown-linux-gnu/debug/swiftlint

If building for x86_64, the executable may be found inside .build/x86_64-unknown-linux-gnu/debug. Otherwise, search for the generated swiftlint executable.

In the above example, we are Linting the SwiftLint repository itself. It is sufficient to trigger the runtime crash, but for a minimal reproducer of files that require Linting, one can make new directory with a single file called Package.swift; the file only needs to contain // swift-tools-version:5.8 (note that a blank file won't trigger the crash).

Expected behavior
The program should Lint all specified files successfully.

Environment

  • Swift compiler version info: 2023-09-20a, 2023-09-26a nightly toolchains.
  • Xcode version info: N/A
  • Deployment target: Linux x86_64 (Ubuntu 18.04), Linux ARM64 (Ubuntu 20.04).

Additional context
Some additional packages may need to be installed (this list is not exhaustive):
apt install libcurl4-openssl-dev libxml2-dev

No issues were found when building for macOS; in fact the -Xswiftc -static-stdlib flag is not supported.

Here is a stack trace from an lldb run on Ubuntu 18, x86_64:

* thread #72, name = 'swiftlint', stop reason = signal SIGABRT
  * frame #0: 0x00007ffff6477e87 libc.so.6`__GI_raise(sig=<unavailable>) at raise.c:51
    frame #1: 0x00007ffff64797f1 libc.so.6`__GI_abort at abort.c:79
    frame #2: 0x0000555557a862f9 swiftlint`swift::fatalErrorv(unsigned int, char const*, __va_list_tag*) + 137
    frame #3: 0x0000555557a86383 swiftlint`swift::fatalError(unsigned int, char const*, ...) + 131
    frame #4: 0x0000555557a9ee4a swiftlint`swift_getAssociatedTypeWitnessSlow + 1274
    frame #5: 0x0000555557a9e945 swiftlint`swift_getAssociatedTypeWitness + 37
    frame #6: 0x00005555578faeb5 swiftlint`Swift.SetAlgebra.init<τ_0_0 where τ_1_0: Swift.Sequence, τ_0_0.Element == τ_1_0.Element>(__owned τ_1_0) -> τ_0_0 + 197
    frame #7: 0x0000555556b9f276 swiftlint`protocol witness for SetAlgebra.init<A>(_:) in conformance Parser.ExperimentalFeatures at <compiler-generated>:0
    frame #8: 0x00007fffc6f25523 libsourcekitdInProc.so`swiftASTGen.parseSourceFile(buffer: Swift.UnsafePointer<Swift.UInt8>, bufferLength: Swift.Int, moduleName: Swift.UnsafePointer<Swift.UInt8>, filename: Swift.UnsafePointer<Swift.UInt8>, ctxPtr: Swift.Optional<Swift.UnsafeMutableRawPointer>) -> Swift.UnsafeRawPointer + 291
    frame #9: 0x00007fffc6e7e72d libsourcekitdInProc.so`swift::ExportedSourceFileRequest::evaluate(swift::Evaluator&, swift::SourceFile const*) const + 509
    frame #10: 0x00007fffc7226f2d libsourcekitdInProc.so`llvm::Expected<swift::ExportedSourceFileRequest::OutputType> swift::Evaluator::getResultUncached<swift::ExportedSourceFileRequest>(swift::ExportedSourceFileRequest const&) + 397
    frame #11: 0x00007fffc7226bc3 libsourcekitdInProc.so`llvm::Expected<swift::ExportedSourceFileRequest::OutputType> swift::Evaluator::getResultCached<swift::ExportedSourceFileRequest, (void*)0>(swift::ExportedSourceFileRequest const&) + 435
    frame #12: 0x00007fffc7202848 libsourcekitdInProc.so`swift::ExportedSourceFileRequest::OutputType swift::evaluateOrDefault<swift::ExportedSourceFileRequest>(swift::Evaluator&, swift::ExportedSourceFileRequest, swift::ExportedSourceFileRequest::OutputType) + 24
    frame #13: 0x00007fffc7202826 libsourcekitdInProc.so`swift::SourceFile::getExportedSourceFile() const + 38
    frame #14: 0x00007fffc6e7d5fc libsourcekitdInProc.so`swift::Parser::parseTopLevelItems(llvm::SmallVectorImpl<swift::ASTNode>&) + 204
    frame #15: 0x00007fffc6eda36a libsourcekitdInProc.so`swift::ParserUnit::parse() + 90
    frame #16: 0x00007fffc56468e6 libsourcekitdInProc.so`void SourceKit::WorkQueue::DispatchData::callAndDelete<(anonymous namespace)::SwiftDocumentSyntaxInfo::parseIfNeeded()::'lambda'()>(void*) + 22
    frame #17: 0x00007fffcb7dca3a libsourcekitdInProc.so`executeBlock(void*) + 10
    frame #18: 0x00007fffcb7dca5a libsourcekitdInProc.so`void* llvm::thread::ThreadProxy<std::tuple<void (*)(void*), void*>>(void*) + 10
    frame #19: 0x00007ffff71d96db libpthread.so.0`start_thread(arg=0x00007fff967cc700) at pthread_create.c:463
    frame #20: 0x00007ffff655a61f libc.so.6`__clone at clone.S:95
@fibrechannelscsi fibrechannelscsi added bug A deviation from expected or documented behavior. Also: expected but undesirable behavior. triage needed This issue needs more specific labels labels Sep 27, 2023
@clackary
Copy link

Might be a long shot, but does this look more like an issue for https://github.com/apple/sourcekit-lsp?

CC @benlangmuir @ahoppen

@ahoppen
Copy link
Member

ahoppen commented Oct 10, 2023

This is definitely not sourcekit-lsp. SwiftLint is calling into sourcekitd, so it’s correct for this the issue to live in this repo.

@ahoppen ahoppen added triage needed This issue needs more specific labels and removed triage needed This issue needs more specific labels labels Oct 10, 2023
@rintaro
Copy link
Member

rintaro commented Oct 10, 2023

I couldn't reproduce it with:
swift toolchain: swift-DEVELOPMENT-SNAPSHOT-2023-10-09-a-ubuntu20.04-aarch64.tar.gz
SwiftLint: 0934c18cba3de323033920c1d0c2b38399e2745a
It builds and runs successfully.

@fibrechannelscsi Could you teach me what the exact toolchain and SwiftLint hash you can reproduce the runtime crash?

@fibrechannelscsi
Copy link
Contributor Author

I have a fresh (as of yesterday) installation of Ubuntu 20.04 on an x86_64 machine.

which swift
gives me the executable found here:
swift-DEVELOPMENT-SNAPSHOT-2023-10-08-a-ubuntu20.04/usr/bin/swift.

swift --version gives:

Swift version 5.11-dev (LLVM cdb60493231c0e1, Swift a2cc0d0468d689c)
Target: x86_64-unknown-linux-gnu

For SwiftLint itself, git log yields:

commit 0934c18cba3de323033920c1d0c2b38399e2745a (grafted, HEAD -> main, origin/main, origin/HEAD)
Author: Danny Mösch <[email protected]>
Date:   Tue Oct 3 18:05:31 2023 +0200

    Let RuleConfigurations be equatable by default (#5257)

I have a Ubuntu 20.04 Docker image running on an M1 Mac. The command which swift yields:
swift-DEVELOPMENT-SNAPSHOT-2023-10-09-a-ubuntu20.04-aarch64/usr/bin/swift

swift --version gives:

Swift version 5.11-dev (LLVM cdb60493231c0e1, Swift 2eb90c370a39c0a)
Target: aarch64-unknown-linux-gnu

The entry for git log is the same as above.

In both cases, swiftlint begins to lint the current directory, but soon generates the following error message:
failed to demangle witness for associated type '' in conformance 'Swift.Array<SwiftParser.Parser.ExperimentalFeatures>: Sequence' from mangled name '????ySayxGG' - subject type x does not conform to protocol Collection

@rintaro
Copy link
Member

rintaro commented Oct 11, 2023

Thanks I reproduced the crash. A wrong sourcekitdInProc.so was loaded.

rintaro added a commit to rintaro/swift-syntax that referenced this issue Oct 14, 2023
Add 'SWIFT_MODULE_ABI_NAME_PREFIX' CMake variable. This can be used from
compiler's CMake so its swift-syntax libraries can have unique names.
That avoids symbol name conflicts when compiler libraries (e.g.
sourcekitdInProc) is used from binaries linking with swift-syntax (e.g.
via SwiftPM)

swiftlang/swift#68812
rdar://116951101
rintaro added a commit to rintaro/swift that referenced this issue Oct 14, 2023
Add 'Compiler' prefix to ABI names of swift-syntax libraries so that
compiler libraries (e.g. sourcekitdInProc) can be used from binaries
linking with swift-syntax (e.g. via SwiftPM)

swiftlang#68812
rdar://116951101
rintaro added a commit to rintaro/swift-syntax that referenced this issue Oct 16, 2023
Add 'SWIFT_MODULE_ABI_NAME_PREFIX' CMake variable. This can be used from
compiler's CMake so its swift-syntax libraries can have unique names.
That avoids symbol name conflicts when compiler libraries (e.g.
sourcekitdInProc) is used from binaries linking with swift-syntax (e.g.
via SwiftPM)

swiftlang/swift#68812
rdar://116951101
rintaro added a commit to rintaro/swift that referenced this issue Oct 16, 2023
Add 'Compiler' prefix to ABI names of swift-syntax libraries so that
compiler libraries (e.g. sourcekitdInProc) can be used from binaries
linking with swift-syntax (e.g. via SwiftPM)

swiftlang#68812
rdar://116951101
(cherry picked from commit 68d52bd)
rintaro added a commit to rintaro/swift-syntax that referenced this issue Oct 16, 2023
Add 'SWIFT_MODULE_ABI_NAME_PREFIX' CMake variable. This can be used from
compiler's CMake so its swift-syntax libraries can have unique names.
That avoids symbol name conflicts when compiler libraries (e.g.
sourcekitdInProc) is used from binaries linking with swift-syntax (e.g.
via SwiftPM)

swiftlang/swift#68812
rdar://116951101
(cherry picked from commit 093b895)
rintaro added a commit to rintaro/swift that referenced this issue Oct 16, 2023
Add 'Compiler' prefix to ABI names of swift-syntax libraries so that
compiler libraries (e.g. sourcekitdInProc) can be used from binaries
linking with swift-syntax (e.g. via SwiftPM)

swiftlang#68812
rdar://116951101
rintaro added a commit to rintaro/swift that referenced this issue Oct 16, 2023
Add 'Compiler' prefix to ABI names of swift-syntax libraries so that
compiler libraries (e.g. sourcekitdInProc) can be used from binaries
linking with swift-syntax (e.g. via SwiftPM)

swiftlang#68812
rdar://116951101
rintaro added a commit to rintaro/swift that referenced this issue Oct 16, 2023
Add 'Compiler' prefix to ABI names of swift-syntax libraries so that
compiler libraries (e.g. sourcekitdInProc) can be used from binaries
linking with swift-syntax (e.g. via SwiftPM)

swiftlang#68812
rdar://116951101
rintaro added a commit to rintaro/swift that referenced this issue Oct 16, 2023
Add 'Compiler' prefix to ABI names of swift-syntax libraries so that
compiler libraries (e.g. sourcekitdInProc) can be used from binaries
linking with swift-syntax (e.g. via SwiftPM)

swiftlang#68812
rdar://116951101
rintaro added a commit to rintaro/swift-syntax that referenced this issue Oct 16, 2023
Add 'SWIFT_MODULE_ABI_NAME_PREFIX' CMake variable. This can be used from
compiler's CMake so its swift-syntax libraries can have unique names.
That avoids symbol name conflicts when compiler libraries (e.g.
sourcekitdInProc) is used from binaries linking with swift-syntax (e.g.
via SwiftPM)

swiftlang/swift#68812
rdar://116951101

(cherry picked from commit 093b895)
(cherry picked from commit d8c8695)
@fibrechannelscsi
Copy link
Contributor Author

This appears to be fixed on the 10-17 nightly. Thanks!

art-divin added a commit to art-divin/swift-syntax that referenced this issue Nov 2, 2023
commit ebd7026
Merge: e5962c4 efbfbab
Author: Ben Barham <[email protected]>
Date:   Fri Oct 27 16:04:15 2023 -0700

    Merge pull request swiftlang#2313 from bnbarham/literal-expr-parsing

    Skip parsing trailing closures after literals

commit efbfbab
Author: Ben Barham <[email protected]>
Date:   Wed Oct 25 14:08:57 2023 -0700

    Skip parsing trailing closures after literals

    Postfix parsing should skip trailing closure if the base expression is
    a literal (which is not callable).

commit e5962c4
Merge: 18c5bce 8fb1309
Author: Sophia Poirier <[email protected]>
Date:   Thu Oct 26 15:15:30 2023 -0700

    Merge pull request swiftlang#2306 from sophiapoirier/globals_strict_concurrency_opt_out_nonisolated_unsafe

    nonisolated(unsafe) to opt out of strict concurrency static checking for global variables

commit 18c5bce
Merge: 598e191 dbb04e5
Author: Alex Hoppen <[email protected]>
Date:   Thu Oct 26 11:05:54 2023 -0700

    Merge pull request swiftlang#2311 from ahoppen/ahoppen/511-version-indicator

    Add a `SwiftSyntax511` version indicator module

commit 598e191
Merge: bcd4772 a5315ff
Author: Boris Bügling <[email protected]>
Date:   Wed Oct 25 14:06:20 2023 -0700

    Merge pull request swiftlang#2312 from apple/load-unaligned

    load => loadUnaligned

commit a5315ff
Author: Boris Buegling <[email protected]>
Date:   Wed Oct 25 11:29:53 2023 -0700

    load => loadUnaligned

    Same fix as swiftlang/swift-package-manager#6929 since the code in swift-syntax is based on what is in SwiftPM.

commit bcd4772
Merge: 48c2705 12993b0
Author: Ben Barham <[email protected]>
Date:   Wed Oct 25 10:10:33 2023 -0700

    Merge pull request swiftlang#2265 from bnbarham/cast-sometimes-fails

    Casts to children of `SyntaxProtocol` are not always invalid

commit 48c2705
Merge: 0f808e7 1dc4c16
Author: Alex Hoppen <[email protected]>
Date:   Tue Oct 24 19:25:43 2023 -0700

    Merge pull request swiftlang#2308 from art-divin/function-compilation-optimization

    Optimized Type Checker performance in UnicodeScalarExtensions and SyntaxText

commit dbb04e5
Author: Alex Hoppen <[email protected]>
Date:   Tue Oct 24 18:41:32 2023 -0700

    Add a `SwiftSyntax511` version indicator module

commit 0f808e7
Merge: 8d5fab7 636556c
Author: Alex Hoppen <[email protected]>
Date:   Tue Oct 24 17:17:45 2023 -0700

    Merge pull request swiftlang#2238 from Matejkob/annotat-source-lines-with-notes-preperations

commit 12993b0
Author: Ben Barham <[email protected]>
Date:   Mon Oct 23 17:29:51 2023 -0700

    Casts to children of SyntaxProtocol are not always invalid

    Update these overrides so they don't always fail.

commit 1dc4c16
Author: Ruslan Alikhamov <[email protected]>
Date:   Mon Oct 23 22:35:34 2023 +0400

    Squashed commit of the following:

    commit 4cd9756
    Author: Ruslan Alikhamov <[email protected]>
    Date:   Mon Oct 23 22:17:28 2023 +0400

        applied swift-format

    commit dc59e96
    Author: Ruslan Alikhamov <[email protected]>
    Date:   Mon Oct 23 22:02:35 2023 +0400

        removed redundant variable

    commit ff95302
    Author: Ruslan Alikhamov <[email protected]>
    Date:   Mon Oct 23 22:00:23 2023 +0400

        refactored optimization in isValidIdentifierContinuationCodePoint

    commit 5b94ec9
    Author: Ruslan Alikhamov <[email protected]>
    Date:   Mon Oct 23 21:51:48 2023 +0400

        fixed a typo; renamed variables

    commit 7e1f23d
    Author: Ruslan Alikhamov <[email protected]>
    Date:   Mon Oct 23 21:38:08 2023 +0400

        renamed variables in slice(of:)

    commit 3b9c1f8
    Author: Ruslan Alikhamov <[email protected]>
    Date:   Sat Oct 21 19:45:34 2023 +0400

        removed redundant newline

    commit 83ad08c
    Author: Ruslan Alikhamov <[email protected]>
    Date:   Sat Oct 21 19:02:13 2023 +0400

        optimized isSlice(of other: SyntaxText) -> Bool

    commit f5d0a3a
    Author: Ruslan Alikhamov <[email protected]>
    Date:   Sat Oct 21 19:02:03 2023 +0400

        optimized isValidIdentifierContinuationCodePoint

commit 8d5fab7
Merge: f8be751 46c39ad
Author: Ben Barham <[email protected]>
Date:   Mon Oct 23 09:18:42 2023 -0700

    Merge pull request swiftlang#2309 from icanzilb/marin_todorov/command-help-typo-fix

    Fixes a typo in the cli abstract string

commit 46c39ad
Author: Marin Todorov <[email protected]>
Date:   Sun Oct 22 11:16:36 2023 +0200

    fixes typo in a help string

commit 636556c
Author: Mateusz Bąk <[email protected]>
Date:   Mon Sep 25 16:42:37 2023 +0200

    Add diagnostic testing utils for enhanced diagnostics testing

    Introduces `DiagnosticTestingUtils.swift`, a utility suite designed to aid in writing unit tests for `DiagnosticsFormatter` and `GroupedDiagnostics`. Highlights include:

    1. `LocationMarker` Typealias:
      - Enhances readability and precision in location identification within AST.

    2. `DiagnosticDescriptor` and `NoteDescriptor` Structs:
      - Offers a robust mechanism to construct and describe diagnostics and notes for testing.

    3. Simple Implementations for Protocols:
      - `SimpleNoteMessage` and `SimpleDiagnosticMessage` for streamlined testing.

    4. `assertAnnotated` Function:
      - Asserts that annotated source generated from diagnostics aligns with the expected output.

    This addition significantly bolsters the testing utilities, providing a comprehensive framework for ensuring accurate and effective diagnostics.

commit 6954167
Author: Mateusz Bąk <[email protected]>
Date:   Mon Sep 25 16:39:16 2023 +0200

    Introduce diagnostic decorator

    This commit introduces three significant components:

    1. `DiagnosticDecorator` Protocol:
      - Defines a standard interface for decorating diagnostic output in source code.
      - Design to be used by entities like `DiagnosticsFormatter` and `GroupedDiagnostics`.

    2. `ANSIDiagnosticDecorator` Struct:
      - Implements the `DiagnosticDecorator` protocol.
      - Adds severity-based prefixes to diagnostic messages.
      - Supports ANSI colorization to enhance visibility and interpretation.

    3. `BasicDiagnosticDecorator` Struct:
      - Implements the `DiagnosticDecorator` protocol.
      - Adds severity-based prefixes to diagnostic messages.

    Also includes:
    - Unit tests for `ANSIDiagnosticDecorator` in `ANSIDiagnosticDecoratorTests` and `BasicDiagnosticDecorator` in `BasicDiagnosticDecoratorTests`.

    This feature enriches the diagnostic capabilities, offering customizable and visually informative feedback.

commit 953bab2
Author: Mateusz Bąk <[email protected]>
Date:   Mon Sep 18 09:53:24 2023 +0200

    Rename DiagnosticsFormatterTests to ParserDiagnosticsFormatterIntegrationTests

commit 8fb1309
Author: Sophia Poirier <[email protected]>
Date:   Fri Oct 20 10:30:46 2023 -0700

    nonisolated(unsafe) to opt out of strict concurrency static checking for global variables

commit f8be751
Merge: 2223e4c e111f3a
Author: Alex Hoppen <[email protected]>
Date:   Fri Oct 20 10:05:52 2023 -0700

    Merge pull request swiftlang#2305 from Matejkob/new-extension-macro-example

    Add extension macro example

commit e111f3a
Author: Mateusz Bąk <[email protected]>
Date:   Wed Oct 18 22:27:54 2023 +0200

    Add extension macro example

    This commit introduces a new macro, `DefaultFatalErrorImplementationMacro`, to provide default implementations for protocol methods. The macro automatically generates extension code blocks with the default implementations for any protocol it's attached to.

commit 2223e4c
Merge: 3fd8f49 45e92e8
Author: Alex Hoppen <[email protected]>
Date:   Thu Oct 19 17:07:39 2023 -0700

    Merge pull request swiftlang#2272 from divalue/syntax_tree_with_lookahead_struct

    Add IncrementalParseResult

commit 3fd8f49
Merge: 83e12ff 9a0f0ff
Author: Alex Hoppen <[email protected]>
Date:   Thu Oct 19 14:16:54 2023 -0700

    Merge pull request swiftlang#2278 from Matejkob/modifi-nodes-with-variable-setters

    Refactor syntax node manipulation to use variable setters

commit 9a0f0ff
Author: Mateusz Bąk <[email protected]>
Date:   Thu Oct 12 09:11:56 2023 +0200

    Refactor syntax node manipulation to use variable setters

    This commit replaces the use of 'with' method for syntax node manipulation in SwiftSyntax examples with direct variable setters for better clarity and readability.

commit 83e12ff
Merge: f6868a7 d5400cb
Author: Alex Hoppen <[email protected]>
Date:   Wed Oct 18 15:18:32 2023 -0700

    Merge pull request swiftlang#2304 from ahoppen/ahoppen/trivia-comment

    Improve comment of leading and trailing trivia on `SyntaxProtocol`

commit d5400cb
Author: Alex Hoppen <[email protected]>
Date:   Wed Oct 18 13:19:30 2023 -0700

    Improve comment of leading and trailing trivia on `SyntaxProtocol`

commit f6868a7
Merge: 02a1330 b5c9937
Author: Kim de Vos <[email protected]>
Date:   Wed Oct 18 12:40:46 2023 +0200

    Merge pull request swiftlang#2286 from kimdv/kimdv/2273-bad-diagnostic-for-generic-parameter-list-on-enum-case

    Handle generic parameter on enum case

commit b5c9937
Author: Kim de Vos <[email protected]>
Date:   Sun Oct 15 20:18:58 2023 +0200

    Handle generic parameter on enum case

commit 02a1330
Merge: 106183a 33c4b08
Author: Kim de Vos <[email protected]>
Date:   Tue Oct 17 23:26:49 2023 +0200

    Merge pull request swiftlang#2226 from kimdv/kimdv/rewrite-fit-it-applier

    Rewrite FixItApplier to be string based

commit 106183a
Merge: e8659bb aa33736
Author: Alex Hoppen <[email protected]>
Date:   Tue Oct 17 12:41:23 2023 -0700

    Merge pull request swiftlang#2292 from ahoppen/ahoppen/case-iterable

    Remove `SyntaxKind` conformance to `CaseIterable`

commit 33c4b08
Author: Kim de Vos <[email protected]>
Date:   Tue Oct 17 08:32:46 2023 +0200

    Rewrite FixItApplier to be string based

commit e8659bb
Author: Rauhul Varma <[email protected]>
Date:   Tue Oct 17 11:31:12 2023 -0700

    Fix missing space in LabeledExprSyntax init (swiftlang#2291)

    Updates LabeledExprSyntax convenience initializer to include a trailing
    space trivia after the colon if an argument label is specified. This
    ensures the rendered description is 'arg: value' instead of 'arg:value'.

commit aa33736
Author: Alex Hoppen <[email protected]>
Date:   Mon Oct 16 12:46:21 2023 -0700

    Remove `IntegerLiteralExprSyntax.Radix` conformance to `CaseIterable`

    There’s no good reason why you would want to iterate over all radix kinds.

commit a318593
Author: Alex Hoppen <[email protected]>
Date:   Tue Oct 17 09:41:05 2023 -0700

    Remove `SyntaxKind` conformance to `CaseIterable`

    There’s no good reason to iterate over all cases in `SyntaxKind` and if `SyntaxKind` conforms to `CaseIterable`, we can’t mark members of it as deprecated (https://github.com/apple/swift-syntax/pull/2237/files#r1359917461)

commit 1fa18e5
Merge: 975ac26 d8c8695
Author: Rintaro Ishizaki <[email protected]>
Date:   Mon Oct 16 19:07:47 2023 -0700

    Merge pull request swiftlang#2296 from rintaro/cmake-nocache

    [CMake] Remove set(CACHE) line for SWIFT_MODULE_ABI_NAME_PREFIX

commit 975ac26
Merge: 8decbe4 e4e6a95
Author: Rintaro Ishizaki <[email protected]>
Date:   Mon Oct 16 17:35:51 2023 -0700

    Merge pull request swiftlang#2268 from rintaro/macro-resolveerror-rdar115571427

    [Macros] Granular diagnostics when macro type is not found in a plugin

commit 8decbe4
Merge: 72565a4 947e6f3
Author: Alex Hoppen <[email protected]>
Date:   Mon Oct 16 17:34:09 2023 -0700

    Merge pull request swiftlang#2290 from ahoppen/ahoppen/interpolation-failure-message

    Update the interpolation failure message

commit d8c8695
Author: Rintaro Ishizaki <[email protected]>
Date:   Mon Oct 16 13:50:05 2023 -0700

    [CMake] Remove set(CACHE) line for SWIFT_MODULE_ABI_NAME_PREFIX

    Due to https://cmake.org/cmake/help/latest/policy/CMP0126.html
    set(CACHE) overwrites the existing value if the cache has not been set
    to any value. Since we don't need any default value, just remove it.

commit 72565a4
Merge: ccab07f 7a3df8c
Author: Alex Hoppen <[email protected]>
Date:   Mon Oct 16 13:18:52 2023 -0700

    Merge pull request swiftlang#2285 from pointfreeco/add-missing-dependency

    Add missing dependency to SwiftSyntaxMacroExpansion.

commit 45e92e8
Author: Dmitrii Valuev <[email protected]>
Date:   Sun Oct 8 22:44:23 2023 +0300

    Add IncrementalParseResult type

    Added IncrementalParseResult type and changed parseIncrementally return type

    Fix spacing in 510 rn

commit 947e6f3
Author: Alex Hoppen <[email protected]>
Date:   Mon Oct 16 11:32:38 2023 -0700

    Update the interpolation failure message

    When a user is getting the interpolation `os_log` failure message but actually supports parsing invalid source code, offer them an alternative parses the source code without checking for errors.

commit e4e6a95
Author: Rintaro Ishizaki <[email protected]>
Date:   Fri Oct 13 15:53:50 2023 -0700

    [CompilerPlugin] remove _resolveMacro

    That was only just a thunk for testing. Use @_spi(Testing) instead.

commit ccab07f
Merge: df6600d 093b895
Author: Rintaro Ishizaki <[email protected]>
Date:   Mon Oct 16 09:03:30 2023 -0700

    Merge pull request swiftlang#2282 from rintaro/cmake-abi-name-rdar116951101

    [CMake] Add option to specify '-module-abi-name'

commit df6600d
Merge: e695b37 43c0388
Author: Kim de Vos <[email protected]>
Date:   Sun Oct 15 19:42:52 2023 +0200

    Merge pull request swiftlang#2264 from kimdv/kimdv/2261-rename-notemessagefixitid-to-noteid

    Rename `NoteMessage.fixItID` to `noteID`

commit 43c0388
Author: Kim de Vos <[email protected]>
Date:   Thu Oct 5 21:23:24 2023 +0200

    Rename `NoteMessage.fixItID` to `noteID`

commit 7a3df8c
Author: Brandon Williams <[email protected]>
Date:   Sat Oct 14 20:38:18 2023 -0400

    Add missing dependency to SwiftSyntaxMacroExpansion.

commit e695b37
Merge: 27db137 657f2e1
Author: Alex Hoppen <[email protected]>
Date:   Sat Oct 14 17:22:05 2023 -0700

    Merge pull request swiftlang#2063 from StevenWong12/move_swift_parser_cli

commit 27db137
Merge: 71afbc1 9a561e6
Author: Alex Hoppen <[email protected]>
Date:   Sat Oct 14 09:07:54 2023 -0700

    Merge pull request swiftlang#2283 from Matejkob/add-SwiftSyntax510

commit 9a561e6
Author: Mateusz Bąk <[email protected]>
Date:   Sat Oct 14 10:43:43 2023 +0200

    Create `SwiftSyntax510` module for version indication

commit 093b895
Author: Rintaro Ishizaki <[email protected]>
Date:   Sat Oct 14 06:17:40 2023 +0000

    [CMake] Add option to specify '-module-abi-name'

    Add 'SWIFT_MODULE_ABI_NAME_PREFIX' CMake variable. This can be used from
    compiler's CMake so its swift-syntax libraries can have unique names.
    That avoids symbol name conflicts when compiler libraries (e.g.
    sourcekitdInProc) is used from binaries linking with swift-syntax (e.g.
    via SwiftPM)

    swiftlang/swift#68812
    rdar://116951101

commit f413c51
Author: Rintaro Ishizaki <[email protected]>
Date:   Wed Sep 20 14:53:11 2023 -0700

    [Macros] Granular diagnostics when macro type is not found in a plugin

    rdar://115571427

commit 71afbc1
Merge: fc58fc8 c5cb386
Author: Alex Hoppen <[email protected]>
Date:   Thu Oct 12 17:40:07 2023 -0700

    Merge pull request swiftlang#2277 from ahoppen/ahoppen/editor-extension-deployment-target

    Remove deployment target setting from editor extension

commit c5cb386
Author: Alex Hoppen <[email protected]>
Date:   Thu Oct 12 09:13:48 2023 -0700

    Remove deployment target setting from editor extension

    This fixes a warning when building the Xcode project.

commit fc58fc8
Merge: 1f3618d acdbf3d
Author: Harlan Haskins <[email protected]>
Date:   Wed Oct 11 22:42:19 2023 -0600

    Merge pull request swiftlang#2275 from apple/harlan/vintage-conformances

    Add support for '@retroactive' conformances in SwiftSyntaxParser

commit acdbf3d
Author: Harlan Haskins <[email protected]>
Date:   Wed Oct 11 15:47:47 2023 -0600

    Update Types.swift

    Fixes a format error

commit 657f2e1
Author: Ziyang Huang <[email protected]>
Date:   Tue Oct 10 22:57:45 2023 +0800

    Run `swift-format` to format codes

commit cbd5764
Author: Harlan Haskins <[email protected]>
Date:   Mon Oct 9 16:25:40 2023 -0600

    Add support for '@retroactive' conformances in SwiftSyntaxParser

commit 280fc3e
Author: Ziyang Huang <[email protected]>
Date:   Sun Oct 8 21:26:48 2023 +0800

    Rename `_InstructionCounter` in `SwiftParserCLI` to `InstructionCounter`

commit 264f676
Author: Ziyang Huang <[email protected]>
Date:   Tue Aug 22 22:10:28 2023 +0800

    Make CI build `SwiftParserCLI`

commit bdca1a4
Author: Ziyang Huang <[email protected]>
Date:   Sun Oct 8 21:23:04 2023 +0800

    Move `swift-parser-cli` to its own package
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug A deviation from expected or documented behavior. Also: expected but undesirable behavior. triage needed This issue needs more specific labels
Projects
None yet
Development

No branches or pull requests

4 participants