Нет описания

Tim Burks fda567eba7 Adding print statements for caught errors; something better is needed. 9 лет назад
Examples fda567eba7 Adding print statements for caught errors; something better is needed. 9 лет назад
Packages fda567eba7 Adding print statements for caught errors; something better is needed. 9 лет назад
QuickProto 9e7887504f rename "create[X]" methods to "make[X]" to follow Swift API guidelines 9 лет назад
gRPC cc616f53e0 first working TLS client calls 9 лет назад
gRPC.xcodeproj 10de2b3ce0 Simplify "perform" interface of Call class 9 лет назад
third_party cc12232180 Add grpc submodule, update path to grpc project, minor improvements to cgrpc.h 9 лет назад
.gitignore 6a1e661e29 Swift Echo sample 9 лет назад
.gitmodules cc12232180 Add grpc submodule, update path to grpc project, minor improvements to cgrpc.h 9 лет назад
CONTRIBUTING.md d76f54f1c1 Initial commit 9 лет назад
LICENSE d983798ec5 Fix license date (thomasvl@) 9 лет назад
PATENTS 36f2bde28e Add PATENTS declaration 9 лет назад
README.md 1206ee7a88 README updates. 9 лет назад

README.md

Swift gRPC API

This repository contains an experimental Swift gRPC API.

Not yet intended for production use, it provides low-level Swift wrappers for the C gRPC API that can be used to build higher-level structures supporting streaming and nonstreaming gRPC APIs.

Temporary protocol buffer support is provided in the QuickProto library. This simple Swift library provides an API for building and parsing protocol buffers with no generated code.

Code is provided for both gRPC clients and servers, and it can be built either with Xcode or the Swift Package Manager. The Xcode build is demonstrated with Echo, a sample Mac app that can be used to run echo clients and servers with streaming and nonstreaming interfaces over secure (TLS) and insecure channels.

Other examples include Sessions, StickyNotes, and Speech.

Swift Package Manager builds are demonstrated on Linux using the instructions in the Packages directory. (Linux builds are currently untested and were presumed broken by the addition of Grand Central Dispatch APIs for streaming API support; they will be fixed when threading-related incompatibilities between Linux and Darwin are resolved).

Can't find something?

It was harder to get the Swift package manager to deal with code in outside directories than to point Xcode at them, so you'll find the code for gRPC, CgRPC, and QuickProto in the Sources directory associated with each package.