vconnect/integrity-checker

Static analysis tool for Magento 2 module packages: checks composer.json/module.xml dependency integrity and generates module disassembling roadmaps.

Maintainers

Package info

github.com/vConnect-dk/dependency-checker

pkg:composer/vconnect/integrity-checker

Transparency log

Statistics

Installs: 1

Dependents: 0

Suggesters: 0

Stars: 1

Open Issues: 1

2.13.1 2026-07-27 15:04 UTC

README

Package allows to run static analysis on Magento 2 Module Packages to provide an integrity check of package.

Supported tools:

  • Composer.json package dependencies checker - check *.php, *.phtml, di.xml, system.xml, extension_attributes.xml on a subject if other packages used inside and check if corresponding module/package is declared as required in composer.json.
  • Module.xml dependencies checker - analyse if packages' etc/module.xml file contains in 'sequence' section all magneto 2 modules which classes are used in *.php, *.phtml, di.xml, system.xml, extension_attributes.xml files of the package.

Standalone Installation

  1. Install project from Vconnect satis
composer create-project vconnect/integrity-checker --repository-url="{\"type\": \"composer\", \"url\": \"https://composer.vconnect.systems\"}" integrity-checker

Package Installation

  1. Add Vconnect repository to list of available repositories for your project composer.json
composer config repositories.integrity-checker '{"type": "composer", "url": "https://composer.vconnect.systems"}'
  1. Install package via composer
composer require --dev vconnect/integrity-checker

Usage

Dependencies Checker

bin/dependencies {magento root} {folder} {folder2} {folder3}

{magento root} - path to Magento 2 project root directory. Tool require composer.lock to be defined. All packages inside {folder}'s will be recognized by composer.json file. {folder} - expected to be relative inside the magento root folder. Dependencies check will be run for composer.json and etc/module.xml together.

Disassembling Roadmap

bin/disassembling {magento root} {whitelist.txt} {explain} {no-cache}

{magento root} - path to Magento 2 project root directory. {whitelist.txt} - path to file with whitelisted modules or list of modules separated by comma. {explain} - change command strategy to provide output in the context of analysed module. Provided output either contains replace instruction or reasons why extension can not be removed. {no-cache} - flag to disable collected dependencies cache. By default, 5m cache is used.

Recommended minimum whitelist to have running Magento 2 store (with functional checkout and order placement):

colinmollenhour/cache-backend-file
colinmollenhour/cache-backend-redis
phpseclib/mcrypt_compat
magento/module-elasticsearch-7
magento/theme-frontend-luma
magento/theme-adminhtml-backend
magento/module-mysql-mq
magento/module-offline-payments
magento/module-offline-shipping

Also, the whitelist supports wildcards:

vconnect/*
magento/*-graphql

Examples of command usage Project Analysis:

php src/vendor/bin/disassembling . --whitelist=colinmollenhour/cache-backend-file,colinmollenhour/cache-backend-redis,phpseclib/mcrypt_compat,magento/module-elasticsearch-7,magento/theme-frontend-luma,magento/theme-adminhtml-backend,magento/module-mysql-mq,magento/module-offline-payments,magento/module-offline-shipping

Project Analysis using a whitelist file:

php src/vendor/bin/disassembling . --whitelist=whitelist.txt

Extension Explain:

php src/vendor/bin/disassembling . --explain=magento/module-offline-payments --no-cache

Prefix usage:

php src/vendor/bin/disassembling . -e=magento/module-offline-payments -nc

Cache

By default, cache is enabled and stored in a [Magento root]/var/dependency-checker-cache.srz file with a 300 seconds lifetime. Make sure to use --no-cache flag to disable cache usage when run with a new parameters.