profile
viewpoint
Alex Hoppen ahoppen CS Student @ RWTH Aachen Cologne https://alexhoppen.de CS Student @ RWTH Aachen University | Swift compiler committer | Former DevTools intern @ Apple | License on Blockchain

ahoppen/introduction-to-compilers 371

Swift Playground giving an overview over the inner workings of modern compilers

ahoppen/colour-clustering-playground 12

My WWDC 2019 scholarship application

ahoppen/ppdb 6

A debugger for probabilistic programs

ahoppen/swift 1

The Swift Programming Language

ahoppen/2016 0

Student Submissions for the WWDC 2016 Scholarship

ahoppen/ath10k-ct 0

Stand-alone ath10k driver based on Candela Technologies Linux kernel.

ahoppen/DataTables 0

Tables plug-in for jQuery

ahoppen/DynamicGrid 0

Drag and drop GridView for Android

PR opened apple/sourcekit-lsp

Reviewers
[5.4] Adjust the SwiftPMWorkspaceTests.testMultiTargetSwift() test to account for the SwiftPM fix for SR-12050

A SwiftPM fix (apple/swift-package-manager#3215) adds '-Xcc' to the command line generated by SwiftPM and thereby introduces revlock between the SwiftPM fix and SourceKit-LSP. Because of the branch-based dependency of SourceKit-LSP on SwiftPM, this means that SourceKit-LSP's unit test will start failing once that PR is merged. This adds a temporary change to allow SourceKit-LSP to accommodate both command lines. It will be removed once SwiftPM's PR has been merged.

This is the 5.4 nomination for the fix in https://github.com/apple/sourcekit-lsp/pull/362.

(cherry-picked from commit ad735d45ca2077bc49443d7b27604530ed4dd324)

+12 -3

0 comment

1 changed file

pr created time in 3 hours

create barnchapple/sourcekit-lsp

branch : adjust-to-swiftpm-sr-12050-fix-5.4

created branch time in 3 hours

delete branch apple/sourcekit-lsp

delete branch : adjust-to-swiftpm-sr-12050-fix

delete time in 3 hours

push eventapple/sourcekit-lsp

Anders Bertelrud

commit sha ad735d45ca2077bc49443d7b27604530ed4dd324

Adjust the SwiftPMWorkspaceTests.testMultiTargetSwift() test to account for the SwiftPM fix for SR-12050, which adds '-Xcc' to the command line generated by SwiftPM and thereby introduces revlock between the SwiftPM fix and SourceKit-LSP.

view details

Anders Bertelrud

commit sha c4124234d0cf4a5533d915caa2d59bae2513d092

Merge pull request #362 from apple/adjust-to-swiftpm-sr-12050-fix Adjust the SwiftPMWorkspaceTests.testMultiTargetSwift() test to account for the SwiftPM fix for SR-12050

view details

push time in 3 hours

PR merged apple/sourcekit-lsp

Adjust the SwiftPMWorkspaceTests.testMultiTargetSwift() test to account for the SwiftPM fix for SR-12050

This fix (https://github.com/apple/swift-package-manager/pull/3215) adds '-Xcc' to the command line generated by SwiftPM and thereby introduces revlock between the SwiftPM fix and SourceKit-LSP. Because of the branch-based dependency of SourceKit-LSP on SwiftPM, this means that SourceKit-LSP's unit test will start failing once that PR is merged. This adds a temporary change to allow SourceKit-LSP to accommodate both command lines. It will be removed once SwiftPM's PR has been merged.

+12 -3

1 comment

1 changed file

abertelrud

pr closed time in 3 hours

Pull request review commentapple/sourcekit-lsp

Adjust the SwiftPMWorkspaceTests.testMultiTargetSwift() test to account for the SwiftPM fix for SR-12050

 final class SwiftPMWorkspaceTests: XCTestCase {       let arguments = ws.settings(for: aswift.asURI, .swift)!.compilerArguments       check(aswift.pathString, arguments: arguments)       checkNot(bswift.pathString, arguments: arguments)-      check(-        "-I", packageRoot.appending(components: "Sources", "libC", "include").pathString,-        arguments: arguments)+      // Temporary conditional to work around revlock between SourceKit-LSP and SwiftPM+      // as a result of fix for SR-12050.  Can be removed when that fix has been merged.+      if arguments.joined(separator: " ").contains("-Xcc -I -Xcc") {

This has been tested by temporarily changing the dependency to be the SwiftPM PR branch containing the fix for SR-12050.

abertelrud

comment created time in 5 hours

Pull request review commentapple/sourcekit-lsp

Adjust the SwiftPMWorkspaceTests.testMultiTargetSwift() test to account for the SwiftPM fix for SR-12050

 final class SwiftPMWorkspaceTests: XCTestCase {       let arguments = ws.settings(for: aswift.asURI, .swift)!.compilerArguments       check(aswift.pathString, arguments: arguments)       checkNot(bswift.pathString, arguments: arguments)-      check(-        "-I", packageRoot.appending(components: "Sources", "libC", "include").pathString,-        arguments: arguments)+      // Temporary conditional to work around revlock between SourceKit-LSP and SwiftPM+      // as a result of fix for SR-12050.  Can be removed when that fix has been merged.+      if arguments.joined(separator: " ").contains("-Xcc -I -Xcc") {

Concatenating the command line without quoting would normally not be acceptable, but this is a temporary condition to determine whether SwiftPM has the fix or not. This will be removed once the fix for SR-12050 has been integrated into SwiftPM.

abertelrud

comment created time in 5 hours

PR opened apple/sourcekit-lsp

Reviewers
Adjust the SwiftPMWorkspaceTests.testMultiTargetSwift() test to account for the SwiftPM fix for SR-12050

This fix (https://github.com/apple/swift-package-manager/pull/3215) adds '-Xcc' to the command line generated by SwiftPM and thereby introduces revlock between the SwiftPM fix and SourceKit-LSP. Because of the branch-based dependency of SourceKit-LSP on SwiftPM, this means that SourceKit-LSP's unit test will start failing once that PR is merged. This adds a temporary change to allow SourceKit-LSP to accommodate both command lines. It will be removed once SwiftPM's PR has been merged.

+12 -3

0 comment

1 changed file

pr created time in 5 hours

create barnchapple/sourcekit-lsp

branch : adjust-to-swiftpm-sr-12050-fix

created branch time in 5 hours

created tagapple/sourcekit-lsp

tagswift-DEVELOPMENT-SNAPSHOT-2021-01-19-a

Language Server Protocol implementation for Swift and C-based languages

created time in 2 days

created tagapple/swift-syntax

tagswift-DEVELOPMENT-SNAPSHOT-2021-01-19-a

SwiftPM package for SwiftSyntax library.

created time in 2 days

PR opened apple/sourcekit-lsp

implement DocumentFormattingRequest

Rebased to main branch and squashed.

+274 -1

0 comment

17 changed files

pr created time in 2 days

push eventapple/sourcekit-lsp

Alex Hoppen

commit sha d7f47552978ab0d6bf12b2e8f0ffadb8f3d7ff7d

Rename clang to clangPath

view details

Alex Hoppen

commit sha 78e102d93eab167431932cff485a06b07fb724e5

Split creation of the clangd shim into shim initialization and starting of clangd This will later allow us to restart clangd while keeping the same shim.

view details

Alex Hoppen

commit sha a0c9b30a2ac62624941155e54575ebcdbf74069a

Restart sourcekitd and clangd after they have crashed

view details

Ben Langmuir

commit sha d9b2d65d0375c96eadbce782fe12e5b841f768eb

Merge pull request #353 from ahoppen/crash-recovery-again Restart sourcekitd and clangd after they have crashed

view details

push time in 2 days

PR merged apple/sourcekit-lsp

Restart sourcekitd and clangd after they have crashed

This is a rebase of #219 to the current state of main.

Since the rebase was non-trivial and the project has changed in the meantime I would appreciate a re-review ;-)

+706 -114

6 comments

16 changed files

ahoppen

pr closed time in 2 days

created tagapple/sourcekit-lsp

tagswift-DEVELOPMENT-SNAPSHOT-2021-01-17-a

Language Server Protocol implementation for Swift and C-based languages

created time in 4 days

created tagapple/swift-syntax

tagswift-DEVELOPMENT-SNAPSHOT-2021-01-17-a

SwiftPM package for SwiftSyntax library.

created time in 4 days

Pull request review commentapple/swift-syntax

Make SourceLocation and related types Hashable

 struct ComputedLocation: Codable, CustomDebugStringConvertible { }  /// Represents a source location in a Swift file.-public struct SourceLocation: Codable, CustomDebugStringConvertible {+public struct SourceLocation: Hashable, Codable, CustomDebugStringConvertible {

In my opinion they shouldn't be equal since line, column, and file will return different results for them. The one without a ComputedLocation could refer to a different file altogether, as file is inferred from compLoc.

MaxDesiatov

comment created time in 4 days

created tagapple/sourcekit-lsp

tagswift-DEVELOPMENT-SNAPSHOT-2021-01-16-a

Language Server Protocol implementation for Swift and C-based languages

created time in 5 days

created tagapple/swift-syntax

tagswift-DEVELOPMENT-SNAPSHOT-2021-01-16-a

SwiftPM package for SwiftSyntax library.

created time in 5 days

created tagapple/sourcekit-lsp

tagswift-DEVELOPMENT-SNAPSHOT-2021-01-15-a

Language Server Protocol implementation for Swift and C-based languages

created time in 6 days

created tagapple/swift-syntax

tagswift-DEVELOPMENT-SNAPSHOT-2021-01-15-a

SwiftPM package for SwiftSyntax library.

created time in 6 days

push eventapple/swift-syntax

Max Desiatov

commit sha 9aaae858c9986a0a7beeea2839b1fe0dae57f24e

Make SourceLocation and related types Equatable It seems natural to be able to compare ranges for equality. Currently this requires declaring manual `Equatable` conformance in libraries that use SwiftSyntax, which is error-prone.

view details

Max Desiatov

commit sha ee428a27f23cb40144bfbfa5dab8725a07a25aba

Make SourceLocation and related types Hashable

view details

Argyrios Kyrtzidis

commit sha 669acb123af8f91dcbed22b5dd5dcb24d963554e

Merge pull request #254 from MaxDesiatov/patch-2 Make SourceLocation and related types Hashable

view details

push time in 6 days

PR merged apple/swift-syntax

Make SourceLocation and related types Hashable

It seems natural to be able to compare source locations for equality, or to add locations to a Set or use them as keys in dictionaries. Currently this requires declaring manual Hashable conformance in libraries that use SwiftSyntax, which is error-prone.

+3 -3

5 comments

1 changed file

MaxDesiatov

pr closed time in 6 days

pull request commentapple/swift-syntax

Make SourceLocation and related types Hashable

Please feel free to merge when you see fit, I don't have commit access here.

MaxDesiatov

comment created time in 6 days

pull request commentapple/swift-syntax

Make SourceLocation and related types Hashable

@swift-ci please test

MaxDesiatov

comment created time in 7 days

pull request commentapple/swift-syntax

Make SourceLocation and related types Hashable

Build failed Swift Test Linux Platform Git Sha - 9aaae858c9986a0a7beeea2839b1fe0dae57f24e

MaxDesiatov

comment created time in 7 days

pull request commentapple/swift-syntax

Make SourceLocation and related types Hashable

@swift-ci please test

MaxDesiatov

comment created time in 7 days

pull request commentapple/swift-syntax

Make SourceLocation and related types Equatable

@swift-ci please test

MaxDesiatov

comment created time in 7 days

PR opened apple/swift-syntax

Make SourceLocation and related types Equatable

It seems natural to be able to compare source locations for equality. Currently this requires declaring manual Equatable conformance in libraries that use SwiftSyntax, which is error-prone.

+3 -3

0 comment

1 changed file

pr created time in 7 days

more