Releases: apple/servicetalk
0.42.14
This is a minor maintenance release appropriate for all ServiceTalk users that contains several useful improvements and bug fixes. This release is expected to be a "drop-in" replacement for all prior 0.42.X releases.
As the ServiceTalk API advances towards a 1.0 release all users are strongly encouraged to update their applications to eliminate all use of deprecated APIs. Existing deprecated APIs will be removed in a future ServiceTalk release without further additional notice. If you encounter problems replacing deprecated usages please create a support issue.
Changes
API Deprecations
Developer note: Additional API deprecation advisories and guidance have been added in each of the 0.41.X releases. Please build your application with the latest 0.41.X release and carefully review the deprecation warnings reported and associated suggestions. Changes to applications may be required for compatibility with future versions of ServiceTalk beyond the API compatible 0.41.X series. While there are many deprecations for planned future API changes, most applications should require few changes as the most significant changes are to internal or specialized APIs. If you have concerns or expect problems related to any of the API deprecations please report these as an issue.
- 24ad6cc - Deprecate
io.servicetalk.client.api.internal.DefaultPartitionedClientGroup
(#2176)- Deprecation of
DefaultPartitionedClientGroup
. We are unaware of any use-cases of this API and we plan to remove it completely in future releases.
- Deprecation of
- 908a84f - Deprecate public gRPC API that is not used anymore by ST (#2300)
- Deprecate
io.servicetalk.grpc.api.GrpcClientFactory#supportedMessageCodings
, variant available asio.servicetalk.grpc.api.GrpcClientFactory#bufferDecoderGroup
, andGrpcRoutes.AllGrpcRoutes
interface.
- Deprecate
- 5cfe9c4 - Revert backward incompatible changes (api & binary) introduced in #2278 (#2306)
- Deprecated
HttpLoadBalancerFactory#toLoadBalancedConnection(FilterableStreamingHttpConnection)
- introduced a variant that also acceptsContextMap
andReservableRequestConcurrencyController
. - Deprecate all classes and interfaces in
io.servicetalk.client.api.internal
package.servicetalk-client-api-internal
module will be removed in future releases.
- Deprecated
- df916b6 - Give access to the underlying TCP ConnectionContext from HTTP/2 service (#2319)
- Deprecate one of
io.servicetalk.transport.netty.internal.DefaultNettyConnection#initChildChannel
overloads.
- Deprecate one of
New API
- 6e47753 - Make
RequestConcurrencyController
public (#2278) - df916b6 - Give access to the underlying TCP ConnectionContext from HTTP/2 service (#2319)
Bug Fixes
Improvements
- 17fbb91 - Null check result of
HttpServerBuilder
supplier (#2317) - d46dbd6 - Throw error when score is invoked on a connection that doesn't support it (#2318)
- a99f319 - Remove logging for duplicate termination in Jersey router (#2316)
- af18034 - gRPC add default method for asBlockingClient to simplify filter creation (#2309)
- 44c4343 - Remove unused internal code from
servicetalk-grpc-api
(#2299) - e5a00b5 - grpc-protoc javadoc testing updates (#2140)
Dependencies
- 86c9b8b - Update protobuf 3.21.2 -> 3.21.4 (#2315)
- 0515fd5 - Upgrade Gradle wrapper 7.5 → 7.5.1 (#2312)
- 48e51f3 - Upgrade JMH 1.3.3 → 1.3.5 (#2272)
- bd7b9da - Add netty-incubator-transport-native-io_uring to
servicetalk-dependencies
(#2295) - c7375c4 - Define
jaxb-impl
asapi
inservicetalk-dependencies
Build/Release/Github actions
- e6225ef - Use
compileJava
options.release
(#2301) - 987538c - Hide use of
sun.misc.Unsafe
fromjavac
(#2303)
Test improvements
- 9c61136 -
ConnectablePayloadWriterTest.multiThreadedProducerConsumer
increase timeout (#2296) - 2a29d60 - Increase
CompositeClosableTest
timeouts (#2302)
Thank you
Every idea, review, and bug-report counts and so we thought it is worth mentioning those who helped in this area. Please report any unintended omission.
0.42.13
This is a minor maintenance release appropriate for all ServiceTalk users that contains several useful improvements and bug fixes. This release is expected to be a "drop-in" replacement for all prior 0.42.X releases.
As the ServiceTalk API advances towards a 1.0 release all users are strongly encouraged to update their applications to eliminate all use of deprecated APIs. Existing deprecated APIs will be removed in a future ServiceTalk release without further additional notice. If you encounter problems replacing deprecated usages please create a support issue.
Changes
API Deprecations
- da74e30 - Deprecate unused
ClientInvoker
interface (#2287) - da06991 - Propagate
ContextMap
throughLoadBalancedAddress
(#2285)- Add
LoadBalancedAddress#newConnection(ContextMap)
method; - Deprecate
LoadBalancedAddress#newConnection()
;
- Add
Bug Fixes
- c4b13e9 - Cancellation can leave an HTTP/1.x connection in half-closed state (#2264)
- 9f02857 - Default methods that return async sources should not throw (#2288)
- 4bae4c1 - Handle HTTP/1.1 response cancelation same way at all levels (#2266)
Improvements
- 2a0f45c - servicetalk-bom to include internal depdencies as API (#2283)
- a09e56b -
LoadBalancedStreamingHttpConnection
doesn't need connect strategy (#2274) - 639c1b6 - Implement
toString()
forHttpProtocolConfig
and its components (#2281) - 68b8609 -
WriteStreamSubscriber
: don't interact with Subscription after terminal (#2276) - ed3ea74 - Adjust logging in
IdleTimeoutInitializer
(#2289)
Dependency Updates
- 857e2e5 - Update protobuf 3.21.0 -> 3.21.2 (#2284)
- 8c741fa - Update proto-google-common-protos 2.8.3 -> 2.9.2 (#2294)
- b3bc4db - Update reactive-streams 1.0.3 -> 1.0.4 (#2293)
Build/Release/Github actions
Test improvements
Thank you
Every idea, review, and bug-report counts and so we thought it is worth mentioning those who helped in this area. Please report any unintended omission.
0.42.12
This is a minor maintenance release appropriate for all ServiceTalk users that contains several useful improvements and bug fixes. This release is expected to be a "drop-in" replacement for all prior 0.42.X releases.
As the ServiceTalk API advances towards a 1.0 release all users are strongly encouraged to update their applications to eliminate all use of deprecated APIs. Existing deprecated APIs will be removed in a future ServiceTalk release without further additional notice. If you encounter problems replacing deprecated usages please create a support issue.
Changes
API Deprecations
Bug Fixes
- d3d4667 -
TimeoutHttpRequesterFilter
as a connection filter causesClosedChannelException
(#2263) - d959d8b -
TracingHttpServiceFilter
should implementrequiredOffloads()
(#2260) - 397bc76 - Remove reference to obsolete gRPC plugin (#2256)
- 0f1ac15 -
MultiAddressClientBuilder
execution strategy control (#2166) - de5dca6 -
SpliceFlatStreamToMetaSingle
: avoid returning a staticThrowable
(#2253)
Improvements
- 6e023e0 - Enhance NPE in operators that invoke functions (#2262)
- 8cc2f32 - Enhance exception message thrown from
appendNonOffloadingServiceFilter
(#2261) - 89a92b7 -
BufferDecoderGroupBuilder#add
method w/outadvertised
flag (#2254)
Dependency Updates
- 26ed662 - Update Netty 4.1.77 -> 4.1.78 (#2250)
- 7119148 - Upgrade Netty 4.1.78 → 4.1.79 (#2268)
- 7071632 - Upgrade google common protos 2.8.1 → 2.8.3
- 28330e3 - Upgrade gradle protobuf plugin 0.8.18 → 0.8.18
- 5c7974d - Upgrade Log4J 2.17.2 → 2.18.0 (#2269)
- f855269 - Upgrade Jackson 2.12.2.2 → 2.12.3 (#2270)
- 28ca713 - Update JCTools 3.3.0 -> 3.3.1-ea, use unpadded queues (#2257)
Documentation & Examples
- 80c4746 - Link to
servicetalk/examples
repo (#2249) - a04b4f5 - Clarify preferred ordering for
[Http|Grpc]LifecycleObserver
filters (#2252)
Build/Release/Github actions
- ad6aa67 - Bump dawidd6/action-download-artifact from 2.21.0 to 2.21.1 (#2255)
- 44831d0 - Update spotbugs 4.7.0 -> 4.7.1 (#2258)
- f34e21a - Update Pitest 1.7.0 → 1.7.4 (#2248)
Tests
Thank you
Every idea, review, and bug-report counts and so we thought it is worth mentioning those who helped in this area. Please report any unintended omission.
0.42.11
Changes
This is a minor maintenance release appropriate for all ServiceTalk users that contains several useful improvements and bug fixes. This release is expected to be a "drop-in" replacement for all prior 0.42.X releases.
The 0.41.x branch is now EOL. Please plan your migrations accordingly, and let us know if you have any questions. The recommended path is:
- Update to the latest version of 0.41.x (https://github.com/apple/servicetalk/releases/tag/0.41.16)
- Resolve all deprecations. All deprecations include javadocs explaining the recommended replacement approach. The javadocs can pulled by your IDE and also viewable on the 0.41 docs website.
- Update to latest version of 0.42.x (see https://github.com/apple/servicetalk/releases - currently this release, 0.42.11)
API Deprecations
- 5565f32 - Add default implementations for deprecated methods (#2235) - this helps users to start migrating off interface methods that was marked as
@Deprecated
in previous releases
New Features
- bff3378 - Add dependencies BOM (#2210)
- ServiceTalk now provides two BOM (Bill of Materials) files each with slightly different purposes;
servicetalk-bom
andservicetalk-dependencies
. BOM files allow separation of dependency management and version management; a BOM specifies only component versions, not dependencies. Centralizing the management of versions to a single file greatly reduces the maintenance burden for updating to new versions and improves consistency because all references to a dependency will use the same version. The BOM files define the versions of modules which might be included as dependencies, but do not
include the module as a dependency. Later when the module is included as a dependency, the dependency is specified without including a version and the version specified in the BOM is used.
Theservicetalk-bom
BOM includes version information all ServiceTalk modules; version selection for external non-ServiceTalk dependencies is done in individual modules. Theservicetalk-dependencies
BOM extends theservicetalk-bom
by also defining specific versions to be used for the external modules ServiceTalk depends upon. Unless your application requires different versions of these same dependencies then using theservicetalk-dependencies
BOM is the most convenient way to ensure that a tested and supported set of modules is used or building and running the application. Theservicetalk-dependencies
BOM should be preferred whenever possible. Using theservicetalk-bom
may be easier when your application wishes to do more complete management of external dependencies, or you wish to include ServiceTalk as anenforcedPlatform
, but do not want the external dependencies to be included in that constraint.
To override a specific dependency version with your application's required version you can use something like the following in yourbuild.gradle
:
- ServiceTalk now provides two BOM (Bill of Materials) files each with slightly different purposes;
implementation(platform("io.servicetalk:servicetalk-dependencies:$servicetalkVersion"))
// Overrides the default Netty BOM version imported by ServiceTalk with a specific version
implementation(enforcedPlatform("io.netty:netty-bom")) {
version {
strictly '4.1.76.Final'
}
}
// Overrides the default Jackson databind version with a specific version
implementation ("com.fasterxml.jackson.core:jackson-databind") {
version {
strictly '2.13.2.1'
}
}
- b952931 - Support
Completable
from aCallable
(#2225) - 49e3525 - Make
HostHeaderHttpRequesterFilter
public (#2212) - d85bc3f - Add
ConnectionObserver#connectionWritabilityChanged(boolean)
(#2229) - f9091b0 -
HttpLifecycleObserver
: notify when payload body is requested (#2230, #2243)
Bug Fixes
- c0b80c0 - Clear async-context inside RRLB health checking (#2220)
- 6afe86b - Fix regression of client
offloadNone()
strategy (#2192) - 0e38d94 - Return
ExecutionContext
with correct strategy (#2244)
Improvements
- 512558d - Make routers explicit about offloading behavior (#2241)
- d05e52a - Allow no SP after status-code for HTTP/1.x responses (#2247)
- f41ce24 - Enhance logging for execution strategy computation (#2224)
- fc53573 - Log the cause why native transport libs are not loaded (#2226)
- 05a015c - gRPC improve error status for non-200 h2 response status (#2221)
- 9c4e932 - Avoid direct usage of
RuntimeException
(#2228) - 45019c5 - Cleanup
HttpPredicateRouterBuilder
(#2234) - 64f2716 - Reduce log level in
RoundRobinLoadBalancer
(#2213) - 13e6b47 - Migrate
ON_CONNECTION_SELECTED_CONSUMER
to request context (#2239) - 0f0f86e - Use
servicetalk-dependencies
BOM internally (#2217) - 05fbfa2 - Use more external dependency BOM files (#2218)
- cda273e - Use
servicetalk-dependencies
for tests (#2219)
Dependency Updates
- 1290f95 - Update netty-incubator-transport-native-io_uring 0.0.13 -> 0.0.14 (#2208)
- 83fd27c - Update spotbugs 4.6.0 -> 4.7.0 (#2222)
- 599b059 - Update protobuf 3.20.0 -> 3.21.0 (#2231)
Documentation & Examples
- e43761c - Update
http
documentation links tohttps
(#2232) - 1d454a7 - Clarify expectations for
TransportObserver
implementations (#2238) - 88bf117 - Spelling error in
DefaultHttpExecutionStrategy
(#2242) - 48a0c54 - Use
servicetalk-grpc-protoc-all
for pom.xml (#2214)
Build/Release/Github actions
- 407a90d - Add
mavenCentral()
repository if no repositories are configured (#2215) - ff6436b - Bump dawidd6/action-download-artifact from 2.20.0 to 2.21.0 (#2236)
- 201748f - Bump dawidd6/action-download-artifact from 2.19.0 to 2.20.0 (#2233)
Tests
- 8127bde - Add unit test for gRPC over h1, negotiated by TLS+ALPN (#2216)
- 931ffe4 - Additional test of expected server offloading (#2227)
Thank you
Every idea, review, and bug-report counts and so we thought it is worth mentioning those who helped in this area. Please report any unintended omission.
@bondolo
@chemicL
@domcorvasce 🎉 ** NEW CONTRIBUTOR ** 🎉
@idelpivnitskiy
@Scottmitch
@tkountis
0.42.10
Changes
This is a minor maintenance release appropriate for all ServiceTalk users that contains several useful improvements and bug fixes. This release is expected to be a "drop-in" replacement for all prior 0.42.X releases.
The 0.41.x branch is now EOL. Please plan your migrations accordingly, and let us know if you have any questions. The recommended path is:
- Update to the latest version of 0.41.x (https://github.com/apple/servicetalk/releases/tag/0.41.16)
- Resolve all deprecations. All deprecations include javadocs explaining the recommended replacement approach. The javadocs can pulled by your IDE and also viewable on the 0.41 docs website.
- Update to latest version of 0.42.x (see https://github.com/apple/servicetalk/releases - currently this release, 0.42.10)
Bug Fixes
- 9aec0e0 - Avoid deadlock consuming from blocking Iterator (#2204)
- 3d26046 - Avoid self-suppression for exceptions (#2211)
Dependency Updates
- 8b0cf58 - Update Netty 4.1.76 -> 4.1.77 (#2207)
- 4ce81d5 - Tighter dependency for protoc plugin (#2209)
- For projects which use the ServiceTalk
protoc
compiler you may now need to addservicetalk-data-protobuf
as a dependency as it is required for the generated classes. The missing dependency is most often seen aspackage ProtobufSerializerFactory does not exist
. Previouslyservicetalk-data-protobuf
had been transitively included for you.
- For projects which use the ServiceTalk
- dc03468 - fix:
servicetalk-data-jackson
dependency scopes (#2198)
Documentation & Examples
- 2cda82d - Update JVM version for javadoc generation (#2191)
- 4bcfe24 - Generate JavaDoc only for API JavaDoc tasks (#2202)
- e4fd157 - Remove pom.xml from gRPC KeepAlive example (#2206)
- 7cd1c78 - Add example for h2 keep alive (#2203)
- 759a20f - Clarify
AsyncContext
concurrency docs (#2199) - 42b1c49 - Resolve
javadocAll
errors (#2195)
CI/Build
- 178fc28 - Combine
publish-docs.sh
andrelease.sh
(#2196) - eaa9cfd -
release.sh
fixes to build on non-main branch (#2194) - b172da3 - Call
japicmp.sh
fromrelease.sh
(#2193) - 470759e - Bump dawidd6/action-download-artifact from 2.17.0 to 2.18.0 (#2190)
- 8d75ff2 - Bump actions/setup-java from 2 to 3 (#2184)
- 291f7aa - Bump github/codeql-action from 1 to 2 (#2200)
- d7a5f10 - Bump dawidd6/action-download-artifact from 2.18.0 to 2.19.0 (#2197)
Thank you
Every idea, review, and bug-report counts and so we thought it is worth mentioning those who helped in this area. Please report any unintended omission.
@bondolo
@chemicL
@eddie4941
@idelpivnitskiy
@Scottmitch
@tkountis
0.42.9
Changes
This is a minor maintenance release appropriate for all ServiceTalk users that contains several useful new features, improvements, and bug fixes. This release is expected to be a "drop-in" replacement for all prior 0.42.X releases.
API Deprecations
- d62bfd2 - Deprecate
offloadNever()
(#2133)- Users should migrate to
offloadNone()
- Users should migrate to
- 4141e33 -
LoadBalancer
andConnectionFactory
: add a context of the caller (#2168)- Deprecate
LoadBalancer#selectConnection(Predicate)
, users should migrate to the new methodLoadBalancer#selectConnection(Predicate, ContextMap)
; - Deprecate
ConnectionFactory#newConnection(Address, TransportObserver)
, users should migrate to the new methodConnectionFactory#newConnection(Address, ContextMap, TransportObserver)
;
- Deprecate
New Features
- 2ca7af2 - Make ServiceTalk protoc plugin extensible (#2160)
- 071666f - Let
ConnectionFactory
see difference between proxied and direct connections (#2169) - 13107f8 - Introduce
HttpProviders
andGrpcProviders
(#2137) - 0124d9f - Add
[Single | Completable].cache(...)
operators (#2162) - 1ab2b76 - Jersey Protobuf Serialization Support (#2159)
- 0fae5cb - Expose
SslConfig
throughConnectionInfo
(#2150) - b274746 - Add grpc-health service implementation (#2147)
- cdc249e - Add
Publisher.flatMapConcatSingle(...)
(#2151) - c8d0139 - Let users move
GrpcLifecycleObserver
in the filter chain (#2171)
Improvements
- 78d1186 - Use more specific
ConcurrentMap
methods (#2188) - 6edc415 - Implement
ServiceDiscoverer#toString()
forDefaultDnsServiceDiscoverer
(#2149) - 998fd00 -
Processors.newPublisherProcessor()
simplify duplicate terminal check (#2148) - 125524c -
RoundRobinLoadBalancer
: better identify excess connections (#2173) - fce6b3e -
RoundRobinLoadBalancer
: increase visibility into health-checking (#2182) - d07605e - Always set default
ServiceTalkSocketOptions#IDLE_TIMEOUT
(5 minutes) (#2174) - fbd5cf5 - DNS ServiceDiscoverer: add jitter for the subsequent DNS queries (#2170)
- c4df3a3 - Conditionally use
IoExecutor
timer for retry (#2134)
Bug Fixes
- c08f21e - HTTP/1.x Client write explicit empty buffer fix (#2175)
- f1a3581 - Update
TextMapFormatter
: default sampled tonull
rather thanfalse
when extracting trace context (#2177) - 3ae63a5 - fix: handle null parent spans in
asChildOf
calls (#2167) - 1c83856 - HTTP/2 handlers should throw
Http2Exception
and send RST_STREAM frame (#2146) - 99712d1 -
Publisher.multicast(...)
duplicate cancelIndexOutOfBounds
exception (#2161) - bb0ed15 - Use filter strategy for streaming async server (#2156)
- 40c3e3c - servicetalk-grpc-protoc name conflict fixes (#2157)
Dependency Updates
- 39528ed - Update Netty 4.1.74 -> 4.1.75 (#2141)
- ac4dddb - Update Netty 4.1.75 -> 4.1.76 (#2187)
- 6fd32bb - Update netty-incubator-transport-native-io_uring 0.0.12 -> 0.0.13 (#2181)
- be967db - Update Jackson 2.13.1 -> 2.13.2.2 (#2178)
- 96e96f9 - Update protobuf 3.19.2 -> 3.20.0 (#2186)
- b127e56 - Update proto-google-common-protos 2.7.1 -> 2.8.1 (#2179)
- 7addb00 - Update log4j 2.17.1 -> 2.17.2 (#2180)
Documentation & Examples
- 6620b3c - Enhance
servicetalk-examples-grpc-observer
(#2172) - 6586322 - CONTRIBUTING - Project Communication section (#2153)
- 6f0c43a - Enhance javadoc for
HttpSerializers.stringStreamingSerializer
(#2164) - 17c2bb4 - Remove examples for multi-address client that similar to single-address (#2129)
- bfc8183 - Update offloading documentation (#2039)
CI/Build
- efe1842 - Bump actions/upload-artifact from 2 to 3 (#2183)
- c27ef5c - Update spotbugs 4.4.1 -> 4.6.0 (#2158)
- 1d3607a - Update gradlew 7.3 -> 7.4.1 (#2163)
- b01305a - Update node.js 14.16.0 -> 16.14.2 (doc site generation) (#2165)
- 66566d1 - Update grpc-java 1.43.0 -> 1.45.1 (test dependency) (#2176)
Thank you
Every idea, review, and bug-report counts and so we thought it is worth mentioning those who helped in this area. Please report any unintended omission.
@bondolo
@chemicL
@eddie4941
@idelpivnitskiy
@saturnism
@Scottmitch
@suman-ganta
@tkountis
0.41.16
Changes
This is a minor maintenance release appropriate for all ServiceTalk 0.41 users that contains several bug fixes and improvements. The 0.41.X releases are provided for users operating legacy production systems, most users should migrate to the current mainline 0.42 releases.
Bug fixes
- 00061db - Add
publishOn
/subscribeOn
Executor
overload (#2155) - ec0aa39 - Revert "Deprecated GrpcClientBuilder#MultiClientBuilder" (#2128)
- 805a73e - Completable/Single Processors more robust top of stack removal (#2116)
- 096d4d2 - Fix memory leak in Completable/Single Processors (#2114)
Thank you
Every idea, review, and bug-report counts and so we thought it is worth mentioning those who helped in this area. Please report any unintended omission.
0.42.8
Changes
This is a minor maintenance release appropriate for all ServiceTalk users that contains several bug fixes and improvements.
API deprecation
- b92caff - Deprecate
HttpClients.forMultiAddressUrl(ServiceDiscoverer)
(#2132)- Instead,
MultiAddressHttpClientBuilder#initializer(SingleAddressInitializer)
should be used to overrideServiceDiscoverer
usingSingleAddressHttpClientBuilder#serviceDiscoverer(ServiceDiscoverer)
.
- Instead,
- a452927 - Deprecated
PartitionedHttpClientBuilder
and partition client APIs (#2131)PartitionedHttpClientBuilder
is hard to use because it requires implementation of a specialServiceDiscoverer
that we do not provide OOTB. We are unaware of anyone using this feature, but if there are any users they should considerClientGroup
as an alternative or reach out to us to provide more context why thePartitionedHttpClientBuilder
is required.
- 9c3ed5a - grpc-protoc
ServiceFactory.Builder
#addService(BlockingService)
->#addBlockingService(BlockingService)
(#2143)- The existing overloaded method required casting to disambiguate calls or implied compiler warnings when the argument was a lambda. We added a specific method for the blocking service argument to improve the API.
New features
- 310f6b5 - Allow override of the
HttpHeadersFactory
for multi-address and partitioned clients (#2135)
Improvements
- dbcbfd8 - Javadoc for generated gRPC classes has warnings and errors (#2139)
- a93fc9b - Decouple multi-address and partitioned client builders from
HttpClientBuildContext
(#2136) - 1d84590 - Revert "Removed GrpcClientBuilder#MultiClientBuilder (#1809)" (#2127)
- 3dbd25a - Enhance URI parsing exceptions (#2126)
- dd4b95d - Remove use of special
defaultStrategy()
merge method (#2108)
Bug fixes
Examples
Documentation
- 0828d09 - Explain wire/frame logging
logUserData
(#2125) - 3a9ed56 - grpc-protoc fix missing javadoc (#2144)
Build / CI
Thank you
Every idea, review, and bug-report counts and so we thought it is worth mentioning those who helped in this area. Please report any unintended omission.
0.42.7
Changes
This is a minor maintenance release appropriate for all ServiceTalk users that contains several bug fixes and improvements.
Improvements
- 70d2a47 - Reduce Publisher/Single retry/repeat allocations (#2120)
- 3aadf0b - Add missing generics for cast in DefaultAsyncContextProvider (#2122)
- c64ec90 - Reduce initial size of WriteStreamSubscriber queue (#2119)
- aef3845 - Reduce initial queue size for h1 pipelined connection (#2118)
- cf0a8b8 - Minor Processor usage cleanup (#2115)
Dependencies
Examples
Build / CI
Thank you
Every idea, review, and bug-report counts and so we thought it is worth mentioning those who helped in this area. Please report an unintended omission.