@@ -310,6 +310,10 @@ public function onCommand(CommandEvent $event): void
310310 if ($ event ->getInput ()->hasOption ('no-suggest ' )) {
311311 $ event ->getInput ()->setOption ('no-suggest ' , true );
312312 }
313+
314+ if ($ event ->getInput ()->hasOption ('remove-vcs ' )) {
315+ $ event ->getInput ()->setOption ('remove-vcs ' , true );
316+ }
313317 }
314318
315319 /**
@@ -621,11 +625,11 @@ private function updateComposerLock(): void
621625 $ lockFile ,
622626 $ this ->composer ->getRepositoryManager (),
623627 $ this ->composer ->getInstallationManager (),
624- $ composerJson
628+ ( string ) $ composerJson
625629 );
626630
627631 $ lockData = $ locker ->getLockData ();
628- $ lockData ['_content-hash ' ] = Locker::getContentHash ($ composerJson );
632+ $ lockData ['_content-hash ' ] = Locker::getContentHash (( string ) $ composerJson );
629633
630634 $ lockFile ->write ($ lockData );
631635 }
@@ -786,14 +790,16 @@ private function doUninstall(PackageContract $package, PackageConfigurator $pack
786790 */
787791 private function getErrorMessage (): ?string
788792 {
789- $ errorMessage = null ;
790-
791793 if (! \extension_loaded ('openssl ' )) {
792- $ errorMessage = 'You must enable the openssl extension in your "php.ini" file. ' ;
793- } elseif (\version_compare ('1.6 ' , Composer::VERSION , '> ' )) {
794- $ errorMessage = \sprintf ('Your version "%s" of Composer is too old; Please upgrade. ' , Composer::VERSION );
794+ return 'You must enable the openssl extension in your "php.ini" file. ' ;
795+ }
796+
797+ \preg_match_all ('/\d+.\d+.\d+/m ' , Composer::VERSION , $ matches , \PREG_SET_ORDER , 0 );
798+
799+ if ($ matches !== null && \version_compare ('1.6.0 ' , $ matches [0 ], '<= ' )) {
800+ return \sprintf ('Your version "%s" of Composer is too old; Please upgrade. ' , Composer::VERSION );
795801 }
796802
797- return $ errorMessage ;
803+ return null ;
798804 }
799805}
0 commit comments