October 2020 Release Notes - Version 20.10.0 🎃
Trick or… our October release is as sweet as candies 👻
Breaking API Changes
- finagle-thrift: Change the partition locator function getLogicalPartitionId in
PartitioningStrategy from Int => Int to Int => Seq[Int], which supports many to many mapping
from hosts and logical partitions. ab641adc
Runtime Behavior Changes
- finagle-core: Disable eager connections for balancers with a non 1.0 weight. 11eae0d6
Added
finatra-kafka-streams: Add toCluster DSL call to publish to another Kafka cluster. 449eea1a
jackson: Add support for validating @JsonCreator annotated static (e.g., companion object defined apply methods) or secondary case class constructors. 1c1b55c9
inject-app: Allow injecting flags without default values as both scala.Option and java.util.Optional. b74fe9e9
Changed
- utils: Undo usage of TypesApi for help in determining if a class is a Scala case class
as this fails for generic case classes in Scala 2.11, failing some supported cases for
Jackson processing. b1d43381
- utils: Update ClassUtils#simpleName to handle when package names have underscores
followed by a number which throws an InternalError. Add tests. bbc0cf7b
- utils: Revamp ClassUtils#isCaseClass to use the TypesApi for help in determining
if a class is a Scala case class. Add tests. bbc0cf7b
- http: The http server did not properly log the bound address on server startup. Fix this
and make the thrift server consistent. 4410ff38
- utils: (BREAKING API CHANGE) Rename maybeIsCaseClass to notCaseClass in
ClassUtils and change the scope of the method. 82ffb4be
- http: Adding support for optionally passing chain in the TLS sever trait. 5bcce35c
- finatra: Bump version of Joda-Time to 2.10.8. e2cbca30
Fixed
finatra-kafka-streams: Revert AsyncTransformer to still use ConcurrentHashMap. 7d5b3ccf
inject-thrift-client: The Singleton annotation has been removed from the DarkTrafficFilter and the JavaDarkTrafficFilter. It was there in error. 5efc1ab2
inject-thrift-client: When using RepRepServicePerEndpoint, Finatra’s DarkTrafficFilter would throw a NoSuchMethodException when trying to lookup an inherited Thrift endpoint.
697b2137
Bug Fixes
- util-stat: MetricBuilder now uses a configurable metadataScopeSeparator to align
more closely with the metrics.json api. Services with an overridden scopeSeparator will
now see that reflected in metric_metadata.json where previously it was erroneously using
/ in all cases. 7665b9eb
- util-slf4j-api: Better Java interop. Deprecate c.t.util.logging.Loggers as Java users should be
able to use the c.t.util.logging.Logger companion object with less verbosity required.
26e7874b
No Changes
No Changes