Swift package providing components from the matrix-rust-sdk
Go to file
Stefan Ceriu c35382fd74 Closes #4 - Add license file 2022-04-26 10:25:52 +03:00
.github/ISSUE_TEMPLATE Initial commit 2022-02-10 16:55:34 +02:00
.swiftpm/xcode/package.xcworkspace/xcshareddata Initial commit. 2022-02-10 17:28:10 +02:00
MatrixSDKFFIWrapper Initial commit. 2022-02-10 17:28:10 +02:00
Sources/MatrixRustSDK Expose methods for constructing and sending markdown messages 2022-04-18 10:32:29 +03:00
Tests/MatrixRustSDKTests Made client error conform to Error, promoted the client delegate, enabled local rust side caching and lazy room member loading. 2022-03-01 14:07:59 +02:00
.gitignore Initial commit. 2022-02-10 17:28:10 +02:00
LICENSE Closes #4 - Add license file 2022-04-26 10:25:52 +03:00
Package.swift Expose methods for constructing and sending markdown messages 2022-04-18 10:32:29 +03:00
README.md Added readme, platform specifications and changed name to `MatrixRustSDK` 2022-02-11 14:04:28 +02:00
SECURITY.md Initial commit 2022-02-10 16:55:34 +02:00


Swift package for Matrix Rust components

This repository is a Swift Package for distributing releases of the Matrix Rust SDK. It provides the Swift source code packaged in a format understood by the Swift package manager, and depends on a pre-compiled binary release of the underlying Rust code published from Matrix Rust SDK.


Whenever a new release of the underlying components is availble, we need to tag a new release in this repo to make them available to Swift components. To do so we need to:

  • running the .xcframework build script from matrix-rust-sdk/apple
  • copy the generated .swift files to this repository under Sources/MatrixRustComponentsSwift
  • create a new tag and upload the zipped version of the .xcframework to it's artifacts section
  • update the tag version inside Package.swift

Testing locally

The package can be added to an Xcode project from a local checkout and the binary target can be configured with a local path. It might be necessary to manually add the resulting library to your project's General/Frameworks, Libraries, and Embedded Content for it to work.