diff -ru src/PackageJsonSynchronizer.php src/PackageJsonSynchronizer.php --- src/PackageJsonSynchronizer.php 2025-02-02 13:08:09.859406498 +0000 +++ src/PackageJsonSynchronizer.php 2025-02-02 13:08:11.094408792 +0000 @@ -104,7 +104,7 @@ foreach (['dependencies' => $jsDependencies, 'devDependencies' => $jsDevDependencies] as $key => $packages) { foreach ($packages as $name => $version) { - if ('@' !== $name[0] || 0 !== strpos($version, 'file:'.$this->vendorDir.'/') || false === strpos($version, '/assets')) { + if ('@' !== $name[0] || !str_starts_with($version, 'file:'.$this->vendorDir.'/') || !str_contains($version, '/assets')) { continue; } if (file_exists($this->rootDir.'/'.substr($version, 5).'/package.json')) { @@ -163,12 +163,12 @@ } // Case "@mybundle/script.js": "entrypoint:%PACKAGE%/script.js" | "@mybundle/script.js": {"version": "entrypoint:%PACKAGE%/script.js"} - if (0 === strpos($constraint, 'entrypoint:')) { + if (str_starts_with($constraint, 'entrypoint:')) { $entrypoint = true; $constraint = str_replace('entrypoint:', 'path:', $constraint); } - if (0 === strpos($constraint, 'path:')) { + if (str_starts_with($constraint, 'path:')) { $path = substr($constraint, 5); $path = str_replace('%PACKAGE%', \dirname($packageJson->getPath()), $path); @@ -276,7 +276,7 @@ continue; } - $this->io->writeError(sprintf('Updating package %s from %s to %s.', $name, $version, $versionConstraint)); + $this->io->writeError(\sprintf('Updating package %s from %s to %s.', $name, $version, $versionConstraint)); } if (isset($importMapEntry['path'])) { @@ -309,7 +309,7 @@ continue; } - throw new \InvalidArgumentException(sprintf('Invalid importmap entry: "%s".', var_export($importMapEntry, true))); + throw new \InvalidArgumentException(\sprintf('Invalid importmap entry: "%s".', var_export($importMapEntry, true))); } } diff -ru tests/PackageJsonSynchronizerTest.php tests/PackageJsonSynchronizerTest.php --- tests/PackageJsonSynchronizerTest.php 2025-02-02 13:08:10.269407259 +0000 +++ tests/PackageJsonSynchronizerTest.php 2025-02-02 13:08:11.496409540 +0000 @@ -401,7 +401,7 @@ 'version' => '1.8.0', ], ]; - file_put_contents($this->tempDir.'/importmap.php', sprintf('tempDir.'/importmap.php', \sprintf('tempDir.'/vendor/symfony/new-package/assets/dist/loader.js'; $entrypointPath = $this->tempDir.'/vendor/symfony/new-package/assets/entry.js'; @@ -434,9 +434,9 @@ '@symfony/new-package/entry2.js' => [ 'path' => './vendor/symfony/new-package/assets/entry2.js', 'entrypoint' => true, - ] + ], ]; - file_put_contents($this->tempDir.'/importmap.php', sprintf('tempDir.'/importmap.php', \sprintf('tempDir.'/vendor/symfony/new-package/assets/dist/loader.js'; $entrypointPath = $this->tempDir.'/vendor/symfony/new-package/assets/entry.js';