Releases: grpc/grpc-swift
Releases · grpc/grpc-swift
gRPC Swift 1.24.1
gRPC Swift 1.24.0
gRPC Swift 2.0.0-alpha.1
🚀 The gRPC Swift team is excited to announce the first alpha release of gRPC Swift v2! 🚀
Highlights 🌟
- An
async/await
implementation from the ground up. The new library is built on top of Swift's native concurrency features and takes advantage of structured concurrency to make it easier to reason about your RPCs. It's also built from the ground up to support the Swift 6 language mode. - Expressive and easy to use APIs. Our APIs have been designed to be simple to use for newcomers and flexible enough for expert users.
- Pluggable transport layer. The underlying transport for clients and servers have been abstracted away to a transport layer; SwiftNIO is now an implementation detail and brought in via a separate package, grpc/grpc-swift-nio-transport.
- Pluggable serialisation. The serialisation layer is also pluggable, support for Swift Protobuf is made available via grpc/grpc-swift-protobuf.
- Better performance than v1. Benchmarks show that the SwiftNIO based transport for v2 is up to 80% faster than the equivalent benchmarks for gRPC Swift v1.
Getting started 📚
Please note that this is pre-release software, we don't guarantee any API stability and this shouldn't be considered production ready.
To get started with gRPC Swift v2, take a look at our examples and documentation:
- Documentation is hosted on the Swift Package Index
- Examples are available in the
Examples/
directory
Feedback 💬
If you have any questions or feedback be it good, bad, big, or small please let us know by opening an issue.
gRPC Swift 1.23.1
SemVer Patch
- Swift 6-ify the package manifest (#1955)
- Fix warnings in SwiftPM plugin (#1958)
- Update to protobuf 1.27.0 (#1973)
- Improve error message for missing reflection data (#2038)
- Use SwiftProtobuf's new CodeGenerator interface (#2043)
- Stop using deprecated protobuf API (#2045)
- Bump version number to 1.23.1 (#2062)
Other Changes
- Manually cleanup unix domain socket path in NIOTS test (#1951)
- Add integ test for SwiftPM plugin (#1956)
- Move v1 examples to v1 subdirectory (#1963)
- Update test certs (#1966)
- Fix broken symlinks (#1988)
- Update test certs (#1998)
- Fix tests to work with unreleased swift-nio changes (#2001)
- Add check that generated code is up-to-date (#2013)
- Add docc docs for grpc core (#2016)
- Use Swift 6 to build docs on Swift Package Index (#2020)
- Move examples to top-level (#2024)
- Regenerate protos (#2039)
- Update plugin bundling script (#2053)
gRPC Swift 1.23.0
gRPC Swift 1.22.0
SemVer Minor
- Add a minimum connections configuration to the ConnectionPool (#1822)
- Raise minimum swift version to 5.8 (#1825)
SemVer Patch
- Log connection age when closing a connection (#1799)
- Notify of quiescing when there are no open streams on graceful shutdown (#1819)
- Update Version.swift (#1846)
Other Changes
- Update README (#1809)
gRPC Swift 1.21.1
SemVer Patch
- Fix a bug in
protoc-gen-grpc-swift
where no output would be producedClient=False,TestClient=True
(#1765, patch credit to @severnt) - Update metric serialization in logs to send integers as values (#1783, patch credit to @gliush)
- Better waiter errors with NIOTS (#1775)
- Use configured connect timeout when retries is none (#1777)
- Add scripts to fetch and generate protos and update generated files (#1784)
- Additional logging for connection pool (#1795)
- Bump version number to 1.21.1 (#1798)
Other Changes
gRPC Swift 1.21.0
gRPC Swift 1.20.0
SemVer Minor
- Drop support for Swift 5.6 (#1657)
- Make the connection pool error public (#1685)
- Allow binding to a socket address via the server builder (#1686)
- Add convenience methods to keepalive to jitter the interval (#1697)
SemVer Patch
- Switch to swift-format and re-format (#1655)
- Add missing deque import (#1670)
- Add support for
package
visibility modifier to the code generator (#1674) - Additional keepalive diagnostics (#1692)
- Fix last peer initiated stream ID when quiescing (#1700)
- Bump version number to 1.20.0 (#1701)
Other Changes
- Fix soundness script (#1676)
- Multiple changes in preparation to support the reflection service (#1675,
#1695, #1659, #1677, #1680, #1682, #1669, #1654) - Multiple changes working towards v2 (#1652, #1656, #1660, #1664, #1665, #1666, #1667, #1668, #1671, #1672, #1678, #1681, #1683, #1684, #1687, #1688, #1689, #1690, #1691, #1693, #1696, #1698)