Skip to content

v1.9.1

Choose a tag to compare

@coisa coisa released this 16 Oct 21:19
9559b1e

Changed

  • Require FastForward Config 1.6 or newer within 1.x, using its native configuration storage and removing the transitive dflydev/dot-access-data dependency.
  • MethodFactory directly constructs a class-name target only when has() reports it absent. Existing target construction and execution failures, including nested not-found errors, now propagate instead of silently using an unconfigured replacement.

Fixed

  • Detect circular provider factory, alias and extension resolution with an actionable path per execution context, preserving ordered fallback, shared caches and retry cleanup after failures. Keep concurrent Fiber paths independent from each other and from the main context.
  • Resolve MethodFactory service-ID targets before reflecting their instance methods, preserving configured constructor dependencies and method visibility checks.
  • Correct typed callable factory examples, Slim 4 application creation and JSON responses, and Laravel 12 factory binding adapters. Explain framework requirements, binding lifetimes and provider extension boundaries.
  • Reject incompatible dependency combinations by requiring PSR Container 1.1 or 2.x and a compatible FastForward Config version, with production consumer checks for the minimum and current versions.
  • Preserve numeric-looking service identifiers when aggregating provider factories, retaining later-provider precedence and matching factory/extension keys.
  • Apply concrete-class extensions to distinct services independently of lookup order, reusing each object's completed extension result for aliases and wrapper-backed lookups, including replacement objects, scalars and null.

Delivered through PR #29, PR #30, PR #31, PR #32, PR #33 and PR #34.