Swiftpack.co - ChimeHQ/CoreSymbolication as Swift Package

Swiftpack.co is a collection of thousands of indexed Swift packages. Search packages.
See all packages published by ChimeHQ.
ChimeHQ/CoreSymbolication 0.2.0
Headers and package for CoreSymbolication
⭐️ 10
🕓 18 weeks ago
macOS
.package(url: "https://github.com/ChimeHQ/CoreSymbolication.git", from: "0.2.0")

Build Status Platforms Discord

CoreSymbolication

CoreSymbolication provides a very powerful system for looking up and extracting symbolic information from mach-o executables, dyld shared caches, and dSYMs.

There are two parts. The private C API itself is wrapped up in the CoreSymbolication target, and a Swift wrapper is provided with SwiftCoreSymbolication.

The private header is definitely not complete. But, if there's something you need/want, open up an issue and we can look into it together.

One quick note. I cannot figure out how to craft a modulemap that will allow SPM to handle linking. This means that you need to add some special linker flags to any executable target that uses this as a dependency.

linkerSettings: [
  .unsafeFlags([
  "-Xlinker", "-F",
  "-Xlinker", "/System/Library/PrivateFrameworks",
   "-Xlinker", "-framework",
   "-Xlinker", "CoreSymbolication",
]),

If you are here, you might also be interested in gSYM, an efficient format used by the LLVM project for symbolication. I also put together a go library that can be used to consume gsym files.

Integration

Swift Package Manager

dependencies: [
    .package(url: "https://github.com/ChimeHQ/CoreSymbolication")
],
targets: [
    .target(
        name: "UseCFunctionality",
        dependencies: ["CoreSymbolication"]
    ),
    .target(
        name: "UseSwiftWrapper",
        dependencies: [.product(name: "SwiftCoreSymbolication", package: "CoreSymbolication")]
    ),
]

Contributing and Collaboration

I would love to hear from you! Issues or pull requests work great. A Discord server is also available for live help, but I have a strong bias towards answering in the form of documentation.

I prefer collaboration, and would love to find ways to work together if you have a similar project.

I prefer indentation with tabs for improved accessibility. But, I'd rather you use the system you want and make a PR than hesitate because of whitespace.

By participating in this project you agree to abide by the Contributor Code of Conduct.

GitHub

link
Stars: 10
Last commit: 18 weeks ago
Advertisement: IndiePitcher.com - Cold Email Software for Startups

Release Notes

v0.2.0
18 weeks ago

big release that includes the swift wrappers

Swiftpack is being maintained by Petr Pavlik | @ptrpavlik | @swiftpackco | API | Analytics