Thanks to visit codestin.com
Credit goes to github.com

Skip to content

[DI] 3.4 BC Break - all my services made private #24465

Closed
@Strate

Description

@Strate
Q A
Bug report? yes
Feature request? no
BC Break report? yes
RFC? no
Symfony version 3.4.x-dev

I tried to upgrade from 3.3 to 3.4.x-dev to test compatibility and found that all of my services made private by default. It happes from Symfony\Component\DependencyInjection\Compiler\ResolveChildDefinitionsPass::process method:

foreach ($container->getDefinitions() as $definition) {
    if ($definition->isPrivate()) {
        $definition->setPublic(false);
        $definition->setPrivate(true);
    }
}

->isPrivate() method returns true for all services by default, because \Symfony\Component\DependencyInjection\Definition::$private set as true by default.

/cc @nicolas-grekas

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions