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(10mo ago)01MITPHP

Since Aug 31Pushed 10mo 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 today

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

26

—

LowBetter than 41% of packages

Maintenance54

Moderate activity, may be stable

Popularity1

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity36

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

306d 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

[symfony/runtime

Enables decoupling PHP applications from global state

74798.8M1.0k](/packages/symfony-runtime)[drupal/core-composer-scaffold

A flexible Composer project scaffold builder.

5344.1M564](/packages/drupal-core-composer-scaffold)[drupal/core-project-message

Adds a message after Composer installation.

2124.7M203](/packages/drupal-core-project-message)[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.

3014.6M26](/packages/vaimo-composer-patches)[sandersander/composer-link

Adds ability to link local packages for development with composer

98457.9k](/packages/sandersander-composer-link)[phpro/grumphp-shim

GrumPHP Phar distribution

294.7M340](/packages/phpro-grumphp-shim)

PHPackages © 2026

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