r-rumenov-ft/composer-workspaces-plugin-fork

Workspaces plugin for Composer - FT fork that updates the package to php v8

2.0.2-beta2 2022-06-28 10:50 UTC

This package is auto-updated.

Last update: 2024-04-28 15:02:34 UTC


README

This composer plugin enables you to work with a monorepo containing multiple composer packages in a way similar to Yarn Workspaces.

THIS IS A FORK OF THE ORIGINAL REPO, UPDATED TO SUPPORT PHP V8, WITH NO OTHER CHANGES.

Requirements

  • PHP 7.1 or above
  • Composer 2

Composer v1 support

Starting from version 2.x of this plugin, composer v1 is no longer supported. If you do need composer 1 support, please use the 1.x version of the plugin. Please note that version 1 will not receive any updates except for security fixes.

Installation

Add r-rumenov-ft/composer-workspaces-plugin to your project:

composer require --dev r-rumenov-ft/composer-workspaces-plugin=^2.0.1-beta3

Usage

The workspaces:init command will prompt you to configure your workspace paths:

composer workspaces:init

The plugin scans all configured paths for composer packages. To bootstrap all found workspace packages, run workspaces:bootstrap. You can rerun this command any time you add another workspace package.

composer workspaces:bootstrap

After bootstrapping your packages, you can run composer commands in the context of a specific package with the workspace command.

For example, if you have two workspace packages, acme/foo and acme/bar, and you want to add acme/bar as a dependency of acme/foo:

composer workspace acme/foo require acme/bar

Use workspaces:list to list all available workspace packages:

composer workspaces:list

Todo

  • Add tests.
  • Add feature to centralize dependency version management.