Search code examples
phplaravelcomposer-phpuninstallationpackage-managers

How can I remove a package from Laravel using PHP Composer?


What is the correct way to remove a package from Laravel using PHP Composer?

So far I've tried:

  1. Remove declaration from file composer.json (in the "require" section)
  2. Remove any class aliases from file app.php
  3. Remove any references to the package from my code :-)
  4. Run composer update
  5. Run composer dump-autoload

None of these options are working! What am I missing?


Solution

  • Composer 1.x and 2.x

    Running the following command will remove the package from vendor (or wherever you install packages), composer.json and composer.lock. Change vendor/package appropriately.

    composer remove vendor/package
    

    Obviously you'll need to remove references to that package within your app.

    I'm currently running the following version of Composer:

    Composer version 1.0-dev (7b13507dd4d3b93578af7d83fbf8be0ca686f4b5) 2014-12-11 21:52:29
    

    Documentation

    https://getcomposer.org/doc/03-cli.md#remove-rm

    Updates

    • 27/12/2023 - Fixed URL to remove-rm documentation
    • 26/10/2020 - Updated answer to assert command works for v1.x and v2.x of Composer