All Versions
Latest Version
Avg Release Cycle
122 days
Latest Release
1246 days ago

Changelog History
Page 1

  • v3.0.6 Changes

    November 25, 2020
    • โž• added PHP 8 attribute Inject
    • cooperation with union types
    • ๐Ÿ‘ป Resolver::completeException() appends entity to exception message when type is not known
    • DependencyChecker: checks types of properties
    • ๐Ÿ›  DependencyChecker: fixed compatibility with PHP 8 #247
    • DIExtension: detects Tracy by presence of service @tracy\Bar #245
    • โšก๏ธ InjectExtension: updated exception messages

    For the details you can have a look at the diff.

  • v3.0.5 Changes

    August 13, 2020
    • โž• added new internal functions bool(), int(), float(), string()
    • โž• added Helpers::escape()
    • ๐Ÿ›  fixed PHP 8.0 compatibility
    • ๐Ÿ‘Œ improved exception messages

    For the details you can have a look at the diff.

  • v3.0.4 Changes

    May 15, 2020
    • ๐Ÿ›  Resolver: fixed self-dependency #240
    • InjectExtension: chooses a more specific type #234
    • ๐Ÿ‘ป SearchExtension: Exception when class is not autoloaded.
    • DecoratorExtension: resolves definitions before uses its findByType()
    • Container: added getByName() as alias for getService()
    • ๐Ÿšš Compiler: moved Search extension before Decorator (#197)
    • ๐Ÿ‘ป Resolver: better exception message (#233)
    • InjectExtension: maintains natural order of inject methods (BC break)

    For the details you can have a look at the diff.

  • v3.0.3 Changes

    January 20, 2020
    • CompilerExtension: added $initialization as replacement for modifying initialize() method
    • class aliases are loaded on demand #226
    • Statement: can be used as dynamic parameter #228
    • parameters: dynamic parameters are resolved
    • parameters: statements are replaced with null in Container
    • %parameters% resolves to all parameters
    • โช Revert "parameters can contain statements #221"
    • ContainerPanel: uses capturing

    For the details you can have a look at the diff.

  • v3.0.2 Changes

    December 27, 2019
    • InjectExtension: accepts native type
    • parameters can contain statements #221
    • InjectExtension: scans resolved class #218
    • ๐Ÿšš SearchExtension: removes conflicting services before it starts to add them
    • ๐Ÿ›  Resolver.autowireArguments() fixed counting optional args
    • ๐Ÿ”จ Resolver::autowireArguments() refactoring, added autowireArgument(), Resolver|Container replaced with callback
    • ๐Ÿ‘ป ExtensionsExtension: better exception message #219

    For the details you can have a look at the diff.

  • v3.0.1 Changes

    August 07, 2019
    • SearchExtension: ability to add factory definitions from interfaces with method create() (#200)
    • โช Revert "Container: deprecated support for dynamically added services (BC break)" #203
    • ๐Ÿšš ServiceDefinition: removed unnecessary $service variable #206
    • โœ… Autowiring: bug fix & tests
    • ExtensionsExtension: added extension type checking (#209)
    • ๐Ÿ›  fixed bugs reported by PhpStan (#212)(#211)(#210)(#208)(#207)(#213)(#214)
    • ๐Ÿ›  PHP 7.4 compatibility fixes

    For the details you can have a look at the diff.

  • v3.0.0 Changes

    April 03, 2019

    ๐Ÿ”‹ Features

    • requires PHP 7.1
    • ๐Ÿ‘‰ uses declare(strict_types=1)
    • ๐Ÿ‘‰ uses PHP 7.1 scalar and return type hints
    • autowiring via Service[] (#178)
    • โž• added collections via tagged() and typed()
    • โž• added SearchExtension
    • โž• added Schema & CompilerExtension::getConfigSchema() for automatic configuration validation with PHP 7.4 support #191
    • โž• added full validation of dynamic parameters
    • ๐Ÿ”€ configs are normalized before merge
    • โž• added AccessorDefinition, FactoryDefinition, LocatorDefinition & ImportedDefinition
    • Container::addService() accepts factory closures
    • ๐Ÿ“‡ Minification of metadata: added option 'di โ€บ export โ€บ types', tags and parameters
    • โž• added Reference, object representing reference to @service of @\Class
    • ๐Ÿ‘ better exception messages
    • Helpers::expand() expands %params% in keys [Closes nette/nette#766]
    • ๐Ÿ‘ Helpers::expand() supports %dynamic.item% for dynamic parameters
    • Compiler, CompilerExtension: improved Loader extendability (#62)
    • ServiceDefinition::setArgument() added [Closes #171][Closes #172]
    • ๐Ÿ–จ Processor: names of anonymous services are just numbers
    • ContainerBuilder::addDefinition(null) adds anonymous service
    • โž• added PhpStorm metadata for autocompletion
    • โž• added CompilerExtension::loadDefinitionsFromConfig()
    • ๐Ÿ‘ Loader: added support for %param% in 'include' section [Closes #170][Closes phpstan/phpstan#2020]

    ๐Ÿ”„ Changes

    • โœ‚ removed deprecated support for inheritance 'child < parent' (BC break)
    • some classes & members marked as final (BC break)
    • Compiler: container has declare(strict_types=1)
    • โœ‚ removed unused PhpReflection
    • ๐Ÿ–จ Processor::filterArguments() translates @service to object Reference
    • ๐Ÿšš Nette\DI\Helpers::filterArguments() moved to Nette\DI\Config\Processor
    • Config\Processor: options 'class' & 'type', 'dynamic' & 'imported' are aliases
    • ๐Ÿšš Compiler::loadDefinitions() is not static and removed first parameter (BC break)
    • ๐Ÿ—„ Compiler::loadDefinition() is deprecated (BC break)
    • ๐Ÿšš Compiler: processing of config files moved to new class Nette\DI\Config\Processor
    • ServiceDefinition divided into Definition & ServiceDefinition
    • ContainerBuilder divided into Autowiring & Resolver
    • ๐Ÿšš ServiceDefinition & Statement moved to Nette\DI\Definitions namespace
    • ๐Ÿ“‡ renamed Nette\DI\Config\IAdapter -> Adapter
    • ๐Ÿ—„ NeonAdapter: added deprecation notice for operator ?
    • โœ‚ removed IniAdapter (BC break) (#177)
    • ServiceBuilder::setType() & getType() as a replacements for setClass() and getClass()
    • ๐Ÿ”ง Compiler: added configuration option 'type' as replacement for 'class'
    • ๐Ÿ—„ ServiceDefinition::setClass() parameter $args is deprecated (BC break) (#146)
    • ๐Ÿ—„ Compiler::loadDefinitions() renamed to loadDefinitionsFromConfig(), better deprecation messages
    • InjectExtension: tag 'inject' changed to 'nette.inject'
    • ๐Ÿ—„ DIExtension: tag 'run' is deprecated (BC break)
    • ๐Ÿ—„ Container: deprecated support for dynamically added services (BC break)
    • ๐Ÿšš Container: removed support for statically added createService* methods (BC break)
    • Container::$meta divided to $types, $aliases, $tags & $wiring (BC break)
    • Helpers::EXTENDS_KEY & OVERWRITE replaced with PREVENT_MERGING (BC break)
  • v2.4.17 Changes

    November 25, 2020

    compatible with PHP 8.0

  • v2.4.16 Changes

    November 19, 2019
    • ๐Ÿ‘Œ supports PHP 7.4
    • ๐Ÿ›  Helpers::expand() fixed expansion of dynamic parameters

    For the details you can have a look at the diff.

  • v2.4.15 Changes

    January 30, 2019
    • compatibility with nette/php-generator 3.x #182
    • โšก๏ธ updated to nette/utils 2.5
    • ContainerBuilder: improved error messages
    • Container: removed leading __ from anonymous method names
    • Compiler: names of anonymous services are just numbers
    • Compiler::loadDefinitions() sorts definitions only if needed
    • Compiler: added option 'imported' as alias for 'dynamic'
    • ๐Ÿ–จ CompilerExtension::validateConfig() prints 'section โ€บ value' instead of section.value in exception message
    • โž• added PhpStorm metadata for autocompletion
    • ๐Ÿ›  PhpGenerator: fixed type of generated factories in Container $meta

    For the details you can have a look at the diff.