All Versions
Latest Version
Avg Release Cycle
289 days
Latest Release
1429 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.