All Versions
31
Latest Version
Avg Release Cycle
98 days
Latest Release
56 days ago

Changelog History
Page 1

  • v1.18.1 Changes

    August 08, 2022

    ๐Ÿ›  Fixed

    • ๐Ÿ›  Fix a nil panic when nil is passed to OnStart and OnStop lifecycle methods.
  • v1.18.0 Changes

    August 05, 2022

    โž• Added

    • Soft value groups that lets you specify value groups as best-effort dependencies.
    • fx.OnStart and fx.OnStop annotations which lets you annotate dependencies to provide OnStart and OnStop lifecycle hooks.
    • A new fxevent.Replaced event written to fxevent.Logger following an fx.Replace.

    ๐Ÿ›  Fixed

    • โฌ†๏ธ Upgrade Dig dependency to v1.14.1 to address a couple of issues with decorations. Refer to Dig v1.14.1 release notes for more details.
    • fx.WithLogger no longer ignores decorations and replacements of types that it depends on.
    • Don't run lifecycle hooks if the context for them has already expired.
    • App.Start and App.Stop no longer deadlock if the OnStart/OnStop hook exits the current goroutine.
    • fxevent.ConsoleLogger no longer emits an extraneous argument for the Supplied event.

    ๐Ÿ—„ Deprecated

    • fx.Extract in favor of fx.Populate.
  • v1.17.1 Changes

    March 23, 2021

    โž• Added

    • ๐ŸŒฒ Logging for provide/invoke/decorate now includes the associated fx.Module name.
  • v1.17.0 Changes

    February 28, 2021

    โž• Added

    • โž• Add fx.Module which scopes any modifications made to the dependency graph.
    • โž• Add fx.Decorate and fx.Replace that lets you modify a dependency graph with decorators.
    • โž• Add fxevent.Decorated event which gets emitted upon a dependency getting decorated.

    ๐Ÿ”„ Changed

    • fx.Annotate: Validate that fx.In or fx.Out structs are not passed to it.
    • fx.Annotate: Upon failure to Provide, the error contains the actual location of the provided constructor.
  • v1.16.0 Changes

    December 02, 2021

    โž• Added

    • โž• Add the ability to provide a function as multiple interfaces at once using fx.As.

    ๐Ÿ”„ Changed

    • ๐Ÿ‘ fx.Annotate: support variadic functions, and feeding value groups into them.

    ๐Ÿ›  Fixed

    • ๐Ÿ›  Fix an issue where OnStop hooks weren't getting called on SIGINT on Windows.
    • ๐Ÿ›  Fix a data race between app.Done() and shutdown.
  • v1.15.0 Changes

    November 08, 2021

    โž• Added

    • โž• Add fx.Annotate to allow users to provide parameter and result tags easily without having to create fx.In or fx.Out structs.
    • โž• Add fx.As that allows users to annotate a constructor to provide its result type(s) as interface(s) that they implement instead of the types themselves.

    ๐Ÿ›  Fixed

    • ๐Ÿ›  Fix fxevent.Stopped not being logged when App.Stop is called.
    • ๐Ÿ›  Fix fxevent.Started or fxevent.Stopped not being logged when start or stop times out.
  • v1.14.2 Changes

    August 16, 2021

    ๐Ÿ”„ Changed

    • ๐ŸŒฒ For fxevent console implementation: no longer log non-error case for fxevent.Invoke event, while for zap implementation, start logging fx.Invoking case without stack.
  • v1.14.1 Changes

    August 16, 2021

    ๐Ÿ”„ Changed

    • fxevent.Invoked was being logged at Error level even upon successful Invoke. This was changed to log at Info level when Invoke succeeded.
  • v1.14.0 Changes

    August 12, 2021

    โž• Added

    • Introduce the new fx.WithLogger option. Provide a constructor for fxevent.Logger objects with it to customize how Fx logs events.
    • โž• Add new fxevent package that exposes events from Fx in a structured way. Use this to write custom logger implementations for use with the fx.WithLogger option.
    • ๐Ÿ”ฆ Expose and log additional information when lifecycle hooks time out.

    ๐Ÿ”„ Changed

    • ๐Ÿ”Š Fx now emits structured JSON logs by default. These may be parsed and processed by log ingestion systems.
    • โœ… fxtest.Lifecycle now logs to the provided testing.TB instead of stderr.
    • fx.In and fx.Out are now type aliases instead of structs.
  • v1.13.1 Changes

    August 19, 2020

    ๐Ÿ›  Fixed

    • ๐Ÿ›  Fix minimum version constraint for dig. fx.ValidateGraph requires at least dig 1.10.