PHPackages                             wiistriker/composer-override-reqs-plugin - 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. wiistriker/composer-override-reqs-plugin

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

wiistriker/composer-override-reqs-plugin
========================================

Plugin to override composer package requirements

1.0.0(8mo ago)01MITPHP

Since Aug 31Pushed 8mo agoCompare

[ Source](https://github.com/wiistriker/composer-override-reqs-plugin)[ Packagist](https://packagist.org/packages/wiistriker/composer-override-reqs-plugin)[ RSS](/packages/wiistriker-composer-override-reqs-plugin/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (1)Versions (2)Used By (0)

Composer Override Reqs Plugin
=============================

[](#composer-override-reqs-plugin)

[![Latest Stable Version](https://camo.githubusercontent.com/b63f33bd5e2ae39f3b6f8c5d1d7a208ce353778113b07a51cd5d21e5be8b8ee1/68747470733a2f2f706f7365722e707567782e6f72672f776969737472696b65722f636f6d706f7365722d6f766572726964652d726571732d706c7567696e2f76)](//packagist.org/packages/wiistriker/composer-override-reqs-plugin)[![Latest Unstable Version](https://camo.githubusercontent.com/e360a583513c7f7870e2b4955bc55dddd2af360fd319657aad2edf110ff2beac/687474703a2f2f706f7365722e707567782e6f72672f776969737472696b65722f636f6d706f7365722d6f766572726964652d726571732d706c7567696e2f762f756e737461626c65)](https://packagist.org/packages/wiistriker/composer-override-reqs-plugin)[![Total Downloads](https://camo.githubusercontent.com/e27827ce0131db3b01abc51d551c07473795be3c7b4f88d95c6d3d61a9403f86/68747470733a2f2f706f7365722e707567782e6f72672f776969737472696b65722f636f6d706f7365722d6f766572726964652d726571732d706c7567696e2f646f776e6c6f616473)](//packagist.org/packages/wiistriker/composer-override-reqs-plugin)[![License](https://camo.githubusercontent.com/d61f75a7d4690a5136fcf901f4fa408de0ee66f270032801bab3821dc4dff142/687474703a2f2f706f7365722e707567782e6f72672f776969737472696b65722f636f6d706f7365722d6f766572726964652d726571732d706c7567696e2f6c6963656e7365)](https://packagist.org/packages/wiistriker/composer-override-reqs-plugin)

[Русская версия](#%D1%80%D1%83%D1%81%D1%81%D0%BA%D0%B0%D1%8F-%D0%B2%D0%B5%D1%80%D1%81%D0%B8%D1%8F) | [English version](#english-version)

---

Русская версия
--------------

[](#русская-версия)

### Для чего этот плагин?

[](#для-чего-этот-плагин)

Иногда при работе с Composer возникает проблема: некоторые пакеты имеют слишком жёсткие ограничения по версиям зависимостей.
Например, пакет [`dama/doctrine-test-bundle:6.7.5`](https://packagist.org/packages/dama/doctrine-test-bundle#v6.7.5) требует:

```
"symfony/cache": "^4.4 || ^5.3 || ^6.0",
"symfony/framework-bundle": "^4.4 || ^5.3 || ^6.0"
```

Это означает, что пакет можно установить только вместе с Symfony `4.4`, `5.3` или `6.0`.
Однако на практике часто бывает так, что пакет вполне работает и с промежуточными версиями, например Symfony `5.0–5.2`.

### Как можно обойти ограничение?

[](#как-можно-обойти-ограничение)

Существуют стандартные варианты, но у них есть недостатки:

- **Использовать `as` в require**
    Например:

    ```
    "symfony/cache": "5.0.11 as 5.3.14"
    ```

    Минус: нужно указывать точные версии вручную.
- **Форкнуть репозиторий**
    Внести правки и подключить его через [repositories](https://getcomposer.org/doc/05-repositories.md).
    Минус: придётся поддерживать собственный форк.

Если по каким-то причинам эти методы вам (как и мне), не подошли, то можно попробовать данный плагин. Минус у данного плагина в том, что он использует Reflection, поэтому не гарантируется работа при выходе новых версий composer.

---

### Установка и настройка

[](#установка-и-настройка)

Установите плагин:

```
composer require --dev wiistriker/composer-override-reqs-plugin
```

Добавьте в `composer.json` секцию `extra.requirements-override.override`:

```
{
    "require": {
        "symfony/cache": "5.0.*",
        "dama/doctrine-test-bundle": "*"
    },
    "extra": {
        "requirements-override": {
            "override": {
                "dama/doctrine-test-bundle": {
                    "6.7.5": {
                        "symfony/cache": "^4.4 || ^5.0 || ^6.0",
                        "symfony/framework-bundle": "^4.4 || ^5.0 || ^6.0"
                    }
                }
            }
        }
    }
}
```

После этого запустите:

```
composer update
```

Теперь `dama/doctrine-test-bundle` установится и на Symfony `5.0`, так как зависимости были переопределены.

---

English version
---------------

[](#english-version)

### What is this plugin for?

[](#what-is-this-plugin-for)

Sometimes Composer packages come with overly strict dependency constraints.
For example, [`dama/doctrine-test-bundle:6.7.5`](https://packagist.org/packages/dama/doctrine-test-bundle#v6.7.5) requires:

```
"symfony/cache": "^4.4 || ^5.3 || ^6.0"
```

This means the bundle can only be installed with Symfony `4.4`, `5.3`, or `6.0`.
But in reality, it would also work just fine with Symfony `5.0–5.2`.

### How can we bypass this?

[](#how-can-we-bypass-this)

Typical workarounds exist, but each has drawbacks:

- **Use `as` in require**
    Example:

    ```
    "symfony/cache": "5.0.11 as 5.3.14"
    ```

    Drawback: you must specify exact versions manually.
- **Fork the repository**
    Modify the dependency constraints and include it via [repositories](https://getcomposer.org/doc/05-repositories.md).
    Drawback: you need to maintain your own fork.

If, for some reason, these methods (just like for me) didn’t work for you, you can try this plugin instead.
The downside of this plugin is that it relies on Reflection, so compatibility with future Composer releases is not guaranteed.

---

### Installation &amp; Usage

[](#installation--usage)

Install the plugin:

```
composer require --dev wiistriker/composer-override-reqs-plugin
```

Then add the `extra.requirements-override.override` section in your `composer.json`:

```
{
    "require": {
        "symfony/cache": "5.0.*",
        "dama/doctrine-test-bundle": "*"
    },
    "extra": {
        "requirements-override": {
            "override": {
                "dama/doctrine-test-bundle": {
                    "6.7.5": {
                        "symfony/cache": "^4.4 || ^5.0 || ^6.0",
                        "symfony/framework-bundle": "^4.4 || ^5.0 || ^6.0"
                    }
                }
            }
        }
    }
}
```

Finally, run:

```
composer update
```

Now `dama/doctrine-test-bundle` will install even with Symfony `5.0`, since the dependency constraints were overridden.

###  Health Score

27

—

LowBetter than 49% of packages

Maintenance60

Regular maintenance activity

Popularity1

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity35

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

254d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/2c85524bc58444ab554ec47663bd1716ef1db841d7e245a4569f67c7da8e2d0c?d=identicon)[wiistriker](/maintainers/wiistriker)

---

Top Contributors

[![wiistriker](https://avatars.githubusercontent.com/u/967817?v=4)](https://github.com/wiistriker "wiistriker (3 commits)")

### Embed Badge

![Health badge](/badges/wiistriker-composer-override-reqs-plugin/health.svg)

```
[![Health](https://phpackages.com/badges/wiistriker-composer-override-reqs-plugin/health.svg)](https://phpackages.com/packages/wiistriker-composer-override-reqs-plugin)
```

###  Alternatives

[vaimo/composer-patches

Applies a patch from a local or remote file to any package that is part of a given composer project. Patches can be defined both on project and on package level. Optional support for patch versioning, sequencing, custom patch applier configuration and patch command for testing/troubleshooting added patches.

2994.3M16](/packages/vaimo-composer-patches)[mglaman/composer-drupal-lenient

1317.4M15](/packages/mglaman-composer-drupal-lenient)[drupal/core-composer-scaffold

A flexible Composer project scaffold builder.

5341.9M446](/packages/drupal-core-composer-scaffold)[drupal/core-project-message

Adds a message after Composer installation.

2122.6M172](/packages/drupal-core-project-message)[olvlvl/composer-attribute-collector

A convenient and near zero-cost way to retrieve targets of PHP 8 attributes

184108.8k8](/packages/olvlvl-composer-attribute-collector)[lullabot/drainpipe

An automated build tool to allow projects to have a set standardized operations scripts.

41716.4k2](/packages/lullabot-drainpipe)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
