All Versions
27
Latest Version
Avg Release Cycle
289 days
Latest Release
1428 days ago

Changelog History
Page 3

  • v2.0.0-beta2 Changes

    🚀 Second beta release.

    • REF: Extract object creation from Container into Factory

    • ⚡️ DOC: Complete README rewrite, update docblocks

    • ➕ ADD: The Factory now supports setters from traits.

    • ➕ ADD: LazyValue functionality.

    • ➕ ADD: Auto-resolution of typehinted constructor parameters, and of array typehints with no default value, along with directed auto-resolution.

    • ➕ ADD: ContainerAssertionsTrait so that outehr packages can more easily test their container config classes.

  • v2.0.0-beta1 Changes

    🎉 Initial 2.0 beta release.

    • Container v1 configurations should still work, with one exception: the lazyCall() method has been removed in favor of just lazy(). Replace lazyCall() with lazy() and all should be well.

    • Now compatible with PHP 5.3.

    • 👉 Uses PSR-4 autoloading instead of PSR-0.

    • The package now has a series of Lazy classes to represent different types of lazy behaviors, instead of using anonymous functions.

    • No more cloning of Container objects; that was a holdover from when we had sub-containers very early in v1 and never really used.

    • Removed Forge and placed functionality into Container.

    • Removed the old Config object; $params and $setter are now properties on the Container.

    • No more top-level '*' config element.

    • Renamed Container getServices() to getInstances().

    • Renamed Container getDefs() to getServices().

    • Added ContainerBuilder and new Config object for two-stage configuration.

    • 🔧 Now honors $setter values on interface configuration; that is, you can configure a setter on an interface, and classes implementing that interface will honor that value unless overridden by a class parent.

    🚀 Thanks to HariKT, Damien Patou, Jesse Donat, jvb, and Grummfy for their contributions leading to this release!

  • v1.1.2 Changes

    🚀 Hygeine release.

    • ➕ Add test for #38 -- looks OK
    • 🔀 Merge pull request #32 from harikt/patch-dev
    • ➕ Add a benching script
  • v1.1.1 Changes

    • 👻 [CHG] Config now throws Exception\SetterMethodNotFound when a setter method is configured but does not exist on the class

    • 👻 [CHG] Container::set() now throws Exception\ServiceNotObject when the service being set is not an object.

    • 👻 [CHG] Config now throws Exception\ReflectionFailure when reflection fails.

    • 🏗 [DOC] Typo fixes and clarifications; add PHP 5.5 to Travis build

    • 🚚 [DEL] Remove unused exceptions ContainerExists and ContainerNotFound

  • v1.1.0 Changes

    • [ADD] Container::lazyInclude() and lazyRequire() to lazily include or require files

    • [ADD] Container::lazyCall() to lazily make a call to any callable, with sequential (not named) parameters, just like with call_user_func()

    • [ADD] Container::newFactory() method

    • [NEW] Factory class, to create new class instances using the Forge

    • 🔨 [REF] Refactor Forge::newInstance() extract method mergeParams(), and make allowance for positional override params (these take precedence over named override params)

  • v1.0.1 Changes

    🚀 (This change log includes notes from in release 1.0.0, which failed to specify them.)

    • [ADD] Config now honors setters on trait methods.

    • [ADD] Method Container::lazy() for general-purpose lazy params (i.e., any param can now be lazy, not just services and class instantiations.)

    📚 Special thanks to Yuya Takeyama for working on the documentation, along with Akihito Koriyama and Michal Amerek.

  • v1.0.0 Changes

    • The Forge::newInstance() method now has a third param, $setters, to allow passing of setter injection values.