بدون توضیح

Gus Cairo ce25e2ce30 Flatten `RPCError` causes if they're also `RPCError`s with the same code (#2083) 1 سال پیش
.github cf29048827 Make examples standalone packages (#2067) 1 سال پیش
Examples 5287f05a90 Add deployment targets to the package manifest (#2082) 1 سال پیش
IntegrationTests 9bdb0d1abb Filter down main to v2 (#2066) 1 سال پیش
Sources ce25e2ce30 Flatten `RPCError` causes if they're also `RPCError`s with the same code (#2083) 1 سال پیش
Tests ce25e2ce30 Flatten `RPCError` causes if they're also `RPCError`s with the same code (#2083) 1 سال پیش
dev 22d1b57e6d Remove unbounded variable from formatting script (#2091) 1 سال پیش
.editorconfig 0e4aac54e8 Add editorconfig (#1920) 1 سال پیش
.gitignore 99e9956158 Add support for ordo-one/package-benchmark (#1678) 2 سال پیش
.gitmodules 63c6acfa40 Move CgRPC, gRPC, and QuickProto to "Sources" directory and add new top-level Package.swift. 9 سال پیش
.spi.yml cfa6743020 Update tutorials and docs (#2070) 1 سال پیش
.swift-format 9cdcd2d9de Switch to swift-format 2 سال پیش
CODE-OF-CONDUCT.md 09b30466f6 Update links (#1926) 1 سال پیش
CONTRIBUTING.md 09b30466f6 Update links (#1926) 1 سال پیش
GOVERNANCE.md 09b30466f6 Update links (#1926) 1 سال پیش
LICENSE 6dde0518ca Revert to Apache 2.0 license verbatim [skip ci] (#504) 6 سال پیش
MAINTAINERS.md 09b30466f6 Update links (#1926) 1 سال پیش
NOTICES.txt 9bdb0d1abb Filter down main to v2 (#2066) 1 سال پیش
Package.swift 5287f05a90 Add deployment targets to the package manifest (#2082) 1 سال پیش
README.md cfa6743020 Update tutorials and docs (#2070) 1 سال پیش
SECURITY.md 7fbc418471 Add a security policy. (#1193) 4 سال پیش

README.md

gRPC Swift

This repository contains a gRPC implementation for Swift. You can read more about gRPC on the gRPC project's website.

gRPC Swift v2.x is under active development on the main branch and takes full advantage of Swift's native concurrency features.

v1.x is still supported and maintained on the release/1.x branch.

  • 📚 Documentation and tutorials are available on the Swift Package Index
  • 💻 Examples are available in the Examples directory
  • 🚀 Contributions are welcome, please see CONTRIBUTING.md
  • 🪪 License is Apache 2.0, repeated in LICENSE
  • 🔒 Security issues should be reported via the process in SECURITY.md

Quick Start

The following snippet contains a Swift Package manifest to use gRPC Swift v2.x with the SwiftNIO based transport and SwiftProtobuf serialization:

// swift-tools-version: 6.0
import PackageDescription

let package = Package(
    name: "foo-package",
    platforms: [.macOS("15.0")],
    dependencies: [
        .package(url: "https://github.com/grpc/grpc-swift-nio-transport.git", from: "1.0.0-alpha.1"),
        .package(url: "https://github.com/grpc/grpc-swift-protobuf.git", from: "1.0.0-alpha.1"),
    ],
    targets: [
        .executableTarget(
            name: "bar-target",
            dependencies: [
                .product(name: "GRPCNIOTransportHTTP2", package: "grpc-swift-nio-transport"),
                .product(name: "GRPCProtobuf", package: "grpc-swift-protobuf"),
            ]
        )
    ]
)