The Swift language implementation of gRPC.
APACHE-2.0 License
Bot releases are visible (Hide)
Published by rebello95 almost 6 years ago
try!
call (@MrMage)zlib
dependency only for non-Apple platforms (@MrMage)Published by rebello95 almost 6 years ago
Published by timburks over 6 years ago
Published by timburks over 6 years ago
This release contains a large set of improvements led by @MrMage that improve error visibility and the structure of generated code. The Swift gRPC core now consists of two parts, a "Core" that provides basic services and a "Runtime" that contains code factored out of previously-generated code. With these changes, generated code is much lighter and easier to generate. To reduce dependencies, protoc-gen-swiftgrpc was rewritten to directly "print" generated code, and this simplification allowed us to move the plugin to the main Package.swift.
There are other pending improvements coming soon as patch version updates.
Published by timburks over 6 years ago
Improvements made during prototyping of a Swift webserver-to-gRPC proxy.
Published by timburks almost 7 years ago
CountDownLatch was removed and replaced with DispatchSemaphore.
Published by timburks almost 7 years ago
This update adds a dependency on SwiftProtobufPluginLibrary with the goal of using the SwiftProtobufNamer class to generate names that are consistent with the ones used by the Swift Protobuf project. Currently only message names are affected.
It also manually imports code used to determine file names for generated code to allow the default path names of files generated by protoc-gen-swiftgrpc to be more consistent with those from protoc-gen-swift.
Published by timburks almost 7 years ago
Previous versions required a separate "roots.pem" file to be loaded to initialize secure connections. Now this file is built into the library binary (see Sources/gRPC/Roots.swift) so clients no longer have to worry about providing this file.
In a related simplification, the Channel constructor now takes an optional "secure" argument whose default value is true. Note that this will break code that calls the Channel constructor with just an address since previously that created insecure connections. To get an insecure channel, add "secure:false" to your Channel constructor.
Published by timburks about 7 years ago
This release moves from Swift 3 to Swift 4. The update required changes to the modulemap for CgRPC that could break Swift 3 builds. If you still need to build with Swift 3, add the following line to the modulemap:
link "CgRPC"
See the change for more details.
Published by timburks about 7 years ago
The vendored gRPC is now v1.6.0, and the grpc-swift C shim layer compiles with versions of gRPC at least as far back as v1.4.5.
Published by timburks over 7 years ago
Libz is now included as a source package that is built by the Swift Package Manager. This removes the need to add -lz to Package Manager builds of grpc-swift clients.
Published by timburks over 7 years ago