September 2021 Release Notes - Version 21.9.0
September release, hot off the press:
New Features
- util-jvm: Experimentally crossbuilds with Scala 3. bfdde071
- util-stats: Counter, Gauge, and Stat can be instrumented with descriptions. 4e68dd09
- util-cache: Experimentally crossbuilds with Scala 3. 22977aa0
- util-cache-guava: Experimentally crossbuilds with Scala 3. 6131382e
- util-routing: Experimentally crossbuilds with Scala 3. 9615a9f1
- util-sl4j-api: Experimentally crossbuilds with Scala 3. e2368780
- util-sl4j-jul-bridge: Experimentally crossbuilds with Scala 3. 16a4a945
- util-stats: Experimentally crossbuilds with Scala 3. ea54f59c
- util-zk-test: Experimentally crossbuilds with Scala 3. 86df882b
- util-app: Flags parsing will now roll-up multiple flag parsing errors into a single
error message. When an error is encountered, flag parsing will continue to collect parse error
information instead of escaping on the first flag failure. After parsing all flags, if any errors
are present, a message containing all of the failed flags and their error reason,
along with the help usage message will be emitted. 0def519d
Runtime Behavior Changes
- util: Bump version of Jackson to 2.11.4. 72b9ba1e
- util: Bump version of json4s to 3.6.11. a9afb222
Breaking API Changes
- util-app: the c.t.app.App#flags field is now a final def instead of a val to address
override val scenarios where the c.t.app.App#flags are accessed as part of construction,
resulting in a NullPointerException due to access ordering issues.
The c.t.app.Flags class is now made final. The c.t.app.App#name field has changed from
a val and is now a def. A new c.t.app.App#includeGlobalFlags def has been exposed, which
defaults to true. The c.t.app#includeGlobalFlags def can be overridden to false
(ex: override protected def includeGlobalFlags: Boolean = false) in order to skip discovery
of GlobalFlags during flag parsing. b44e820c
Breaking API Changes
- scrooge-generator: Dropped the generic (higher-kinded-types) service interface in scala-gen,
users are recommended to use YourService.MethodPerEndpoint, YourService.ServicePerEndpoint
and YourService.ReqRepServicePerEndpoint to represent Thrift service endpoints. Note,
-finagle option is required to generated finagle binding code. 8d768ca6
- scrooge-generator: Removed YourService.FutureIface and YourService[Future] in scala-gen,
use \$YourService.MethodPerEndpoint instead. Correspondingly, YourService\$FinagleService and
related constructors taking MethodPerEndpoint as parameters. 8d768ca6
- Scrooge-generator: Dropped ThriftServiceBuilder.build and MethodIfaceBuilder.newMethodIface.
8d768ca6
- scrooge-generator: Add reserved keywords to ThriftParser. If your field names match
these keywords, you may need to modify them. This change should not affect backwards
and forwards compatiblility if using binary protocol for serde. 884f3603
Breaking API Changes
- finagle-thrift: Removed c.t.finagle.thrift.ThriftClient#newMethodIface and
ThriftClient#thriftService, use c.t.f.thrift.ThriftClient#methodPerEndpoint. fc21cccf
Bug Fixes
- finagle-core/partitioning: Close balancers and their gauges when repartitioning.
d0bd053d
Runtime Behavior Changes
- finagle: Upgrade to Netty 4.1.67.Final and netty-tcnative 2.0.40.Final. c373fc08
- finagle: Downgrade to Netty 4.1.66.Final cbfbef89
- finagle: Bump version of Jackson to 2.11.4. 19750a80
- finagle-core: OffloadFilter hands off work from Netty I/O thread to the offload CPU thread pool
right after we enter the Finagle stack by default. Previously this could be enabled via a toggle.
The com.twitter.finagle.OffloadEarly toggle has been removed. 2b5086fe
Breaking API Change
- finatra-thrift: Removed c.t.finatra.thrift.ThriftClient#thriftClient, use
#methodPerEndpoint. ed7ffac4
Runtime Behavior Changes
- finatra: Bump version of Logback to 1.2.6. 42cb5fc3
- finatra: Bump version of Jackson to 2.11.4. dff47602
- finatra: Bump version of Joda-Time to 2.10.10. 4906eab1
- finatra: Bump version of logback to 1.2.5. 9eaa5f9d
- finatra: Bump version of json4s to 3.6.11. 496d0e7d
Runtime Behavior Changes
- Bump version of Logback to 1.2.6. 4a1930f0
- Bump version of Jackson to 2.11.4. b4a8b44f
- Bump version of logback to 1.2.5. 0a2bfd6d