You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Instantly share code, notes, and snippets.
fwcd
fwcd
CS student interested in music, compilers and functional programming. PL enthusiast. Mixxx developer.
This file contains 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
My Google Summer of Code 2021 project focused on improving developer tooling for the Swift programming language, including contributions to SourceKit-LSP, a language server for Swift, and to the Swift compiler itself.
Diagnostic Tags
Diagnostic tags let editors stylize warnings about unused or deprecated editors, e.g. using strikethrough or in a different color:
These are not official build instructions. No guarantees that these will work! In particular the dependencies may change at any time and you might have to check the CI builds to find out what to install.
Note
For (unofficial) binaries and scripts that simplify this build process, check out m1xxx.
Building the dependencies
To build Mixxx for ARM64 macOS, we will need to build the dependencies including Qt 6. This can conveniently be done using vcpkg, a package manager for C++ libraries. First clone the vcpkg fork which includes the relevant patches:
My Google Summer of Code 2022 project mainly focused on rewriting parts of the SwiftSyntax library using its own SwiftSyntaxBuilder DSL, more specifically, porting the gyb templates in SwiftSyntaxBuilder to type-safe Swift code, written using the library itself. During this bootstrapping process, many improvements to the DSL were added, inconveniences in the (quite large) API surface fixed and thoroughly tested. The result is a robust and ergonomic API for generating Swift code that has proven to be useful in the context of a medium-sized codebase.
The Project: Bootstrapping SwiftSyntaxBuilder
The first step was to set up the build infrastructure. In particular this required adding a new target that, when executed, produced the generated Swift files in SwiftSyntaxBuilder/generated: