@@ -26,16 +26,22 @@ final class LoaderFactory
2626 public static function createLoader (ContainerBuilder $ container , array $ paths = []): DelegatingLoader
2727 {
2828 $ locator = new FileLocator ($ paths );
29- $ resolver = new LoaderResolver ([
30- $ xmlLoader = new XmlFileLoader ($ container , $ locator , self ::ENV ),
29+
30+ /** @Deprecated - Remove in a future version of PHP where SF > 7.4 */
31+ $ xmlLoader = class_exists (XmlFileLoader::class)
32+ ? new XmlFileLoader ($ container , $ locator , self ::ENV )
33+ : null ;
34+
35+ $ resolver = new LoaderResolver (array_filter ([
36+ $ xmlLoader ,
3137 $ yamlLoader = new YamlFileLoader ($ container , $ locator , self ::ENV ),
3238 $ iniLoader = new IniFileLoader ($ container , $ locator , self ::ENV ),
3339 new GlobFileLoader ($ container , $ locator , self ::ENV ),
3440 new DirectoryLoader ($ container , $ locator , self ::ENV ),
35- new DistFileLoader ($ xmlLoader ),
41+ $ xmlLoader ? new DistFileLoader ($ xmlLoader ) : null ,
3642 new DistFileLoader ($ yamlLoader ),
3743 new DistFileLoader ($ iniLoader ),
38- ]);
44+ ])) ;
3945
4046 return new DelegatingLoader ($ resolver );
4147 }
0 commit comments