🍁 September 2020 Release Notes - Version 20.9.0
With the start of Fall 🍁, it is only right for a new release of our libraries! Here’s the latest of Finagle, Finatra, Scrooge, TwitterServer, and Util!
New Features
- finagle-core: Add RelativeName field to Metric Metadata and populate it for
client and server metrics. de589ffa
- finagle-scribe: Add c.t.finagle.scribe.Publisher for publishing messages to a
Scribe process. 7723a949
Runtime Behavior Changes
- finagle: Bump version of Jackson to 2.11.2. 6c6c882a
Bug Fixes
- finagle-core: The TraceId alternative constructor now forwards the traceIdHigh parameter to
the primary constructor. 567e8d66
Added
- finatra-inject: TestInjector has been reworked to allow users executing modules’ lifecycle
callbacks. Specifically, the TestInjector builder API has been moved under TestInjector.Builder
to allow TestInjector extends Injector with two new methods: start() and close().
07bf53fa
Changed
- finatra-kafka-streams: Update and separate the Finatra kafka stream code base which has direct
dependency on Kafka 2.2. Separate any code which cannot easily be upgraded to separate build
target. 3c78c34d
- inject-core: c.t.inject.Injector is now an abstract class. Use Injector.apply to create
a new instance (versus the new Injector(…) before). 64ba51e9
- http: Ensure HttpWarmer creates the request exactly the number of times requested and
mutates the correct objects. 0a3be376
- kafka: Replaced the com.twitter.finatra.kafka.TracingEnabled toggle with a GlobalFlag enabling
Zipkin tracing for Kafka clients. 0e829aae
- finatra: Bump version of Jackson to 2.11.2. 94bc773d
Fixed
- jackson: Fix issue in the handling of unknown properties. The CaseClassDeserializer only
considered the case where the incoming JSON contained more fields than the case class and
not the case where the incoming JSON contained less fields than specified in the case class.
This has been fixed to ensure that when the fields of the JSON do not line up to the
non-ignored case class fields the handling of unknown properties is properly invoked.
9762145d
- validation: c.t.f.validation.Validator would throw an IndexOutOfBoundsException when
trying to validate a case class which contained additional fields that are not included in the
constructor parameters. bb342c09
No Changes
- Bump version of Jackson to 2.11.2. 86992eab
- Encode the request URL names in /admin/clients/<client_name> and /admin/servers/<server_name>.
038ce648
- If a client connecting to an instance of TwitterServer is sending a client certificate,
its expiry date (i.e. Not After) is now included as part of the information listed.
18b8b527.
Breaking API Changes
- Add relative_name field to metrics in the Metrics Metadata endpoint and bump the
endpoints version number to 2.0. 8b49adea
New Features
- util-app: Seq/Tuple2/Map flags can now operate on booleans. For example,
Flag[Seq[Boolean]] now works as expected instead of throwing an assert exception (previous
behaviour). e4f54d3c
Breaking API Changes
- util-app: Flaggable.mandatory now takes implicit ClassTag[T] as an argument. This is change is
source-compatible in Scala but requires Java users to pass argument explicitly via
ClassTag\$.MODULE\$.apply(clazz). b08a02ec
Runtime Behavior Changes
- util: Bump version of Jackson to 2.11.2. 5d8877db