Finatra v22.3.0 Release Notes

  • โš™ Runtime Behavior Changes

    
    * ๐Ÿšš inject-app: Remove the SLF4J-API logging bridges as dependencies. These were originally
      added as the framework was expressly opionated that users should use Logback as an SLF4J-API
      implementation, however specifying the bridges on the Finatra inject/inject-app library
      causes many issues with code that must use a different SLF4J-API logging implementation
      but still uses the Finatra framework. Users should note that if they do not include these
      bridges in some other manner that they may lose logging if they have any libraries which
      log with one of the formerly bridged implementations. Also note that servers using a
      `TwitterServer` logging implementation to support `dynamically changing log levels <https://twitter.github.io/twitter-server/Features.html#dynamically-change-log-levels>`__ will get the proper bridges as dependencies.
      ``PHAB_ID=D854393``
    
    โš™ Runtime Behavior Changes
    
    • ๐Ÿ—„ inject-server: Throw an UnsupportedOperationException when access to the c.t.inject.server.DeprecatedLogging#log instance is attempted. This is a JUL Logger instance which was provided only as a backward-compatible shim for Finatra services when the c.t.server.TwitterServer framework was moved to the SLF4J-API. The instance was marked @deprecated in hopes of alerting users to not use it. We have now updated it to throw an exception when accessed. Please refer to the Finatra documentation for more information on using the SLF4J-API for logging with the Finatra framework: https://twitter.github.io/finatra/user-guide/logging/index.html. PHAB_ID=D854365

    โž• Added

    
    * โœ… inject-app: Introduce test-friendly `c.t.inject.app.console.ConsoleWriter` and
      `c.t.inject.app.TestConsoleWriter`, which can be used to inspect the output of a command-line
      style `c.t.inject.app.App`. ``PHAB_ID=D856159``
    
    ๐Ÿ”„ Changed
    
    • ๐Ÿšš inject-modules: Remove deprecated c.t.inject.modules.LoggerModule. PHAB_ID=D853325

    • finatra: Bump version of Jackson to 2.13.2 PHAB_ID=D848592

    • ๐Ÿ—„ inject-thrift-client: Deprecate c.t.inject.thrift.AndThenService, c.t.inject.thrift.modules.AndThenServiceModule, and c.t.inject.thrift.internal.DefaultAndThenServiceImpl. These were plumbing for unreleased experimental record/replay functionality and currently do nothing with no plan for implementation. PHAB_ID=D845841