PHPackages                             netresearch/module-compatibility-m2 - 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. netresearch/module-compatibility-m2

AbandonedArchivedMagento2-module[Utility &amp; Helpers](/categories/utility)

netresearch/module-compatibility-m2
===================================

Magento2 Extension for enabling extensions to support multiple Magento2 versions at once

3.0.0(7y ago)1174.0kPHPPHP ~7.1.3|^7.2.0

Since Mar 15Pushed 7y ago9 watchersCompare

[ Source](https://github.com/netresearch/module-compatibility-m2)[ Packagist](https://packagist.org/packages/netresearch/module-compatibility-m2)[ RSS](/packages/netresearch-module-compatibility-m2/feed)WikiDiscussions master Synced 3w ago

READMEChangelog (3)Dependencies (1)Versions (4)Used By (0)

Netresearch Compatibility Extension
===================================

[](#netresearch-compatibility-extension)

The target of this 'extension' is to provide forward/backward compatibility ports of functionality within Magento2. This is aimed at extension developers to allow them to only have to maintain one development branch of their extension, that can be compatible with all Magento versions.

Example
-------

[](#example)

Magento 2.3 introduced the CsrfAwareActionInterface which allows controllers to receive POST requests from outside of the shop (e.g. for postsale activities of payment service providers). To retain functionality the extension provider would have to maintain two development branches of their extension, one for Magento 2.3 with the interface, and one without.

To avoid this, this extension provides an abstract controller that can be extended by controllers within third party extensions that need this functionality (implementing the CsrfAwareInterface). They will have to implement some abstract methods, however they can use one development branch for their extension.

How to use
----------

[](#how-to-use)

This extension has multiple versions:

- 1.\* - supporting Magento 2.1.\*
- 2.\* - supporting Magento 2.2.\*
- 3.\* - supporting Magento 2.3.\*
- ...

To use the features of this extension add an requirement in your extensions composer.json:

```
{
  "require": {
    "netresearch/module-compatibility-m2": "*"
  }
}
```

Yes we recommend `*`, if you don't care or e.g. `>=2.0.0` if you want to support Magento 2.2.\*. This extension will itself require the affected Magento components (e.g. `magento/framework`) in the related versions, which will only allow a specific version of this extension on the merchants installation through composer.

Supported Forward/Backward compatibilities
------------------------------------------

[](#supported-forwardbackward-compatibilities)

### CsrfAwareActionInterface (`Magento\Framework\App\CsrfAwareActionInterface`)

[](#csrfawareactioninterface-magentoframeworkappcsrfawareactioninterface)

*Compatibility breaking version:* Magento 2.3.0

To have a backward compatible controller for Magento 2.3 that can accept external POST requests, just extend {{Netresearch\\Compatibility\\Controller\\CsrfAware\\Action}} and implement the abstract methods. For Magento 2.2 and 2.1 that will likely result in dead code (unless you refer to those functions in the rest of you Controller), but you don't have to worry about managing the Interface implementation yourself.

License
-------

[](#license)

Open Software License v. 3.0 (OSL-3.0)

Copyright
---------

[](#copyright)

Netresearch DTT GmbH ([www.netresearch.de](http://www.netresearch.de))

###  Health Score

32

—

LowBetter than 69% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity26

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity57

Maturing project, gaining track record

 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

Every ~3 days

Total

3

Last Release

2653d ago

Major Versions

1.0.0 → 2.0.02019-03-15

2.0.0 → 3.0.02019-03-21

PHP version history (3 changes)1.0.0PHP ~5.6.5|7.0.2|7.0.4|~7.0.6|^7.1.0

2.0.0PHP ~7.0.13|^7.1.0

3.0.0PHP ~7.1.3|^7.2.0

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/151247?v=4)[Netresearch DTT GmbH](/maintainers/netresearch)[@netresearch](https://github.com/netresearch)

![](https://www.gravatar.com/avatar/efd68399f95aa07110668d9af1a47a8030d8df5ec5af4b28e821d442d787583a?d=identicon)[team-mage](/maintainers/team-mage)

---

Top Contributors

[![powli](https://avatars.githubusercontent.com/u/4511053?v=4)](https://github.com/powli "powli (5 commits)")

### Embed Badge

![Health badge](/badges/netresearch-module-compatibility-m2/health.svg)

```
[![Health](https://phpackages.com/badges/netresearch-module-compatibility-m2/health.svg)](https://phpackages.com/packages/netresearch-module-compatibility-m2)
```

###  Alternatives

[elgentos/regenerate-catalog-urls

Regenerate Catalog URL Rewrites (products, categories, cms pages)

2842.6M](/packages/elgentos-regenerate-catalog-urls)[run-as-root/magento2-prometheus-exporter

Magento2 Prometheus Exporter

68353.9k](/packages/run-as-root-magento2-prometheus-exporter)[myparcelnl/magento

A Magento 2 module that creates MyParcel labels

1859.0k](/packages/myparcelnl-magento)[loki/magento2-components

Core module for defining Alpine.js components with advanced AJAX features

1010.0k22](/packages/loki-magento2-components)[magepal/magento2-form-field-manager

Customer and Address Form Fields Manager for Magento2

273.9k](/packages/magepal-magento2-form-field-manager)[mage-os/module-llm-txt

AI-powered LLMs.txt generation for Magento 2 / Mage-OS stores. Help AI systems understand your store with OpenAI-generated content.

223.3k](/packages/mage-os-module-llm-txt)

PHPackages © 2026

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