PHPackages                             openeuropa/composer-dependent-patches - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. openeuropa/composer-dependent-patches

ActiveComposer-plugin[Utility &amp; Helpers](/categories/utility)

openeuropa/composer-dependent-patches
=====================================

A Composer plugin that extends cweagans/composer-patches to support dependent patches functionality

0.2.0(6mo ago)43.2k↓50%[1 issues](https://github.com/openeuropa/composer-dependent-patches/issues)EUPL-1.2PHPCI passing

Since Sep 24Pushed 6mo agoCompare

[ Source](https://github.com/openeuropa/composer-dependent-patches)[ Packagist](https://packagist.org/packages/openeuropa/composer-dependent-patches)[ RSS](/packages/openeuropa-composer-dependent-patches/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (2)Dependencies (7)Versions (3)Used By (0)

Composer Dependent Patches
==========================

[](#composer-dependent-patches)

A Composer plugin that extends [cweagans/composer-patches](https://github.com/cweagans/composer-patches) version 2 to support version-constrained patches. This plugin allows you to define patches that are only applied when specific version constraints are met, providing fine-grained control over when patches are applied based on package versions.

Features
--------

[](#features)

- **Version-constrained patches**: Apply patches only when package versions match specific constraints
- **Automatic version detection**: Patches are resolved and applied based on installed package versions
- **Lock file management**: Maintains a `dependent-patches.lock.json` file for reproducible builds
- **Separate patch management**: Works alongside regular patches without conflicts
- **Custom commands**: Dedicated commands for managing dependent patches

Installation
------------

[](#installation)

```
composer require openeuropa/composer-dependent-patches
```

Usage
-----

[](#usage)

### Defining Dependent Patches

[](#defining-dependent-patches)

Version-constrained patches must be defined under the `extra.dependent-patches` key in your `composer.json`. Use the expanded format with version constraints in the `extra` section:

```
{
  "extra": {
    "dependent-patches": {
      "vendor/package": [
        {
          "description": "Fix for legacy versions",
          "url": "/path/to/legacy-fix.patch",
          "extra": {
            "version": "=2.0
