暫無描述

George Barnett 76073a2c1a Extend structured swift to support generic structs (#2154) 10 月之前
.github dee1f1a7c0 Update release.yml (#2148) 11 月之前
Examples 0696e0adf7 Bump versions (#2150) 11 月之前
IntegrationTests 07e38e9756 Migrate CI to use swiftlang / SwiftNIO common GitHub Actions. (#2105) 1 年之前
Sources 76073a2c1a Extend structured swift to support generic structs (#2154) 10 月之前
Tests 76073a2c1a Extend structured swift to support generic structs (#2154) 10 月之前
dev 5be11cd938 Add reflection server example (#2149) 11 月之前
.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 年之前
.license_header_template 07e38e9756 Migrate CI to use swiftlang / SwiftNIO common GitHub Actions. (#2105) 1 年之前
.licenseignore 5be11cd938 Add reflection server example (#2149) 11 月之前
.spi.yml cfa6743020 Update tutorials and docs (#2070) 1 年之前
.swift-format 9cdcd2d9de Switch to swift-format 2 年之前
.swiftformatignore 07e38e9756 Migrate CI to use swiftlang / SwiftNIO common GitHub Actions. (#2105) 1 年之前
.unacceptablelanguageignore 07e38e9756 Migrate CI to use swiftlang / SwiftNIO common GitHub Actions. (#2105) 1 年之前
CODE-OF-CONDUCT.md 09b30466f6 Update links (#1926) 1 年之前
CONTRIBUTING.md 07e38e9756 Migrate CI to use swiftlang / SwiftNIO common GitHub Actions. (#2105) 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 61cc2d1f42 Avoid using vendored lock in BroadcastAsyncSequence (#2108) 1 年之前
Package.swift 7ed6f7d194 Enable MemberImportVisibility check on all targets (#2142) 1 年之前
README.md 0696e0adf7 Bump versions (#2150) 11 月之前
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
  • 🔀 Related Repositories:

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.git", from: "2.0.0-beta.2"),
        .package(url: "https://github.com/grpc/grpc-swift-nio-transport.git", from: "1.0.0-beta.2"),
        .package(url: "https://github.com/grpc/grpc-swift-protobuf.git", from: "1.0.0-beta.2"),
    ],
    targets: [
        .executableTarget(
            name: "bar-target",
            dependencies: [
                .product(name: "GRPCCore", package: "grpc-swift"),
                .product(name: "GRPCNIOTransportHTTP2", package: "grpc-swift-nio-transport"),
                .product(name: "GRPCProtobuf", package: "grpc-swift-protobuf"),
            ]
        )
    ]
)